Version Description
Release Date: 12 March 2021
- Improved: Speed Booster Pack's wp-admin CSS file got a bit smaller.
- Improved: Better onboarding with titles.
- Improved: The CDN feature is now enabled with a toggle.
- Improved: Code improvements in the "LiteSpeed cache" feature.
- Improved:
- Fixed: Fixed an issue when there were no fonts found inside page sources.
-
Fixed: The "set image dimensions" feature now correctly detects image URLs that start with
http://
while the site URL starts withhttps://
(and vice versa). - Fixed:
- Updated: Updated Codestar Framework to v2.2.6.
- Updated: Updated intro.js to v5.0.0.
- Removed: Custom Code Manager is now removed. Users who added custom codes will get a notice to copy their code to somewhere else
- Removed:
Download this release
Release Info
Developer | optimocha |
Plugin | Speed Booster Pack |
Version | 4.4.1 |
Comparing to | |
See all releases |
Code changes from version 4.4.0 to 4.4.1
- README.txt +18 -1
- admin/class-speed-booster-pack-admin.php +332 -279
- admin/css/intro.min.css +1 -2
- admin/css/speed-booster-pack-admin.css +0 -60
- admin/js/init-intro.js +11 -3
- admin/js/intro.min.js +5 -5
- admin/js/speed-booster-pack-admin.js +11 -0
- includes/class-speed-booster-pack.php +6 -0
- includes/classes/class-sbp-advanced-cache-generator.php +1 -0
- includes/classes/class-sbp-cdn.php +1 -1
- includes/classes/class-sbp-custom-code-manager.php +22 -53
- includes/classes/class-sbp-font-optimizer.php +9 -3
- includes/classes/class-sbp-image-dimensions.php +2 -0
- includes/classes/class-sbp-litespeed-cache.php +29 -14
- includes/classes/class-sbp-localize-tracker.php +1 -1
- includes/classes/class-sbp-migrator.php +8 -0
- includes/classes/class-sbp-notice-manager.php +9 -3
- includes/classes/class-sbp-special.php +7 -0
- includes/classes/class-sbp-utils.php +11 -0
- public/class-speed-booster-pack-public.php +6 -0
- speed-booster-pack.php +3 -3
- vendor/codestar-framework/assets/css/style-rtl.css +590 -590
- vendor/codestar-framework/assets/css/style.css +1036 -82
- vendor/codestar-framework/assets/css/style.min.css +1 -1
- vendor/codestar-framework/assets/images/wp-logo.svg +1 -1
- vendor/codestar-framework/assets/images/wp-plugin-logo.svg +1 -1
- vendor/codestar-framework/assets/js/gutenberg.js +79 -79
- vendor/codestar-framework/assets/js/main.js +37 -2
- vendor/codestar-framework/assets/js/main.min.js +2 -2
- vendor/codestar-framework/assets/js/plugins.js +2674 -1
- vendor/codestar-framework/assets/js/plugins.min.js +2 -2
- vendor/codestar-framework/assets/scss/partials/_base.scss +470 -470
- vendor/codestar-framework/assets/scss/partials/_chosen.scss +405 -405
- vendor/codestar-framework/assets/scss/partials/_customizer.scss +7 -1
- vendor/codestar-framework/assets/scss/partials/_fields.scss +134 -81
- vendor/codestar-framework/assets/scss/partials/_flatpickr.scss +794 -0
- vendor/codestar-framework/assets/scss/partials/_helper.scss +152 -152
- vendor/codestar-framework/assets/scss/partials/_modal.scss +330 -330
- vendor/codestar-framework/assets/scss/partials/_navmenu.scss +60 -60
- vendor/codestar-framework/assets/scss/partials/_profile.scss +67 -67
- vendor/codestar-framework/assets/scss/partials/_responsive.scss +157 -157
- vendor/codestar-framework/assets/scss/partials/_taxonomy.scss +114 -114
- vendor/codestar-framework/assets/scss/partials/_themes.scss +303 -303
- vendor/codestar-framework/assets/scss/partials/_welcome.scss +346 -346
- vendor/codestar-framework/assets/scss/partials/_widget.scss +67 -67
- vendor/codestar-framework/assets/scss/style-rtl.scss +728 -728
- vendor/codestar-framework/assets/scss/style.scss +30 -28
- vendor/codestar-framework/classes/abstract.class.php +132 -132
- vendor/codestar-framework/classes/admin-options.class.php +725 -725
- vendor/codestar-framework/classes/comment-options.class.php +347 -347
- vendor/codestar-framework/classes/customize-options.class.php +282 -282
- vendor/codestar-framework/classes/metabox-options.class.php +425 -425
- vendor/codestar-framework/classes/nav-menu-options.class.php +255 -255
- vendor/codestar-framework/classes/profile-options.class.php +104 -245
README.txt
CHANGED
@@ -5,7 +5,7 @@ Tags: speed, pagespeed, optimization, core web vitals, cache
|
|
5 |
Requires at least: 4.6
|
6 |
Tested up to: 5.9
|
7 |
Requires PHP: 5.6
|
8 |
-
Stable tag: 4.4.
|
9 |
License: GPLv3 or later
|
10 |
License URI: https://www.gnu.org/licenses/gpl-3.0.html
|
11 |
|
@@ -104,6 +104,23 @@ All the time! We're always looking for new ways to get this plugin to a better s
|
|
104 |
|
105 |
== Changelog ==
|
106 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
107 |
= 4.4.0 =
|
108 |
|
109 |
*Release Date: 05 February 2021*
|
5 |
Requires at least: 4.6
|
6 |
Tested up to: 5.9
|
7 |
Requires PHP: 5.6
|
8 |
+
Stable tag: 4.4.1
|
9 |
License: GPLv3 or later
|
10 |
License URI: https://www.gnu.org/licenses/gpl-3.0.html
|
11 |
|
104 |
|
105 |
== Changelog ==
|
106 |
|
107 |
+
= 4.4.1 =
|
108 |
+
|
109 |
+
*Release Date: 12 March 2021*
|
110 |
+
|
111 |
+
* **Improved**: Speed Booster Pack's wp-admin CSS file got a bit smaller.
|
112 |
+
* **Improved**: Better onboarding with titles.
|
113 |
+
* **Improved**: The CDN feature is now enabled with a toggle.
|
114 |
+
* **Improved**: Code improvements in the "LiteSpeed cache" feature.
|
115 |
+
* **Improved**:
|
116 |
+
* **Fixed**: Fixed an issue when there were no fonts found inside page sources.
|
117 |
+
* **Fixed**: The "set image dimensions" feature now correctly detects image URLs that start with `http://` while the site URL starts with `https://` (and vice versa).
|
118 |
+
* **Fixed**:
|
119 |
+
* **Updated**: Updated Codestar Framework to v2.2.6.
|
120 |
+
* **Updated**: Updated intro.js to v5.0.0.
|
121 |
+
* **Removed**: Custom Code Manager is now removed. Users who added custom codes will get a notice to copy their code to somewhere else
|
122 |
+
* **Removed**:
|
123 |
+
|
124 |
= 4.4.0 =
|
125 |
|
126 |
*Release Date: 05 February 2021*
|
admin/class-speed-booster-pack-admin.php
CHANGED
@@ -117,20 +117,36 @@ class Speed_Booster_Pack_Admin {
|
|
117 |
wp_localize_script( 'sbp_intro_js',
|
118 |
'sbp_intro_translations',
|
119 |
[
|
|
|
|
|
120 |
/* translators: onboarding modal, first step */
|
121 |
'welcome' => __( 'Welcome to Speed Booster Pack! We\'d like to give you a quick tour - feel free to close this box and look around the options yourself, or click Next to see our short intro.', 'speed-booster-pack' ),
|
|
|
|
|
122 |
/* translators: onboarding modal, second step */
|
123 |
'caching' => __( 'This is our caching tab. Here, you can set caching for your pages to immediately speed up your website.', 'speed-booster-pack' ),
|
|
|
|
|
124 |
/* translators: onboarding modal, third step */
|
125 |
-
'caching2' => __( 'Most tabs have
|
|
|
|
|
126 |
/* translators: onboarding modal, fourth step */
|
127 |
'general' => __( 'The "General" tab includes various tweaks to clean up and speed up things. You can also disable Speed Booster Pack features for certain user roles (e.g. subscribers or customers) if you need to.', 'speed-booster-pack' ),
|
|
|
|
|
128 |
/* translators: onboarding modal, fifth step */
|
129 |
'cdn' => __( 'The CDN & Proxy tab has three main settings: You can set a CDN domain to serve all your assets from, you can connect to your Cloudflare account to change your Cloudflare settings, and you can connect to your Sucuri account so you can clear your Sucuri cache automatically.', 'speed-booster-pack' ),
|
|
|
|
|
130 |
/* translators: onboarding modal, sixth step */
|
131 |
'css' => __( 'The Optimize CSS tab has some delicate settings which, if configured properly, can drastically improve your website performance. Be sure to follow the directions properly - especially the Critical CSS settings!', 'speed-booster-pack' ),
|
|
|
|
|
132 |
/* translators: onboarding modal, seventh step */
|
133 |
'assets' => __( 'The Assets tab can improve your website performance using font optimization, lazy loading, asset preloading and JavaScript optimization. It\'s tempting to enable them all, but make sure you test each change thoroughly or else you can break your website! Think of these tools like powerful weapons which you can hurt yourself with.', 'speed-booster-pack' ),
|
|
|
|
|
134 |
/* translators: onboarding modal, last step */
|
135 |
'end' => __( 'That\'s it! Actually, that\'s not it - make sure you check the other tabs to see if you have more room to improve your website speed. Don\'t be afraid to experiment; even if you break something, resetting settings or simply deactivating Speed Booster Pack will undo everything.', 'speed-booster-pack' ),
|
136 |
/* translators: onboarding modal, "Next" label */
|
@@ -636,7 +652,6 @@ class Speed_Booster_Pack_Admin {
|
|
636 |
],
|
637 |
[
|
638 |
'id' => 'caching_ls_cache_logged_in_users',
|
639 |
-
// B_TODO: Change texts
|
640 |
'title' => __( 'Cache logged in users', 'speed-booster-pack' ),
|
641 |
'desc' => __( 'Enable cache for logged in users.', 'speed-booster-pack' ),
|
642 |
'class' => $ls_caching_class,
|
@@ -729,219 +744,6 @@ class Speed_Booster_Pack_Admin {
|
|
729 |
);
|
730 |
/* END Section: Caching */
|
731 |
|
732 |
-
/* BEGIN Section: CDN & Proxy */
|
733 |
-
/* Begin Of Cloudflare Fields */
|
734 |
-
$cloudflare_fields = [
|
735 |
-
[
|
736 |
-
'title' => __( 'Cloudflare', 'speed-booster-pack' ),
|
737 |
-
'type' => 'subheading',
|
738 |
-
],
|
739 |
-
[
|
740 |
-
'title' => __( 'Connect to Cloudflare', 'speed-booster-pack' ),
|
741 |
-
'id' => 'cloudflare_enable',
|
742 |
-
'type' => 'switcher',
|
743 |
-
'sanitize' => 'sbp_sanitize_boolean',
|
744 |
-
],
|
745 |
-
[
|
746 |
-
'title' => __( 'Cloudflare global API key', 'speed-booster-pack' ),
|
747 |
-
'id' => 'cloudflare_api',
|
748 |
-
'type' => 'text',
|
749 |
-
'desc' => '<a href="https://support.cloudflare.com/hc/en-us/articles/200167836-Managing-API-Tokens-and-Keys#12345682" rel="external noopener" target="_blank">' . __( 'You can find it using this tutorial.', 'speed-booster-pack' ) . '</a>',
|
750 |
-
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
751 |
-
],
|
752 |
-
[
|
753 |
-
'title' => __( 'Cloudflare email address', 'speed-booster-pack' ),
|
754 |
-
'id' => 'cloudflare_email',
|
755 |
-
'type' => 'text',
|
756 |
-
'desc' => __( 'The email address you signed up for Cloudflare with.', 'speed-booster-pack' ),
|
757 |
-
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
758 |
-
],
|
759 |
-
[
|
760 |
-
'title' => __( 'Cloudflare zone ID', 'speed-booster-pack' ),
|
761 |
-
'id' => 'cloudflare_zone',
|
762 |
-
'type' => 'text',
|
763 |
-
'desc' => __( 'You can find your zone ID in the Overview tab on your Cloudflare panel.', 'speed-booster-pack' ),
|
764 |
-
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
765 |
-
],
|
766 |
-
[
|
767 |
-
'title' => __( 'Rocket Loader', 'speed-booster-pack' ),
|
768 |
-
'id' => 'cf_rocket_loader_enable',
|
769 |
-
'class' => 'with-preloader',
|
770 |
-
'type' => 'switcher',
|
771 |
-
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
772 |
-
'sanitize' => 'sbp_sanitize_boolean',
|
773 |
-
],
|
774 |
-
[
|
775 |
-
'title' => __( 'Development Mode', 'speed-booster-pack' ),
|
776 |
-
'id' => 'cf_dev_mode_enable',
|
777 |
-
'class' => 'with-preloader',
|
778 |
-
'type' => 'switcher',
|
779 |
-
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
780 |
-
'sanitize' => 'sbp_sanitize_boolean',
|
781 |
-
],
|
782 |
-
[
|
783 |
-
'title' => __( 'Minify CSS', 'speed-booster-pack' ),
|
784 |
-
'id' => 'cf_css_minify_enable',
|
785 |
-
'class' => 'with-preloader',
|
786 |
-
'type' => 'switcher',
|
787 |
-
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
788 |
-
'sanitize' => 'sbp_sanitize_boolean',
|
789 |
-
],
|
790 |
-
[
|
791 |
-
'title' => __( 'Minify HTML', 'speed-booster-pack' ),
|
792 |
-
'id' => 'cf_html_minify_enable',
|
793 |
-
'class' => 'with-preloader',
|
794 |
-
'type' => 'switcher',
|
795 |
-
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
796 |
-
'sanitize' => 'sbp_sanitize_boolean',
|
797 |
-
],
|
798 |
-
[
|
799 |
-
'title' => __( 'Minify JS', 'speed-booster-pack' ),
|
800 |
-
'id' => 'cf_js_minify_enable',
|
801 |
-
'class' => 'with-preloader',
|
802 |
-
'type' => 'switcher',
|
803 |
-
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
804 |
-
'sanitize' => 'sbp_sanitize_boolean',
|
805 |
-
],
|
806 |
-
[
|
807 |
-
'title' => __( 'Automatic Platform Optimization', 'speed-booster-pack' ),
|
808 |
-
'id' => 'cf_apo_enable',
|
809 |
-
'desc' => __( 'You need to be a paying Cloudflare user to enable this setting, otherwise it will get disabled again.', 'speed-booster-pack' ),
|
810 |
-
'class' => 'with-preloader',
|
811 |
-
'type' => 'switcher',
|
812 |
-
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
813 |
-
'sanitize' => 'sbp_sanitize_boolean',
|
814 |
-
],
|
815 |
-
[
|
816 |
-
'title' => __( 'APO: Cache By Device Type', 'speed-booster-pack' ),
|
817 |
-
'id' => 'cf_apo_device_type',
|
818 |
-
'class' => 'with-preloader',
|
819 |
-
'type' => 'switcher',
|
820 |
-
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
821 |
-
'sanitize' => 'sbp_sanitize_boolean',
|
822 |
-
],
|
823 |
-
[
|
824 |
-
'title' => __( 'Browser Cache TTL', 'speed-booster-pack' ),
|
825 |
-
'id' => 'cf_browser_cache_ttl',
|
826 |
-
'class' => 'with-preloader',
|
827 |
-
'type' => 'select',
|
828 |
-
'options' => [
|
829 |
-
0 => __( 'Respect Existing Headers', 'speed-booster-pack' ),
|
830 |
-
1800 => __( '30 minutes', 'speed-booster-pack' ),
|
831 |
-
3600 => __( '1 hour', 'speed-booster-pack' ),
|
832 |
-
7200 => __( '2 hours', 'speed-booster-pack' ),
|
833 |
-
10800 => __( '3 hours', 'speed-booster-pack' ),
|
834 |
-
14400 => __( '4 hours', 'speed-booster-pack' ),
|
835 |
-
18000 => __( '5 hours', 'speed-booster-pack' ),
|
836 |
-
28800 => __( '8 hours', 'speed-booster-pack' ),
|
837 |
-
43200 => __( '12 hours', 'speed-booster-pack' ),
|
838 |
-
57600 => __( '16 hours', 'speed-booster-pack' ),
|
839 |
-
72000 => __( '20 hours', 'speed-booster-pack' ),
|
840 |
-
86400 => __( '1 day', 'speed-booster-pack' ),
|
841 |
-
172800 => __( '2 days', 'speed-booster-pack' ),
|
842 |
-
259200 => __( '3 days', 'speed-booster-pack' ),
|
843 |
-
345600 => __( '4 days', 'speed-booster-pack' ),
|
844 |
-
432000 => __( '5 days', 'speed-booster-pack' ),
|
845 |
-
691200 => __( '8 days', 'speed-booster-pack' ),
|
846 |
-
1382400 => __( '16 days', 'speed-booster-pack' ),
|
847 |
-
2073600 => __( '24 days', 'speed-booster-pack' ),
|
848 |
-
2678400 => __( '1 month', 'speed-booster-pack' ),
|
849 |
-
5356800 => __( '2 months', 'speed-booster-pack' ),
|
850 |
-
16070400 => __( '6 months', 'speed-booster-pack' ),
|
851 |
-
31536000 => __( '1 year', 'speed-booster-pack' ),
|
852 |
-
],
|
853 |
-
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
854 |
-
],
|
855 |
-
[
|
856 |
-
'type' => 'content',
|
857 |
-
'content' => '
|
858 |
-
<span>
|
859 |
-
<a href="#" class="button button-small sbp-cloudflare-test">' . __( 'Test Cloudflare connection', 'speed-booster-pack' ) . '<span class="sbp-cloudflare-spinner"></span></a>
|
860 |
-
<span class="sbp-cloudflare-fetching">' . __( 'Fetching Cloudflare settings...', 'speed-booster-pack' ) . '</span>
|
861 |
-
</span>
|
862 |
-
<span class="sbp-cloudflare-info-text sbp-cloudflare-incorrect" style="color:red; vertical-align: middle;"><i class="fa fa-exclamation-triangle"></i> ' . __( 'Your Cloudflare credentials are incorrect.', 'speed-booster-pack' ) . '</span>
|
863 |
-
<span class="sbp-cloudflare-info-text sbp-cloudflare-connection-issue" style="color:red; vertical-align: middle;"><i class="fa fa-exclamation-triangle"></i> ' . __( 'Error occured while connecting to Cloudflare.', 'speed-booster-pack' ) . '</span>
|
864 |
-
<span class="sbp-cloudflare-info-text sbp-cloudflare-correct" style="color:green; vertical-align: middle;"><i class="fa fa-check-circle"></i> ' . __( 'Your Cloudflare credentials are correct.', 'speed-booster-pack' ) . '</span>
|
865 |
-
<span class="sbp-cloudflare-info-text sbp-cloudflare-warning" style="color:orange; vertical-align: middle;"><i class="fa fa-exclamation-circle"></i> ' . __( 'Enter your Cloudflare credentials and save settings to see CloudFlare options.', 'speed-booster-pack' ) . '</span>
|
866 |
-
',
|
867 |
-
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
868 |
-
],
|
869 |
-
];
|
870 |
-
/* End Of Cloudflare Fields */
|
871 |
-
|
872 |
-
/* Begin Of Sucuri Fields */
|
873 |
-
$sucuri_fields = [
|
874 |
-
[
|
875 |
-
'title' => __( 'Sucuri', 'speed-booster-pack' ),
|
876 |
-
'type' => 'subheading',
|
877 |
-
],
|
878 |
-
[
|
879 |
-
'title' => __( 'Connect to Sucuri', 'speed-booster-pack' ),
|
880 |
-
'id' => 'sucuri_enable',
|
881 |
-
'type' => 'switcher',
|
882 |
-
'desc' => sprintf( __( 'When you connect your Sucuri account, you\'ll be able to clear your Sucuri cache via your admin bar. Plus, every time %1$s Cache\'s cache is cleared, Sucuri\'s cache will be cleared as well.', 'speed-booster-pack' ), SBP_PLUGIN_NAME ),
|
883 |
-
'sanitize' => 'sbp_sanitize_boolean',
|
884 |
-
],
|
885 |
-
[
|
886 |
-
'title' => __( 'Sucuri API key', 'speed-booster-pack' ),
|
887 |
-
'id' => 'sucuri_api',
|
888 |
-
'type' => 'text',
|
889 |
-
'dependency' => [ 'sucuri_enable', '==', '1', '', 'visible' ],
|
890 |
-
],
|
891 |
-
[
|
892 |
-
'title' => __( 'Sucuri API Secret', 'speed-booster-pack' ),
|
893 |
-
'id' => 'sucuri_secret',
|
894 |
-
'type' => 'text',
|
895 |
-
'dependency' => [ 'sucuri_enable', '==', '1', '', 'visible' ],
|
896 |
-
],
|
897 |
-
];
|
898 |
-
/* End Of Sucuri Fields */
|
899 |
-
|
900 |
-
$proxy_fields = array_merge( [
|
901 |
-
[
|
902 |
-
'title' => __( 'CDN', 'speed-booster-pack' ),
|
903 |
-
'type' => 'subheading',
|
904 |
-
],
|
905 |
-
[
|
906 |
-
'title' => __( 'CDN domain', 'speed-booster-pack' ),
|
907 |
-
'id' => 'cdn_url',
|
908 |
-
'class' => 'cdn-url',
|
909 |
-
'type' => 'text',
|
910 |
-
'before' => 'http(s):// ',
|
911 |
-
'after' => ' /',
|
912 |
-
'desc' => __( 'Rewrites all asset URLs with the specified CDN domain. Enter the CDN domain without a protocol or a trailing slash; a relative protocol will be automatically added to all changed asset URLs.', 'speed-booster-pack' ),
|
913 |
-
'sanitize' => 'sbp_sanitize_url',
|
914 |
-
],
|
915 |
-
[
|
916 |
-
'title' => __( 'Included Directories', 'speed-booster-pack' ),
|
917 |
-
'id' => 'cdn_includes',
|
918 |
-
'type' => 'code_editor',
|
919 |
-
'desc' => __( 'Anything other than WordPress\'s existing directories should be entered here to be rewritten with the CDN domain. Separated by new lines.', 'speed-booster-pack' ),
|
920 |
-
'sanitize' => 'sbp_sanitize_strip_tags',
|
921 |
-
'dependency' => [ 'cdn_url', '!=', '', '', 'visible' ],
|
922 |
-
],
|
923 |
-
[
|
924 |
-
'title' => __( 'Excluded Extensions', 'speed-booster-pack' ),
|
925 |
-
'id' => 'cdn_excludes',
|
926 |
-
'type' => 'code_editor',
|
927 |
-
'desc' => __( 'If you want to exclude certain file types, enter the extensions here. Separated by new lines.', 'speed-booster-pack' ),
|
928 |
-
'sanitize' => 'sbp_sanitize_strip_tags',
|
929 |
-
'dependency' => [ 'cdn_url', '!=', '', '', 'visible' ],
|
930 |
-
],
|
931 |
-
],
|
932 |
-
$cloudflare_fields,
|
933 |
-
$sucuri_fields );
|
934 |
-
CSF::createSection(
|
935 |
-
$prefix,
|
936 |
-
array(
|
937 |
-
'title' => __( 'CDN & Proxy', 'speed-booster-pack' ),
|
938 |
-
'id' => 'cdn_proxy',
|
939 |
-
'icon' => 'fa fa-directions',
|
940 |
-
'fields' => $proxy_fields,
|
941 |
-
)
|
942 |
-
);
|
943 |
-
/* END Section: CDN & Proxy */
|
944 |
-
|
945 |
/* BEGIN Section: Optimize CSS */
|
946 |
$critical_css_fields = [
|
947 |
[
|
@@ -1212,6 +1014,14 @@ class Speed_Booster_Pack_Admin {
|
|
1212 |
'dependency' => [ 'module_assets', '==', '1', '', 'visible' ],
|
1213 |
'sanitize' => 'sbp_sanitize_boolean',
|
1214 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1215 |
];
|
1216 |
|
1217 |
$should_disable_lazyload = sbp_should_disable_feature( 'lazyload' );
|
@@ -1334,6 +1144,91 @@ class Speed_Booster_Pack_Admin {
|
|
1334 |
],
|
1335 |
] );
|
1336 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1337 |
CSF::createSection(
|
1338 |
$prefix,
|
1339 |
[
|
@@ -1345,6 +1240,228 @@ class Speed_Booster_Pack_Admin {
|
|
1345 |
);
|
1346 |
/* END Section: Assets */
|
1347 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1348 |
/* BEGIN Section: Special */
|
1349 |
CSF::createSection(
|
1350 |
$prefix,
|
@@ -1364,70 +1481,6 @@ class Speed_Booster_Pack_Admin {
|
|
1364 |
'default' => true,
|
1365 |
'sanitize' => 'sbp_sanitize_boolean',
|
1366 |
],
|
1367 |
-
[
|
1368 |
-
'title' => __( 'Localize Google Analytics & Google Tag Manager', 'speed-booster-pack' ),
|
1369 |
-
'id' => 'localize_tracking_scripts',
|
1370 |
-
'type' => 'switcher',
|
1371 |
-
'desc' => __( 'Searches for Google Analytics or Google Tag Manager scripts (analytics.js, gtag.js or gtm.js) in your page sources, and replaces them with a locally saved script.', 'speed-booster-pack' ),
|
1372 |
-
'dependency' => [ 'module_special', '==', '1', '', 'visible' ],
|
1373 |
-
'sanitize' => 'sbp_sanitize_boolean',
|
1374 |
-
],
|
1375 |
-
[
|
1376 |
-
'title' => __( 'Custom code manager', 'speed-booster-pack' ),
|
1377 |
-
'id' => 'custom_codes',
|
1378 |
-
'type' => 'group',
|
1379 |
-
'before' => '<p>' . __( 'Code blocks added with this tool can be loaded in the header, the footer and can even be delayed.', 'speed-booster-pack' ) . '</p>',
|
1380 |
-
'accordion_title_number' => true,
|
1381 |
-
'accordion_title_auto' => false,
|
1382 |
-
'sanitize' => function ( $item ) {
|
1383 |
-
if ( $item && is_iterable( $item ) ) {
|
1384 |
-
foreach ( $item as &$code_item ) {
|
1385 |
-
if ( isset( $code_item['custom_codes_item'] ) ) {
|
1386 |
-
$code = $code_item['custom_codes_item'];
|
1387 |
-
$code = preg_replace( '#<(textarea)>.*?<\/$1>#s', '', $code );
|
1388 |
-
$code_item['custom_codes_item'] = str_replace( '</textarea>', '', $code );
|
1389 |
-
}
|
1390 |
-
}
|
1391 |
-
}
|
1392 |
-
|
1393 |
-
return $item;
|
1394 |
-
},
|
1395 |
-
'fields' => [
|
1396 |
-
[
|
1397 |
-
'id' => 'custom_codes_item',
|
1398 |
-
'type' => 'code_editor',
|
1399 |
-
'before' => '<script>',
|
1400 |
-
'after' => '</script>',
|
1401 |
-
/* translators: %s = script tag */
|
1402 |
-
'desc' => sprintf( __( 'Paste the inline JavaScript here. DON\'T include the %s tags or else you might break it!', 'speed-booster-pack' ), '<code><script></code>' ),
|
1403 |
-
'settings' => [ 'lineWrapping' => true ],
|
1404 |
-
],
|
1405 |
-
[
|
1406 |
-
'title' => __( 'Placement', 'speed-booster-pack' ),
|
1407 |
-
'id' => 'custom_codes_place',
|
1408 |
-
'desc' => __( 'Set this to "Footer" to place the code before </body>, or "Header" to place it before </head>.', 'speed-booster-pack' ),
|
1409 |
-
'type' => 'button_set',
|
1410 |
-
'options' => [
|
1411 |
-
'footer' => __( 'Footer', 'speed-booster-pack' ),
|
1412 |
-
'header' => __( 'Header', 'speed-booster-pack' ),
|
1413 |
-
],
|
1414 |
-
'default' => 'footer',
|
1415 |
-
],
|
1416 |
-
[
|
1417 |
-
'title' => __( 'Loading method', 'speed-booster-pack' ),
|
1418 |
-
'id' => 'custom_codes_method',
|
1419 |
-
'desc' => __( 'Set this to "onload" to defer the code to page onload, or "4-second delay" to defer it to four seconds after onload. When in doubt, set it to "Normal".', 'speed-booster-pack' ),
|
1420 |
-
'type' => 'button_set',
|
1421 |
-
'options' => [
|
1422 |
-
'normal' => __( 'Normal', 'speed-booster-pack' ),
|
1423 |
-
'onload' => __( 'onload', 'speed-booster-pack' ),
|
1424 |
-
'delayed' => __( '4-second delay', 'speed-booster-pack' ),
|
1425 |
-
],
|
1426 |
-
'default' => 'normal',
|
1427 |
-
],
|
1428 |
-
],
|
1429 |
-
'dependency' => [ 'module_special', '==', '1', '', 'visible' ],
|
1430 |
-
],
|
1431 |
[
|
1432 |
'title' => 'WooCommerce: ' . __( 'Disable cart fragments', 'speed-booster-pack' ),
|
1433 |
'id' => 'woocommerce_disable_cart_fragments',
|
117 |
wp_localize_script( 'sbp_intro_js',
|
118 |
'sbp_intro_translations',
|
119 |
[
|
120 |
+
/* translators: onboarding modal, first step title */
|
121 |
+
'welcomeTitle' => __( 'Welcome!', 'speed-booster-pack' ),
|
122 |
/* translators: onboarding modal, first step */
|
123 |
'welcome' => __( 'Welcome to Speed Booster Pack! We\'d like to give you a quick tour - feel free to close this box and look around the options yourself, or click Next to see our short intro.', 'speed-booster-pack' ),
|
124 |
+
/* translators: onboarding modal, second step title */
|
125 |
+
'cachingTitle' => __( 'Caching', 'speed-booster-pack' ),
|
126 |
/* translators: onboarding modal, second step */
|
127 |
'caching' => __( 'This is our caching tab. Here, you can set caching for your pages to immediately speed up your website.', 'speed-booster-pack' ),
|
128 |
+
/* translators: onboarding modal, third step title */
|
129 |
+
'caching2Title' => __( 'Module Toggles', 'speed-booster-pack' ),
|
130 |
/* translators: onboarding modal, third step */
|
131 |
+
'caching2' => __( 'Most tabs have module toggles like this. Turning on or off the module toggle enables or disables the whole module.', 'speed-booster-pack' ),
|
132 |
+
/* translators: onboarding modal, fourth step title */
|
133 |
+
'generalTitle' => __( 'General Settings', 'speed-booster-pack' ),
|
134 |
/* translators: onboarding modal, fourth step */
|
135 |
'general' => __( 'The "General" tab includes various tweaks to clean up and speed up things. You can also disable Speed Booster Pack features for certain user roles (e.g. subscribers or customers) if you need to.', 'speed-booster-pack' ),
|
136 |
+
/* translators: onboarding modal, fifth step title */
|
137 |
+
'cdnTitle' => __( 'CDN & Proxy Settings', 'speed-booster-pack' ),
|
138 |
/* translators: onboarding modal, fifth step */
|
139 |
'cdn' => __( 'The CDN & Proxy tab has three main settings: You can set a CDN domain to serve all your assets from, you can connect to your Cloudflare account to change your Cloudflare settings, and you can connect to your Sucuri account so you can clear your Sucuri cache automatically.', 'speed-booster-pack' ),
|
140 |
+
/* translators: onboarding modal, sixth step title */
|
141 |
+
'cssTitle' => __( 'CSS Settings', 'speed-booster-pack' ),
|
142 |
/* translators: onboarding modal, sixth step */
|
143 |
'css' => __( 'The Optimize CSS tab has some delicate settings which, if configured properly, can drastically improve your website performance. Be sure to follow the directions properly - especially the Critical CSS settings!', 'speed-booster-pack' ),
|
144 |
+
/* translators: onboarding modal, seventh step title */
|
145 |
+
'assetsTitle' => __( 'Assets Settings', 'speed-booster-pack' ),
|
146 |
/* translators: onboarding modal, seventh step */
|
147 |
'assets' => __( 'The Assets tab can improve your website performance using font optimization, lazy loading, asset preloading and JavaScript optimization. It\'s tempting to enable them all, but make sure you test each change thoroughly or else you can break your website! Think of these tools like powerful weapons which you can hurt yourself with.', 'speed-booster-pack' ),
|
148 |
+
/* translators: onboarding modal, last step title */
|
149 |
+
'endTitle' => __( 'Done!', 'speed-booster-pack' ),
|
150 |
/* translators: onboarding modal, last step */
|
151 |
'end' => __( 'That\'s it! Actually, that\'s not it - make sure you check the other tabs to see if you have more room to improve your website speed. Don\'t be afraid to experiment; even if you break something, resetting settings or simply deactivating Speed Booster Pack will undo everything.', 'speed-booster-pack' ),
|
152 |
/* translators: onboarding modal, "Next" label */
|
652 |
],
|
653 |
[
|
654 |
'id' => 'caching_ls_cache_logged_in_users',
|
|
|
655 |
'title' => __( 'Cache logged in users', 'speed-booster-pack' ),
|
656 |
'desc' => __( 'Enable cache for logged in users.', 'speed-booster-pack' ),
|
657 |
'class' => $ls_caching_class,
|
744 |
);
|
745 |
/* END Section: Caching */
|
746 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
747 |
/* BEGIN Section: Optimize CSS */
|
748 |
$critical_css_fields = [
|
749 |
[
|
1014 |
'dependency' => [ 'module_assets', '==', '1', '', 'visible' ],
|
1015 |
'sanitize' => 'sbp_sanitize_boolean',
|
1016 |
],
|
1017 |
+
[
|
1018 |
+
'title' => __( 'Localize Google Analytics & Google Tag Manager', 'speed-booster-pack' ),
|
1019 |
+
'id' => 'localize_tracking_scripts',
|
1020 |
+
'type' => 'switcher',
|
1021 |
+
'desc' => __( 'Searches for Google Analytics or Google Tag Manager scripts (analytics.js, gtag.js or gtm.js) in your page sources, and replaces them with a locally saved script.', 'speed-booster-pack' ),
|
1022 |
+
'dependency' => [ 'module_assets', '==', '1', '', 'visible' ],
|
1023 |
+
'sanitize' => 'sbp_sanitize_boolean',
|
1024 |
+
],
|
1025 |
];
|
1026 |
|
1027 |
$should_disable_lazyload = sbp_should_disable_feature( 'lazyload' );
|
1144 |
],
|
1145 |
] );
|
1146 |
|
1147 |
+
|
1148 |
+
// Custom Code Manager
|
1149 |
+
if ( is_array( sbp_get_option( 'custom_codes', [] ) ) && count( sbp_get_option( 'custom_codes', [] ) ) ) {
|
1150 |
+
// We removed this feature but still need to keep it's content. So, hide it using only css.
|
1151 |
+
$custom_code_manager = [ [
|
1152 |
+
'title' => __( 'Custom code manager', 'speed-booster-pack' ),
|
1153 |
+
'id' => 'custom_codes',
|
1154 |
+
'type' => 'group',
|
1155 |
+
'class' => 'sbp-hidden',
|
1156 |
+
'before' => '<p>' . __( 'Code blocks added with this tool can be loaded in the header, the footer and can even be delayed.', 'speed-booster-pack' ) . '</p>',
|
1157 |
+
'accordion_title_number' => true,
|
1158 |
+
'accordion_title_auto' => false,
|
1159 |
+
'sanitize' => function ( $item ) {
|
1160 |
+
if ( $item && is_iterable( $item ) ) {
|
1161 |
+
foreach ( $item as &$code_item ) {
|
1162 |
+
if ( isset( $code_item['custom_codes_item'] ) ) {
|
1163 |
+
$code = $code_item['custom_codes_item'];
|
1164 |
+
$code = preg_replace( '#<(textarea)>.*?<\/$1>#s', '', $code );
|
1165 |
+
$code_item['custom_codes_item'] = str_replace( '</textarea>', '', $code );
|
1166 |
+
}
|
1167 |
+
}
|
1168 |
+
}
|
1169 |
+
|
1170 |
+
return $item;
|
1171 |
+
},
|
1172 |
+
'fields' => [
|
1173 |
+
[
|
1174 |
+
'id' => 'custom_codes_item',
|
1175 |
+
'type' => 'code_editor',
|
1176 |
+
'before' => '<script>',
|
1177 |
+
'after' => '</script>',
|
1178 |
+
/* translators: %s = script tag */
|
1179 |
+
'desc' => sprintf( __( 'Paste the inline JavaScript here. DON\'T include the %s tags or else you might break it!', 'speed-booster-pack' ), '<code><script></code>' ),
|
1180 |
+
'settings' => [ 'lineWrapping' => true ],
|
1181 |
+
],
|
1182 |
+
[
|
1183 |
+
'title' => __( 'Placement', 'speed-booster-pack' ),
|
1184 |
+
'id' => 'custom_codes_place',
|
1185 |
+
'desc' => __( 'Set this to "Footer" to place the code before </body>, or "Header" to place it before </head>.', 'speed-booster-pack' ),
|
1186 |
+
'type' => 'button_set',
|
1187 |
+
'options' => [
|
1188 |
+
'footer' => __( 'Footer', 'speed-booster-pack' ),
|
1189 |
+
'header' => __( 'Header', 'speed-booster-pack' ),
|
1190 |
+
],
|
1191 |
+
'default' => 'footer',
|
1192 |
+
],
|
1193 |
+
[
|
1194 |
+
'title' => __( 'Loading method', 'speed-booster-pack' ),
|
1195 |
+
'id' => 'custom_codes_method',
|
1196 |
+
'desc' => __( 'Set this to "onload" to defer the code to page onload, or "4-second delay" to defer it to four seconds after onload. When in doubt, set it to "Normal".', 'speed-booster-pack' ),
|
1197 |
+
'type' => 'button_set',
|
1198 |
+
'options' => [
|
1199 |
+
'normal' => __( 'Normal', 'speed-booster-pack' ),
|
1200 |
+
'onload' => __( 'onload', 'speed-booster-pack' ),
|
1201 |
+
'delayed' => __( '4-second delay', 'speed-booster-pack' ),
|
1202 |
+
],
|
1203 |
+
'default' => 'normal',
|
1204 |
+
],
|
1205 |
+
],
|
1206 |
+
] ];
|
1207 |
+
|
1208 |
+
$asset_fields = array_merge( $asset_fields, $custom_code_manager );
|
1209 |
+
|
1210 |
+
$custom_code_manager_backup = '';
|
1211 |
+
|
1212 |
+
$i = 1;
|
1213 |
+
foreach ( sbp_get_option( 'custom_codes', [] ) as $code ) {
|
1214 |
+
$custom_code_manager_backup .= '<!-- Custom code #' . $i . ' (' . $code['custom_codes_place'] . ') -->' . PHP_EOL;
|
1215 |
+
$custom_code_manager_backup .= '<script>' . PHP_EOL;
|
1216 |
+
$custom_code_manager_backup .= $code['custom_codes_item'] . PHP_EOL;
|
1217 |
+
$custom_code_manager_backup .= '</script>' . PHP_EOL . PHP_EOL;
|
1218 |
+
$i ++;
|
1219 |
+
}
|
1220 |
+
|
1221 |
+
SBP_Notice_Manager::display_notice(
|
1222 |
+
'custom_code_manager_backup',
|
1223 |
+
'<p>' . __( 'Speed Booster Pack: We have removed the Custom Code Manager feature from our plugin because it\'s not totally related to performance. Since you were using this feature, here\'s a backup of your custom codes:', 'speed-booster-pack' ) . '</p>' .
|
1224 |
+
'<textarea style="max-width: 100%; width: 600px; min-height: 150px;" readonly>' . $custom_code_manager_backup . '</textarea>' .
|
1225 |
+
'<p>' . sprintf( __( 'You can use any plugin you want to add these custom codes (%s is a decent alternative). Better yet, you can use your theme if it has a custom code feature.', 'speed-booster-pack' ), '<a href="https://wordpress.org/plugins/insert-headers-and-footers/" target="_blank" rel="external nofollow">Insert Headers and Footers</a>' ) . '</p>' .
|
1226 |
+
'<p><button class="button button-primary sbp-dismiss-ccm-notice notice-dismiss-button" data-notice-id="custom_code_manager_backup" data-notice-action="sbp_dismiss_notice">' . __( 'I copied the code, dismiss this notice', 'speed-booster-pack' ) . '</button></p>',
|
1227 |
+
'warning',
|
1228 |
+
false
|
1229 |
+
);
|
1230 |
+
}
|
1231 |
+
|
1232 |
CSF::createSection(
|
1233 |
$prefix,
|
1234 |
[
|
1240 |
);
|
1241 |
/* END Section: Assets */
|
1242 |
|
1243 |
+
/* BEGIN Section: CDN & Proxy */
|
1244 |
+
/* Begin Of Cloudflare Fields */
|
1245 |
+
$cloudflare_fields = [
|
1246 |
+
[
|
1247 |
+
'title' => __( 'Cloudflare', 'speed-booster-pack' ),
|
1248 |
+
'type' => 'subheading',
|
1249 |
+
],
|
1250 |
+
[
|
1251 |
+
'title' => __( 'Connect to Cloudflare', 'speed-booster-pack' ),
|
1252 |
+
'id' => 'cloudflare_enable',
|
1253 |
+
'type' => 'switcher',
|
1254 |
+
'sanitize' => 'sbp_sanitize_boolean',
|
1255 |
+
],
|
1256 |
+
[
|
1257 |
+
'title' => __( 'Cloudflare global API key', 'speed-booster-pack' ),
|
1258 |
+
'id' => 'cloudflare_api',
|
1259 |
+
'type' => 'text',
|
1260 |
+
'desc' => '<a href="https://developers.cloudflare.com/api/keys/#view-your-api-key" rel="external noopener" target="_blank">' . __( 'You can find it using this tutorial.', 'speed-booster-pack' ) . '</a>',
|
1261 |
+
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
1262 |
+
],
|
1263 |
+
[
|
1264 |
+
'title' => __( 'Cloudflare email address', 'speed-booster-pack' ),
|
1265 |
+
'id' => 'cloudflare_email',
|
1266 |
+
'type' => 'text',
|
1267 |
+
'desc' => __( 'The email address you signed up for Cloudflare with.', 'speed-booster-pack' ),
|
1268 |
+
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
1269 |
+
],
|
1270 |
+
[
|
1271 |
+
'title' => __( 'Cloudflare zone ID', 'speed-booster-pack' ),
|
1272 |
+
'id' => 'cloudflare_zone',
|
1273 |
+
'type' => 'text',
|
1274 |
+
'desc' => __( 'You can find your zone ID in the Overview tab on your Cloudflare panel.', 'speed-booster-pack' ),
|
1275 |
+
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
1276 |
+
],
|
1277 |
+
[
|
1278 |
+
'title' => __( 'Rocket Loader', 'speed-booster-pack' ),
|
1279 |
+
'id' => 'cf_rocket_loader_enable',
|
1280 |
+
'class' => 'with-preloader',
|
1281 |
+
'type' => 'switcher',
|
1282 |
+
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
1283 |
+
'sanitize' => 'sbp_sanitize_boolean',
|
1284 |
+
],
|
1285 |
+
[
|
1286 |
+
'title' => __( 'Development Mode', 'speed-booster-pack' ),
|
1287 |
+
'id' => 'cf_dev_mode_enable',
|
1288 |
+
'class' => 'with-preloader',
|
1289 |
+
'type' => 'switcher',
|
1290 |
+
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
1291 |
+
'sanitize' => 'sbp_sanitize_boolean',
|
1292 |
+
],
|
1293 |
+
[
|
1294 |
+
'title' => __( 'Minify CSS', 'speed-booster-pack' ),
|
1295 |
+
'id' => 'cf_css_minify_enable',
|
1296 |
+
'class' => 'with-preloader',
|
1297 |
+
'type' => 'switcher',
|
1298 |
+
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
1299 |
+
'sanitize' => 'sbp_sanitize_boolean',
|
1300 |
+
],
|
1301 |
+
[
|
1302 |
+
'title' => __( 'Minify HTML', 'speed-booster-pack' ),
|
1303 |
+
'id' => 'cf_html_minify_enable',
|
1304 |
+
'class' => 'with-preloader',
|
1305 |
+
'type' => 'switcher',
|
1306 |
+
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
1307 |
+
'sanitize' => 'sbp_sanitize_boolean',
|
1308 |
+
],
|
1309 |
+
[
|
1310 |
+
'title' => __( 'Minify JS', 'speed-booster-pack' ),
|
1311 |
+
'id' => 'cf_js_minify_enable',
|
1312 |
+
'class' => 'with-preloader',
|
1313 |
+
'type' => 'switcher',
|
1314 |
+
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
1315 |
+
'sanitize' => 'sbp_sanitize_boolean',
|
1316 |
+
],
|
1317 |
+
[
|
1318 |
+
'title' => __( 'Automatic Platform Optimization', 'speed-booster-pack' ),
|
1319 |
+
'id' => 'cf_apo_enable',
|
1320 |
+
'desc' => __( 'You need to be a paying Cloudflare user to enable this setting, otherwise it will get disabled again.', 'speed-booster-pack' ),
|
1321 |
+
'class' => 'with-preloader',
|
1322 |
+
'type' => 'switcher',
|
1323 |
+
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
1324 |
+
'sanitize' => 'sbp_sanitize_boolean',
|
1325 |
+
],
|
1326 |
+
[
|
1327 |
+
'title' => __( 'APO: Cache By Device Type', 'speed-booster-pack' ),
|
1328 |
+
'id' => 'cf_apo_device_type',
|
1329 |
+
'class' => 'with-preloader',
|
1330 |
+
'type' => 'switcher',
|
1331 |
+
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
1332 |
+
'sanitize' => 'sbp_sanitize_boolean',
|
1333 |
+
],
|
1334 |
+
[
|
1335 |
+
'title' => __( 'Browser Cache TTL', 'speed-booster-pack' ),
|
1336 |
+
'id' => 'cf_browser_cache_ttl',
|
1337 |
+
'class' => 'with-preloader',
|
1338 |
+
'type' => 'select',
|
1339 |
+
'options' => [
|
1340 |
+
0 => __( 'Respect Existing Headers', 'speed-booster-pack' ),
|
1341 |
+
1800 => __( '30 minutes', 'speed-booster-pack' ),
|
1342 |
+
3600 => __( '1 hour', 'speed-booster-pack' ),
|
1343 |
+
7200 => __( '2 hours', 'speed-booster-pack' ),
|
1344 |
+
10800 => __( '3 hours', 'speed-booster-pack' ),
|
1345 |
+
14400 => __( '4 hours', 'speed-booster-pack' ),
|
1346 |
+
18000 => __( '5 hours', 'speed-booster-pack' ),
|
1347 |
+
28800 => __( '8 hours', 'speed-booster-pack' ),
|
1348 |
+
43200 => __( '12 hours', 'speed-booster-pack' ),
|
1349 |
+
57600 => __( '16 hours', 'speed-booster-pack' ),
|
1350 |
+
72000 => __( '20 hours', 'speed-booster-pack' ),
|
1351 |
+
86400 => __( '1 day', 'speed-booster-pack' ),
|
1352 |
+
172800 => __( '2 days', 'speed-booster-pack' ),
|
1353 |
+
259200 => __( '3 days', 'speed-booster-pack' ),
|
1354 |
+
345600 => __( '4 days', 'speed-booster-pack' ),
|
1355 |
+
432000 => __( '5 days', 'speed-booster-pack' ),
|
1356 |
+
691200 => __( '8 days', 'speed-booster-pack' ),
|
1357 |
+
1382400 => __( '16 days', 'speed-booster-pack' ),
|
1358 |
+
2073600 => __( '24 days', 'speed-booster-pack' ),
|
1359 |
+
2678400 => __( '1 month', 'speed-booster-pack' ),
|
1360 |
+
5356800 => __( '2 months', 'speed-booster-pack' ),
|
1361 |
+
16070400 => __( '6 months', 'speed-booster-pack' ),
|
1362 |
+
31536000 => __( '1 year', 'speed-booster-pack' ),
|
1363 |
+
],
|
1364 |
+
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
1365 |
+
],
|
1366 |
+
[
|
1367 |
+
'type' => 'content',
|
1368 |
+
'content' => '
|
1369 |
+
<span>
|
1370 |
+
<a href="#" class="button button-small sbp-cloudflare-test">' . __( 'Test Cloudflare connection', 'speed-booster-pack' ) . '<span class="sbp-cloudflare-spinner"></span></a>
|
1371 |
+
<span class="sbp-cloudflare-fetching">' . __( 'Fetching Cloudflare settings...', 'speed-booster-pack' ) . '</span>
|
1372 |
+
</span>
|
1373 |
+
<span class="sbp-cloudflare-info-text sbp-cloudflare-incorrect" style="color:red; vertical-align: middle;"><i class="fa fa-exclamation-triangle"></i> ' . __( 'Your Cloudflare credentials are incorrect.', 'speed-booster-pack' ) . '</span>
|
1374 |
+
<span class="sbp-cloudflare-info-text sbp-cloudflare-connection-issue" style="color:red; vertical-align: middle;"><i class="fa fa-exclamation-triangle"></i> ' . __( 'Error occured while connecting to Cloudflare.', 'speed-booster-pack' ) . '</span>
|
1375 |
+
<span class="sbp-cloudflare-info-text sbp-cloudflare-correct" style="color:green; vertical-align: middle;"><i class="fa fa-check-circle"></i> ' . __( 'Your Cloudflare credentials are correct.', 'speed-booster-pack' ) . '</span>
|
1376 |
+
<span class="sbp-cloudflare-info-text sbp-cloudflare-warning" style="color:orange; vertical-align: middle;"><i class="fa fa-exclamation-circle"></i> ' . __( 'Enter your Cloudflare credentials and save settings to see CloudFlare options.', 'speed-booster-pack' ) . '</span>
|
1377 |
+
',
|
1378 |
+
'dependency' => [ 'cloudflare_enable', '==', '1', '', 'visible' ],
|
1379 |
+
],
|
1380 |
+
];
|
1381 |
+
/* End Of Cloudflare Fields */
|
1382 |
+
|
1383 |
+
/* Begin Of Sucuri Fields */
|
1384 |
+
$sucuri_fields = [
|
1385 |
+
[
|
1386 |
+
'title' => __( 'Sucuri', 'speed-booster-pack' ),
|
1387 |
+
'type' => 'subheading',
|
1388 |
+
],
|
1389 |
+
[
|
1390 |
+
'title' => __( 'Connect to Sucuri', 'speed-booster-pack' ),
|
1391 |
+
'id' => 'sucuri_enable',
|
1392 |
+
'type' => 'switcher',
|
1393 |
+
'desc' => sprintf( __( 'When you connect your Sucuri account, you\'ll be able to clear your Sucuri cache via your admin bar. Plus, every time %1$s Cache\'s cache is cleared, Sucuri\'s cache will be cleared as well.', 'speed-booster-pack' ), SBP_PLUGIN_NAME ),
|
1394 |
+
'sanitize' => 'sbp_sanitize_boolean',
|
1395 |
+
],
|
1396 |
+
[
|
1397 |
+
'title' => __( 'Sucuri API key', 'speed-booster-pack' ),
|
1398 |
+
'id' => 'sucuri_api',
|
1399 |
+
'type' => 'text',
|
1400 |
+
'dependency' => [ 'sucuri_enable', '==', '1', '', 'visible' ],
|
1401 |
+
],
|
1402 |
+
[
|
1403 |
+
'title' => __( 'Sucuri API Secret', 'speed-booster-pack' ),
|
1404 |
+
'id' => 'sucuri_secret',
|
1405 |
+
'type' => 'text',
|
1406 |
+
'dependency' => [ 'sucuri_enable', '==', '1', '', 'visible' ],
|
1407 |
+
],
|
1408 |
+
];
|
1409 |
+
/* End Of Sucuri Fields */
|
1410 |
+
|
1411 |
+
$proxy_fields = array_merge( [
|
1412 |
+
[
|
1413 |
+
'title' => __( 'CDN', 'speed-booster-pack' ),
|
1414 |
+
'type' => 'subheading',
|
1415 |
+
],
|
1416 |
+
[
|
1417 |
+
'title' => __( 'Enable/Disable', 'speed-booster-pack' ) . ' ' . __( 'CDN', 'speed-booster-pack' ),
|
1418 |
+
'id' => 'cdn_enable',
|
1419 |
+
'type' => 'switcher',
|
1420 |
+
// B_TODO: Description text needed.
|
1421 |
+
'desc' => __( '', 'speed-booster-pack' ),
|
1422 |
+
'sanitize' => 'sbp_sanitize_boolean',
|
1423 |
+
],
|
1424 |
+
[
|
1425 |
+
'title' => __( 'CDN domain', 'speed-booster-pack' ),
|
1426 |
+
'id' => 'cdn_url',
|
1427 |
+
'class' => 'cdn-url',
|
1428 |
+
'type' => 'text',
|
1429 |
+
'before' => 'http(s):// ',
|
1430 |
+
'after' => ' /',
|
1431 |
+
'desc' => __( 'Rewrites all asset URLs with the specified CDN domain. Enter the CDN domain without a protocol or a trailing slash; a relative protocol will be automatically added to all changed asset URLs.', 'speed-booster-pack' ),
|
1432 |
+
'sanitize' => 'sbp_sanitize_url',
|
1433 |
+
'dependency' => [ 'cdn_enable', '!=', '', '', 'visible' ],
|
1434 |
+
],
|
1435 |
+
[
|
1436 |
+
'title' => __( 'Included Directories', 'speed-booster-pack' ),
|
1437 |
+
'id' => 'cdn_includes',
|
1438 |
+
'type' => 'code_editor',
|
1439 |
+
'desc' => __( 'Anything other than WordPress\'s existing directories should be entered here to be rewritten with the CDN domain. Separated by new lines.', 'speed-booster-pack' ),
|
1440 |
+
'sanitize' => 'sbp_sanitize_strip_tags',
|
1441 |
+
'dependency' => [ 'cdn_enable', '!=', '', '', 'visible' ],
|
1442 |
+
],
|
1443 |
+
[
|
1444 |
+
'title' => __( 'Excluded Extensions', 'speed-booster-pack' ),
|
1445 |
+
'id' => 'cdn_excludes',
|
1446 |
+
'type' => 'code_editor',
|
1447 |
+
'desc' => __( 'If you want to exclude certain file types, enter the extensions here. Separated by new lines.', 'speed-booster-pack' ),
|
1448 |
+
'sanitize' => 'sbp_sanitize_strip_tags',
|
1449 |
+
'dependency' => [ 'cdn_enable', '!=', '', '', 'visible' ],
|
1450 |
+
],
|
1451 |
+
],
|
1452 |
+
$cloudflare_fields,
|
1453 |
+
$sucuri_fields );
|
1454 |
+
CSF::createSection(
|
1455 |
+
$prefix,
|
1456 |
+
array(
|
1457 |
+
'title' => __( 'CDN & Proxy', 'speed-booster-pack' ),
|
1458 |
+
'id' => 'cdn_proxy',
|
1459 |
+
'icon' => 'fa fa-directions',
|
1460 |
+
'fields' => $proxy_fields,
|
1461 |
+
)
|
1462 |
+
);
|
1463 |
+
/* END Section: CDN & Proxy */
|
1464 |
+
|
1465 |
/* BEGIN Section: Special */
|
1466 |
CSF::createSection(
|
1467 |
$prefix,
|
1481 |
'default' => true,
|
1482 |
'sanitize' => 'sbp_sanitize_boolean',
|
1483 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1484 |
[
|
1485 |
'title' => 'WooCommerce: ' . __( 'Disable cart fragments', 'speed-booster-pack' ),
|
1486 |
'id' => 'woocommerce_disable_cart_fragments',
|
admin/css/intro.min.css
CHANGED
@@ -1,2 +1 @@
|
|
1 |
-
|
2 |
-
/*# sourceMappingURL=introjs.min.css.map */
|
1 |
+
.introjs-overlay{position:absolute;-webkit-box-sizing:content-box;box-sizing:content-box;z-index:999999;opacity:0;-webkit-transition:all .3s ease-out;-o-transition:all .3s ease-out;transition:all .3s ease-out}.introjs-showElement{z-index:9999999!important}tr.introjs-showElement>td{z-index:9999999!important;position:relative}tr.introjs-showElement>th{z-index:9999999!important;position:relative}.introjs-disableInteraction{z-index:99999999!important;position:absolute;background-color:#fff;opacity:0}.introjs-relativePosition{position:relative}.introjs-helperLayer{-webkit-box-sizing:content-box;box-sizing:content-box;position:absolute;z-index:9999998;border-radius:4px;-webkit-transition:all .3s ease-out;-o-transition:all .3s ease-out;transition:all .3s ease-out}.introjs-helperLayer *{-webkit-box-sizing:content-box;box-sizing:content-box}.introjs-helperLayer :before{-webkit-box-sizing:content-box;box-sizing:content-box}.introjs-helperLayer :after{-webkit-box-sizing:content-box;box-sizing:content-box}.introjs-tooltipReferenceLayer{font-family:"Helvetica Neue",Inter,ui-sans-serif,"Apple Color Emoji",Helvetica,Arial,sans-serif;-webkit-box-sizing:content-box;box-sizing:content-box;position:absolute;visibility:hidden;z-index:100000000;background-color:transparent;-webkit-transition:all .3s ease-out;-o-transition:all .3s ease-out;transition:all .3s ease-out}.introjs-tooltipReferenceLayer *{font-family:"Helvetica Neue",Inter,ui-sans-serif,"Apple Color Emoji",Helvetica,Arial,sans-serif}.introjs-helperNumberLayer{font-family:"Helvetica Neue",Inter,ui-sans-serif,"Apple Color Emoji",Helvetica,Arial,sans-serif;color:#9e9e9e;text-align:center;padding-top:10px;padding-bottom:10px}.introjs-arrow{border:5px solid transparent;content:"";position:absolute}.introjs-arrow.top{top:-10px;left:10px;border-bottom-color:#fff}.introjs-arrow.top-right{top:-10px;right:10px;border-bottom-color:#fff}.introjs-arrow.top-middle{top:-10px;left:50%;margin-left:-5px;border-bottom-color:#fff}.introjs-arrow.right{right:-10px;top:10px;border-left-color:#fff}.introjs-arrow.right-bottom{bottom:10px;right:-10px;border-left-color:#fff}.introjs-arrow.bottom{bottom:-10px;left:10px;border-top-color:#fff}.introjs-arrow.bottom-right{bottom:-10px;right:10px;border-top-color:#fff}.introjs-arrow.bottom-middle{bottom:-10px;left:50%;margin-left:-5px;border-top-color:#fff}.introjs-arrow.left{left:-10px;top:10px;border-right-color:#fff}.introjs-arrow.left-bottom{left:-10px;bottom:10px;border-right-color:#fff}.introjs-tooltip{-webkit-box-sizing:content-box;box-sizing:content-box;position:absolute;visibility:visible;background-color:#fff;min-width:250px;max-width:300px;border-radius:5px;-webkit-box-shadow:0 3px 30px rgba(33,33,33,.3);box-shadow:0 3px 30px rgba(33,33,33,.3);-webkit-transition:opacity .1s ease-out;-o-transition:opacity .1s ease-out;transition:opacity .1s ease-out}.introjs-tooltiptext{padding:20px}.introjs-tooltip-title{font-size:18px;margin:0;padding:0;font-weight:700;float:left;line-height:32px}.introjs-tooltip-header{padding-left:20px;padding-right:20px;padding-top:10px}.introjs-tooltip-header:after{content:".";visibility:hidden;display:block;height:0;clear:both}.introjs-tooltipbuttons{border-top:1px solid #e0e0e0;padding:10px;text-align:right;white-space:nowrap}.introjs-tooltipbuttons:after{content:"";visibility:hidden;display:block;height:0;clear:both}.introjs-button{-webkit-box-sizing:content-box;box-sizing:content-box;position:relative;overflow:visible;display:inline-block;padding:.5rem 1rem;border:1px solid #bdbdbd;text-decoration:none;text-shadow:1px 1px 0 #fff;font-size:14px;color:#424242;white-space:nowrap;cursor:pointer;outline:0;background-color:#f4f4f4;border-radius:.2em;zoom:1;display:inline}.introjs-button:hover{outline:0;text-decoration:none;border-color:#9e9e9e;background-color:#e0e0e0;color:#212121}.introjs-button:focus{outline:0;text-decoration:none;background-color:#eee;-webkit-box-shadow:0 0 0 .2rem rgba(158,158,158,.5);box-shadow:0 0 0 .2rem rgba(158,158,158,.5);border:1px solid #616161;color:#212121}.introjs-button:active{outline:0;text-decoration:none;background-color:#e0e0e0;border-color:#9e9e9e;color:#212121}.introjs-button::-moz-focus-inner{padding:0;border:0}.introjs-skipbutton{-webkit-box-sizing:content-box;box-sizing:content-box;color:#616161;float:right;font-size:20px;cursor:pointer;font-weight:700;line-height:1;text-align:center;padding:7px 10px}.introjs-skipbutton:focus,.introjs-skipbutton:hover{color:#212121;outline:0;text-decoration:none}.introjs-prevbutton{float:left}.introjs-nextbutton{float:right}.introjs-disabled{color:#9e9e9e;border-color:#bdbdbd;-webkit-box-shadow:none;box-shadow:none;cursor:default;background-color:#f4f4f4;background-image:none;text-decoration:none}.introjs-disabled:focus,.introjs-disabled:hover{color:#9e9e9e;border-color:#bdbdbd;-webkit-box-shadow:none;box-shadow:none;cursor:default;background-color:#f4f4f4;background-image:none;text-decoration:none}.introjs-hidden{display:none}.introjs-bullets{text-align:center;padding-top:10px;padding-bottom:10px}.introjs-bullets ul{-webkit-box-sizing:content-box;box-sizing:content-box;clear:both;margin:0 auto 0;padding:0;display:inline-block}.introjs-bullets ul li{-webkit-box-sizing:content-box;box-sizing:content-box;list-style:none;float:left;margin:0 2px}.introjs-bullets ul li a{-webkit-transition:width .1s ease-in;-o-transition:width .1s ease-in;transition:width .1s ease-in;-webkit-box-sizing:content-box;box-sizing:content-box;display:block;width:6px;height:6px;background:#ccc;border-radius:10px;text-decoration:none;cursor:pointer}.introjs-bullets ul li a:focus,.introjs-bullets ul li a:hover{width:15px;background:#999;text-decoration:none;outline:0}.introjs-bullets ul li a.active{width:15px;background:#999}.introjs-progress{-webkit-box-sizing:content-box;box-sizing:content-box;overflow:hidden;height:10px;margin:10px;border-radius:4px;background-color:#e0e0e0}.introjs-progressbar{-webkit-box-sizing:content-box;box-sizing:content-box;float:left;width:0%;height:100%;font-size:10px;line-height:10px;text-align:center;background-color:#08c}.introjsFloatingElement{position:absolute;height:0;width:0;left:50%;top:50%}.introjs-fixedTooltip{position:fixed}.introjs-hint{-webkit-box-sizing:content-box;box-sizing:content-box;position:absolute;background:0 0;width:20px;height:15px;cursor:pointer}.introjs-hint:focus{border:0;outline:0}.introjs-hint:hover>.introjs-hint-pulse{background-color:rgba(60,60,60,.57)}.introjs-hidehint{display:none}.introjs-fixedhint{position:fixed}@-webkit-keyframes introjspulse{0%{-webkit-transform:scale(.95);transform:scale(.95);-webkit-box-shadow:0 0 0 0 rgba(0,0,0,.7);box-shadow:0 0 0 0 rgba(0,0,0,.7)}70%{-webkit-transform:scale(1);transform:scale(1);-webkit-box-shadow:0 0 0 10px transparent;box-shadow:0 0 0 10px transparent}100%{-webkit-transform:scale(.95);transform:scale(.95);-webkit-box-shadow:0 0 0 0 transparent;box-shadow:0 0 0 0 transparent}}@keyframes introjspulse{0%{-webkit-transform:scale(.95);transform:scale(.95);-webkit-box-shadow:0 0 0 0 rgba(0,0,0,.7);box-shadow:0 0 0 0 rgba(0,0,0,.7)}70%{-webkit-transform:scale(1);transform:scale(1);-webkit-box-shadow:0 0 0 10px transparent;box-shadow:0 0 0 10px transparent}100%{-webkit-transform:scale(.95);transform:scale(.95);-webkit-box-shadow:0 0 0 0 transparent;box-shadow:0 0 0 0 transparent}}.introjs-hint-pulse{-webkit-box-sizing:content-box;box-sizing:content-box;width:15px;height:15px;border-radius:30px;background-color:rgba(136,136,136,.24);z-index:10;position:absolute;-webkit-transition:all .2s ease-out;-o-transition:all .2s ease-out;transition:all .2s ease-out;-webkit-animation:introjspulse 2s infinite;animation:introjspulse 2s infinite}.introjs-hint-no-anim .introjs-hint-pulse{-webkit-animation:none;animation:none}.introjs-hint-dot{-webkit-box-sizing:content-box;box-sizing:content-box;background:0 0;border-radius:60px;height:50px;width:50px;position:absolute;top:-18px;left:-18px;z-index:1;opacity:0}
|
|
admin/css/speed-booster-pack-admin.css
CHANGED
@@ -180,70 +180,10 @@
|
|
180 |
color: #fff;
|
181 |
}
|
182 |
|
183 |
-
.sbp-advice {
|
184 |
-
padding: 15px 5px;
|
185 |
-
border-bottom: 1px solid #ddd;
|
186 |
-
}
|
187 |
-
|
188 |
-
.sbp-advice p {
|
189 |
-
display: inline-block;
|
190 |
-
position: relative;
|
191 |
-
top: -5px;
|
192 |
-
}
|
193 |
-
|
194 |
-
.sbp-advice input {
|
195 |
-
display: none;
|
196 |
-
}
|
197 |
-
|
198 |
-
.sbp-advice .circle {
|
199 |
-
display: inline-block;
|
200 |
-
width: 20px;
|
201 |
-
height: 20px;
|
202 |
-
border-radius: 100%;
|
203 |
-
margin-right: 10px;
|
204 |
-
}
|
205 |
-
|
206 |
-
.sbp-advice input[type=checkbox]:checked + .circle {
|
207 |
-
background: green;
|
208 |
-
position: relative;
|
209 |
-
}
|
210 |
-
|
211 |
-
.sbp-advice input[type=checkbox]:checked + .circle:after {
|
212 |
-
content: "✓";
|
213 |
-
color: #fff;
|
214 |
-
font-size: 22px;
|
215 |
-
position: absolute;
|
216 |
-
right: 0;
|
217 |
-
}
|
218 |
-
|
219 |
-
.sbp-advice input[type=checkbox]:not(:checked) + .circle {
|
220 |
-
border: 1px solid #ddd;
|
221 |
-
}
|
222 |
-
|
223 |
-
.sbp-advice p {
|
224 |
-
margin: 0!important;
|
225 |
-
}
|
226 |
-
|
227 |
-
.sbp-advice input[type=checkbox]:checked ~ p {
|
228 |
-
text-decoration: line-through;
|
229 |
-
color: #888;
|
230 |
-
}
|
231 |
-
|
232 |
.meta_box_critical_css_excludes.csf-depend-on {
|
233 |
display: none!important;
|
234 |
}
|
235 |
|
236 |
-
@-webkit-keyframes loading {
|
237 |
-
0% {
|
238 |
-
-webkit-transform: rotate(0deg);
|
239 |
-
transform: rotate(0deg);
|
240 |
-
}
|
241 |
-
100% {
|
242 |
-
-webkit-transform: rotate(360deg);
|
243 |
-
transform: rotate(360deg);
|
244 |
-
}
|
245 |
-
}
|
246 |
-
|
247 |
@keyframes loading {
|
248 |
0% {
|
249 |
-webkit-transform: rotate(0deg);
|
180 |
color: #fff;
|
181 |
}
|
182 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
183 |
.meta_box_critical_css_excludes.csf-depend-on {
|
184 |
display: none!important;
|
185 |
}
|
186 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
187 |
@keyframes loading {
|
188 |
0% {
|
189 |
-webkit-transform: rotate(0deg);
|
admin/js/init-intro.js
CHANGED
@@ -10,32 +10,40 @@ jQuery(function() {
|
|
10 |
prevLabel: sbp_intro_translations.prevLabel,
|
11 |
doneLabel: sbp_intro_translations.doneLabel,
|
12 |
steps: [{
|
|
|
13 |
intro: sbp_intro_translations.welcome
|
14 |
}, {
|
15 |
element: document.querySelector('.csf-tab-item:nth-child(3)'),
|
|
|
16 |
intro: sbp_intro_translations.caching,
|
17 |
position: 'right'
|
18 |
}, {
|
19 |
element: document.querySelector('.module-caching'),
|
|
|
20 |
intro: sbp_intro_translations.caching2,
|
21 |
position: 'bottom'
|
22 |
}, {
|
23 |
element: document.querySelector('.csf-tab-item:nth-child(2)'),
|
|
|
24 |
intro: sbp_intro_translations.general,
|
25 |
position: 'right'
|
26 |
}, {
|
27 |
-
element: document.querySelector('.csf-tab-item:nth-child(
|
|
|
28 |
intro: sbp_intro_translations.cdn,
|
29 |
position: 'right'
|
30 |
}, {
|
31 |
-
element: document.querySelector('.csf-tab-item:nth-child(
|
|
|
32 |
intro: sbp_intro_translations.css,
|
33 |
position: 'right'
|
34 |
}, {
|
35 |
-
element: document.querySelector('.csf-tab-item:nth-child(
|
|
|
36 |
intro: sbp_intro_translations.assets,
|
37 |
position: 'right'
|
38 |
}, {
|
|
|
39 |
intro: sbp_intro_translations.end
|
40 |
}]
|
41 |
}).start().onbeforechange(async function(targetElement) {
|
10 |
prevLabel: sbp_intro_translations.prevLabel,
|
11 |
doneLabel: sbp_intro_translations.doneLabel,
|
12 |
steps: [{
|
13 |
+
title: sbp_intro_translations.welcomeTitle,
|
14 |
intro: sbp_intro_translations.welcome
|
15 |
}, {
|
16 |
element: document.querySelector('.csf-tab-item:nth-child(3)'),
|
17 |
+
title: sbp_intro_translations.cachingTitle,
|
18 |
intro: sbp_intro_translations.caching,
|
19 |
position: 'right'
|
20 |
}, {
|
21 |
element: document.querySelector('.module-caching'),
|
22 |
+
title: sbp_intro_translations.caching2Title,
|
23 |
intro: sbp_intro_translations.caching2,
|
24 |
position: 'bottom'
|
25 |
}, {
|
26 |
element: document.querySelector('.csf-tab-item:nth-child(2)'),
|
27 |
+
title: sbp_intro_translations.generalTitle,
|
28 |
intro: sbp_intro_translations.general,
|
29 |
position: 'right'
|
30 |
}, {
|
31 |
+
element: document.querySelector('.csf-tab-item:nth-child(6)'),
|
32 |
+
title: sbp_intro_translations.cdnTitle,
|
33 |
intro: sbp_intro_translations.cdn,
|
34 |
position: 'right'
|
35 |
}, {
|
36 |
+
element: document.querySelector('.csf-tab-item:nth-child(4)'),
|
37 |
+
title: sbp_intro_translations.cssTitle,
|
38 |
intro: sbp_intro_translations.css,
|
39 |
position: 'right'
|
40 |
}, {
|
41 |
+
element: document.querySelector('.csf-tab-item:nth-child(5)'),
|
42 |
+
title: sbp_intro_translations.assetsTitle,
|
43 |
intro: sbp_intro_translations.assets,
|
44 |
position: 'right'
|
45 |
}, {
|
46 |
+
title: sbp_intro_translations.endTitle,
|
47 |
intro: sbp_intro_translations.end
|
48 |
}]
|
49 |
}).start().onbeforechange(async function(targetElement) {
|
admin/js/intro.min.js
CHANGED
@@ -1,10 +1,10 @@
|
|
1 |
/*!
|
2 |
-
* Intro.js
|
3 |
* https://introjs.com
|
4 |
*
|
5 |
-
* Copyright (C) 2012-
|
6 |
-
* https://
|
7 |
*
|
8 |
-
* Date:
|
9 |
*/
|
10 |
-
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).introJs=e()}(this,(function(){"use strict";function t(e){return(t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(e)}var e=function(){var t={};return function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"introjs-stamp";return t[n]=t[n]||0,void 0===e[n]&&(e[n]=t[n]++),e[n]}}();function n(t,e,n){if(t)for(var i=0,o=t.length;i<o;i++)e(t[i],i);"function"==typeof n&&n()}var i=new function(){var t="introjs_event";this._id=function(t,n,i,o){return n+e(i)+(o?"_".concat(e(o)):"")},this.on=function(e,n,i,o,r){var l=this._id.apply(this,arguments),a=function(t){return i.call(o||e,t||window.event)};"addEventListener"in e?e.addEventListener(n,a,r):"attachEvent"in e&&e.attachEvent("on".concat(n),a),e[t]=e[t]||{},e[t][l]=a},this.off=function(e,n,i,o,r){var l=this._id.apply(this,arguments),a=e[t]&&e[t][l];a&&("removeEventListener"in e?e.removeEventListener(n,a,r):"detachEvent"in e&&e.detachEvent("on".concat(n),a),e[t][l]=null)}},o="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function r(t,e){return t(e={exports:{}},e.exports),e.exports}var l,a,s=function(t){return t&&t.Math==Math&&t},c=s("object"==typeof globalThis&&globalThis)||s("object"==typeof window&&window)||s("object"==typeof self&&self)||s("object"==typeof o&&o)||function(){return this}()||Function("return this")(),u=function(t){try{return!!t()}catch(t){return!0}},h=!u((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),f={}.propertyIsEnumerable,p=Object.getOwnPropertyDescriptor,d={f:p&&!f.call({1:2},1)?function(t){var e=p(this,t);return!!e&&e.enumerable}:f},g=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}},v={}.toString,m=function(t){return v.call(t).slice(8,-1)},b="".split,y=u((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==m(t)?b.call(t,""):Object(t)}:Object,w=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t},_=function(t){return y(w(t))},x=function(t){return"object"==typeof t?null!==t:"function"==typeof t},j=function(t){return"function"==typeof t?t:void 0},C=function(t,e){return arguments.length<2?j(c[t]):c[t]&&c[t][e]},S=C("navigator","userAgent")||"",E=c.process,A=c.Deno,k=E&&E.versions||A&&A.version,T=k&&k.v8;T?a=(l=T.split("."))[0]<4?1:l[0]+l[1]:S&&(!(l=S.match(/Edge\/(\d+)/))||l[1]>=74)&&(l=S.match(/Chrome\/(\d+)/))&&(a=l[1]);var N=a&&+a,I=!!Object.getOwnPropertySymbols&&!u((function(){var t=Symbol();return!String(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&N&&N<41})),O=I&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,P=O?function(t){return"symbol"==typeof t}:function(t){var e=C("Symbol");return"function"==typeof e&&Object(t)instanceof e},L=function(t,e){try{Object.defineProperty(c,t,{value:e,configurable:!0,writable:!0})}catch(n){c[t]=e}return e},q="__core-js_shared__",R=c[q]||L(q,{}),M=r((function(t){(t.exports=function(t,e){return R[t]||(R[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.16.1",mode:"global",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"})})),B=function(t){return Object(w(t))},H={}.hasOwnProperty,$=Object.hasOwn||function(t,e){return H.call(B(t),e)},D=0,F=Math.random(),z=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++D+F).toString(36)},W=M("wks"),V=c.Symbol,U=O?V:V&&V.withoutSetter||z,G=function(t){return $(W,t)&&(I||"string"==typeof W[t])||(I&&$(V,t)?W[t]=V[t]:W[t]=U("Symbol."+t)),W[t]},Y=G("toPrimitive"),K=function(t,e){if(!x(t)||P(t))return t;var n,i=t[Y];if(void 0!==i){if(void 0===e&&(e="default"),n=i.call(t,e),!x(n)||P(n))return n;throw TypeError("Can't convert object to primitive value")}return void 0===e&&(e="number"),function(t,e){var n,i;if("string"===e&&"function"==typeof(n=t.toString)&&!x(i=n.call(t)))return i;if("function"==typeof(n=t.valueOf)&&!x(i=n.call(t)))return i;if("string"!==e&&"function"==typeof(n=t.toString)&&!x(i=n.call(t)))return i;throw TypeError("Can't convert object to primitive value")}(t,e)},X=function(t){var e=K(t,"string");return P(e)?e:String(e)},J=c.document,Q=x(J)&&x(J.createElement),Z=function(t){return Q?J.createElement(t):{}},tt=!h&&!u((function(){return 7!=Object.defineProperty(Z("div"),"a",{get:function(){return 7}}).a})),et=Object.getOwnPropertyDescriptor,nt={f:h?et:function(t,e){if(t=_(t),e=X(e),tt)try{return et(t,e)}catch(t){}if($(t,e))return g(!d.f.call(t,e),t[e])}},it=function(t){if(!x(t))throw TypeError(String(t)+" is not an object");return t},ot=Object.defineProperty,rt={f:h?ot:function(t,e,n){if(it(t),e=X(e),it(n),tt)try{return ot(t,e,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(t[e]=n.value),t}},lt=h?function(t,e,n){return rt.f(t,e,g(1,n))}:function(t,e,n){return t[e]=n,t},at=Function.toString;"function"!=typeof R.inspectSource&&(R.inspectSource=function(t){return at.call(t)});var st,ct,ut,ht=R.inspectSource,ft=c.WeakMap,pt="function"==typeof ft&&/native code/.test(ht(ft)),dt=M("keys"),gt=function(t){return dt[t]||(dt[t]=z(t))},vt={},mt="Object already initialized",bt=c.WeakMap;if(pt||R.state){var yt=R.state||(R.state=new bt),wt=yt.get,_t=yt.has,xt=yt.set;st=function(t,e){if(_t.call(yt,t))throw new TypeError(mt);return e.facade=t,xt.call(yt,t,e),e},ct=function(t){return wt.call(yt,t)||{}},ut=function(t){return _t.call(yt,t)}}else{var jt=gt("state");vt[jt]=!0,st=function(t,e){if($(t,jt))throw new TypeError(mt);return e.facade=t,lt(t,jt,e),e},ct=function(t){return $(t,jt)?t[jt]:{}},ut=function(t){return $(t,jt)}}var Ct,St={set:st,get:ct,has:ut,enforce:function(t){return ut(t)?ct(t):st(t,{})},getterFor:function(t){return function(e){var n;if(!x(e)||(n=ct(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}},Et=r((function(t){var e=St.get,n=St.enforce,i=String(String).split("String");(t.exports=function(t,e,o,r){var l,a=!!r&&!!r.unsafe,s=!!r&&!!r.enumerable,u=!!r&&!!r.noTargetGet;"function"==typeof o&&("string"!=typeof e||$(o,"name")||lt(o,"name",e),(l=n(o)).source||(l.source=i.join("string"==typeof e?e:""))),t!==c?(a?!u&&t[e]&&(s=!0):delete t[e],s?t[e]=o:lt(t,e,o)):s?t[e]=o:L(e,o)})(Function.prototype,"toString",(function(){return"function"==typeof this&&e(this).source||ht(this)}))})),At=Math.ceil,kt=Math.floor,Tt=function(t){return isNaN(t=+t)?0:(t>0?kt:At)(t)},Nt=Math.min,It=function(t){return t>0?Nt(Tt(t),9007199254740991):0},Ot=Math.max,Pt=Math.min,Lt=function(t,e){var n=Tt(t);return n<0?Ot(n+e,0):Pt(n,e)},qt=function(t){return function(e,n,i){var o,r=_(e),l=It(r.length),a=Lt(i,l);if(t&&n!=n){for(;l>a;)if((o=r[a++])!=o)return!0}else for(;l>a;a++)if((t||a in r)&&r[a]===n)return t||a||0;return!t&&-1}},Rt={includes:qt(!0),indexOf:qt(!1)},Mt=Rt.indexOf,Bt=function(t,e){var n,i=_(t),o=0,r=[];for(n in i)!$(vt,n)&&$(i,n)&&r.push(n);for(;e.length>o;)$(i,n=e[o++])&&(~Mt(r,n)||r.push(n));return r},Ht=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],$t=Ht.concat("length","prototype"),Dt={f:Object.getOwnPropertyNames||function(t){return Bt(t,$t)}},Ft={f:Object.getOwnPropertySymbols},zt=C("Reflect","ownKeys")||function(t){var e=Dt.f(it(t)),n=Ft.f;return n?e.concat(n(t)):e},Wt=function(t,e){for(var n=zt(e),i=rt.f,o=nt.f,r=0;r<n.length;r++){var l=n[r];$(t,l)||i(t,l,o(e,l))}},Vt=/#|\.prototype\./,Ut=function(t,e){var n=Yt[Gt(t)];return n==Xt||n!=Kt&&("function"==typeof e?u(e):!!e)},Gt=Ut.normalize=function(t){return String(t).replace(Vt,".").toLowerCase()},Yt=Ut.data={},Kt=Ut.NATIVE="N",Xt=Ut.POLYFILL="P",Jt=Ut,Qt=nt.f,Zt=function(t,e){var n,i,o,r,l,a=t.target,s=t.global,u=t.stat;if(n=s?c:u?c[a]||L(a,{}):(c[a]||{}).prototype)for(i in e){if(r=e[i],o=t.noTargetGet?(l=Qt(n,i))&&l.value:n[i],!Jt(s?i:a+(u?".":"#")+i,t.forced)&&void 0!==o){if(typeof r==typeof o)continue;Wt(r,o)}(t.sham||o&&o.sham)&<(r,"sham",!0),Et(n,i,r,t)}},te=function(t){if(P(t))throw TypeError("Cannot convert a Symbol value to a string");return String(t)},ee=function(){var t=it(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.dotAll&&(e+="s"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e},ne=function(t,e){return RegExp(t,e)},ie={UNSUPPORTED_Y:u((function(){var t=ne("a","y");return t.lastIndex=2,null!=t.exec("abcd")})),BROKEN_CARET:u((function(){var t=ne("^r","gy");return t.lastIndex=2,null!=t.exec("str")}))},oe=Object.keys||function(t){return Bt(t,Ht)},re=h?Object.defineProperties:function(t,e){it(t);for(var n,i=oe(e),o=i.length,r=0;o>r;)rt.f(t,n=i[r++],e[n]);return t},le=C("document","documentElement"),ae=gt("IE_PROTO"),se=function(){},ce=function(t){return"<script>"+t+"</"+"script>"},ue=function(t){t.write(ce("")),t.close();var e=t.parentWindow.Object;return t=null,e},he=function(){try{Ct=new ActiveXObject("htmlfile")}catch(t){}he=document.domain&&Ct?ue(Ct):function(){var t,e=Z("iframe");if(e.style)return e.style.display="none",le.appendChild(e),e.src=String("javascript:"),(t=e.contentWindow.document).open(),t.write(ce("document.F=Object")),t.close(),t.F}()||ue(Ct);for(var t=Ht.length;t--;)delete he.prototype[Ht[t]];return he()};vt[ae]=!0;var fe,pe,de=Object.create||function(t,e){var n;return null!==t?(se.prototype=it(t),n=new se,se.prototype=null,n[ae]=t):n=he(),void 0===e?n:re(n,e)},ge=u((function(){var t=RegExp(".","string".charAt(0));return!(t.dotAll&&t.exec("\n")&&"s"===t.flags)})),ve=u((function(){var t=RegExp("(?<a>b)","string".charAt(5));return"b"!==t.exec("b").groups.a||"bc"!=="b".replace(t,"$<a>c")})),me=St.get,be=RegExp.prototype.exec,ye=M("native-string-replace",String.prototype.replace),we=be,_e=(fe=/a/,pe=/b*/g,be.call(fe,"a"),be.call(pe,"a"),0!==fe.lastIndex||0!==pe.lastIndex),xe=ie.UNSUPPORTED_Y||ie.BROKEN_CARET,je=void 0!==/()??/.exec("")[1];(_e||je||xe||ge||ve)&&(we=function(t){var e,n,i,o,r,l,a,s=this,c=me(s),u=te(t),h=c.raw;if(h)return h.lastIndex=s.lastIndex,e=we.call(h,u),s.lastIndex=h.lastIndex,e;var f=c.groups,p=xe&&s.sticky,d=ee.call(s),g=s.source,v=0,m=u;if(p&&(-1===(d=d.replace("y","")).indexOf("g")&&(d+="g"),m=u.slice(s.lastIndex),s.lastIndex>0&&(!s.multiline||s.multiline&&"\n"!==u.charAt(s.lastIndex-1))&&(g="(?: "+g+")",m=" "+m,v++),n=new RegExp("^(?:"+g+")",d)),je&&(n=new RegExp("^"+g+"$(?!\\s)",d)),_e&&(i=s.lastIndex),o=be.call(p?n:s,m),p?o?(o.input=o.input.slice(v),o[0]=o[0].slice(v),o.index=s.lastIndex,s.lastIndex+=o[0].length):s.lastIndex=0:_e&&o&&(s.lastIndex=s.global?o.index+o[0].length:i),je&&o&&o.length>1&&ye.call(o[0],n,(function(){for(r=1;r<arguments.length-2;r++)void 0===arguments[r]&&(o[r]=void 0)})),o&&f)for(o.groups=l=de(null),r=0;r<f.length;r++)l[(a=f[r])[0]]=o[a[1]];return o});var Ce=we;Zt({target:"RegExp",proto:!0,forced:/./.exec!==Ce},{exec:Ce});var Se=G("species"),Ee=RegExp.prototype,Ae=function(t,e,n,i){var o=G(t),r=!u((function(){var e={};return e[o]=function(){return 7},7!=""[t](e)})),l=r&&!u((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[Se]=function(){return n},n.flags="",n[o]=/./[o]),n.exec=function(){return e=!0,null},n[o](""),!e}));if(!r||!l||n){var a=/./[o],s=e(o,""[t],(function(t,e,n,i,o){var l=e.exec;return l===Ce||l===Ee.exec?r&&!o?{done:!0,value:a.call(e,n,i)}:{done:!0,value:t.call(n,e,i)}:{done:!1}}));Et(String.prototype,t,s[0]),Et(Ee,o,s[1])}i&<(Ee[o],"sham",!0)},ke=function(t){return function(e,n){var i,o,r=te(w(e)),l=Tt(n),a=r.length;return l<0||l>=a?t?"":void 0:(i=r.charCodeAt(l))<55296||i>56319||l+1===a||(o=r.charCodeAt(l+1))<56320||o>57343?t?r.charAt(l):i:t?r.slice(l,l+2):o-56320+(i-55296<<10)+65536}},Te={codeAt:ke(!1),charAt:ke(!0)}.charAt,Ne=function(t,e,n){return e+(n?Te(t,e).length:1)},Ie=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==m(t))throw TypeError("RegExp#exec called on incompatible receiver");return Ce.call(t,e)};Ae("match",(function(t,e,n){return[function(e){var n=w(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,n):new RegExp(e)[t](te(n))},function(t){var i=it(this),o=te(t),r=n(e,i,o);if(r.done)return r.value;if(!i.global)return Ie(i,o);var l=i.unicode;i.lastIndex=0;for(var a,s=[],c=0;null!==(a=Ie(i,o));){var u=te(a[0]);s[c]=u,""===u&&(i.lastIndex=Ne(o,It(i.lastIndex),l)),c++}return 0===c?null:s}]}));var Oe=Array.isArray||function(t){return"Array"==m(t)},Pe=function(t,e,n){var i=X(e);i in t?rt.f(t,i,g(0,n)):t[i]=n},Le=G("species"),qe=function(t,e){return new(function(t){var e;return Oe(t)&&("function"!=typeof(e=t.constructor)||e!==Array&&!Oe(e.prototype)?x(e)&&null===(e=e[Le])&&(e=void 0):e=void 0),void 0===e?Array:e}(t))(0===e?0:e)},Re=G("species"),Me=function(t){return N>=51||!u((function(){var e=[];return(e.constructor={})[Re]=function(){return{foo:1}},1!==e[t](Boolean).foo}))},Be=G("isConcatSpreadable"),He=9007199254740991,$e="Maximum allowed index exceeded",De=N>=51||!u((function(){var t=[];return t[Be]=!1,t.concat()[0]!==t})),Fe=Me("concat"),ze=function(t){if(!x(t))return!1;var e=t[Be];return void 0!==e?!!e:Oe(t)};Zt({target:"Array",proto:!0,forced:!De||!Fe},{concat:function(t){var e,n,i,o,r,l=B(this),a=qe(l,0),s=0;for(e=-1,i=arguments.length;e<i;e++)if(ze(r=-1===e?l:arguments[e])){if(s+(o=It(r.length))>He)throw TypeError($e);for(n=0;n<o;n++,s++)n in r&&Pe(a,s,r[n])}else{if(s>=He)throw TypeError($e);Pe(a,s++,r)}return a.length=s,a}});var We={};We[G("toStringTag")]="z";var Ve="[object z]"===String(We),Ue=G("toStringTag"),Ge="Arguments"==m(function(){return arguments}()),Ye=Ve?m:function(t){var e,n,i;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),Ue))?n:Ge?m(e):"Object"==(i=m(e))&&"function"==typeof e.callee?"Arguments":i},Ke=Ve?{}.toString:function(){return"[object "+Ye(this)+"]"};Ve||Et(Object.prototype,"toString",Ke,{unsafe:!0});var Xe="toString",Je=RegExp.prototype,Qe=Je.toString,Ze=u((function(){return"/a/b"!=Qe.call({source:"a",flags:"b"})})),tn=Qe.name!=Xe;(Ze||tn)&&Et(RegExp.prototype,Xe,(function(){var t=it(this),e=te(t.source),n=t.flags;return"/"+e+"/"+te(void 0===n&&t instanceof RegExp&&!("flags"in Je)?ee.call(t):n)}),{unsafe:!0});var en=G("match"),nn=function(t){var e;return x(t)&&(void 0!==(e=t[en])?!!e:"RegExp"==m(t))},on=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t},rn=G("species"),ln=ie.UNSUPPORTED_Y,an=[].push,sn=Math.min,cn=4294967295;function un(t,e){if(t instanceof SVGElement){var i=t.getAttribute("class")||"";i.match(e)||t.setAttribute("class","".concat(i," ").concat(e))}else{if(void 0!==t.classList)n(e.split(" "),(function(e){t.classList.add(e)}));else t.className.match(e)||(t.className+=" ".concat(e))}}function hn(t,e){var n="";return t.currentStyle?n=t.currentStyle[e]:document.defaultView&&document.defaultView.getComputedStyle&&(n=document.defaultView.getComputedStyle(t,null).getPropertyValue(e)),n&&n.toLowerCase?n.toLowerCase():n}function fn(t){var e=t.element;if(this._options.scrollToElement){var n=function(t){var e=window.getComputedStyle(t),n="absolute"===e.position,i=/(auto|scroll)/;if("fixed"===e.position)return document.body;for(var o=t;o=o.parentElement;)if(e=window.getComputedStyle(o),(!n||"static"!==e.position)&&i.test(e.overflow+e.overflowY+e.overflowX))return o;return document.body}(e);n!==document.body&&(n.scrollTop=e.offsetTop-n.offsetTop)}}function pn(){if(void 0!==window.innerWidth)return{width:window.innerWidth,height:window.innerHeight};var t=document.documentElement;return{width:t.clientWidth,height:t.clientHeight}}function dn(t,e,n){var i,o=e.element;if("off"!==t&&(this._options.scrollToElement&&(i="tooltip"===t?n.getBoundingClientRect():o.getBoundingClientRect(),!function(t){var e=t.getBoundingClientRect();return e.top>=0&&e.left>=0&&e.bottom+80<=window.innerHeight&&e.right<=window.innerWidth}(o)))){var r=pn().height;i.bottom-(i.bottom-i.top)<0||o.clientHeight>r?window.scrollBy(0,i.top-(r/2-i.height/2)-this._options.scrollPadding):window.scrollBy(0,i.top-(r/2-i.height/2)+this._options.scrollPadding)}}function gn(t){t.setAttribute("role","button"),t.tabIndex=0}Ae("split",(function(t,e,n){var i;return i="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var i=te(w(this)),o=void 0===n?cn:n>>>0;if(0===o)return[];if(void 0===t)return[i];if(!nn(t))return e.call(i,t,o);for(var r,l,a,s=[],c=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),u=0,h=new RegExp(t.source,c+"g");(r=Ce.call(h,i))&&!((l=h.lastIndex)>u&&(s.push(i.slice(u,r.index)),r.length>1&&r.index<i.length&&an.apply(s,r.slice(1)),a=r[0].length,u=l,s.length>=o));)h.lastIndex===r.index&&h.lastIndex++;return u===i.length?!a&&h.test("")||s.push(""):s.push(i.slice(u)),s.length>o?s.slice(0,o):s}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var o=w(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,o,n):i.call(te(o),e,n)},function(t,o){var r=it(this),l=te(t),a=n(i,r,l,o,i!==e);if(a.done)return a.value;var s=function(t,e){var n,i=it(t).constructor;return void 0===i||null==(n=it(i)[rn])?e:on(n)}(r,RegExp),c=r.unicode,u=(r.ignoreCase?"i":"")+(r.multiline?"m":"")+(r.unicode?"u":"")+(ln?"g":"y"),h=new s(ln?"^(?:"+r.source+")":r,u),f=void 0===o?cn:o>>>0;if(0===f)return[];if(0===l.length)return null===Ie(h,l)?[l]:[];for(var p=0,d=0,g=[];d<l.length;){h.lastIndex=ln?0:d;var v,m=Ie(h,ln?l.slice(d):l);if(null===m||(v=sn(It(h.lastIndex+(ln?d:0)),l.length))===p)d=Ne(l,d,c);else{if(g.push(l.slice(p,d)),g.length===f)return g;for(var b=1;b<=m.length-1;b++)if(g.push(m[b]),g.length===f)return g;d=p=v}}return g.push(l.slice(p)),g}]}),!!u((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]})),ln);var vn=Object.assign,mn=Object.defineProperty,bn=!vn||u((function(){if(h&&1!==vn({b:1},vn(mn({},"a",{enumerable:!0,get:function(){mn(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol(),i="abcdefghijklmnopqrst";return t[n]=7,i.split("").forEach((function(t){e[t]=t})),7!=vn({},t)[n]||oe(vn({},e)).join("")!=i}))?function(t,e){for(var n=B(t),i=arguments.length,o=1,r=Ft.f,l=d.f;i>o;)for(var a,s=y(arguments[o++]),c=r?oe(s).concat(r(s)):oe(s),u=c.length,f=0;u>f;)a=c[f++],h&&!l.call(s,a)||(n[a]=s[a]);return n}:vn;function yn(t){var e=t.parentNode;return!(!e||"HTML"===e.nodeName)&&("fixed"===hn(t,"position")||yn(e))}function wn(t,e){var n=document.body,i=document.documentElement,o=window.pageYOffset||i.scrollTop||n.scrollTop,r=window.pageXOffset||i.scrollLeft||n.scrollLeft;e=e||n;var l=t.getBoundingClientRect(),a=e.getBoundingClientRect(),s=hn(e,"position"),c={width:l.width,height:l.height};return"body"!==e.tagName.toLowerCase()&&"relative"===s||"sticky"===s?Object.assign(c,{top:l.top-a.top,left:l.left-a.left}):yn(t)?Object.assign(c,{top:l.top,left:l.left}):Object.assign(c,{top:l.top+o,left:l.left+r})}Zt({target:"Object",stat:!0,forced:Object.assign!==bn},{assign:bn});var _n=Math.floor,xn="".replace,jn=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,Cn=/\$([$&'`]|\d{1,2})/g,Sn=function(t,e,n,i,o,r){var l=n+t.length,a=i.length,s=Cn;return void 0!==o&&(o=B(o),s=jn),xn.call(r,s,(function(r,s){var c;switch(s.charAt(0)){case"$":return"$";case"&":return t;case"`":return e.slice(0,n);case"'":return e.slice(l);case"<":c=o[s.slice(1,-1)];break;default:var u=+s;if(0===u)return r;if(u>a){var h=_n(u/10);return 0===h?r:h<=a?void 0===i[h-1]?s.charAt(1):i[h-1]+s.charAt(1):r}c=i[u-1]}return void 0===c?"":c}))},En=G("replace"),An=Math.max,kn=Math.min,Tn="$0"==="a".replace(/./,"$0"),Nn=!!/./[En]&&""===/./[En]("a","$0");function In(t,e){if(t instanceof SVGElement){var n=t.getAttribute("class")||"";t.setAttribute("class",n.replace(e,"").replace(/^\s+|\s+$/g,""))}else t.className=t.className.replace(e,"").replace(/^\s+|\s+$/g,"")}function On(t,e){var n="";if(t.style.cssText&&(n+=t.style.cssText),"string"==typeof e)n+=e;else for(var i in e)n+="".concat(i,":").concat(e[i],";");t.style.cssText=n}function Pn(t){if(t){if(!this._introItems[this._currentStep])return;var e=this._introItems[this._currentStep],n=wn(e.element,this._targetElement),i=this._options.helperElementPadding;yn(e.element)?un(t,"introjs-fixedTooltip"):In(t,"introjs-fixedTooltip"),"floating"===e.position&&(i=0),On(t,{width:"".concat(n.width+i,"px"),height:"".concat(n.height+i,"px"),top:"".concat(n.top-i/2,"px"),left:"".concat(n.left-i/2,"px")})}}Ae("replace",(function(t,e,n){var i=Nn?"$":"$0";return[function(t,n){var i=w(this),o=null==t?void 0:t[En];return void 0!==o?o.call(t,i,n):e.call(te(i),t,n)},function(t,o){var r=it(this),l=te(t);if("string"==typeof o&&-1===o.indexOf(i)&&-1===o.indexOf("$<")){var a=n(e,r,l,o);if(a.done)return a.value}var s="function"==typeof o;s||(o=te(o));var c=r.global;if(c){var u=r.unicode;r.lastIndex=0}for(var h=[];;){var f=Ie(r,l);if(null===f)break;if(h.push(f),!c)break;""===te(f[0])&&(r.lastIndex=Ne(l,It(r.lastIndex),u))}for(var p,d="",g=0,v=0;v<h.length;v++){f=h[v];for(var m=te(f[0]),b=An(kn(Tt(f.index),l.length),0),y=[],w=1;w<f.length;w++)y.push(void 0===(p=f[w])?p:String(p));var _=f.groups;if(s){var x=[m].concat(y,b,l);void 0!==_&&x.push(_);var j=te(o.apply(void 0,x))}else j=Sn(m,l,b,y,_,o);b>=g&&(d+=l.slice(g,b)+j,g=b+m.length)}return d+l.slice(g)}]}),!!u((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")}))||!Tn||Nn);var Ln=G("unscopables"),qn=Array.prototype;null==qn[Ln]&&rt.f(qn,Ln,{configurable:!0,value:de(null)});var Rn,Mn=Rt.includes;Zt({target:"Array",proto:!0},{includes:function(t){return Mn(this,t,arguments.length>1?arguments[1]:void 0)}}),Rn="includes",qn[Ln][Rn]=!0;var Bn=Me("slice"),Hn=G("species"),$n=[].slice,Dn=Math.max;Zt({target:"Array",proto:!0,forced:!Bn},{slice:function(t,e){var n,i,o,r=_(this),l=It(r.length),a=Lt(t,l),s=Lt(void 0===e?l:e,l);if(Oe(r)&&("function"!=typeof(n=r.constructor)||n!==Array&&!Oe(n.prototype)?x(n)&&null===(n=n[Hn])&&(n=void 0):n=void 0,n===Array||void 0===n))return $n.call(r,a,s);for(i=new(void 0===n?Array:n)(Dn(s-a,0)),o=0;a<s;a++,o++)a in r&&Pe(i,o,r[a]);return i.length=o,i}});var Fn=function(t){if(nn(t))throw TypeError("The method doesn't accept regular expressions");return t},zn=G("match");Zt({target:"String",proto:!0,forced:!function(t){var e=/./;try{"/./"[t](e)}catch(n){try{return e[zn]=!1,"/./"[t](e)}catch(t){}}return!1}("includes")},{includes:function(t){return!!~te(w(this)).indexOf(te(Fn(t)),arguments.length>1?arguments[1]:void 0)}});var Wn=function(t,e){var n=[][t];return!!n&&u((function(){n.call(null,e||function(){throw 1},1)}))},Vn=[].join,Un=y!=Object,Gn=Wn("join",",");Zt({target:"Array",proto:!0,forced:Un||!Gn},{join:function(t){return Vn.call(_(this),void 0===t?",":t)}});var Yn=[].push,Kn=function(t){var e=1==t,n=2==t,i=3==t,o=4==t,r=6==t,l=7==t,a=5==t||r;return function(s,c,u,h){for(var f,p,d=B(s),g=y(d),v=function(t,e,n){if(on(t),void 0===e)return t;switch(n){case 0:return function(){return t.call(e)};case 1:return function(n){return t.call(e,n)};case 2:return function(n,i){return t.call(e,n,i)};case 3:return function(n,i,o){return t.call(e,n,i,o)}}return function(){return t.apply(e,arguments)}}(c,u,3),m=It(g.length),b=0,w=h||qe,_=e?w(s,m):n||l?w(s,0):void 0;m>b;b++)if((a||b in g)&&(p=v(f=g[b],b,d),t))if(e)_[b]=p;else if(p)switch(t){case 3:return!0;case 5:return f;case 6:return b;case 2:Yn.call(_,f)}else switch(t){case 4:return!1;case 7:Yn.call(_,f)}return r?-1:i||o?o:_}},Xn={forEach:Kn(0),map:Kn(1),filter:Kn(2),some:Kn(3),every:Kn(4),find:Kn(5),findIndex:Kn(6),filterReject:Kn(7)}.filter;function Jn(t,e,n,i,o){return t.left+e+n.width>i.width?(o.style.left="".concat(i.width-n.width-t.left,"px"),!1):(o.style.left="".concat(e,"px"),!0)}function Qn(t,e,n,i){return t.left+t.width-e-n.width<0?(i.style.left="".concat(-t.left,"px"),!1):(i.style.right="".concat(e,"px"),!0)}Zt({target:"Array",proto:!0,forced:!Me("filter")},{filter:function(t){return Xn(this,t,arguments.length>1?arguments[1]:void 0)}});var Zn=Me("splice"),ti=Math.max,ei=Math.min,ni=9007199254740991,ii="Maximum allowed length exceeded";function oi(t,e){t.includes(e)&&t.splice(t.indexOf(e),1)}function ri(t,e,n){var i=this._options.positionPrecedence.slice(),o=pn(),r=wn(e).height+10,l=wn(e).width+20,a=t.getBoundingClientRect(),s="floating";a.bottom+r>o.height&&oi(i,"bottom"),a.top-r<0&&oi(i,"top"),a.right+l>o.width&&oi(i,"right"),a.left-l<0&&oi(i,"left");var c,u,h=-1!==(u=(c=n||"").indexOf("-"))?c.substr(u):"";return n&&(n=n.split("-")[0]),i.length&&(s=i.includes(n)?n:i[0]),["top","bottom"].includes(s)&&(s+=function(t,e,n,i){var o=n.width,r=e/2,l=Math.min(o,window.screen.width),a=["-left-aligned","-middle-aligned","-right-aligned"];return l-t<e&&oi(a,"-left-aligned"),(t<r||l-t<r)&&oi(a,"-middle-aligned"),t<e&&oi(a,"-right-aligned"),a.length?a.includes(i)?i:a[0]:"-middle-aligned"}(a.left,l,o,h)),s}function li(t,e,n,i){var o,r,l,a,s,c="";if(i=i||!1,e.style.top=null,e.style.right=null,e.style.bottom=null,e.style.left=null,e.style.marginLeft=null,e.style.marginTop=null,n.style.display="inherit",this._introItems[this._currentStep])switch(c="string"==typeof(o=this._introItems[this._currentStep]).tooltipClass?o.tooltipClass:this._options.tooltipClass,e.className=["introjs-tooltip",c].filter(Boolean).join(" "),e.setAttribute("role","dialog"),"floating"!==(s=this._introItems[this._currentStep].position)&&this._options.autoPosition&&(s=ri.call(this,t,e,s)),l=wn(t),r=wn(e),a=pn(),un(e,"introjs-".concat(s)),s){case"top-right-aligned":n.className="introjs-arrow bottom-right";var u=0;Qn(l,u,r,e),e.style.bottom="".concat(l.height+20,"px");break;case"top-middle-aligned":n.className="introjs-arrow bottom-middle";var h=l.width/2-r.width/2;i&&(h+=5),Qn(l,h,r,e)&&(e.style.right=null,Jn(l,h,r,a,e)),e.style.bottom="".concat(l.height+20,"px");break;case"top-left-aligned":case"top":n.className="introjs-arrow bottom",Jn(l,i?0:15,r,a,e),e.style.bottom="".concat(l.height+20,"px");break;case"right":e.style.left="".concat(l.width+20,"px"),l.top+r.height>a.height?(n.className="introjs-arrow left-bottom",e.style.top="-".concat(r.height-l.height-20,"px")):n.className="introjs-arrow left";break;case"left":i||!0!==this._options.showStepNumbers||(e.style.top="15px"),l.top+r.height>a.height?(e.style.top="-".concat(r.height-l.height-20,"px"),n.className="introjs-arrow right-bottom"):n.className="introjs-arrow right",e.style.right="".concat(l.width+20,"px");break;case"floating":n.style.display="none",e.style.left="50%",e.style.top="50%",e.style.marginLeft="-".concat(r.width/2,"px"),e.style.marginTop="-".concat(r.height/2,"px");break;case"bottom-right-aligned":n.className="introjs-arrow top-right",Qn(l,u=0,r,e),e.style.top="".concat(l.height+20,"px");break;case"bottom-middle-aligned":n.className="introjs-arrow top-middle",h=l.width/2-r.width/2,i&&(h+=5),Qn(l,h,r,e)&&(e.style.right=null,Jn(l,h,r,a,e)),e.style.top="".concat(l.height+20,"px");break;default:n.className="introjs-arrow top",Jn(l,0,r,a,e),e.style.top="".concat(l.height+20,"px")}}function ai(){n(document.querySelectorAll(".introjs-showElement"),(function(t){In(t,/introjs-[a-zA-Z]+/g)}))}function si(t,e){var n=document.createElement(t);e=e||{};var i=/^(?:role|data-|aria-)/;for(var o in e){var r=e[o];"style"===o?On(n,r):o.match(i)?n.setAttribute(o,r):n[o]=r}return n}function ci(t,e,n){if(n){var i=e.style.opacity||"1";On(e,{opacity:"0"}),window.setTimeout((function(){On(e,{opacity:i})}),10)}t.appendChild(e)}function ui(){return parseInt(this._currentStep+1,10)/this._introItems.length*100}function hi(){var t=document.querySelector(".introjs-disableInteraction");null===t&&(t=si("div",{className:"introjs-disableInteraction"}),this._targetElement.appendChild(t)),Pn.call(this,t)}function fi(t){var e=this,i=si("div",{className:"introjs-bullets"});!1===this._options.showBullets&&(i.style.display="none");var o=si("ul");o.setAttribute("role","tablist");var r=function(){e.goToStep(this.getAttribute("data-stepnumber"))};return n(this._introItems,(function(e,n){var i=e.step,l=si("li"),a=si("a");l.setAttribute("role","presentation"),a.setAttribute("role","tab"),a.onclick=r,n===t.step-1&&(a.className="active"),gn(a),a.innerHTML=" ",a.setAttribute("data-stepnumber",i),l.appendChild(a),o.appendChild(l)})),i.appendChild(o),i}function pi(t,e){if(this._options.showBullets){var n=document.querySelector(".introjs-bullets");n.parentNode.replaceChild(fi.call(this,e),n)}}function di(t,e){this._options.showBullets&&(t.querySelector(".introjs-bullets li > a.active").className="",t.querySelector('.introjs-bullets li > a[data-stepnumber="'.concat(e.step,'"]')).className="active")}function gi(){var t=si("div");t.className="introjs-progress",!1===this._options.showProgress&&(t.style.display="none");var e=si("div",{className:"introjs-progressbar"});return this._options.progressBarAdditionalClass&&(e.className+=" "+this._options.progressBarAdditionalClass),e.setAttribute("role","progress"),e.setAttribute("aria-valuemin",0),e.setAttribute("aria-valuemax",100),e.setAttribute("aria-valuenow",ui.call(this)),e.style.cssText="width:".concat(ui.call(this),"%;"),t.appendChild(e),t}function vi(t){t.querySelector(".introjs-progress .introjs-progressbar").style.cssText="width:".concat(ui.call(this),"%;"),t.querySelector(".introjs-progress .introjs-progressbar").setAttribute("aria-valuenow",ui.call(this))}function mi(t){var e=this;void 0!==this._introChangeCallback&&this._introChangeCallback.call(this,t.element);var n,i,o,r=this,l=document.querySelector(".introjs-helperLayer"),a=document.querySelector(".introjs-tooltipReferenceLayer"),s="introjs-helperLayer";if("string"==typeof t.highlightClass&&(s+=" ".concat(t.highlightClass)),"string"==typeof this._options.highlightClass&&(s+=" ".concat(this._options.highlightClass)),null!==l&&null!==a){var c=a.querySelector(".introjs-helperNumberLayer"),u=a.querySelector(".introjs-tooltiptext"),h=a.querySelector(".introjs-tooltip-title"),f=a.querySelector(".introjs-arrow"),p=a.querySelector(".introjs-tooltip");o=a.querySelector(".introjs-skipbutton"),i=a.querySelector(".introjs-prevbutton"),n=a.querySelector(".introjs-nextbutton"),l.className=s,p.style.opacity=0,p.style.display="none",fn.call(r,t),Pn.call(r,l),Pn.call(r,a),ai(),r._lastShowElementTimer&&window.clearTimeout(r._lastShowElementTimer),r._lastShowElementTimer=window.setTimeout((function(){null!==c&&(c.innerHTML="".concat(t.step," of ").concat(e._introItems.length)),u.innerHTML=t.intro,h.innerHTML=t.title,p.style.display="block",li.call(r,t.element,p,f),di.call(r,a,t),vi.call(r,a),p.style.opacity=1,(null!=n&&/introjs-donebutton/gi.test(n.className)||null!=n)&&n.focus(),dn.call(r,t.scrollTo,t,u)}),350)}else{var d=si("div",{className:s}),g=si("div",{className:"introjs-tooltipReferenceLayer"}),v=si("div",{className:"introjs-arrow"}),m=si("div",{className:"introjs-tooltip"}),b=si("div",{className:"introjs-tooltiptext"}),y=si("div",{className:"introjs-tooltip-header"}),w=si("h1",{className:"introjs-tooltip-title"}),_=si("div");On(d,{"box-shadow":"0 0 1px 2px rgba(33, 33, 33, 0.8), rgba(33, 33, 33, ".concat(r._options.overlayOpacity.toString(),") 0 0 0 5000px")}),fn.call(r,t),Pn.call(r,d),Pn.call(r,g),ci(this._targetElement,d,!0),ci(this._targetElement,g),b.innerHTML=t.intro,w.innerHTML=t.title,_.className="introjs-tooltipbuttons",!1===this._options.showButtons&&(_.style.display="none"),y.appendChild(w),m.appendChild(y),m.appendChild(b),m.appendChild(fi.call(this,t)),m.appendChild(gi.call(this));var x=si("div");!0===this._options.showStepNumbers&&(x.className="introjs-helperNumberLayer",x.innerHTML="".concat(t.step," of ").concat(this._introItems.length),m.appendChild(x)),m.appendChild(v),g.appendChild(m),(n=si("a")).onclick=function(){r._introItems.length-1!==r._currentStep?wi.call(r):/introjs-donebutton/gi.test(n.className)&&("function"==typeof r._introCompleteCallback&&r._introCompleteCallback.call(r),oo.call(r,r._targetElement))},gn(n),n.innerHTML=this._options.nextLabel,(i=si("a")).onclick=function(){0!==r._currentStep&&_i.call(r)},gn(i),i.innerHTML=this._options.prevLabel,gn(o=si("a",{className:"introjs-skipbutton"})),o.innerHTML=this._options.skipLabel,o.onclick=function(){r._introItems.length-1===r._currentStep&&"function"==typeof r._introCompleteCallback&&r._introCompleteCallback.call(r),"function"==typeof r._introSkipCallback&&r._introSkipCallback.call(r),oo.call(r,r._targetElement)},y.appendChild(o),this._introItems.length>1&&_.appendChild(i),_.appendChild(n),m.appendChild(_),li.call(r,t.element,m,v),dn.call(this,t.scrollTo,t,m)}var j=r._targetElement.querySelector(".introjs-disableInteraction");j&&j.parentNode.removeChild(j),t.disableInteraction&&hi.call(r),0===this._currentStep&&this._introItems.length>1?(null!=n&&(n.className="".concat(this._options.buttonClass," introjs-nextbutton"),n.innerHTML=this._options.nextLabel),!0===this._options.hidePrev?(null!=i&&(i.className="".concat(this._options.buttonClass," introjs-prevbutton introjs-hidden")),null!=n&&un(n,"introjs-fullbutton")):null!=i&&(i.className="".concat(this._options.buttonClass," introjs-prevbutton introjs-disabled"))):this._introItems.length-1===this._currentStep||1===this._introItems.length?(null!=i&&(i.className="".concat(this._options.buttonClass," introjs-prevbutton")),!0===this._options.hideNext?(null!=n&&(n.className="".concat(this._options.buttonClass," introjs-nextbutton introjs-hidden")),null!=i&&un(i,"introjs-fullbutton")):null!=n&&(!0===this._options.nextToDone?(n.innerHTML=this._options.doneLabel,un(n,"".concat(this._options.buttonClass," introjs-nextbutton introjs-donebutton"))):n.className="".concat(this._options.buttonClass," introjs-nextbutton introjs-disabled"))):(null!=i&&(i.className="".concat(this._options.buttonClass," introjs-prevbutton")),null!=n&&(n.className="".concat(this._options.buttonClass," introjs-nextbutton"),n.innerHTML=this._options.nextLabel)),null!=i&&i.setAttribute("role","button"),null!=n&&n.setAttribute("role","button"),null!=o&&o.setAttribute("role","button"),null!=n&&n.focus(),function(t){var e=t.element;un(e,"introjs-showElement");var n=hn(e,"position");"absolute"!==n&&"relative"!==n&&"sticky"!==n&&"fixed"!==n&&un(e,"introjs-relativePosition")}(t),void 0!==this._introAfterChangeCallback&&this._introAfterChangeCallback.call(this,t.element)}function bi(t){this._currentStep=t-2,void 0!==this._introItems&&wi.call(this)}function yi(t){this._currentStepNumber=t,void 0!==this._introItems&&wi.call(this)}function wi(){var t=this;this._direction="forward",void 0!==this._currentStepNumber&&n(this._introItems,(function(e,n){e.step===t._currentStepNumber&&(t._currentStep=n-1,t._currentStepNumber=void 0)})),void 0===this._currentStep?this._currentStep=0:++this._currentStep;var e=this._introItems[this._currentStep],i=!0;return void 0!==this._introBeforeChangeCallback&&(i=this._introBeforeChangeCallback.call(this,e&&e.element)),!1===i?(--this._currentStep,!1):this._introItems.length<=this._currentStep?("function"==typeof this._introCompleteCallback&&this._introCompleteCallback.call(this),void oo.call(this,this._targetElement)):void mi.call(this,e)}function _i(){if(this._direction="backward",0===this._currentStep)return!1;--this._currentStep;var t=this._introItems[this._currentStep],e=!0;if(void 0!==this._introBeforeChangeCallback&&(e=this._introBeforeChangeCallback.call(this,t&&t.element)),!1===e)return++this._currentStep,!1;mi.call(this,t)}function xi(){return this._currentStep}function ji(t){var e=void 0===t.code?t.which:t.code;if(null===e&&(e=null===t.charCode?t.keyCode:t.charCode),"Escape"!==e&&27!==e||!0!==this._options.exitOnEsc){if("ArrowLeft"===e||37===e)_i.call(this);else if("ArrowRight"===e||39===e)wi.call(this);else if("Enter"===e||"NumpadEnter"===e||13===e){var n=t.target||t.srcElement;n&&n.className.match("introjs-prevbutton")?_i.call(this):n&&n.className.match("introjs-skipbutton")?(this._introItems.length-1===this._currentStep&&"function"==typeof this._introCompleteCallback&&this._introCompleteCallback.call(this),oo.call(this,this._targetElement)):n&&n.getAttribute("data-stepnumber")?n.click():wi.call(this),t.preventDefault?t.preventDefault():t.returnValue=!1}}else oo.call(this,this._targetElement)}function Ci(e){if(null===e||"object"!==t(e)||void 0!==e.nodeType)return e;var n={};for(var i in e)void 0!==window.jQuery&&e[i]instanceof window.jQuery?n[i]=e[i]:n[i]=Ci(e[i]);return n}function Si(t){var e=document.querySelector(".introjs-hints");return e?e.querySelectorAll(t):[]}function Ei(t){var e=Si('.introjs-hint[data-step="'.concat(t,'"]'))[0];qi.call(this),e&&un(e,"introjs-hidehint"),void 0!==this._hintCloseCallback&&this._hintCloseCallback.call(this,t)}function Ai(){var t=this;n(Si(".introjs-hint"),(function(e){Ei.call(t,e.getAttribute("data-step"))}))}function ki(){var t=this,e=Si(".introjs-hint");e&&e.length?n(e,(function(e){Ti.call(t,e.getAttribute("data-step"))})):Ri.call(this,this._targetElement)}function Ti(t){var e=Si('.introjs-hint[data-step="'.concat(t,'"]'))[0];e&&In(e,/introjs-hidehint/g)}function Ni(){var t=this;n(Si(".introjs-hint"),(function(e){Ii.call(t,e.getAttribute("data-step"))}))}function Ii(t){var e=Si('.introjs-hint[data-step="'.concat(t,'"]'))[0];e&&e.parentNode.removeChild(e)}function Oi(){var t=this,e=this,i=document.querySelector(".introjs-hints");null===i&&(i=si("div",{className:"introjs-hints"}));n(this._introItems,(function(n,o){if(!document.querySelector('.introjs-hint[data-step="'.concat(o,'"]'))){var r=si("a",{className:"introjs-hint"});gn(r),r.onclick=function(t){return function(n){var i=n||window.event;i.stopPropagation&&i.stopPropagation(),null!==i.cancelBubble&&(i.cancelBubble=!0),Li.call(e,t)}}(o),n.hintAnimation||un(r,"introjs-hint-no-anim"),yn(n.element)&&un(r,"introjs-fixedhint");var l=si("div",{className:"introjs-hint-dot"}),a=si("div",{className:"introjs-hint-pulse"});r.appendChild(l),r.appendChild(a),r.setAttribute("data-step",o),n.targetElement=n.element,n.element=r,Pi.call(t,n.hintPosition,r,n.targetElement),i.appendChild(r)}})),document.body.appendChild(i),void 0!==this._hintsAddedCallback&&this._hintsAddedCallback.call(this)}function Pi(t,e,n){var i=e.style,o=wn.call(this,n),r=20,l=20;switch(t){default:case"top-left":i.left="".concat(o.left,"px"),i.top="".concat(o.top,"px");break;case"top-right":i.left="".concat(o.left+o.width-r,"px"),i.top="".concat(o.top,"px");break;case"bottom-left":i.left="".concat(o.left,"px"),i.top="".concat(o.top+o.height-l,"px");break;case"bottom-right":i.left="".concat(o.left+o.width-r,"px"),i.top="".concat(o.top+o.height-l,"px");break;case"middle-left":i.left="".concat(o.left,"px"),i.top="".concat(o.top+(o.height-l)/2,"px");break;case"middle-right":i.left="".concat(o.left+o.width-r,"px"),i.top="".concat(o.top+(o.height-l)/2,"px");break;case"middle-middle":i.left="".concat(o.left+(o.width-r)/2,"px"),i.top="".concat(o.top+(o.height-l)/2,"px");break;case"bottom-middle":i.left="".concat(o.left+(o.width-r)/2,"px"),i.top="".concat(o.top+o.height-l,"px");break;case"top-middle":i.left="".concat(o.left+(o.width-r)/2,"px"),i.top="".concat(o.top,"px")}}function Li(t){var e=document.querySelector('.introjs-hint[data-step="'.concat(t,'"]')),n=this._introItems[t];void 0!==this._hintClickCallback&&this._hintClickCallback.call(this,e,n,t);var i=qi.call(this);if(parseInt(i,10)!==t){var o=si("div",{className:"introjs-tooltip"}),r=si("div"),l=si("div"),a=si("div");o.onclick=function(t){t.stopPropagation?t.stopPropagation():t.cancelBubble=!0},r.className="introjs-tooltiptext";var s=si("p");s.innerHTML=n.hint;var c=si("a");c.className=this._options.buttonClass,c.setAttribute("role","button"),c.innerHTML=this._options.hintButtonLabel,c.onclick=Ei.bind(this,t),r.appendChild(s),r.appendChild(c),l.className="introjs-arrow",o.appendChild(l),o.appendChild(r),this._currentStep=e.getAttribute("data-step"),a.className="introjs-tooltipReferenceLayer introjs-hintReference",a.setAttribute("data-step",e.getAttribute("data-step")),Pn.call(this,a),a.appendChild(o),document.body.appendChild(a),li.call(this,e,o,l,!0)}}function qi(){var t=document.querySelector(".introjs-hintReference");if(t){var e=t.getAttribute("data-step");return t.parentNode.removeChild(t),e}}function Ri(t){var e=this;if(this._introItems=[],this._options.hints)n(this._options.hints,(function(t){var n=Ci(t);"string"==typeof n.element&&(n.element=document.querySelector(n.element)),n.hintPosition=n.hintPosition||e._options.hintPosition,n.hintAnimation=n.hintAnimation||e._options.hintAnimation,null!==n.element&&e._introItems.push(n)}));else{var o=t.querySelectorAll("*[data-hint]");if(!o||!o.length)return!1;n(o,(function(t){var n=t.getAttribute("data-hintanimation");n=n?"true"===n:e._options.hintAnimation,e._introItems.push({element:t,hint:t.getAttribute("data-hint"),hintPosition:t.getAttribute("data-hintposition")||e._options.hintPosition,hintAnimation:n,tooltipClass:t.getAttribute("data-tooltipclass"),position:t.getAttribute("data-position")||e._options.tooltipPosition})}))}Oi.call(this),i.on(document,"click",qi,this,!1),i.on(window,"resize",Mi,this,!0)}function Mi(){var t=this;n(this._introItems,(function(e){var n=e.targetElement,i=e.hintPosition,o=e.element;void 0!==n&&Pi.call(t,i,o,n)}))}Zt({target:"Array",proto:!0,forced:!Zn},{splice:function(t,e){var n,i,o,r,l,a,s=B(this),c=It(s.length),u=Lt(t,c),h=arguments.length;if(0===h?n=i=0:1===h?(n=0,i=c-u):(n=h-2,i=ei(ti(Tt(e),0),c-u)),c+n-i>ni)throw TypeError(ii);for(o=qe(s,i),r=0;r<i;r++)(l=u+r)in s&&Pe(o,r,s[l]);if(o.length=i,n<i){for(r=u;r<c-i;r++)a=r+n,(l=r+i)in s?s[a]=s[l]:delete s[a];for(r=c;r>c-i+n;r--)delete s[r-1]}else if(n>i)for(r=c-i;r>u;r--)a=r+n-1,(l=r+i-1)in s?s[a]=s[l]:delete s[a];for(r=0;r<n;r++)s[r+u]=arguments[r+2];return s.length=c-i+n,o}});var Bi=Math.floor,Hi=function(t,e){var n=t.length,i=Bi(n/2);return n<8?$i(t,e):Di(Hi(t.slice(0,i),e),Hi(t.slice(i),e),e)},$i=function(t,e){for(var n,i,o=t.length,r=1;r<o;){for(i=r,n=t[r];i&&e(t[i-1],n)>0;)t[i]=t[--i];i!==r++&&(t[i]=n)}return t},Di=function(t,e,n){for(var i=t.length,o=e.length,r=0,l=0,a=[];r<i||l<o;)r<i&&l<o?a.push(n(t[r],e[l])<=0?t[r++]:e[l++]):a.push(r<i?t[r++]:e[l++]);return a},Fi=Hi,zi=S.match(/firefox\/(\d+)/i),Wi=!!zi&&+zi[1],Vi=/MSIE|Trident/.test(S),Ui=S.match(/AppleWebKit\/(\d+)\./),Gi=!!Ui&&+Ui[1],Yi=[],Ki=Yi.sort,Xi=u((function(){Yi.sort(void 0)})),Ji=u((function(){Yi.sort(null)})),Qi=Wn("sort"),Zi=!u((function(){if(N)return N<70;if(!(Wi&&Wi>3)){if(Vi)return!0;if(Gi)return Gi<603;var t,e,n,i,o="";for(t=65;t<76;t++){switch(e=String.fromCharCode(t),t){case 66:case 69:case 70:case 72:n=3;break;case 68:case 71:n=4;break;default:n=2}for(i=0;i<47;i++)Yi.push({k:e+i,v:n})}for(Yi.sort((function(t,e){return e.v-t.v})),i=0;i<Yi.length;i++)e=Yi[i].k.charAt(0),o.charAt(o.length-1)!==e&&(o+=e);return"DGBEFHACIJK"!==o}}));function to(t){var e=this,i=t.querySelectorAll("*[data-intro]"),o=[];if(this._options.steps)n(this._options.steps,(function(t){var n=Ci(t);if(n.step=o.length+1,n.title=n.title||"","string"==typeof n.element&&(n.element=document.querySelector(n.element)),void 0===n.element||null===n.element){var i=document.querySelector(".introjsFloatingElement");null===i&&(i=si("div",{className:"introjsFloatingElement"}),document.body.appendChild(i)),n.element=i,n.position="floating"}n.position=n.position||e._options.tooltipPosition,n.scrollTo=n.scrollTo||e._options.scrollTo,void 0===n.disableInteraction&&(n.disableInteraction=e._options.disableInteraction),null!==n.element&&o.push(n)}));else{var r;if(i.length<1)return[];n(i,(function(t){if((!e._options.group||t.getAttribute("data-intro-group")===e._options.group)&&"none"!==t.style.display){var n=parseInt(t.getAttribute("data-step"),10);r=t.hasAttribute("data-disable-interaction")?!!t.getAttribute("data-disable-interaction"):e._options.disableInteraction,n>0&&(o[n-1]={element:t,title:t.getAttribute("data-title")||"",intro:t.getAttribute("data-intro"),step:parseInt(t.getAttribute("data-step"),10),tooltipClass:t.getAttribute("data-tooltipclass"),highlightClass:t.getAttribute("data-highlightclass"),position:t.getAttribute("data-position")||e._options.tooltipPosition,scrollTo:t.getAttribute("data-scrollto")||e._options.scrollTo,disableInteraction:r})}}));var l=0;n(i,(function(t){if((!e._options.group||t.getAttribute("data-intro-group")===e._options.group)&&null===t.getAttribute("data-step")){for(;void 0!==o[l];)l++;r=t.hasAttribute("data-disable-interaction")?!!t.getAttribute("data-disable-interaction"):e._options.disableInteraction,o[l]={element:t,title:t.getAttribute("data-title")||"",intro:t.getAttribute("data-intro"),step:l+1,tooltipClass:t.getAttribute("data-tooltipclass"),highlightClass:t.getAttribute("data-highlightclass"),position:t.getAttribute("data-position")||e._options.tooltipPosition,scrollTo:t.getAttribute("data-scrollto")||e._options.scrollTo,disableInteraction:r}}}))}for(var a=[],s=0;s<o.length;s++)o[s]&&a.push(o[s]);return(o=a).sort((function(t,e){return t.step-e.step})),o}function eo(t){var e=document.querySelector(".introjs-tooltipReferenceLayer"),n=document.querySelector(".introjs-helperLayer"),i=document.querySelector(".introjs-disableInteraction");if(Pn.call(this,n),Pn.call(this,e),Pn.call(this,i),t&&(this._introItems=to.call(this,this._targetElement),pi.call(this,e,this._introItems[this._currentStep]),vi.call(this,e)),void 0!==this._currentStep&&null!==this._currentStep){var o=document.querySelector(".introjs-arrow"),r=document.querySelector(".introjs-tooltip");li.call(this,this._introItems[this._currentStep].element,r,o)}return Mi.call(this),this}function no(){eo.call(this)}function io(t,e){if(t&&t.parentElement){var n=t.parentElement;e?(On(t,{opacity:"0"}),window.setTimeout((function(){try{n.removeChild(t)}catch(t){}}),500)):n.removeChild(t)}}function oo(t,e){var o=!0;if(void 0!==this._introBeforeExitCallback&&(o=this._introBeforeExitCallback.call(this)),e||!1!==o){var r=t.querySelectorAll(".introjs-overlay");r&&r.length&&n(r,(function(t){return io(t)})),io(t.querySelector(".introjs-helperLayer"),!0),io(t.querySelector(".introjs-tooltipReferenceLayer")),io(t.querySelector(".introjs-disableInteraction")),io(document.querySelector(".introjsFloatingElement")),ai(),i.off(window,"keydown",ji,this,!0),i.off(window,"resize",no,this,!0),void 0!==this._introExitCallback&&this._introExitCallback.call(this),this._currentStep=void 0}}function ro(t){var e=this,n=si("div",{className:"introjs-overlay"});return On(n,{top:0,bottom:0,left:0,right:0,position:"fixed"}),t.appendChild(n),!0===this._options.exitOnOverlayClick&&(On(n,{cursor:"pointer"}),n.onclick=function(){oo.call(e,t)}),!0}function lo(t){var e=to.call(this,t);return 0===e.length||(this._introItems=e,ro.call(this,t)&&(wi.call(this),this._options.keyboardNavigation&&i.on(window,"keydown",ji,this,!0),i.on(window,"resize",no,this,!0))),!1}Zt({target:"Array",proto:!0,forced:Xi||!Ji||!Qi||!Zi},{sort:function(t){void 0!==t&&on(t);var e=B(this);if(Zi)return void 0===t?Ki.call(e):Ki.call(e,t);var n,i,o=[],r=It(e.length);for(i=0;i<r;i++)i in e&&o.push(e[i]);for(n=(o=Fi(o,function(t){return function(e,n){return void 0===n?-1:void 0===e?1:void 0!==t?+t(e,n)||0:te(e)>te(n)?1:-1}}(t))).length,i=0;i<n;)e[i]=o[i++];for(;i<r;)delete e[i++];return e}});function ao(t){this._targetElement=t,this._introItems=[],this._options={nextLabel:"Next",prevLabel:"Back",skipLabel:"×",doneLabel:"Done",hidePrev:!1,hideNext:!1,nextToDone:!0,tooltipPosition:"bottom",tooltipClass:"",group:"",highlightClass:"",exitOnEsc:!0,exitOnOverlayClick:!0,showStepNumbers:!1,keyboardNavigation:!0,showButtons:!0,showBullets:!0,showProgress:!1,scrollToElement:!0,scrollTo:"element",scrollPadding:30,overlayOpacity:.5,autoPosition:!0,positionPrecedence:["bottom","top","right","left"],disableInteraction:!1,helperElementPadding:10,hintPosition:"top-middle",hintButtonLabel:"Got it",hintAnimation:!0,buttonClass:"introjs-button",progressBarAdditionalClass:!1}}var so=function n(i){var o;if("object"===t(i))o=new ao(i);else if("string"==typeof i){var r=document.querySelector(i);if(!r)throw new Error("There is no element with given selector.");o=new ao(r)}else o=new ao(document.body);return n.instances[e(o,"introjs-instance")]=o,o};return so.version="4.2.2",so.instances={},so.fn=ao.prototype={clone:function(){return new ao(this)},setOption:function(t,e){return this._options[t]=e,this},setOptions:function(t){return this._options=function(t,e){var n,i={};for(n in t)i[n]=t[n];for(n in e)i[n]=e[n];return i}(this._options,t),this},start:function(){return lo.call(this,this._targetElement),this},goToStep:function(t){return bi.call(this,t),this},addStep:function(t){return this._options.steps||(this._options.steps=[]),this._options.steps.push(t),this},addSteps:function(t){if(t.length){for(var e=0;e<t.length;e++)this.addStep(t[e]);return this}},goToStepNumber:function(t){return yi.call(this,t),this},nextStep:function(){return wi.call(this),this},previousStep:function(){return _i.call(this),this},currentStep:function(){return xi.call(this)},exit:function(t){return oo.call(this,this._targetElement,t),this},refresh:function(t){return eo.call(this,t),this},onbeforechange:function(t){if("function"!=typeof t)throw new Error("Provided callback for onbeforechange was not a function");return this._introBeforeChangeCallback=t,this},onchange:function(t){if("function"!=typeof t)throw new Error("Provided callback for onchange was not a function.");return this._introChangeCallback=t,this},onafterchange:function(t){if("function"!=typeof t)throw new Error("Provided callback for onafterchange was not a function");return this._introAfterChangeCallback=t,this},oncomplete:function(t){if("function"!=typeof t)throw new Error("Provided callback for oncomplete was not a function.");return this._introCompleteCallback=t,this},onhintsadded:function(t){if("function"!=typeof t)throw new Error("Provided callback for onhintsadded was not a function.");return this._hintsAddedCallback=t,this},onhintclick:function(t){if("function"!=typeof t)throw new Error("Provided callback for onhintclick was not a function.");return this._hintClickCallback=t,this},onhintclose:function(t){if("function"!=typeof t)throw new Error("Provided callback for onhintclose was not a function.");return this._hintCloseCallback=t,this},onexit:function(t){if("function"!=typeof t)throw new Error("Provided callback for onexit was not a function.");return this._introExitCallback=t,this},onskip:function(t){if("function"!=typeof t)throw new Error("Provided callback for onskip was not a function.");return this._introSkipCallback=t,this},onbeforeexit:function(t){if("function"!=typeof t)throw new Error("Provided callback for onbeforeexit was not a function.");return this._introBeforeExitCallback=t,this},addHints:function(){return Ri.call(this,this._targetElement),this},hideHint:function(t){return Ei.call(this,t),this},hideHints:function(){return Ai.call(this),this},showHint:function(t){return Ti.call(this,t),this},showHints:function(){return ki.call(this),this},removeHints:function(){return Ni.call(this),this},removeHint:function(t){return Ii().call(this,t),this},showHintDialog:function(t){return Li.call(this,t),this}},so}));
|
1 |
/*!
|
2 |
+
* Intro.js v5.0.0
|
3 |
* https://introjs.com
|
4 |
*
|
5 |
+
* Copyright (C) 2012-2022 Afshin Mehrabani (@afshinmeh).
|
6 |
+
* https://introjs.com
|
7 |
*
|
8 |
+
* Date: Sun, 06 Feb 2022 13:57:52 GMT
|
9 |
*/
|
10 |
+
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).introJs=e()}(this,(function(){"use strict";function t(e){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},t(e)}var e=function(){var t={};return function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"introjs-stamp";return t[n]=t[n]||0,void 0===e[n]&&(e[n]=t[n]++),e[n]}}();function n(t,e,n){if(t)for(var i=0,o=t.length;i<o;i++)e(t[i],i);"function"==typeof n&&n()}var i=new function(){var t="introjs_event";this._id=function(t,n,i,o){return n+e(i)+(o?"_".concat(e(o)):"")},this.on=function(e,n,i,o,r){var a=this._id.apply(this,arguments),l=function(t){return i.call(o||e,t||window.event)};"addEventListener"in e?e.addEventListener(n,l,r):"attachEvent"in e&&e.attachEvent("on".concat(n),l),e[t]=e[t]||{},e[t][a]=l},this.off=function(e,n,i,o,r){var a=this._id.apply(this,arguments),l=e[t]&&e[t][a];l&&("removeEventListener"in e?e.removeEventListener(n,l,r):"detachEvent"in e&&e.detachEvent("on".concat(n),l),e[t][a]=null)}},o="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function r(t,e){return t(e={exports:{}},e.exports),e.exports}var a,l,s=function(t){return t&&t.Math==Math&&t},c=s("object"==typeof globalThis&&globalThis)||s("object"==typeof window&&window)||s("object"==typeof self&&self)||s("object"==typeof o&&o)||function(){return this}()||Function("return this")(),u=function(t){try{return!!t()}catch(t){return!0}},h=!u((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),f=!u((function(){var t=function(){}.bind();return"function"!=typeof t||t.hasOwnProperty("prototype")})),p=Function.prototype.call,d=f?p.bind(p):function(){return p.apply(p,arguments)},g={}.propertyIsEnumerable,v=Object.getOwnPropertyDescriptor,b={f:v&&!g.call({1:2},1)?function(t){var e=v(this,t);return!!e&&e.enumerable}:g},m=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}},y=Function.prototype,w=y.bind,_=y.call,x=f&&w.bind(_,_),S=f?function(t){return t&&x(t)}:function(t){return t&&function(){return _.apply(t,arguments)}},j=S({}.toString),C=S("".slice),k=function(t){return C(j(t),8,-1)},E=c.Object,A=S("".split),I=u((function(){return!E("z").propertyIsEnumerable(0)}))?function(t){return"String"==k(t)?A(t,""):E(t)}:E,T=c.TypeError,N=function(t){if(null==t)throw T("Can't call method on "+t);return t},O=function(t){return I(N(t))},P=function(t){return"function"==typeof t},L=function(t){return"object"==typeof t?null!==t:P(t)},R=function(t){return P(t)?t:void 0},q=function(t,e){return arguments.length<2?R(c[t]):c[t]&&c[t][e]},B=S({}.isPrototypeOf),M=q("navigator","userAgent")||"",H=c.process,F=c.Deno,$=H&&H.versions||F&&F.version,D=$&&$.v8;D&&(l=(a=D.split("."))[0]>0&&a[0]<4?1:+(a[0]+a[1])),!l&&M&&(!(a=M.match(/Edge\/(\d+)/))||a[1]>=74)&&(a=M.match(/Chrome\/(\d+)/))&&(l=+a[1]);var z=l,G=!!Object.getOwnPropertySymbols&&!u((function(){var t=Symbol();return!String(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&z&&z<41})),W=G&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,V=c.Object,U=W?function(t){return"symbol"==typeof t}:function(t){var e=q("Symbol");return P(e)&&B(e.prototype,V(t))},K=c.String,Y=function(t){try{return K(t)}catch(t){return"Object"}},X=c.TypeError,J=function(t){if(P(t))return t;throw X(Y(t)+" is not a function")},Q=function(t,e){var n=t[e];return null==n?void 0:J(n)},Z=c.TypeError,tt=Object.defineProperty,et=function(t,e){try{tt(c,t,{value:e,configurable:!0,writable:!0})}catch(n){c[t]=e}return e},nt="__core-js_shared__",it=c[nt]||et(nt,{}),ot=r((function(t){(t.exports=function(t,e){return it[t]||(it[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.21.0",mode:"global",copyright:"© 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.21.0/LICENSE",source:"https://github.com/zloirock/core-js"})})),rt=c.Object,at=function(t){return rt(N(t))},lt=S({}.hasOwnProperty),st=Object.hasOwn||function(t,e){return lt(at(t),e)},ct=0,ut=Math.random(),ht=S(1..toString),ft=function(t){return"Symbol("+(void 0===t?"":t)+")_"+ht(++ct+ut,36)},pt=ot("wks"),dt=c.Symbol,gt=dt&&dt.for,vt=W?dt:dt&&dt.withoutSetter||ft,bt=function(t){if(!st(pt,t)||!G&&"string"!=typeof pt[t]){var e="Symbol."+t;G&&st(dt,t)?pt[t]=dt[t]:pt[t]=W&>?gt(e):vt(e)}return pt[t]},mt=c.TypeError,yt=bt("toPrimitive"),wt=function(t,e){if(!L(t)||U(t))return t;var n,i=Q(t,yt);if(i){if(void 0===e&&(e="default"),n=d(i,t,e),!L(n)||U(n))return n;throw mt("Can't convert object to primitive value")}return void 0===e&&(e="number"),function(t,e){var n,i;if("string"===e&&P(n=t.toString)&&!L(i=d(n,t)))return i;if(P(n=t.valueOf)&&!L(i=d(n,t)))return i;if("string"!==e&&P(n=t.toString)&&!L(i=d(n,t)))return i;throw Z("Can't convert object to primitive value")}(t,e)},_t=function(t){var e=wt(t,"string");return U(e)?e:e+""},xt=c.document,St=L(xt)&&L(xt.createElement),jt=function(t){return St?xt.createElement(t):{}},Ct=!h&&!u((function(){return 7!=Object.defineProperty(jt("div"),"a",{get:function(){return 7}}).a})),kt=Object.getOwnPropertyDescriptor,Et={f:h?kt:function(t,e){if(t=O(t),e=_t(e),Ct)try{return kt(t,e)}catch(t){}if(st(t,e))return m(!d(b.f,t,e),t[e])}},At=h&&u((function(){return 42!=Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype})),It=c.String,Tt=c.TypeError,Nt=function(t){if(L(t))return t;throw Tt(It(t)+" is not an object")},Ot=c.TypeError,Pt=Object.defineProperty,Lt=Object.getOwnPropertyDescriptor,Rt="enumerable",qt="configurable",Bt="writable",Mt={f:h?At?function(t,e,n){if(Nt(t),e=_t(e),Nt(n),"function"==typeof t&&"prototype"===e&&"value"in n&&Bt in n&&!n.writable){var i=Lt(t,e);i&&i.writable&&(t[e]=n.value,n={configurable:qt in n?n.configurable:i.configurable,enumerable:Rt in n?n.enumerable:i.enumerable,writable:!1})}return Pt(t,e,n)}:Pt:function(t,e,n){if(Nt(t),e=_t(e),Nt(n),Ct)try{return Pt(t,e,n)}catch(t){}if("get"in n||"set"in n)throw Ot("Accessors not supported");return"value"in n&&(t[e]=n.value),t}},Ht=h?function(t,e,n){return Mt.f(t,e,m(1,n))}:function(t,e,n){return t[e]=n,t},Ft=S(Function.toString);P(it.inspectSource)||(it.inspectSource=function(t){return Ft(t)});var $t,Dt,zt,Gt=it.inspectSource,Wt=c.WeakMap,Vt=P(Wt)&&/native code/.test(Gt(Wt)),Ut=ot("keys"),Kt=function(t){return Ut[t]||(Ut[t]=ft(t))},Yt={},Xt="Object already initialized",Jt=c.TypeError,Qt=c.WeakMap;if(Vt||it.state){var Zt=it.state||(it.state=new Qt),te=S(Zt.get),ee=S(Zt.has),ne=S(Zt.set);$t=function(t,e){if(ee(Zt,t))throw new Jt(Xt);return e.facade=t,ne(Zt,t,e),e},Dt=function(t){return te(Zt,t)||{}},zt=function(t){return ee(Zt,t)}}else{var ie=Kt("state");Yt[ie]=!0,$t=function(t,e){if(st(t,ie))throw new Jt(Xt);return e.facade=t,Ht(t,ie,e),e},Dt=function(t){return st(t,ie)?t[ie]:{}},zt=function(t){return st(t,ie)}}var oe={set:$t,get:Dt,has:zt,enforce:function(t){return zt(t)?Dt(t):$t(t,{})},getterFor:function(t){return function(e){var n;if(!L(e)||(n=Dt(e)).type!==t)throw Jt("Incompatible receiver, "+t+" required");return n}}},re=Function.prototype,ae=h&&Object.getOwnPropertyDescriptor,le=st(re,"name"),se={EXISTS:le,PROPER:le&&"something"===function(){}.name,CONFIGURABLE:le&&(!h||h&&ae(re,"name").configurable)},ce=r((function(t){var e=se.CONFIGURABLE,n=oe.get,i=oe.enforce,o=String(String).split("String");(t.exports=function(t,n,r,a){var l,s=!!a&&!!a.unsafe,u=!!a&&!!a.enumerable,h=!!a&&!!a.noTargetGet,f=a&&void 0!==a.name?a.name:n;P(r)&&("Symbol("===String(f).slice(0,7)&&(f="["+String(f).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),(!st(r,"name")||e&&r.name!==f)&&Ht(r,"name",f),(l=i(r)).source||(l.source=o.join("string"==typeof f?f:""))),t!==c?(s?!h&&t[n]&&(u=!0):delete t[n],u?t[n]=r:Ht(t,n,r)):u?t[n]=r:et(n,r)})(Function.prototype,"toString",(function(){return P(this)&&n(this).source||Gt(this)}))})),ue=Math.ceil,he=Math.floor,fe=function(t){var e=+t;return e!=e||0===e?0:(e>0?he:ue)(e)},pe=Math.max,de=Math.min,ge=function(t,e){var n=fe(t);return n<0?pe(n+e,0):de(n,e)},ve=Math.min,be=function(t){return t>0?ve(fe(t),9007199254740991):0},me=function(t){return be(t.length)},ye=function(t){return function(e,n,i){var o,r=O(e),a=me(r),l=ge(i,a);if(t&&n!=n){for(;a>l;)if((o=r[l++])!=o)return!0}else for(;a>l;l++)if((t||l in r)&&r[l]===n)return t||l||0;return!t&&-1}},we={includes:ye(!0),indexOf:ye(!1)},_e=we.indexOf,xe=S([].push),Se=function(t,e){var n,i=O(t),o=0,r=[];for(n in i)!st(Yt,n)&&st(i,n)&&xe(r,n);for(;e.length>o;)st(i,n=e[o++])&&(~_e(r,n)||xe(r,n));return r},je=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],Ce=je.concat("length","prototype"),ke={f:Object.getOwnPropertyNames||function(t){return Se(t,Ce)}},Ee={f:Object.getOwnPropertySymbols},Ae=S([].concat),Ie=q("Reflect","ownKeys")||function(t){var e=ke.f(Nt(t)),n=Ee.f;return n?Ae(e,n(t)):e},Te=function(t,e,n){for(var i=Ie(e),o=Mt.f,r=Et.f,a=0;a<i.length;a++){var l=i[a];st(t,l)||n&&st(n,l)||o(t,l,r(e,l))}},Ne=/#|\.prototype\./,Oe=function(t,e){var n=Le[Pe(t)];return n==qe||n!=Re&&(P(e)?u(e):!!e)},Pe=Oe.normalize=function(t){return String(t).replace(Ne,".").toLowerCase()},Le=Oe.data={},Re=Oe.NATIVE="N",qe=Oe.POLYFILL="P",Be=Oe,Me=Et.f,He=function(t,e){var n,i,o,r,a,l=t.target,s=t.global,u=t.stat;if(n=s?c:u?c[l]||et(l,{}):(c[l]||{}).prototype)for(i in e){if(r=e[i],o=t.noTargetGet?(a=Me(n,i))&&a.value:n[i],!Be(s?i:l+(u?".":"#")+i,t.forced)&&void 0!==o){if(typeof r==typeof o)continue;Te(r,o)}(t.sham||o&&o.sham)&&Ht(r,"sham",!0),ce(n,i,r,t)}},Fe={};Fe[bt("toStringTag")]="z";var $e,De="[object z]"===String(Fe),ze=bt("toStringTag"),Ge=c.Object,We="Arguments"==k(function(){return arguments}()),Ve=De?k:function(t){var e,n,i;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=Ge(t),ze))?n:We?k(e):"Object"==(i=k(e))&&P(e.callee)?"Arguments":i},Ue=c.String,Ke=function(t){if("Symbol"===Ve(t))throw TypeError("Cannot convert a Symbol value to a string");return Ue(t)},Ye=function(){var t=Nt(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.dotAll&&(e+="s"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e},Xe=c.RegExp,Je=u((function(){var t=Xe("a","y");return t.lastIndex=2,null!=t.exec("abcd")})),Qe=Je||u((function(){return!Xe("a","y").sticky})),Ze={BROKEN_CARET:Je||u((function(){var t=Xe("^r","gy");return t.lastIndex=2,null!=t.exec("str")})),MISSED_STICKY:Qe,UNSUPPORTED_Y:Je},tn=Object.keys||function(t){return Se(t,je)},en=h&&!At?Object.defineProperties:function(t,e){Nt(t);for(var n,i=O(e),o=tn(e),r=o.length,a=0;r>a;)Mt.f(t,n=o[a++],i[n]);return t},nn={f:en},on=q("document","documentElement"),rn=Kt("IE_PROTO"),an=function(){},ln=function(t){return"<script>"+t+"</"+"script>"},sn=function(t){t.write(ln("")),t.close();var e=t.parentWindow.Object;return t=null,e},cn=function(){try{$e=new ActiveXObject("htmlfile")}catch(t){}var t,e;cn="undefined"!=typeof document?document.domain&&$e?sn($e):((e=jt("iframe")).style.display="none",on.appendChild(e),e.src=String("javascript:"),(t=e.contentWindow.document).open(),t.write(ln("document.F=Object")),t.close(),t.F):sn($e);for(var n=je.length;n--;)delete cn.prototype[je[n]];return cn()};Yt[rn]=!0;var un,hn,fn=Object.create||function(t,e){var n;return null!==t?(an.prototype=Nt(t),n=new an,an.prototype=null,n[rn]=t):n=cn(),void 0===e?n:nn.f(n,e)},pn=c.RegExp,dn=u((function(){var t=pn(".","s");return!(t.dotAll&&t.exec("\n")&&"s"===t.flags)})),gn=c.RegExp,vn=u((function(){var t=gn("(?<a>b)","g");return"b"!==t.exec("b").groups.a||"bc"!=="b".replace(t,"$<a>c")})),bn=oe.get,mn=ot("native-string-replace",String.prototype.replace),yn=RegExp.prototype.exec,wn=yn,_n=S("".charAt),xn=S("".indexOf),Sn=S("".replace),jn=S("".slice),Cn=(hn=/b*/g,d(yn,un=/a/,"a"),d(yn,hn,"a"),0!==un.lastIndex||0!==hn.lastIndex),kn=Ze.BROKEN_CARET,En=void 0!==/()??/.exec("")[1];(Cn||En||kn||dn||vn)&&(wn=function(t){var e,n,i,o,r,a,l,s=this,c=bn(s),u=Ke(t),h=c.raw;if(h)return h.lastIndex=s.lastIndex,e=d(wn,h,u),s.lastIndex=h.lastIndex,e;var f=c.groups,p=kn&&s.sticky,g=d(Ye,s),v=s.source,b=0,m=u;if(p&&(g=Sn(g,"y",""),-1===xn(g,"g")&&(g+="g"),m=jn(u,s.lastIndex),s.lastIndex>0&&(!s.multiline||s.multiline&&"\n"!==_n(u,s.lastIndex-1))&&(v="(?: "+v+")",m=" "+m,b++),n=new RegExp("^(?:"+v+")",g)),En&&(n=new RegExp("^"+v+"$(?!\\s)",g)),Cn&&(i=s.lastIndex),o=d(yn,p?n:s,m),p?o?(o.input=jn(o.input,b),o[0]=jn(o[0],b),o.index=s.lastIndex,s.lastIndex+=o[0].length):s.lastIndex=0:Cn&&o&&(s.lastIndex=s.global?o.index+o[0].length:i),En&&o&&o.length>1&&d(mn,o[0],n,(function(){for(r=1;r<arguments.length-2;r++)void 0===arguments[r]&&(o[r]=void 0)})),o&&f)for(o.groups=a=fn(null),r=0;r<f.length;r++)a[(l=f[r])[0]]=o[l[1]];return o});var An=wn;He({target:"RegExp",proto:!0,forced:/./.exec!==An},{exec:An});var In=bt("species"),Tn=RegExp.prototype,Nn=function(t,e,n,i){var o=bt(t),r=!u((function(){var e={};return e[o]=function(){return 7},7!=""[t](e)})),a=r&&!u((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[In]=function(){return n},n.flags="",n[o]=/./[o]),n.exec=function(){return e=!0,null},n[o](""),!e}));if(!r||!a||n){var l=S(/./[o]),s=e(o,""[t],(function(t,e,n,i,o){var a=S(t),s=e.exec;return s===An||s===Tn.exec?r&&!o?{done:!0,value:l(e,n,i)}:{done:!0,value:a(n,e,i)}:{done:!1}}));ce(String.prototype,t,s[0]),ce(Tn,o,s[1])}i&&Ht(Tn[o],"sham",!0)},On=S("".charAt),Pn=S("".charCodeAt),Ln=S("".slice),Rn=function(t){return function(e,n){var i,o,r=Ke(N(e)),a=fe(n),l=r.length;return a<0||a>=l?t?"":void 0:(i=Pn(r,a))<55296||i>56319||a+1===l||(o=Pn(r,a+1))<56320||o>57343?t?On(r,a):i:t?Ln(r,a,a+2):o-56320+(i-55296<<10)+65536}},qn={codeAt:Rn(!1),charAt:Rn(!0)}.charAt,Bn=function(t,e,n){return e+(n?qn(t,e).length:1)},Mn=c.TypeError,Hn=function(t,e){var n=t.exec;if(P(n)){var i=d(n,t,e);return null!==i&&Nt(i),i}if("RegExp"===k(t))return d(An,t,e);throw Mn("RegExp#exec called on incompatible receiver")};Nn("match",(function(t,e,n){return[function(e){var n=N(this),i=null==e?void 0:Q(e,t);return i?d(i,e,n):new RegExp(e)[t](Ke(n))},function(t){var i=Nt(this),o=Ke(t),r=n(e,i,o);if(r.done)return r.value;if(!i.global)return Hn(i,o);var a=i.unicode;i.lastIndex=0;for(var l,s=[],c=0;null!==(l=Hn(i,o));){var u=Ke(l[0]);s[c]=u,""===u&&(i.lastIndex=Bn(o,be(i.lastIndex),a)),c++}return 0===c?null:s}]}));var Fn=Array.isArray||function(t){return"Array"==k(t)},$n=function(t,e,n){var i=_t(e);i in t?Mt.f(t,i,m(0,n)):t[i]=n},Dn=function(){},zn=[],Gn=q("Reflect","construct"),Wn=/^\s*(?:class|function)\b/,Vn=S(Wn.exec),Un=!Wn.exec(Dn),Kn=function(t){if(!P(t))return!1;try{return Gn(Dn,zn,t),!0}catch(t){return!1}},Yn=function(t){if(!P(t))return!1;switch(Ve(t)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return Un||!!Vn(Wn,Gt(t))}catch(t){return!0}};Yn.sham=!0;var Xn=!Gn||u((function(){var t;return Kn(Kn.call)||!Kn(Object)||!Kn((function(){t=!0}))||t}))?Yn:Kn,Jn=bt("species"),Qn=c.Array,Zn=function(t,e){return new(function(t){var e;return Fn(t)&&(e=t.constructor,(Xn(e)&&(e===Qn||Fn(e.prototype))||L(e)&&null===(e=e[Jn]))&&(e=void 0)),void 0===e?Qn:e}(t))(0===e?0:e)},ti=bt("species"),ei=function(t){return z>=51||!u((function(){var e=[];return(e.constructor={})[ti]=function(){return{foo:1}},1!==e[t](Boolean).foo}))},ni=bt("isConcatSpreadable"),ii=9007199254740991,oi="Maximum allowed index exceeded",ri=c.TypeError,ai=z>=51||!u((function(){var t=[];return t[ni]=!1,t.concat()[0]!==t})),li=ei("concat"),si=function(t){if(!L(t))return!1;var e=t[ni];return void 0!==e?!!e:Fn(t)};He({target:"Array",proto:!0,forced:!ai||!li},{concat:function(t){var e,n,i,o,r,a=at(this),l=Zn(a,0),s=0;for(e=-1,i=arguments.length;e<i;e++)if(si(r=-1===e?a:arguments[e])){if(s+(o=me(r))>ii)throw ri(oi);for(n=0;n<o;n++,s++)n in r&&$n(l,s,r[n])}else{if(s>=ii)throw ri(oi);$n(l,s++,r)}return l.length=s,l}});var ci=De?{}.toString:function(){return"[object "+Ve(this)+"]"};De||ce(Object.prototype,"toString",ci,{unsafe:!0});var ui=se.PROPER,hi="toString",fi=RegExp.prototype,pi=fi.toString,di=S(Ye),gi=u((function(){return"/a/b"!=pi.call({source:"a",flags:"b"})})),vi=ui&&pi.name!=hi;(gi||vi)&&ce(RegExp.prototype,hi,(function(){var t=Nt(this),e=Ke(t.source),n=t.flags;return"/"+e+"/"+Ke(void 0===n&&B(fi,t)&&!("flags"in fi)?di(t):n)}),{unsafe:!0});var bi=Function.prototype,mi=bi.apply,yi=bi.call,wi="object"==typeof Reflect&&Reflect.apply||(f?yi.bind(mi):function(){return yi.apply(mi,arguments)}),_i=bt("match"),xi=function(t){var e;return L(t)&&(void 0!==(e=t[_i])?!!e:"RegExp"==k(t))},Si=c.TypeError,ji=bt("species"),Ci=function(t,e){var n,i=Nt(t).constructor;return void 0===i||null==(n=Nt(i)[ji])?e:function(t){if(Xn(t))return t;throw Si(Y(t)+" is not a constructor")}(n)},ki=c.Array,Ei=Math.max,Ai=function(t,e,n){for(var i=me(t),o=ge(e,i),r=ge(void 0===n?i:n,i),a=ki(Ei(r-o,0)),l=0;o<r;o++,l++)$n(a,l,t[o]);return a.length=l,a},Ii=Ze.UNSUPPORTED_Y,Ti=4294967295,Ni=Math.min,Oi=[].push,Pi=S(/./.exec),Li=S(Oi),Ri=S("".slice),qi=!u((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));function Bi(t,e){if(t instanceof SVGElement){var i=t.getAttribute("class")||"";i.match(e)||t.setAttribute("class","".concat(i," ").concat(e))}else{if(void 0!==t.classList)n(e.split(" "),(function(e){t.classList.add(e)}));else t.className.match(e)||(t.className+=" ".concat(e))}}function Mi(t,e){var n="";return t.currentStyle?n=t.currentStyle[e]:document.defaultView&&document.defaultView.getComputedStyle&&(n=document.defaultView.getComputedStyle(t,null).getPropertyValue(e)),n&&n.toLowerCase?n.toLowerCase():n}function Hi(t){var e=t.element;if(this._options.scrollToElement){var n=function(t){var e=window.getComputedStyle(t),n="absolute"===e.position,i=/(auto|scroll)/;if("fixed"===e.position)return document.body;for(var o=t;o=o.parentElement;)if(e=window.getComputedStyle(o),(!n||"static"!==e.position)&&i.test(e.overflow+e.overflowY+e.overflowX))return o;return document.body}(e);n!==document.body&&(n.scrollTop=e.offsetTop-n.offsetTop)}}function Fi(){if(void 0!==window.innerWidth)return{width:window.innerWidth,height:window.innerHeight};var t=document.documentElement;return{width:t.clientWidth,height:t.clientHeight}}function $i(t,e,n){var i,o=e.element;if("off"!==t&&(this._options.scrollToElement&&(i="tooltip"===t?n.getBoundingClientRect():o.getBoundingClientRect(),!function(t){var e=t.getBoundingClientRect();return e.top>=0&&e.left>=0&&e.bottom+80<=window.innerHeight&&e.right<=window.innerWidth}(o)))){var r=Fi().height;i.bottom-(i.bottom-i.top)<0||o.clientHeight>r?window.scrollBy(0,i.top-(r/2-i.height/2)-this._options.scrollPadding):window.scrollBy(0,i.top-(r/2-i.height/2)+this._options.scrollPadding)}}function Di(t){t.setAttribute("role","button"),t.tabIndex=0}Nn("split",(function(t,e,n){var i;return i="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var i=Ke(N(this)),o=void 0===n?Ti:n>>>0;if(0===o)return[];if(void 0===t)return[i];if(!xi(t))return d(e,i,t,o);for(var r,a,l,s=[],c=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),u=0,h=new RegExp(t.source,c+"g");(r=d(An,h,i))&&!((a=h.lastIndex)>u&&(Li(s,Ri(i,u,r.index)),r.length>1&&r.index<i.length&&wi(Oi,s,Ai(r,1)),l=r[0].length,u=a,s.length>=o));)h.lastIndex===r.index&&h.lastIndex++;return u===i.length?!l&&Pi(h,"")||Li(s,""):Li(s,Ri(i,u)),s.length>o?Ai(s,0,o):s}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:d(e,this,t,n)}:e,[function(e,n){var o=N(this),r=null==e?void 0:Q(e,t);return r?d(r,e,o,n):d(i,Ke(o),e,n)},function(t,o){var r=Nt(this),a=Ke(t),l=n(i,r,a,o,i!==e);if(l.done)return l.value;var s=Ci(r,RegExp),c=r.unicode,u=(r.ignoreCase?"i":"")+(r.multiline?"m":"")+(r.unicode?"u":"")+(Ii?"g":"y"),h=new s(Ii?"^(?:"+r.source+")":r,u),f=void 0===o?Ti:o>>>0;if(0===f)return[];if(0===a.length)return null===Hn(h,a)?[a]:[];for(var p=0,d=0,g=[];d<a.length;){h.lastIndex=Ii?0:d;var v,b=Hn(h,Ii?Ri(a,d):a);if(null===b||(v=Ni(be(h.lastIndex+(Ii?d:0)),a.length))===p)d=Bn(a,d,c);else{if(Li(g,Ri(a,p,d)),g.length===f)return g;for(var m=1;m<=b.length-1;m++)if(Li(g,b[m]),g.length===f)return g;d=p=v}}return Li(g,Ri(a,p)),g}]}),!qi,Ii);var zi=Object.assign,Gi=Object.defineProperty,Wi=S([].concat),Vi=!zi||u((function(){if(h&&1!==zi({b:1},zi(Gi({},"a",{enumerable:!0,get:function(){Gi(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol(),i="abcdefghijklmnopqrst";return t[n]=7,i.split("").forEach((function(t){e[t]=t})),7!=zi({},t)[n]||tn(zi({},e)).join("")!=i}))?function(t,e){for(var n=at(t),i=arguments.length,o=1,r=Ee.f,a=b.f;i>o;)for(var l,s=I(arguments[o++]),c=r?Wi(tn(s),r(s)):tn(s),u=c.length,f=0;u>f;)l=c[f++],h&&!d(a,s,l)||(n[l]=s[l]);return n}:zi;function Ui(t){var e=t.parentNode;return!(!e||"HTML"===e.nodeName)&&("fixed"===Mi(t,"position")||Ui(e))}function Ki(t,e){var n=document.body,i=document.documentElement,o=window.pageYOffset||i.scrollTop||n.scrollTop,r=window.pageXOffset||i.scrollLeft||n.scrollLeft;e=e||n;var a=t.getBoundingClientRect(),l=e.getBoundingClientRect(),s=Mi(e,"position"),c={width:a.width,height:a.height};return"body"!==e.tagName.toLowerCase()&&"relative"===s||"sticky"===s?Object.assign(c,{top:a.top-l.top,left:a.left-l.left}):Ui(t)?Object.assign(c,{top:a.top,left:a.left}):Object.assign(c,{top:a.top+o,left:a.left+r})}He({target:"Object",stat:!0,forced:Object.assign!==Vi},{assign:Vi});var Yi=Math.floor,Xi=S("".charAt),Ji=S("".replace),Qi=S("".slice),Zi=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,to=/\$([$&'`]|\d{1,2})/g,eo=function(t,e,n,i,o,r){var a=n+t.length,l=i.length,s=to;return void 0!==o&&(o=at(o),s=Zi),Ji(r,s,(function(r,s){var c;switch(Xi(s,0)){case"$":return"$";case"&":return t;case"`":return Qi(e,0,n);case"'":return Qi(e,a);case"<":c=o[Qi(s,1,-1)];break;default:var u=+s;if(0===u)return r;if(u>l){var h=Yi(u/10);return 0===h?r:h<=l?void 0===i[h-1]?Xi(s,1):i[h-1]+Xi(s,1):r}c=i[u-1]}return void 0===c?"":c}))},no=bt("replace"),io=Math.max,oo=Math.min,ro=S([].concat),ao=S([].push),lo=S("".indexOf),so=S("".slice),co="$0"==="a".replace(/./,"$0"),uo=!!/./[no]&&""===/./[no]("a","$0");function ho(t,e){if(t instanceof SVGElement){var n=t.getAttribute("class")||"";t.setAttribute("class",n.replace(e,"").replace(/^\s+|\s+$/g,""))}else t.className=t.className.replace(e,"").replace(/^\s+|\s+$/g,"")}function fo(t,e){var n="";if(t.style.cssText&&(n+=t.style.cssText),"string"==typeof e)n+=e;else for(var i in e)n+="".concat(i,":").concat(e[i],";");t.style.cssText=n}function po(t){if(t){if(!this._introItems[this._currentStep])return;var e=this._introItems[this._currentStep],n=Ki(e.element,this._targetElement),i=this._options.helperElementPadding;Ui(e.element)?Bi(t,"introjs-fixedTooltip"):ho(t,"introjs-fixedTooltip"),"floating"===e.position&&(i=0),fo(t,{width:"".concat(n.width+i,"px"),height:"".concat(n.height+i,"px"),top:"".concat(n.top-i/2,"px"),left:"".concat(n.left-i/2,"px")})}}Nn("replace",(function(t,e,n){var i=uo?"$":"$0";return[function(t,n){var i=N(this),o=null==t?void 0:Q(t,no);return o?d(o,t,i,n):d(e,Ke(i),t,n)},function(t,o){var r=Nt(this),a=Ke(t);if("string"==typeof o&&-1===lo(o,i)&&-1===lo(o,"$<")){var l=n(e,r,a,o);if(l.done)return l.value}var s=P(o);s||(o=Ke(o));var c=r.global;if(c){var u=r.unicode;r.lastIndex=0}for(var h=[];;){var f=Hn(r,a);if(null===f)break;if(ao(h,f),!c)break;""===Ke(f[0])&&(r.lastIndex=Bn(a,be(r.lastIndex),u))}for(var p,d="",g=0,v=0;v<h.length;v++){for(var b=Ke((f=h[v])[0]),m=io(oo(fe(f.index),a.length),0),y=[],w=1;w<f.length;w++)ao(y,void 0===(p=f[w])?p:String(p));var _=f.groups;if(s){var x=ro([b],y,m,a);void 0!==_&&ao(x,_);var S=Ke(wi(o,void 0,x))}else S=eo(b,a,m,y,_,o);m>=g&&(d+=so(a,g,m)+S,g=m+b.length)}return d+so(a,g)}]}),!!u((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")}))||!co||uo);var go=bt("unscopables"),vo=Array.prototype;null==vo[go]&&Mt.f(vo,go,{configurable:!0,value:fn(null)});var bo,mo=we.includes;He({target:"Array",proto:!0},{includes:function(t){return mo(this,t,arguments.length>1?arguments[1]:void 0)}}),bo="includes",vo[go][bo]=!0;var yo=S([].slice),wo=ei("slice"),_o=bt("species"),xo=c.Array,So=Math.max;He({target:"Array",proto:!0,forced:!wo},{slice:function(t,e){var n,i,o,r=O(this),a=me(r),l=ge(t,a),s=ge(void 0===e?a:e,a);if(Fn(r)&&(n=r.constructor,(Xn(n)&&(n===xo||Fn(n.prototype))||L(n)&&null===(n=n[_o]))&&(n=void 0),n===xo||void 0===n))return yo(r,l,s);for(i=new(void 0===n?xo:n)(So(s-l,0)),o=0;l<s;l++,o++)l in r&&$n(i,o,r[l]);return i.length=o,i}});var jo=c.TypeError,Co=function(t){if(xi(t))throw jo("The method doesn't accept regular expressions");return t},ko=bt("match"),Eo=S("".indexOf);He({target:"String",proto:!0,forced:!function(t){var e=/./;try{"/./"[t](e)}catch(n){try{return e[ko]=!1,"/./"[t](e)}catch(t){}}return!1}("includes")},{includes:function(t){return!!~Eo(Ke(N(this)),Ke(Co(t)),arguments.length>1?arguments[1]:void 0)}});var Ao=function(t,e){var n=[][t];return!!n&&u((function(){n.call(null,e||function(){throw 1},1)}))},Io=S([].join),To=I!=Object,No=Ao("join",",");He({target:"Array",proto:!0,forced:To||!No},{join:function(t){return Io(O(this),void 0===t?",":t)}});var Oo=S(S.bind),Po=S([].push),Lo=function(t){var e=1==t,n=2==t,i=3==t,o=4==t,r=6==t,a=7==t,l=5==t||r;return function(s,c,u,h){for(var p,d,g=at(s),v=I(g),b=function(t,e){return J(t),void 0===e?t:f?Oo(t,e):function(){return t.apply(e,arguments)}}(c,u),m=me(v),y=0,w=h||Zn,_=e?w(s,m):n||a?w(s,0):void 0;m>y;y++)if((l||y in v)&&(d=b(p=v[y],y,g),t))if(e)_[y]=d;else if(d)switch(t){case 3:return!0;case 5:return p;case 6:return y;case 2:Po(_,p)}else switch(t){case 4:return!1;case 7:Po(_,p)}return r?-1:i||o?o:_}},Ro={forEach:Lo(0),map:Lo(1),filter:Lo(2),some:Lo(3),every:Lo(4),find:Lo(5),findIndex:Lo(6),filterReject:Lo(7)}.filter;function qo(t,e,n,i,o){return t.left+e+n.width>i.width?(o.style.left="".concat(i.width-n.width-t.left,"px"),!1):(o.style.left="".concat(e,"px"),!0)}function Bo(t,e,n,i){return t.left+t.width-e-n.width<0?(i.style.left="".concat(-t.left,"px"),!1):(i.style.right="".concat(e,"px"),!0)}He({target:"Array",proto:!0,forced:!ei("filter")},{filter:function(t){return Ro(this,t,arguments.length>1?arguments[1]:void 0)}});var Mo=ei("splice"),Ho=c.TypeError,Fo=Math.max,$o=Math.min,Do=9007199254740991,zo="Maximum allowed length exceeded";function Go(t,e){t.includes(e)&&t.splice(t.indexOf(e),1)}function Wo(t,e,n){var i=this._options.positionPrecedence.slice(),o=Fi(),r=Ki(e).height+10,a=Ki(e).width+20,l=t.getBoundingClientRect(),s="floating";l.bottom+r>o.height&&Go(i,"bottom"),l.top-r<0&&Go(i,"top"),l.right+a>o.width&&Go(i,"right"),l.left-a<0&&Go(i,"left");var c,u,h=-1!==(u=(c=n||"").indexOf("-"))?c.substr(u):"";return n&&(n=n.split("-")[0]),i.length&&(s=i.includes(n)?n:i[0]),["top","bottom"].includes(s)&&(s+=function(t,e,n,i){var o=n.width,r=e/2,a=Math.min(o,window.screen.width),l=["-left-aligned","-middle-aligned","-right-aligned"];return a-t<e&&Go(l,"-left-aligned"),(t<r||a-t<r)&&Go(l,"-middle-aligned"),t<e&&Go(l,"-right-aligned"),l.length?l.includes(i)?i:l[0]:"-middle-aligned"}(l.left,a,o,h)),s}function Vo(t,e,n,i){var o,r,a,l,s,c="";if(i=i||!1,e.style.top=null,e.style.right=null,e.style.bottom=null,e.style.left=null,e.style.marginLeft=null,e.style.marginTop=null,n.style.display="inherit",this._introItems[this._currentStep])switch(c="string"==typeof(o=this._introItems[this._currentStep]).tooltipClass?o.tooltipClass:this._options.tooltipClass,e.className=["introjs-tooltip",c].filter(Boolean).join(" "),e.setAttribute("role","dialog"),"floating"!==(s=this._introItems[this._currentStep].position)&&this._options.autoPosition&&(s=Wo.call(this,t,e,s)),a=Ki(t),r=Ki(e),l=Fi(),Bi(e,"introjs-".concat(s)),s){case"top-right-aligned":n.className="introjs-arrow bottom-right";var u=0;Bo(a,u,r,e),e.style.bottom="".concat(a.height+20,"px");break;case"top-middle-aligned":n.className="introjs-arrow bottom-middle";var h=a.width/2-r.width/2;i&&(h+=5),Bo(a,h,r,e)&&(e.style.right=null,qo(a,h,r,l,e)),e.style.bottom="".concat(a.height+20,"px");break;case"top-left-aligned":case"top":n.className="introjs-arrow bottom",qo(a,i?0:15,r,l,e),e.style.bottom="".concat(a.height+20,"px");break;case"right":e.style.left="".concat(a.width+20,"px"),a.top+r.height>l.height?(n.className="introjs-arrow left-bottom",e.style.top="-".concat(r.height-a.height-20,"px")):n.className="introjs-arrow left";break;case"left":i||!0!==this._options.showStepNumbers||(e.style.top="15px"),a.top+r.height>l.height?(e.style.top="-".concat(r.height-a.height-20,"px"),n.className="introjs-arrow right-bottom"):n.className="introjs-arrow right",e.style.right="".concat(a.width+20,"px");break;case"floating":n.style.display="none",e.style.left="50%",e.style.top="50%",e.style.marginLeft="-".concat(r.width/2,"px"),e.style.marginTop="-".concat(r.height/2,"px");break;case"bottom-right-aligned":n.className="introjs-arrow top-right",Bo(a,u=0,r,e),e.style.top="".concat(a.height+20,"px");break;case"bottom-middle-aligned":n.className="introjs-arrow top-middle",h=a.width/2-r.width/2,i&&(h+=5),Bo(a,h,r,e)&&(e.style.right=null,qo(a,h,r,l,e)),e.style.top="".concat(a.height+20,"px");break;default:n.className="introjs-arrow top",qo(a,0,r,l,e),e.style.top="".concat(a.height+20,"px")}}function Uo(){n(document.querySelectorAll(".introjs-showElement"),(function(t){ho(t,/introjs-[a-zA-Z]+/g)}))}function Ko(t,e){var n=document.createElement(t);e=e||{};var i=/^(?:role|data-|aria-)/;for(var o in e){var r=e[o];"style"===o?fo(n,r):o.match(i)?n.setAttribute(o,r):n[o]=r}return n}function Yo(t,e,n){if(n){var i=e.style.opacity||"1";fo(e,{opacity:"0"}),window.setTimeout((function(){fo(e,{opacity:i})}),10)}t.appendChild(e)}function Xo(){return parseInt(this._currentStep+1,10)/this._introItems.length*100}function Jo(){var t=document.querySelector(".introjs-disableInteraction");null===t&&(t=Ko("div",{className:"introjs-disableInteraction"}),this._targetElement.appendChild(t)),po.call(this,t)}function Qo(t){var e=this,i=Ko("div",{className:"introjs-bullets"});!1===this._options.showBullets&&(i.style.display="none");var o=Ko("ul");o.setAttribute("role","tablist");var r=function(){e.goToStep(this.getAttribute("data-step-number"))};return n(this._introItems,(function(e,n){var i=e.step,a=Ko("li"),l=Ko("a");a.setAttribute("role","presentation"),l.setAttribute("role","tab"),l.onclick=r,n===t.step-1&&(l.className="active"),Di(l),l.innerHTML=" ",l.setAttribute("data-step-number",i),a.appendChild(l),o.appendChild(a)})),i.appendChild(o),i}function Zo(t,e){if(this._options.showBullets){var n=document.querySelector(".introjs-bullets");n&&n.parentNode.replaceChild(Qo.call(this,e),n)}}function tr(t,e){this._options.showBullets&&(t.querySelector(".introjs-bullets li > a.active").className="",t.querySelector('.introjs-bullets li > a[data-step-number="'.concat(e.step,'"]')).className="active")}function er(){var t=Ko("div");t.className="introjs-progress",!1===this._options.showProgress&&(t.style.display="none");var e=Ko("div",{className:"introjs-progressbar"});return this._options.progressBarAdditionalClass&&(e.className+=" "+this._options.progressBarAdditionalClass),e.setAttribute("role","progress"),e.setAttribute("aria-valuemin",0),e.setAttribute("aria-valuemax",100),e.setAttribute("aria-valuenow",Xo.call(this)),e.style.cssText="width:".concat(Xo.call(this),"%;"),t.appendChild(e),t}function nr(t){t.querySelector(".introjs-progress .introjs-progressbar").style.cssText="width:".concat(Xo.call(this),"%;"),t.querySelector(".introjs-progress .introjs-progressbar").setAttribute("aria-valuenow",Xo.call(this))}function ir(t){var e=this;void 0!==this._introChangeCallback&&this._introChangeCallback.call(this,t.element);var n,i,o,r=this,a=document.querySelector(".introjs-helperLayer"),l=document.querySelector(".introjs-tooltipReferenceLayer"),s="introjs-helperLayer";if("string"==typeof t.highlightClass&&(s+=" ".concat(t.highlightClass)),"string"==typeof this._options.highlightClass&&(s+=" ".concat(this._options.highlightClass)),null!==a&&null!==l){var c=l.querySelector(".introjs-helperNumberLayer"),u=l.querySelector(".introjs-tooltiptext"),h=l.querySelector(".introjs-tooltip-title"),f=l.querySelector(".introjs-arrow"),p=l.querySelector(".introjs-tooltip");o=l.querySelector(".introjs-skipbutton"),i=l.querySelector(".introjs-prevbutton"),n=l.querySelector(".introjs-nextbutton"),a.className=s,p.style.opacity=0,p.style.display="none",Hi.call(r,t),po.call(r,a),po.call(r,l),Uo(),r._lastShowElementTimer&&window.clearTimeout(r._lastShowElementTimer),r._lastShowElementTimer=window.setTimeout((function(){null!==c&&(c.innerHTML="".concat(t.step," of ").concat(e._introItems.length)),u.innerHTML=t.intro,h.innerHTML=t.title,p.style.display="block",Vo.call(r,t.element,p,f),tr.call(r,l,t),nr.call(r,l),p.style.opacity=1,(null!=n&&/introjs-donebutton/gi.test(n.className)||null!=n)&&n.focus(),$i.call(r,t.scrollTo,t,u)}),350)}else{var d=Ko("div",{className:s}),g=Ko("div",{className:"introjs-tooltipReferenceLayer"}),v=Ko("div",{className:"introjs-arrow"}),b=Ko("div",{className:"introjs-tooltip"}),m=Ko("div",{className:"introjs-tooltiptext"}),y=Ko("div",{className:"introjs-tooltip-header"}),w=Ko("h1",{className:"introjs-tooltip-title"}),_=Ko("div");fo(d,{"box-shadow":"0 0 1px 2px rgba(33, 33, 33, 0.8), rgba(33, 33, 33, ".concat(r._options.overlayOpacity.toString(),") 0 0 0 5000px")}),Hi.call(r,t),po.call(r,d),po.call(r,g),Yo(this._targetElement,d,!0),Yo(this._targetElement,g),m.innerHTML=t.intro,w.innerHTML=t.title,_.className="introjs-tooltipbuttons",!1===this._options.showButtons&&(_.style.display="none"),y.appendChild(w),b.appendChild(y),b.appendChild(m),b.appendChild(Qo.call(this,t)),b.appendChild(er.call(this));var x=Ko("div");!0===this._options.showStepNumbers&&(x.className="introjs-helperNumberLayer",x.innerHTML="".concat(t.step," of ").concat(this._introItems.length),b.appendChild(x)),b.appendChild(v),g.appendChild(b),(n=Ko("a")).onclick=function(){r._introItems.length-1!==r._currentStep?ar.call(r):/introjs-donebutton/gi.test(n.className)&&("function"==typeof r._introCompleteCallback&&r._introCompleteCallback.call(r,r._currentStep,"done"),Wr.call(r,r._targetElement))},Di(n),n.innerHTML=this._options.nextLabel,(i=Ko("a")).onclick=function(){0!==r._currentStep&&lr.call(r)},Di(i),i.innerHTML=this._options.prevLabel,Di(o=Ko("a",{className:"introjs-skipbutton"})),o.innerHTML=this._options.skipLabel,o.onclick=function(){r._introItems.length-1===r._currentStep&&"function"==typeof r._introCompleteCallback&&r._introCompleteCallback.call(r,r._currentStep,"skip"),"function"==typeof r._introSkipCallback&&r._introSkipCallback.call(r),Wr.call(r,r._targetElement)},y.appendChild(o),this._introItems.length>1&&_.appendChild(i),_.appendChild(n),b.appendChild(_),Vo.call(r,t.element,b,v),$i.call(this,t.scrollTo,t,b)}var S=r._targetElement.querySelector(".introjs-disableInteraction");S&&S.parentNode.removeChild(S),t.disableInteraction&&Jo.call(r),0===this._currentStep&&this._introItems.length>1?(null!=n&&(n.className="".concat(this._options.buttonClass," introjs-nextbutton"),n.innerHTML=this._options.nextLabel),!0===this._options.hidePrev?(null!=i&&(i.className="".concat(this._options.buttonClass," introjs-prevbutton introjs-hidden")),null!=n&&Bi(n,"introjs-fullbutton")):null!=i&&(i.className="".concat(this._options.buttonClass," introjs-prevbutton introjs-disabled"))):this._introItems.length-1===this._currentStep||1===this._introItems.length?(null!=i&&(i.className="".concat(this._options.buttonClass," introjs-prevbutton")),!0===this._options.hideNext?(null!=n&&(n.className="".concat(this._options.buttonClass," introjs-nextbutton introjs-hidden")),null!=i&&Bi(i,"introjs-fullbutton")):null!=n&&(!0===this._options.nextToDone?(n.innerHTML=this._options.doneLabel,Bi(n,"".concat(this._options.buttonClass," introjs-nextbutton introjs-donebutton"))):n.className="".concat(this._options.buttonClass," introjs-nextbutton introjs-disabled"))):(null!=i&&(i.className="".concat(this._options.buttonClass," introjs-prevbutton")),null!=n&&(n.className="".concat(this._options.buttonClass," introjs-nextbutton"),n.innerHTML=this._options.nextLabel)),null!=i&&i.setAttribute("role","button"),null!=n&&n.setAttribute("role","button"),null!=o&&o.setAttribute("role","button"),null!=n&&n.focus(),function(t){var e=t.element;Bi(e,"introjs-showElement");var n=Mi(e,"position");"absolute"!==n&&"relative"!==n&&"sticky"!==n&&"fixed"!==n&&Bi(e,"introjs-relativePosition")}(t),void 0!==this._introAfterChangeCallback&&this._introAfterChangeCallback.call(this,t.element)}function or(t){this._currentStep=t-2,void 0!==this._introItems&&ar.call(this)}function rr(t){this._currentStepNumber=t,void 0!==this._introItems&&ar.call(this)}function ar(){var t=this;this._direction="forward",void 0!==this._currentStepNumber&&n(this._introItems,(function(e,n){e.step===t._currentStepNumber&&(t._currentStep=n-1,t._currentStepNumber=void 0)})),void 0===this._currentStep?this._currentStep=0:++this._currentStep;var e=this._introItems[this._currentStep],i=!0;return void 0!==this._introBeforeChangeCallback&&(i=this._introBeforeChangeCallback.call(this,e&&e.element)),!1===i?(--this._currentStep,!1):this._introItems.length<=this._currentStep?("function"==typeof this._introCompleteCallback&&this._introCompleteCallback.call(this,this._currentStep,"end"),void Wr.call(this,this._targetElement)):void ir.call(this,e)}function lr(){if(this._direction="backward",0===this._currentStep)return!1;--this._currentStep;var t=this._introItems[this._currentStep],e=!0;if(void 0!==this._introBeforeChangeCallback&&(e=this._introBeforeChangeCallback.call(this,t&&t.element)),!1===e)return++this._currentStep,!1;ir.call(this,t)}function sr(){return this._currentStep}function cr(t){var e=void 0===t.code?t.which:t.code;if(null===e&&(e=null===t.charCode?t.keyCode:t.charCode),"Escape"!==e&&27!==e||!0!==this._options.exitOnEsc){if("ArrowLeft"===e||37===e)lr.call(this);else if("ArrowRight"===e||39===e)ar.call(this);else if("Enter"===e||"NumpadEnter"===e||13===e){var n=t.target||t.srcElement;n&&n.className.match("introjs-prevbutton")?lr.call(this):n&&n.className.match("introjs-skipbutton")?(this._introItems.length-1===this._currentStep&&"function"==typeof this._introCompleteCallback&&this._introCompleteCallback.call(this,this._currentStep,"skip"),Wr.call(this,this._targetElement)):n&&n.getAttribute("data-step-number")?n.click():ar.call(this),t.preventDefault?t.preventDefault():t.returnValue=!1}}else Wr.call(this,this._targetElement)}function ur(e){if(null===e||"object"!==t(e)||void 0!==e.nodeType)return e;var n={};for(var i in e)void 0!==window.jQuery&&e[i]instanceof window.jQuery?n[i]=e[i]:n[i]=ur(e[i]);return n}function hr(t){var e=document.querySelector(".introjs-hints");return e?e.querySelectorAll(t):[]}function fr(t){var e=hr('.introjs-hint[data-step="'.concat(t,'"]'))[0];_r.call(this),e&&Bi(e,"introjs-hidehint"),void 0!==this._hintCloseCallback&&this._hintCloseCallback.call(this,t)}function pr(){var t=this;n(hr(".introjs-hint"),(function(e){fr.call(t,e.getAttribute("data-step"))}))}function dr(){var t=this,e=hr(".introjs-hint");e&&e.length?n(e,(function(e){gr.call(t,e.getAttribute("data-step"))})):xr.call(this,this._targetElement)}function gr(t){var e=hr('.introjs-hint[data-step="'.concat(t,'"]'))[0];e&&ho(e,/introjs-hidehint/g)}function vr(){var t=this;n(hr(".introjs-hint"),(function(e){br.call(t,e.getAttribute("data-step"))})),i.off(document,"click",_r,this,!1),i.off(window,"resize",Sr,this,!0),this._hintsAutoRefreshFunction&&i.off(window,"scroll",this._hintsAutoRefreshFunction,this,!0)}function br(t){var e=hr('.introjs-hint[data-step="'.concat(t,'"]'))[0];e&&e.parentNode.removeChild(e)}function mr(){var t=this,e=this,o=document.querySelector(".introjs-hints");null===o&&(o=Ko("div",{className:"introjs-hints"}));n(this._introItems,(function(n,i){if(!document.querySelector('.introjs-hint[data-step="'.concat(i,'"]'))){var r=Ko("a",{className:"introjs-hint"});Di(r),r.onclick=function(t){return function(n){var i=n||window.event;i.stopPropagation&&i.stopPropagation(),null!==i.cancelBubble&&(i.cancelBubble=!0),wr.call(e,t)}}(i),n.hintAnimation||Bi(r,"introjs-hint-no-anim"),Ui(n.element)&&Bi(r,"introjs-fixedhint");var a=Ko("div",{className:"introjs-hint-dot"}),l=Ko("div",{className:"introjs-hint-pulse"});r.appendChild(a),r.appendChild(l),r.setAttribute("data-step",i),n.targetElement=n.element,n.element=r,yr.call(t,n.hintPosition,r,n.targetElement),o.appendChild(r)}})),document.body.appendChild(o),void 0!==this._hintsAddedCallback&&this._hintsAddedCallback.call(this),this._options.hintAutoRefreshInterval>=0&&(this._hintsAutoRefreshFunction=function(t,e){var n,i=this;return function(){for(var o=arguments.length,r=new Array(o),a=0;a<o;a++)r[a]=arguments[a];clearTimeout(n),n=setTimeout((function(){t.apply(i,r)}),e)}}((function(){return Sr.call(t)}),this._options.hintAutoRefreshInterval),i.on(window,"scroll",this._hintsAutoRefreshFunction,this,!0))}function yr(t,e,n){var i=e.style,o=Ki.call(this,n),r=20,a=20;switch(t){default:i.left="".concat(o.left,"px"),i.top="".concat(o.top,"px");break;case"top-right":i.left="".concat(o.left+o.width-r,"px"),i.top="".concat(o.top,"px");break;case"bottom-left":i.left="".concat(o.left,"px"),i.top="".concat(o.top+o.height-a,"px");break;case"bottom-right":i.left="".concat(o.left+o.width-r,"px"),i.top="".concat(o.top+o.height-a,"px");break;case"middle-left":i.left="".concat(o.left,"px"),i.top="".concat(o.top+(o.height-a)/2,"px");break;case"middle-right":i.left="".concat(o.left+o.width-r,"px"),i.top="".concat(o.top+(o.height-a)/2,"px");break;case"middle-middle":i.left="".concat(o.left+(o.width-r)/2,"px"),i.top="".concat(o.top+(o.height-a)/2,"px");break;case"bottom-middle":i.left="".concat(o.left+(o.width-r)/2,"px"),i.top="".concat(o.top+o.height-a,"px");break;case"top-middle":i.left="".concat(o.left+(o.width-r)/2,"px"),i.top="".concat(o.top,"px")}}function wr(t){var e=document.querySelector('.introjs-hint[data-step="'.concat(t,'"]')),n=this._introItems[t];void 0!==this._hintClickCallback&&this._hintClickCallback.call(this,e,n,t);var i=_r.call(this);if(parseInt(i,10)!==t){var o=Ko("div",{className:"introjs-tooltip"}),r=Ko("div"),a=Ko("div"),l=Ko("div");o.onclick=function(t){t.stopPropagation?t.stopPropagation():t.cancelBubble=!0},r.className="introjs-tooltiptext";var s=Ko("p");if(s.innerHTML=n.hint,r.appendChild(s),this._options.hintShowButton){var c=Ko("a");c.className=this._options.buttonClass,c.setAttribute("role","button"),c.innerHTML=this._options.hintButtonLabel,c.onclick=fr.bind(this,t),r.appendChild(c)}a.className="introjs-arrow",o.appendChild(a),o.appendChild(r),this._currentStep=e.getAttribute("data-step"),l.className="introjs-tooltipReferenceLayer introjs-hintReference",l.setAttribute("data-step",e.getAttribute("data-step")),po.call(this,l),l.appendChild(o),document.body.appendChild(l),Vo.call(this,e,o,a,!0)}}function _r(){var t=document.querySelector(".introjs-hintReference");if(t){var e=t.getAttribute("data-step");return t.parentNode.removeChild(t),e}}function xr(t){var e=this;if(this._introItems=[],this._options.hints)n(this._options.hints,(function(t){var n=ur(t);"string"==typeof n.element&&(n.element=document.querySelector(n.element)),n.hintPosition=n.hintPosition||e._options.hintPosition,n.hintAnimation=n.hintAnimation||e._options.hintAnimation,null!==n.element&&e._introItems.push(n)}));else{var o=t.querySelectorAll("*[data-hint]");if(!o||!o.length)return!1;n(o,(function(t){var n=t.getAttribute("data-hint-animation");n=n?"true"===n:e._options.hintAnimation,e._introItems.push({element:t,hint:t.getAttribute("data-hint"),hintPosition:t.getAttribute("data-hint-position")||e._options.hintPosition,hintAnimation:n,tooltipClass:t.getAttribute("data-tooltip-class"),position:t.getAttribute("data-position")||e._options.tooltipPosition})}))}mr.call(this),i.on(document,"click",_r,this,!1),i.on(window,"resize",Sr,this,!0)}function Sr(){var t=this;n(this._introItems,(function(e){var n=e.targetElement,i=e.hintPosition,o=e.element;void 0!==n&&yr.call(t,i,o,n)}))}He({target:"Array",proto:!0,forced:!Mo},{splice:function(t,e){var n,i,o,r,a,l,s=at(this),c=me(s),u=ge(t,c),h=arguments.length;if(0===h?n=i=0:1===h?(n=0,i=c-u):(n=h-2,i=$o(Fo(fe(e),0),c-u)),c+n-i>Do)throw Ho(zo);for(o=Zn(s,i),r=0;r<i;r++)(a=u+r)in s&&$n(o,r,s[a]);if(o.length=i,n<i){for(r=u;r<c-i;r++)l=r+n,(a=r+i)in s?s[l]=s[a]:delete s[l];for(r=c;r>c-i+n;r--)delete s[r-1]}else if(n>i)for(r=c-i;r>u;r--)l=r+n-1,(a=r+i-1)in s?s[l]=s[a]:delete s[l];for(r=0;r<n;r++)s[r+u]=arguments[r+2];return s.length=c-i+n,o}});var jr=Math.floor,Cr=function(t,e){var n=t.length,i=jr(n/2);return n<8?kr(t,e):Er(t,Cr(Ai(t,0,i),e),Cr(Ai(t,i),e),e)},kr=function(t,e){for(var n,i,o=t.length,r=1;r<o;){for(i=r,n=t[r];i&&e(t[i-1],n)>0;)t[i]=t[--i];i!==r++&&(t[i]=n)}return t},Er=function(t,e,n,i){for(var o=e.length,r=n.length,a=0,l=0;a<o||l<r;)t[a+l]=a<o&&l<r?i(e[a],n[l])<=0?e[a++]:n[l++]:a<o?e[a++]:n[l++];return t},Ar=Cr,Ir=M.match(/firefox\/(\d+)/i),Tr=!!Ir&&+Ir[1],Nr=/MSIE|Trident/.test(M),Or=M.match(/AppleWebKit\/(\d+)\./),Pr=!!Or&&+Or[1],Lr=[],Rr=S(Lr.sort),qr=S(Lr.push),Br=u((function(){Lr.sort(void 0)})),Mr=u((function(){Lr.sort(null)})),Hr=Ao("sort"),Fr=!u((function(){if(z)return z<70;if(!(Tr&&Tr>3)){if(Nr)return!0;if(Pr)return Pr<603;var t,e,n,i,o="";for(t=65;t<76;t++){switch(e=String.fromCharCode(t),t){case 66:case 69:case 70:case 72:n=3;break;case 68:case 71:n=4;break;default:n=2}for(i=0;i<47;i++)Lr.push({k:e+i,v:n})}for(Lr.sort((function(t,e){return e.v-t.v})),i=0;i<Lr.length;i++)e=Lr[i].k.charAt(0),o.charAt(o.length-1)!==e&&(o+=e);return"DGBEFHACIJK"!==o}}));function $r(t){var e=this,i=t.querySelectorAll("*[data-intro]"),o=[];if(this._options.steps)n(this._options.steps,(function(t){var n=ur(t);if(n.step=o.length+1,n.title=n.title||"","string"==typeof n.element&&(n.element=document.querySelector(n.element)),void 0===n.element||null===n.element){var i=document.querySelector(".introjsFloatingElement");null===i&&(i=Ko("div",{className:"introjsFloatingElement"}),document.body.appendChild(i)),n.element=i,n.position="floating"}n.position=n.position||e._options.tooltipPosition,n.scrollTo=n.scrollTo||e._options.scrollTo,void 0===n.disableInteraction&&(n.disableInteraction=e._options.disableInteraction),null!==n.element&&o.push(n)}));else{var r;if(i.length<1)return[];n(i,(function(t){if((!e._options.group||t.getAttribute("data-intro-group")===e._options.group)&&"none"!==t.style.display){var n=parseInt(t.getAttribute("data-step"),10);r=t.hasAttribute("data-disable-interaction")?!!t.getAttribute("data-disable-interaction"):e._options.disableInteraction,n>0&&(o[n-1]={element:t,title:t.getAttribute("data-title")||"",intro:t.getAttribute("data-intro"),step:parseInt(t.getAttribute("data-step"),10),tooltipClass:t.getAttribute("data-tooltip-class"),highlightClass:t.getAttribute("data-highlight-class"),position:t.getAttribute("data-position")||e._options.tooltipPosition,scrollTo:t.getAttribute("data-scroll-to")||e._options.scrollTo,disableInteraction:r})}}));var a=0;n(i,(function(t){if((!e._options.group||t.getAttribute("data-intro-group")===e._options.group)&&null===t.getAttribute("data-step")){for(;void 0!==o[a];)a++;r=t.hasAttribute("data-disable-interaction")?!!t.getAttribute("data-disable-interaction"):e._options.disableInteraction,o[a]={element:t,title:t.getAttribute("data-title")||"",intro:t.getAttribute("data-intro"),step:a+1,tooltipClass:t.getAttribute("data-tooltip-class"),highlightClass:t.getAttribute("data-highlight-class"),position:t.getAttribute("data-position")||e._options.tooltipPosition,scrollTo:t.getAttribute("data-scroll-to")||e._options.scrollTo,disableInteraction:r}}}))}for(var l=[],s=0;s<o.length;s++)o[s]&&l.push(o[s]);return(o=l).sort((function(t,e){return t.step-e.step})),o}function Dr(t){var e=document.querySelector(".introjs-tooltipReferenceLayer"),n=document.querySelector(".introjs-helperLayer"),i=document.querySelector(".introjs-disableInteraction");if(po.call(this,n),po.call(this,e),po.call(this,i),t&&(this._introItems=$r.call(this,this._targetElement),Zo.call(this,e,this._introItems[this._currentStep]),nr.call(this,e)),void 0!==this._currentStep&&null!==this._currentStep){var o=document.querySelector(".introjs-arrow"),r=document.querySelector(".introjs-tooltip");r&&o&&Vo.call(this,this._introItems[this._currentStep].element,r,o)}return Sr.call(this),this}function zr(){Dr.call(this)}function Gr(t,e){if(t&&t.parentElement){var n=t.parentElement;e?(fo(t,{opacity:"0"}),window.setTimeout((function(){try{n.removeChild(t)}catch(t){}}),500)):n.removeChild(t)}}function Wr(t,e){var o=!0;if(void 0!==this._introBeforeExitCallback&&(o=this._introBeforeExitCallback.call(this)),e||!1!==o){var r=t.querySelectorAll(".introjs-overlay");r&&r.length&&n(r,(function(t){return Gr(t)})),Gr(t.querySelector(".introjs-helperLayer"),!0),Gr(t.querySelector(".introjs-tooltipReferenceLayer")),Gr(t.querySelector(".introjs-disableInteraction")),Gr(document.querySelector(".introjsFloatingElement")),Uo(),i.off(window,"keydown",cr,this,!0),i.off(window,"resize",zr,this,!0),void 0!==this._introExitCallback&&this._introExitCallback.call(this),this._currentStep=void 0}}function Vr(t){var e=this,n=Ko("div",{className:"introjs-overlay"});return fo(n,{top:0,bottom:0,left:0,right:0,position:"fixed"}),t.appendChild(n),!0===this._options.exitOnOverlayClick&&(fo(n,{cursor:"pointer"}),n.onclick=function(){Wr.call(e,t)}),!0}function Ur(t){void 0!==this._introStartCallback&&this._introStartCallback.call(this,t);var e=$r.call(this,t);return 0===e.length||(this._introItems=e,Vr.call(this,t)&&(ar.call(this),this._options.keyboardNavigation&&i.on(window,"keydown",cr,this,!0),i.on(window,"resize",zr,this,!0))),!1}He({target:"Array",proto:!0,forced:Br||!Mr||!Hr||!Fr},{sort:function(t){void 0!==t&&J(t);var e=at(this);if(Fr)return void 0===t?Rr(e):Rr(e,t);var n,i,o=[],r=me(e);for(i=0;i<r;i++)i in e&&qr(o,e[i]);for(Ar(o,function(t){return function(e,n){return void 0===n?-1:void 0===e?1:void 0!==t?+t(e,n)||0:Ke(e)>Ke(n)?1:-1}}(t)),n=o.length,i=0;i<n;)e[i]=o[i++];for(;i<r;)delete e[i++];return e}});function Kr(t){this._targetElement=t,this._introItems=[],this._options={nextLabel:"Next",prevLabel:"Back",skipLabel:"×",doneLabel:"Done",hidePrev:!1,hideNext:!1,nextToDone:!0,tooltipPosition:"bottom",tooltipClass:"",group:"",highlightClass:"",exitOnEsc:!0,exitOnOverlayClick:!0,showStepNumbers:!1,keyboardNavigation:!0,showButtons:!0,showBullets:!0,showProgress:!1,scrollToElement:!0,scrollTo:"element",scrollPadding:30,overlayOpacity:.5,autoPosition:!0,positionPrecedence:["bottom","top","right","left"],disableInteraction:!1,helperElementPadding:10,hintPosition:"top-middle",hintButtonLabel:"Got it",hintShowButton:!0,hintAutoRefreshInterval:10,hintAnimation:!0,buttonClass:"introjs-button",progressBarAdditionalClass:!1}}var Yr=function n(i){var o;if("object"===t(i))o=new Kr(i);else if("string"==typeof i){var r=document.querySelector(i);if(!r)throw new Error("There is no element with given selector.");o=new Kr(r)}else o=new Kr(document.body);return n.instances[e(o,"introjs-instance")]=o,o};return Yr.version="5.0.0",Yr.instances={},Yr.fn=Kr.prototype={clone:function(){return new Kr(this)},setOption:function(t,e){return this._options[t]=e,this},setOptions:function(t){return this._options=function(t,e){var n,i={};for(n in t)i[n]=t[n];for(n in e)i[n]=e[n];return i}(this._options,t),this},start:function(){return Ur.call(this,this._targetElement),this},goToStep:function(t){return or.call(this,t),this},addStep:function(t){return this._options.steps||(this._options.steps=[]),this._options.steps.push(t),this},addSteps:function(t){if(t.length){for(var e=0;e<t.length;e++)this.addStep(t[e]);return this}},goToStepNumber:function(t){return rr.call(this,t),this},nextStep:function(){return ar.call(this),this},previousStep:function(){return lr.call(this),this},currentStep:function(){return sr.call(this)},exit:function(t){return Wr.call(this,this._targetElement,t),this},refresh:function(t){return Dr.call(this,t),this},onbeforechange:function(t){if("function"!=typeof t)throw new Error("Provided callback for onbeforechange was not a function");return this._introBeforeChangeCallback=t,this},onchange:function(t){if("function"!=typeof t)throw new Error("Provided callback for onchange was not a function.");return this._introChangeCallback=t,this},onafterchange:function(t){if("function"!=typeof t)throw new Error("Provided callback for onafterchange was not a function");return this._introAfterChangeCallback=t,this},oncomplete:function(t){if("function"!=typeof t)throw new Error("Provided callback for oncomplete was not a function.");return this._introCompleteCallback=t,this},onhintsadded:function(t){if("function"!=typeof t)throw new Error("Provided callback for onhintsadded was not a function.");return this._hintsAddedCallback=t,this},onhintclick:function(t){if("function"!=typeof t)throw new Error("Provided callback for onhintclick was not a function.");return this._hintClickCallback=t,this},onhintclose:function(t){if("function"!=typeof t)throw new Error("Provided callback for onhintclose was not a function.");return this._hintCloseCallback=t,this},onstart:function(t){if("function"!=typeof t)throw new Error("Provided callback for onstart was not a function.");return this._introStartCallback=t,this},onexit:function(t){if("function"!=typeof t)throw new Error("Provided callback for onexit was not a function.");return this._introExitCallback=t,this},onskip:function(t){if("function"!=typeof t)throw new Error("Provided callback for onskip was not a function.");return this._introSkipCallback=t,this},onbeforeexit:function(t){if("function"!=typeof t)throw new Error("Provided callback for onbeforeexit was not a function.");return this._introBeforeExitCallback=t,this},addHints:function(){return xr.call(this,this._targetElement),this},hideHint:function(t){return fr.call(this,t),this},hideHints:function(){return pr.call(this),this},showHint:function(t){return gr.call(this,t),this},showHints:function(){return dr.call(this),this},removeHints:function(){return vr.call(this),this},removeHint:function(t){return br().call(this,t),this},showHintDialog:function(t){return wr.call(this,t),this}},Yr}));
|
admin/js/speed-booster-pack-admin.js
CHANGED
@@ -282,4 +282,15 @@
|
|
282 |
});
|
283 |
});
|
284 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
285 |
})(jQuery);
|
282 |
});
|
283 |
});
|
284 |
|
285 |
+
$(document).on('click', '.sbp-dismiss-ccm-notice', function() {
|
286 |
+
$.ajax({
|
287 |
+
type: 'GET',
|
288 |
+
url: ajaxurl,
|
289 |
+
data: {action: 'sbp_clear_ccm', 'nonce': sbp_ajax_vars.nonce},
|
290 |
+
success: function(response) {
|
291 |
+
// Nothing?
|
292 |
+
}
|
293 |
+
})
|
294 |
+
});
|
295 |
+
|
296 |
})(jQuery);
|
includes/class-speed-booster-pack.php
CHANGED
@@ -23,6 +23,7 @@ use SpeedBooster\SBP_CDN;
|
|
23 |
use SpeedBooster\SBP_Compatibility_Checker;
|
24 |
use SpeedBooster\SBP_Critical_CSS;
|
25 |
use SpeedBooster\SBP_CSS_Minifier;
|
|
|
26 |
use SpeedBooster\SBP_Custom_Code_Manager;
|
27 |
use SpeedBooster\SBP_Database_Optimizer;
|
28 |
use SpeedBooster\SBP_Image_Dimensions;
|
@@ -37,6 +38,7 @@ use SpeedBooster\SBP_Migrator;
|
|
37 |
use SpeedBooster\SBP_Newsletter;
|
38 |
use SpeedBooster\SBP_Notice_Manager;
|
39 |
use SpeedBooster\SBP_Preboost;
|
|
|
40 |
use SpeedBooster\SBP_Special;
|
41 |
use SpeedBooster\SBP_Cloudflare;
|
42 |
use SpeedBooster\SBP_Sucuri;
|
@@ -176,7 +178,9 @@ class Speed_Booster_Pack {
|
|
176 |
new SBP_Image_Dimensions();
|
177 |
new SBP_HTML_Minifier();
|
178 |
new SBP_Localize_Tracker();
|
|
|
179 |
new SBP_Special();
|
|
|
180 |
new SBP_Custom_Code_Manager();
|
181 |
new SBP_Cloudflare();
|
182 |
new SBP_Notice_Manager();
|
@@ -281,6 +285,8 @@ class Speed_Booster_Pack {
|
|
281 |
$plugin_public = new Speed_Booster_Pack_Public( $this->get_plugin_name(), $this->get_version() );
|
282 |
|
283 |
$this->loader->add_action( 'template_redirect', $plugin_public, 'template_redirect', 9999999 );
|
|
|
|
|
284 |
}
|
285 |
|
286 |
/**
|
23 |
use SpeedBooster\SBP_Compatibility_Checker;
|
24 |
use SpeedBooster\SBP_Critical_CSS;
|
25 |
use SpeedBooster\SBP_CSS_Minifier;
|
26 |
+
// Z_TODO: Remove use
|
27 |
use SpeedBooster\SBP_Custom_Code_Manager;
|
28 |
use SpeedBooster\SBP_Database_Optimizer;
|
29 |
use SpeedBooster\SBP_Image_Dimensions;
|
38 |
use SpeedBooster\SBP_Newsletter;
|
39 |
use SpeedBooster\SBP_Notice_Manager;
|
40 |
use SpeedBooster\SBP_Preboost;
|
41 |
+
// Z_TODO: Remove use
|
42 |
use SpeedBooster\SBP_Special;
|
43 |
use SpeedBooster\SBP_Cloudflare;
|
44 |
use SpeedBooster\SBP_Sucuri;
|
178 |
new SBP_Image_Dimensions();
|
179 |
new SBP_HTML_Minifier();
|
180 |
new SBP_Localize_Tracker();
|
181 |
+
// Z_TODO: Remove instance
|
182 |
new SBP_Special();
|
183 |
+
// Z_TODO: Remove instance
|
184 |
new SBP_Custom_Code_Manager();
|
185 |
new SBP_Cloudflare();
|
186 |
new SBP_Notice_Manager();
|
285 |
$plugin_public = new Speed_Booster_Pack_Public( $this->get_plugin_name(), $this->get_version() );
|
286 |
|
287 |
$this->loader->add_action( 'template_redirect', $plugin_public, 'template_redirect', 9999999 );
|
288 |
+
|
289 |
+
$this->loader->add_filter( 'wp_headers', $plugin_public, 'sbp_headers' );
|
290 |
}
|
291 |
|
292 |
/**
|
includes/classes/class-sbp-advanced-cache-generator.php
CHANGED
@@ -102,6 +102,7 @@ if ( count( $exclude_urls ) > 0 && in_array( $current_url, $exclude_urls ) ) {
|
|
102 |
}
|
103 |
|
104 |
// output cached file
|
|
|
105 |
readfile( $cache_file_path );
|
106 |
exit;
|
107 |
|
102 |
}
|
103 |
|
104 |
// output cached file
|
105 |
+
header("X-Powered-By: ' . SBP_PLUGIN_NAME . ' v" ' . SBP_VERSION . ');
|
106 |
readfile( $cache_file_path );
|
107 |
exit;
|
108 |
|
includes/classes/class-sbp-cdn.php
CHANGED
@@ -18,7 +18,7 @@ class SBP_CDN extends SBP_Abstract_Module {
|
|
18 |
public function __construct() {
|
19 |
parent::__construct();
|
20 |
|
21 |
-
if ( ! sbp_get_option( 'cdn_url' ) ) {
|
22 |
return;
|
23 |
}
|
24 |
|
18 |
public function __construct() {
|
19 |
parent::__construct();
|
20 |
|
21 |
+
if ( ! sbp_get_option( 'cdn_url' ) || ! sbp_get_option( 'cdn_enable' ) ) {
|
22 |
return;
|
23 |
}
|
24 |
|
includes/classes/class-sbp-custom-code-manager.php
CHANGED
@@ -7,67 +7,36 @@ if ( ! defined( 'WPINC' ) ) {
|
|
7 |
die;
|
8 |
}
|
9 |
|
|
|
10 |
class SBP_Custom_Code_Manager extends SBP_Abstract_Module {
|
11 |
|
12 |
public function __construct() {
|
13 |
-
|
14 |
-
|
15 |
-
if ( ! sbp_get_option( 'module_special' ) ) {
|
16 |
-
return;
|
17 |
-
}
|
18 |
-
|
19 |
-
add_action( 'set_current_user', [ $this, 'run_class' ] );
|
20 |
-
}
|
21 |
-
|
22 |
-
public function run_class() {
|
23 |
-
if ( $this->should_sbp_run ) {
|
24 |
-
$this->add_script_tags();
|
25 |
-
}
|
26 |
}
|
27 |
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
add_action( $hook,
|
42 |
-
function () use ( $script ) {
|
43 |
-
|
44 |
-
$output = '<script type="text/javascript">' . PHP_EOL;
|
45 |
-
|
46 |
-
if ( ! isset( $script['custom_codes_method'] ) ) {
|
47 |
-
$script['custom_codes_method'] = null;
|
48 |
-
}
|
49 |
-
|
50 |
-
switch ( $script['custom_codes_method'] ) {
|
51 |
-
case "onload":
|
52 |
-
$output .= 'window.addEventListener( \'DOMContentLoaded\', function(e) {' . PHP_EOL;
|
53 |
-
$output .= $script['custom_codes_item'] . PHP_EOL;
|
54 |
-
$output .= '});' . PHP_EOL;
|
55 |
-
break;
|
56 |
-
case "delayed":
|
57 |
-
$output .= 'window.addEventListener( \'DOMContentLoaded\', function(e) { setTimeout(function(){' . PHP_EOL;
|
58 |
-
$output .= $script['custom_codes_item'] . PHP_EOL;
|
59 |
-
$output .= '},4000);});' . PHP_EOL;
|
60 |
-
break;
|
61 |
-
default:
|
62 |
-
$output .= $script['custom_codes_item'];
|
63 |
-
break;
|
64 |
-
}
|
65 |
|
66 |
-
|
67 |
|
68 |
-
|
69 |
-
|
|
|
70 |
}
|
|
|
|
|
|
|
71 |
}
|
72 |
}
|
73 |
|
7 |
die;
|
8 |
}
|
9 |
|
10 |
+
// Z_TODO: Remove The Class
|
11 |
class SBP_Custom_Code_Manager extends SBP_Abstract_Module {
|
12 |
|
13 |
public function __construct() {
|
14 |
+
add_action( 'wp_ajax_sbp_clear_ccm', [ $this, 'clear_custom_codes' ] );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
15 |
}
|
16 |
|
17 |
+
public function clear_custom_codes() {
|
18 |
+
if (
|
19 |
+
current_user_can( 'manage_options' ) &&
|
20 |
+
isset( $_GET['action'] ) &&
|
21 |
+
$_GET['action'] === 'sbp_clear_ccm'
|
22 |
+
) {
|
23 |
+
if ( ! wp_verify_nonce( $_GET['nonce'], 'sbp_ajax_nonce' ) ) {
|
24 |
+
echo wp_json_encode( [
|
25 |
+
'status' => 'failure',
|
26 |
+
'message' => __( 'Invalid nonce.', 'speed-booster-pack' ),
|
27 |
+
] );
|
28 |
+
wp_die();
|
29 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
30 |
|
31 |
+
$options = get_option( 'sbp_options' );
|
32 |
|
33 |
+
if ( $options ) {
|
34 |
+
unset( $options['custom_codes'] );
|
35 |
+
update_option( 'sbp_options', $options );
|
36 |
}
|
37 |
+
|
38 |
+
echo wp_json_encode( [ 'status' => 'success', 'message' => 'Custom codes successfully removed.' ] );
|
39 |
+
wp_die();
|
40 |
}
|
41 |
}
|
42 |
|
includes/classes/class-sbp-font-optimizer.php
CHANGED
@@ -10,8 +10,8 @@ if ( ! defined( 'WPINC' ) ) {
|
|
10 |
class SBP_Font_Optimizer extends SBP_Abstract_Module {
|
11 |
private $families = [];
|
12 |
private $subsets = [];
|
13 |
-
|
14 |
private $css2_families = [];
|
|
|
15 |
|
16 |
public function __construct() {
|
17 |
parent::__construct();
|
@@ -34,9 +34,13 @@ class SBP_Font_Optimizer extends SBP_Abstract_Module {
|
|
34 |
if ( is_embed() ) {
|
35 |
return $html;
|
36 |
}
|
37 |
-
|
38 |
$html = $this->process_google_fonts_api( $html );
|
39 |
$html = $this->process_new_google_fonts_api( $html );
|
|
|
|
|
|
|
|
|
40 |
|
41 |
$html = preg_replace( "/<link[^<>\/]+href=['\"?]((https?:)?\/\/fonts\.googleapis\.com\/css\?(.*?))['\"?].*?>/i", '', $html );
|
42 |
$link_tag = $this->create_tag();
|
@@ -47,7 +51,8 @@ class SBP_Font_Optimizer extends SBP_Abstract_Module {
|
|
47 |
|
48 |
public function process_google_fonts_api( $html ) {
|
49 |
preg_match_all( "/<link[^<>\/]+href=['\"?]((https?:)?\/\/fonts\.googleapis\.com\/css\?(.*?))['\"?].*?>/is", $html, $matches );
|
50 |
-
if ( ! isset( $matches[1] ) || empty( $matches[1] ) ) {
|
|
|
51 |
return $html;
|
52 |
}
|
53 |
|
@@ -72,6 +77,7 @@ class SBP_Font_Optimizer extends SBP_Abstract_Module {
|
|
72 |
public function process_new_google_fonts_api( $html ) {
|
73 |
preg_match_all( "/<link[^<>\/]+href=['\"?]((https?:)?\/\/fonts\.googleapis\.com\/css2\?(.*?))['\"?].*?>/is", $html, $matches );
|
74 |
if ( ! isset( $matches[1] ) || empty( $matches[1] ) ) {
|
|
|
75 |
return $html;
|
76 |
}
|
77 |
|
10 |
class SBP_Font_Optimizer extends SBP_Abstract_Module {
|
11 |
private $families = [];
|
12 |
private $subsets = [];
|
|
|
13 |
private $css2_families = [];
|
14 |
+
private $found_fonts = true;
|
15 |
|
16 |
public function __construct() {
|
17 |
parent::__construct();
|
34 |
if ( is_embed() ) {
|
35 |
return $html;
|
36 |
}
|
37 |
+
|
38 |
$html = $this->process_google_fonts_api( $html );
|
39 |
$html = $this->process_new_google_fonts_api( $html );
|
40 |
+
|
41 |
+
if ( ! $this->found_fonts ) {
|
42 |
+
return $html;
|
43 |
+
}
|
44 |
|
45 |
$html = preg_replace( "/<link[^<>\/]+href=['\"?]((https?:)?\/\/fonts\.googleapis\.com\/css\?(.*?))['\"?].*?>/i", '', $html );
|
46 |
$link_tag = $this->create_tag();
|
51 |
|
52 |
public function process_google_fonts_api( $html ) {
|
53 |
preg_match_all( "/<link[^<>\/]+href=['\"?]((https?:)?\/\/fonts\.googleapis\.com\/css\?(.*?))['\"?].*?>/is", $html, $matches );
|
54 |
+
if ( ! isset( $matches[1] ) || empty( $matches[1] ) ) {
|
55 |
+
$this->found_fonts = false;
|
56 |
return $html;
|
57 |
}
|
58 |
|
77 |
public function process_new_google_fonts_api( $html ) {
|
78 |
preg_match_all( "/<link[^<>\/]+href=['\"?]((https?:)?\/\/fonts\.googleapis\.com\/css2\?(.*?))['\"?].*?>/is", $html, $matches );
|
79 |
if ( ! isset( $matches[1] ) || empty( $matches[1] ) ) {
|
80 |
+
$this->found_fonts = false;
|
81 |
return $html;
|
82 |
}
|
83 |
|
includes/classes/class-sbp-image-dimensions.php
CHANGED
@@ -25,12 +25,14 @@ class SBP_Image_Dimensions extends SBP_Abstract_Module {
|
|
25 |
$dom = new HtmlDocument();
|
26 |
$dom->load( $html, true, false );
|
27 |
$site_url = get_option( 'siteurl' );
|
|
|
28 |
|
29 |
$images = $dom->find('img');
|
30 |
if ( $images ) {
|
31 |
foreach ( $images as &$image ) {
|
32 |
if ( ! isset( $image->width ) || ! isset( $image->height ) ) {
|
33 |
$src = $image->hasAttribute('data-src') ? $image->getAttribute('data-src') : $image->getAttribute('src');
|
|
|
34 |
$path = sbp_remove_leading_string( $src, $site_url );
|
35 |
$image_path = ABSPATH . $path;
|
36 |
if ( file_exists( $image_path ) ) {
|
25 |
$dom = new HtmlDocument();
|
26 |
$dom->load( $html, true, false );
|
27 |
$site_url = get_option( 'siteurl' );
|
28 |
+
$site_url = SBP_Utils::remove_protocol( $site_url );
|
29 |
|
30 |
$images = $dom->find('img');
|
31 |
if ( $images ) {
|
32 |
foreach ( $images as &$image ) {
|
33 |
if ( ! isset( $image->width ) || ! isset( $image->height ) ) {
|
34 |
$src = $image->hasAttribute('data-src') ? $image->getAttribute('data-src') : $image->getAttribute('src');
|
35 |
+
$src = SBP_Utils::remove_protocol( $src );
|
36 |
$path = sbp_remove_leading_string( $src, $site_url );
|
37 |
$image_path = ABSPATH . $path;
|
38 |
if ( file_exists( $image_path ) ) {
|
includes/classes/class-sbp-litespeed-cache.php
CHANGED
@@ -10,13 +10,16 @@ if ( ! defined( 'WPINC' ) ) {
|
|
10 |
class SBP_LiteSpeed_Cache extends SBP_Base_Cache {
|
11 |
const ROOT_MARKER = 'SBP_LS_CACHE';
|
12 |
|
|
|
|
|
13 |
public function __construct() {
|
14 |
parent::__construct();
|
15 |
if ( SBP_Utils::is_litespeed() ) {
|
16 |
add_action( 'init', [ $this, 'clear_lscache_request' ] );
|
|
|
17 |
add_action( 'admin_bar_menu', [ $this, 'add_admin_bar_links' ], 90 );
|
18 |
-
add_filter( 'sbp_output_buffer', [ $this, 'set_headers' ] );
|
19 |
add_action( 'csf_sbp_options_saved', [ $this, 'send_clear_cache_header' ] );
|
|
|
20 |
$this->clear_cache_hooks();
|
21 |
}
|
22 |
}
|
@@ -33,8 +36,10 @@ class SBP_LiteSpeed_Cache extends SBP_Base_Cache {
|
|
33 |
'title' => __( 'Clear LiteSpeed Cache', 'speed-booster-pack' ),
|
34 |
'href' => $clear_lscache_url,
|
35 |
];
|
36 |
-
|
37 |
-
|
|
|
|
|
38 |
}
|
39 |
}
|
40 |
|
@@ -123,39 +128,41 @@ class SBP_LiteSpeed_Cache extends SBP_Base_Cache {
|
|
123 |
}
|
124 |
|
125 |
if ( $tags ) {
|
126 |
-
|
127 |
}
|
128 |
}
|
129 |
|
130 |
-
public function set_headers(
|
131 |
if ( ! sbp_get_option( 'module_caching_ls' ) ) {
|
132 |
-
|
133 |
} else {
|
134 |
// Multiply by 3600 because we store this value in hours but this value should be converted to seconds here
|
135 |
$cache_expire_time = sbp_get_option( 'caching_ls_expiry', 10 ) * HOUR_IN_SECONDS;
|
136 |
|
137 |
// Check for all exclusions
|
138 |
if ( true === $this->should_bypass_cache( [ 'is_logged_in', 'include_query_strings', 'check_cookies' ] ) ) {
|
139 |
-
|
140 |
} else {
|
141 |
if ( ! sbp_get_option( 'caching_ls_cache_logged_in_users' ) && is_user_logged_in() ) {
|
142 |
-
|
143 |
} else {
|
144 |
$this->add_tags();
|
145 |
|
146 |
if (is_user_logged_in()) {
|
147 |
-
|
148 |
-
|
149 |
} else {
|
150 |
-
|
151 |
-
$html .= '<!-- LiteSpeed cache controlled by ' . SBP_PLUGIN_NAME . ' -->';
|
152 |
}
|
153 |
}
|
154 |
-
|
155 |
}
|
156 |
}
|
157 |
|
158 |
-
|
|
|
|
|
|
|
|
|
159 |
}
|
160 |
|
161 |
private function clear_cache_hooks() {
|
@@ -198,6 +205,14 @@ class SBP_LiteSpeed_Cache extends SBP_Base_Cache {
|
|
198 |
@header( 'X-LiteSpeed-Purge: private, *; public, *' );
|
199 |
}
|
200 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
201 |
// B_TODO: We are currently not supporting this feature on LiteSpeed Cache
|
202 |
// public function clear_post_by_comment( $comment_id ) {
|
203 |
// $comment = get_comment( $comment_id );
|
10 |
class SBP_LiteSpeed_Cache extends SBP_Base_Cache {
|
11 |
const ROOT_MARKER = 'SBP_LS_CACHE';
|
12 |
|
13 |
+
private $headers = [];
|
14 |
+
|
15 |
public function __construct() {
|
16 |
parent::__construct();
|
17 |
if ( SBP_Utils::is_litespeed() ) {
|
18 |
add_action( 'init', [ $this, 'clear_lscache_request' ] );
|
19 |
+
add_action( 'init', [ $this, 'set_headers' ] );
|
20 |
add_action( 'admin_bar_menu', [ $this, 'add_admin_bar_links' ], 90 );
|
|
|
21 |
add_action( 'csf_sbp_options_saved', [ $this, 'send_clear_cache_header' ] );
|
22 |
+
add_filter( 'sbp_output_buffer', [ $this, 'add_cache_signature' ] );
|
23 |
$this->clear_cache_hooks();
|
24 |
}
|
25 |
}
|
36 |
'title' => __( 'Clear LiteSpeed Cache', 'speed-booster-pack' ),
|
37 |
'href' => $clear_lscache_url,
|
38 |
];
|
39 |
+
|
40 |
+
if ( sbp_get_option( 'module_caching_ls' ) ) {
|
41 |
+
$admin_bar->add_node( $sbp_admin_menu );
|
42 |
+
}
|
43 |
}
|
44 |
}
|
45 |
|
128 |
}
|
129 |
|
130 |
if ( $tags ) {
|
131 |
+
$this->headers['X-LiteSpeed-Tag'] = implode( ',', $tags );
|
132 |
}
|
133 |
}
|
134 |
|
135 |
+
public function set_headers() {
|
136 |
if ( ! sbp_get_option( 'module_caching_ls' ) ) {
|
137 |
+
$this->headers['X-LiteSpeed-Cache-Control'] = 'no-cache';
|
138 |
} else {
|
139 |
// Multiply by 3600 because we store this value in hours but this value should be converted to seconds here
|
140 |
$cache_expire_time = sbp_get_option( 'caching_ls_expiry', 10 ) * HOUR_IN_SECONDS;
|
141 |
|
142 |
// Check for all exclusions
|
143 |
if ( true === $this->should_bypass_cache( [ 'is_logged_in', 'include_query_strings', 'check_cookies' ] ) ) {
|
144 |
+
$this->headers['X-LiteSpeed-Cache-Control'] = 'no-cache';
|
145 |
} else {
|
146 |
if ( ! sbp_get_option( 'caching_ls_cache_logged_in_users' ) && is_user_logged_in() ) {
|
147 |
+
$this->headers['X-LiteSpeed-Cache-Control'] = 'no-cache';
|
148 |
} else {
|
149 |
$this->add_tags();
|
150 |
|
151 |
if (is_user_logged_in()) {
|
152 |
+
$this->headers['X-LiteSpeed-Cache-Control'] = 'private,max-age=' . $cache_expire_time;
|
153 |
+
$this->headers['X-LiteSpeed-Vary'] = 'cookie=wordpress_logged_in_' . COOKIEHASH;
|
154 |
} else {
|
155 |
+
$this->headers['X-LiteSpeed-Cache-Control'] = 'public,max-age=' . $cache_expire_time;
|
|
|
156 |
}
|
157 |
}
|
|
|
158 |
}
|
159 |
}
|
160 |
|
161 |
+
add_filter( 'wp_headers', [ $this, 'send_headers' ] );
|
162 |
+
}
|
163 |
+
|
164 |
+
public function send_headers($headers) {
|
165 |
+
return array_merge($headers, $this->headers);
|
166 |
}
|
167 |
|
168 |
private function clear_cache_hooks() {
|
205 |
@header( 'X-LiteSpeed-Purge: private, *; public, *' );
|
206 |
}
|
207 |
|
208 |
+
public function add_cache_signature( $html ) {
|
209 |
+
if ( SBP_Utils::is_litespeed() && sbp_get_option( 'module_caching_ls' ) ) {
|
210 |
+
$html .= '<!-- LiteSpeed cache managed by ' . SBP_PLUGIN_NAME . ' -->';
|
211 |
+
}
|
212 |
+
|
213 |
+
return $html;
|
214 |
+
}
|
215 |
+
|
216 |
// B_TODO: We are currently not supporting this feature on LiteSpeed Cache
|
217 |
// public function clear_post_by_comment( $comment_id ) {
|
218 |
// $comment = get_comment( $comment_id );
|
includes/classes/class-sbp-localize-tracker.php
CHANGED
@@ -19,7 +19,7 @@ class SBP_Localize_Tracker extends SBP_Abstract_Module {
|
|
19 |
public function __construct() {
|
20 |
parent::__construct();
|
21 |
|
22 |
-
if ( ! sbp_get_option( '
|
23 |
return;
|
24 |
}
|
25 |
|
19 |
public function __construct() {
|
20 |
parent::__construct();
|
21 |
|
22 |
+
if ( ! sbp_get_option( 'module_assets' ) || ! sbp_get_option( 'localize_tracking_scripts' ) ) {
|
23 |
return;
|
24 |
}
|
25 |
|
includes/classes/class-sbp-migrator.php
CHANGED
@@ -46,6 +46,7 @@ class SBP_Migrator {
|
|
46 |
$this->migrate_from_legacy();
|
47 |
$this->update_js_optimize_options();
|
48 |
$this->apply_cache_settings();
|
|
|
49 |
update_option( 'sbp_migrator_version', SBP_MIGRATOR_VERSION );
|
50 |
}
|
51 |
|
@@ -135,6 +136,13 @@ ga('send', 'pageview');";
|
|
135 |
}
|
136 |
}
|
137 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
138 |
private function enable_external_notices() {
|
139 |
$this->sbp_options['enable_external_notices'] = '1';
|
140 |
}
|
46 |
$this->migrate_from_legacy();
|
47 |
$this->update_js_optimize_options();
|
48 |
$this->apply_cache_settings();
|
49 |
+
$this->migrate_cdn_toggle();
|
50 |
update_option( 'sbp_migrator_version', SBP_MIGRATOR_VERSION );
|
51 |
}
|
52 |
|
136 |
}
|
137 |
}
|
138 |
|
139 |
+
private function migrate_cdn_toggle() {
|
140 |
+
if ( isset( $this->sbp_options['cdn_url'] ) && $this->sbp_options['cdn_url'] ) {
|
141 |
+
$this->sbp_options['cdn_enable'] = 1;
|
142 |
+
update_option( 'sbp_options', $this->sbp_options );
|
143 |
+
}
|
144 |
+
}
|
145 |
+
|
146 |
private function enable_external_notices() {
|
147 |
$this->sbp_options['enable_external_notices'] = '1';
|
148 |
}
|
includes/classes/class-sbp-notice-manager.php
CHANGED
@@ -101,9 +101,15 @@ class SBP_Notice_Manager {
|
|
101 |
|
102 |
public function enqueue_scripts() {
|
103 |
wp_add_inline_script( 'jquery',
|
104 |
-
'jQuery(document).on(\'click\', \'.sbp-notice .notice-dismiss\', function() {
|
105 |
-
|
106 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
107 |
var action = $notice.data(\'notice-action\');
|
108 |
var data = {action: action, notice_id: notice_id};
|
109 |
jQuery.get(ajaxurl, data);
|
101 |
|
102 |
public function enqueue_scripts() {
|
103 |
wp_add_inline_script( 'jquery',
|
104 |
+
'jQuery(document).on(\'click\', \'.sbp-notice .notice-dismiss, .sbp-notice .notice-dismiss-button\', function(e) {
|
105 |
+
if (jQuery(e.target).hasClass("notice-dismiss-button")) {
|
106 |
+
var notice_id = jQuery(this).data(\'notice-id\');
|
107 |
+
var $notice = jQuery("div[data-notice-id=" + notice_id + "]");
|
108 |
+
$notice.stop().slideUp();
|
109 |
+
} else {
|
110 |
+
var $notice = jQuery(this).parent();
|
111 |
+
var notice_id = $notice.data(\'notice-id\');
|
112 |
+
}
|
113 |
var action = $notice.data(\'notice-action\');
|
114 |
var data = {action: action, notice_id: notice_id};
|
115 |
jQuery.get(ajaxurl, data);
|
includes/classes/class-sbp-special.php
CHANGED
@@ -9,6 +9,7 @@ if ( ! defined( 'WPINC' ) ) {
|
|
9 |
die;
|
10 |
}
|
11 |
|
|
|
12 |
class SBP_Special extends SBP_Abstract_Module {
|
13 |
public function __construct() {
|
14 |
parent::__construct();
|
@@ -31,12 +32,14 @@ class SBP_Special extends SBP_Abstract_Module {
|
|
31 |
/**
|
32 |
* Removes WooCommerce scripts from non-woocommerce pages
|
33 |
*/
|
|
|
34 |
private function optimize_nonwc_pages() {
|
35 |
if ( function_exists( 'is_woocommerce' ) && sbp_get_option( 'woocommerce_optimize_nonwc_pages' ) ) {
|
36 |
add_action( 'wp_enqueue_scripts', [ $this, 'optimize_nonwc_pages_handle' ] );
|
37 |
}
|
38 |
}
|
39 |
|
|
|
40 |
public function optimize_nonwc_pages_handle() {
|
41 |
if ( SBP_Utils::is_plugin_active( 'woocommerce/woocommerce.php' ) && sbp_get_option( 'woocommerce_optimize_nonwc_pages' ) ) {
|
42 |
if ( ! is_woocommerce() && ! is_cart() && ! is_checkout() ) {
|
@@ -61,6 +64,7 @@ class SBP_Special extends SBP_Abstract_Module {
|
|
61 |
}
|
62 |
}
|
63 |
|
|
|
64 |
private function woocommerce_disable_cart_fragments() {
|
65 |
if ( sbp_get_option( 'woocommerce_disable_cart_fragments' ) ) {
|
66 |
add_action( 'wp_enqueue_scripts', [ $this, 'woocommerce_disable_cart_fragments_handle' ], 999 );
|
@@ -70,6 +74,7 @@ class SBP_Special extends SBP_Abstract_Module {
|
|
70 |
/**
|
71 |
* Removes cart-fragments.js
|
72 |
*/
|
|
|
73 |
public function woocommerce_disable_cart_fragments_handle() {
|
74 |
if ( SBP_Utils::is_plugin_active( 'woocommerce/woocommerce.php' ) ) {
|
75 |
global $wp_scripts;
|
@@ -88,12 +93,14 @@ class SBP_Special extends SBP_Abstract_Module {
|
|
88 |
/**
|
89 |
* Removes password strength meter in WooCommerce checkout process
|
90 |
*/
|
|
|
91 |
private function remove_wc_password_strength_meter() {
|
92 |
if ( function_exists( 'is_account_page' ) && sbp_get_option( 'woocommerce_disable_password_meter' ) ) {
|
93 |
add_action( 'wp_print_scripts', [ $this, 'remove_wc_password_strength_meter_handle' ], 100 );
|
94 |
}
|
95 |
}
|
96 |
|
|
|
97 |
public function remove_wc_password_strength_meter_handle() {
|
98 |
global $wp;
|
99 |
|
9 |
die;
|
10 |
}
|
11 |
|
12 |
+
// Z_TODO: Remove class in version 4.5
|
13 |
class SBP_Special extends SBP_Abstract_Module {
|
14 |
public function __construct() {
|
15 |
parent::__construct();
|
32 |
/**
|
33 |
* Removes WooCommerce scripts from non-woocommerce pages
|
34 |
*/
|
35 |
+
// Z_TODO: Move this method to WooCommerce class in version 4.5
|
36 |
private function optimize_nonwc_pages() {
|
37 |
if ( function_exists( 'is_woocommerce' ) && sbp_get_option( 'woocommerce_optimize_nonwc_pages' ) ) {
|
38 |
add_action( 'wp_enqueue_scripts', [ $this, 'optimize_nonwc_pages_handle' ] );
|
39 |
}
|
40 |
}
|
41 |
|
42 |
+
// Z_TODO: Move this method to WooCommerce class in version 4.5
|
43 |
public function optimize_nonwc_pages_handle() {
|
44 |
if ( SBP_Utils::is_plugin_active( 'woocommerce/woocommerce.php' ) && sbp_get_option( 'woocommerce_optimize_nonwc_pages' ) ) {
|
45 |
if ( ! is_woocommerce() && ! is_cart() && ! is_checkout() ) {
|
64 |
}
|
65 |
}
|
66 |
|
67 |
+
// Z_TODO: Move this method to WooCommerce class in version 4.5
|
68 |
private function woocommerce_disable_cart_fragments() {
|
69 |
if ( sbp_get_option( 'woocommerce_disable_cart_fragments' ) ) {
|
70 |
add_action( 'wp_enqueue_scripts', [ $this, 'woocommerce_disable_cart_fragments_handle' ], 999 );
|
74 |
/**
|
75 |
* Removes cart-fragments.js
|
76 |
*/
|
77 |
+
// Z_TODO: Move this method to WooCommerce class in version 4.5
|
78 |
public function woocommerce_disable_cart_fragments_handle() {
|
79 |
if ( SBP_Utils::is_plugin_active( 'woocommerce/woocommerce.php' ) ) {
|
80 |
global $wp_scripts;
|
93 |
/**
|
94 |
* Removes password strength meter in WooCommerce checkout process
|
95 |
*/
|
96 |
+
// Z_TODO: Move this method to WooCommerce class in version 4.5
|
97 |
private function remove_wc_password_strength_meter() {
|
98 |
if ( function_exists( 'is_account_page' ) && sbp_get_option( 'woocommerce_disable_password_meter' ) ) {
|
99 |
add_action( 'wp_print_scripts', [ $this, 'remove_wc_password_strength_meter_handle' ], 100 );
|
100 |
}
|
101 |
}
|
102 |
|
103 |
+
// Z_TODO: Move this method to WooCommerce class in version 4.5
|
104 |
public function remove_wc_password_strength_meter_handle() {
|
105 |
global $wp;
|
106 |
|
includes/classes/class-sbp-utils.php
CHANGED
@@ -97,4 +97,15 @@ class SBP_Utils extends SBP_Abstract_Module {
|
|
97 |
|
98 |
return LITESPEED_SERVER_TYPE !== 'NONE' ? LITESPEED_SERVER_TYPE && LITESPEED_ALLOWED : false;
|
99 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
100 |
}
|
97 |
|
98 |
return LITESPEED_SERVER_TYPE !== 'NONE' ? LITESPEED_SERVER_TYPE && LITESPEED_ALLOWED : false;
|
99 |
}
|
100 |
+
|
101 |
+
/**
|
102 |
+
* Removes the http and https prefixes from url's
|
103 |
+
*
|
104 |
+
* @param $url
|
105 |
+
*
|
106 |
+
* @return void
|
107 |
+
*/
|
108 |
+
public static function remove_protocol( $url ) {
|
109 |
+
return str_replace( [ 'http://', 'https://' ], [ '//', '//' ], $url );
|
110 |
+
}
|
111 |
}
|
public/class-speed-booster-pack-public.php
CHANGED
@@ -67,4 +67,10 @@ class Speed_Booster_Pack_Public {
|
|
67 |
return $html;
|
68 |
}
|
69 |
|
|
|
|
|
|
|
|
|
|
|
|
|
70 |
}
|
67 |
return $html;
|
68 |
}
|
69 |
|
70 |
+
public function sbp_headers( $headers ) {
|
71 |
+
$headers['X-Powered-By'] = SBP_PLUGIN_NAME . ' v' . SBP_VERSION;
|
72 |
+
|
73 |
+
return $headers;
|
74 |
+
}
|
75 |
+
|
76 |
}
|
speed-booster-pack.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
* Plugin Name: Speed Booster Pack
|
7 |
* Plugin URI: https://speedboosterpack.com
|
8 |
* Description: PageSpeed optimization is vital for SEO: A faster website equals better conversions. Optimize & cache your site with this smart plugin!
|
9 |
-
* Version: 4.4.
|
10 |
* Author: Optimocha
|
11 |
* Author URI: https://optimocha.com
|
12 |
* License: GPLv3 or later
|
@@ -32,7 +32,7 @@ define( 'SBP_PLUGIN_NAME', 'Speed Booster Pack' );
|
|
32 |
/**
|
33 |
* Current plugin version.
|
34 |
*/
|
35 |
-
define( 'SBP_VERSION', '4.4.
|
36 |
|
37 |
/**
|
38 |
* Plugin website URL.
|
@@ -97,7 +97,7 @@ define( 'SBP_PLUGIN_BASENAME', plugin_basename( __FILE__ ) );
|
|
97 |
/**
|
98 |
* Migrator script version.
|
99 |
*/
|
100 |
-
define( 'SBP_MIGRATOR_VERSION', '
|
101 |
|
102 |
/**
|
103 |
* Load all plugin options
|
6 |
* Plugin Name: Speed Booster Pack
|
7 |
* Plugin URI: https://speedboosterpack.com
|
8 |
* Description: PageSpeed optimization is vital for SEO: A faster website equals better conversions. Optimize & cache your site with this smart plugin!
|
9 |
+
* Version: 4.4.1
|
10 |
* Author: Optimocha
|
11 |
* Author URI: https://optimocha.com
|
12 |
* License: GPLv3 or later
|
32 |
/**
|
33 |
* Current plugin version.
|
34 |
*/
|
35 |
+
define( 'SBP_VERSION', '4.4.1' );
|
36 |
|
37 |
/**
|
38 |
* Plugin website URL.
|
97 |
/**
|
98 |
* Migrator script version.
|
99 |
*/
|
100 |
+
define( 'SBP_MIGRATOR_VERSION', '44000' );
|
101 |
|
102 |
/**
|
103 |
* Load all plugin options
|
vendor/codestar-framework/assets/css/style-rtl.css
CHANGED
@@ -1,590 +1,590 @@
|
|
1 |
-
/**
|
2 |
-
*
|
3 |
-
* ---------------------------------------------------------
|
4 |
-
* CODESTAR FRAMEWORK RTL CSS MAP
|
5 |
-
* ---------------------------------------------------------
|
6 |
-
*
|
7 |
-
* 01. Base
|
8 |
-
* 01. 01. Header
|
9 |
-
* 01. 02. Header Buttons
|
10 |
-
* 01. 03. Navigation
|
11 |
-
* 01. 04. Content
|
12 |
-
* 01. 05. Section
|
13 |
-
* 01. 06. Show All Settings
|
14 |
-
* 01. 07. Search Input
|
15 |
-
* 01. 08. Copyright
|
16 |
-
* 01. 09. Metabox
|
17 |
-
* 02. Fields
|
18 |
-
* 02. 01. Field: typography
|
19 |
-
* 02. 02. Field: checkbox, radio
|
20 |
-
* 02. 03. Field: switcher
|
21 |
-
* 02. 04. Field: upload
|
22 |
-
* 02. 05. Field: group
|
23 |
-
* 02. 06. Field: repeater
|
24 |
-
* 02. 07. Field: help
|
25 |
-
* 02. 08. Field: icon
|
26 |
-
* 02. 09. Field: gallery
|
27 |
-
* 02. 10. Field: sorter
|
28 |
-
* 02. 11. Field: tabbed
|
29 |
-
* 02. 12. Field: media
|
30 |
-
* 02. 13. Field: notice
|
31 |
-
* 02. 14. Field: border, spacing, dimensions
|
32 |
-
* 02. 15. Field: background
|
33 |
-
* 02. 16. Field: spinner
|
34 |
-
* 02. 17. Field: slider
|
35 |
-
* 02. 18. Field: button_set
|
36 |
-
* 02. 19. Field: link_color
|
37 |
-
* 02. 20. Field: color_group
|
38 |
-
* 02. 21. Field: palette
|
39 |
-
* 02. 22. Field: accordion
|
40 |
-
* 02. 23. Field: date
|
41 |
-
* 02. 24. Field: map
|
42 |
-
* 02. 25. Field: sortable
|
43 |
-
* 02. 26. Field: number
|
44 |
-
* 03. Taxonomy
|
45 |
-
* 04. Profile
|
46 |
-
* 05. Nav Menu
|
47 |
-
* 06. Modal
|
48 |
-
* 07. Customizer
|
49 |
-
* 08. Responsive
|
50 |
-
* 09. Others
|
51 |
-
*
|
52 |
-
* ---------------------------------------------------------
|
53 |
-
*
|
54 |
-
*/
|
55 |
-
/**
|
56 |
-
* 01. Base
|
57 |
-
*/
|
58 |
-
.csf-options {
|
59 |
-
margin-left: 20px;
|
60 |
-
margin-right: 0;
|
61 |
-
}
|
62 |
-
|
63 |
-
/**
|
64 |
-
* 01. 01. Header
|
65 |
-
*/
|
66 |
-
.csf-header h1 {
|
67 |
-
float: right;
|
68 |
-
}
|
69 |
-
.csf-header fieldset {
|
70 |
-
float: left;
|
71 |
-
}
|
72 |
-
|
73 |
-
/**
|
74 |
-
* 01. 02. Header Buttons
|
75 |
-
*/
|
76 |
-
.csf-buttons {
|
77 |
-
float: left;
|
78 |
-
direction: ltr;
|
79 |
-
}
|
80 |
-
|
81 |
-
.csf-header-left {
|
82 |
-
float: right;
|
83 |
-
}
|
84 |
-
|
85 |
-
.csf-header-right {
|
86 |
-
float: left;
|
87 |
-
}
|
88 |
-
|
89 |
-
/**
|
90 |
-
* 01. 03. Navigation
|
91 |
-
*/
|
92 |
-
.csf-nav {
|
93 |
-
float: right;
|
94 |
-
}
|
95 |
-
.csf-nav ul {
|
96 |
-
clear: right;
|
97 |
-
}
|
98 |
-
.csf-nav ul li .csf-active:after {
|
99 |
-
right: auto;
|
100 |
-
left: 0;
|
101 |
-
border-left-color: #fff;
|
102 |
-
border-right-color: transparent;
|
103 |
-
}
|
104 |
-
.csf-nav ul li .csf-arrow:after {
|
105 |
-
content: "\f053";
|
106 |
-
right: auto;
|
107 |
-
left: 10px;
|
108 |
-
}
|
109 |
-
.csf-nav ul li.csf-tab-expanded .csf-arrow:after {
|
110 |
-
transform: rotate(-90deg);
|
111 |
-
}
|
112 |
-
.csf-nav ul ul li a {
|
113 |
-
padding-right: 25px;
|
114 |
-
padding-left: 15px;
|
115 |
-
}
|
116 |
-
.csf-nav ul ul:before {
|
117 |
-
left: auto;
|
118 |
-
right: 15px;
|
119 |
-
}
|
120 |
-
.csf-nav .csf-tab-icon {
|
121 |
-
margin-left: 5px;
|
122 |
-
margin-right: 0;
|
123 |
-
}
|
124 |
-
|
125 |
-
.csf-nav-background {
|
126 |
-
left: auto;
|
127 |
-
right: 0;
|
128 |
-
}
|
129 |
-
|
130 |
-
/**
|
131 |
-
* 01. 04. Content
|
132 |
-
*/
|
133 |
-
.csf-content {
|
134 |
-
margin-left: 0;
|
135 |
-
margin-right: 225px;
|
136 |
-
}
|
137 |
-
|
138 |
-
/**
|
139 |
-
* 01. 05. Section
|
140 |
-
*/
|
141 |
-
.csf-sections {
|
142 |
-
float: right;
|
143 |
-
}
|
144 |
-
|
145 |
-
/**
|
146 |
-
* 01. 06. Show all options
|
147 |
-
*/
|
148 |
-
.csf-show-all .csf-content {
|
149 |
-
margin-right: 0;
|
150 |
-
overflow: hidden;
|
151 |
-
}
|
152 |
-
|
153 |
-
.csf-expand-all {
|
154 |
-
float: right;
|
155 |
-
right: auto;
|
156 |
-
left: 40px;
|
157 |
-
margin-right: 0;
|
158 |
-
margin-left: 4px;
|
159 |
-
}
|
160 |
-
|
161 |
-
/**
|
162 |
-
* 01. 07. Search Input
|
163 |
-
*/
|
164 |
-
.csf-search {
|
165 |
-
float: right;
|
166 |
-
}
|
167 |
-
.csf-search input {
|
168 |
-
margin: 0 0 0 5px;
|
169 |
-
}
|
170 |
-
|
171 |
-
/**
|
172 |
-
* 01. 08. Copyright
|
173 |
-
*/
|
174 |
-
.csf-copyright {
|
175 |
-
float: right;
|
176 |
-
}
|
177 |
-
|
178 |
-
/**
|
179 |
-
* 01. 09. Metabox
|
180 |
-
*/
|
181 |
-
.csf-metabox {
|
182 |
-
margin: -6px -12px -12px -12px;
|
183 |
-
}
|
184 |
-
.csf-metabox .csf-section-title {
|
185 |
-
padding: 20px;
|
186 |
-
}
|
187 |
-
|
188 |
-
.csf-section-title .csf-section-icon {
|
189 |
-
margin-left: 5px;
|
190 |
-
margin-right: 0;
|
191 |
-
}
|
192 |
-
|
193 |
-
/**
|
194 |
-
* 02. Fields
|
195 |
-
*/
|
196 |
-
.csf-field .csf-title {
|
197 |
-
float: right;
|
198 |
-
}
|
199 |
-
.csf-field .csf-fieldset {
|
200 |
-
float: left;
|
201 |
-
}
|
202 |
-
|
203 |
-
.csf-pseudo-field {
|
204 |
-
padding: 0 0 0 5px !important;
|
205 |
-
}
|
206 |
-
|
207 |
-
/**
|
208 |
-
* 02. 01. Field: typography
|
209 |
-
*/
|
210 |
-
.csf-field-typography select {
|
211 |
-
margin: 0;
|
212 |
-
width: 100%;
|
213 |
-
}
|
214 |
-
.csf-field-typography .csf--blocks-inputs .csf--blocks {
|
215 |
-
flex-direction: row-reverse;
|
216 |
-
}
|
217 |
-
.csf-field-typography .csf--unit {
|
218 |
-
left: 4px;
|
219 |
-
right: auto;
|
220 |
-
}
|
221 |
-
|
222 |
-
/**
|
223 |
-
* 02. 02. Field: checkbox, radio
|
224 |
-
*/
|
225 |
-
.csf-field-checkbox ul ul li,
|
226 |
-
.csf-field-radio ul ul li {
|
227 |
-
margin-left: 0;
|
228 |
-
margin-right: 8px;
|
229 |
-
}
|
230 |
-
.csf-field-checkbox ul ul li:first-child,
|
231 |
-
.csf-field-radio ul ul li:first-child {
|
232 |
-
margin-right: 0;
|
233 |
-
}
|
234 |
-
.csf-field-checkbox .csf--inline-list li,
|
235 |
-
.csf-field-radio .csf--inline-list li {
|
236 |
-
margin-right: 0;
|
237 |
-
margin-left: 15px;
|
238 |
-
}
|
239 |
-
.csf-field-checkbox .csf--text,
|
240 |
-
.csf-field-radio .csf--text {
|
241 |
-
margin-left: 0;
|
242 |
-
margin-right: 5px;
|
243 |
-
}
|
244 |
-
|
245 |
-
/**
|
246 |
-
* 02. 03. Field: switcher
|
247 |
-
*/
|
248 |
-
.csf-field-switcher .csf--switcher {
|
249 |
-
float: right;
|
250 |
-
}
|
251 |
-
.csf-field-switcher .csf--label {
|
252 |
-
float: right;
|
253 |
-
margin-left: 0;
|
254 |
-
margin-right: 5px;
|
255 |
-
}
|
256 |
-
|
257 |
-
/**
|
258 |
-
* 02. 04. Field: upload
|
259 |
-
*/
|
260 |
-
.csf-field-upload .csf--remove,
|
261 |
-
.csf-field-upload .csf--button {
|
262 |
-
margin-left: 0;
|
263 |
-
margin-right: 5px;
|
264 |
-
}
|
265 |
-
|
266 |
-
/**
|
267 |
-
* 02. 05. Field: group
|
268 |
-
*/
|
269 |
-
.csf-field-group .csf-cloneable-title {
|
270 |
-
padding: 15px 10px 15px 65px;
|
271 |
-
}
|
272 |
-
.csf-field-group .csf-cloneable-helper {
|
273 |
-
right: auto;
|
274 |
-
left: 10px;
|
275 |
-
}
|
276 |
-
|
277 |
-
/**
|
278 |
-
* 02. 06. Field: repeater
|
279 |
-
*/
|
280 |
-
.csf-field-repeater .csf-repeater-helper {
|
281 |
-
border-left: 0;
|
282 |
-
border-right: 1px solid #eee;
|
283 |
-
}
|
284 |
-
|
285 |
-
/**
|
286 |
-
* 02. 07. Field: help
|
287 |
-
*/
|
288 |
-
.csf-help {
|
289 |
-
right: auto;
|
290 |
-
left: 5px;
|
291 |
-
}
|
292 |
-
|
293 |
-
/**
|
294 |
-
* 02. 08. Field: icon
|
295 |
-
*/
|
296 |
-
.csf-field-icon .button {
|
297 |
-
margin-right: 0;
|
298 |
-
margin-left: 5px;
|
299 |
-
}
|
300 |
-
.csf-field-icon .csf-icon-preview i {
|
301 |
-
margin-right: 0;
|
302 |
-
margin-left: 5px;
|
303 |
-
}
|
304 |
-
|
305 |
-
/**
|
306 |
-
* 02. 09. Field: gallery
|
307 |
-
*/
|
308 |
-
.csf-field-gallery ul li {
|
309 |
-
margin-right: 0;
|
310 |
-
margin-left: 5px;
|
311 |
-
}
|
312 |
-
.csf-field-gallery .button {
|
313 |
-
margin-right: 0;
|
314 |
-
margin-left: 5px;
|
315 |
-
}
|
316 |
-
|
317 |
-
/**
|
318 |
-
* 02. 11. Field: tabbed
|
319 |
-
*/
|
320 |
-
.csf-field-tabbed .csf-tabbed-nav .csf--icon {
|
321 |
-
padding-right: 0;
|
322 |
-
padding-left: 5px;
|
323 |
-
}
|
324 |
-
.csf-field-tabbed .csf-tabbed-nav a {
|
325 |
-
margin-right: 0;
|
326 |
-
margin-left: 5px;
|
327 |
-
}
|
328 |
-
|
329 |
-
/**
|
330 |
-
* 02. 12. Field: media
|
331 |
-
*/
|
332 |
-
.csf-field-media .button {
|
333 |
-
margin-left: 0;
|
334 |
-
margin-right: 7px;
|
335 |
-
}
|
336 |
-
.csf-field-media .hidden + .button {
|
337 |
-
margin-right: 0;
|
338 |
-
}
|
339 |
-
|
340 |
-
/**
|
341 |
-
* 02. 13. Field: notice
|
342 |
-
*/
|
343 |
-
.csf-notice {
|
344 |
-
border-left: none;
|
345 |
-
border-right-style: solid;
|
346 |
-
border-right-width: 4px;
|
347 |
-
}
|
348 |
-
|
349 |
-
/**
|
350 |
-
* 02. 14. Field: border, spacing, dimensions
|
351 |
-
*/
|
352 |
-
.csf-field-dimensions .csf--input,
|
353 |
-
.csf-field-dimensions .csf-fieldset,
|
354 |
-
.csf-field-spacing .csf--input,
|
355 |
-
.csf-field-spacing .csf-fieldset,
|
356 |
-
.csf-field-border .csf--input,
|
357 |
-
.csf-field-border .csf-fieldset {
|
358 |
-
direction: ltr;
|
359 |
-
}
|
360 |
-
.csf-field-dimensions .csf--inputs,
|
361 |
-
.csf-field-dimensions .csf--color,
|
362 |
-
.csf-field-spacing .csf--inputs,
|
363 |
-
.csf-field-spacing .csf--color,
|
364 |
-
.csf-field-border .csf--inputs,
|
365 |
-
.csf-field-border .csf--color {
|
366 |
-
float: right;
|
367 |
-
}
|
368 |
-
.csf-field-dimensions .csf--color,
|
369 |
-
.csf-field-spacing .csf--color,
|
370 |
-
.csf-field-border .csf--color {
|
371 |
-
margin-right: 4px;
|
372 |
-
direction: rtl;
|
373 |
-
}
|
374 |
-
|
375 |
-
/**
|
376 |
-
* 02. 15. Field: background
|
377 |
-
*/
|
378 |
-
.csf-field-background .csf--block {
|
379 |
-
float: right;
|
380 |
-
}
|
381 |
-
.csf-field-background .csf--select,
|
382 |
-
.csf-field-background .csf--media {
|
383 |
-
padding-right: 0;
|
384 |
-
}
|
385 |
-
.csf-field-background .csf--title {
|
386 |
-
margin-right: 0;
|
387 |
-
margin-left: 5px;
|
388 |
-
}
|
389 |
-
|
390 |
-
/**
|
391 |
-
* 02. 16. Field: spinner
|
392 |
-
*/
|
393 |
-
.csf-field-spinner .csf--spin {
|
394 |
-
float: right;
|
395 |
-
direction: ltr;
|
396 |
-
}
|
397 |
-
|
398 |
-
/**
|
399 |
-
* 02. 17. Field: slider
|
400 |
-
*/
|
401 |
-
.csf-field-slider .csf-slider-ui {
|
402 |
-
direction: ltr;
|
403 |
-
margin-right: 0;
|
404 |
-
margin-left: 15px;
|
405 |
-
}
|
406 |
-
.csf-field-slider .csf--input {
|
407 |
-
direction: ltr;
|
408 |
-
}
|
409 |
-
|
410 |
-
/**
|
411 |
-
* 02. 18. Field: button_set
|
412 |
-
*/
|
413 |
-
.csf-field-button_set .csf--button-group {
|
414 |
-
float: right;
|
415 |
-
}
|
416 |
-
|
417 |
-
/**
|
418 |
-
* 02. 19. Field: link_color
|
419 |
-
*/
|
420 |
-
.csf-field-link_color .csf--left {
|
421 |
-
float: right;
|
422 |
-
margin-right: 0;
|
423 |
-
margin-left: 10px;
|
424 |
-
}
|
425 |
-
|
426 |
-
/**
|
427 |
-
* 02. 20. Field: color_group
|
428 |
-
*/
|
429 |
-
.csf-field-color_group .csf--left {
|
430 |
-
float: right;
|
431 |
-
margin-right: 0;
|
432 |
-
margin-left: 10px;
|
433 |
-
}
|
434 |
-
|
435 |
-
/**
|
436 |
-
* 02. 21. Field: palette
|
437 |
-
*/
|
438 |
-
.csf-field-palette .csf--palette {
|
439 |
-
margin-right: 0;
|
440 |
-
margin-left: 10px;
|
441 |
-
}
|
442 |
-
|
443 |
-
/**
|
444 |
-
* 02. 22. Field: accordion
|
445 |
-
*/
|
446 |
-
.csf-field-accordion .csf--icon {
|
447 |
-
margin-right: 0;
|
448 |
-
margin-left: 2px;
|
449 |
-
}
|
450 |
-
|
451 |
-
/**
|
452 |
-
* 02. 23. Field: date
|
453 |
-
*/
|
454 |
-
.csf-field-date .csf--to {
|
455 |
-
margin-left: 0;
|
456 |
-
margin-right: 7px;
|
457 |
-
}
|
458 |
-
|
459 |
-
/**
|
460 |
-
* 02. 24. Field: map
|
461 |
-
*/
|
462 |
-
.csf-field-map .csf--map-input:last-child {
|
463 |
-
padding-left: 0;
|
464 |
-
padding-right: 10px;
|
465 |
-
}
|
466 |
-
|
467 |
-
/**
|
468 |
-
* 02. 25. Field: sortable
|
469 |
-
*/
|
470 |
-
.csf-field-sortable .csf-sortable-helper {
|
471 |
-
border-left: none;
|
472 |
-
border-right: 1px solid #eee;
|
473 |
-
}
|
474 |
-
|
475 |
-
/**
|
476 |
-
* 02. 26. Field: number
|
477 |
-
*/
|
478 |
-
.csf-field-number .csf--wrap {
|
479 |
-
float: right;
|
480 |
-
}
|
481 |
-
.csf-field-number .csf--unit {
|
482 |
-
left: 4px;
|
483 |
-
right: auto;
|
484 |
-
}
|
485 |
-
|
486 |
-
/**
|
487 |
-
* 03. Taxonomy
|
488 |
-
*/
|
489 |
-
.csf-taxonomy-add-fields {
|
490 |
-
margin-right: 0;
|
491 |
-
margin-left: 30px;
|
492 |
-
}
|
493 |
-
.csf-taxonomy-add-fields .csf-field > .csf-fieldset > .csf-help {
|
494 |
-
left: -5px;
|
495 |
-
right: auto;
|
496 |
-
}
|
497 |
-
|
498 |
-
.csf-taxonomy-edit-fields {
|
499 |
-
margin-right: 0;
|
500 |
-
margin-left: 35px;
|
501 |
-
}
|
502 |
-
.csf-taxonomy-edit-fields .csf-field > .csf-fieldset > .csf-help {
|
503 |
-
right: auto;
|
504 |
-
left: -5px;
|
505 |
-
}
|
506 |
-
|
507 |
-
/**
|
508 |
-
* 04. Profile
|
509 |
-
*/
|
510 |
-
.csf-profile-options > h2 > .fa {
|
511 |
-
padding-right: 0;
|
512 |
-
padding-left: 7px;
|
513 |
-
}
|
514 |
-
.csf-profile-options > .csf-field > .csf-fieldset > .csf-help {
|
515 |
-
left: -5px;
|
516 |
-
right: auto;
|
517 |
-
}
|
518 |
-
|
519 |
-
/**
|
520 |
-
* 05. Nav Menu
|
521 |
-
*/
|
522 |
-
.csf-nav-menu-options > .csf-fields {
|
523 |
-
margin-left: 0;
|
524 |
-
margin-right: -10px;
|
525 |
-
}
|
526 |
-
|
527 |
-
.csf-nav-menu-title {
|
528 |
-
padding-left: 14px;
|
529 |
-
padding-right: 12px;
|
530 |
-
}
|
531 |
-
|
532 |
-
.csf-nav-menu-icon {
|
533 |
-
margin-right: 0;
|
534 |
-
margin-left: 5px;
|
535 |
-
}
|
536 |
-
|
537 |
-
/**
|
538 |
-
* 06. Modal
|
539 |
-
*/
|
540 |
-
.csf-modal-content .csf-field {
|
541 |
-
padding: 15px 15px 15px 30px;
|
542 |
-
}
|
543 |
-
|
544 |
-
.csf-modal-title {
|
545 |
-
padding: 0 16px 0 36px;
|
546 |
-
}
|
547 |
-
|
548 |
-
.csf-modal-close {
|
549 |
-
right: auto;
|
550 |
-
left: 0;
|
551 |
-
}
|
552 |
-
|
553 |
-
/**
|
554 |
-
* 07. Customizer
|
555 |
-
*/
|
556 |
-
.control-section .csf-field .csf-fieldset {
|
557 |
-
margin-right: 0;
|
558 |
-
}
|
559 |
-
|
560 |
-
/**
|
561 |
-
* 08. Responsive
|
562 |
-
*/
|
563 |
-
@media only screen and (max-width: 1200px) {
|
564 |
-
.csf-metabox .csf-field .csf-fieldset {
|
565 |
-
margin-left: 0;
|
566 |
-
}
|
567 |
-
}
|
568 |
-
@media only screen and (max-width: 782px) {
|
569 |
-
.csf .csf-fieldset,
|
570 |
-
.csf .csf-content {
|
571 |
-
margin-right: 0;
|
572 |
-
}
|
573 |
-
}
|
574 |
-
/**
|
575 |
-
* 09. Others
|
576 |
-
*/
|
577 |
-
.csf-field .csf--transparent-slider {
|
578 |
-
margin-left: 0;
|
579 |
-
margin-right: 2px;
|
580 |
-
}
|
581 |
-
.csf-field .csf--transparent-slider .ui-slider-handle {
|
582 |
-
margin: 0 -11px;
|
583 |
-
}
|
584 |
-
.csf-field .csf--transparent-offset {
|
585 |
-
background-position: center right;
|
586 |
-
}
|
587 |
-
.csf-field .csf--transparent-text {
|
588 |
-
right: auto;
|
589 |
-
left: 10px;
|
590 |
-
}
|
1 |
+
/**
|
2 |
+
*
|
3 |
+
* ---------------------------------------------------------
|
4 |
+
* CODESTAR FRAMEWORK RTL CSS MAP
|
5 |
+
* ---------------------------------------------------------
|
6 |
+
*
|
7 |
+
* 01. Base
|
8 |
+
* 01. 01. Header
|
9 |
+
* 01. 02. Header Buttons
|
10 |
+
* 01. 03. Navigation
|
11 |
+
* 01. 04. Content
|
12 |
+
* 01. 05. Section
|
13 |
+
* 01. 06. Show All Settings
|
14 |
+
* 01. 07. Search Input
|
15 |
+
* 01. 08. Copyright
|
16 |
+
* 01. 09. Metabox
|
17 |
+
* 02. Fields
|
18 |
+
* 02. 01. Field: typography
|
19 |
+
* 02. 02. Field: checkbox, radio
|
20 |
+
* 02. 03. Field: switcher
|
21 |
+
* 02. 04. Field: upload
|
22 |
+
* 02. 05. Field: group
|
23 |
+
* 02. 06. Field: repeater
|
24 |
+
* 02. 07. Field: help
|
25 |
+
* 02. 08. Field: icon
|
26 |
+
* 02. 09. Field: gallery
|
27 |
+
* 02. 10. Field: sorter
|
28 |
+
* 02. 11. Field: tabbed
|
29 |
+
* 02. 12. Field: media
|
30 |
+
* 02. 13. Field: notice
|
31 |
+
* 02. 14. Field: border, spacing, dimensions
|
32 |
+
* 02. 15. Field: background
|
33 |
+
* 02. 16. Field: spinner
|
34 |
+
* 02. 17. Field: slider
|
35 |
+
* 02. 18. Field: button_set
|
36 |
+
* 02. 19. Field: link_color
|
37 |
+
* 02. 20. Field: color_group
|
38 |
+
* 02. 21. Field: palette
|
39 |
+
* 02. 22. Field: accordion
|
40 |
+
* 02. 23. Field: date
|
41 |
+
* 02. 24. Field: map
|
42 |
+
* 02. 25. Field: sortable
|
43 |
+
* 02. 26. Field: number
|
44 |
+
* 03. Taxonomy
|
45 |
+
* 04. Profile
|
46 |
+
* 05. Nav Menu
|
47 |
+
* 06. Modal
|
48 |
+
* 07. Customizer
|
49 |
+
* 08. Responsive
|
50 |
+
* 09. Others
|
51 |
+
*
|
52 |
+
* ---------------------------------------------------------
|
53 |
+
*
|
54 |
+
*/
|
55 |
+
/**
|
56 |
+
* 01. Base
|
57 |
+
*/
|
58 |
+
.csf-options {
|
59 |
+
margin-left: 20px;
|
60 |
+
margin-right: 0;
|
61 |
+
}
|
62 |
+
|
63 |
+
/**
|
64 |
+
* 01. 01. Header
|
65 |
+
*/
|
66 |
+
.csf-header h1 {
|
67 |
+
float: right;
|
68 |
+
}
|
69 |
+
.csf-header fieldset {
|
70 |
+
float: left;
|
71 |
+
}
|
72 |
+
|
73 |
+
/**
|
74 |
+
* 01. 02. Header Buttons
|
75 |
+
*/
|
76 |
+
.csf-buttons {
|
77 |
+
float: left;
|
78 |
+
direction: ltr;
|
79 |
+
}
|
80 |
+
|
81 |
+
.csf-header-left {
|
82 |
+
float: right;
|
83 |
+
}
|
84 |
+
|
85 |
+
.csf-header-right {
|
86 |
+
float: left;
|
87 |
+
}
|
88 |
+
|
89 |
+
/**
|
90 |
+
* 01. 03. Navigation
|
91 |
+
*/
|
92 |
+
.csf-nav {
|
93 |
+
float: right;
|
94 |
+
}
|
95 |
+
.csf-nav ul {
|
96 |
+
clear: right;
|
97 |
+
}
|
98 |
+
.csf-nav ul li .csf-active:after {
|
99 |
+
right: auto;
|
100 |
+
left: 0;
|
101 |
+
border-left-color: #fff;
|
102 |
+
border-right-color: transparent;
|
103 |
+
}
|
104 |
+
.csf-nav ul li .csf-arrow:after {
|
105 |
+
content: "\f053";
|
106 |
+
right: auto;
|
107 |
+
left: 10px;
|
108 |
+
}
|
109 |
+
.csf-nav ul li.csf-tab-expanded .csf-arrow:after {
|
110 |
+
transform: rotate(-90deg);
|
111 |
+
}
|
112 |
+
.csf-nav ul ul li a {
|
113 |
+
padding-right: 25px;
|
114 |
+
padding-left: 15px;
|
115 |
+
}
|
116 |
+
.csf-nav ul ul:before {
|
117 |
+
left: auto;
|
118 |
+
right: 15px;
|
119 |
+
}
|
120 |
+
.csf-nav .csf-tab-icon {
|
121 |
+
margin-left: 5px;
|
122 |
+
margin-right: 0;
|
123 |
+
}
|
124 |
+
|
125 |
+
.csf-nav-background {
|
126 |
+
left: auto;
|
127 |
+
right: 0;
|
128 |
+
}
|
129 |
+
|
130 |
+
/**
|
131 |
+
* 01. 04. Content
|
132 |
+
*/
|
133 |
+
.csf-content {
|
134 |
+
margin-left: 0;
|
135 |
+
margin-right: 225px;
|
136 |
+
}
|
137 |
+
|
138 |
+
/**
|
139 |
+
* 01. 05. Section
|
140 |
+
*/
|
141 |
+
.csf-sections {
|
142 |
+
float: right;
|
143 |
+
}
|
144 |
+
|
145 |
+
/**
|
146 |
+
* 01. 06. Show all options
|
147 |
+
*/
|
148 |
+
.csf-show-all .csf-content {
|
149 |
+
margin-right: 0;
|
150 |
+
overflow: hidden;
|
151 |
+
}
|
152 |
+
|
153 |
+
.csf-expand-all {
|
154 |
+
float: right;
|
155 |
+
right: auto;
|
156 |
+
left: 40px;
|
157 |
+
margin-right: 0;
|
158 |
+
margin-left: 4px;
|
159 |
+
}
|
160 |
+
|
161 |
+
/**
|
162 |
+
* 01. 07. Search Input
|
163 |
+
*/
|
164 |
+
.csf-search {
|
165 |
+
float: right;
|
166 |
+
}
|
167 |
+
.csf-search input {
|
168 |
+
margin: 0 0 0 5px;
|
169 |
+
}
|
170 |
+
|
171 |
+
/**
|
172 |
+
* 01. 08. Copyright
|
173 |
+
*/
|
174 |
+
.csf-copyright {
|
175 |
+
float: right;
|
176 |
+
}
|
177 |
+
|
178 |
+
/**
|
179 |
+
* 01. 09. Metabox
|
180 |
+
*/
|
181 |
+
.csf-metabox {
|
182 |
+
margin: -6px -12px -12px -12px;
|
183 |
+
}
|
184 |
+
.csf-metabox .csf-section-title {
|
185 |
+
padding: 20px;
|
186 |
+
}
|
187 |
+
|
188 |
+
.csf-section-title .csf-section-icon {
|
189 |
+
margin-left: 5px;
|
190 |
+
margin-right: 0;
|
191 |
+
}
|
192 |
+
|
193 |
+
/**
|
194 |
+
* 02. Fields
|
195 |
+
*/
|
196 |
+
.csf-field .csf-title {
|
197 |
+
float: right;
|
198 |
+
}
|
199 |
+
.csf-field .csf-fieldset {
|
200 |
+
float: left;
|
201 |
+
}
|
202 |
+
|
203 |
+
.csf-pseudo-field {
|
204 |
+
padding: 0 0 0 5px !important;
|
205 |
+
}
|
206 |
+
|
207 |
+
/**
|
208 |
+
* 02. 01. Field: typography
|
209 |
+
*/
|
210 |
+
.csf-field-typography select {
|
211 |
+
margin: 0;
|
212 |
+
width: 100%;
|
213 |
+
}
|
214 |
+
.csf-field-typography .csf--blocks-inputs .csf--blocks {
|
215 |
+
flex-direction: row-reverse;
|
216 |
+
}
|
217 |
+
.csf-field-typography .csf--unit {
|
218 |
+
left: 4px;
|
219 |
+
right: auto;
|
220 |
+
}
|
221 |
+
|
222 |
+
/**
|
223 |
+
* 02. 02. Field: checkbox, radio
|
224 |
+
*/
|
225 |
+
.csf-field-checkbox ul ul li,
|
226 |
+
.csf-field-radio ul ul li {
|
227 |
+
margin-left: 0;
|
228 |
+
margin-right: 8px;
|
229 |
+
}
|
230 |
+
.csf-field-checkbox ul ul li:first-child,
|
231 |
+
.csf-field-radio ul ul li:first-child {
|
232 |
+
margin-right: 0;
|
233 |
+
}
|
234 |
+
.csf-field-checkbox .csf--inline-list li,
|
235 |
+
.csf-field-radio .csf--inline-list li {
|
236 |
+
margin-right: 0;
|
237 |
+
margin-left: 15px;
|
238 |
+
}
|
239 |
+
.csf-field-checkbox .csf--text,
|
240 |
+
.csf-field-radio .csf--text {
|
241 |
+
margin-left: 0;
|
242 |
+
margin-right: 5px;
|
243 |
+
}
|
244 |
+
|
245 |
+
/**
|
246 |
+
* 02. 03. Field: switcher
|
247 |
+
*/
|
248 |
+
.csf-field-switcher .csf--switcher {
|
249 |
+
float: right;
|
250 |
+
}
|
251 |
+
.csf-field-switcher .csf--label {
|
252 |
+
float: right;
|
253 |
+
margin-left: 0;
|
254 |
+
margin-right: 5px;
|
255 |
+
}
|
256 |
+
|
257 |
+
/**
|
258 |
+
* 02. 04. Field: upload
|
259 |
+
*/
|
260 |
+
.csf-field-upload .csf--remove,
|
261 |
+
.csf-field-upload .csf--button {
|
262 |
+
margin-left: 0;
|
263 |
+
margin-right: 5px;
|
264 |
+
}
|
265 |
+
|
266 |
+
/**
|
267 |
+
* 02. 05. Field: group
|
268 |
+
*/
|
269 |
+
.csf-field-group .csf-cloneable-title {
|
270 |
+
padding: 15px 10px 15px 65px;
|
271 |
+
}
|
272 |
+
.csf-field-group .csf-cloneable-helper {
|
273 |
+
right: auto;
|
274 |
+
left: 10px;
|
275 |
+
}
|
276 |
+
|
277 |
+
/**
|
278 |
+
* 02. 06. Field: repeater
|
279 |
+
*/
|
280 |
+
.csf-field-repeater .csf-repeater-helper {
|
281 |
+
border-left: 0;
|
282 |
+
border-right: 1px solid #eee;
|
283 |
+
}
|
284 |
+
|
285 |
+
/**
|
286 |
+
* 02. 07. Field: help
|
287 |
+
*/
|
288 |
+
.csf-help {
|
289 |
+
right: auto;
|
290 |
+
left: 5px;
|
291 |
+
}
|
292 |
+
|
293 |
+
/**
|
294 |
+
* 02. 08. Field: icon
|
295 |
+
*/
|
296 |
+
.csf-field-icon .button {
|
297 |
+
margin-right: 0;
|
298 |
+
margin-left: 5px;
|
299 |
+
}
|
300 |
+
.csf-field-icon .csf-icon-preview i {
|
301 |
+
margin-right: 0;
|
302 |
+
margin-left: 5px;
|
303 |
+
}
|
304 |
+
|
305 |
+
/**
|
306 |
+
* 02. 09. Field: gallery
|
307 |
+
*/
|
308 |
+
.csf-field-gallery ul li {
|
309 |
+
margin-right: 0;
|
310 |
+
margin-left: 5px;
|
311 |
+
}
|
312 |
+
.csf-field-gallery .button {
|
313 |
+
margin-right: 0;
|
314 |
+
margin-left: 5px;
|
315 |
+
}
|
316 |
+
|
317 |
+
/**
|
318 |
+
* 02. 11. Field: tabbed
|
319 |
+
*/
|
320 |
+
.csf-field-tabbed .csf-tabbed-nav .csf--icon {
|
321 |
+
padding-right: 0;
|
322 |
+
padding-left: 5px;
|
323 |
+
}
|
324 |
+
.csf-field-tabbed .csf-tabbed-nav a {
|
325 |
+
margin-right: 0;
|
326 |
+
margin-left: 5px;
|
327 |
+
}
|
328 |
+
|
329 |
+
/**
|
330 |
+
* 02. 12. Field: media
|
331 |
+
*/
|
332 |
+
.csf-field-media .button {
|
333 |
+
margin-left: 0;
|
334 |
+
margin-right: 7px;
|
335 |
+
}
|
336 |
+
.csf-field-media .hidden + .button {
|
337 |
+
margin-right: 0;
|
338 |
+
}
|
339 |
+
|
340 |
+
/**
|
341 |
+
* 02. 13. Field: notice
|
342 |
+
*/
|
343 |
+
.csf-notice {
|
344 |
+
border-left: none;
|
345 |
+
border-right-style: solid;
|
346 |
+
border-right-width: 4px;
|
347 |
+
}
|
348 |
+
|
349 |
+
/**
|
350 |
+
* 02. 14. Field: border, spacing, dimensions
|
351 |
+
*/
|
352 |
+
.csf-field-dimensions .csf--input,
|
353 |
+
.csf-field-dimensions .csf-fieldset,
|
354 |
+
.csf-field-spacing .csf--input,
|
355 |
+
.csf-field-spacing .csf-fieldset,
|
356 |
+
.csf-field-border .csf--input,
|
357 |
+
.csf-field-border .csf-fieldset {
|
358 |
+
direction: ltr;
|
359 |
+
}
|
360 |
+
.csf-field-dimensions .csf--inputs,
|
361 |
+
.csf-field-dimensions .csf--color,
|
362 |
+
.csf-field-spacing .csf--inputs,
|
363 |
+
.csf-field-spacing .csf--color,
|
364 |
+
.csf-field-border .csf--inputs,
|
365 |
+
.csf-field-border .csf--color {
|
366 |
+
float: right;
|
367 |
+
}
|
368 |
+
.csf-field-dimensions .csf--color,
|
369 |
+
.csf-field-spacing .csf--color,
|
370 |
+
.csf-field-border .csf--color {
|
371 |
+
margin-right: 4px;
|
372 |
+
direction: rtl;
|
373 |
+
}
|
374 |
+
|
375 |
+
/**
|
376 |
+
* 02. 15. Field: background
|
377 |
+
*/
|
378 |
+
.csf-field-background .csf--block {
|
379 |
+
float: right;
|
380 |
+
}
|
381 |
+
.csf-field-background .csf--select,
|
382 |
+
.csf-field-background .csf--media {
|
383 |
+
padding-right: 0;
|
384 |
+
}
|
385 |
+
.csf-field-background .csf--title {
|
386 |
+
margin-right: 0;
|
387 |
+
margin-left: 5px;
|
388 |
+
}
|
389 |
+
|
390 |
+
/**
|
391 |
+
* 02. 16. Field: spinner
|
392 |
+
*/
|
393 |
+
.csf-field-spinner .csf--spin {
|
394 |
+
float: right;
|
395 |
+
direction: ltr;
|
396 |
+
}
|
397 |
+
|
398 |
+
/**
|
399 |
+
* 02. 17. Field: slider
|
400 |
+
*/
|
401 |
+
.csf-field-slider .csf-slider-ui {
|
402 |
+
direction: ltr;
|
403 |
+
margin-right: 0;
|
404 |
+
margin-left: 15px;
|
405 |
+
}
|
406 |
+
.csf-field-slider .csf--input {
|
407 |
+
direction: ltr;
|
408 |
+
}
|
409 |
+
|
410 |
+
/**
|
411 |
+
* 02. 18. Field: button_set
|
412 |
+
*/
|
413 |
+
.csf-field-button_set .csf--button-group {
|
414 |
+
float: right;
|
415 |
+
}
|
416 |
+
|
417 |
+
/**
|
418 |
+
* 02. 19. Field: link_color
|
419 |
+
*/
|
420 |
+
.csf-field-link_color .csf--left {
|
421 |
+
float: right;
|
422 |
+
margin-right: 0;
|
423 |
+
margin-left: 10px;
|
424 |
+
}
|
425 |
+
|
426 |
+
/**
|
427 |
+
* 02. 20. Field: color_group
|
428 |
+
*/
|
429 |
+
.csf-field-color_group .csf--left {
|
430 |
+
float: right;
|
431 |
+
margin-right: 0;
|
432 |
+
margin-left: 10px;
|
433 |
+
}
|
434 |
+
|
435 |
+
/**
|
436 |
+
* 02. 21. Field: palette
|
437 |
+
*/
|
438 |
+
.csf-field-palette .csf--palette {
|
439 |
+
margin-right: 0;
|
440 |
+
margin-left: 10px;
|
441 |
+
}
|
442 |
+
|
443 |
+
/**
|
444 |
+
* 02. 22. Field: accordion
|
445 |
+
*/
|
446 |
+
.csf-field-accordion .csf--icon {
|
447 |
+
margin-right: 0;
|
448 |
+
margin-left: 2px;
|
449 |
+
}
|
450 |
+
|
451 |
+
/**
|
452 |
+
* 02. 23. Field: date
|
453 |
+
*/
|
454 |
+
.csf-field-date .csf--to {
|
455 |
+
margin-left: 0;
|
456 |
+
margin-right: 7px;
|
457 |
+
}
|
458 |
+
|
459 |
+
/**
|
460 |
+
* 02. 24. Field: map
|
461 |
+
*/
|
462 |
+
.csf-field-map .csf--map-input:last-child {
|
463 |
+
padding-left: 0;
|
464 |
+
padding-right: 10px;
|
465 |
+
}
|
466 |
+
|
467 |
+
/**
|
468 |
+
* 02. 25. Field: sortable
|
469 |
+
*/
|
470 |
+
.csf-field-sortable .csf-sortable-helper {
|
471 |
+
border-left: none;
|
472 |
+
border-right: 1px solid #eee;
|
473 |
+
}
|
474 |
+
|
475 |
+
/**
|
476 |
+
* 02. 26. Field: number
|
477 |
+
*/
|
478 |
+
.csf-field-number .csf--wrap {
|
479 |
+
float: right;
|
480 |
+
}
|
481 |
+
.csf-field-number .csf--unit {
|
482 |
+
left: 4px;
|
483 |
+
right: auto;
|
484 |
+
}
|
485 |
+
|
486 |
+
/**
|
487 |
+
* 03. Taxonomy
|
488 |
+
*/
|
489 |
+
.csf-taxonomy-add-fields {
|
490 |
+
margin-right: 0;
|
491 |
+
margin-left: 30px;
|
492 |
+
}
|
493 |
+
.csf-taxonomy-add-fields .csf-field > .csf-fieldset > .csf-help {
|
494 |
+
left: -5px;
|
495 |
+
right: auto;
|
496 |
+
}
|
497 |
+
|
498 |
+
.csf-taxonomy-edit-fields {
|
499 |
+
margin-right: 0;
|
500 |
+
margin-left: 35px;
|
501 |
+
}
|
502 |
+
.csf-taxonomy-edit-fields .csf-field > .csf-fieldset > .csf-help {
|
503 |
+
right: auto;
|
504 |
+
left: -5px;
|
505 |
+
}
|
506 |
+
|
507 |
+
/**
|
508 |
+
* 04. Profile
|
509 |
+
*/
|
510 |
+
.csf-profile-options > h2 > .fa {
|
511 |
+
padding-right: 0;
|
512 |
+
padding-left: 7px;
|
513 |
+
}
|
514 |
+
.csf-profile-options > .csf-field > .csf-fieldset > .csf-help {
|
515 |
+
left: -5px;
|
516 |
+
right: auto;
|
517 |
+
}
|
518 |
+
|
519 |
+
/**
|
520 |
+
* 05. Nav Menu
|
521 |
+
*/
|
522 |
+
.csf-nav-menu-options > .csf-fields {
|
523 |
+
margin-left: 0;
|
524 |
+
margin-right: -10px;
|
525 |
+
}
|
526 |
+
|
527 |
+
.csf-nav-menu-title {
|
528 |
+
padding-left: 14px;
|
529 |
+
padding-right: 12px;
|
530 |
+
}
|
531 |
+
|
532 |
+
.csf-nav-menu-icon {
|
533 |
+
margin-right: 0;
|
534 |
+
margin-left: 5px;
|
535 |
+
}
|
536 |
+
|
537 |
+
/**
|
538 |
+
* 06. Modal
|
539 |
+
*/
|
540 |
+
.csf-modal-content .csf-field {
|
541 |
+
padding: 15px 15px 15px 30px;
|
542 |
+
}
|
543 |
+
|
544 |
+
.csf-modal-title {
|
545 |
+
padding: 0 16px 0 36px;
|
546 |
+
}
|
547 |
+
|
548 |
+
.csf-modal-close {
|
549 |
+
right: auto;
|
550 |
+
left: 0;
|
551 |
+
}
|
552 |
+
|
553 |
+
/**
|
554 |
+
* 07. Customizer
|
555 |
+
*/
|
556 |
+
.control-section .csf-field .csf-fieldset {
|
557 |
+
margin-right: 0;
|
558 |
+
}
|
559 |
+
|
560 |
+
/**
|
561 |
+
* 08. Responsive
|
562 |
+
*/
|
563 |
+
@media only screen and (max-width: 1200px) {
|
564 |
+
.csf-metabox .csf-field .csf-fieldset {
|
565 |
+
margin-left: 0;
|
566 |
+
}
|
567 |
+
}
|
568 |
+
@media only screen and (max-width: 782px) {
|
569 |
+
.csf .csf-fieldset,
|
570 |
+
.csf .csf-content {
|
571 |
+
margin-right: 0;
|
572 |
+
}
|
573 |
+
}
|
574 |
+
/**
|
575 |
+
* 09. Others
|
576 |
+
*/
|
577 |
+
.csf-field .csf--transparent-slider {
|
578 |
+
margin-left: 0;
|
579 |
+
margin-right: 2px;
|
580 |
+
}
|
581 |
+
.csf-field .csf--transparent-slider .ui-slider-handle {
|
582 |
+
margin: 0 -11px;
|
583 |
+
}
|
584 |
+
.csf-field .csf--transparent-offset {
|
585 |
+
background-position: center right;
|
586 |
+
}
|
587 |
+
.csf-field .csf--transparent-text {
|
588 |
+
right: auto;
|
589 |
+
left: 10px;
|
590 |
+
}
|
vendor/codestar-framework/assets/css/style.css
CHANGED
@@ -35,34 +35,35 @@
|
|
35 |
* 03. 10. Field: color_group
|
36 |
* 03. 11. Field: fieldset
|
37 |
* 03. 12. Field: date
|
38 |
-
* 03. 13. Field:
|
39 |
-
* 03. 14. Field:
|
40 |
-
* 03. 15. Field:
|
41 |
-
* 03. 16. Field:
|
42 |
-
* 03. 17. Field:
|
43 |
-
* 03. 18. Field:
|
44 |
-
* 03. 19. Field:
|
45 |
-
* 03. 20. Field:
|
46 |
-
* 03. 21. Field:
|
47 |
-
* 03. 22. Field:
|
48 |
-
* 03. 23. Field:
|
49 |
-
* 03. 24. Field:
|
50 |
-
* 03. 25. Field:
|
51 |
-
* 03. 26. Field:
|
52 |
-
* 03. 27. Field:
|
53 |
-
* 03. 28. Field:
|
54 |
-
* 03. 29. Field:
|
55 |
-
* 03. 30. Field:
|
56 |
-
* 03. 31. Field:
|
57 |
-
* 03. 32. Field:
|
58 |
-
* 03. 33. Field:
|
59 |
-
* 03. 34. Field:
|
60 |
-
* 03. 35. Field:
|
61 |
-
* 03. 36. Field:
|
62 |
-
* 03. 37. Field:
|
63 |
-
* 03. 38. Field:
|
64 |
-
* 03. 39. Field:
|
65 |
-
* 03. 40. Field:
|
|
|
66 |
* 04. Widget
|
67 |
* 05. Customizer
|
68 |
* 06. Taxonomy
|
@@ -1194,7 +1195,29 @@
|
|
1194 |
}
|
1195 |
|
1196 |
/**
|
1197 |
-
* 03. 13. Field:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1198 |
*/
|
1199 |
.csf-field-gallery ul {
|
1200 |
margin: 0;
|
@@ -1222,7 +1245,7 @@
|
|
1222 |
}
|
1223 |
|
1224 |
/**
|
1225 |
-
* 03.
|
1226 |
*/
|
1227 |
.csf-field-group .csf-cloneable-hidden {
|
1228 |
display: none !important;
|
@@ -1326,7 +1349,7 @@
|
|
1326 |
}
|
1327 |
|
1328 |
/**
|
1329 |
-
* 03.
|
1330 |
*/
|
1331 |
.csf-field-icon .button {
|
1332 |
margin-right: 5px;
|
@@ -1354,7 +1377,7 @@
|
|
1354 |
}
|
1355 |
|
1356 |
/**
|
1357 |
-
* 03.
|
1358 |
*/
|
1359 |
.csf-field-image_select .csf--image {
|
1360 |
display: inline-block;
|
@@ -1409,7 +1432,7 @@
|
|
1409 |
}
|
1410 |
|
1411 |
/**
|
1412 |
-
* 03.
|
1413 |
*/
|
1414 |
.csf-field-link_color .csf--left {
|
1415 |
float: left;
|
@@ -1422,7 +1445,7 @@
|
|
1422 |
}
|
1423 |
|
1424 |
/**
|
1425 |
-
* 03.
|
1426 |
*/
|
1427 |
.csf-field-map input {
|
1428 |
width: 100%;
|
@@ -1470,7 +1493,7 @@
|
|
1470 |
}
|
1471 |
|
1472 |
/**
|
1473 |
-
* 03.
|
1474 |
*/
|
1475 |
.csf-field-media .csf--placeholder {
|
1476 |
display: flex;
|
@@ -1491,7 +1514,7 @@
|
|
1491 |
}
|
1492 |
|
1493 |
/**
|
1494 |
-
* 03.
|
1495 |
*/
|
1496 |
.csf-field-palette .csf--palette {
|
1497 |
position: relative;
|
@@ -1542,7 +1565,7 @@
|
|
1542 |
}
|
1543 |
|
1544 |
/**
|
1545 |
-
* 03.
|
1546 |
*/
|
1547 |
.csf-field-repeater .csf-field-text input {
|
1548 |
width: 100%;
|
@@ -1617,7 +1640,7 @@
|
|
1617 |
}
|
1618 |
|
1619 |
/**
|
1620 |
-
* 03.
|
1621 |
*/
|
1622 |
.csf-field-select .csf-fieldset {
|
1623 |
min-height: 30px;
|
@@ -1634,7 +1657,7 @@
|
|
1634 |
}
|
1635 |
|
1636 |
/**
|
1637 |
-
* 03.
|
1638 |
*/
|
1639 |
.csf-field-slider .csf--wrap {
|
1640 |
display: flex;
|
@@ -1702,7 +1725,7 @@
|
|
1702 |
}
|
1703 |
|
1704 |
/**
|
1705 |
-
* 03.
|
1706 |
*/
|
1707 |
.csf-field-sortable .csf-field-text input {
|
1708 |
width: 100%;
|
@@ -1764,7 +1787,7 @@
|
|
1764 |
}
|
1765 |
|
1766 |
/**
|
1767 |
-
* 03.
|
1768 |
*/
|
1769 |
.csf-field-sorter .ui-sortable-placeholder {
|
1770 |
height: 20px;
|
@@ -1826,65 +1849,77 @@
|
|
1826 |
}
|
1827 |
|
1828 |
/**
|
1829 |
-
* 03.
|
1830 |
*/
|
1831 |
.csf-field-spinner .csf--spin {
|
1832 |
display: flex;
|
1833 |
}
|
|
|
|
|
|
|
1834 |
.csf-field-spinner .ui-spinner {
|
1835 |
display: flex;
|
|
|
|
|
|
|
|
|
|
|
1836 |
}
|
1837 |
-
.csf-field-spinner .ui-button {
|
1838 |
display: flex;
|
1839 |
flex-direction: column;
|
1840 |
justify-content: center;
|
1841 |
text-align: center;
|
1842 |
min-width: 20px;
|
1843 |
padding: 0 4px;
|
|
|
1844 |
color: #555;
|
1845 |
-
border: 1px solid #7e8993;
|
1846 |
background-color: #f5f5f5;
|
|
|
1847 |
}
|
1848 |
-
.csf-field-spinner .ui-spinner-button {
|
|
|
1849 |
cursor: pointer;
|
|
|
1850 |
}
|
1851 |
-
.csf-field-spinner .ui-spinner-button:hover {
|
1852 |
background-color: #e7e7e7;
|
1853 |
}
|
1854 |
-
.csf-field-spinner .ui-spinner-button:active {
|
1855 |
background-color: #ddd;
|
1856 |
}
|
1857 |
-
.csf-field-spinner .ui-spinner-button:before {
|
1858 |
font-family: "Font Awesome 5 Pro", "Font Awesome 5 Free", "FontAwesome";
|
1859 |
font-weight: 900;
|
1860 |
font-size: 14px;
|
1861 |
line-height: 14px;
|
1862 |
}
|
1863 |
-
.csf-field-spinner .ui-spinner-down {
|
1864 |
-
order: 1;
|
1865 |
border-right: 0;
|
1866 |
border-radius: 4px 0 0 4px;
|
1867 |
}
|
1868 |
-
.csf-field-spinner .ui-spinner-down:before {
|
1869 |
content: "\f0d9";
|
1870 |
}
|
1871 |
-
.csf-field-spinner .ui-spinner-
|
1872 |
-
order: 2;
|
1873 |
-
}
|
1874 |
-
.csf-field-spinner .csf--unit {
|
1875 |
-
order: 3;
|
1876 |
-
border-left: 0;
|
1877 |
-
user-select: none;
|
1878 |
-
}
|
1879 |
-
.csf-field-spinner .ui-spinner-up {
|
1880 |
-
order: 4;
|
1881 |
border-left: 0;
|
1882 |
border-radius: 0 4px 4px 0;
|
1883 |
}
|
1884 |
-
.csf-field-spinner .ui-spinner-up:before {
|
1885 |
content: "\f0da";
|
1886 |
}
|
1887 |
-
.csf-field-spinner
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1888 |
position: relative;
|
1889 |
z-index: 1;
|
1890 |
width: 50px;
|
@@ -1893,14 +1928,21 @@
|
|
1893 |
padding: 0 8px;
|
1894 |
border-radius: 0;
|
1895 |
}
|
1896 |
-
.csf-field-spinner .ui-
|
1897 |
-
|
1898 |
-
|
1899 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1900 |
}
|
1901 |
|
1902 |
/**
|
1903 |
-
* 03.
|
1904 |
*/
|
1905 |
.csf-field-switcher .csf--switcher {
|
1906 |
float: left;
|
@@ -1971,7 +2013,7 @@
|
|
1971 |
}
|
1972 |
|
1973 |
/**
|
1974 |
-
* 03.
|
1975 |
*/
|
1976 |
.csf-field-tabbed .csf-tabbed-content {
|
1977 |
border: 1px solid #ccd0d4;
|
@@ -2011,7 +2053,7 @@
|
|
2011 |
}
|
2012 |
|
2013 |
/**
|
2014 |
-
* 03.
|
2015 |
*/
|
2016 |
.csf-field-text input {
|
2017 |
width: 50%;
|
@@ -2020,7 +2062,7 @@
|
|
2020 |
}
|
2021 |
|
2022 |
/**
|
2023 |
-
* 03.
|
2024 |
*/
|
2025 |
.csf-field-textarea textarea {
|
2026 |
width: 100%;
|
@@ -2033,7 +2075,7 @@
|
|
2033 |
}
|
2034 |
|
2035 |
/**
|
2036 |
-
* 03.
|
2037 |
*/
|
2038 |
.csf-field-typography textarea,
|
2039 |
.csf-field-typography select {
|
@@ -2117,7 +2159,7 @@
|
|
2117 |
}
|
2118 |
|
2119 |
/**
|
2120 |
-
* 03.
|
2121 |
*/
|
2122 |
.csf-field-upload input {
|
2123 |
width: 100%;
|
@@ -2135,7 +2177,7 @@
|
|
2135 |
}
|
2136 |
|
2137 |
/**
|
2138 |
-
* 03.
|
2139 |
*/
|
2140 |
.csf-field-wp_editor .csf-wp-editor {
|
2141 |
float: left;
|
@@ -2177,7 +2219,7 @@
|
|
2177 |
}
|
2178 |
|
2179 |
/**
|
2180 |
-
* 03.
|
2181 |
*/
|
2182 |
.csf-field-heading {
|
2183 |
font-size: 1.5em;
|
@@ -2187,7 +2229,7 @@
|
|
2187 |
}
|
2188 |
|
2189 |
/**
|
2190 |
-
* 03.
|
2191 |
*/
|
2192 |
.csf-field-subheading {
|
2193 |
font-size: 14px;
|
@@ -2199,7 +2241,7 @@
|
|
2199 |
}
|
2200 |
|
2201 |
/**
|
2202 |
-
* 03.
|
2203 |
*/
|
2204 |
.csf-field-submessage {
|
2205 |
padding: 0 !important;
|
@@ -2247,7 +2289,7 @@
|
|
2247 |
}
|
2248 |
|
2249 |
/**
|
2250 |
-
* 03.
|
2251 |
*/
|
2252 |
.csf-field-notice {
|
2253 |
background-color: #f7f7f7;
|
@@ -2282,7 +2324,7 @@
|
|
2282 |
}
|
2283 |
|
2284 |
/**
|
2285 |
-
* 03.
|
2286 |
*/
|
2287 |
.csf-field-number input {
|
2288 |
width: 100%;
|
@@ -2312,7 +2354,7 @@
|
|
2312 |
}
|
2313 |
|
2314 |
/**
|
2315 |
-
* 03.
|
2316 |
*/
|
2317 |
.csf-field-link .csf--result {
|
2318 |
display: inline-block;
|
@@ -2350,7 +2392,7 @@
|
|
2350 |
}
|
2351 |
|
2352 |
/**
|
2353 |
-
* 03.
|
2354 |
*/
|
2355 |
.csf-help {
|
2356 |
cursor: help;
|
@@ -2711,7 +2753,13 @@
|
|
2711 |
margin-left: 0;
|
2712 |
margin-right: 0;
|
2713 |
}
|
2714 |
-
.control-section .csf-field-date
|
|
|
|
|
|
|
|
|
|
|
|
|
2715 |
margin-left: 0;
|
2716 |
}
|
2717 |
.control-section .csf-field-sorter ul li {
|
@@ -4220,3 +4268,909 @@
|
|
4220 |
padding: 4px 5px 4px 20px;
|
4221 |
direction: rtl;
|
4222 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
35 |
* 03. 10. Field: color_group
|
36 |
* 03. 11. Field: fieldset
|
37 |
* 03. 12. Field: date
|
38 |
+
* 03. 13. Field: datetime
|
39 |
+
* 03. 14. Field: gallery
|
40 |
+
* 03. 15. Field: group
|
41 |
+
* 03. 16. Field: icon
|
42 |
+
* 03. 17. Field: image_select
|
43 |
+
* 03. 18. Field: link_color
|
44 |
+
* 03. 19. Field: map
|
45 |
+
* 03. 20. Field: media
|
46 |
+
* 03. 21. Field: palette
|
47 |
+
* 03. 22. Field: repeater
|
48 |
+
* 03. 23. Field: select
|
49 |
+
* 03. 24. Field: slider
|
50 |
+
* 03. 25. Field: sortable
|
51 |
+
* 03. 26. Field: sorter
|
52 |
+
* 03. 27. Field: spinner
|
53 |
+
* 03. 28. Field: switcher
|
54 |
+
* 03. 29. Field: tabbed
|
55 |
+
* 03. 30. Field: text
|
56 |
+
* 03. 31. Field: textarea
|
57 |
+
* 03. 32. Field: typography
|
58 |
+
* 03. 33. Field: upload
|
59 |
+
* 03. 34. Field: wp_editor
|
60 |
+
* 03. 35. Field: heading
|
61 |
+
* 03. 36. Field: subheading
|
62 |
+
* 03. 37. Field: submessage
|
63 |
+
* 03. 38. Field: notice
|
64 |
+
* 03. 39. Field: number
|
65 |
+
* 03. 40. Field: link
|
66 |
+
* 03. 41. Field: others
|
67 |
* 04. Widget
|
68 |
* 05. Customizer
|
69 |
* 06. Taxonomy
|
1195 |
}
|
1196 |
|
1197 |
/**
|
1198 |
+
* 03. 13. Field: datetime
|
1199 |
+
*/
|
1200 |
+
.csf-field-datetime input {
|
1201 |
+
margin: 0;
|
1202 |
+
}
|
1203 |
+
.csf-field-datetime .csf--to {
|
1204 |
+
margin-left: 7px;
|
1205 |
+
}
|
1206 |
+
|
1207 |
+
.csf-flatpickr select,
|
1208 |
+
.csf-flatpickr input {
|
1209 |
+
min-height: auto;
|
1210 |
+
}
|
1211 |
+
.csf-flatpickr select:focus,
|
1212 |
+
.csf-flatpickr input:focus {
|
1213 |
+
box-shadow: none;
|
1214 |
+
}
|
1215 |
+
.csf-flatpickr.open {
|
1216 |
+
z-index: 9999999 !important;
|
1217 |
+
}
|
1218 |
+
|
1219 |
+
/**
|
1220 |
+
* 03. 14. Field: gallery
|
1221 |
*/
|
1222 |
.csf-field-gallery ul {
|
1223 |
margin: 0;
|
1245 |
}
|
1246 |
|
1247 |
/**
|
1248 |
+
* 03. 15. Field: group
|
1249 |
*/
|
1250 |
.csf-field-group .csf-cloneable-hidden {
|
1251 |
display: none !important;
|
1349 |
}
|
1350 |
|
1351 |
/**
|
1352 |
+
* 03. 16. Field: icon
|
1353 |
*/
|
1354 |
.csf-field-icon .button {
|
1355 |
margin-right: 5px;
|
1377 |
}
|
1378 |
|
1379 |
/**
|
1380 |
+
* 03. 17. Field: image_select
|
1381 |
*/
|
1382 |
.csf-field-image_select .csf--image {
|
1383 |
display: inline-block;
|
1432 |
}
|
1433 |
|
1434 |
/**
|
1435 |
+
* 03. 18. Field: link_color
|
1436 |
*/
|
1437 |
.csf-field-link_color .csf--left {
|
1438 |
float: left;
|
1445 |
}
|
1446 |
|
1447 |
/**
|
1448 |
+
* 03. 19. Field: map
|
1449 |
*/
|
1450 |
.csf-field-map input {
|
1451 |
width: 100%;
|
1493 |
}
|
1494 |
|
1495 |
/**
|
1496 |
+
* 03. 20. Field: media
|
1497 |
*/
|
1498 |
.csf-field-media .csf--placeholder {
|
1499 |
display: flex;
|
1514 |
}
|
1515 |
|
1516 |
/**
|
1517 |
+
* 03. 21. Field: palette
|
1518 |
*/
|
1519 |
.csf-field-palette .csf--palette {
|
1520 |
position: relative;
|
1565 |
}
|
1566 |
|
1567 |
/**
|
1568 |
+
* 03. 22. Field: repeater
|
1569 |
*/
|
1570 |
.csf-field-repeater .csf-field-text input {
|
1571 |
width: 100%;
|
1640 |
}
|
1641 |
|
1642 |
/**
|
1643 |
+
* 03. 23. Field: select
|
1644 |
*/
|
1645 |
.csf-field-select .csf-fieldset {
|
1646 |
min-height: 30px;
|
1657 |
}
|
1658 |
|
1659 |
/**
|
1660 |
+
* 03. 24. Field: slider
|
1661 |
*/
|
1662 |
.csf-field-slider .csf--wrap {
|
1663 |
display: flex;
|
1725 |
}
|
1726 |
|
1727 |
/**
|
1728 |
+
* 03. 25. Field: sortable
|
1729 |
*/
|
1730 |
.csf-field-sortable .csf-field-text input {
|
1731 |
width: 100%;
|
1787 |
}
|
1788 |
|
1789 |
/**
|
1790 |
+
* 03. 26. Field: sorter
|
1791 |
*/
|
1792 |
.csf-field-sorter .ui-sortable-placeholder {
|
1793 |
height: 20px;
|
1849 |
}
|
1850 |
|
1851 |
/**
|
1852 |
+
* 03. 27. Field: spinner
|
1853 |
*/
|
1854 |
.csf-field-spinner .csf--spin {
|
1855 |
display: flex;
|
1856 |
}
|
1857 |
+
.csf-field-spinner .ui-widget {
|
1858 |
+
font-family: inherit;
|
1859 |
+
}
|
1860 |
.csf-field-spinner .ui-spinner {
|
1861 |
display: flex;
|
1862 |
+
align-items: stretch;
|
1863 |
+
overflow: unset;
|
1864 |
+
border: none;
|
1865 |
+
background: none;
|
1866 |
+
border-radius: 0;
|
1867 |
}
|
1868 |
+
.csf-field-spinner .ui-spinner .ui-button {
|
1869 |
display: flex;
|
1870 |
flex-direction: column;
|
1871 |
justify-content: center;
|
1872 |
text-align: center;
|
1873 |
min-width: 20px;
|
1874 |
padding: 0 4px;
|
1875 |
+
margin: 0;
|
1876 |
color: #555;
|
|
|
1877 |
background-color: #f5f5f5;
|
1878 |
+
border: 1px solid #7e8993;
|
1879 |
}
|
1880 |
+
.csf-field-spinner .ui-spinner .ui-spinner-button {
|
1881 |
+
position: relative;
|
1882 |
cursor: pointer;
|
1883 |
+
height: auto;
|
1884 |
}
|
1885 |
+
.csf-field-spinner .ui-spinner .ui-spinner-button:hover {
|
1886 |
background-color: #e7e7e7;
|
1887 |
}
|
1888 |
+
.csf-field-spinner .ui-spinner .ui-spinner-button:active {
|
1889 |
background-color: #ddd;
|
1890 |
}
|
1891 |
+
.csf-field-spinner .ui-spinner .ui-spinner-button:before {
|
1892 |
font-family: "Font Awesome 5 Pro", "Font Awesome 5 Free", "FontAwesome";
|
1893 |
font-weight: 900;
|
1894 |
font-size: 14px;
|
1895 |
line-height: 14px;
|
1896 |
}
|
1897 |
+
.csf-field-spinner .ui-spinner .ui-spinner-down {
|
|
|
1898 |
border-right: 0;
|
1899 |
border-radius: 4px 0 0 4px;
|
1900 |
}
|
1901 |
+
.csf-field-spinner .ui-spinner .ui-spinner-down:before {
|
1902 |
content: "\f0d9";
|
1903 |
}
|
1904 |
+
.csf-field-spinner .ui-spinner .ui-spinner-up {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1905 |
border-left: 0;
|
1906 |
border-radius: 0 4px 4px 0;
|
1907 |
}
|
1908 |
+
.csf-field-spinner .ui-spinner .ui-spinner-up:before {
|
1909 |
content: "\f0da";
|
1910 |
}
|
1911 |
+
.csf-field-spinner .ui-spinner .csf--unit {
|
1912 |
+
border-left: 0;
|
1913 |
+
user-select: none;
|
1914 |
+
}
|
1915 |
+
.csf-field-spinner .ui-spinner .ui-button-text,
|
1916 |
+
.csf-field-spinner .ui-spinner .ui-button-icon,
|
1917 |
+
.csf-field-spinner .ui-spinner .ui-button-icon-space {
|
1918 |
+
display: none;
|
1919 |
+
}
|
1920 |
+
.csf-field-spinner .ui-spinner input {
|
1921 |
+
font-family: inherit;
|
1922 |
+
font-size: inherit;
|
1923 |
position: relative;
|
1924 |
z-index: 1;
|
1925 |
width: 50px;
|
1928 |
padding: 0 8px;
|
1929 |
border-radius: 0;
|
1930 |
}
|
1931 |
+
.csf-field-spinner .ui-spinner-down {
|
1932 |
+
order: 1;
|
1933 |
+
}
|
1934 |
+
.csf-field-spinner .ui-spinner-input {
|
1935 |
+
order: 2;
|
1936 |
+
}
|
1937 |
+
.csf-field-spinner .csf--unit {
|
1938 |
+
order: 3;
|
1939 |
+
}
|
1940 |
+
.csf-field-spinner .ui-spinner-up {
|
1941 |
+
order: 4;
|
1942 |
}
|
1943 |
|
1944 |
/**
|
1945 |
+
* 03. 28. Field: switcher
|
1946 |
*/
|
1947 |
.csf-field-switcher .csf--switcher {
|
1948 |
float: left;
|
2013 |
}
|
2014 |
|
2015 |
/**
|
2016 |
+
* 03. 29. Field: tabbed
|
2017 |
*/
|
2018 |
.csf-field-tabbed .csf-tabbed-content {
|
2019 |
border: 1px solid #ccd0d4;
|
2053 |
}
|
2054 |
|
2055 |
/**
|
2056 |
+
* 03. 30. Field: text
|
2057 |
*/
|
2058 |
.csf-field-text input {
|
2059 |
width: 50%;
|
2062 |
}
|
2063 |
|
2064 |
/**
|
2065 |
+
* 03. 31. Field: textarea
|
2066 |
*/
|
2067 |
.csf-field-textarea textarea {
|
2068 |
width: 100%;
|
2075 |
}
|
2076 |
|
2077 |
/**
|
2078 |
+
* 03. 32. Field: typography
|
2079 |
*/
|
2080 |
.csf-field-typography textarea,
|
2081 |
.csf-field-typography select {
|
2159 |
}
|
2160 |
|
2161 |
/**
|
2162 |
+
* 03. 33. Field: upload
|
2163 |
*/
|
2164 |
.csf-field-upload input {
|
2165 |
width: 100%;
|
2177 |
}
|
2178 |
|
2179 |
/**
|
2180 |
+
* 03. 34. Field: wp_editor
|
2181 |
*/
|
2182 |
.csf-field-wp_editor .csf-wp-editor {
|
2183 |
float: left;
|
2219 |
}
|
2220 |
|
2221 |
/**
|
2222 |
+
* 03. 35. Field: heading
|
2223 |
*/
|
2224 |
.csf-field-heading {
|
2225 |
font-size: 1.5em;
|
2229 |
}
|
2230 |
|
2231 |
/**
|
2232 |
+
* 03. 36. Field: subheading
|
2233 |
*/
|
2234 |
.csf-field-subheading {
|
2235 |
font-size: 14px;
|
2241 |
}
|
2242 |
|
2243 |
/**
|
2244 |
+
* 03. 37. Field: submessage
|
2245 |
*/
|
2246 |
.csf-field-submessage {
|
2247 |
padding: 0 !important;
|
2289 |
}
|
2290 |
|
2291 |
/**
|
2292 |
+
* 03. 38. Field: notice
|
2293 |
*/
|
2294 |
.csf-field-notice {
|
2295 |
background-color: #f7f7f7;
|
2324 |
}
|
2325 |
|
2326 |
/**
|
2327 |
+
* 03. 39. Field: number
|
2328 |
*/
|
2329 |
.csf-field-number input {
|
2330 |
width: 100%;
|
2354 |
}
|
2355 |
|
2356 |
/**
|
2357 |
+
* 03. 40. Field: link
|
2358 |
*/
|
2359 |
.csf-field-link .csf--result {
|
2360 |
display: inline-block;
|
2392 |
}
|
2393 |
|
2394 |
/**
|
2395 |
+
* 03. 41. others
|
2396 |
*/
|
2397 |
.csf-help {
|
2398 |
cursor: help;
|
2753 |
margin-left: 0;
|
2754 |
margin-right: 0;
|
2755 |
}
|
2756 |
+
.control-section .csf-field-date label,
|
2757 |
+
.control-section .csf-field-datetime label {
|
2758 |
+
display: block;
|
2759 |
+
}
|
2760 |
+
.control-section .csf-field-date .csf--to,
|
2761 |
+
.control-section .csf-field-datetime .csf--to {
|
2762 |
+
margin-top: 4px;
|
2763 |
margin-left: 0;
|
2764 |
}
|
2765 |
.control-section .csf-field-sorter ul li {
|
4268 |
padding: 4px 5px 4px 20px;
|
4269 |
direction: rtl;
|
4270 |
}
|
4271 |
+
|
4272 |
+
/**
|
4273 |
+
* Flatpickr
|
4274 |
+
*/
|
4275 |
+
.flatpickr-calendar {
|
4276 |
+
background: transparent;
|
4277 |
+
opacity: 0;
|
4278 |
+
display: none;
|
4279 |
+
text-align: center;
|
4280 |
+
visibility: hidden;
|
4281 |
+
padding: 0;
|
4282 |
+
-webkit-animation: none;
|
4283 |
+
animation: none;
|
4284 |
+
direction: ltr;
|
4285 |
+
border: 0;
|
4286 |
+
font-size: 14px;
|
4287 |
+
line-height: 24px;
|
4288 |
+
border-radius: 5px;
|
4289 |
+
position: absolute;
|
4290 |
+
width: 307.875px;
|
4291 |
+
-webkit-box-sizing: border-box;
|
4292 |
+
box-sizing: border-box;
|
4293 |
+
-ms-touch-action: manipulation;
|
4294 |
+
touch-action: manipulation;
|
4295 |
+
background: #fff;
|
4296 |
+
-webkit-box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0, 0, 0, 0.08);
|
4297 |
+
box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0, 0, 0, 0.08);
|
4298 |
+
}
|
4299 |
+
|
4300 |
+
.flatpickr-calendar.open,
|
4301 |
+
.flatpickr-calendar.inline {
|
4302 |
+
opacity: 1;
|
4303 |
+
max-height: 640px;
|
4304 |
+
visibility: visible;
|
4305 |
+
}
|
4306 |
+
|
4307 |
+
.flatpickr-calendar.open {
|
4308 |
+
display: inline-block;
|
4309 |
+
z-index: 99999;
|
4310 |
+
}
|
4311 |
+
|
4312 |
+
.flatpickr-calendar.animate.open {
|
4313 |
+
-webkit-animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);
|
4314 |
+
animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);
|
4315 |
+
}
|
4316 |
+
|
4317 |
+
.flatpickr-calendar.inline {
|
4318 |
+
display: block;
|
4319 |
+
position: relative;
|
4320 |
+
top: 2px;
|
4321 |
+
}
|
4322 |
+
|
4323 |
+
.flatpickr-calendar.static {
|
4324 |
+
position: absolute;
|
4325 |
+
top: calc(100% + 2px);
|
4326 |
+
}
|
4327 |
+
|
4328 |
+
.flatpickr-calendar.static.open {
|
4329 |
+
z-index: 999;
|
4330 |
+
display: block;
|
4331 |
+
}
|
4332 |
+
|
4333 |
+
.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7) {
|
4334 |
+
-webkit-box-shadow: none !important;
|
4335 |
+
box-shadow: none !important;
|
4336 |
+
}
|
4337 |
+
|
4338 |
+
.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1) {
|
4339 |
+
-webkit-box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
|
4340 |
+
box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
|
4341 |
+
}
|
4342 |
+
|
4343 |
+
.flatpickr-calendar .hasWeeks .dayContainer,
|
4344 |
+
.flatpickr-calendar .hasTime .dayContainer {
|
4345 |
+
border-bottom: 0;
|
4346 |
+
border-bottom-right-radius: 0;
|
4347 |
+
border-bottom-left-radius: 0;
|
4348 |
+
}
|
4349 |
+
|
4350 |
+
.flatpickr-calendar .hasWeeks .dayContainer {
|
4351 |
+
border-left: 0;
|
4352 |
+
}
|
4353 |
+
|
4354 |
+
.flatpickr-calendar.hasTime .flatpickr-time {
|
4355 |
+
height: 40px;
|
4356 |
+
border-top: 1px solid #e6e6e6;
|
4357 |
+
}
|
4358 |
+
|
4359 |
+
.flatpickr-calendar.noCalendar.hasTime .flatpickr-time {
|
4360 |
+
height: auto;
|
4361 |
+
}
|
4362 |
+
|
4363 |
+
.flatpickr-calendar:before,
|
4364 |
+
.flatpickr-calendar:after {
|
4365 |
+
position: absolute;
|
4366 |
+
display: block;
|
4367 |
+
pointer-events: none;
|
4368 |
+
border: solid transparent;
|
4369 |
+
content: '';
|
4370 |
+
height: 0;
|
4371 |
+
width: 0;
|
4372 |
+
left: 22px;
|
4373 |
+
}
|
4374 |
+
|
4375 |
+
.flatpickr-calendar.rightMost:before,
|
4376 |
+
.flatpickr-calendar.arrowRight:before,
|
4377 |
+
.flatpickr-calendar.rightMost:after,
|
4378 |
+
.flatpickr-calendar.arrowRight:after {
|
4379 |
+
left: auto;
|
4380 |
+
right: 22px;
|
4381 |
+
}
|
4382 |
+
|
4383 |
+
.flatpickr-calendar.arrowCenter:before,
|
4384 |
+
.flatpickr-calendar.arrowCenter:after {
|
4385 |
+
left: 50%;
|
4386 |
+
right: 50%;
|
4387 |
+
}
|
4388 |
+
|
4389 |
+
.flatpickr-calendar:before {
|
4390 |
+
border-width: 5px;
|
4391 |
+
margin: 0 -5px;
|
4392 |
+
}
|
4393 |
+
|
4394 |
+
.flatpickr-calendar:after {
|
4395 |
+
border-width: 4px;
|
4396 |
+
margin: 0 -4px;
|
4397 |
+
}
|
4398 |
+
|
4399 |
+
.flatpickr-calendar.arrowTop:before,
|
4400 |
+
.flatpickr-calendar.arrowTop:after {
|
4401 |
+
bottom: 100%;
|
4402 |
+
}
|
4403 |
+
|
4404 |
+
.flatpickr-calendar.arrowTop:before {
|
4405 |
+
border-bottom-color: #e6e6e6;
|
4406 |
+
}
|
4407 |
+
|
4408 |
+
.flatpickr-calendar.arrowTop:after {
|
4409 |
+
border-bottom-color: #fff;
|
4410 |
+
}
|
4411 |
+
|
4412 |
+
.flatpickr-calendar.arrowBottom:before,
|
4413 |
+
.flatpickr-calendar.arrowBottom:after {
|
4414 |
+
top: 100%;
|
4415 |
+
}
|
4416 |
+
|
4417 |
+
.flatpickr-calendar.arrowBottom:before {
|
4418 |
+
border-top-color: #e6e6e6;
|
4419 |
+
}
|
4420 |
+
|
4421 |
+
.flatpickr-calendar.arrowBottom:after {
|
4422 |
+
border-top-color: #fff;
|
4423 |
+
}
|
4424 |
+
|
4425 |
+
.flatpickr-calendar:focus {
|
4426 |
+
outline: 0;
|
4427 |
+
}
|
4428 |
+
|
4429 |
+
.flatpickr-wrapper {
|
4430 |
+
position: relative;
|
4431 |
+
display: inline-block;
|
4432 |
+
}
|
4433 |
+
|
4434 |
+
.flatpickr-months {
|
4435 |
+
display: -webkit-box;
|
4436 |
+
display: -webkit-flex;
|
4437 |
+
display: -ms-flexbox;
|
4438 |
+
display: flex;
|
4439 |
+
}
|
4440 |
+
|
4441 |
+
.flatpickr-months .flatpickr-month {
|
4442 |
+
background: transparent;
|
4443 |
+
color: rgba(0, 0, 0, 0.9);
|
4444 |
+
fill: rgba(0, 0, 0, 0.9);
|
4445 |
+
height: 34px;
|
4446 |
+
line-height: 1;
|
4447 |
+
text-align: center;
|
4448 |
+
position: relative;
|
4449 |
+
-webkit-user-select: none;
|
4450 |
+
-moz-user-select: none;
|
4451 |
+
-ms-user-select: none;
|
4452 |
+
user-select: none;
|
4453 |
+
overflow: hidden;
|
4454 |
+
-webkit-box-flex: 1;
|
4455 |
+
-webkit-flex: 1;
|
4456 |
+
-ms-flex: 1;
|
4457 |
+
flex: 1;
|
4458 |
+
}
|
4459 |
+
|
4460 |
+
.flatpickr-months .flatpickr-prev-month,
|
4461 |
+
.flatpickr-months .flatpickr-next-month {
|
4462 |
+
text-decoration: none;
|
4463 |
+
cursor: pointer;
|
4464 |
+
position: absolute;
|
4465 |
+
top: 0;
|
4466 |
+
height: 34px;
|
4467 |
+
padding: 10px;
|
4468 |
+
z-index: 3;
|
4469 |
+
color: rgba(0, 0, 0, 0.9);
|
4470 |
+
fill: rgba(0, 0, 0, 0.9);
|
4471 |
+
}
|
4472 |
+
|
4473 |
+
.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,
|
4474 |
+
.flatpickr-months .flatpickr-next-month.flatpickr-disabled {
|
4475 |
+
display: none;
|
4476 |
+
}
|
4477 |
+
|
4478 |
+
.flatpickr-months .flatpickr-prev-month i,
|
4479 |
+
.flatpickr-months .flatpickr-next-month i {
|
4480 |
+
position: relative;
|
4481 |
+
}
|
4482 |
+
|
4483 |
+
.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,
|
4484 |
+
.flatpickr-months .flatpickr-next-month.flatpickr-prev-month {
|
4485 |
+
/*
|
4486 |
+
/*rtl:begin:ignore*/
|
4487 |
+
/*
|
4488 |
+
*/
|
4489 |
+
left: 0;
|
4490 |
+
/*
|
4491 |
+
/*rtl:end:ignore*/
|
4492 |
+
/*
|
4493 |
+
*/
|
4494 |
+
}
|
4495 |
+
|
4496 |
+
/*
|
4497 |
+
/*rtl:begin:ignore*/
|
4498 |
+
/*
|
4499 |
+
/*rtl:end:ignore*/
|
4500 |
+
.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,
|
4501 |
+
.flatpickr-months .flatpickr-next-month.flatpickr-next-month {
|
4502 |
+
/*
|
4503 |
+
/*rtl:begin:ignore*/
|
4504 |
+
/*
|
4505 |
+
*/
|
4506 |
+
right: 0;
|
4507 |
+
/*
|
4508 |
+
/*rtl:end:ignore*/
|
4509 |
+
/*
|
4510 |
+
*/
|
4511 |
+
}
|
4512 |
+
|
4513 |
+
/*
|
4514 |
+
/*rtl:begin:ignore*/
|
4515 |
+
/*
|
4516 |
+
/*rtl:end:ignore*/
|
4517 |
+
.flatpickr-months .flatpickr-prev-month:hover,
|
4518 |
+
.flatpickr-months .flatpickr-next-month:hover {
|
4519 |
+
color: #959ea9;
|
4520 |
+
}
|
4521 |
+
|
4522 |
+
.flatpickr-months .flatpickr-prev-month:hover svg,
|
4523 |
+
.flatpickr-months .flatpickr-next-month:hover svg {
|
4524 |
+
fill: #f64747;
|
4525 |
+
}
|
4526 |
+
|
4527 |
+
.flatpickr-months .flatpickr-prev-month svg,
|
4528 |
+
.flatpickr-months .flatpickr-next-month svg {
|
4529 |
+
width: 14px;
|
4530 |
+
height: 14px;
|
4531 |
+
}
|
4532 |
+
|
4533 |
+
.flatpickr-months .flatpickr-prev-month svg path,
|
4534 |
+
.flatpickr-months .flatpickr-next-month svg path {
|
4535 |
+
-webkit-transition: fill 0.1s;
|
4536 |
+
transition: fill 0.1s;
|
4537 |
+
fill: inherit;
|
4538 |
+
}
|
4539 |
+
|
4540 |
+
.numInputWrapper {
|
4541 |
+
position: relative;
|
4542 |
+
height: auto;
|
4543 |
+
}
|
4544 |
+
|
4545 |
+
.numInputWrapper input,
|
4546 |
+
.numInputWrapper span {
|
4547 |
+
display: inline-block;
|
4548 |
+
}
|
4549 |
+
|
4550 |
+
.numInputWrapper input {
|
4551 |
+
width: 100%;
|
4552 |
+
}
|
4553 |
+
|
4554 |
+
.numInputWrapper input::-ms-clear {
|
4555 |
+
display: none;
|
4556 |
+
}
|
4557 |
+
|
4558 |
+
.numInputWrapper input::-webkit-outer-spin-button,
|
4559 |
+
.numInputWrapper input::-webkit-inner-spin-button {
|
4560 |
+
margin: 0;
|
4561 |
+
-webkit-appearance: none;
|
4562 |
+
}
|
4563 |
+
|
4564 |
+
.numInputWrapper span {
|
4565 |
+
position: absolute;
|
4566 |
+
right: 0;
|
4567 |
+
width: 14px;
|
4568 |
+
padding: 0 4px 0 2px;
|
4569 |
+
height: 50%;
|
4570 |
+
line-height: 50%;
|
4571 |
+
opacity: 0;
|
4572 |
+
cursor: pointer;
|
4573 |
+
border: 1px solid rgba(57, 57, 57, 0.15);
|
4574 |
+
-webkit-box-sizing: border-box;
|
4575 |
+
box-sizing: border-box;
|
4576 |
+
}
|
4577 |
+
|
4578 |
+
.numInputWrapper span:hover {
|
4579 |
+
background: rgba(0, 0, 0, 0.1);
|
4580 |
+
}
|
4581 |
+
|
4582 |
+
.numInputWrapper span:active {
|
4583 |
+
background: rgba(0, 0, 0, 0.2);
|
4584 |
+
}
|
4585 |
+
|
4586 |
+
.numInputWrapper span:after {
|
4587 |
+
display: block;
|
4588 |
+
content: "";
|
4589 |
+
position: absolute;
|
4590 |
+
}
|
4591 |
+
|
4592 |
+
.numInputWrapper span.arrowUp {
|
4593 |
+
top: 0;
|
4594 |
+
border-bottom: 0;
|
4595 |
+
}
|
4596 |
+
|
4597 |
+
.numInputWrapper span.arrowUp:after {
|
4598 |
+
border-left: 4px solid transparent;
|
4599 |
+
border-right: 4px solid transparent;
|
4600 |
+
border-bottom: 4px solid rgba(57, 57, 57, 0.6);
|
4601 |
+
top: 26%;
|
4602 |
+
}
|
4603 |
+
|
4604 |
+
.numInputWrapper span.arrowDown {
|
4605 |
+
top: 50%;
|
4606 |
+
}
|
4607 |
+
|
4608 |
+
.numInputWrapper span.arrowDown:after {
|
4609 |
+
border-left: 4px solid transparent;
|
4610 |
+
border-right: 4px solid transparent;
|
4611 |
+
border-top: 4px solid rgba(57, 57, 57, 0.6);
|
4612 |
+
top: 40%;
|
4613 |
+
}
|
4614 |
+
|
4615 |
+
.numInputWrapper span svg {
|
4616 |
+
width: inherit;
|
4617 |
+
height: auto;
|
4618 |
+
}
|
4619 |
+
|
4620 |
+
.numInputWrapper span svg path {
|
4621 |
+
fill: rgba(0, 0, 0, 0.5);
|
4622 |
+
}
|
4623 |
+
|
4624 |
+
.numInputWrapper:hover {
|
4625 |
+
background: rgba(0, 0, 0, 0.05);
|
4626 |
+
}
|
4627 |
+
|
4628 |
+
.numInputWrapper:hover span {
|
4629 |
+
opacity: 1;
|
4630 |
+
}
|
4631 |
+
|
4632 |
+
.flatpickr-current-month {
|
4633 |
+
font-size: 135%;
|
4634 |
+
line-height: inherit;
|
4635 |
+
font-weight: 300;
|
4636 |
+
color: inherit;
|
4637 |
+
position: absolute;
|
4638 |
+
width: 75%;
|
4639 |
+
left: 12.5%;
|
4640 |
+
padding: 7.48px 0 0 0;
|
4641 |
+
line-height: 1;
|
4642 |
+
height: 34px;
|
4643 |
+
display: inline-block;
|
4644 |
+
text-align: center;
|
4645 |
+
-webkit-transform: translate3d(0px, 0px, 0px);
|
4646 |
+
transform: translate3d(0px, 0px, 0px);
|
4647 |
+
}
|
4648 |
+
|
4649 |
+
.flatpickr-current-month span.cur-month {
|
4650 |
+
font-family: inherit;
|
4651 |
+
font-weight: 700;
|
4652 |
+
color: inherit;
|
4653 |
+
display: inline-block;
|
4654 |
+
margin-left: 0.5ch;
|
4655 |
+
padding: 0;
|
4656 |
+
}
|
4657 |
+
|
4658 |
+
.flatpickr-current-month span.cur-month:hover {
|
4659 |
+
background: rgba(0, 0, 0, 0.05);
|
4660 |
+
}
|
4661 |
+
|
4662 |
+
.flatpickr-current-month .numInputWrapper {
|
4663 |
+
width: 6ch;
|
4664 |
+
width: 7ch\0;
|
4665 |
+
display: inline-block;
|
4666 |
+
}
|
4667 |
+
|
4668 |
+
.flatpickr-current-month .numInputWrapper span.arrowUp:after {
|
4669 |
+
border-bottom-color: rgba(0, 0, 0, 0.9);
|
4670 |
+
}
|
4671 |
+
|
4672 |
+
.flatpickr-current-month .numInputWrapper span.arrowDown:after {
|
4673 |
+
border-top-color: rgba(0, 0, 0, 0.9);
|
4674 |
+
}
|
4675 |
+
|
4676 |
+
.flatpickr-current-month input.cur-year {
|
4677 |
+
background: transparent;
|
4678 |
+
-webkit-box-sizing: border-box;
|
4679 |
+
box-sizing: border-box;
|
4680 |
+
color: inherit;
|
4681 |
+
cursor: text;
|
4682 |
+
padding: 0 0 0 0.5ch;
|
4683 |
+
margin: 0;
|
4684 |
+
display: inline-block;
|
4685 |
+
font-size: inherit;
|
4686 |
+
font-family: inherit;
|
4687 |
+
font-weight: 300;
|
4688 |
+
line-height: inherit;
|
4689 |
+
height: auto;
|
4690 |
+
border: 0;
|
4691 |
+
border-radius: 0;
|
4692 |
+
vertical-align: initial;
|
4693 |
+
-webkit-appearance: textfield;
|
4694 |
+
-moz-appearance: textfield;
|
4695 |
+
appearance: textfield;
|
4696 |
+
}
|
4697 |
+
|
4698 |
+
.flatpickr-current-month input.cur-year:focus {
|
4699 |
+
outline: 0;
|
4700 |
+
}
|
4701 |
+
|
4702 |
+
.flatpickr-current-month input.cur-year[disabled],
|
4703 |
+
.flatpickr-current-month input.cur-year[disabled]:hover {
|
4704 |
+
font-size: 100%;
|
4705 |
+
color: rgba(0, 0, 0, 0.5);
|
4706 |
+
background: transparent;
|
4707 |
+
pointer-events: none;
|
4708 |
+
}
|
4709 |
+
|
4710 |
+
.flatpickr-current-month .flatpickr-monthDropdown-months {
|
4711 |
+
appearance: menulist;
|
4712 |
+
background: transparent;
|
4713 |
+
border: none;
|
4714 |
+
border-radius: 0;
|
4715 |
+
box-sizing: border-box;
|
4716 |
+
color: inherit;
|
4717 |
+
cursor: pointer;
|
4718 |
+
font-size: inherit;
|
4719 |
+
font-family: inherit;
|
4720 |
+
font-weight: 300;
|
4721 |
+
height: auto;
|
4722 |
+
line-height: inherit;
|
4723 |
+
margin: -1px 0 0 0;
|
4724 |
+
outline: none;
|
4725 |
+
padding: 0 0 0 0.5ch;
|
4726 |
+
position: relative;
|
4727 |
+
vertical-align: initial;
|
4728 |
+
-webkit-box-sizing: border-box;
|
4729 |
+
-webkit-appearance: menulist;
|
4730 |
+
-moz-appearance: menulist;
|
4731 |
+
width: auto;
|
4732 |
+
}
|
4733 |
+
|
4734 |
+
.flatpickr-current-month .flatpickr-monthDropdown-months:focus,
|
4735 |
+
.flatpickr-current-month .flatpickr-monthDropdown-months:active {
|
4736 |
+
outline: none;
|
4737 |
+
}
|
4738 |
+
|
4739 |
+
.flatpickr-current-month .flatpickr-monthDropdown-months:hover {
|
4740 |
+
background: rgba(0, 0, 0, 0.05);
|
4741 |
+
}
|
4742 |
+
|
4743 |
+
.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month {
|
4744 |
+
background-color: transparent;
|
4745 |
+
outline: none;
|
4746 |
+
padding: 0;
|
4747 |
+
}
|
4748 |
+
|
4749 |
+
.flatpickr-weekdays {
|
4750 |
+
background: transparent;
|
4751 |
+
text-align: center;
|
4752 |
+
overflow: hidden;
|
4753 |
+
width: 100%;
|
4754 |
+
display: -webkit-box;
|
4755 |
+
display: -webkit-flex;
|
4756 |
+
display: -ms-flexbox;
|
4757 |
+
display: flex;
|
4758 |
+
-webkit-box-align: center;
|
4759 |
+
-webkit-align-items: center;
|
4760 |
+
-ms-flex-align: center;
|
4761 |
+
align-items: center;
|
4762 |
+
height: 28px;
|
4763 |
+
}
|
4764 |
+
|
4765 |
+
.flatpickr-weekdays .flatpickr-weekdaycontainer {
|
4766 |
+
display: -webkit-box;
|
4767 |
+
display: -webkit-flex;
|
4768 |
+
display: -ms-flexbox;
|
4769 |
+
display: flex;
|
4770 |
+
-webkit-box-flex: 1;
|
4771 |
+
-webkit-flex: 1;
|
4772 |
+
-ms-flex: 1;
|
4773 |
+
flex: 1;
|
4774 |
+
}
|
4775 |
+
|
4776 |
+
span.flatpickr-weekday {
|
4777 |
+
cursor: default;
|
4778 |
+
font-size: 90%;
|
4779 |
+
background: transparent;
|
4780 |
+
color: rgba(0, 0, 0, 0.54);
|
4781 |
+
line-height: 1;
|
4782 |
+
margin: 0;
|
4783 |
+
text-align: center;
|
4784 |
+
display: block;
|
4785 |
+
-webkit-box-flex: 1;
|
4786 |
+
-webkit-flex: 1;
|
4787 |
+
-ms-flex: 1;
|
4788 |
+
flex: 1;
|
4789 |
+
font-weight: bolder;
|
4790 |
+
}
|
4791 |
+
|
4792 |
+
.dayContainer,
|
4793 |
+
.flatpickr-weeks {
|
4794 |
+
padding: 1px 0 0 0;
|
4795 |
+
}
|
4796 |
+
|
4797 |
+
.flatpickr-days {
|
4798 |
+
position: relative;
|
4799 |
+
overflow: hidden;
|
4800 |
+
display: -webkit-box;
|
4801 |
+
display: -webkit-flex;
|
4802 |
+
display: -ms-flexbox;
|
4803 |
+
display: flex;
|
4804 |
+
-webkit-box-align: start;
|
4805 |
+
-webkit-align-items: flex-start;
|
4806 |
+
-ms-flex-align: start;
|
4807 |
+
align-items: flex-start;
|
4808 |
+
width: 307.875px;
|
4809 |
+
}
|
4810 |
+
|
4811 |
+
.flatpickr-days:focus {
|
4812 |
+
outline: 0;
|
4813 |
+
}
|
4814 |
+
|
4815 |
+
.dayContainer {
|
4816 |
+
padding: 0;
|
4817 |
+
outline: 0;
|
4818 |
+
text-align: left;
|
4819 |
+
width: 307.875px;
|
4820 |
+
min-width: 307.875px;
|
4821 |
+
max-width: 307.875px;
|
4822 |
+
-webkit-box-sizing: border-box;
|
4823 |
+
box-sizing: border-box;
|
4824 |
+
display: inline-block;
|
4825 |
+
display: -ms-flexbox;
|
4826 |
+
display: -webkit-box;
|
4827 |
+
display: -webkit-flex;
|
4828 |
+
display: flex;
|
4829 |
+
-webkit-flex-wrap: wrap;
|
4830 |
+
flex-wrap: wrap;
|
4831 |
+
-ms-flex-wrap: wrap;
|
4832 |
+
-ms-flex-pack: justify;
|
4833 |
+
-webkit-justify-content: space-around;
|
4834 |
+
justify-content: space-around;
|
4835 |
+
-webkit-transform: translate3d(0px, 0px, 0px);
|
4836 |
+
transform: translate3d(0px, 0px, 0px);
|
4837 |
+
opacity: 1;
|
4838 |
+
}
|
4839 |
+
|
4840 |
+
.dayContainer + .dayContainer {
|
4841 |
+
-webkit-box-shadow: -1px 0 0 #e6e6e6;
|
4842 |
+
box-shadow: -1px 0 0 #e6e6e6;
|
4843 |
+
}
|
4844 |
+
|
4845 |
+
.flatpickr-day {
|
4846 |
+
background: none;
|
4847 |
+
border: 1px solid transparent;
|
4848 |
+
border-radius: 150px;
|
4849 |
+
-webkit-box-sizing: border-box;
|
4850 |
+
box-sizing: border-box;
|
4851 |
+
color: #393939;
|
4852 |
+
cursor: pointer;
|
4853 |
+
font-weight: 400;
|
4854 |
+
width: 14.2857143%;
|
4855 |
+
-webkit-flex-basis: 14.2857143%;
|
4856 |
+
-ms-flex-preferred-size: 14.2857143%;
|
4857 |
+
flex-basis: 14.2857143%;
|
4858 |
+
max-width: 39px;
|
4859 |
+
height: 39px;
|
4860 |
+
line-height: 39px;
|
4861 |
+
margin: 0;
|
4862 |
+
display: inline-block;
|
4863 |
+
position: relative;
|
4864 |
+
-webkit-box-pack: center;
|
4865 |
+
-webkit-justify-content: center;
|
4866 |
+
-ms-flex-pack: center;
|
4867 |
+
justify-content: center;
|
4868 |
+
text-align: center;
|
4869 |
+
}
|
4870 |
+
|
4871 |
+
.flatpickr-day.inRange,
|
4872 |
+
.flatpickr-day.prevMonthDay.inRange,
|
4873 |
+
.flatpickr-day.nextMonthDay.inRange,
|
4874 |
+
.flatpickr-day.today.inRange,
|
4875 |
+
.flatpickr-day.prevMonthDay.today.inRange,
|
4876 |
+
.flatpickr-day.nextMonthDay.today.inRange,
|
4877 |
+
.flatpickr-day:hover,
|
4878 |
+
.flatpickr-day.prevMonthDay:hover,
|
4879 |
+
.flatpickr-day.nextMonthDay:hover,
|
4880 |
+
.flatpickr-day:focus,
|
4881 |
+
.flatpickr-day.prevMonthDay:focus,
|
4882 |
+
.flatpickr-day.nextMonthDay:focus {
|
4883 |
+
cursor: pointer;
|
4884 |
+
outline: 0;
|
4885 |
+
background: #e6e6e6;
|
4886 |
+
border-color: #e6e6e6;
|
4887 |
+
}
|
4888 |
+
|
4889 |
+
.flatpickr-day.today {
|
4890 |
+
border-color: #959ea9;
|
4891 |
+
}
|
4892 |
+
|
4893 |
+
.flatpickr-day.today:hover,
|
4894 |
+
.flatpickr-day.today:focus {
|
4895 |
+
border-color: #959ea9;
|
4896 |
+
background: #959ea9;
|
4897 |
+
color: #fff;
|
4898 |
+
}
|
4899 |
+
|
4900 |
+
.flatpickr-day.selected,
|
4901 |
+
.flatpickr-day.startRange,
|
4902 |
+
.flatpickr-day.endRange,
|
4903 |
+
.flatpickr-day.selected.inRange,
|
4904 |
+
.flatpickr-day.startRange.inRange,
|
4905 |
+
.flatpickr-day.endRange.inRange,
|
4906 |
+
.flatpickr-day.selected:focus,
|
4907 |
+
.flatpickr-day.startRange:focus,
|
4908 |
+
.flatpickr-day.endRange:focus,
|
4909 |
+
.flatpickr-day.selected:hover,
|
4910 |
+
.flatpickr-day.startRange:hover,
|
4911 |
+
.flatpickr-day.endRange:hover,
|
4912 |
+
.flatpickr-day.selected.prevMonthDay,
|
4913 |
+
.flatpickr-day.startRange.prevMonthDay,
|
4914 |
+
.flatpickr-day.endRange.prevMonthDay,
|
4915 |
+
.flatpickr-day.selected.nextMonthDay,
|
4916 |
+
.flatpickr-day.startRange.nextMonthDay,
|
4917 |
+
.flatpickr-day.endRange.nextMonthDay {
|
4918 |
+
background: #569ff7;
|
4919 |
+
-webkit-box-shadow: none;
|
4920 |
+
box-shadow: none;
|
4921 |
+
color: #fff;
|
4922 |
+
border-color: #569ff7;
|
4923 |
+
}
|
4924 |
+
|
4925 |
+
.flatpickr-day.selected.startRange,
|
4926 |
+
.flatpickr-day.startRange.startRange,
|
4927 |
+
.flatpickr-day.endRange.startRange {
|
4928 |
+
border-radius: 50px 0 0 50px;
|
4929 |
+
}
|
4930 |
+
|
4931 |
+
.flatpickr-day.selected.endRange,
|
4932 |
+
.flatpickr-day.startRange.endRange,
|
4933 |
+
.flatpickr-day.endRange.endRange {
|
4934 |
+
border-radius: 0 50px 50px 0;
|
4935 |
+
}
|
4936 |
+
|
4937 |
+
.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)),
|
4938 |
+
.flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)),
|
4939 |
+
.flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)) {
|
4940 |
+
-webkit-box-shadow: -10px 0 0 #569ff7;
|
4941 |
+
box-shadow: -10px 0 0 #569ff7;
|
4942 |
+
}
|
4943 |
+
|
4944 |
+
.flatpickr-day.selected.startRange.endRange,
|
4945 |
+
.flatpickr-day.startRange.startRange.endRange,
|
4946 |
+
.flatpickr-day.endRange.startRange.endRange {
|
4947 |
+
border-radius: 50px;
|
4948 |
+
}
|
4949 |
+
|
4950 |
+
.flatpickr-day.inRange {
|
4951 |
+
border-radius: 0;
|
4952 |
+
-webkit-box-shadow: -5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
|
4953 |
+
box-shadow: -5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
|
4954 |
+
}
|
4955 |
+
|
4956 |
+
.flatpickr-day.flatpickr-disabled,
|
4957 |
+
.flatpickr-day.flatpickr-disabled:hover,
|
4958 |
+
.flatpickr-day.prevMonthDay,
|
4959 |
+
.flatpickr-day.nextMonthDay,
|
4960 |
+
.flatpickr-day.notAllowed,
|
4961 |
+
.flatpickr-day.notAllowed.prevMonthDay,
|
4962 |
+
.flatpickr-day.notAllowed.nextMonthDay {
|
4963 |
+
color: rgba(57, 57, 57, 0.3);
|
4964 |
+
background: transparent;
|
4965 |
+
border-color: transparent;
|
4966 |
+
cursor: default;
|
4967 |
+
}
|
4968 |
+
|
4969 |
+
.flatpickr-day.flatpickr-disabled,
|
4970 |
+
.flatpickr-day.flatpickr-disabled:hover {
|
4971 |
+
cursor: not-allowed;
|
4972 |
+
color: rgba(57, 57, 57, 0.1);
|
4973 |
+
}
|
4974 |
+
|
4975 |
+
.flatpickr-day.week.selected {
|
4976 |
+
border-radius: 0;
|
4977 |
+
-webkit-box-shadow: -5px 0 0 #569ff7, 5px 0 0 #569ff7;
|
4978 |
+
box-shadow: -5px 0 0 #569ff7, 5px 0 0 #569ff7;
|
4979 |
+
}
|
4980 |
+
|
4981 |
+
.flatpickr-day.hidden {
|
4982 |
+
visibility: hidden;
|
4983 |
+
}
|
4984 |
+
|
4985 |
+
.rangeMode .flatpickr-day {
|
4986 |
+
margin-top: 1px;
|
4987 |
+
}
|
4988 |
+
|
4989 |
+
.flatpickr-weekwrapper {
|
4990 |
+
float: left;
|
4991 |
+
}
|
4992 |
+
|
4993 |
+
.flatpickr-weekwrapper .flatpickr-weeks {
|
4994 |
+
padding: 0 12px;
|
4995 |
+
-webkit-box-shadow: 1px 0 0 #e6e6e6;
|
4996 |
+
box-shadow: 1px 0 0 #e6e6e6;
|
4997 |
+
}
|
4998 |
+
|
4999 |
+
.flatpickr-weekwrapper .flatpickr-weekday {
|
5000 |
+
float: none;
|
5001 |
+
width: 100%;
|
5002 |
+
line-height: 28px;
|
5003 |
+
}
|
5004 |
+
|
5005 |
+
.flatpickr-weekwrapper span.flatpickr-day,
|
5006 |
+
.flatpickr-weekwrapper span.flatpickr-day:hover {
|
5007 |
+
display: block;
|
5008 |
+
width: 100%;
|
5009 |
+
max-width: none;
|
5010 |
+
color: rgba(57, 57, 57, 0.3);
|
5011 |
+
background: transparent;
|
5012 |
+
cursor: default;
|
5013 |
+
border: none;
|
5014 |
+
}
|
5015 |
+
|
5016 |
+
.flatpickr-innerContainer {
|
5017 |
+
display: block;
|
5018 |
+
display: -webkit-box;
|
5019 |
+
display: -webkit-flex;
|
5020 |
+
display: -ms-flexbox;
|
5021 |
+
display: flex;
|
5022 |
+
-webkit-box-sizing: border-box;
|
5023 |
+
box-sizing: border-box;
|
5024 |
+
overflow: hidden;
|
5025 |
+
}
|
5026 |
+
|
5027 |
+
.flatpickr-rContainer {
|
5028 |
+
display: inline-block;
|
5029 |
+
padding: 0;
|
5030 |
+
-webkit-box-sizing: border-box;
|
5031 |
+
box-sizing: border-box;
|
5032 |
+
}
|
5033 |
+
|
5034 |
+
.flatpickr-time {
|
5035 |
+
text-align: center;
|
5036 |
+
outline: 0;
|
5037 |
+
display: block;
|
5038 |
+
height: 0;
|
5039 |
+
line-height: 40px;
|
5040 |
+
max-height: 40px;
|
5041 |
+
-webkit-box-sizing: border-box;
|
5042 |
+
box-sizing: border-box;
|
5043 |
+
overflow: hidden;
|
5044 |
+
display: -webkit-box;
|
5045 |
+
display: -webkit-flex;
|
5046 |
+
display: -ms-flexbox;
|
5047 |
+
display: flex;
|
5048 |
+
}
|
5049 |
+
|
5050 |
+
.flatpickr-time:after {
|
5051 |
+
content: "";
|
5052 |
+
display: table;
|
5053 |
+
clear: both;
|
5054 |
+
}
|
5055 |
+
|
5056 |
+
.flatpickr-time .numInputWrapper {
|
5057 |
+
-webkit-box-flex: 1;
|
5058 |
+
-webkit-flex: 1;
|
5059 |
+
-ms-flex: 1;
|
5060 |
+
flex: 1;
|
5061 |
+
width: 40%;
|
5062 |
+
height: 40px;
|
5063 |
+
float: left;
|
5064 |
+
}
|
5065 |
+
|
5066 |
+
.flatpickr-time .numInputWrapper span.arrowUp:after {
|
5067 |
+
border-bottom-color: #393939;
|
5068 |
+
}
|
5069 |
+
|
5070 |
+
.flatpickr-time .numInputWrapper span.arrowDown:after {
|
5071 |
+
border-top-color: #393939;
|
5072 |
+
}
|
5073 |
+
|
5074 |
+
.flatpickr-time.hasSeconds .numInputWrapper {
|
5075 |
+
width: 26%;
|
5076 |
+
}
|
5077 |
+
|
5078 |
+
.flatpickr-time.time24hr .numInputWrapper {
|
5079 |
+
width: 49%;
|
5080 |
+
}
|
5081 |
+
|
5082 |
+
.flatpickr-time input {
|
5083 |
+
background: transparent;
|
5084 |
+
-webkit-box-shadow: none;
|
5085 |
+
box-shadow: none;
|
5086 |
+
border: 0;
|
5087 |
+
border-radius: 0;
|
5088 |
+
text-align: center;
|
5089 |
+
margin: 0;
|
5090 |
+
padding: 0;
|
5091 |
+
height: inherit;
|
5092 |
+
line-height: inherit;
|
5093 |
+
color: #393939;
|
5094 |
+
font-size: 14px;
|
5095 |
+
position: relative;
|
5096 |
+
-webkit-box-sizing: border-box;
|
5097 |
+
box-sizing: border-box;
|
5098 |
+
-webkit-appearance: textfield;
|
5099 |
+
-moz-appearance: textfield;
|
5100 |
+
appearance: textfield;
|
5101 |
+
}
|
5102 |
+
|
5103 |
+
.flatpickr-time input.flatpickr-hour {
|
5104 |
+
font-weight: bold;
|
5105 |
+
}
|
5106 |
+
|
5107 |
+
.flatpickr-time input.flatpickr-minute,
|
5108 |
+
.flatpickr-time input.flatpickr-second {
|
5109 |
+
font-weight: 400;
|
5110 |
+
}
|
5111 |
+
|
5112 |
+
.flatpickr-time input:focus {
|
5113 |
+
outline: 0;
|
5114 |
+
border: 0;
|
5115 |
+
}
|
5116 |
+
|
5117 |
+
.flatpickr-time .flatpickr-time-separator,
|
5118 |
+
.flatpickr-time .flatpickr-am-pm {
|
5119 |
+
height: inherit;
|
5120 |
+
float: left;
|
5121 |
+
line-height: inherit;
|
5122 |
+
color: #393939;
|
5123 |
+
font-weight: bold;
|
5124 |
+
width: 2%;
|
5125 |
+
-webkit-user-select: none;
|
5126 |
+
-moz-user-select: none;
|
5127 |
+
-ms-user-select: none;
|
5128 |
+
user-select: none;
|
5129 |
+
-webkit-align-self: center;
|
5130 |
+
-ms-flex-item-align: center;
|
5131 |
+
align-self: center;
|
5132 |
+
}
|
5133 |
+
|
5134 |
+
.flatpickr-time .flatpickr-am-pm {
|
5135 |
+
outline: 0;
|
5136 |
+
width: 18%;
|
5137 |
+
cursor: pointer;
|
5138 |
+
text-align: center;
|
5139 |
+
font-weight: 400;
|
5140 |
+
}
|
5141 |
+
|
5142 |
+
.flatpickr-time input:hover,
|
5143 |
+
.flatpickr-time .flatpickr-am-pm:hover,
|
5144 |
+
.flatpickr-time input:focus,
|
5145 |
+
.flatpickr-time .flatpickr-am-pm:focus {
|
5146 |
+
background: #eee;
|
5147 |
+
}
|
5148 |
+
|
5149 |
+
.flatpickr-input[readonly] {
|
5150 |
+
cursor: pointer;
|
5151 |
+
}
|
5152 |
+
|
5153 |
+
@-webkit-keyframes fpFadeInDown {
|
5154 |
+
from {
|
5155 |
+
opacity: 0;
|
5156 |
+
-webkit-transform: translate3d(0, -20px, 0);
|
5157 |
+
transform: translate3d(0, -20px, 0);
|
5158 |
+
}
|
5159 |
+
to {
|
5160 |
+
opacity: 1;
|
5161 |
+
-webkit-transform: translate3d(0, 0, 0);
|
5162 |
+
transform: translate3d(0, 0, 0);
|
5163 |
+
}
|
5164 |
+
}
|
5165 |
+
@keyframes fpFadeInDown {
|
5166 |
+
from {
|
5167 |
+
opacity: 0;
|
5168 |
+
-webkit-transform: translate3d(0, -20px, 0);
|
5169 |
+
transform: translate3d(0, -20px, 0);
|
5170 |
+
}
|
5171 |
+
to {
|
5172 |
+
opacity: 1;
|
5173 |
+
-webkit-transform: translate3d(0, 0, 0);
|
5174 |
+
transform: translate3d(0, 0, 0);
|
5175 |
+
}
|
5176 |
+
}
|
vendor/codestar-framework/assets/css/style.min.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.csf{position:relative}.csf label{padding:0;margin:0;display:inline-block}.csf-ab-icon{top:2px}#screen-meta-links+.csf-options{margin-top:40px}.csf-options{margin-top:20px;margin-right:20px}.csf-header{position:relative}.csf-header-inner{padding:25px;transition:box-shadow .3s ease}.csf-header-inner h1{float:left;font-size:1.5em;line-height:26px;font-weight:400;margin:0}.csf-header-inner h1 small{font-size:11px;font-weight:500}.csf-sticky .csf-header-inner{position:fixed;z-index:99;top:32px;box-shadow:0 5px 10px rgba(0,0,0,.1)}.csf-buttons{float:right}.csf-buttons .button{margin:0 2px;line-height:26px}.csf-buttons .button:focus{outline:0!important;box-shadow:none!important}.csf-buttons .csf-save{min-width:72px}.csf-header-left{float:left}.csf-header-right{float:right}.csf-nav{display:block;position:relative;z-index:10;float:left}.csf-nav ul{clear:left;margin:0;list-style-type:none}.csf-nav ul li{margin-bottom:0}.csf-nav ul li a{font-size:13px;position:relative;display:block;padding:14px 12px;text-decoration:none;transition-property:color,background;transition-duration:.2s;transition-timing-function:ease}.csf-nav ul li a:focus{outline:0;box-shadow:none}.csf-nav ul li .csf-arrow:after{content:"\f054";display:inline-block;font-family:"Font Awesome 5 Pro","Font Awesome 5 Free",FontAwesome;font-weight:900;font-size:9px;line-height:1;position:absolute;right:10px;top:50%;margin-top:-4px}.csf-nav ul li.csf-tab-expanded .csf-arrow:after{transform:rotate(90deg)}.csf-nav ul li.csf-tab-expanded ul{display:block}.csf-nav ul ul{display:none;position:relative}.csf-nav ul ul li a{font-size:12px;padding:12px 14px 12px 24px}.csf-nav .csf-tab-icon{width:20px;margin-right:5px;font-size:13px;text-align:center}.csf-nav .csf-label-error{margin-left:4px;vertical-align:top}.csf-nav-normal{width:225px}.csf-nav-normal+.csf-content{margin-left:225px}.csf-nav-inline{width:100%}.csf-nav-inline ul li{display:inline-block;vertical-align:top}.csf-nav-background{position:absolute;top:0;left:0;bottom:0;z-index:9;width:225px}.csf-wrapper{position:relative}.csf-content{position:relative;background-color:#fff}.csf-sections{float:left;width:100%}.csf-section-title{display:none;padding:20px 30px;background-color:#f5f5f5;border-top:1px solid #eee;border-bottom:1px solid #eee}.csf-section-title h3{margin:0;padding:0;font-size:13px;font-weight:700;text-transform:uppercase}.csf-section-title .csf-section-icon{margin-right:5px}.csf-footer{padding:20px;font-size:11px}.csf-copyright{float:left;margin-top:5px}.csf-search-all .csf-nav,.csf-search-all .csf-nav-background,.csf-show-all .csf-nav,.csf-show-all .csf-nav-background{display:none}.csf-search-all .csf-content,.csf-show-all .csf-content{margin-left:0}.csf-search-all .csf-section,.csf-search-all .csf-section-title,.csf-show-all .csf-section,.csf-show-all .csf-section-title{display:block!important}.csf-search-all .csf-section-title{display:none!important}.csf-expand-all{float:left;padding:0 8px;margin-right:4px;z-index:1;font-size:13px;line-height:30px;cursor:pointer;user-select:none;border-radius:2px;transition:all .2s}.csf-expand-all span{font-size:11px;vertical-align:middle}.csf-search{float:left}.csf-search input{margin:0 2px 0 0;border:none;font-size:12px;line-height:30px;min-height:30px;text-align:inherit;padding:0 10px;border-radius:2px;box-shadow:none}.csf-search input:focus{box-shadow:none}.csf-saving .csf-buttons,.csf-saving .csf-content{cursor:default;pointer-events:none;opacity:.5}.csf-metabox{margin:-6px -12px -12px -12px}.csf-metabox .csf-field{padding:20px}.csf-metabox .csf-section-title{padding:20px}.block-editor-page .csf-metabox{margin:-6px -14px -14px -14px}.block-editor-editor-skeleton__content .csf-metabox{border-left:1px solid #e2e4e7;border-right:1px solid #e2e4e7}.csf-sections-reset{float:left;width:100%;text-align:right;border-top:1px solid #eee}.csf-sections-reset .csf-button-cancel,.csf-sections-reset input{display:none}.csf-sections-reset label{padding:10px}.csf-sections-reset span{-webkit-user-select:none;user-select:none}.csf-sections-reset input:checked~.csf-button-reset{display:none}.csf-sections-reset input:checked~.csf-button-cancel{display:inline-block}#side-sortables .csf-section-title{padding:12px}#side-sortables .csf-field{padding:10px 15px}#side-sortables .csf-field .csf-title{float:none;width:100%;margin-bottom:6px}#side-sortables .csf-field .csf-fieldset{float:none;width:100%}#side-sortables .csf-field-text input{width:100%}#side-sortables .csf-notice{padding:10px 15px}.csf-comment-metabox{margin:-6px -12px -12px -12px}.csf-comment-metabox .csf-field{padding:20px}.csf-comment-metabox .csf-section-title{padding:20px}.csf-tooltip{position:absolute;z-index:5000001;font-size:12px;line-height:1.4;text-align:center;text-decoration:none;padding:6px 12px;max-width:200px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.85);border-radius:4px}.csf-theme-dark .csf-header-inner{background-color:#050505}.csf-theme-dark .csf-header-inner h1{color:#fff}.csf-theme-dark .csf-header-inner h1 small{color:#555}.csf-theme-dark .csf-expand-all{color:#999;background-color:#222}.csf-theme-dark .csf-expand-all:hover{color:#fff;background-color:#333}.csf-theme-dark .csf-search input{color:#fff;background-color:#222}.csf-theme-dark .csf-search:focus{background-color:#444}.csf-theme-dark .csf-search::-webkit-input-placeholder{color:#666}.csf-theme-dark .csf-nav ul li a{color:#999;border-color:#2f2f2f;background-color:#222}.csf-theme-dark .csf-nav ul li a:hover{color:#fff}.csf-theme-dark .csf-nav ul li .csf-active{color:#fff;background-color:#111}.csf-theme-dark .csf-nav ul ul li a{border-color:#2f2f2f;background-color:#191919}.csf-theme-dark .csf-nav ul ul li .csf-active{background-color:#101010}.csf-theme-dark .csf-nav ul ul:before{background-color:rgba(34,34,34,.75)}.csf-theme-dark .csf-nav>ul>li:last-child>a{border:none}.csf-theme-dark .csf-nav-normal ul li a{border-bottom-width:1px;border-bottom-style:solid}.csf-theme-dark .csf-nav-normal ul li .csf-active:after{content:" ";position:absolute;right:0;top:50%;height:0;width:0;pointer-events:none;border:solid transparent;border-right-color:#fff;border-width:4px;margin-top:-4px}.csf-theme-dark .csf-nav-inline{background-color:#222}.csf-theme-dark .csf-nav-inline ul li a{text-align:center;border-right-width:1px;border-right-style:solid}.csf-theme-dark .csf-nav-inline ul li .csf-active:after{content:" ";position:absolute;left:50%;bottom:0;height:0;width:0;pointer-events:none;border:solid transparent;border-bottom-color:#fff;border-width:4px;margin-left:-4px}.csf-theme-dark .csf-nav-background{background-color:#222}.csf-theme-dark .csf-footer{color:#555;background-color:#050505}.csf-theme-light .csf-container{border:1px solid #ccd0d4;box-shadow:0 0 15 rgba(0,0,0,.04)}.csf-theme-light .csf-header-inner{border-bottom:1px solid #ccd0d4;background-color:#f5f5f5;background:linear-gradient(#fefefe,#f5f5f5)}.csf-theme-light .csf-header-inner h1 small{color:#999}.csf-theme-light .csf-expand-all{color:#999;background-color:#eee}.csf-theme-light .csf-expand-all:hover{color:#555}.csf-theme-light .csf-search input{color:#555;background-color:#eee}.csf-theme-light .csf-search input::-webkit-input-placeholder{color:#999}.csf-theme-light .csf-nav ul li a{font-weight:500;color:#444;background-color:#f5f5f5}.csf-theme-light .csf-nav ul li a:hover{color:#111;background-color:#fff}.csf-theme-light .csf-nav ul li .csf-active{color:#111;background-color:#fff}.csf-theme-light .csf-nav ul ul li a{background-color:#eee}.csf-theme-light .csf-nav-normal>ul{margin-right:-1px;margin-bottom:-1px}.csf-theme-light .csf-nav-normal>ul li a{border-bottom:1px solid #ccd0d4;border-right:1px solid #ccd0d4}.csf-theme-light .csf-nav-normal>ul li .csf-active{border-right-color:#fff}.csf-theme-light .csf-nav-inline{background-color:#f5f5f5;border-bottom:1px solid #ccd0d4}.csf-theme-light .csf-nav-inline>ul{margin-bottom:-1px}.csf-theme-light .csf-nav-inline>ul li a{text-align:center;border-right:1px solid #ccd0d4;border-bottom:1px solid #ccd0d4}.csf-theme-light .csf-nav-inline>ul li .csf-active{border-bottom-color:#fff}.csf-theme-light .csf-nav-inline>ul ul{display:none!important}.csf-theme-light .csf-nav-inline .csf-arrow:after{display:none}.csf-theme-light .csf-nav-background{background-color:#f5f5f5;border-right:1px solid #ccd0d4}.csf-theme-light .csf-footer{color:#555;border-top:1px solid #ccd0d4;background-color:#f5f5f5;background:linear-gradient(#fafafa,#f5f5f5)}.csf-field{position:relative;padding:30px}.csf-field+.csf-field{border-top:1px solid #eee}.csf-field p:first-child{margin-top:0}.csf-field p:last-child{margin-bottom:0}.csf-field:after,.csf-field:before{content:" ";display:table}.csf-field:after{clear:both}.csf-field h4{margin-top:0}.csf-field .csf-title{position:relative;width:20%;float:left}.csf-field .csf-title h4{margin:0;color:#23282d}.csf-field .csf-fieldset{float:right;width:calc(80% - 20px)}.csf-pseudo-field{padding:0 5px 0 0!important;display:inline-block}.csf-pseudo-field+.csf-pseudo-field{border:0}.csf-pseudo-field pre{display:none}.csf-field-accordion .csf-accordion-item{position:relative;margin-bottom:5px}.csf-field-accordion .csf-accordion-item:last-child{margin-bottom:0}.csf-field-accordion .csf-accordion-item h4{font-size:1em}.csf-field-accordion .csf-accordion-title{display:block;cursor:pointer;position:relative;margin:0;padding:15px;min-height:0;font-size:100%;user-select:none;border:1px solid #ccd0d4;background-color:#fafafa;box-shadow:0 1px 1px rgba(0,0,0,.04);transition:border-color .15s}.csf-field-accordion .csf-accordion-title:active,.csf-field-accordion .csf-accordion-title:focus,.csf-field-accordion .csf-accordion-title:hover{outline:0;border-color:#999}.csf-field-accordion .csf-accordion-title .csf--icon{width:20px;text-align:center;margin-right:2px}.csf-field-accordion .csf-accordion-icon{width:16px;text-align:center}.csf-field-accordion .csf-accordion-content{display:none;padding:0;border:1px solid #ccd0d4;border-top:none;background-color:#fff;box-shadow:0 1px 1px rgba(0,0,0,.04)}.csf-field-accordion .csf-accordion-content>.csf-field{padding:15px}.csf-field-accordion .csf-accordion-open{display:block}.csf-field-background .csf-field{border:0!important;padding:0;margin-bottom:6px;margin-right:6px}.csf-field-background .csf--title{color:#777;font-size:12px}.csf-field-background .csf--background-colors{display:flex;flex-wrap:wrap}.csf-field-background .csf--background-attributes{display:flex;flex-wrap:wrap}.csf-field-background .csf--background-attributes select{min-width:100%;margin:0}.csf-field-background .csf--background-attributes .csf-field{flex:1}.csf-field-background .csf--attributes-hidden{display:none}.csf-field-backup textarea{width:100%;min-height:200px;margin-bottom:5px}.csf-field-backup small{display:inline-block;margin:5px}.csf-field-backup hr{margin:20px 0;border:none;border-bottom:1px solid #e5e5e5}.csf-field-border .csf--inputs,.csf-field-dimensions .csf--inputs,.csf-field-spacing .csf--inputs{float:left;display:flex;flex-wrap:wrap}.csf-field-border .csf--input,.csf-field-dimensions .csf--input,.csf-field-spacing .csf--input{display:flex;padding-right:6px;padding-bottom:4px;box-sizing:border-box}.csf-field-border .csf--input select,.csf-field-dimensions .csf--input select,.csf-field-spacing .csf--input select{margin:0}.csf-field-border .csf--input input,.csf-field-dimensions .csf--input input,.csf-field-spacing .csf--input input{position:relative;z-index:1;margin:0;width:65px;max-width:100%;text-align:center}.csf-field-border .csf--color,.csf-field-dimensions .csf--color,.csf-field-spacing .csf--color{float:left}.csf-field-border .csf--label,.csf-field-dimensions .csf--label,.csf-field-spacing .csf--label{display:flex;flex-direction:column;justify-content:center;user-select:none;min-width:20px;max-width:100%;padding:0 4px;font-size:12px;text-align:center;color:#555;border:1px solid #7b776c;background-color:#f5f5f5}.csf-field-border .csf--icon,.csf-field-dimensions .csf--icon,.csf-field-spacing .csf--icon{border-right:0;border-radius:4px 0 0 4px}.csf-field-border .csf--icon+input,.csf-field-dimensions .csf--icon+input,.csf-field-spacing .csf--icon+input{border-top-left-radius:0!important;border-bottom-left-radius:0!important}.csf-field-border .csf--unit,.csf-field-dimensions .csf--unit,.csf-field-spacing .csf--unit{border-left:0;border-radius:0 4px 4px 0}.csf-field-border .csf--is-unit,.csf-field-dimensions .csf--is-unit,.csf-field-spacing .csf--is-unit{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.csf-field-button_set .csf--buttons{display:inline-block}.csf-field-button_set .csf--button{position:relative;z-index:1;float:left;cursor:pointer;padding:7px 14px;min-width:16px;text-align:center;color:#555;border:1px solid #ccc;background-color:#f7f7f7;user-select:none;box-shadow:0 1px 0 rgba(0,0,0,.1)}.csf-field-button_set .csf--button:first-child{border-radius:4px 0 0 4px}.csf-field-button_set .csf--button:last-child{border-radius:0 4px 4px 0}.csf-field-button_set .csf--button:not(:first-child){margin-left:-1px}.csf-field-button_set .csf--button:hover{background-color:#eee}.csf-field-button_set .csf--active,.csf-field-button_set .csf--active:hover{z-index:2;color:#fff;border-color:#006799;background-color:#0085ba}.csf-field-button_set input{display:none}.csf-field-checkbox ul,.csf-field-radio ul{margin:0;padding:0;list-style-type:none;overflow-y:auto;max-height:305px}.csf-field-checkbox ul li,.csf-field-radio ul li{margin-bottom:6px}.csf-field-checkbox ul ul,.csf-field-radio ul ul{max-height:none}.csf-field-checkbox ul ul li,.csf-field-radio ul ul li{margin-left:8px}.csf-field-checkbox ul ul li:first-child,.csf-field-radio ul ul li:first-child{margin-left:0}.csf-field-checkbox input,.csf-field-radio input{margin:0 1px}.csf-field-checkbox .csf--inline-list li,.csf-field-radio .csf--inline-list li{display:inline-block;margin-right:15px}.csf-field-checkbox .csf--text,.csf-field-radio .csf--text{margin-left:5px;vertical-align:middle}.csf-field-checkbox .csf-checker,.csf-field-radio .csf-checker{cursor:pointer}.csf-field-code_editor .CodeMirror{width:100%;height:400px}.csf-field-code_editor .cm-s-default{border:1px solid #ccd0d4}.csf-field-code_editor textarea{width:100%;height:400px}.csf-field-color>input{opacity:.75;width:115px;max-width:100%}.csf-field-color .button.wp-picker-clear{padding:0 8px;margin-left:6px;line-height:2.54545455;min-height:30px}.csf-field-color_group .csf--left{float:left;margin-right:10px;margin-bottom:5px}.csf-field-color_group .csf--title{color:#999;margin-bottom:5px}.csf-field-fieldset .csf-fieldset-content{border:1px solid #ccd0d4;background-color:#fff;box-shadow:0 1px 1px rgba(0,0,0,.04)}.csf-field-fieldset .csf-fieldset-content>.csf-field{padding:15px}.csf-field-fieldset .csf-field-subheading{font-size:13px}.csf-field-date input{margin:0}.csf-field-date .csf--to{margin-left:7px}.csf-datepicker-wrapper{margin-top:5px;width:auto;background-color:#fff;z-index:9999999!important;box-shadow:0 0 30px rgba(0,0,0,.15)}.csf-datepicker-wrapper *{float:none;margin:0;padding:0;font-family:inherit;font-weight:400;font-style:normal;text-decoration:none;border:0;border-radius:0;box-shadow:none}.csf-datepicker-wrapper .ui-datepicker-header,.csf-datepicker-wrapper .ui-widget-header{color:#fff;background:#00a0d2}.csf-datepicker-wrapper .ui-datepicker-header .ui-state-hover{cursor:pointer}.csf-datepicker-wrapper .ui-datepicker-title{font-size:14px;line-height:40px;text-align:center}.csf-datepicker-wrapper .ui-datepicker-next,.csf-datepicker-wrapper .ui-datepicker-prev{position:static;top:auto;left:auto;right:auto;font-family:"Font Awesome 5 Pro","Font Awesome 5 Free",FontAwesome;font-weight:900;font-size:12px;text-align:center;width:41px;height:40px;line-height:40px;color:#fff;background-color:rgba(255,255,255,.1);text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.csf-datepicker-wrapper .ui-datepicker-next span,.csf-datepicker-wrapper .ui-datepicker-prev span{display:none}.csf-datepicker-wrapper .ui-datepicker-prev{float:left}.csf-datepicker-wrapper .ui-datepicker-next{float:right}.csf-datepicker-wrapper .ui-datepicker-prev:before{content:'\f053'}.csf-datepicker-wrapper .ui-datepicker-next:before{content:'\f054'}.csf-datepicker-wrapper .ui-datepicker-next-hover,.csf-datepicker-wrapper .ui-datepicker-prev-hover{opacity:.75}.csf-datepicker-wrapper tbody .ui-datepicker-week-col{background-color:#f7f7f7}.csf-datepicker-wrapper .ui-datepicker-buttonpane{padding:10px;text-align:center;background-color:#f7f7f7}.csf-datepicker-wrapper .ui-datepicker-buttonpane button{cursor:pointer;margin:0 5px;padding:7px 14px;border:1px solid #eee;background-color:#fff}.csf-datepicker-wrapper select{margin:0 4px}.csf-datepicker-wrapper select option{color:#555}.csf-datepicker-wrapper table{font-size:13px;border-collapse:collapse;width:100%}.csf-datepicker-wrapper thead{color:#fff;background:#32373c}.csf-datepicker-wrapper th{text-align:center;padding:7px;border:1px solid #444}.csf-datepicker-wrapper td{text-align:center;border:1px solid #f4f4f4}.csf-datepicker-wrapper td.ui-datepicker-other-month{border:transparent}.csf-datepicker-wrapper td .ui-state-default{color:#555;width:auto;display:block;padding:6px 12px}.csf-datepicker-wrapper td .ui-state-active,.csf-datepicker-wrapper td .ui-state-hover{color:#fff;background-color:#0073aa}.csf-datepicker-wrapper td.ui-state-disabled .ui-state-default{opacity:.5}.csf-field-gallery ul{margin:0;padding:0;list-style-type:none}.csf-field-gallery ul li{display:inline-block;position:relative;padding:4px;margin:0 5px 10px 0;border:1px solid #ccc;background-color:#f9f9f9;border-radius:2px;box-shadow:0 1px 0 rgba(0,0,0,.08)}.csf-field-gallery ul li img{max-height:60px;display:inline-block;vertical-align:middle}.csf-field-gallery .button{margin-right:5px;margin-bottom:5px}.csf-field-group .csf-cloneable-hidden{display:none!important}.csf-field-group .csf-cloneable-wrapper{position:relative}.csf-field-group .csf-cloneable-item{display:none;position:relative;margin-bottom:5px}.csf-field-group .csf-cloneable-item h4{font-size:1em}.csf-field-group .ui-accordion .csf-cloneable-item{display:block}.csf-field-group .csf-cloneable-content{border:1px solid #ccd0d4;background-color:#fff;box-shadow:0 1px 1px rgba(0,0,0,.04)}.csf-field-group .csf-cloneable-content>.csf-field{padding:15px}.csf-field-group .csf-cloneable-title{display:block;cursor:pointer;position:relative;user-select:none;margin:0;padding:15px 65px 15px 10px;min-height:0;font-size:100%;border:1px solid #ccd0d4;background-color:#fafafa;box-shadow:0 1px 1px rgba(0,0,0,.04);transition:border-color .15s}.csf-field-group .csf-cloneable-title:active,.csf-field-group .csf-cloneable-title:focus,.csf-field-group .csf-cloneable-title:hover{border-color:#999;outline:0}.csf-field-group .csf-cloneable-helper{position:absolute;top:12px;right:10px;z-index:1;font-size:14px;line-height:1em}.csf-field-group .csf-cloneable-helper i{display:inline-block;cursor:pointer;padding:5px;color:#999}.csf-field-group .csf-cloneable-helper i:hover{color:#555}.csf-field-group .csf-cloneable-content{padding:0;border-top:0}.csf-field-group .csf-cloneable-title-number,.csf-field-group .csf-cloneable-title-prefix{margin-right:5px}.csf-field-group .csf-cloneable-alert{display:none;margin-bottom:5px;padding:10px 20px;color:#a94442;border:1px solid #ebccd1;background-color:#f2dede}.csf-field-group .widget-placeholder{margin-bottom:10px;border:1px dashed #f1c40f;background-color:#fffae4}.csf-field-group .csf-cloneable-header-icon{display:inline-block;text-align:center;font-size:14px;width:17px;text-indent:0;vertical-align:text-top}.csf-field-group .csf-cloneable-placeholder{background-color:#ddd;margin-top:4px;width:100px;height:10px;font-size:10px;line-height:10px;display:inline-block;vertical-align:top;border-radius:2px}.csf-field-icon .button{margin-right:5px}.csf-field-icon .csf-icon-select{display:flex}.csf-field-icon .csf-icon-preview:not(.hidden){display:flex}.csf-field-icon .csf-icon-preview i{display:flex;justify-content:center;align-items:center;width:30px;font-size:14px;margin-right:5px;text-align:center;vertical-align:top;color:#555;border:1px solid #ccc;background-color:#f7f7f7;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.08)}.csf-field-image_select .csf--image{display:inline-block;margin:0 5px 5px 0}.csf-field-image_select .csf--inline-list .csf--image{display:block}.csf-field-image_select figure{cursor:pointer;position:relative;display:inline-block;max-width:100%;margin:0;vertical-align:bottom;border:2px solid transparent;background-color:#fff;user-select:none;transition:all .2s}.csf-field-image_select figure:before{position:absolute;top:0;left:0;text-align:center;font-size:10px;font-family:"Font Awesome 5 Pro","Font Awesome 5 Free",FontAwesome;font-weight:900;content:"\f00c";width:16px;height:16px;line-height:14px;opacity:0;color:#fff;background-color:#222;transition:opacity .2s}.csf-field-image_select .csf--active figure{border-color:#222;box-shadow:0 0 20px rgba(0,0,0,.2)}.csf-field-image_select .csf--active figure:before{opacity:1}.csf-field-image_select img{max-width:100%;height:auto;vertical-align:top}.csf-field-image_select input{display:none}.csf-field-link_color .csf--left{float:left;margin-right:10px;margin-bottom:5px}.csf-field-link_color .csf--title{color:#777;margin-bottom:5px}.csf-field-map input{width:100%}.csf-field-map input[type=text].ui-autocomplete-loading{background-position-x:calc(100% - 5px)}.csf-field-map .csf--map-search+.csf--map-osm-wrap{margin-top:10px}.csf-field-map .csf--map-osm-wrap{position:relative;padding:5px;border:1px solid #eee;background-color:#fff;box-shadow:0 1px 1px rgba(0,0,0,.04)}.csf-field-map .csf--map-osm{position:relative;z-index:1;min-height:250px}.csf-field-map .csf--map-inputs{margin-top:10px;display:flex;justify-content:space-between}.csf-field-map .csf--map-input{flex:1}.csf-field-map .csf--map-input:last-child{padding-left:10px}.csf-field-map label{display:block;color:#777;font-size:12px;margin:0 0 2px 0}.csf-map-ui-autocomplate{z-index:999999;border-radius:4px;overflow:hidden}.csf-field-media .csf--placeholder{display:flex;align-items:flex-start}.csf-field-media .csf--placeholder input{width:100%;margin:0}.csf-field-media .button{margin-left:5px}.csf-field-media .hidden+.button{margin-left:0}.csf-field-media .csf--preview{position:relative}.csf-field-palette .csf--palette{position:relative;display:inline-block;cursor:pointer;border:2px solid #ddd;margin-right:10px;margin-bottom:10px;user-select:none;-webkit-user-select:none;transition:all .2s}.csf-field-palette .csf--palette span{vertical-align:middle;display:inline-block;width:22px;height:60px;line-height:60px;overflow:hidden;text-indent:-999px}.csf-field-palette .csf--palette:before{position:absolute;top:0;left:0;text-align:center;font-size:10px;font-family:"Font Awesome 5 Pro","Font Awesome 5 Free",FontAwesome;font-weight:900;content:"\f00c";width:16px;height:16px;line-height:14px;opacity:0;color:#fff;background-color:#222;transition:opacity .2s}.csf-field-palette .csf--active{border-color:#222;box-shadow:0 0 20px rgba(0,0,0,.2)}.csf-field-palette .csf--active:before{opacity:1}.csf-field-palette input{display:none}.csf-field-repeater .csf-field-text input{width:100%}.csf-field-repeater .csf-repeater-hidden{display:none!important}.csf-field-repeater .csf-repeater-wrapper .csf-repeater-item{display:table;width:100%;margin-bottom:5px;border:1px solid #eee}.csf-field-repeater .csf-repeater-wrapper .csf-repeater-item h4{font-size:1em}.csf-field-repeater .csf-repeater-content{width:100%;display:table-cell;vertical-align:middle;background-color:#fff}.csf-field-repeater .csf-repeater-content>.csf-field{padding:15px}.csf-field-repeater .csf-repeater-helper{width:100%;display:table-cell;vertical-align:middle;text-align:center;font-size:14px;line-height:1em;border-left:1px solid #eee;background-color:#f7f7f7}.csf-field-repeater .csf-repeater-helper i{display:inline-block;cursor:pointer;color:#999;padding:5px}.csf-field-repeater .csf-repeater-helper i:hover{color:#555}.csf-field-repeater .csf-repeater-helper-inner{width:75px}.csf-field-repeater .csf-repeater-alert{display:none;margin-bottom:5px;padding:10px 20px;color:#a94442;border:1px solid #ebccd1;background-color:#f2dede}.csf-field-repeater .widget-placeholder{height:50px;margin-bottom:3px;border:1px dashed #f1c40f;background-color:#fffae4}.csf-field-repeater .ui-sortable-helper{height:50px!important;overflow:hidden!important;border-color:#ccc!important;background-color:#eee!important;opacity:.5}.csf-field-repeater .ui-sortable-helper .csf-repeater-content,.csf-field-repeater .ui-sortable-helper .csf-repeater-helper{display:none}.csf-field-select .csf-fieldset{min-height:30px}.csf-field-select .csf-chosen{display:none}.csf-field-select select{max-width:100%;margin:0}.csf-field-select .csf-hide-select{display:none!important}.csf-field-slider .csf--wrap{display:flex;align-items:center}.csf-field-slider .csf--input{display:flex}.csf-field-slider .csf--unit{display:flex;justify-content:center;flex-direction:column;user-select:none;padding:0 6px;font-size:11px;line-height:1;border-radius:0 4px 4px 0;color:#555;border:1px solid #7e8993;border-left:0;background-color:#f5f5f5}.csf-field-slider .csf-slider-ui{margin-right:15px}.csf-field-slider input[type=number]{position:relative;z-index:1;margin:0;width:50px;text-align:center}.csf-field-slider .csf--is-unit{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.csf-field-slider .ui-slider{position:relative;width:100%;height:3px;border:none;background:#ddd;border-radius:2px}.csf-field-slider .ui-slider-range{height:3px;border:none;background:#333;border-radius:2px}.csf-field-slider .ui-slider-handle{position:absolute;width:16px;height:16px;top:-7px;margin-left:-8px;border:none;background:#333;border-radius:2px}.csf-field-slider .ui-slider-handle:hover,.csf-field-slider .ui-state-active{cursor:pointer;background:#111}.csf-field-sortable .csf-field-text input{width:100%;max-width:100%}.csf-field-sortable .csf-sortable .csf-sortable-item{display:table;width:100%;margin-bottom:5px;border:1px solid #eee}.csf-field-sortable .csf-sortable .csf-sortable-item h4{font-size:1em}.csf-field-sortable .csf-sortable-content{width:100%;display:table-cell;vertical-align:middle;background-color:#fff}.csf-field-sortable .csf-sortable-content>.csf-field{padding:15px}.csf-field-sortable .csf-sortable-helper{width:100%;display:table-cell;vertical-align:middle;text-align:center;font-size:14px;line-height:1em;border-left:1px solid #eee;background-color:#f7f7f7}.csf-field-sortable .csf-sortable-helper i{display:inline-block;cursor:pointer;width:50px;color:#555}.csf-field-sortable .csf-sortable-helper i:hover{opacity:.5}.csf-field-sortable .widget-placeholder{height:50px;margin-bottom:3px;border:1px dashed #f1c40f;background-color:#fffae4}.csf-field-sortable .ui-sortable-helper{height:50px!important;overflow:hidden!important;border-color:#ccc!important;background-color:#eee!important;opacity:.5}.csf-field-sortable .ui-sortable-helper .csf-sortable-content,.csf-field-sortable .ui-sortable-helper .csf-sortable-helper{display:none}.csf-field-sorter .ui-sortable-placeholder{height:20px;border:1px dashed #f1c40f;background-color:#fffae4}.csf-field-sorter .csf-modules{float:left;width:50%;box-sizing:border-box}.csf-field-sorter .csf-modules:first-child{padding-right:15px}.csf-field-sorter .csf-modules:last-child{padding-left:15px}.csf-field-sorter .csf-disabled,.csf-field-sorter .csf-enabled{padding:5px 15px;border:1px dashed #ddd;background-color:#fff}.csf-field-sorter .csf-disabled li{opacity:.5;transition:opacity .15s}.csf-field-sorter .csf-disabled .ui-sortable-helper{opacity:1}.csf-field-sorter .csf-sorter-title{font-size:13px;font-weight:600;padding:10px;text-align:center;border:1px dashed #ddd;border-bottom:none;background-color:#f8f8f8;text-transform:uppercase}.csf-field-sorter ul{list-style-type:none;margin:0;padding:0;min-height:62px}.csf-field-sorter ul li{margin:10px 0;padding:10px 15px;cursor:move;font-weight:700;text-align:center;border:1px solid #e5e5e5;background-color:#fafafa;transition:border-color .15s}.csf-field-sorter ul li:hover{border-color:#bbb}.csf-field-spinner .csf--spin{display:flex}.csf-field-spinner .ui-spinner{display:flex}.csf-field-spinner .ui-button{display:flex;flex-direction:column;justify-content:center;text-align:center;min-width:20px;padding:0 4px;color:#555;border:1px solid #7e8993;background-color:#f5f5f5}.csf-field-spinner .ui-spinner-button{cursor:pointer}.csf-field-spinner .ui-spinner-button:hover{background-color:#e7e7e7}.csf-field-spinner .ui-spinner-button:active{background-color:#ddd}.csf-field-spinner .ui-spinner-button:before{font-family:"Font Awesome 5 Pro","Font Awesome 5 Free",FontAwesome;font-weight:900;font-size:14px;line-height:14px}.csf-field-spinner .ui-spinner-down{order:1;border-right:0;border-radius:4px 0 0 4px}.csf-field-spinner .ui-spinner-down:before{content:"\f0d9"}.csf-field-spinner .ui-spinner-input{order:2}.csf-field-spinner .csf--unit{order:3;border-left:0;user-select:none}.csf-field-spinner .ui-spinner-up{order:4;border-left:0;border-radius:0 4px 4px 0}.csf-field-spinner .ui-spinner-up:before{content:"\f0da"}.csf-field-spinner input{position:relative;z-index:1;width:50px;text-align:center;margin:0;padding:0 8px;border-radius:0}.csf-field-spinner .ui-button-icon,.csf-field-spinner .ui-button-icon-space,.csf-field-spinner .ui-button-text{display:none}.csf-field-switcher .csf--switcher{float:left;cursor:pointer;position:relative;width:60px;height:26px;padding:0;margin:0;overflow:hidden;border-radius:4px;background-color:#ed6f6f;user-select:none;-webkit-user-select:none}.csf-field-switcher .csf--ball{position:absolute;top:4px;left:4px;width:24px;height:18px;background-color:#fff;border-radius:4px;transition:all .1s;box-shadow:1px 1px 1px rgba(0,0,0,.15)}.csf-field-switcher .csf--off,.csf-field-switcher .csf--on{position:absolute;top:0;left:0;right:0;font-size:11px;line-height:26px;font-weight:500;font-style:normal;text-align:center;text-transform:uppercase;color:#fff;padding-right:28px;opacity:0;transition:all .1s}.csf-field-switcher .csf--off{padding-right:0;padding-left:28px;opacity:1}.csf-field-switcher .csf--active{background:#4fb845}.csf-field-switcher .csf--active .csf--on{opacity:1}.csf-field-switcher .csf--active .csf--off{opacity:0}.csf-field-switcher .csf--active .csf--ball{left:100%;margin-left:-28px}.csf-field-switcher .csf--label{float:left;margin-top:4px;margin-left:8px;font-weight:400;color:#999}.csf-field-tabbed .csf-tabbed-content{border:1px solid #ccd0d4;background-color:#fff;box-shadow:0 1px 1px rgba(0,0,0,.04)}.csf-field-tabbed .csf-tabbed-content>.csf-field{padding:15px}.csf-field-tabbed .csf-tabbed-nav .csf--icon{padding-right:5px}.csf-field-tabbed .csf-tabbed-nav a{display:inline-block;padding:12px 15px;margin-top:1px;margin-right:5px;margin-bottom:-1px;position:relative;text-decoration:none;color:#444;font-weight:600;border:1px solid #ccd0d4;background-color:#f3f3f3;transition:all .2s}.csf-field-tabbed .csf-tabbed-nav a:hover{background-color:#f9f9f9}.csf-field-tabbed .csf-tabbed-nav a.csf-tabbed-active{background-color:#fff;border-bottom-color:#fff}.csf-field-tabbed .csf-tabbed-nav a:focus{outline:0;box-shadow:none}.csf-field-text input{width:50%;max-width:100%;margin:0}.csf-field-textarea textarea{width:100%;max-width:100%;min-height:125px}.csf-field-textarea .csf-shortcode-button{margin-bottom:10px;margin-right:5px}.csf-field-typography select,.csf-field-typography textarea{margin:0;min-width:100%;max-width:100%}.csf-field-typography .csf--title{color:#777;margin:0 0 2px 0;font-size:12px}.csf-field-typography .csf--title small{vertical-align:top}.csf-field-typography .csf--blocks{display:flex;flex-wrap:wrap}.csf-field-typography .csf--block{flex:1;max-width:100%;padding-right:6px;padding-bottom:6px}.csf-field-typography .csf--input{margin:0;min-width:100%}.csf-field-typography .csf--input-wrap{position:relative}.csf-field-typography .csf--unit{position:absolute;z-index:1;right:4px;top:4px;bottom:4px;padding:2px 6px;color:#666;font-size:11px;line-height:1;border-radius:2px;background:#eee;user-select:none;display:flex;justify-content:center;flex-direction:column}.csf-field-typography .csf--preview{font-size:16px;line-height:20px;padding:20px;color:#222;border:1px solid #eee;background-color:#fff;border-radius:2.5px;user-select:none;-webkit-user-select:none;transition:background-color .2s,border-color .2s}.csf-field-typography .csf--block-preview{cursor:pointer;position:relative;overflow:hidden;margin-top:10px;max-width:100%}.csf-field-typography .csf--black-background{border-color:#000;background-color:#000}.csf-field-typography .csf--toggle{position:absolute;top:5px;right:10px;color:#999}.csf-field-typography .csf--block-extra-styles{margin-top:5px}.csf-field-upload input{width:100%;margin:0}.csf-field-upload .csf--wrap{display:flex;align-items:flex-start}.csf-field-upload .button{margin-left:5px}.csf-field-upload .csf--preview{position:relative}.csf-field-wp_editor .csf-wp-editor{float:left;width:100%}.csf-field-wp_editor .mce-toolbar-grp{border:none}.csf-field-wp_editor .mce-btn.mce-active button,.csf-field-wp_editor .mce-btn.mce-active i,.csf-field-wp_editor .mce-btn.mce-active:hover button,.csf-field-wp_editor .mce-btn.mce-active:hover i{color:#23282d}.csf-field-wp_editor .wp-media-buttons{position:relative;z-index:2}.csf-field-wp_editor .wp-editor-tabs{position:relative;z-index:1}.csf-field-wp_editor .csf-no-tinymce{border:1px solid #e5e5e5}.csf-field-wp_editor .csf-no-quicktags .wp-media-buttons{float:none;display:block}.csf-field-wp_editor .csf-no-quicktags .mce-tinymce{box-shadow:none;border:1px solid #e5e5e5}.csf-field-wp_editor textarea{width:100%;max-width:100%;margin:0;box-shadow:none}.csf-field-heading{font-size:1.5em;font-weight:700;color:#23282d;background-color:#f5f5f5}.csf-field-subheading{font-size:14px;font-weight:700;padding-top:17px;padding-bottom:17px;color:#23282d;background-color:#f7f7f7}.csf-field-submessage{padding:0!important;border:0!important}.csf-field-submessage+.csf-field{border-top:0!important}.csf-submessage{font-size:12px;padding:17px 30px;border-top:1px solid transparent;border-bottom:1px solid transparent}.csf-submessage-success{color:#3c763d;border-color:#d6e9c6;background-color:#dff0d8}.csf-submessage-info{color:#31708f;border-color:#bce8f1;background-color:#d9edf7}.csf-submessage-warning{color:#8a6d3b;border-color:#faebcc;background-color:#fcf8e3}.csf-submessage-danger{color:#a94442;border-color:#ebccd1;background-color:#f2dede}.csf-submessage-normal{color:#23282d;border-color:#eee;background-color:#f7f7f7}.csf-field-notice{background-color:#f7f7f7}.csf-notice{padding:12px;background-color:#fff;border-left-style:solid;border-left-width:4px;box-shadow:0 1px 1px rgba(0,0,0,.1)}.csf-notice-success{border-color:#46b450}.csf-notice-info{border-color:#339fd4}.csf-notice-warning{border-color:#ffbc00}.csf-notice-danger{border-color:#dc3232}.csf-notice-normal{border-color:#222}.csf-field-number input{width:100%;margin:0}.csf-field-number .csf--wrap{position:relative;float:left;width:100px}.csf-field-number .csf--unit{position:absolute;z-index:1;right:4px;top:4px;bottom:4px;padding:2px 6px;color:#666;font-size:11px;line-height:1;border-radius:2px;background:#eee;user-select:none;display:flex;justify-content:center;flex-direction:column}.csf-field-link .csf--result{display:inline-block;font-size:12px;line-height:16px;padding:7px 10px;margin-bottom:7px;color:#777;border:1px solid #e5e5e5;background-color:#f5f5f5;border-radius:2px;world-break:break-word}.csf-field-link .csf--wrap{position:relative;float:left;width:100px}.csf-field-link .csf--unit{position:absolute;z-index:1;right:4px;top:4px;bottom:4px;padding:2px 6px;color:#666;font-size:11px;line-height:1;border-radius:2px;background:#eee;user-select:none;display:flex;justify-content:center;flex-direction:column}.csf-help{cursor:help;position:absolute;top:0;right:0;padding:5px;font-size:13px;color:#aaa}.csf-help .csf-help-text{display:none}.csf--preview{max-width:100%}.csf-image-preview{display:inline-flex;align-items:center;justify-content:center;flex-direction:column;position:relative;padding:6px;max-width:120px;max-height:120px;min-width:40px;min-height:40px;margin-bottom:10px;text-align:center;border-radius:2px;border:1px solid #ccc;background-color:#f9f9f9;box-shadow:0 1px 0 rgba(0,0,0,.08)}.csf-image-preview i{cursor:pointer;position:absolute;z-index:1;right:4px;top:4px;font-size:14px;width:22px;height:22px;line-height:22px;text-align:center;text-decoration:none;color:#fff;background-color:#d33;opacity:.75;border-radius:2px;transition:all .2s}.csf-image-preview i:hover{opacity:1}.csf-image-preview i:focus{box-shadow:none}.csf-image-preview span{position:relative;overflow:hidden;display:flex;height:100%;width:100%}.csf-image-preview img{max-width:100%;height:auto;object-fit:contain}.csf-field-custom .csf-field{padding:0}.csf-field .chosen-container-single .chosen-single{height:28px;line-height:26px}.csf-field .chosen-container-single .chosen-single abbr{top:0;right:20px;font-family:"Font Awesome 5 Pro","Font Awesome 5 Free",FontAwesome;font-weight:900;font-size:12px;height:100%;width:18px;color:#aaa;text-align:center;background:0 0}.csf-field .chosen-container-single .chosen-single abbr:before{content:"\f00d"}.csf-field .chosen-container-single .chosen-single abbr:hover{color:#555}.csf-field .chosen-container-multi .chosen-choices li.search-choice .search-choice-close{font-family:"Font Awesome 5 Pro","Font Awesome 5 Free",FontAwesome;font-weight:900;font-size:12px;height:100%;width:18px;color:#aaa;text-align:center;background:0 0}.csf-field .chosen-container-multi .chosen-choices li.search-choice .search-choice-close:before{content:"\f00d";display:inline-block;padding-top:3px}.csf-field .chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover{color:#555}.csf-field .chosen-container-single .chosen-single div b{font-family:"Font Awesome 5 Pro","Font Awesome 5 Free",FontAwesome;font-weight:900;font-size:14px;color:#aaa;background:0 0}.csf-field .chosen-container-single .chosen-single div b:before{content:"\f107"}.csf-field .chosen-container-single .chosen-single div b:hover{color:#555}.csf-field .chosen-container-multi .chosen-choices li.search-choice-placeholder{border:1px dashed #aaa;margin:3px 5px 3px 0}.csf-field .chosen-container-multi .ui-sortable li.search-choice span{cursor:move}.csf-field .chosen-container-active.chosen-with-drop .chosen-single div b:before{content:"\f106"}.csf-field .chosen-container-single .chosen-single-with-deselect span{margin-right:40px}.csf-field .chosen-container-single .chosen-search input[type=text]{background:0 0}.csf-field .chosen-container-single .chosen-search:before{font-family:"Font Awesome 5 Pro","Font Awesome 5 Free",FontAwesome;font-weight:900;font-size:11px;content:"\f002";position:absolute;right:12px;top:10px;color:#aaa}.csf-field .wp-picker-container{display:inline-block}.csf-field .wp-picker-container .wp-color-result.button{margin-bottom:0}.csf-field .csf--transparent-wrap{display:none;position:relative;top:-1px;width:235px;padding:9px 10px;border:1px solid #dfdfdf;border-top:none;background-color:#fff}.csf-field .wp-picker-active .csf--transparent-wrap{display:block}.csf-field .csf--transparent-slider{position:absolute;width:190px;margin-left:2px;height:18px}.csf-field .csf--transparent-slider .ui-slider-handle{position:absolute;top:-3px;bottom:-3px;z-index:5;border-color:#aaa;border-style:solid;border-width:4px 3px;width:10px;height:16px;margin:0 -5px;background:0 0;cursor:ew-resize;opacity:.9;border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.2)}.csf-field .csf--transparent-slider .ui-slider-handle:before{content:" ";position:absolute;left:-2px;right:-2px;top:-3px;bottom:-3px;border:2px solid #fff;border-radius:3px}.csf-field .csf--transparent-offset{height:18px;width:200px;background:url(../images/checkerboard.png) repeat-y center left scroll #fff;border-radius:2px;box-shadow:inset 0 0 5px rgba(0,0,0,.4)}.csf-field .csf--transparent-text{position:absolute;top:12px;right:10px;width:30px;font-size:12px;line-height:12px;text-align:center;color:#999}.csf-field .csf--transparent-button{cursor:pointer;user-select:none;margin-top:10px;font-size:11px;text-align:center;border-radius:2px;padding:3px 7px;box-shadow:0 1px 0 rgba(0,0,0,.1);letter-spacing:.2px;color:#777;border:1px solid #ccc;background-color:#f7f7f7;transition:background-color .2s,border-color .2s,color .2s}.csf-field .csf--transparent-active .wp-color-result{background-image:url(../images/checkerboard.png);background-size:135px;background-position:center left;background-color:transparent!important}.csf-field .csf--transparent-active .csf--transparent-button{color:#fff;border-color:#3ea032;background-color:#4fb845}.csf-field .csf--transparent-active .fa:before{content:"\f205"}.csf-widgets>.csf-field{position:relative;top:-1px;margin-left:-15px;margin-right:-15px;padding:12px 15px}.csf-widgets>.csf-field .csf-title{float:none;width:100%;margin-bottom:5px}.csf-widgets>.csf-field .csf-fieldset{float:none;width:100%}.csf-widgets .csf-field-text input{width:100%}.csf-widgets .csf-field-notice .csf-notice{padding:15px}.control-section .csf-widgets>.csf-field{margin-left:-10px;margin-right:-10px;padding:10px 12px}.wp-block .csf-widgets{font-size:13px}.wp-block .csf-widgets>.csf-field{margin-left:-10px;margin-right:-10px}.wp-block .csf-widgets>.csf-field .button-primary{color:#fff}.wp-block .csf-widgets>.csf-field>.csf-title>h4{font-size:13px}.control-section .csf-field{padding:0}.control-section .csf-field .csf-title{float:none;width:100%;margin-bottom:6px}.control-section .csf-field .csf-title h4{display:block;font-size:13px;line-height:1;font-weight:600;color:inherit}.control-section .csf-field .csf-fieldset{float:none;width:100%}.control-section .csf-help{top:-5px;right:-5px}.control-section .csf-field-select select{width:100%}.control-section .csf-field-heading{color:inherit;font-size:14px;line-height:1em;margin-right:-15px;margin-left:-15px;padding:15px}.control-section .csf-field-subheading{color:inherit;font-size:11px;margin-right:-15px;margin-left:-15px;padding:10px 15px}.control-section .csf-subtitle-text{margin-top:4px;font-size:12px}.control-section .csf-field-submessage .csf-submessage{margin-right:-15px;margin-left:-15px;padding:15px}.control-section .csf-fieldset .csf-field-heading,.control-section .csf-fieldset .csf-field-subheading,.control-section .csf-fieldset .csf-field-submessage .csf-submessage{margin-left:0;margin-right:0}.control-section .csf-field-date .csf--to{margin-left:0}.control-section .csf-field-sorter ul li{padding:5px}.control-section .csf-field-sorter .csf-modules{float:none;width:100%}.control-section .csf-field-sorter .csf-modules:first-child{padding-right:0;padding-bottom:15px}.control-section .csf-field-background .csf--background-attributes{flex-direction:column}.control-section .csf-field-spacing input{width:90px}.control-section .csf-field-border .csf--input{flex:1 50%}.control-section .csf-field-border input,.control-section .csf-field-border select{width:100%}.control-section .csf-field-spinner input{width:50px}.control-section .csf-field-number .csf--wrap{width:100%}.control-section .csf-field-backup .csf-export-data{display:none}.control-section .csf-field-fieldset .csf-fieldset-content{border-color:#e5e5e5}.control-section .csf-accordion-content>.csf-field,.control-section .csf-cloneable-content>.csf-field,.control-section .csf-fieldset-content>.csf-field,.control-section .csf-repeater-content>.csf-field,.control-section .csf-sortable-content>.csf-field,.control-section .csf-tabbed-content>.csf-field{padding:10px}.control-section .csf-accordion-content>.csf-field .csf-title,.control-section .csf-cloneable-content>.csf-field .csf-title,.control-section .csf-fieldset-content>.csf-field .csf-title,.control-section .csf-repeater-content>.csf-field .csf-title,.control-section .csf-sortable-content>.csf-field .csf-title,.control-section .csf-tabbed-content>.csf-field .csf-title{margin-bottom:5px}.control-section .csf-accordion-content>.csf-field h4,.control-section .csf-cloneable-content>.csf-field h4,.control-section .csf-fieldset-content>.csf-field h4,.control-section .csf-repeater-content>.csf-field h4,.control-section .csf-sortable-content>.csf-field h4,.control-section .csf-tabbed-content>.csf-field h4{font-size:12px}.control-section .csf-depend-hidden.csf-depend-on{display:none!important}.control-section .csf-depend-visible.csf-depend-on{border-top:0!important}.csf-taxonomy{max-width:95%}.csf-taxonomy>.csf-field{border-top:none!important}.csf-taxonomy>.csf-field-heading{font-size:1.1em;padding:20px!important;border:1px solid #ddd}.csf-taxonomy>.csf-field-subheading{font-size:12px;padding:15px!important;border:1px solid #ddd}.csf-taxonomy>.csf-field-submessage .csf-submessage{padding:15px;border-left-width:1px;border-left-style:solid;border-right-width:1px;border-right-style:solid}.csf-taxonomy>.csf-field-notice{background-color:transparent}.csf-taxonomy .csf-section-title{display:block;padding:15px;background-color:#f9f9f9;border:1px solid #e5e5e5;box-shadow:0 1px 1px rgba(0,0,0,.04)}.csf-taxonomy-add-fields>.csf-field{padding:8px 0}.csf-taxonomy-add-fields>.csf-field>.csf-title{float:none;width:100%;padding:2px 2px 4px 0}.csf-taxonomy-add-fields>.csf-field>.csf-title h4{font-size:12px;font-weight:400}.csf-taxonomy-add-fields>.csf-field>.csf-fieldset{float:none;width:100%}.csf-taxonomy-add-fields>.csf-field>.csf-fieldset>.csf-help{right:-5px}.csf-taxonomy-add-fields+p.submit{margin-top:0}.csf-taxonomy-edit-fields>.csf-field{padding:20px 0}.csf-taxonomy-edit-fields>.csf-field>.csf-title{width:200px}.csf-taxonomy-edit-fields>.csf-field>.csf-title h4{font-size:14px;font-weight:600;line-height:1.3;display:inline-block;vertical-align:middle}.csf-taxonomy-edit-fields>.csf-field>.csf-fieldset{width:calc(100% - 220px)}.csf-taxonomy-edit-fields>.csf-field>.csf-fieldset>.csf-help{top:-5px;right:-5px}.csf-taxonomy-edit-fields>.csf-field-submessage{margin:20px 0}.csf-taxonomy-edit-fields>.csf-field-heading,.csf-taxonomy-edit-fields>.csf-field-subheading{margin:20px 0;border:1px solid #ddd}.csf-nav-menu-options{clear:both;float:left;width:100%}.csf-nav-menu-options>.csf-fields{margin-left:-10px;margin-top:10px;margin-bottom:10px;border-top:1px solid #eee;border-bottom:1px solid #eee}.csf-nav-menu-options>.csf-fields>.csf-field{padding:12px 14px 12px 12px}.csf-nav-menu-options>.csf-fields>.csf-field .csf-title{float:none;width:100%;margin-bottom:5px}.csf-nav-menu-options>.csf-fields>.csf-field .csf-fieldset{float:none;width:100%}.csf-nav-menu-options .csf-field-text input{width:100%}.csf-nav-menu-options .csf-field-notice .csf-notice{padding:15px}.csf-nav-menu-title{padding:12px 14px 12px 12px;background-color:#f5f5f5;border-top:1px solid #eee;border-bottom:1px solid #eee}.csf-nav-menu-title:first-child{border-top:0}.csf-nav-menu-title h4{margin:0;padding:0;color:#23282d}.csf-nav-menu-icon{margin-right:5px}.csf-profile-options>h2>.fa{padding-right:7px}.csf-profile-options>.csf-field{max-width:750px;padding:15px 0;border-top:none!important}.csf-profile-options>.csf-field>.csf-title{width:200px}.csf-profile-options>.csf-field>.csf-title h4{font-size:14px;font-weight:600;line-height:1.3;display:inline-block;vertical-align:middle}.csf-profile-options>.csf-field>.csf-fieldset{width:calc(100% - 220px)}.csf-profile-options>.csf-field>.csf-fieldset>.csf-help{top:-15px;right:-5px}.csf-profile-options>.csf-field-heading{font-size:1.1em}.csf-profile-options>.csf-field-subheading{font-size:12px}.csf-profile-options>.csf-field-heading,.csf-profile-options>.csf-field-subheading{margin:10px 0;padding:15px!important;border:1px solid #ddd}.csf-profile-options>.csf-field-submessage{margin:20px 0}.csf-profile-options>.csf-field-submessage .csf-submessage{padding:10px;border-left-width:1px;border-left-style:solid;border-right-width:1px;border-right-style:solid}.csf-profile-options>.csf-field-notice{background-color:transparent}.csf-modal{position:fixed;z-index:100101;top:0;left:0;width:100%;height:100%}.csf-modal.hidden{display:none}.csf-modal-icon{z-index:100102}.csf-modal-table{display:table;width:100%;height:100%}.csf-modal-table-cell{display:table-cell;vertical-align:middle;margin:100px 0}.csf-modal-inner{position:relative;z-index:10;width:760px;height:750px;margin:0 auto;background-color:#fff}.csf-modal-content{position:relative;overflow:hidden;overflow-y:auto;height:595px}.csf-modal-content .csf-shortcode-button{display:none}.csf-modal-content .csf-field{padding:15px 30px 15px 15px}.csf-modal-content a:active,.csf-modal-content a:focus{outline:0;box-shadow:none}.csf-modal-content h4{font-size:13px}.csf-modal-content h4 small{font-style:italic;font-weight:400;color:#aaa}.csf-modal-title{position:relative;background-color:#fcfcfc;border-bottom:1px solid #ddd;height:36px;font-size:16px;font-weight:600;line-height:36px;margin:0;padding:0 36px 0 16px}.csf-modal-header{width:100%;padding:14px 0;background-color:#f5f5f5;border-bottom:1px solid #ddd}.csf-modal-header select{display:block;width:250px;margin:0 auto;font-size:13px;line-height:1;height:30px;min-height:30px;background-color:#fff}.csf-modal-close{color:#666;padding:0;position:absolute;top:0;right:0;width:36px;height:36px;text-align:center;background:0 0;border:none;cursor:pointer}.csf-modal-close:before{font:normal 20px/36px dashicons;content:"\f158";vertical-align:top;width:36px;height:36px}.csf-modal-close:hover{opacity:.5}.csf-modal-insert-wrapper{text-align:center;width:100%;padding:15px 0;background-color:#f5f5f5;border-top:1px solid #ddd}.csf-modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#000;opacity:.5}.csf--repeatable{padding:15px 15px 0 15px}.csf--repeat-button-block{text-align:center;padding-bottom:15px}.csf--repeat-shortcode{position:relative;margin-bottom:15px;border:1px dashed #ddd}.csf--repeat-shortcode:first-child .csf-repeat-remove{display:none}.csf--repeat-shortcode .csf-repeat-remove{position:absolute;right:10px;top:10px;z-index:10;cursor:pointer;display:inline-block;font-size:11px;width:18px;height:18px;line-height:18px;text-align:center;border-radius:2px;color:#fff;background-color:#e14d43;opacity:.5}.csf--repeat-shortcode .csf-repeat-remove:hover{opacity:.5}.csf-shortcode-single .csf-modal-inner{height:750px}.csf-shortcode-single .csf-modal-content{height:652px}.elementor-editor-active .csf-shortcode-button{margin-left:5px}.elementor-editor-active .csf-modal .hidden{display:none!important}.csf-shortcode-block{text-align:center;padding:14px;font-size:13px;background-color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif}.csf-shortcode-block .components-button{margin-bottom:10px}.csf-modal-icon .csf-icon-title{padding:15px 0;margin:4px;font-size:14px;font-weight:700;text-align:center;border:1px solid #eee;background-color:#f7f7f7}.csf-modal-icon .csf-modal-header{text-align:center}.csf-modal-icon .csf-icon-search{width:50%;height:40px;line-height:40px}.csf-modal-icon i{cursor:pointer;display:inline-block;margin:4px;width:35px;height:35px;line-height:35px;font-size:16px;color:#555;text-align:center;border:1px solid #ccc;background-color:#f7f7f7;border-radius:2px;box-shadow:1px 1px 0 rgba(0,0,0,.05)}.csf-modal-icon i:hover{color:#fff;border-color:#222;background-color:#222}.csf-modal-icon .csf-modal-content{padding:10px;height:618px}.csf-modal-icon .csf-error-text{padding:10px}.csf-modal-loading{display:none;position:absolute;left:15px;top:15px}.csf-loading{position:relative;width:20px;height:20px;background:#ccc;border-radius:20px;box-shadow:0 2px 5px rgba(0,0,0,.07)}.csf-loading:after{position:absolute;top:50%;left:50%;width:4px;height:4px;content:"";margin-top:-2px;margin-left:-2px;background-color:#fff;animation-duration:.5s;animation-iteration-count:infinite;animation-timing-function:linear;animation-name:csfLoader;border-radius:4px}@keyframes csfLoader{0%{transform:rotate(0) translateX(-6px) rotate(0)}100%{transform:rotate(360deg) translateX(-6px) rotate(-360deg)}}.csf-subtitle-text{margin-top:6px;font-weight:400;color:#999}.csf-desc-text{clear:both;float:left;width:100%;margin-top:6px;font-weight:400;color:#999}.csf-error-text{margin-top:6px;color:#d02c21}.csf-before-text{margin-bottom:6px}.csf-after-text{margin-top:6px}.csf-metabox-hide{display:none!important}.csf-metabox-show{display:block!important}.csf-depend-hidden.csf-depend-on{display:none}.csf-depend-visible.csf-depend-on{display:block;opacity:.75;filter:grayscale(1);user-select:none;border-top:1px solid #eee}.csf-depend-visible.csf-depend-on .clear:before{content:"";left:0;top:0;right:0;bottom:0;position:absolute;background-color:#eee;opacity:.25;z-index:10}.csf-warning-primary{color:#fff!important;border-color:#dc3545!important;background:#dc3545!important}.csf-warning-primary:focus,.csf-warning-primary:hover{border-color:#bd2130!important;background:#bd2130!important}.csf-warning-primary:focus{box-shadow:0 0 0 1px #fff,0 0 0 3px #bd2130!important}.csf-warning-primary:active{border-color:#bd2130!important;background:#bd2130!important}.csf-form-result{display:none;float:left;padding:0 8px;margin-right:4px;font-size:11px;line-height:30px;user-select:none;border-radius:2px}.csf-form-show{display:block}.csf-form-success{color:#fff;background-color:#46b450}.csf-form-warning{color:#8a6d3b;background-color:#faebcc}.csf-label-error{position:relative;top:-2px;display:inline-block;font-size:10px;line-height:10px;height:10px;width:10px;padding:1px;font-style:normal;text-align:center;color:#fff;vertical-align:middle;background-color:#e10000;border-radius:2px}.csf-no-option{padding:30px}.csf-input-number{-moz-appearance:textfield}.csf-input-number::-webkit-inner-spin-button,.csf-input-number::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.csf-fa5-shims .csf .fab,.csf-fa5-shims .csf .far,.csf-fa5-shims .csf .fas{font-family:FontAwesome;font-style:normal}.csf-welcome-wrap{position:relative;margin:25px 40px 0 20px;font-size:15px;max-width:1200px}.csf-welcome-wrap p{font-size:14px;line-height:1.5}.csf-welcome-wrap h1{margin:.2em 200px 0 0;padding:0;color:#32373c;line-height:1.2em;font-size:2.8em;font-weight:400}.csf-welcome-wrap .csf-logo{position:absolute;overflow:hidden;top:0;right:0;height:160px;width:140px;background-image:linear-gradient(45deg,#2d67cb,#ad19f3);box-shadow:0 1px 4px rgba(0,0,0,.25),inset 0 0 0 4px rgba(0,0,0,.25)}.csf-welcome-wrap .csf-logo .csf--effects i{position:absolute;width:200px;height:100px;background-color:rgba(0,0,0,.15);transform:rotate(-45deg)}.csf-welcome-wrap .csf-logo .csf--effects i:nth-child(1){bottom:-20px;right:-70px}.csf-welcome-wrap .csf-logo .csf--effects i:nth-child(2){bottom:-35px;right:-80px}.csf-welcome-wrap .csf-logo .csf--effects i:nth-child(3){bottom:-50px;right:-90px}.csf-welcome-wrap .csf-logo .csf--effects i:nth-child(4){bottom:-65px;right:-100px}.csf-welcome-wrap .csf-logo .csf--wp-logos{position:relative;padding-top:25px;text-align:center}.csf-welcome-wrap .csf-logo .csf--wp-logo{position:absolute;left:20px;width:20px;height:20px;background-repeat:no-repeat;background-position:center center;background-image:url(../images/wp-logo.svg)}.csf-welcome-wrap .csf-logo .csf--wp-plugin-logo{display:inline-block;width:50px;height:50px;border:3px solid #fff;background-size:40px;background-repeat:no-repeat;background-position:center center;background-image:url(../images/wp-plugin-logo.svg);border-radius:100%;vertical-align:middle}.csf-welcome-wrap .csf-logo .csf--text{position:absolute;left:0;right:0;top:90px;color:#fff;font-size:13px;line-height:1.2em;font-weight:600;text-align:center;text-transform:uppercase;text-shadow:1px 1px 0 rgba(0,0,0,.25)}.csf-welcome-wrap .csf-logo .csf--version{top:auto;left:auto;right:8px;bottom:4px;font-size:11px;text-transform:lowercase}.csf-welcome-wrap .csf-about-text{font-weight:400;line-height:1.6em;font-size:19px;margin:1em 200px 1em 0;color:#555d66}.csf-welcome-wrap .csf-demo-button{margin:1em 200px 2em 0}.csf-welcome-wrap .nav-tab-wrapper{margin-bottom:20px}.csf-welcome-wrap ul{list-style-type:disc;padding-left:15px}.csf-welcome-wrap .csf--col{float:left;padding-right:20px;box-sizing:border-box}.csf-welcome-wrap .csf--col-2{width:50%}.csf-welcome-wrap .csf--col-3{width:33.333%}.csf-welcome-wrap .csf--col-4{width:25%}.csf-welcome-wrap .csf--col-5{width:20%}.csf-welcome-wrap .csf--col-last{padding-right:0}.csf-welcome-wrap .csf--col-upgrade{padding:10px 0;text-align:center;border-top:1px solid #e5e5e5}.csf--table-compare tfoot td,.csf--table-compare thead td{text-align:center}.csf--table-compare td{font-size:14px;text-align:center;vertical-align:middle;padding:10px}.csf--table-compare td:first-child{text-align:left}.csf--table-compare tfoot td{padding:15px 0}.csf--table-compare .fa{font-size:18px}.csf--table-compare .fa-check-circle{color:#46b450}.csf--table-compare .fa-times-circle{color:#dc3232}.csf-welcome-cols{clear:both;margin:20px 0;background-color:#fff;padding:0 0;border-radius:2px;border:1px solid #e5e5e5}.csf-welcome-cols .csf--col{width:33.333%;float:left;padding:20px;text-align:center;box-sizing:border-box;min-height:200px;border-right:1px solid #e5e5e5}.csf-welcome-cols .csf--block,.csf-welcome-cols .csf--left{float:left;width:20%;padding:0 30px;text-align:center;box-sizing:border-box}.csf-welcome-cols .csf--block{width:80%}.csf-welcome-cols .csf--col-first{border-bottom:1px solid #e5e5e5}.csf-welcome-cols .csf--last{border-right:none}.csf-welcome-cols .csf--space{height:20px}.csf-welcome-cols .csf--icon{display:inline-block;font-size:20px;width:30px;height:30px;line-height:30px;text-align:center;margin-bottom:10px;color:#fff;background-color:#555;border-radius:30px}.csf-welcome-cols .csf--active{background-color:#5cb85c}.csf-welcome-cols .csf--deactive{background-color:#e14d43}.csf-welcome-cols .csf--title{font-weight:700;display:block}.csf-welcome-cols p:last-child{margin-bottom:0}.csf-features-cols .csf--key-features{width:30%}.csf-features-cols .csf--available-fields{width:70%}.csf-code-block{margin:20px 0;padding:5px 20px;background-color:#fff;border-radius:2px;box-shadow:0 1px 1px rgba(0,0,0,.15)}.csf-code-block pre{font-size:13px;color:#0073aa}.csf-code-block pre span{color:#999}.csf--table-fields td{font-size:14px}.csf--upgrade a{color:#5cb85c;font-weight:700}.csf--upgrade a:focus,.csf--upgrade a:hover{color:#4aa14a;outline:0;box-shadow:none}@media only screen and (max-width:782px){.csf-welcome-cols .csf--col{width:100%;min-height:auto;border-right:none;border-bottom:1px solid #e5e5e5}.csf-features-cols .csf--key-features{width:100%}.csf-features-cols .csf--available-fields{width:100%}}@media only screen and (max-width:1200px){.csf-metabox .csf-field .csf-title{float:none;width:100%;margin-bottom:10px}.csf-metabox .csf-field .csf-fieldset{float:none;width:100%}}@media only screen and (max-width:782px){.csf-header-inner{text-align:center}.csf-header-inner h1{width:100%;margin-bottom:10px}.csf-form-result{float:none;margin-right:0;margin-bottom:10px}.csf-header-left,.csf-header-right,.csf-search{width:100%}.csf-search{text-align:center;margin-bottom:15px}.csf-footer{text-align:center}.csf-buttons{float:none}.csf-copyright{float:none;margin-top:10px}.csf-expand-all,.csf-nav,.csf-nav-background,.csf-reset-section{display:none!important}.csf-nav-normal+.csf-content{margin-left:0}.csf-section,.csf-section-title{display:block!important}.csf-field .csf-title{float:none;width:100%;margin-bottom:10px}.csf-field .csf-fieldset{float:none;width:100%}.csf-field-color .button.wp-picker-clear{padding:0 8px;line-height:2.14285714;min-height:32px}.csf-profile-options>.csf-field>.csf-title,.csf-taxonomy-edit-fields>.csf-field>.csf-title{float:none;width:100%;margin-bottom:10px}.csf-profile-options>.csf-field>.csf-fieldset,.csf-taxonomy-edit-fields>.csf-field>.csf-fieldset{float:none;width:100%}.csf-nav-menu-options>.csf-fields{margin-left:-10px;margin-right:-10px}.csf-nav-menu-options>.csf-fields>.csf-field{padding:10px}}@media only screen and (max-width:782px){.csf-modal .csf-modal-inner{width:90%}}@media only screen and (max-height:750px){.csf-modal .csf-modal-inner{height:auto}.csf-modal .csf-modal-content{height:calc(100vh - 200px)}}.chosen-container{position:relative;display:inline-block;vertical-align:middle;font-size:13px;user-select:none}.chosen-container *{box-sizing:border-box}.chosen-container .chosen-drop{position:absolute;top:100%;z-index:1010;width:100%;border:1px solid #aaa;border-top:0;background:#fff;box-shadow:0 4px 5px rgba(0,0,0,.15);clip:rect(0,0,0,0);clip-path:inset(100% 100%)}.chosen-container.chosen-with-drop .chosen-drop{clip:auto;clip-path:none}.chosen-container a{cursor:pointer}.chosen-container .chosen-single .group-name,.chosen-container .search-choice .group-name{margin-right:4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:400;color:#999}.chosen-container .chosen-single .group-name:after,.chosen-container .search-choice .group-name:after{content:":";padding-left:2px;vertical-align:top}.chosen-container-single .chosen-single{position:relative;display:block;overflow:hidden;padding:0 0 0 8px;height:25px;border:1px solid #aaa;border-radius:5px;background-color:#fff;background:linear-gradient(#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background-clip:padding-box;box-shadow:0 0 3px #fff inset,0 1px 1px rgba(0,0,0,.1);color:#444;text-decoration:none;white-space:nowrap;line-height:24px}.chosen-container-single .chosen-default{color:#999}.chosen-container-single .chosen-single span{display:block;overflow:hidden;margin-right:26px;text-overflow:ellipsis;white-space:nowrap}.chosen-container-single .chosen-single-with-deselect span{margin-right:38px}.chosen-container-single .chosen-single abbr{position:absolute;top:6px;right:26px;display:block;width:12px;height:12px;font-size:1px}.chosen-container-single .chosen-single div{position:absolute;top:0;right:0;display:block;width:18px;height:100%}.chosen-container-single .chosen-single div b{display:block;width:100%;height:100%}.chosen-container-single .chosen-search{position:relative;z-index:1010;margin:0;padding:3px 4px;white-space:nowrap}.chosen-container-single .chosen-search input[type=text]{margin:1px 0;padding:4px 20px 4px 5px;width:100%;height:auto;outline:0;border:1px solid #aaa;font-size:1em;font-family:sans-serif;line-height:normal;border-radius:0}.chosen-container-single .chosen-drop{margin-top:-1px;border-radius:0 0 4px 4px;background-clip:padding-box}.chosen-container-single.chosen-container-single-nosearch .chosen-search{position:absolute;clip:rect(0,0,0,0);clip-path:inset(100% 100%)}.chosen-container .chosen-results{color:#444;position:relative;overflow-x:hidden;overflow-y:auto;margin:0 4px 4px 0;padding:0 0 0 4px;max-height:240px;-webkit-overflow-scrolling:touch}.chosen-container .chosen-results li{display:none;margin:0;padding:5px 6px;list-style:none;line-height:15px;word-wrap:break-word;-webkit-touch-callout:none}.chosen-container .chosen-results li.active-result{display:list-item;cursor:pointer}.chosen-container .chosen-results li.disabled-result{display:list-item;color:#ccc;cursor:default}.chosen-container .chosen-results li.highlighted{background-color:#3875d7;background-image:linear-gradient(#3875d7 20%,#2a62bc 90%);color:#fff}.chosen-container .chosen-results li.no-results{color:#777;display:list-item;background:#f4f4f4}.chosen-container .chosen-results li.group-result{display:list-item;font-weight:700;cursor:default}.chosen-container .chosen-results li.group-option{padding-left:15px}.chosen-container .chosen-results li em{font-style:normal;text-decoration:underline}.chosen-container-multi .chosen-choices{position:relative;overflow:hidden;margin:0;padding:0 5px;width:100%;height:auto;border:1px solid #aaa;background-color:#fff;background-image:linear-gradient(#eee 1%,#fff 15%);cursor:text}.chosen-container-multi .chosen-choices li{float:left;list-style:none}.chosen-container-multi .chosen-choices li.search-field{margin:0;padding:0;white-space:nowrap}.chosen-container-multi .chosen-choices li.search-field input[type=text]{margin:1px 0;padding:0;outline:0;border:0!important;background:0 0!important;box-shadow:none;color:#999;font-size:100%;font-family:sans-serif;line-height:normal;border-radius:0;width:25px;height:25px;min-height:25px}.chosen-container-multi .chosen-choices li.search-choice{position:relative;margin:3px 5px 3px 0;padding:3px 20px 3px 6px;border:1px solid #aaa;max-width:100%;border-radius:3px;background-color:#eee;background-image:linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-size:100% 19px;background-repeat:repeat-x;background-clip:padding-box;box-shadow:0 0 2px #fff inset,0 1px 0 rgba(0,0,0,.05);color:#333;line-height:13px;cursor:default}.chosen-container-multi .chosen-choices li.search-choice span{word-wrap:break-word;white-space:nowrap}.chosen-container-multi .chosen-choices li.search-choice .search-choice-close{position:absolute;top:0;right:0;display:block;width:12px;height:12px;font-size:1px}.chosen-container-multi .chosen-choices li.search-choice-disabled{padding-right:5px;border:1px solid #ccc;background-color:#e4e4e4;background-image:linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);color:#666}.chosen-container-multi .chosen-choices li.search-choice-focus{background:#d4d4d4}.chosen-container-multi .chosen-results{margin:0;padding:0}.chosen-container-multi .chosen-drop .result-selected{display:list-item;color:#ccc;cursor:default}.chosen-container-active .chosen-single{border:1px solid #5897fb;box-shadow:0 0 5px rgba(0,0,0,.3)}.chosen-container-active.chosen-with-drop .chosen-single{border:1px solid #aaa;border-bottom-right-radius:0;border-bottom-left-radius:0;background-image:linear-gradient(#eee 20%,#fff 80%);box-shadow:0 1px 0 #fff inset}.chosen-container-active.chosen-with-drop .chosen-single div{border-left:none;background:0 0}.chosen-container-active .chosen-choices{border:1px solid #5897fb;box-shadow:0 0 5px rgba(0,0,0,.3)}.chosen-container-active .chosen-choices li.search-field input[type=text]{color:#222!important}.chosen-disabled{opacity:.5!important;cursor:default}.chosen-disabled .chosen-single{cursor:default}.chosen-disabled .chosen-choices .search-choice .search-choice-close{cursor:default}.chosen-rtl{text-align:right}.chosen-rtl .chosen-single{overflow:visible;padding:0 8px 0 0}.chosen-rtl .chosen-single span{margin-right:0;margin-left:26px;direction:rtl}.chosen-rtl .chosen-single-with-deselect span{margin-left:38px}.chosen-rtl .chosen-single div{right:auto;left:3px}.chosen-rtl .chosen-single abbr{right:auto;left:26px}.chosen-rtl .chosen-choices li{float:right}.chosen-rtl .chosen-choices li.search-field input[type=text]{direction:rtl}.chosen-rtl .chosen-choices li.search-choice{margin:3px 5px 3px 0;padding:3px 5px 3px 19px}.chosen-rtl .chosen-choices li.search-choice .search-choice-close{right:auto;left:4px}.chosen-rtl.chosen-container-single .chosen-results{margin:0 0 4px 4px;padding:0 4px 0 0}.chosen-rtl .chosen-results li.group-option{padding-right:15px;padding-left:0}.chosen-rtl.chosen-container-active.chosen-with-drop .chosen-single div{border-right:none}.chosen-rtl .chosen-search input[type=text]{padding:4px 5px 4px 20px;direction:rtl}
|
1 |
+
.csf{position:relative}.csf label{padding:0;margin:0;display:inline-block}.csf-ab-icon{top:2px}#screen-meta-links+.csf-options{margin-top:40px}.csf-options{margin-top:20px;margin-right:20px}.csf-header{position:relative}.csf-header-inner{padding:25px;transition:box-shadow .3s ease}.csf-header-inner h1{float:left;font-size:1.5em;line-height:26px;font-weight:400;margin:0}.csf-header-inner h1 small{font-size:11px;font-weight:500}.csf-sticky .csf-header-inner{position:fixed;z-index:99;top:32px;box-shadow:0 5px 10px rgba(0,0,0,.1)}.csf-buttons{float:right}.csf-buttons .button{margin:0 2px;line-height:26px}.csf-buttons .button:focus{outline:0!important;box-shadow:none!important}.csf-buttons .csf-save{min-width:72px}.csf-header-left{float:left}.csf-header-right{float:right}.csf-nav{display:block;position:relative;z-index:10;float:left}.csf-nav ul{clear:left;margin:0;list-style-type:none}.csf-nav ul li{margin-bottom:0}.csf-nav ul li a{font-size:13px;position:relative;display:block;padding:14px 12px;text-decoration:none;transition-property:color,background;transition-duration:.2s;transition-timing-function:ease}.csf-nav ul li a:focus{outline:0;box-shadow:none}.csf-nav ul li .csf-arrow:after{content:"\f054";display:inline-block;font-family:"Font Awesome 5 Pro","Font Awesome 5 Free",FontAwesome;font-weight:900;font-size:9px;line-height:1;position:absolute;right:10px;top:50%;margin-top:-4px}.csf-nav ul li.csf-tab-expanded .csf-arrow:after{transform:rotate(90deg)}.csf-nav ul li.csf-tab-expanded ul{display:block}.csf-nav ul ul{display:none;position:relative}.csf-nav ul ul li a{font-size:12px;padding:12px 14px 12px 24px}.csf-nav .csf-tab-icon{width:20px;margin-right:5px;font-size:13px;text-align:center}.csf-nav .csf-label-error{margin-left:4px;vertical-align:top}.csf-nav-normal{width:225px}.csf-nav-normal+.csf-content{margin-left:225px}.csf-nav-inline{width:100%}.csf-nav-inline ul li{display:inline-block;vertical-align:top}.csf-nav-background{position:absolute;top:0;left:0;bottom:0;z-index:9;width:225px}.csf-wrapper{position:relative}.csf-content{position:relative;background-color:#fff}.csf-sections{float:left;width:100%}.csf-section-title{display:none;padding:20px 30px;background-color:#f5f5f5;border-top:1px solid #eee;border-bottom:1px solid #eee}.csf-section-title h3{margin:0;padding:0;font-size:13px;font-weight:700;text-transform:uppercase}.csf-section-title .csf-section-icon{margin-right:5px}.csf-footer{padding:20px;font-size:11px}.csf-copyright{float:left;margin-top:5px}.csf-search-all .csf-nav,.csf-search-all .csf-nav-background,.csf-show-all .csf-nav,.csf-show-all .csf-nav-background{display:none}.csf-search-all .csf-content,.csf-show-all .csf-content{margin-left:0}.csf-search-all .csf-section,.csf-search-all .csf-section-title,.csf-show-all .csf-section,.csf-show-all .csf-section-title{display:block!important}.csf-search-all .csf-section-title{display:none!important}.csf-expand-all{float:left;padding:0 8px;margin-right:4px;z-index:1;font-size:13px;line-height:30px;cursor:pointer;user-select:none;border-radius:2px;transition:all .2s}.csf-expand-all span{font-size:11px;vertical-align:middle}.csf-search{float:left}.csf-search input{margin:0 2px 0 0;border:none;font-size:12px;line-height:30px;min-height:30px;text-align:inherit;padding:0 10px;border-radius:2px;box-shadow:none}.csf-search input:focus{box-shadow:none}.csf-saving .csf-buttons,.csf-saving .csf-content{cursor:default;pointer-events:none;opacity:.5}.csf-metabox{margin:-6px -12px -12px -12px}.csf-metabox .csf-field{padding:20px}.csf-metabox .csf-section-title{padding:20px}.block-editor-page .csf-metabox{margin:-6px -14px -14px -14px}.block-editor-editor-skeleton__content .csf-metabox{border-left:1px solid #e2e4e7;border-right:1px solid #e2e4e7}.csf-sections-reset{float:left;width:100%;text-align:right;border-top:1px solid #eee}.csf-sections-reset .csf-button-cancel,.csf-sections-reset input{display:none}.csf-sections-reset label{padding:10px}.csf-sections-reset span{-webkit-user-select:none;user-select:none}.csf-sections-reset input:checked~.csf-button-reset{display:none}.csf-sections-reset input:checked~.csf-button-cancel{display:inline-block}#side-sortables .csf-section-title{padding:12px}#side-sortables .csf-field{padding:10px 15px}#side-sortables .csf-field .csf-title{float:none;width:100%;margin-bottom:6px}#side-sortables .csf-field .csf-fieldset{float:none;width:100%}#side-sortables .csf-field-text input{width:100%}#side-sortables .csf-notice{padding:10px 15px}.csf-comment-metabox{margin:-6px -12px -12px -12px}.csf-comment-metabox .csf-field{padding:20px}.csf-comment-metabox .csf-section-title{padding:20px}.csf-tooltip{position:absolute;z-index:5000001;font-size:12px;line-height:1.4;text-align:center;text-decoration:none;padding:6px 12px;max-width:200px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.85);border-radius:4px}.csf-theme-dark .csf-header-inner{background-color:#050505}.csf-theme-dark .csf-header-inner h1{color:#fff}.csf-theme-dark .csf-header-inner h1 small{color:#555}.csf-theme-dark .csf-expand-all{color:#999;background-color:#222}.csf-theme-dark .csf-expand-all:hover{color:#fff;background-color:#333}.csf-theme-dark .csf-search input{color:#fff;background-color:#222}.csf-theme-dark .csf-search:focus{background-color:#444}.csf-theme-dark .csf-search::-webkit-input-placeholder{color:#666}.csf-theme-dark .csf-nav ul li a{color:#999;border-color:#2f2f2f;background-color:#222}.csf-theme-dark .csf-nav ul li a:hover{color:#fff}.csf-theme-dark .csf-nav ul li .csf-active{color:#fff;background-color:#111}.csf-theme-dark .csf-nav ul ul li a{border-color:#2f2f2f;background-color:#191919}.csf-theme-dark .csf-nav ul ul li .csf-active{background-color:#101010}.csf-theme-dark .csf-nav ul ul:before{background-color:rgba(34,34,34,.75)}.csf-theme-dark .csf-nav>ul>li:last-child>a{border:none}.csf-theme-dark .csf-nav-normal ul li a{border-bottom-width:1px;border-bottom-style:solid}.csf-theme-dark .csf-nav-normal ul li .csf-active:after{content:" ";position:absolute;right:0;top:50%;height:0;width:0;pointer-events:none;border:solid transparent;border-right-color:#fff;border-width:4px;margin-top:-4px}.csf-theme-dark .csf-nav-inline{background-color:#222}.csf-theme-dark .csf-nav-inline ul li a{text-align:center;border-right-width:1px;border-right-style:solid}.csf-theme-dark .csf-nav-inline ul li .csf-active:after{content:" ";position:absolute;left:50%;bottom:0;height:0;width:0;pointer-events:none;border:solid transparent;border-bottom-color:#fff;border-width:4px;margin-left:-4px}.csf-theme-dark .csf-nav-background{background-color:#222}.csf-theme-dark .csf-footer{color:#555;background-color:#050505}.csf-theme-light .csf-container{border:1px solid #ccd0d4;box-shadow:0 0 15 rgba(0,0,0,.04)}.csf-theme-light .csf-header-inner{border-bottom:1px solid #ccd0d4;background-color:#f5f5f5;background:linear-gradient(#fefefe,#f5f5f5)}.csf-theme-light .csf-header-inner h1 small{color:#999}.csf-theme-light .csf-expand-all{color:#999;background-color:#eee}.csf-theme-light .csf-expand-all:hover{color:#555}.csf-theme-light .csf-search input{color:#555;background-color:#eee}.csf-theme-light .csf-search input::-webkit-input-placeholder{color:#999}.csf-theme-light .csf-nav ul li a{font-weight:500;color:#444;background-color:#f5f5f5}.csf-theme-light .csf-nav ul li a:hover{color:#111;background-color:#fff}.csf-theme-light .csf-nav ul li .csf-active{color:#111;background-color:#fff}.csf-theme-light .csf-nav ul ul li a{background-color:#eee}.csf-theme-light .csf-nav-normal>ul{margin-right:-1px;margin-bottom:-1px}.csf-theme-light .csf-nav-normal>ul li a{border-bottom:1px solid #ccd0d4;border-right:1px solid #ccd0d4}.csf-theme-light .csf-nav-normal>ul li .csf-active{border-right-color:#fff}.csf-theme-light .csf-nav-inline{background-color:#f5f5f5;border-bottom:1px solid #ccd0d4}.csf-theme-light .csf-nav-inline>ul{margin-bottom:-1px}.csf-theme-light .csf-nav-inline>ul li a{text-align:center;border-right:1px solid #ccd0d4;border-bottom:1px solid #ccd0d4}.csf-theme-light .csf-nav-inline>ul li .csf-active{border-bottom-color:#fff}.csf-theme-light .csf-nav-inline>ul ul{display:none!important}.csf-theme-light .csf-nav-inline .csf-arrow:after{display:none}.csf-theme-light .csf-nav-background{background-color:#f5f5f5;border-right:1px solid #ccd0d4}.csf-theme-light .csf-footer{color:#555;border-top:1px solid #ccd0d4;background-color:#f5f5f5;background:linear-gradient(#fafafa,#f5f5f5)}.csf-field{position:relative;padding:30px}.csf-field+.csf-field{border-top:1px solid #eee}.csf-field p:first-child{margin-top:0}.csf-field p:last-child{margin-bottom:0}.csf-field:after,.csf-field:before{content:" ";display:table}.csf-field:after{clear:both}.csf-field h4{margin-top:0}.csf-field .csf-title{position:relative;width:20%;float:left}.csf-field .csf-title h4{margin:0;color:#23282d}.csf-field .csf-fieldset{float:right;width:calc(80% - 20px)}.csf-pseudo-field{padding:0 5px 0 0!important;display:inline-block}.csf-pseudo-field+.csf-pseudo-field{border:0}.csf-pseudo-field pre{display:none}.csf-field-accordion .csf-accordion-item{position:relative;margin-bottom:5px}.csf-field-accordion .csf-accordion-item:last-child{margin-bottom:0}.csf-field-accordion .csf-accordion-item h4{font-size:1em}.csf-field-accordion .csf-accordion-title{display:block;cursor:pointer;position:relative;margin:0;padding:15px;min-height:0;font-size:100%;user-select:none;border:1px solid #ccd0d4;background-color:#fafafa;box-shadow:0 1px 1px rgba(0,0,0,.04);transition:border-color .15s}.csf-field-accordion .csf-accordion-title:active,.csf-field-accordion .csf-accordion-title:focus,.csf-field-accordion .csf-accordion-title:hover{outline:0;border-color:#999}.csf-field-accordion .csf-accordion-title .csf--icon{width:20px;text-align:center;margin-right:2px}.csf-field-accordion .csf-accordion-icon{width:16px;text-align:center}.csf-field-accordion .csf-accordion-content{display:none;padding:0;border:1px solid #ccd0d4;border-top:none;background-color:#fff;box-shadow:0 1px 1px rgba(0,0,0,.04)}.csf-field-accordion .csf-accordion-content>.csf-field{padding:15px}.csf-field-accordion .csf-accordion-open{display:block}.csf-field-background .csf-field{border:0!important;padding:0;margin-bottom:6px;margin-right:6px}.csf-field-background .csf--title{color:#777;font-size:12px}.csf-field-background .csf--background-colors{display:flex;flex-wrap:wrap}.csf-field-background .csf--background-attributes{display:flex;flex-wrap:wrap}.csf-field-background .csf--background-attributes select{min-width:100%;margin:0}.csf-field-background .csf--background-attributes .csf-field{flex:1}.csf-field-background .csf--attributes-hidden{display:none}.csf-field-backup textarea{width:100%;min-height:200px;margin-bottom:5px}.csf-field-backup small{display:inline-block;margin:5px}.csf-field-backup hr{margin:20px 0;border:none;border-bottom:1px solid #e5e5e5}.csf-field-border .csf--inputs,.csf-field-dimensions .csf--inputs,.csf-field-spacing .csf--inputs{float:left;display:flex;flex-wrap:wrap}.csf-field-border .csf--input,.csf-field-dimensions .csf--input,.csf-field-spacing .csf--input{display:flex;padding-right:6px;padding-bottom:4px;box-sizing:border-box}.csf-field-border .csf--input select,.csf-field-dimensions .csf--input select,.csf-field-spacing .csf--input select{margin:0}.csf-field-border .csf--input input,.csf-field-dimensions .csf--input input,.csf-field-spacing .csf--input input{position:relative;z-index:1;margin:0;width:65px;max-width:100%;text-align:center}.csf-field-border .csf--color,.csf-field-dimensions .csf--color,.csf-field-spacing .csf--color{float:left}.csf-field-border .csf--label,.csf-field-dimensions .csf--label,.csf-field-spacing .csf--label{display:flex;flex-direction:column;justify-content:center;user-select:none;min-width:20px;max-width:100%;padding:0 4px;font-size:12px;text-align:center;color:#555;border:1px solid #7b776c;background-color:#f5f5f5}.csf-field-border .csf--icon,.csf-field-dimensions .csf--icon,.csf-field-spacing .csf--icon{border-right:0;border-radius:4px 0 0 4px}.csf-field-border .csf--icon+input,.csf-field-dimensions .csf--icon+input,.csf-field-spacing .csf--icon+input{border-top-left-radius:0!important;border-bottom-left-radius:0!important}.csf-field-border .csf--unit,.csf-field-dimensions .csf--unit,.csf-field-spacing .csf--unit{border-left:0;border-radius:0 4px 4px 0}.csf-field-border .csf--is-unit,.csf-field-dimensions .csf--is-unit,.csf-field-spacing .csf--is-unit{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.csf-field-button_set .csf--buttons{display:inline-block}.csf-field-button_set .csf--button{position:relative;z-index:1;float:left;cursor:pointer;padding:7px 14px;min-width:16px;text-align:center;color:#555;border:1px solid #ccc;background-color:#f7f7f7;user-select:none;box-shadow:0 1px 0 rgba(0,0,0,.1)}.csf-field-button_set .csf--button:first-child{border-radius:4px 0 0 4px}.csf-field-button_set .csf--button:last-child{border-radius:0 4px 4px 0}.csf-field-button_set .csf--button:not(:first-child){margin-left:-1px}.csf-field-button_set .csf--button:hover{background-color:#eee}.csf-field-button_set .csf--active,.csf-field-button_set .csf--active:hover{z-index:2;color:#fff;border-color:#006799;background-color:#0085ba}.csf-field-button_set input{display:none}.csf-field-checkbox ul,.csf-field-radio ul{margin:0;padding:0;list-style-type:none;overflow-y:auto;max-height:305px}.csf-field-checkbox ul li,.csf-field-radio ul li{margin-bottom:6px}.csf-field-checkbox ul ul,.csf-field-radio ul ul{max-height:none}.csf-field-checkbox ul ul li,.csf-field-radio ul ul li{margin-left:8px}.csf-field-checkbox ul ul li:first-child,.csf-field-radio ul ul li:first-child{margin-left:0}.csf-field-checkbox input,.csf-field-radio input{margin:0 1px}.csf-field-checkbox .csf--inline-list li,.csf-field-radio .csf--inline-list li{display:inline-block;margin-right:15px}.csf-field-checkbox .csf--text,.csf-field-radio .csf--text{margin-left:5px;vertical-align:middle}.csf-field-checkbox .csf-checker,.csf-field-radio .csf-checker{cursor:pointer}.csf-field-code_editor .CodeMirror{width:100%;height:400px}.csf-field-code_editor .cm-s-default{border:1px solid #ccd0d4}.csf-field-code_editor textarea{width:100%;height:400px}.csf-field-color>input{opacity:.75;width:115px;max-width:100%}.csf-field-color .button.wp-picker-clear{padding:0 8px;margin-left:6px;line-height:2.54545455;min-height:30px}.csf-field-color_group .csf--left{float:left;margin-right:10px;margin-bottom:5px}.csf-field-color_group .csf--title{color:#999;margin-bottom:5px}.csf-field-fieldset .csf-fieldset-content{border:1px solid #ccd0d4;background-color:#fff;box-shadow:0 1px 1px rgba(0,0,0,.04)}.csf-field-fieldset .csf-fieldset-content>.csf-field{padding:15px}.csf-field-fieldset .csf-field-subheading{font-size:13px}.csf-field-date input{margin:0}.csf-field-date .csf--to{margin-left:7px}.csf-datepicker-wrapper{margin-top:5px;width:auto;background-color:#fff;z-index:9999999!important;box-shadow:0 0 30px rgba(0,0,0,.15)}.csf-datepicker-wrapper *{float:none;margin:0;padding:0;font-family:inherit;font-weight:400;font-style:normal;text-decoration:none;border:0;border-radius:0;box-shadow:none}.csf-datepicker-wrapper .ui-datepicker-header,.csf-datepicker-wrapper .ui-widget-header{color:#fff;background:#00a0d2}.csf-datepicker-wrapper .ui-datepicker-header .ui-state-hover{cursor:pointer}.csf-datepicker-wrapper .ui-datepicker-title{font-size:14px;line-height:40px;text-align:center}.csf-datepicker-wrapper .ui-datepicker-next,.csf-datepicker-wrapper .ui-datepicker-prev{position:static;top:auto;left:auto;right:auto;font-family:"Font Awesome 5 Pro","Font Awesome 5 Free",FontAwesome;font-weight:900;font-size:12px;text-align:center;width:41px;height:40px;line-height:40px;color:#fff;background-color:rgba(255,255,255,.1);text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.csf-datepicker-wrapper .ui-datepicker-next span,.csf-datepicker-wrapper .ui-datepicker-prev span{display:none}.csf-datepicker-wrapper .ui-datepicker-prev{float:left}.csf-datepicker-wrapper .ui-datepicker-next{float:right}.csf-datepicker-wrapper .ui-datepicker-prev:before{content:'\f053'}.csf-datepicker-wrapper .ui-datepicker-next:before{content:'\f054'}.csf-datepicker-wrapper .ui-datepicker-next-hover,.csf-datepicker-wrapper .ui-datepicker-prev-hover{opacity:.75}.csf-datepicker-wrapper tbody .ui-datepicker-week-col{background-color:#f7f7f7}.csf-datepicker-wrapper .ui-datepicker-buttonpane{padding:10px;text-align:center;background-color:#f7f7f7}.csf-datepicker-wrapper .ui-datepicker-buttonpane button{cursor:pointer;margin:0 5px;padding:7px 14px;border:1px solid #eee;background-color:#fff}.csf-datepicker-wrapper select{margin:0 4px}.csf-datepicker-wrapper select option{color:#555}.csf-datepicker-wrapper table{font-size:13px;border-collapse:collapse;width:100%}.csf-datepicker-wrapper thead{color:#fff;background:#32373c}.csf-datepicker-wrapper th{text-align:center;padding:7px;border:1px solid #444}.csf-datepicker-wrapper td{text-align:center;border:1px solid #f4f4f4}.csf-datepicker-wrapper td.ui-datepicker-other-month{border:transparent}.csf-datepicker-wrapper td .ui-state-default{color:#555;width:auto;display:block;padding:6px 12px}.csf-datepicker-wrapper td .ui-state-active,.csf-datepicker-wrapper td .ui-state-hover{color:#fff;background-color:#0073aa}.csf-datepicker-wrapper td.ui-state-disabled .ui-state-default{opacity:.5}.csf-field-datetime input{margin:0}.csf-field-datetime .csf--to{margin-left:7px}.csf-flatpickr input,.csf-flatpickr select{min-height:auto}.csf-flatpickr input:focus,.csf-flatpickr select:focus{box-shadow:none}.csf-flatpickr.open{z-index:9999999!important}.csf-field-gallery ul{margin:0;padding:0;list-style-type:none}.csf-field-gallery ul li{display:inline-block;position:relative;padding:4px;margin:0 5px 10px 0;border:1px solid #ccc;background-color:#f9f9f9;border-radius:2px;box-shadow:0 1px 0 rgba(0,0,0,.08)}.csf-field-gallery ul li img{max-height:60px;display:inline-block;vertical-align:middle}.csf-field-gallery .button{margin-right:5px;margin-bottom:5px}.csf-field-group .csf-cloneable-hidden{display:none!important}.csf-field-group .csf-cloneable-wrapper{position:relative}.csf-field-group .csf-cloneable-item{display:none;position:relative;margin-bottom:5px}.csf-field-group .csf-cloneable-item h4{font-size:1em}.csf-field-group .ui-accordion .csf-cloneable-item{display:block}.csf-field-group .csf-cloneable-content{border:1px solid #ccd0d4;background-color:#fff;box-shadow:0 1px 1px rgba(0,0,0,.04)}.csf-field-group .csf-cloneable-content>.csf-field{padding:15px}.csf-field-group .csf-cloneable-title{display:block;cursor:pointer;position:relative;user-select:none;margin:0;padding:15px 65px 15px 10px;min-height:0;font-size:100%;border:1px solid #ccd0d4;background-color:#fafafa;box-shadow:0 1px 1px rgba(0,0,0,.04);transition:border-color .15s}.csf-field-group .csf-cloneable-title:active,.csf-field-group .csf-cloneable-title:focus,.csf-field-group .csf-cloneable-title:hover{border-color:#999;outline:0}.csf-field-group .csf-cloneable-helper{position:absolute;top:12px;right:10px;z-index:1;font-size:14px;line-height:1em}.csf-field-group .csf-cloneable-helper i{display:inline-block;cursor:pointer;padding:5px;color:#999}.csf-field-group .csf-cloneable-helper i:hover{color:#555}.csf-field-group .csf-cloneable-content{padding:0;border-top:0}.csf-field-group .csf-cloneable-title-number,.csf-field-group .csf-cloneable-title-prefix{margin-right:5px}.csf-field-group .csf-cloneable-alert{display:none;margin-bottom:5px;padding:10px 20px;color:#a94442;border:1px solid #ebccd1;background-color:#f2dede}.csf-field-group .widget-placeholder{margin-bottom:10px;border:1px dashed #f1c40f;background-color:#fffae4}.csf-field-group .csf-cloneable-header-icon{display:inline-block;text-align:center;font-size:14px;width:17px;text-indent:0;vertical-align:text-top}.csf-field-group .csf-cloneable-placeholder{background-color:#ddd;margin-top:4px;width:100px;height:10px;font-size:10px;line-height:10px;display:inline-block;vertical-align:top;border-radius:2px}.csf-field-icon .button{margin-right:5px}.csf-field-icon .csf-icon-select{display:flex}.csf-field-icon .csf-icon-preview:not(.hidden){display:flex}.csf-field-icon .csf-icon-preview i{display:flex;justify-content:center;align-items:center;width:30px;font-size:14px;margin-right:5px;text-align:center;vertical-align:top;color:#555;border:1px solid #ccc;background-color:#f7f7f7;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.08)}.csf-field-image_select .csf--image{display:inline-block;margin:0 5px 5px 0}.csf-field-image_select .csf--inline-list .csf--image{display:block}.csf-field-image_select figure{cursor:pointer;position:relative;display:inline-block;max-width:100%;margin:0;vertical-align:bottom;border:2px solid transparent;background-color:#fff;user-select:none;transition:all .2s}.csf-field-image_select figure:before{position:absolute;top:0;left:0;text-align:center;font-size:10px;font-family:"Font Awesome 5 Pro","Font Awesome 5 Free",FontAwesome;font-weight:900;content:"\f00c";width:16px;height:16px;line-height:14px;opacity:0;color:#fff;background-color:#222;transition:opacity .2s}.csf-field-image_select .csf--active figure{border-color:#222;box-shadow:0 0 20px rgba(0,0,0,.2)}.csf-field-image_select .csf--active figure:before{opacity:1}.csf-field-image_select img{max-width:100%;height:auto;vertical-align:top}.csf-field-image_select input{display:none}.csf-field-link_color .csf--left{float:left;margin-right:10px;margin-bottom:5px}.csf-field-link_color .csf--title{color:#777;margin-bottom:5px}.csf-field-map input{width:100%}.csf-field-map input[type=text].ui-autocomplete-loading{background-position-x:calc(100% - 5px)}.csf-field-map .csf--map-search+.csf--map-osm-wrap{margin-top:10px}.csf-field-map .csf--map-osm-wrap{position:relative;padding:5px;border:1px solid #eee;background-color:#fff;box-shadow:0 1px 1px rgba(0,0,0,.04)}.csf-field-map .csf--map-osm{position:relative;z-index:1;min-height:250px}.csf-field-map .csf--map-inputs{margin-top:10px;display:flex;justify-content:space-between}.csf-field-map .csf--map-input{flex:1}.csf-field-map .csf--map-input:last-child{padding-left:10px}.csf-field-map label{display:block;color:#777;font-size:12px;margin:0 0 2px 0}.csf-map-ui-autocomplate{z-index:999999;border-radius:4px;overflow:hidden}.csf-field-media .csf--placeholder{display:flex;align-items:flex-start}.csf-field-media .csf--placeholder input{width:100%;margin:0}.csf-field-media .button{margin-left:5px}.csf-field-media .hidden+.button{margin-left:0}.csf-field-media .csf--preview{position:relative}.csf-field-palette .csf--palette{position:relative;display:inline-block;cursor:pointer;border:2px solid #ddd;margin-right:10px;margin-bottom:10px;user-select:none;-webkit-user-select:none;transition:all .2s}.csf-field-palette .csf--palette span{vertical-align:middle;display:inline-block;width:22px;height:60px;line-height:60px;overflow:hidden;text-indent:-999px}.csf-field-palette .csf--palette:before{position:absolute;top:0;left:0;text-align:center;font-size:10px;font-family:"Font Awesome 5 Pro","Font Awesome 5 Free",FontAwesome;font-weight:900;content:"\f00c";width:16px;height:16px;line-height:14px;opacity:0;color:#fff;background-color:#222;transition:opacity .2s}.csf-field-palette .csf--active{border-color:#222;box-shadow:0 0 20px rgba(0,0,0,.2)}.csf-field-palette .csf--active:before{opacity:1}.csf-field-palette input{display:none}.csf-field-repeater .csf-field-text input{width:100%}.csf-field-repeater .csf-repeater-hidden{display:none!important}.csf-field-repeater .csf-repeater-wrapper .csf-repeater-item{display:table;width:100%;margin-bottom:5px;border:1px solid #eee}.csf-field-repeater .csf-repeater-wrapper .csf-repeater-item h4{font-size:1em}.csf-field-repeater .csf-repeater-content{width:100%;display:table-cell;vertical-align:middle;background-color:#fff}.csf-field-repeater .csf-repeater-content>.csf-field{padding:15px}.csf-field-repeater .csf-repeater-helper{width:100%;display:table-cell;vertical-align:middle;text-align:center;font-size:14px;line-height:1em;border-left:1px solid #eee;background-color:#f7f7f7}.csf-field-repeater .csf-repeater-helper i{display:inline-block;cursor:pointer;color:#999;padding:5px}.csf-field-repeater .csf-repeater-helper i:hover{color:#555}.csf-field-repeater .csf-repeater-helper-inner{width:75px}.csf-field-repeater .csf-repeater-alert{display:none;margin-bottom:5px;padding:10px 20px;color:#a94442;border:1px solid #ebccd1;background-color:#f2dede}.csf-field-repeater .widget-placeholder{height:50px;margin-bottom:3px;border:1px dashed #f1c40f;background-color:#fffae4}.csf-field-repeater .ui-sortable-helper{height:50px!important;overflow:hidden!important;border-color:#ccc!important;background-color:#eee!important;opacity:.5}.csf-field-repeater .ui-sortable-helper .csf-repeater-content,.csf-field-repeater .ui-sortable-helper .csf-repeater-helper{display:none}.csf-field-select .csf-fieldset{min-height:30px}.csf-field-select .csf-chosen{display:none}.csf-field-select select{max-width:100%;margin:0}.csf-field-select .csf-hide-select{display:none!important}.csf-field-slider .csf--wrap{display:flex;align-items:center}.csf-field-slider .csf--input{display:flex}.csf-field-slider .csf--unit{display:flex;justify-content:center;flex-direction:column;user-select:none;padding:0 6px;font-size:11px;line-height:1;border-radius:0 4px 4px 0;color:#555;border:1px solid #7e8993;border-left:0;background-color:#f5f5f5}.csf-field-slider .csf-slider-ui{margin-right:15px}.csf-field-slider input[type=number]{position:relative;z-index:1;margin:0;width:50px;text-align:center}.csf-field-slider .csf--is-unit{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.csf-field-slider .ui-slider{position:relative;width:100%;height:3px;border:none;background:#ddd;border-radius:2px}.csf-field-slider .ui-slider-range{height:3px;border:none;background:#333;border-radius:2px}.csf-field-slider .ui-slider-handle{position:absolute;width:16px;height:16px;top:-7px;margin-left:-8px;border:none;background:#333;border-radius:2px}.csf-field-slider .ui-slider-handle:hover,.csf-field-slider .ui-state-active{cursor:pointer;background:#111}.csf-field-sortable .csf-field-text input{width:100%;max-width:100%}.csf-field-sortable .csf-sortable .csf-sortable-item{display:table;width:100%;margin-bottom:5px;border:1px solid #eee}.csf-field-sortable .csf-sortable .csf-sortable-item h4{font-size:1em}.csf-field-sortable .csf-sortable-content{width:100%;display:table-cell;vertical-align:middle;background-color:#fff}.csf-field-sortable .csf-sortable-content>.csf-field{padding:15px}.csf-field-sortable .csf-sortable-helper{width:100%;display:table-cell;vertical-align:middle;text-align:center;font-size:14px;line-height:1em;border-left:1px solid #eee;background-color:#f7f7f7}.csf-field-sortable .csf-sortable-helper i{display:inline-block;cursor:pointer;width:50px;color:#555}.csf-field-sortable .csf-sortable-helper i:hover{opacity:.5}.csf-field-sortable .widget-placeholder{height:50px;margin-bottom:3px;border:1px dashed #f1c40f;background-color:#fffae4}.csf-field-sortable .ui-sortable-helper{height:50px!important;overflow:hidden!important;border-color:#ccc!important;background-color:#eee!important;opacity:.5}.csf-field-sortable .ui-sortable-helper .csf-sortable-content,.csf-field-sortable .ui-sortable-helper .csf-sortable-helper{display:none}.csf-field-sorter .ui-sortable-placeholder{height:20px;border:1px dashed #f1c40f;background-color:#fffae4}.csf-field-sorter .csf-modules{float:left;width:50%;box-sizing:border-box}.csf-field-sorter .csf-modules:first-child{padding-right:15px}.csf-field-sorter .csf-modules:last-child{padding-left:15px}.csf-field-sorter .csf-disabled,.csf-field-sorter .csf-enabled{padding:5px 15px;border:1px dashed #ddd;background-color:#fff}.csf-field-sorter .csf-disabled li{opacity:.5;transition:opacity .15s}.csf-field-sorter .csf-disabled .ui-sortable-helper{opacity:1}.csf-field-sorter .csf-sorter-title{font-size:13px;font-weight:600;padding:10px;text-align:center;border:1px dashed #ddd;border-bottom:none;background-color:#f8f8f8;text-transform:uppercase}.csf-field-sorter ul{list-style-type:none;margin:0;padding:0;min-height:62px}.csf-field-sorter ul li{margin:10px 0;padding:10px 15px;cursor:move;font-weight:700;text-align:center;border:1px solid #e5e5e5;background-color:#fafafa;transition:border-color .15s}.csf-field-sorter ul li:hover{border-color:#bbb}.csf-field-spinner .csf--spin{display:flex}.csf-field-spinner .ui-widget{font-family:inherit}.csf-field-spinner .ui-spinner{display:flex;align-items:stretch;overflow:unset;border:none;background:0 0;border-radius:0}.csf-field-spinner .ui-spinner .ui-button{display:flex;flex-direction:column;justify-content:center;text-align:center;min-width:20px;padding:0 4px;margin:0;color:#555;background-color:#f5f5f5;border:1px solid #7e8993}.csf-field-spinner .ui-spinner .ui-spinner-button{position:relative;cursor:pointer;height:auto}.csf-field-spinner .ui-spinner .ui-spinner-button:hover{background-color:#e7e7e7}.csf-field-spinner .ui-spinner .ui-spinner-button:active{background-color:#ddd}.csf-field-spinner .ui-spinner .ui-spinner-button:before{font-family:"Font Awesome 5 Pro","Font Awesome 5 Free",FontAwesome;font-weight:900;font-size:14px;line-height:14px}.csf-field-spinner .ui-spinner .ui-spinner-down{border-right:0;border-radius:4px 0 0 4px}.csf-field-spinner .ui-spinner .ui-spinner-down:before{content:"\f0d9"}.csf-field-spinner .ui-spinner .ui-spinner-up{border-left:0;border-radius:0 4px 4px 0}.csf-field-spinner .ui-spinner .ui-spinner-up:before{content:"\f0da"}.csf-field-spinner .ui-spinner .csf--unit{border-left:0;user-select:none}.csf-field-spinner .ui-spinner .ui-button-icon,.csf-field-spinner .ui-spinner .ui-button-icon-space,.csf-field-spinner .ui-spinner .ui-button-text{display:none}.csf-field-spinner .ui-spinner input{font-family:inherit;font-size:inherit;position:relative;z-index:1;width:50px;text-align:center;margin:0;padding:0 8px;border-radius:0}.csf-field-spinner .ui-spinner-down{order:1}.csf-field-spinner .ui-spinner-input{order:2}.csf-field-spinner .csf--unit{order:3}.csf-field-spinner .ui-spinner-up{order:4}.csf-field-switcher .csf--switcher{float:left;cursor:pointer;position:relative;width:60px;height:26px;padding:0;margin:0;overflow:hidden;border-radius:4px;background-color:#ed6f6f;user-select:none;-webkit-user-select:none}.csf-field-switcher .csf--ball{position:absolute;top:4px;left:4px;width:24px;height:18px;background-color:#fff;border-radius:4px;transition:all .1s;box-shadow:1px 1px 1px rgba(0,0,0,.15)}.csf-field-switcher .csf--off,.csf-field-switcher .csf--on{position:absolute;top:0;left:0;right:0;font-size:11px;line-height:26px;font-weight:500;font-style:normal;text-align:center;text-transform:uppercase;color:#fff;padding-right:28px;opacity:0;transition:all .1s}.csf-field-switcher .csf--off{padding-right:0;padding-left:28px;opacity:1}.csf-field-switcher .csf--active{background:#4fb845}.csf-field-switcher .csf--active .csf--on{opacity:1}.csf-field-switcher .csf--active .csf--off{opacity:0}.csf-field-switcher .csf--active .csf--ball{left:100%;margin-left:-28px}.csf-field-switcher .csf--label{float:left;margin-top:4px;margin-left:8px;font-weight:400;color:#999}.csf-field-tabbed .csf-tabbed-content{border:1px solid #ccd0d4;background-color:#fff;box-shadow:0 1px 1px rgba(0,0,0,.04)}.csf-field-tabbed .csf-tabbed-content>.csf-field{padding:15px}.csf-field-tabbed .csf-tabbed-nav .csf--icon{padding-right:5px}.csf-field-tabbed .csf-tabbed-nav a{display:inline-block;padding:12px 15px;margin-top:1px;margin-right:5px;margin-bottom:-1px;position:relative;text-decoration:none;color:#444;font-weight:600;border:1px solid #ccd0d4;background-color:#f3f3f3;transition:all .2s}.csf-field-tabbed .csf-tabbed-nav a:hover{background-color:#f9f9f9}.csf-field-tabbed .csf-tabbed-nav a.csf-tabbed-active{background-color:#fff;border-bottom-color:#fff}.csf-field-tabbed .csf-tabbed-nav a:focus{outline:0;box-shadow:none}.csf-field-text input{width:50%;max-width:100%;margin:0}.csf-field-textarea textarea{width:100%;max-width:100%;min-height:125px}.csf-field-textarea .csf-shortcode-button{margin-bottom:10px;margin-right:5px}.csf-field-typography select,.csf-field-typography textarea{margin:0;min-width:100%;max-width:100%}.csf-field-typography .csf--title{color:#777;margin:0 0 2px 0;font-size:12px}.csf-field-typography .csf--title small{vertical-align:top}.csf-field-typography .csf--blocks{display:flex;flex-wrap:wrap}.csf-field-typography .csf--block{flex:1;max-width:100%;padding-right:6px;padding-bottom:6px}.csf-field-typography .csf--input{margin:0;min-width:100%}.csf-field-typography .csf--input-wrap{position:relative}.csf-field-typography .csf--unit{position:absolute;z-index:1;right:4px;top:4px;bottom:4px;padding:2px 6px;color:#666;font-size:11px;line-height:1;border-radius:2px;background:#eee;user-select:none;display:flex;justify-content:center;flex-direction:column}.csf-field-typography .csf--preview{font-size:16px;line-height:20px;padding:20px;color:#222;border:1px solid #eee;background-color:#fff;border-radius:2.5px;user-select:none;-webkit-user-select:none;transition:background-color .2s,border-color .2s}.csf-field-typography .csf--block-preview{cursor:pointer;position:relative;overflow:hidden;margin-top:10px;max-width:100%}.csf-field-typography .csf--black-background{border-color:#000;background-color:#000}.csf-field-typography .csf--toggle{position:absolute;top:5px;right:10px;color:#999}.csf-field-typography .csf--block-extra-styles{margin-top:5px}.csf-field-upload input{width:100%;margin:0}.csf-field-upload .csf--wrap{display:flex;align-items:flex-start}.csf-field-upload .button{margin-left:5px}.csf-field-upload .csf--preview{position:relative}.csf-field-wp_editor .csf-wp-editor{float:left;width:100%}.csf-field-wp_editor .mce-toolbar-grp{border:none}.csf-field-wp_editor .mce-btn.mce-active button,.csf-field-wp_editor .mce-btn.mce-active i,.csf-field-wp_editor .mce-btn.mce-active:hover button,.csf-field-wp_editor .mce-btn.mce-active:hover i{color:#23282d}.csf-field-wp_editor .wp-media-buttons{position:relative;z-index:2}.csf-field-wp_editor .wp-editor-tabs{position:relative;z-index:1}.csf-field-wp_editor .csf-no-tinymce{border:1px solid #e5e5e5}.csf-field-wp_editor .csf-no-quicktags .wp-media-buttons{float:none;display:block}.csf-field-wp_editor .csf-no-quicktags .mce-tinymce{box-shadow:none;border:1px solid #e5e5e5}.csf-field-wp_editor textarea{width:100%;max-width:100%;margin:0;box-shadow:none}.csf-field-heading{font-size:1.5em;font-weight:700;color:#23282d;background-color:#f5f5f5}.csf-field-subheading{font-size:14px;font-weight:700;padding-top:17px;padding-bottom:17px;color:#23282d;background-color:#f7f7f7}.csf-field-submessage{padding:0!important;border:0!important}.csf-field-submessage+.csf-field{border-top:0!important}.csf-submessage{font-size:12px;padding:17px 30px;border-top:1px solid transparent;border-bottom:1px solid transparent}.csf-submessage-success{color:#3c763d;border-color:#d6e9c6;background-color:#dff0d8}.csf-submessage-info{color:#31708f;border-color:#bce8f1;background-color:#d9edf7}.csf-submessage-warning{color:#8a6d3b;border-color:#faebcc;background-color:#fcf8e3}.csf-submessage-danger{color:#a94442;border-color:#ebccd1;background-color:#f2dede}.csf-submessage-normal{color:#23282d;border-color:#eee;background-color:#f7f7f7}.csf-field-notice{background-color:#f7f7f7}.csf-notice{padding:12px;background-color:#fff;border-left-style:solid;border-left-width:4px;box-shadow:0 1px 1px rgba(0,0,0,.1)}.csf-notice-success{border-color:#46b450}.csf-notice-info{border-color:#339fd4}.csf-notice-warning{border-color:#ffbc00}.csf-notice-danger{border-color:#dc3232}.csf-notice-normal{border-color:#222}.csf-field-number input{width:100%;margin:0}.csf-field-number .csf--wrap{position:relative;float:left;width:100px}.csf-field-number .csf--unit{position:absolute;z-index:1;right:4px;top:4px;bottom:4px;padding:2px 6px;color:#666;font-size:11px;line-height:1;border-radius:2px;background:#eee;user-select:none;display:flex;justify-content:center;flex-direction:column}.csf-field-link .csf--result{display:inline-block;font-size:12px;line-height:16px;padding:7px 10px;margin-bottom:7px;color:#777;border:1px solid #e5e5e5;background-color:#f5f5f5;border-radius:2px;world-break:break-word}.csf-field-link .csf--wrap{position:relative;float:left;width:100px}.csf-field-link .csf--unit{position:absolute;z-index:1;right:4px;top:4px;bottom:4px;padding:2px 6px;color:#666;font-size:11px;line-height:1;border-radius:2px;background:#eee;user-select:none;display:flex;justify-content:center;flex-direction:column}.csf-help{cursor:help;position:absolute;top:0;right:0;padding:5px;font-size:13px;color:#aaa}.csf-help .csf-help-text{display:none}.csf--preview{max-width:100%}.csf-image-preview{display:inline-flex;align-items:center;justify-content:center;flex-direction:column;position:relative;padding:6px;max-width:120px;max-height:120px;min-width:40px;min-height:40px;margin-bottom:10px;text-align:center;border-radius:2px;border:1px solid #ccc;background-color:#f9f9f9;box-shadow:0 1px 0 rgba(0,0,0,.08)}.csf-image-preview i{cursor:pointer;position:absolute;z-index:1;right:4px;top:4px;font-size:14px;width:22px;height:22px;line-height:22px;text-align:center;text-decoration:none;color:#fff;background-color:#d33;opacity:.75;border-radius:2px;transition:all .2s}.csf-image-preview i:hover{opacity:1}.csf-image-preview i:focus{box-shadow:none}.csf-image-preview span{position:relative;overflow:hidden;display:flex;height:100%;width:100%}.csf-image-preview img{max-width:100%;height:auto;object-fit:contain}.csf-field-custom .csf-field{padding:0}.csf-field .chosen-container-single .chosen-single{height:28px;line-height:26px}.csf-field .chosen-container-single .chosen-single abbr{top:0;right:20px;font-family:"Font Awesome 5 Pro","Font Awesome 5 Free",FontAwesome;font-weight:900;font-size:12px;height:100%;width:18px;color:#aaa;text-align:center;background:0 0}.csf-field .chosen-container-single .chosen-single abbr:before{content:"\f00d"}.csf-field .chosen-container-single .chosen-single abbr:hover{color:#555}.csf-field .chosen-container-multi .chosen-choices li.search-choice .search-choice-close{font-family:"Font Awesome 5 Pro","Font Awesome 5 Free",FontAwesome;font-weight:900;font-size:12px;height:100%;width:18px;color:#aaa;text-align:center;background:0 0}.csf-field .chosen-container-multi .chosen-choices li.search-choice .search-choice-close:before{content:"\f00d";display:inline-block;padding-top:3px}.csf-field .chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover{color:#555}.csf-field .chosen-container-single .chosen-single div b{font-family:"Font Awesome 5 Pro","Font Awesome 5 Free",FontAwesome;font-weight:900;font-size:14px;color:#aaa;background:0 0}.csf-field .chosen-container-single .chosen-single div b:before{content:"\f107"}.csf-field .chosen-container-single .chosen-single div b:hover{color:#555}.csf-field .chosen-container-multi .chosen-choices li.search-choice-placeholder{border:1px dashed #aaa;margin:3px 5px 3px 0}.csf-field .chosen-container-multi .ui-sortable li.search-choice span{cursor:move}.csf-field .chosen-container-active.chosen-with-drop .chosen-single div b:before{content:"\f106"}.csf-field .chosen-container-single .chosen-single-with-deselect span{margin-right:40px}.csf-field .chosen-container-single .chosen-search input[type=text]{background:0 0}.csf-field .chosen-container-single .chosen-search:before{font-family:"Font Awesome 5 Pro","Font Awesome 5 Free",FontAwesome;font-weight:900;font-size:11px;content:"\f002";position:absolute;right:12px;top:10px;color:#aaa}.csf-field .wp-picker-container{display:inline-block}.csf-field .wp-picker-container .wp-color-result.button{margin-bottom:0}.csf-field .csf--transparent-wrap{display:none;position:relative;top:-1px;width:235px;padding:9px 10px;border:1px solid #dfdfdf;border-top:none;background-color:#fff}.csf-field .wp-picker-active .csf--transparent-wrap{display:block}.csf-field .csf--transparent-slider{position:absolute;width:190px;margin-left:2px;height:18px}.csf-field .csf--transparent-slider .ui-slider-handle{position:absolute;top:-3px;bottom:-3px;z-index:5;border-color:#aaa;border-style:solid;border-width:4px 3px;width:10px;height:16px;margin:0 -5px;background:0 0;cursor:ew-resize;opacity:.9;border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.2)}.csf-field .csf--transparent-slider .ui-slider-handle:before{content:" ";position:absolute;left:-2px;right:-2px;top:-3px;bottom:-3px;border:2px solid #fff;border-radius:3px}.csf-field .csf--transparent-offset{height:18px;width:200px;background:url(../images/checkerboard.png) repeat-y center left scroll #fff;border-radius:2px;box-shadow:inset 0 0 5px rgba(0,0,0,.4)}.csf-field .csf--transparent-text{position:absolute;top:12px;right:10px;width:30px;font-size:12px;line-height:12px;text-align:center;color:#999}.csf-field .csf--transparent-button{cursor:pointer;user-select:none;margin-top:10px;font-size:11px;text-align:center;border-radius:2px;padding:3px 7px;box-shadow:0 1px 0 rgba(0,0,0,.1);letter-spacing:.2px;color:#777;border:1px solid #ccc;background-color:#f7f7f7;transition:background-color .2s,border-color .2s,color .2s}.csf-field .csf--transparent-active .wp-color-result{background-image:url(../images/checkerboard.png);background-size:135px;background-position:center left;background-color:transparent!important}.csf-field .csf--transparent-active .csf--transparent-button{color:#fff;border-color:#3ea032;background-color:#4fb845}.csf-field .csf--transparent-active .fa:before{content:"\f205"}.csf-widgets>.csf-field{position:relative;top:-1px;margin-left:-15px;margin-right:-15px;padding:12px 15px}.csf-widgets>.csf-field .csf-title{float:none;width:100%;margin-bottom:5px}.csf-widgets>.csf-field .csf-fieldset{float:none;width:100%}.csf-widgets .csf-field-text input{width:100%}.csf-widgets .csf-field-notice .csf-notice{padding:15px}.control-section .csf-widgets>.csf-field{margin-left:-10px;margin-right:-10px;padding:10px 12px}.wp-block .csf-widgets{font-size:13px}.wp-block .csf-widgets>.csf-field{margin-left:-10px;margin-right:-10px}.wp-block .csf-widgets>.csf-field .button-primary{color:#fff}.wp-block .csf-widgets>.csf-field>.csf-title>h4{font-size:13px}.control-section .csf-field{padding:0}.control-section .csf-field .csf-title{float:none;width:100%;margin-bottom:6px}.control-section .csf-field .csf-title h4{display:block;font-size:13px;line-height:1;font-weight:600;color:inherit}.control-section .csf-field .csf-fieldset{float:none;width:100%}.control-section .csf-help{top:-5px;right:-5px}.control-section .csf-field-select select{width:100%}.control-section .csf-field-heading{color:inherit;font-size:14px;line-height:1em;margin-right:-15px;margin-left:-15px;padding:15px}.control-section .csf-field-subheading{color:inherit;font-size:11px;margin-right:-15px;margin-left:-15px;padding:10px 15px}.control-section .csf-subtitle-text{margin-top:4px;font-size:12px}.control-section .csf-field-submessage .csf-submessage{margin-right:-15px;margin-left:-15px;padding:15px}.control-section .csf-fieldset .csf-field-heading,.control-section .csf-fieldset .csf-field-subheading,.control-section .csf-fieldset .csf-field-submessage .csf-submessage{margin-left:0;margin-right:0}.control-section .csf-field-date label,.control-section .csf-field-datetime label{display:block}.control-section .csf-field-date .csf--to,.control-section .csf-field-datetime .csf--to{margin-top:4px;margin-left:0}.control-section .csf-field-sorter ul li{padding:5px}.control-section .csf-field-sorter .csf-modules{float:none;width:100%}.control-section .csf-field-sorter .csf-modules:first-child{padding-right:0;padding-bottom:15px}.control-section .csf-field-background .csf--background-attributes{flex-direction:column}.control-section .csf-field-spacing input{width:90px}.control-section .csf-field-border .csf--input{flex:1 50%}.control-section .csf-field-border input,.control-section .csf-field-border select{width:100%}.control-section .csf-field-spinner input{width:50px}.control-section .csf-field-number .csf--wrap{width:100%}.control-section .csf-field-backup .csf-export-data{display:none}.control-section .csf-field-fieldset .csf-fieldset-content{border-color:#e5e5e5}.control-section .csf-accordion-content>.csf-field,.control-section .csf-cloneable-content>.csf-field,.control-section .csf-fieldset-content>.csf-field,.control-section .csf-repeater-content>.csf-field,.control-section .csf-sortable-content>.csf-field,.control-section .csf-tabbed-content>.csf-field{padding:10px}.control-section .csf-accordion-content>.csf-field .csf-title,.control-section .csf-cloneable-content>.csf-field .csf-title,.control-section .csf-fieldset-content>.csf-field .csf-title,.control-section .csf-repeater-content>.csf-field .csf-title,.control-section .csf-sortable-content>.csf-field .csf-title,.control-section .csf-tabbed-content>.csf-field .csf-title{margin-bottom:5px}.control-section .csf-accordion-content>.csf-field h4,.control-section .csf-cloneable-content>.csf-field h4,.control-section .csf-fieldset-content>.csf-field h4,.control-section .csf-repeater-content>.csf-field h4,.control-section .csf-sortable-content>.csf-field h4,.control-section .csf-tabbed-content>.csf-field h4{font-size:12px}.control-section .csf-depend-hidden.csf-depend-on{display:none!important}.control-section .csf-depend-visible.csf-depend-on{border-top:0!important}.csf-taxonomy{max-width:95%}.csf-taxonomy>.csf-field{border-top:none!important}.csf-taxonomy>.csf-field-heading{font-size:1.1em;padding:20px!important;border:1px solid #ddd}.csf-taxonomy>.csf-field-subheading{font-size:12px;padding:15px!important;border:1px solid #ddd}.csf-taxonomy>.csf-field-submessage .csf-submessage{padding:15px;border-left-width:1px;border-left-style:solid;border-right-width:1px;border-right-style:solid}.csf-taxonomy>.csf-field-notice{background-color:transparent}.csf-taxonomy .csf-section-title{display:block;padding:15px;background-color:#f9f9f9;border:1px solid #e5e5e5;box-shadow:0 1px 1px rgba(0,0,0,.04)}.csf-taxonomy-add-fields>.csf-field{padding:8px 0}.csf-taxonomy-add-fields>.csf-field>.csf-title{float:none;width:100%;padding:2px 2px 4px 0}.csf-taxonomy-add-fields>.csf-field>.csf-title h4{font-size:12px;font-weight:400}.csf-taxonomy-add-fields>.csf-field>.csf-fieldset{float:none;width:100%}.csf-taxonomy-add-fields>.csf-field>.csf-fieldset>.csf-help{right:-5px}.csf-taxonomy-add-fields+p.submit{margin-top:0}.csf-taxonomy-edit-fields>.csf-field{padding:20px 0}.csf-taxonomy-edit-fields>.csf-field>.csf-title{width:200px}.csf-taxonomy-edit-fields>.csf-field>.csf-title h4{font-size:14px;font-weight:600;line-height:1.3;display:inline-block;vertical-align:middle}.csf-taxonomy-edit-fields>.csf-field>.csf-fieldset{width:calc(100% - 220px)}.csf-taxonomy-edit-fields>.csf-field>.csf-fieldset>.csf-help{top:-5px;right:-5px}.csf-taxonomy-edit-fields>.csf-field-submessage{margin:20px 0}.csf-taxonomy-edit-fields>.csf-field-heading,.csf-taxonomy-edit-fields>.csf-field-subheading{margin:20px 0;border:1px solid #ddd}.csf-nav-menu-options{clear:both;float:left;width:100%}.csf-nav-menu-options>.csf-fields{margin-left:-10px;margin-top:10px;margin-bottom:10px;border-top:1px solid #eee;border-bottom:1px solid #eee}.csf-nav-menu-options>.csf-fields>.csf-field{padding:12px 14px 12px 12px}.csf-nav-menu-options>.csf-fields>.csf-field .csf-title{float:none;width:100%;margin-bottom:5px}.csf-nav-menu-options>.csf-fields>.csf-field .csf-fieldset{float:none;width:100%}.csf-nav-menu-options .csf-field-text input{width:100%}.csf-nav-menu-options .csf-field-notice .csf-notice{padding:15px}.csf-nav-menu-title{padding:12px 14px 12px 12px;background-color:#f5f5f5;border-top:1px solid #eee;border-bottom:1px solid #eee}.csf-nav-menu-title:first-child{border-top:0}.csf-nav-menu-title h4{margin:0;padding:0;color:#23282d}.csf-nav-menu-icon{margin-right:5px}.csf-profile-options>h2>.fa{padding-right:7px}.csf-profile-options>.csf-field{max-width:750px;padding:15px 0;border-top:none!important}.csf-profile-options>.csf-field>.csf-title{width:200px}.csf-profile-options>.csf-field>.csf-title h4{font-size:14px;font-weight:600;line-height:1.3;display:inline-block;vertical-align:middle}.csf-profile-options>.csf-field>.csf-fieldset{width:calc(100% - 220px)}.csf-profile-options>.csf-field>.csf-fieldset>.csf-help{top:-15px;right:-5px}.csf-profile-options>.csf-field-heading{font-size:1.1em}.csf-profile-options>.csf-field-subheading{font-size:12px}.csf-profile-options>.csf-field-heading,.csf-profile-options>.csf-field-subheading{margin:10px 0;padding:15px!important;border:1px solid #ddd}.csf-profile-options>.csf-field-submessage{margin:20px 0}.csf-profile-options>.csf-field-submessage .csf-submessage{padding:10px;border-left-width:1px;border-left-style:solid;border-right-width:1px;border-right-style:solid}.csf-profile-options>.csf-field-notice{background-color:transparent}.csf-modal{position:fixed;z-index:100101;top:0;left:0;width:100%;height:100%}.csf-modal.hidden{display:none}.csf-modal-icon{z-index:100102}.csf-modal-table{display:table;width:100%;height:100%}.csf-modal-table-cell{display:table-cell;vertical-align:middle;margin:100px 0}.csf-modal-inner{position:relative;z-index:10;width:760px;height:750px;margin:0 auto;background-color:#fff}.csf-modal-content{position:relative;overflow:hidden;overflow-y:auto;height:595px}.csf-modal-content .csf-shortcode-button{display:none}.csf-modal-content .csf-field{padding:15px 30px 15px 15px}.csf-modal-content a:active,.csf-modal-content a:focus{outline:0;box-shadow:none}.csf-modal-content h4{font-size:13px}.csf-modal-content h4 small{font-style:italic;font-weight:400;color:#aaa}.csf-modal-title{position:relative;background-color:#fcfcfc;border-bottom:1px solid #ddd;height:36px;font-size:16px;font-weight:600;line-height:36px;margin:0;padding:0 36px 0 16px}.csf-modal-header{width:100%;padding:14px 0;background-color:#f5f5f5;border-bottom:1px solid #ddd}.csf-modal-header select{display:block;width:250px;margin:0 auto;font-size:13px;line-height:1;height:30px;min-height:30px;background-color:#fff}.csf-modal-close{color:#666;padding:0;position:absolute;top:0;right:0;width:36px;height:36px;text-align:center;background:0 0;border:none;cursor:pointer}.csf-modal-close:before{font:normal 20px/36px dashicons;content:"\f158";vertical-align:top;width:36px;height:36px}.csf-modal-close:hover{opacity:.5}.csf-modal-insert-wrapper{text-align:center;width:100%;padding:15px 0;background-color:#f5f5f5;border-top:1px solid #ddd}.csf-modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#000;opacity:.5}.csf--repeatable{padding:15px 15px 0 15px}.csf--repeat-button-block{text-align:center;padding-bottom:15px}.csf--repeat-shortcode{position:relative;margin-bottom:15px;border:1px dashed #ddd}.csf--repeat-shortcode:first-child .csf-repeat-remove{display:none}.csf--repeat-shortcode .csf-repeat-remove{position:absolute;right:10px;top:10px;z-index:10;cursor:pointer;display:inline-block;font-size:11px;width:18px;height:18px;line-height:18px;text-align:center;border-radius:2px;color:#fff;background-color:#e14d43;opacity:.5}.csf--repeat-shortcode .csf-repeat-remove:hover{opacity:.5}.csf-shortcode-single .csf-modal-inner{height:750px}.csf-shortcode-single .csf-modal-content{height:652px}.elementor-editor-active .csf-shortcode-button{margin-left:5px}.elementor-editor-active .csf-modal .hidden{display:none!important}.csf-shortcode-block{text-align:center;padding:14px;font-size:13px;background-color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif}.csf-shortcode-block .components-button{margin-bottom:10px}.csf-modal-icon .csf-icon-title{padding:15px 0;margin:4px;font-size:14px;font-weight:700;text-align:center;border:1px solid #eee;background-color:#f7f7f7}.csf-modal-icon .csf-modal-header{text-align:center}.csf-modal-icon .csf-icon-search{width:50%;height:40px;line-height:40px}.csf-modal-icon i{cursor:pointer;display:inline-block;margin:4px;width:35px;height:35px;line-height:35px;font-size:16px;color:#555;text-align:center;border:1px solid #ccc;background-color:#f7f7f7;border-radius:2px;box-shadow:1px 1px 0 rgba(0,0,0,.05)}.csf-modal-icon i:hover{color:#fff;border-color:#222;background-color:#222}.csf-modal-icon .csf-modal-content{padding:10px;height:618px}.csf-modal-icon .csf-error-text{padding:10px}.csf-modal-loading{display:none;position:absolute;left:15px;top:15px}.csf-loading{position:relative;width:20px;height:20px;background:#ccc;border-radius:20px;box-shadow:0 2px 5px rgba(0,0,0,.07)}.csf-loading:after{position:absolute;top:50%;left:50%;width:4px;height:4px;content:"";margin-top:-2px;margin-left:-2px;background-color:#fff;animation-duration:.5s;animation-iteration-count:infinite;animation-timing-function:linear;animation-name:csfLoader;border-radius:4px}@keyframes csfLoader{0%{transform:rotate(0) translateX(-6px) rotate(0)}100%{transform:rotate(360deg) translateX(-6px) rotate(-360deg)}}.csf-subtitle-text{margin-top:6px;font-weight:400;color:#999}.csf-desc-text{clear:both;float:left;width:100%;margin-top:6px;font-weight:400;color:#999}.csf-error-text{margin-top:6px;color:#d02c21}.csf-before-text{margin-bottom:6px}.csf-after-text{margin-top:6px}.csf-metabox-hide{display:none!important}.csf-metabox-show{display:block!important}.csf-depend-hidden.csf-depend-on{display:none}.csf-depend-visible.csf-depend-on{display:block;opacity:.75;filter:grayscale(1);user-select:none;border-top:1px solid #eee}.csf-depend-visible.csf-depend-on .clear:before{content:"";left:0;top:0;right:0;bottom:0;position:absolute;background-color:#eee;opacity:.25;z-index:10}.csf-warning-primary{color:#fff!important;border-color:#dc3545!important;background:#dc3545!important}.csf-warning-primary:focus,.csf-warning-primary:hover{border-color:#bd2130!important;background:#bd2130!important}.csf-warning-primary:focus{box-shadow:0 0 0 1px #fff,0 0 0 3px #bd2130!important}.csf-warning-primary:active{border-color:#bd2130!important;background:#bd2130!important}.csf-form-result{display:none;float:left;padding:0 8px;margin-right:4px;font-size:11px;line-height:30px;user-select:none;border-radius:2px}.csf-form-show{display:block}.csf-form-success{color:#fff;background-color:#46b450}.csf-form-warning{color:#8a6d3b;background-color:#faebcc}.csf-label-error{position:relative;top:-2px;display:inline-block;font-size:10px;line-height:10px;height:10px;width:10px;padding:1px;font-style:normal;text-align:center;color:#fff;vertical-align:middle;background-color:#e10000;border-radius:2px}.csf-no-option{padding:30px}.csf-input-number{-moz-appearance:textfield}.csf-input-number::-webkit-inner-spin-button,.csf-input-number::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.csf-fa5-shims .csf .fab,.csf-fa5-shims .csf .far,.csf-fa5-shims .csf .fas{font-family:FontAwesome;font-style:normal}.csf-welcome-wrap{position:relative;margin:25px 40px 0 20px;font-size:15px;max-width:1200px}.csf-welcome-wrap p{font-size:14px;line-height:1.5}.csf-welcome-wrap h1{margin:.2em 200px 0 0;padding:0;color:#32373c;line-height:1.2em;font-size:2.8em;font-weight:400}.csf-welcome-wrap .csf-logo{position:absolute;overflow:hidden;top:0;right:0;height:160px;width:140px;background-image:linear-gradient(45deg,#2d67cb,#ad19f3);box-shadow:0 1px 4px rgba(0,0,0,.25),inset 0 0 0 4px rgba(0,0,0,.25)}.csf-welcome-wrap .csf-logo .csf--effects i{position:absolute;width:200px;height:100px;background-color:rgba(0,0,0,.15);transform:rotate(-45deg)}.csf-welcome-wrap .csf-logo .csf--effects i:nth-child(1){bottom:-20px;right:-70px}.csf-welcome-wrap .csf-logo .csf--effects i:nth-child(2){bottom:-35px;right:-80px}.csf-welcome-wrap .csf-logo .csf--effects i:nth-child(3){bottom:-50px;right:-90px}.csf-welcome-wrap .csf-logo .csf--effects i:nth-child(4){bottom:-65px;right:-100px}.csf-welcome-wrap .csf-logo .csf--wp-logos{position:relative;padding-top:25px;text-align:center}.csf-welcome-wrap .csf-logo .csf--wp-logo{position:absolute;left:20px;width:20px;height:20px;background-repeat:no-repeat;background-position:center center;background-image:url(../images/wp-logo.svg)}.csf-welcome-wrap .csf-logo .csf--wp-plugin-logo{display:inline-block;width:50px;height:50px;border:3px solid #fff;background-size:40px;background-repeat:no-repeat;background-position:center center;background-image:url(../images/wp-plugin-logo.svg);border-radius:100%;vertical-align:middle}.csf-welcome-wrap .csf-logo .csf--text{position:absolute;left:0;right:0;top:90px;color:#fff;font-size:13px;line-height:1.2em;font-weight:600;text-align:center;text-transform:uppercase;text-shadow:1px 1px 0 rgba(0,0,0,.25)}.csf-welcome-wrap .csf-logo .csf--version{top:auto;left:auto;right:8px;bottom:4px;font-size:11px;text-transform:lowercase}.csf-welcome-wrap .csf-about-text{font-weight:400;line-height:1.6em;font-size:19px;margin:1em 200px 1em 0;color:#555d66}.csf-welcome-wrap .csf-demo-button{margin:1em 200px 2em 0}.csf-welcome-wrap .nav-tab-wrapper{margin-bottom:20px}.csf-welcome-wrap ul{list-style-type:disc;padding-left:15px}.csf-welcome-wrap .csf--col{float:left;padding-right:20px;box-sizing:border-box}.csf-welcome-wrap .csf--col-2{width:50%}.csf-welcome-wrap .csf--col-3{width:33.333%}.csf-welcome-wrap .csf--col-4{width:25%}.csf-welcome-wrap .csf--col-5{width:20%}.csf-welcome-wrap .csf--col-last{padding-right:0}.csf-welcome-wrap .csf--col-upgrade{padding:10px 0;text-align:center;border-top:1px solid #e5e5e5}.csf--table-compare tfoot td,.csf--table-compare thead td{text-align:center}.csf--table-compare td{font-size:14px;text-align:center;vertical-align:middle;padding:10px}.csf--table-compare td:first-child{text-align:left}.csf--table-compare tfoot td{padding:15px 0}.csf--table-compare .fa{font-size:18px}.csf--table-compare .fa-check-circle{color:#46b450}.csf--table-compare .fa-times-circle{color:#dc3232}.csf-welcome-cols{clear:both;margin:20px 0;background-color:#fff;padding:0 0;border-radius:2px;border:1px solid #e5e5e5}.csf-welcome-cols .csf--col{width:33.333%;float:left;padding:20px;text-align:center;box-sizing:border-box;min-height:200px;border-right:1px solid #e5e5e5}.csf-welcome-cols .csf--block,.csf-welcome-cols .csf--left{float:left;width:20%;padding:0 30px;text-align:center;box-sizing:border-box}.csf-welcome-cols .csf--block{width:80%}.csf-welcome-cols .csf--col-first{border-bottom:1px solid #e5e5e5}.csf-welcome-cols .csf--last{border-right:none}.csf-welcome-cols .csf--space{height:20px}.csf-welcome-cols .csf--icon{display:inline-block;font-size:20px;width:30px;height:30px;line-height:30px;text-align:center;margin-bottom:10px;color:#fff;background-color:#555;border-radius:30px}.csf-welcome-cols .csf--active{background-color:#5cb85c}.csf-welcome-cols .csf--deactive{background-color:#e14d43}.csf-welcome-cols .csf--title{font-weight:700;display:block}.csf-welcome-cols p:last-child{margin-bottom:0}.csf-features-cols .csf--key-features{width:30%}.csf-features-cols .csf--available-fields{width:70%}.csf-code-block{margin:20px 0;padding:5px 20px;background-color:#fff;border-radius:2px;box-shadow:0 1px 1px rgba(0,0,0,.15)}.csf-code-block pre{font-size:13px;color:#0073aa}.csf-code-block pre span{color:#999}.csf--table-fields td{font-size:14px}.csf--upgrade a{color:#5cb85c;font-weight:700}.csf--upgrade a:focus,.csf--upgrade a:hover{color:#4aa14a;outline:0;box-shadow:none}@media only screen and (max-width:782px){.csf-welcome-cols .csf--col{width:100%;min-height:auto;border-right:none;border-bottom:1px solid #e5e5e5}.csf-features-cols .csf--key-features{width:100%}.csf-features-cols .csf--available-fields{width:100%}}@media only screen and (max-width:1200px){.csf-metabox .csf-field .csf-title{float:none;width:100%;margin-bottom:10px}.csf-metabox .csf-field .csf-fieldset{float:none;width:100%}}@media only screen and (max-width:782px){.csf-header-inner{text-align:center}.csf-header-inner h1{width:100%;margin-bottom:10px}.csf-form-result{float:none;margin-right:0;margin-bottom:10px}.csf-header-left,.csf-header-right,.csf-search{width:100%}.csf-search{text-align:center;margin-bottom:15px}.csf-footer{text-align:center}.csf-buttons{float:none}.csf-copyright{float:none;margin-top:10px}.csf-expand-all,.csf-nav,.csf-nav-background,.csf-reset-section{display:none!important}.csf-nav-normal+.csf-content{margin-left:0}.csf-section,.csf-section-title{display:block!important}.csf-field .csf-title{float:none;width:100%;margin-bottom:10px}.csf-field .csf-fieldset{float:none;width:100%}.csf-field-color .button.wp-picker-clear{padding:0 8px;line-height:2.14285714;min-height:32px}.csf-profile-options>.csf-field>.csf-title,.csf-taxonomy-edit-fields>.csf-field>.csf-title{float:none;width:100%;margin-bottom:10px}.csf-profile-options>.csf-field>.csf-fieldset,.csf-taxonomy-edit-fields>.csf-field>.csf-fieldset{float:none;width:100%}.csf-nav-menu-options>.csf-fields{margin-left:-10px;margin-right:-10px}.csf-nav-menu-options>.csf-fields>.csf-field{padding:10px}}@media only screen and (max-width:782px){.csf-modal .csf-modal-inner{width:90%}}@media only screen and (max-height:750px){.csf-modal .csf-modal-inner{height:auto}.csf-modal .csf-modal-content{height:calc(100vh - 200px)}}.chosen-container{position:relative;display:inline-block;vertical-align:middle;font-size:13px;user-select:none}.chosen-container *{box-sizing:border-box}.chosen-container .chosen-drop{position:absolute;top:100%;z-index:1010;width:100%;border:1px solid #aaa;border-top:0;background:#fff;box-shadow:0 4px 5px rgba(0,0,0,.15);clip:rect(0,0,0,0);clip-path:inset(100% 100%)}.chosen-container.chosen-with-drop .chosen-drop{clip:auto;clip-path:none}.chosen-container a{cursor:pointer}.chosen-container .chosen-single .group-name,.chosen-container .search-choice .group-name{margin-right:4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:400;color:#999}.chosen-container .chosen-single .group-name:after,.chosen-container .search-choice .group-name:after{content:":";padding-left:2px;vertical-align:top}.chosen-container-single .chosen-single{position:relative;display:block;overflow:hidden;padding:0 0 0 8px;height:25px;border:1px solid #aaa;border-radius:5px;background-color:#fff;background:linear-gradient(#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background-clip:padding-box;box-shadow:0 0 3px #fff inset,0 1px 1px rgba(0,0,0,.1);color:#444;text-decoration:none;white-space:nowrap;line-height:24px}.chosen-container-single .chosen-default{color:#999}.chosen-container-single .chosen-single span{display:block;overflow:hidden;margin-right:26px;text-overflow:ellipsis;white-space:nowrap}.chosen-container-single .chosen-single-with-deselect span{margin-right:38px}.chosen-container-single .chosen-single abbr{position:absolute;top:6px;right:26px;display:block;width:12px;height:12px;font-size:1px}.chosen-container-single .chosen-single div{position:absolute;top:0;right:0;display:block;width:18px;height:100%}.chosen-container-single .chosen-single div b{display:block;width:100%;height:100%}.chosen-container-single .chosen-search{position:relative;z-index:1010;margin:0;padding:3px 4px;white-space:nowrap}.chosen-container-single .chosen-search input[type=text]{margin:1px 0;padding:4px 20px 4px 5px;width:100%;height:auto;outline:0;border:1px solid #aaa;font-size:1em;font-family:sans-serif;line-height:normal;border-radius:0}.chosen-container-single .chosen-drop{margin-top:-1px;border-radius:0 0 4px 4px;background-clip:padding-box}.chosen-container-single.chosen-container-single-nosearch .chosen-search{position:absolute;clip:rect(0,0,0,0);clip-path:inset(100% 100%)}.chosen-container .chosen-results{color:#444;position:relative;overflow-x:hidden;overflow-y:auto;margin:0 4px 4px 0;padding:0 0 0 4px;max-height:240px;-webkit-overflow-scrolling:touch}.chosen-container .chosen-results li{display:none;margin:0;padding:5px 6px;list-style:none;line-height:15px;word-wrap:break-word;-webkit-touch-callout:none}.chosen-container .chosen-results li.active-result{display:list-item;cursor:pointer}.chosen-container .chosen-results li.disabled-result{display:list-item;color:#ccc;cursor:default}.chosen-container .chosen-results li.highlighted{background-color:#3875d7;background-image:linear-gradient(#3875d7 20%,#2a62bc 90%);color:#fff}.chosen-container .chosen-results li.no-results{color:#777;display:list-item;background:#f4f4f4}.chosen-container .chosen-results li.group-result{display:list-item;font-weight:700;cursor:default}.chosen-container .chosen-results li.group-option{padding-left:15px}.chosen-container .chosen-results li em{font-style:normal;text-decoration:underline}.chosen-container-multi .chosen-choices{position:relative;overflow:hidden;margin:0;padding:0 5px;width:100%;height:auto;border:1px solid #aaa;background-color:#fff;background-image:linear-gradient(#eee 1%,#fff 15%);cursor:text}.chosen-container-multi .chosen-choices li{float:left;list-style:none}.chosen-container-multi .chosen-choices li.search-field{margin:0;padding:0;white-space:nowrap}.chosen-container-multi .chosen-choices li.search-field input[type=text]{margin:1px 0;padding:0;outline:0;border:0!important;background:0 0!important;box-shadow:none;color:#999;font-size:100%;font-family:sans-serif;line-height:normal;border-radius:0;width:25px;height:25px;min-height:25px}.chosen-container-multi .chosen-choices li.search-choice{position:relative;margin:3px 5px 3px 0;padding:3px 20px 3px 6px;border:1px solid #aaa;max-width:100%;border-radius:3px;background-color:#eee;background-image:linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-size:100% 19px;background-repeat:repeat-x;background-clip:padding-box;box-shadow:0 0 2px #fff inset,0 1px 0 rgba(0,0,0,.05);color:#333;line-height:13px;cursor:default}.chosen-container-multi .chosen-choices li.search-choice span{word-wrap:break-word;white-space:nowrap}.chosen-container-multi .chosen-choices li.search-choice .search-choice-close{position:absolute;top:0;right:0;display:block;width:12px;height:12px;font-size:1px}.chosen-container-multi .chosen-choices li.search-choice-disabled{padding-right:5px;border:1px solid #ccc;background-color:#e4e4e4;background-image:linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);color:#666}.chosen-container-multi .chosen-choices li.search-choice-focus{background:#d4d4d4}.chosen-container-multi .chosen-results{margin:0;padding:0}.chosen-container-multi .chosen-drop .result-selected{display:list-item;color:#ccc;cursor:default}.chosen-container-active .chosen-single{border:1px solid #5897fb;box-shadow:0 0 5px rgba(0,0,0,.3)}.chosen-container-active.chosen-with-drop .chosen-single{border:1px solid #aaa;border-bottom-right-radius:0;border-bottom-left-radius:0;background-image:linear-gradient(#eee 20%,#fff 80%);box-shadow:0 1px 0 #fff inset}.chosen-container-active.chosen-with-drop .chosen-single div{border-left:none;background:0 0}.chosen-container-active .chosen-choices{border:1px solid #5897fb;box-shadow:0 0 5px rgba(0,0,0,.3)}.chosen-container-active .chosen-choices li.search-field input[type=text]{color:#222!important}.chosen-disabled{opacity:.5!important;cursor:default}.chosen-disabled .chosen-single{cursor:default}.chosen-disabled .chosen-choices .search-choice .search-choice-close{cursor:default}.chosen-rtl{text-align:right}.chosen-rtl .chosen-single{overflow:visible;padding:0 8px 0 0}.chosen-rtl .chosen-single span{margin-right:0;margin-left:26px;direction:rtl}.chosen-rtl .chosen-single-with-deselect span{margin-left:38px}.chosen-rtl .chosen-single div{right:auto;left:3px}.chosen-rtl .chosen-single abbr{right:auto;left:26px}.chosen-rtl .chosen-choices li{float:right}.chosen-rtl .chosen-choices li.search-field input[type=text]{direction:rtl}.chosen-rtl .chosen-choices li.search-choice{margin:3px 5px 3px 0;padding:3px 5px 3px 19px}.chosen-rtl .chosen-choices li.search-choice .search-choice-close{right:auto;left:4px}.chosen-rtl.chosen-container-single .chosen-results{margin:0 0 4px 4px;padding:0 4px 0 0}.chosen-rtl .chosen-results li.group-option{padding-right:15px;padding-left:0}.chosen-rtl.chosen-container-active.chosen-with-drop .chosen-single div{border-right:none}.chosen-rtl .chosen-search input[type=text]{padding:4px 5px 4px 20px;direction:rtl}.flatpickr-calendar{background:0 0;opacity:0;display:none;text-align:center;visibility:hidden;padding:0;-webkit-animation:none;animation:none;direction:ltr;border:0;font-size:14px;line-height:24px;border-radius:5px;position:absolute;width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-touch-action:manipulation;touch-action:manipulation;background:#fff;-webkit-box-shadow:1px 0 0 #e6e6e6,-1px 0 0 #e6e6e6,0 1px 0 #e6e6e6,0 -1px 0 #e6e6e6,0 3px 13px rgba(0,0,0,.08);box-shadow:1px 0 0 #e6e6e6,-1px 0 0 #e6e6e6,0 1px 0 #e6e6e6,0 -1px 0 #e6e6e6,0 3px 13px rgba(0,0,0,.08)}.flatpickr-calendar.inline,.flatpickr-calendar.open{opacity:1;max-height:640px;visibility:visible}.flatpickr-calendar.open{display:inline-block;z-index:99999}.flatpickr-calendar.animate.open{-webkit-animation:fpFadeInDown .3s cubic-bezier(.23,1,.32,1);animation:fpFadeInDown .3s cubic-bezier(.23,1,.32,1)}.flatpickr-calendar.inline{display:block;position:relative;top:2px}.flatpickr-calendar.static{position:absolute;top:calc(100% + 2px)}.flatpickr-calendar.static.open{z-index:999;display:block}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7){-webkit-box-shadow:none!important;box-shadow:none!important}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1){-webkit-box-shadow:-2px 0 0 #e6e6e6,5px 0 0 #e6e6e6;box-shadow:-2px 0 0 #e6e6e6,5px 0 0 #e6e6e6}.flatpickr-calendar .hasTime .dayContainer,.flatpickr-calendar .hasWeeks .dayContainer{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.flatpickr-calendar .hasWeeks .dayContainer{border-left:0}.flatpickr-calendar.hasTime .flatpickr-time{height:40px;border-top:1px solid #e6e6e6}.flatpickr-calendar.noCalendar.hasTime .flatpickr-time{height:auto}.flatpickr-calendar:after,.flatpickr-calendar:before{position:absolute;display:block;pointer-events:none;border:solid transparent;content:'';height:0;width:0;left:22px}.flatpickr-calendar.arrowRight:after,.flatpickr-calendar.arrowRight:before,.flatpickr-calendar.rightMost:after,.flatpickr-calendar.rightMost:before{left:auto;right:22px}.flatpickr-calendar.arrowCenter:after,.flatpickr-calendar.arrowCenter:before{left:50%;right:50%}.flatpickr-calendar:before{border-width:5px;margin:0 -5px}.flatpickr-calendar:after{border-width:4px;margin:0 -4px}.flatpickr-calendar.arrowTop:after,.flatpickr-calendar.arrowTop:before{bottom:100%}.flatpickr-calendar.arrowTop:before{border-bottom-color:#e6e6e6}.flatpickr-calendar.arrowTop:after{border-bottom-color:#fff}.flatpickr-calendar.arrowBottom:after,.flatpickr-calendar.arrowBottom:before{top:100%}.flatpickr-calendar.arrowBottom:before{border-top-color:#e6e6e6}.flatpickr-calendar.arrowBottom:after{border-top-color:#fff}.flatpickr-calendar:focus{outline:0}.flatpickr-wrapper{position:relative;display:inline-block}.flatpickr-months{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.flatpickr-months .flatpickr-month{background:0 0;color:rgba(0,0,0,.9);fill:rgba(0,0,0,.9);height:34px;line-height:1;text-align:center;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}.flatpickr-months .flatpickr-next-month,.flatpickr-months .flatpickr-prev-month{text-decoration:none;cursor:pointer;position:absolute;top:0;height:34px;padding:10px;z-index:3;color:rgba(0,0,0,.9);fill:rgba(0,0,0,.9)}.flatpickr-months .flatpickr-next-month.flatpickr-disabled,.flatpickr-months .flatpickr-prev-month.flatpickr-disabled{display:none}.flatpickr-months .flatpickr-next-month i,.flatpickr-months .flatpickr-prev-month i{position:relative}.flatpickr-months .flatpickr-next-month.flatpickr-prev-month,.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month{left:0}.flatpickr-months .flatpickr-next-month.flatpickr-next-month,.flatpickr-months .flatpickr-prev-month.flatpickr-next-month{right:0}.flatpickr-months .flatpickr-next-month:hover,.flatpickr-months .flatpickr-prev-month:hover{color:#959ea9}.flatpickr-months .flatpickr-next-month:hover svg,.flatpickr-months .flatpickr-prev-month:hover svg{fill:#f64747}.flatpickr-months .flatpickr-next-month svg,.flatpickr-months .flatpickr-prev-month svg{width:14px;height:14px}.flatpickr-months .flatpickr-next-month svg path,.flatpickr-months .flatpickr-prev-month svg path{-webkit-transition:fill .1s;transition:fill .1s;fill:inherit}.numInputWrapper{position:relative;height:auto}.numInputWrapper input,.numInputWrapper span{display:inline-block}.numInputWrapper input{width:100%}.numInputWrapper input::-ms-clear{display:none}.numInputWrapper input::-webkit-inner-spin-button,.numInputWrapper input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}.numInputWrapper span{position:absolute;right:0;width:14px;padding:0 4px 0 2px;height:50%;line-height:50%;opacity:0;cursor:pointer;border:1px solid rgba(57,57,57,.15);-webkit-box-sizing:border-box;box-sizing:border-box}.numInputWrapper span:hover{background:rgba(0,0,0,.1)}.numInputWrapper span:active{background:rgba(0,0,0,.2)}.numInputWrapper span:after{display:block;content:"";position:absolute}.numInputWrapper span.arrowUp{top:0;border-bottom:0}.numInputWrapper span.arrowUp:after{border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:4px solid rgba(57,57,57,.6);top:26%}.numInputWrapper span.arrowDown{top:50%}.numInputWrapper span.arrowDown:after{border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(57,57,57,.6);top:40%}.numInputWrapper span svg{width:inherit;height:auto}.numInputWrapper span svg path{fill:rgba(0,0,0,.5)}.numInputWrapper:hover{background:rgba(0,0,0,.05)}.numInputWrapper:hover span{opacity:1}.flatpickr-current-month{font-size:135%;line-height:inherit;font-weight:300;color:inherit;position:absolute;width:75%;left:12.5%;padding:7.48px 0 0 0;line-height:1;height:34px;display:inline-block;text-align:center;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.flatpickr-current-month span.cur-month{font-family:inherit;font-weight:700;color:inherit;display:inline-block;margin-left:.5ch;padding:0}.flatpickr-current-month span.cur-month:hover{background:rgba(0,0,0,.05)}.flatpickr-current-month .numInputWrapper{width:6ch;display:inline-block}.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:rgba(0,0,0,.9)}.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:rgba(0,0,0,.9)}.flatpickr-current-month input.cur-year{background:0 0;-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;cursor:text;padding:0 0 0 .5ch;margin:0;display:inline-block;font-size:inherit;font-family:inherit;font-weight:300;line-height:inherit;height:auto;border:0;border-radius:0;vertical-align:initial;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-current-month input.cur-year:focus{outline:0}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover{font-size:100%;color:rgba(0,0,0,.5);background:0 0;pointer-events:none}.flatpickr-current-month .flatpickr-monthDropdown-months{appearance:menulist;background:0 0;border:none;border-radius:0;box-sizing:border-box;color:inherit;cursor:pointer;font-size:inherit;font-family:inherit;font-weight:300;height:auto;line-height:inherit;margin:-1px 0 0 0;outline:0;padding:0 0 0 .5ch;position:relative;vertical-align:initial;-webkit-box-sizing:border-box;-webkit-appearance:menulist;-moz-appearance:menulist;width:auto}.flatpickr-current-month .flatpickr-monthDropdown-months:active,.flatpickr-current-month .flatpickr-monthDropdown-months:focus{outline:0}.flatpickr-current-month .flatpickr-monthDropdown-months:hover{background:rgba(0,0,0,.05)}.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{background-color:transparent;outline:0;padding:0}.flatpickr-weekdays{background:0 0;text-align:center;overflow:hidden;width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:28px}.flatpickr-weekdays .flatpickr-weekdaycontainer{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}span.flatpickr-weekday{cursor:default;font-size:90%;background:0 0;color:rgba(0,0,0,.54);line-height:1;margin:0;text-align:center;display:block;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;font-weight:bolder}.dayContainer,.flatpickr-weeks{padding:1px 0 0 0}.flatpickr-days{position:relative;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;width:307.875px}.flatpickr-days:focus{outline:0}.dayContainer{padding:0;outline:0;text-align:left;width:307.875px;min-width:307.875px;max-width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;display:inline-block;display:-ms-flexbox;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-wrap:wrap;-ms-flex-pack:justify;-webkit-justify-content:space-around;justify-content:space-around;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}.dayContainer+.dayContainer{-webkit-box-shadow:-1px 0 0 #e6e6e6;box-shadow:-1px 0 0 #e6e6e6}.flatpickr-day{background:0 0;border:1px solid transparent;border-radius:150px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#393939;cursor:pointer;font-weight:400;width:14.2857143%;-webkit-flex-basis:14.2857143%;-ms-flex-preferred-size:14.2857143%;flex-basis:14.2857143%;max-width:39px;height:39px;line-height:39px;margin:0;display:inline-block;position:relative;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;text-align:center}.flatpickr-day.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day.nextMonthDay:focus,.flatpickr-day.nextMonthDay:hover,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.today.inRange,.flatpickr-day:focus,.flatpickr-day:hover{cursor:pointer;outline:0;background:#e6e6e6;border-color:#e6e6e6}.flatpickr-day.today{border-color:#959ea9}.flatpickr-day.today:focus,.flatpickr-day.today:hover{border-color:#959ea9;background:#959ea9;color:#fff}.flatpickr-day.endRange,.flatpickr-day.endRange.inRange,.flatpickr-day.endRange.nextMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.endRange:focus,.flatpickr-day.endRange:hover,.flatpickr-day.selected,.flatpickr-day.selected.inRange,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.selected:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange,.flatpickr-day.startRange.inRange,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.startRange:focus,.flatpickr-day.startRange:hover{background:#569ff7;-webkit-box-shadow:none;box-shadow:none;color:#fff;border-color:#569ff7}.flatpickr-day.endRange.startRange,.flatpickr-day.selected.startRange,.flatpickr-day.startRange.startRange{border-radius:50px 0 0 50px}.flatpickr-day.endRange.endRange,.flatpickr-day.selected.endRange,.flatpickr-day.startRange.endRange{border-radius:0 50px 50px 0}.flatpickr-day.endRange.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.selected.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.startRange.startRange+.endRange:not(:nth-child(7n+1)){-webkit-box-shadow:-10px 0 0 #569ff7;box-shadow:-10px 0 0 #569ff7}.flatpickr-day.endRange.startRange.endRange,.flatpickr-day.selected.startRange.endRange,.flatpickr-day.startRange.startRange.endRange{border-radius:50px}.flatpickr-day.inRange{border-radius:0;-webkit-box-shadow:-5px 0 0 #e6e6e6,5px 0 0 #e6e6e6;box-shadow:-5px 0 0 #e6e6e6,5px 0 0 #e6e6e6}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.nextMonthDay,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.prevMonthDay{color:rgba(57,57,57,.3);background:0 0;border-color:transparent;cursor:default}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{cursor:not-allowed;color:rgba(57,57,57,.1)}.flatpickr-day.week.selected{border-radius:0;-webkit-box-shadow:-5px 0 0 #569ff7,5px 0 0 #569ff7;box-shadow:-5px 0 0 #569ff7,5px 0 0 #569ff7}.flatpickr-day.hidden{visibility:hidden}.rangeMode .flatpickr-day{margin-top:1px}.flatpickr-weekwrapper{float:left}.flatpickr-weekwrapper .flatpickr-weeks{padding:0 12px;-webkit-box-shadow:1px 0 0 #e6e6e6;box-shadow:1px 0 0 #e6e6e6}.flatpickr-weekwrapper .flatpickr-weekday{float:none;width:100%;line-height:28px}.flatpickr-weekwrapper span.flatpickr-day,.flatpickr-weekwrapper span.flatpickr-day:hover{display:block;width:100%;max-width:none;color:rgba(57,57,57,.3);background:0 0;cursor:default;border:none}.flatpickr-innerContainer{display:block;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden}.flatpickr-rContainer{display:inline-block;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}.flatpickr-time{text-align:center;outline:0;display:block;height:0;line-height:40px;max-height:40px;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.flatpickr-time:after{content:"";display:table;clear:both}.flatpickr-time .numInputWrapper{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;width:40%;height:40px;float:left}.flatpickr-time .numInputWrapper span.arrowUp:after{border-bottom-color:#393939}.flatpickr-time .numInputWrapper span.arrowDown:after{border-top-color:#393939}.flatpickr-time.hasSeconds .numInputWrapper{width:26%}.flatpickr-time.time24hr .numInputWrapper{width:49%}.flatpickr-time input{background:0 0;-webkit-box-shadow:none;box-shadow:none;border:0;border-radius:0;text-align:center;margin:0;padding:0;height:inherit;line-height:inherit;color:#393939;font-size:14px;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-time input.flatpickr-hour{font-weight:700}.flatpickr-time input.flatpickr-minute,.flatpickr-time input.flatpickr-second{font-weight:400}.flatpickr-time input:focus{outline:0;border:0}.flatpickr-time .flatpickr-am-pm,.flatpickr-time .flatpickr-time-separator{height:inherit;float:left;line-height:inherit;color:#393939;font-weight:700;width:2%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}.flatpickr-time .flatpickr-am-pm{outline:0;width:18%;cursor:pointer;text-align:center;font-weight:400}.flatpickr-time .flatpickr-am-pm:focus,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time input:hover{background:#eee}.flatpickr-input[readonly]{cursor:pointer}@-webkit-keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}@keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}
|
vendor/codestar-framework/assets/images/wp-logo.svg
CHANGED
@@ -1 +1 @@
|
|
1 |
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><rect x="0" fill="none" width="20" height="20"/><g><g fill="#fff"><path d="M20 10c0-5.52-4.48-10-10-10S0 4.48 0 10s4.48 10 10 10 10-4.48 10-10zM10 1.01c4.97 0 8.99 4.02 8.99 8.99s-4.02 8.99-8.99 8.99S1.01 14.97 1.01 10 5.03 1.01 10 1.01zM8.01 14.82L4.96 6.61c.49-.03 1.05-.08 1.05-.08.43-.05.38-1.01-.06-.99 0 0-1.29.1-2.13.1-.15 0-.33 0-.52-.01 1.44-2.17 3.9-3.6 6.7-3.6 2.09 0 3.99.79 5.41 2.09-.6-.08-1.45.35-1.45 1.42 0 .66.38 1.22.79 1.88.31.54.5 1.22.5 2.21 0 1.34-1.27 4.48-1.27 4.48l-2.71-7.5c.48-.03.75-.16.75-.16.43-.05.38-1.1-.05-1.08 0 0-1.3.11-2.14.11-.78 0-2.11-.11-2.11-.11-.43-.02-.48 1.06-.05 1.08l.84.08 1.12 3.04zm6.02 2.15L16.64 10s.67-1.69.39-3.81c.63 1.14.94 2.42.94 3.81 0 2.96-1.56 5.58-3.94 6.97zM2.68 6.77L6.5 17.25c-2.67-1.3-4.47-4.08-4.47-7.25 0-1.16.2-2.23.65-3.23zm7.45 4.53l2.29 6.25c-.75.27-1.57.42-2.42.42-.72 0-1.41-.11-2.06-.3z"/></g></g></svg>
|
1 |
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><rect x="0" fill="none" width="20" height="20"/><g><g fill="#fff"><path d="M20 10c0-5.52-4.48-10-10-10S0 4.48 0 10s4.48 10 10 10 10-4.48 10-10zM10 1.01c4.97 0 8.99 4.02 8.99 8.99s-4.02 8.99-8.99 8.99S1.01 14.97 1.01 10 5.03 1.01 10 1.01zM8.01 14.82L4.96 6.61c.49-.03 1.05-.08 1.05-.08.43-.05.38-1.01-.06-.99 0 0-1.29.1-2.13.1-.15 0-.33 0-.52-.01 1.44-2.17 3.9-3.6 6.7-3.6 2.09 0 3.99.79 5.41 2.09-.6-.08-1.45.35-1.45 1.42 0 .66.38 1.22.79 1.88.31.54.5 1.22.5 2.21 0 1.34-1.27 4.48-1.27 4.48l-2.71-7.5c.48-.03.75-.16.75-.16.43-.05.38-1.1-.05-1.08 0 0-1.3.11-2.14.11-.78 0-2.11-.11-2.11-.11-.43-.02-.48 1.06-.05 1.08l.84.08 1.12 3.04zm6.02 2.15L16.64 10s.67-1.69.39-3.81c.63 1.14.94 2.42.94 3.81 0 2.96-1.56 5.58-3.94 6.97zM2.68 6.77L6.5 17.25c-2.67-1.3-4.47-4.08-4.47-7.25 0-1.16.2-2.23.65-3.23zm7.45 4.53l2.29 6.25c-.75.27-1.57.42-2.42.42-.72 0-1.41-.11-2.06-.3z"/></g></g></svg>
|
vendor/codestar-framework/assets/images/wp-plugin-logo.svg
CHANGED
@@ -1 +1 @@
|
|
1 |
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><rect x="0" fill="none" width="20" height="20"/><g><g fill="#fff"><path d="M13.11 4.36L9.87 7.6 8 5.73l3.24-3.24c.35-.34 1.05-.2 1.56.32.52.51.66 1.21.31 1.55zm-8 1.77l.91-1.12 9.01 9.01-1.19.84c-.71.71-2.63 1.16-3.82 1.16H6.14L4.9 17.26c-.59.59-1.54.59-2.12 0-.59-.58-.59-1.53 0-2.12l1.24-1.24v-3.88c0-1.13.4-3.19 1.09-3.89zm7.26 3.97l3.24-3.24c.34-.35 1.04-.21 1.55.31.52.51.66 1.21.31 1.55l-3.24 3.25z"/></g></g></svg>
|
1 |
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><rect x="0" fill="none" width="20" height="20"/><g><g fill="#fff"><path d="M13.11 4.36L9.87 7.6 8 5.73l3.24-3.24c.35-.34 1.05-.2 1.56.32.52.51.66 1.21.31 1.55zm-8 1.77l.91-1.12 9.01 9.01-1.19.84c-.71.71-2.63 1.16-3.82 1.16H6.14L4.9 17.26c-.59.59-1.54.59-2.12 0-.59-.58-.59-1.53 0-2.12l1.24-1.24v-3.88c0-1.13.4-3.19 1.09-3.89zm7.26 3.97l3.24-3.24c.34-.35 1.04-.21 1.55.31.52.51.66 1.21.31 1.55l-3.24 3.25z"/></g></g></svg>
|
vendor/codestar-framework/assets/js/gutenberg.js
CHANGED
@@ -1,79 +1,79 @@
|
|
1 |
-
/**
|
2 |
-
*
|
3 |
-
* -----------------------------------------------------------
|
4 |
-
*
|
5 |
-
* Codestar Framework Gutenberg Block
|
6 |
-
* A Simple and Lightweight WordPress Option Framework
|
7 |
-
*
|
8 |
-
* -----------------------------------------------------------
|
9 |
-
*
|
10 |
-
*/
|
11 |
-
( function( blocks, blockEditor, element, components ) {
|
12 |
-
|
13 |
-
if ( !window.csf_gutenberg_blocks ) { return; }
|
14 |
-
|
15 |
-
Object.values(window.csf_gutenberg_blocks).forEach( function( block ) {
|
16 |
-
|
17 |
-
var registerBlockType = blocks.registerBlockType;
|
18 |
-
var PlainText = blockEditor.PlainText;
|
19 |
-
var createElement = element.createElement;
|
20 |
-
var RawHTML = element.RawHTML;
|
21 |
-
var Button = components.Button;
|
22 |
-
|
23 |
-
registerBlockType('csf-gutenberg-block/block-'+block.hash, {
|
24 |
-
title: block.gutenberg.title,
|
25 |
-
description: block.gutenberg.description,
|
26 |
-
icon: block.gutenberg.icon || 'screenoptions',
|
27 |
-
category: block.gutenberg.category || 'widgets',
|
28 |
-
keywords: block.gutenberg.keywords,
|
29 |
-
supports: {
|
30 |
-
html: false,
|
31 |
-
className: false,
|
32 |
-
customClassName: false,
|
33 |
-
},
|
34 |
-
attributes: {
|
35 |
-
shortcode: {
|
36 |
-
string: 'string',
|
37 |
-
source: 'text',
|
38 |
-
}
|
39 |
-
},
|
40 |
-
edit: function (props) {
|
41 |
-
return (
|
42 |
-
createElement('div', {className: 'csf-shortcode-block'},
|
43 |
-
|
44 |
-
createElement(Button, {
|
45 |
-
'data-modal-id': block.modal_id,
|
46 |
-
'data-gutenberg-id': block.hash,
|
47 |
-
className: 'is-secondary csf-shortcode-button',
|
48 |
-
onClick: function () {
|
49 |
-
window.csf_gutenberg_props = props;
|
50 |
-
},
|
51 |
-
}, block.button_title ),
|
52 |
-
|
53 |
-
createElement(PlainText, {
|
54 |
-
placeholder: block.gutenberg.placeholder,
|
55 |
-
className: 'input-control blocks-shortcode__textarea',
|
56 |
-
onChange: function (value) {
|
57 |
-
props.setAttributes({
|
58 |
-
shortcode: value
|
59 |
-
});
|
60 |
-
},
|
61 |
-
value: props.attributes.shortcode
|
62 |
-
})
|
63 |
-
|
64 |
-
)
|
65 |
-
);
|
66 |
-
},
|
67 |
-
save: function (props) {
|
68 |
-
return createElement(RawHTML, {}, props.attributes.shortcode);
|
69 |
-
}
|
70 |
-
});
|
71 |
-
|
72 |
-
});
|
73 |
-
|
74 |
-
})(
|
75 |
-
window.wp.blocks,
|
76 |
-
window.wp.blockEditor,
|
77 |
-
window.wp.element,
|
78 |
-
window.wp.components
|
79 |
-
);
|
1 |
+
/**
|
2 |
+
*
|
3 |
+
* -----------------------------------------------------------
|
4 |
+
*
|
5 |
+
* Codestar Framework Gutenberg Block
|
6 |
+
* A Simple and Lightweight WordPress Option Framework
|
7 |
+
*
|
8 |
+
* -----------------------------------------------------------
|
9 |
+
*
|
10 |
+
*/
|
11 |
+
( function( blocks, blockEditor, element, components ) {
|
12 |
+
|
13 |
+
if ( !window.csf_gutenberg_blocks ) { return; }
|
14 |
+
|
15 |
+
Object.values(window.csf_gutenberg_blocks).forEach( function( block ) {
|
16 |
+
|
17 |
+
var registerBlockType = blocks.registerBlockType;
|
18 |
+
var PlainText = blockEditor.PlainText;
|
19 |
+
var createElement = element.createElement;
|
20 |
+
var RawHTML = element.RawHTML;
|
21 |
+
var Button = components.Button;
|
22 |
+
|
23 |
+
registerBlockType('csf-gutenberg-block/block-'+block.hash, {
|
24 |
+
title: block.gutenberg.title,
|
25 |
+
description: block.gutenberg.description,
|
26 |
+
icon: block.gutenberg.icon || 'screenoptions',
|
27 |
+
category: block.gutenberg.category || 'widgets',
|
28 |
+
keywords: block.gutenberg.keywords,
|
29 |
+
supports: {
|
30 |
+
html: false,
|
31 |
+
className: false,
|
32 |
+
customClassName: false,
|
33 |
+
},
|
34 |
+
attributes: {
|
35 |
+
shortcode: {
|
36 |
+
string: 'string',
|
37 |
+
source: 'text',
|
38 |
+
}
|
39 |
+
},
|
40 |
+
edit: function (props) {
|
41 |
+
return (
|
42 |
+
createElement('div', {className: 'csf-shortcode-block'},
|
43 |
+
|
44 |
+
createElement(Button, {
|
45 |
+
'data-modal-id': block.modal_id,
|
46 |
+
'data-gutenberg-id': block.hash,
|
47 |
+
className: 'is-secondary csf-shortcode-button',
|
48 |
+
onClick: function () {
|
49 |
+
window.csf_gutenberg_props = props;
|
50 |
+
},
|
51 |
+
}, block.button_title ),
|
52 |
+
|
53 |
+
createElement(PlainText, {
|
54 |
+
placeholder: block.gutenberg.placeholder,
|
55 |
+
className: 'input-control blocks-shortcode__textarea',
|
56 |
+
onChange: function (value) {
|
57 |
+
props.setAttributes({
|
58 |
+
shortcode: value
|
59 |
+
});
|
60 |
+
},
|
61 |
+
value: props.attributes.shortcode
|
62 |
+
})
|
63 |
+
|
64 |
+
)
|
65 |
+
);
|
66 |
+
},
|
67 |
+
save: function (props) {
|
68 |
+
return createElement(RawHTML, {}, props.attributes.shortcode);
|
69 |
+
}
|
70 |
+
});
|
71 |
+
|
72 |
+
});
|
73 |
+
|
74 |
+
})(
|
75 |
+
window.wp.blocks,
|
76 |
+
window.wp.blockEditor,
|
77 |
+
window.wp.element,
|
78 |
+
window.wp.components
|
79 |
+
);
|
vendor/codestar-framework/assets/js/main.js
CHANGED
@@ -633,8 +633,7 @@
|
|
633 |
var $this = $(this),
|
634 |
$inputs = $this.find('input'),
|
635 |
settings = $this.find('.csf-date-settings').data('settings'),
|
636 |
-
wrapper = '<div class="csf-datepicker-wrapper"></div>'
|
637 |
-
$datepicker;
|
638 |
|
639 |
var defaults = {
|
640 |
showAnim: '',
|
@@ -680,6 +679,41 @@
|
|
680 |
});
|
681 |
};
|
682 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
683 |
//
|
684 |
// Field: fieldset
|
685 |
//
|
@@ -3340,6 +3374,7 @@
|
|
3340 |
$this.children('.csf-field-background').csf_field_background();
|
3341 |
$this.children('.csf-field-code_editor').csf_field_code_editor();
|
3342 |
$this.children('.csf-field-date').csf_field_date();
|
|
|
3343 |
$this.children('.csf-field-fieldset').csf_field_fieldset();
|
3344 |
$this.children('.csf-field-gallery').csf_field_gallery();
|
3345 |
$this.children('.csf-field-group').csf_field_group();
|
633 |
var $this = $(this),
|
634 |
$inputs = $this.find('input'),
|
635 |
settings = $this.find('.csf-date-settings').data('settings'),
|
636 |
+
wrapper = '<div class="csf-datepicker-wrapper"></div>';
|
|
|
637 |
|
638 |
var defaults = {
|
639 |
showAnim: '',
|
679 |
});
|
680 |
};
|
681 |
|
682 |
+
//
|
683 |
+
// Field: datetime
|
684 |
+
//
|
685 |
+
$.fn.csf_field_datetime = function() {
|
686 |
+
return this.each( function() {
|
687 |
+
|
688 |
+
var $this = $(this),
|
689 |
+
$inputs = $this.find('input'),
|
690 |
+
settings = $this.find('.csf-datetime-settings').data('settings');
|
691 |
+
|
692 |
+
settings = $.extend({}, settings, {
|
693 |
+
onReady: function( selectedDates, dateStr, instance) {
|
694 |
+
$(instance.calendarContainer).addClass('csf-flatpickr');
|
695 |
+
},
|
696 |
+
});
|
697 |
+
|
698 |
+
if ( $inputs.length === 2 ) {
|
699 |
+
settings = $.extend({}, settings, {
|
700 |
+
onChange: function( selectedDates, dateStr, instance) {
|
701 |
+
if ( $(instance.element).data('type') === 'from' ) {
|
702 |
+
$inputs.last().get(0)._flatpickr.set( 'minDate', selectedDates[0] );
|
703 |
+
} else {
|
704 |
+
$inputs.first().get(0)._flatpickr.set( 'maxDate', selectedDates[0] );
|
705 |
+
}
|
706 |
+
},
|
707 |
+
});
|
708 |
+
}
|
709 |
+
|
710 |
+
$inputs.each( function() {
|
711 |
+
$(this).flatpickr(settings);
|
712 |
+
});
|
713 |
+
|
714 |
+
});
|
715 |
+
};
|
716 |
+
|
717 |
//
|
718 |
// Field: fieldset
|
719 |
//
|
3374 |
$this.children('.csf-field-background').csf_field_background();
|
3375 |
$this.children('.csf-field-code_editor').csf_field_code_editor();
|
3376 |
$this.children('.csf-field-date').csf_field_date();
|
3377 |
+
$this.children('.csf-field-datetime').csf_field_datetime();
|
3378 |
$this.children('.csf-field-fieldset').csf_field_fieldset();
|
3379 |
$this.children('.csf-field-gallery').csf_field_gallery();
|
3380 |
$this.children('.csf-field-group').csf_field_group();
|
vendor/codestar-framework/assets/js/main.min.js
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
-
/* Codestar Framework | A Simple and Lightweight WordPress Option Framework - v2.2.
|
2 |
|
3 |
-
!function(I,_,b,y){"use strict";var T=T||{};T.funcs={},T.vars={onloaded:!1,$body:I("body"),$window:I(_),$document:I(b),$form_warning:null,is_confirm:!1,form_modified:!1,code_themes:[],is_rtl:I("body").hasClass("rtl")},T.helper={uid:function(e){return(e||"")+Math.random().toString(36).substr(2,9)},preg_quote:function(e){return(e+"").replace(/(\[|\])/g,"\\$1")},name_nested_replace:function(e,t){var n=new RegExp(T.helper.preg_quote(t+"[\\d+]"),"g");e.find(":radio").each(function(){(this.checked||this.orginal_checked)&&(this.orginal_checked=!0)}),e.each(function(e){I(this).find(":input").each(function(){this.name=this.name.replace(n,t+"["+e+"]"),this.orginal_checked&&(this.checked=!0)})})},debounce:function(i,s,a){var c;return function(){var e=this,t=arguments,n=a&&!c;clearTimeout(c),c=setTimeout(function(){c=null,a||i.apply(e,t)},s),n&&i.apply(e,t)}}},I.fn.csf_clone=function(){for(var e=I.fn.clone.apply(this,arguments),t=this.find("select").add(this.filter("select")),n=e.find("select").add(e.filter("select")),i=0;i<t.length;++i)for(var s=0;s<t[i].options.length;++s)!0===t[i].options[s].selected&&(n[i].options[s].selected=!0);return this.find(":radio").each(function(){this.orginal_checked=this.checked}),e},I.fn.csf_expand_all=function(){return this.each(function(){I(this).on("click",function(e){e.preventDefault(),I(".csf-wrapper").toggleClass("csf-show-all"),I(".csf-section").csf_reload_script(),I(this).find(".fa").toggleClass("fa-indent").toggleClass("fa-outdent")})})},I.fn.csf_nav_options=function(){return this.each(function(){var s,e=I(this),t=I(_),a=I("#wpwrap"),c=e.find("a");t.on("hashchange csf.hashchange",function(){var e=_.location.hash.replace("#tab=",""),t=e||c.first().attr("href").replace("#tab=",""),n=I('[data-tab-id="'+t+'"]');if(n.length){n.closest(".csf-tab-item").addClass("csf-tab-expanded").siblings().removeClass("csf-tab-expanded"),n.next().is("ul")&&(t=(n=n.next().find("li").first().find("a")).data("tab-id")),c.removeClass("csf-active"),n.addClass("csf-active"),s&&s.addClass("hidden");var i=I('[data-section-id="'+t+'"]');i.removeClass("hidden"),i.csf_reload_script(),I(".csf-section-id").val(i.index()+1),s=i,a.hasClass("wp-responsive-open")&&(I("html, body").animate({scrollTop:i.offset().top-50},200),a.removeClass("wp-responsive-open"))}}).trigger("csf.hashchange")})},I.fn.csf_nav_metabox=function(){return this.each(function(){var s,e=I(this),a=e.find("a"),c=e.parent().find(".csf-section");a.each(function(i){I(this).on("click",function(e){e.preventDefault();var t=I(this);a.removeClass("csf-active"),t.addClass("csf-active"),s!==y&&s.addClass("hidden");var n=c.eq(i);n.removeClass("hidden"),n.csf_reload_script(),s=n})}),a.first().trigger("click")})},I.fn.csf_page_templates=function(){this.length&&I(b).on("change",".editor-page-attributes__template select, #page_template",function(){var e=I(this).val()||"default";I(".csf-page-templates").removeClass("csf-metabox-show").addClass("csf-metabox-hide"),I(".csf-page-"+e.toLowerCase().replace(/[^a-zA-Z0-9]+/g,"-")).removeClass("csf-metabox-hide").addClass("csf-metabox-show")})},I.fn.csf_post_formats=function(){this.length&&I(b).on("change",'.editor-post-format select, #formatdiv input[name="post_format"]',function(){var e=I(this).val()||"default";e="0"===e?"default":e,I(".csf-post-formats").removeClass("csf-metabox-show").addClass("csf-metabox-hide"),I(".csf-post-format-"+e).removeClass("csf-metabox-hide").addClass("csf-metabox-show")})},I.fn.csf_search=function(){return this.each(function(){I(this).find("input").on("change keyup",function(){var n=I(this).val(),e=I(".csf-wrapper"),t=e.find(".csf-section").find("> .csf-field:not(.csf-depend-on)"),i=t.find("> .csf-title, .csf-search-tags");3<n.length?(t.addClass("csf-metabox-hide"),e.addClass("csf-search-all"),i.each(function(){var e=I(this);if(e.text().match(new RegExp(".*?"+n+".*?","i"))){var t=e.closest(".csf-field");t.removeClass("csf-metabox-hide"),t.parent().csf_reload_script()}})):(t.removeClass("csf-metabox-hide"),e.removeClass("csf-search-all"))})})},I.fn.csf_sticky=function(){return this.each(function(){var i=I(this),s=I(_),a=i.find(".csf-header-inner"),c=parseInt(a.css("padding-left"))+parseInt(a.css("padding-right")),r=0,o=!1,e=function(){o||requestAnimationFrame(function(){var e,t,n;e=i.offset().top,t=Math.max(32,e-r),n=s.innerWidth(),t<=32&&782<n?(a.css({width:i.outerWidth()-c}),i.css({height:i.outerHeight()}).addClass("csf-sticky")):(a.removeAttr("style"),i.removeAttr("style").removeClass("csf-sticky")),o=!1}),o=!0},t=function(){r=s.scrollTop(),e()};s.on("scroll resize",t),t()})},I.fn.csf_dependency=function(){return this.each(function(){var e=I(this),t=e.children("[data-controller]");if(t.length){var n=I.csf_deps.createRuleset(),i=I.csf_deps.createRuleset(),f=[],l=[];t.each(function(){var s=I(this),e=s.data("controller").split("|"),a=s.data("condition").split("|"),c=s.data("value").toString().split("|"),r=!!s.data("depend-global"),o=r?i:n;I.each(e,function(e,t){var n=c[e]||"",i=a[e]||a[0];(o=o.createRule('[data-depend-id="'+t+'"]',i,n)).include(s),r?l.push(t):f.push(t)})}),f.length&&I.csf_deps.enable(e,n,f),l.length&&I.csf_deps.enable(T.vars.$body,i,l)}})},I.fn.csf_field_accordion=function(){return this.each(function(){I(this).find(".csf-accordion-title").on("click",function(){var e=I(this),t=e.find(".csf-accordion-icon"),n=e.next();t.hasClass("fa-angle-right")?t.removeClass("fa-angle-right").addClass("fa-angle-down"):t.removeClass("fa-angle-down").addClass("fa-angle-right"),n.data("opened")||(n.csf_reload_script(),n.data("opened",!0)),n.toggleClass("csf-accordion-open")})})},I.fn.csf_field_backup=function(){return this.each(function(){if(_.wp.customize!==y){var t=this,n=I(this),i=(I("body"),n.find(".csf-import")),s=n.find(".csf-reset");t.notificationOverlay=function(){wp.customize.notifications&&wp.customize.OverlayNotification&&(wp.customize.state("saved").get()||(wp.customize.state("changesetStatus").set("trash"),wp.customize.each(function(e){e._dirty=!1}),wp.customize.state("saved").set(!0)),wp.customize.notifications.add(new wp.customize.OverlayNotification("csf_field_backup_notification",{type:"default",message:" ",loading:!0})))},s.on("click",function(e){e.preventDefault(),T.vars.is_confirm&&(t.notificationOverlay(),_.wp.ajax.post("csf-reset",{unique:s.data("unique"),nonce:s.data("nonce")}).done(function(e){_.location.reload(!0)}).fail(function(e){alert(e.error),wp.customize.notifications.remove("csf_field_backup_notification")}))}),i.on("click",function(e){e.preventDefault(),T.vars.is_confirm&&(t.notificationOverlay(),_.wp.ajax.post("csf-import",{unique:i.data("unique"),nonce:i.data("nonce"),data:n.find(".csf-import-data").val()}).done(function(e){_.location.reload(!0)}).fail(function(e){alert(e.error),wp.customize.notifications.remove("csf_field_backup_notification")}))})}})},I.fn.csf_field_background=function(){return this.each(function(){I(this).find(".csf--background-image").csf_reload_script()})},I.fn.csf_field_code_editor=function(){return this.each(function(){if("function"==typeof CodeMirror){var t=I(this),i=t.find("textarea"),e=t.find(".CodeMirror"),s=i.data("editor");e.length&&e.remove();var a=setInterval(function(){if(t.is(":visible")){var n=CodeMirror.fromTextArea(i[0],s);if("default"!==s.theme&&-1===T.vars.code_themes.indexOf(s.theme)){var e=I("<link>");I("#csf-codemirror-css").after(e),e.attr({rel:"stylesheet",id:"csf-codemirror-"+s.theme+"-css",href:s.cdnURL+"/theme/"+s.theme+".min.css",type:"text/css",media:"all"}),T.vars.code_themes.push(s.theme)}CodeMirror.modeURL=s.cdnURL+"/mode/%N/%N.min.js",CodeMirror.autoLoadMode(n,s.mode),n.on("change",function(e,t){i.val(n.getValue()).trigger("change")}),clearInterval(a)}})}})},I.fn.csf_field_date=function(){return this.each(function(){var e=I(this),i=e.find("input"),s=e.find(".csf-date-settings").data("settings"),t={showAnim:"",beforeShow:function(e,t){I(t.dpDiv).addClass("csf-datepicker-wrapper")},onClose:function(e,t){I(t.dpDiv).removeClass("csf-datepicker-wrapper")}};s=I.extend({},s,t),2===i.length&&(s=I.extend({},s,{onSelect:function(e){I(this),i.first();var t=i.first().attr("id")===I(this).attr("id")?"minDate":"maxDate",n=I.datepicker.parseDate(s.dateFormat,e);i.not(this).datepicker("option",t,n)}})),i.each(function(){var e=I(this);e.hasClass("hasDatepicker")&&e.removeAttr("id").removeClass("hasDatepicker"),e.datepicker(s)})})},I.fn.csf_field_fieldset=function(){return this.each(function(){I(this).find(".csf-fieldset-content").csf_reload_script()})},I.fn.csf_field_gallery=function(){return this.each(function(){var a,e=I(this),c=e.find(".csf-edit-gallery"),r=e.find(".csf-clear-gallery"),o=e.find("ul"),f=e.find("input");e.find("img");e.on("click",".csf-button, .csf-edit-gallery",function(e){var t=I(this),n=f.val(),i=t.hasClass("csf-edit-gallery")?"edit":"add",s="add"!==i||n.length?"gallery-edit":"gallery";e.preventDefault(),void 0!==_.wp&&_.wp.media&&_.wp.media.gallery&&("gallery"===s?(a=_.wp.media({library:{type:"image"},frame:"post",state:"gallery",multiple:!0})).open():(a=_.wp.media.gallery.edit('[gallery ids="'+n+'"]'),"add"===i&&a.setState("gallery-library")),a.on("update",function(e){o.empty();var t=e.models.map(function(e){var t=e.toJSON(),n=t.sizes&&t.sizes.thumbnail&&t.sizes.thumbnail.url?t.sizes.thumbnail.url:t.url;return o.append('<li><img src="'+n+'"></li>'),t.id});f.val(t.join(",")).trigger("change"),r.removeClass("hidden"),c.removeClass("hidden")}))}),r.on("click",function(e){e.preventDefault(),o.empty(),f.val("").trigger("change"),r.addClass("hidden"),c.addClass("hidden")})})},I.fn.csf_field_group=function(){return this.each(function(){var e=I(this),t=e.children(".csf-fieldset"),n=t.length?t:e,r=n.children(".csf-cloneable-wrapper"),i=n.children(".csf-cloneable-hidden"),o=n.children(".csf-cloneable-max"),f=n.children(".csf-cloneable-min"),l=r.data("field-id"),d=Boolean(Number(r.data("title-number"))),h=parseInt(r.data("max")),s=parseInt(r.data("min"));r.hasClass("ui-accordion")&&r.find(".ui-accordion-header-icon").remove();var p=function(e){e.find(".csf-cloneable-title-number").each(function(e){I(this).html(I(this).closest(".csf-cloneable-item").index()+1+".")})};r.accordion({header:"> .csf-cloneable-item > .csf-cloneable-title",collapsible:!0,active:!1,animate:!1,heightStyle:"content",icons:{header:"csf-cloneable-header-icon fas fa-angle-right",activeHeader:"csf-cloneable-header-icon fas fa-angle-down"},activate:function(e,t){var n=t.newPanel,i=t.newHeader;if(n.length&&!n.data("opened")){var s=n.children().first().find(":input").first(),a=i.find(".csf-cloneable-value");s.on("change keyup",function(e){a.text(s.val())}),n.csf_reload_script(),n.data("opened",!0),n.data("retry",!1)}else n.data("retry")&&(n.csf_reload_script_retry(),n.data("retry",!1))}}),r.sortable({axis:"y",handle:".csf-cloneable-title,.csf-cloneable-sort",helper:"original",cursor:"move",placeholder:"widget-placeholder",start:function(e,t){r.accordion({active:!1}),r.sortable("refreshPositions"),t.item.children(".csf-cloneable-content").data("retry",!0)},update:function(e,t){T.helper.name_nested_replace(r.children(".csf-cloneable-item"),l),r.csf_customizer_refresh(),d&&p(r)}}),n.children(".csf-cloneable-add").on("click",function(e){e.preventDefault();var t=r.children(".csf-cloneable-item").length;if(f.hide(),h&&h<t+1)o.show();else{var n=i.csf_clone(!0);n.removeClass("csf-cloneable-hidden"),n.find(':input[name!="_pseudo"]').each(function(){this.name=this.name.replace("___","").replace(l+"[0]",l+"["+t+"]")}),r.append(n),r.accordion("refresh"),r.accordion({active:t}),r.csf_customizer_refresh(),r.csf_customizer_listen({closest:!0}),d&&p(r)}});var a=function(e){e.preventDefault();var t=r.children(".csf-cloneable-item").length;if(f.hide(),h&&h<t+1)o.show();else{var n=I(this).parent().parent(),i=n.children(".csf-cloneable-helper").csf_clone(!0),s=n.children(".csf-cloneable-title").csf_clone(),a=n.children(".csf-cloneable-content").csf_clone(),c=I('<div class="csf-cloneable-item" />');c.append(i),c.append(s),c.append(a),r.children().eq(n.index()).after(c),T.helper.name_nested_replace(r.children(".csf-cloneable-item"),l),r.accordion("refresh"),r.csf_customizer_refresh(),r.csf_customizer_listen({closest:!0}),d&&p(r)}};r.children(".csf-cloneable-item").children(".csf-cloneable-helper").on("click",".csf-cloneable-clone",a),n.children(".csf-cloneable-hidden").children(".csf-cloneable-helper").on("click",".csf-cloneable-clone",a);var c=function(e){e.preventDefault();var t=r.children(".csf-cloneable-item").length;o.hide(),f.hide(),s&&t-1<s?f.show():(I(this).closest(".csf-cloneable-item").remove(),T.helper.name_nested_replace(r.children(".csf-cloneable-item"),l),r.csf_customizer_refresh(),d&&p(r))};r.children(".csf-cloneable-item").children(".csf-cloneable-helper").on("click",".csf-cloneable-remove",c),n.children(".csf-cloneable-hidden").children(".csf-cloneable-helper").on("click",".csf-cloneable-remove",c)})},I.fn.csf_field_icon=function(){return this.each(function(){var n=I(this);n.on("click",".csf-icon-add",function(e){e.preventDefault();var t=I(this),i=I("#csf-modal-icon");i.removeClass("hidden"),T.vars.$icon_target=n,T.vars.icon_modal_loaded||(i.find(".csf-modal-loading").show(),_.wp.ajax.post("csf-get-icons",{nonce:t.data("nonce")}).done(function(e){i.find(".csf-modal-loading").hide(),T.vars.icon_modal_loaded=!0;var n=i.find(".csf-modal-load").html(e.content);n.on("click","i",function(e){e.preventDefault();var t=I(this).attr("title");T.vars.$icon_target.find(".csf-icon-preview i").removeAttr("class").addClass(t),T.vars.$icon_target.find(".csf-icon-preview").removeClass("hidden"),T.vars.$icon_target.find(".csf-icon-remove").removeClass("hidden"),T.vars.$icon_target.find("input").val(t).trigger("change"),i.addClass("hidden")}),i.on("change keyup",".csf-icon-search",function(){var t=I(this).val();n.find("i").each(function(){var e=I(this);e.attr("title").search(new RegExp(t,"i"))<0?e.hide():e.show()})}),i.on("click",".csf-modal-close, .csf-modal-overlay",function(){i.addClass("hidden")})}).fail(function(e){i.find(".csf-modal-loading").hide(),i.find(".csf-modal-load").html(e.error),i.on("click",function(){i.addClass("hidden")})}))}),n.on("click",".csf-icon-remove",function(e){e.preventDefault(),n.find(".csf-icon-preview").addClass("hidden"),n.find("input").val("").trigger("change"),I(this).addClass("hidden")})})},I.fn.csf_field_map=function(){return this.each(function(){if("undefined"!=typeof L){var e=I(this),t=e.find(".csf--map-osm"),n=e.find(".csf--map-search input"),i=e.find(".csf--latitude"),s=e.find(".csf--longitude"),a=e.find(".csf--zoom"),c=t.data("map"),r=L.map(t.get(0),c);L.tileLayer("https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",{attribution:'© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors'}).addTo(r);var o=L.marker(c.center,{draggable:!0}).addTo(r),f=function(e){i.val(e.lat),s.val(e.lng),a.val(r.getZoom())};r.on("click",function(e){o.setLatLng(e.latlng),f(e.latlng)}),r.on("zoom",function(){f(o.getLatLng())}),o.on("drag",function(){f(o.getLatLng())}),n.length||(n=I('[data-depend-id="'+e.find(".csf--address-field").data("address-field")+'"]'));var l={};n.autocomplete({source:function(e,n){var i=e.term;i in l?n(l[i]):I.get("https://nominatim.openstreetmap.org/search",{format:"json",q:i},function(e){var t;t=e.length?e.map(function(e){return{value:e.display_name,label:e.display_name,lat:e.lat,lon:e.lon}},"json"):[{value:"no-data",label:"No Results."}],l[i]=t,n(t)})},select:function(e,t){if("no-data"===t.item.value)return!1;var n=L.latLng(t.item.lat,t.item.lon);r.panTo(n),o.setLatLng(n),f(n)},create:function(e,t){I(this).autocomplete("widget").addClass("csf-map-ui-autocomplate")}});var d=function(){var e=L.latLng(i.val(),s.val());r.panTo(e),o.setLatLng(e)};i.on("change",d),s.on("change",d)}})},I.fn.csf_field_link=function(){return this.each(function(){var s=I(this),e=s.find(".csf--link"),a=s.find(".csf--add"),c=s.find(".csf--edit"),r=s.find(".csf--remove"),o=s.find(".csf--result"),t=T.helper.uid("csf-wplink-textarea-");a.on("click",function(e){e.preventDefault(),_.wpLink.open(t)}),c.on("click",function(e){e.preventDefault(),a.trigger("click"),I("#wp-link-url").val(s.find(".csf--url").val()),I("#wp-link-text").val(s.find(".csf--text").val()),I("#wp-link-target").prop("checked","_blank"===s.find(".csf--target").val())}),r.on("click",function(e){e.preventDefault(),s.find(".csf--url").val("").trigger("change"),s.find(".csf--text").val(""),s.find(".csf--target").val(""),a.removeClass("hidden"),c.addClass("hidden"),r.addClass("hidden"),o.parent().addClass("hidden")}),e.attr("id",t).on("change",function(){var e=_.wpLink.getAttrs(),t=e.href,n=I("#wp-link-text").val(),i=e.target?e.target:"";s.find(".csf--url").val(t).trigger("change"),s.find(".csf--text").val(n),s.find(".csf--target").val(i),o.html('{url:"'+t+'", text:"'+n+'", target:"'+i+'"}'),a.addClass("hidden"),c.removeClass("hidden"),r.removeClass("hidden"),o.parent().removeClass("hidden")})})},I.fn.csf_field_media=function(){return this.each(function(){var i,s=I(this),a=s.find(".csf--button"),c=s.find(".csf--remove"),r=a.data("library")&&a.data("library").split(",")||"",o=!!s.hasClass("csf-assign-field-background")&&s.closest(".csf-field-background").find(".csf--auto-attributes");a.on("click",function(e){e.preventDefault(),void 0!==_.wp&&_.wp.media&&_.wp.media.gallery&&(i||(i=_.wp.media({library:{type:r}})).on("select",function(){var e,t=i.state().get("selection").first().attributes,n=a.data("preview-size")||"thumbnail";r.length&&-1===r.indexOf(t.subtype)&&-1===r.indexOf(t.type)||(s.find(".csf--id").val(t.id),s.find(".csf--width").val(t.width),s.find(".csf--height").val(t.height),s.find(".csf--alt").val(t.alt),s.find(".csf--title").val(t.title),s.find(".csf--description").val(t.description),e=void 0!==t.sizes&&void 0!==t.sizes.thumbnail&&"thumbnail"===n?t.sizes.thumbnail.url:void 0!==t.sizes&&void 0!==t.sizes.full?t.sizes.full.url:"image"===t.type?t.url:t.icon,console.log(t),o&&o.removeClass("csf--attributes-hidden"),c.removeClass("hidden"),s.find(".csf--preview").removeClass("hidden"),s.find(".csf--src").attr("src",e),s.find(".csf--thumbnail").val(e),s.find(".csf--url").val(t.url).trigger("change"))}),i.open())}),c.on("click",function(e){e.preventDefault(),o&&o.addClass("csf--attributes-hidden"),c.addClass("hidden"),s.find("input").val(""),s.find(".csf--preview").addClass("hidden"),s.find(".csf--url").trigger("change")})})},I.fn.csf_field_repeater=function(){return this.each(function(){var e=I(this),t=e.children(".csf-fieldset"),n=t.length?t:e,c=n.children(".csf-repeater-wrapper"),i=n.children(".csf-repeater-hidden"),r=n.children(".csf-repeater-max"),o=n.children(".csf-repeater-min"),f=c.data("field-id"),l=parseInt(c.data("max")),s=parseInt(c.data("min"));c.children(".csf-repeater-item").children(".csf-repeater-content").csf_reload_script(),c.sortable({axis:"y",handle:".csf-repeater-sort",helper:"original",cursor:"move",placeholder:"widget-placeholder",update:function(e,t){T.helper.name_nested_replace(c.children(".csf-repeater-item"),f),c.csf_customizer_refresh(),t.item.csf_reload_script_retry()}}),n.children(".csf-repeater-add").on("click",function(e){e.preventDefault();var t=c.children(".csf-repeater-item").length;if(o.hide(),l&&l<t+1)r.show();else{var n=i.csf_clone(!0);n.removeClass("csf-repeater-hidden"),n.find(':input[name!="_pseudo"]').each(function(){this.name=this.name.replace("___","").replace(f+"[0]",f+"["+t+"]")}),c.append(n),n.children(".csf-repeater-content").csf_reload_script(),c.csf_customizer_refresh(),c.csf_customizer_listen({closest:!0})}});var a=function(e){e.preventDefault();var t=c.children(".csf-repeater-item").length;if(o.hide(),l&&l<t+1)r.show();else{var n=I(this).parent().parent().parent(),i=n.children(".csf-repeater-content").csf_clone(),s=n.children(".csf-repeater-helper").csf_clone(!0),a=I('<div class="csf-repeater-item" />');a.append(i),a.append(s),c.children().eq(n.index()).after(a),a.children(".csf-repeater-content").csf_reload_script(),T.helper.name_nested_replace(c.children(".csf-repeater-item"),f),c.csf_customizer_refresh(),c.csf_customizer_listen({closest:!0})}};c.children(".csf-repeater-item").children(".csf-repeater-helper").on("click",".csf-repeater-clone",a),n.children(".csf-repeater-hidden").children(".csf-repeater-helper").on("click",".csf-repeater-clone",a);var d=function(e){e.preventDefault();var t=c.children(".csf-repeater-item").length;r.hide(),o.hide(),s&&t-1<s?o.show():(I(this).closest(".csf-repeater-item").remove(),T.helper.name_nested_replace(c.children(".csf-repeater-item"),f),c.csf_customizer_refresh())};c.children(".csf-repeater-item").children(".csf-repeater-helper").on("click",".csf-repeater-remove",d),n.children(".csf-repeater-hidden").children(".csf-repeater-helper").on("click",".csf-repeater-remove",d)})},I.fn.csf_field_slider=function(){return this.each(function(){var e=I(this),n=e.find("input"),t=e.find(".csf-slider-ui"),i=n.data(),s=n.val()||0;t.hasClass("ui-slider")&&t.empty(),t.slider({range:"min",value:s,min:i.min||0,max:i.max||100,step:i.step||1,slide:function(e,t){n.val(t.value).trigger("change")}}),n.on("keyup",function(){t.slider("value",n.val())})})},I.fn.csf_field_sortable=function(){return this.each(function(){var n=I(this).find(".csf-sortable");n.sortable({axis:"y",helper:"original",cursor:"move",placeholder:"widget-placeholder",update:function(e,t){n.csf_customizer_refresh()}}),n.find(".csf-sortable-content").csf_reload_script()})},I.fn.csf_field_sorter=function(){return this.each(function(){var i=I(this),e=i.find(".csf-enabled"),t=i.find(".csf-disabled"),n=!!t.length&&t;e.sortable({connectWith:n,placeholder:"ui-sortable-placeholder",update:function(e,t){var n=t.item.find("input");t.item.parent().hasClass("csf-enabled")?n.attr("name",n.attr("name").replace("disabled","enabled")):n.attr("name",n.attr("name").replace("enabled","disabled")),i.csf_customizer_refresh()}}),n&&n.sortable({connectWith:e,placeholder:"ui-sortable-placeholder",update:function(e,t){i.csf_customizer_refresh()}})})},I.fn.csf_field_spinner=function(){return this.each(function(){var e=I(this),n=e.find("input"),t=e.find(".ui-button"),i=n.data();t.length&&t.remove(),n.spinner({min:i.min||0,max:i.max||100,step:i.step||1,create:function(e,t){i.unit&&n.after('<span class="ui-button csf--unit">'+i.unit+"</span>")},spin:function(e,t){n.val(t.value).trigger("change")}})})},I.fn.csf_field_switcher=function(){return this.each(function(){var n=I(this).find(".csf--switcher");n.on("click",function(){var e=0,t=n.find("input");n.hasClass("csf--active")?n.removeClass("csf--active"):(e=1,n.addClass("csf--active")),t.val(e).trigger("change")})})},I.fn.csf_field_tabbed=function(){return this.each(function(){var e=I(this),t=e.find(".csf-tabbed-nav a"),s=e.find(".csf-tabbed-content");s.eq(0).csf_reload_script(),t.on("click",function(e){e.preventDefault();var t=I(this),n=t.index(),i=s.eq(n);t.addClass("csf-tabbed-active").siblings().removeClass("csf-tabbed-active"),i.csf_reload_script(),i.removeClass("hidden").siblings().addClass("hidden")})})},I.fn.csf_field_typography=function(){return this.each(function(){var j=this,L=I(this),i=[],A=csf_typography_json.webfonts,t=csf_typography_json.googlestyles,q=csf_typography_json.defaultstyles;j.sanitize_subset=function(e){return e=(e=e.replace("-ext"," Extended")).charAt(0).toUpperCase()+e.slice(1)},j.sanitize_style=function(e){return t[e]?t[e]:e},j.load_google_font=function(e,t,n){e&&"object"==typeof WebFont&&(t=t?t.replace("normal",""):"",n=n?n.replace("normal",""):"",(t||n)&&(e=e+":"+t+n),-1===i.indexOf(e)&&WebFont.load({google:{families:[e]}}),i.push(e))},j.append_select_options=function(e,t,s,a,c){e.find("option").not(":first").remove();var r="";I.each(t,function(e,t){var n,i=t;n=c?s&&-1!==s.indexOf(t)?" selected":"":s&&s===t?" selected":"","subset"===a?i=j.sanitize_subset(t):"style"===a&&(i=j.sanitize_style(t)),r+='<option value="'+t+'"'+n+">"+i+"</option>"}),e.append(r).trigger("csf.change").trigger("chosen:updated")},j.init=function(){var l=[],e=L.find(".csf--typography"),d=L.find(".csf--type"),h=L.find(".csf--block-font-style"),v=e.data("unit"),g=e.data("line-height-unit"),t=e.data("exclude")?e.data("exclude").split(","):[];L.find(".csf--chosen").length&&L.find("select").each(function(){var e=I(this),t=e.parent().find(".chosen-container");t.length&&t.remove(),e.chosen({allow_single_deselect:!0,disable_search_threshold:15,width:"100%"})});var m=L.find(".csf--font-family"),i=m.val();m.find("option").not(":first-child").remove();var s="";I.each(A,function(n,e){t&&-1!==t.indexOf(n)||(s+='<optgroup label="'+e.label+'">',I.each(e.fonts,function(e,t){s+='<option value="'+(t="object"==typeof t?e:t)+'" data-type="'+n+'"'+(t===i?" selected":"")+">"+t+"</option>"}),s+="</optgroup>")}),m.append(s).trigger("chosen:updated");var p=L.find(".csf--block-font-style");if(p.length){var u=L.find(".csf--font-style-select"),_=u.val()?u.val().replace(/normal/g,""):"";u.on("change csf.change",function(e){var t=u.val();!t&&l&&-1===l.indexOf("normal")&&(t=l[0]);var n=t&&"italic"!==t&&"normal"===t?"normal":"",i=t&&"italic"!==t&&"normal"!==t?t.replace("italic",""):n,s=t&&"italic"===t.substr(-6)?"italic":"";L.find(".csf--font-weight").val(i),L.find(".csf--font-style").val(s)});var b=L.find(".csf--block-extra-styles");if(b.length)var y=L.find(".csf--extra-styles"),w=y.val()}var C=L.find(".csf--block-subset");if(C.length)var k=L.find(".csf--subset"),x=k.val(),z=k.data("multiple")||!1;var D=L.find(".csf--block-backup-font-family");m.on("change csf.change",function(e){C.length&&C.addClass("hidden"),b.length&&b.addClass("hidden"),D.length&&D.addClass("hidden");var t=m.find(":selected"),n=t.val(),i=t.data("type");if(i&&n){if("google"!==i&&"custom"!==i||!D.length||D.removeClass("hidden"),p.length){var s=q;"google"===i&&A[i].fonts[n][0]?s=A[i].fonts[n][0]:"custom"===i&&A[i].fonts[n]&&(s=A[i].fonts[n]);var a=-1!==(l=s).indexOf("normal")?"normal":s[0],c=_&&-1!==s.indexOf(_)?_:a;j.append_select_options(u,s,c,"style"),_=!1,p.removeClass("hidden"),"google"===i&&b.length&&1<s.length&&(j.append_select_options(y,s,w,"style",!0),w=!1,b.removeClass("hidden"))}if("google"===i&&C.length&&A[i].fonts[n][1]){var r=A[i].fonts[n][1],o=r.length<2&&"latin"!==r[0]?r[0]:"",f=x&&-1!==r.indexOf(x)?x:o;f=z&&x?x:f,j.append_select_options(k,r,f,"subset",z),x=!1,C.removeClass("hidden")}}else h.find(":input").val(""),C.length&&(k.find("option").not(":first-child").remove(),k.trigger("chosen:updated")),p.length&&(u.find("option").not(":first-child").remove(),u.trigger("chosen:updated"));d.val(i)}).trigger("csf.change");var O=L.find(".csf--block-preview");if(O.length){var S=L.find(".csf--preview");L.on("change",T.helper.debounce(function(e){O.removeClass("hidden");var t=m.val(),n=L.find(".csf--font-weight").val(),i=L.find(".csf--font-style").val(),s=L.find(".csf--font-size").val(),a=L.find(".csf--font-variant").val(),c=L.find(".csf--line-height").val(),r=L.find(".csf--text-align").val(),o=L.find(".csf--text-transform").val(),f=L.find(".csf--text-decoration").val(),l=L.find(".csf--color").val(),d=L.find(".csf--word-spacing").val(),h=L.find(".csf--letter-spacing").val(),p=L.find(".csf--custom-style").val();"google"===L.find(".csf--type").val()&&j.load_google_font(t,n,i);var u={};t&&(u.fontFamily=t),n&&(u.fontWeight=n),i&&(u.fontStyle=i),a&&(u.fontVariant=a),s&&(u.fontSize=s+v),c&&(u.lineHeight=c+g),h&&(u.letterSpacing=h+v),d&&(u.wordSpacing=d+v),r&&(u.textAlign=r),o&&(u.textTransform=o),f&&(u.textDecoration=f),l&&(u.color=l),S.removeAttr("style"),p&&S.attr("style",p),S.css(u)},100)),O.on("click",function(){S.toggleClass("csf--black-background");var e=O.find(".csf--toggle");e.hasClass("fa-toggle-off")?e.removeClass("fa-toggle-off").addClass("fa-toggle-on"):e.removeClass("fa-toggle-on").addClass("fa-toggle-off")}),O.hasClass("hidden")||L.trigger("change")}},j.init()})},I.fn.csf_field_upload=function(){return this.each(function(){var t,e=I(this),n=e.find("input"),i=e.find(".csf--button"),s=e.find(".csf--remove"),a=e.find(".csf--preview"),c=e.find(".csf--src"),r=i.data("library")&&i.data("library").split(",")||"";i.on("click",function(e){e.preventDefault(),void 0!==_.wp&&_.wp.media&&_.wp.media.gallery&&(t||(t=_.wp.media({library:{type:r}})).on("select",function(){var e=t.state().get("selection").first().attributes;r.length&&-1===r.indexOf(e.subtype)&&-1===r.indexOf(e.type)||n.val(e.url).trigger("change")}),t.open())}),s.on("click",function(e){e.preventDefault(),n.val("").trigger("change")}),n.on("change",function(e){var t=n.val();t?s.removeClass("hidden"):s.addClass("hidden"),a.length&&(-1!==I.inArray(t.split(".").pop().toLowerCase(),["jpg","jpeg","gif","png","svg","webp"])?(a.removeClass("hidden"),c.attr("src",t)):a.addClass("hidden"))})})},I.fn.csf_field_wp_editor=function(){return this.each(function(){if(void 0!==_.wp.editor&&void 0!==_.tinyMCEPreInit&&void 0!==_.tinyMCEPreInit.mceInit.csf_wp_editor){var e=I(this),t=e.find(".csf-wp-editor"),n=e.find("textarea");(e.find(".wp-editor-wrap").length||e.find(".mce-container").length)&&(t.empty(),t.append(n),n.css("display",""));var i=T.helper.uid("csf-editor-");n.attr("id",i);var s={tinymce:_.tinyMCEPreInit.mceInit.csf_wp_editor,quicktags:_.tinyMCEPreInit.qtInit.csf_wp_editor},a=t.data("editor-settings"),c=wp.oldEditor?wp.oldEditor:wp.editor;c&&c.hasOwnProperty("autop")&&(wp.editor.autop=c.autop,wp.editor.removep=c.removep,wp.editor.initialize=c.initialize);s.tinymce=I.extend({},s.tinymce,{selector:"#"+i,setup:function(t){t.on("change keyup",function(){var e=a.wpautop?t.getContent():wp.editor.removep(t.getContent());n.val(e).trigger("change")})}}),!1===a.tinymce&&(s.tinymce=!1,t.addClass("csf-no-tinymce")),!1===a.quicktags&&(s.quicktags=!1,t.addClass("csf-no-quicktags"));var r=setInterval(function(){e.is(":visible")&&(_.wp.editor.initialize(i,s),clearInterval(r))});if(a.media_buttons&&_.csf_media_buttons){var o=t.find(".wp-media-buttons");if(o.length)o.find(".csf-shortcode-button").data("editor-id",i);else{var f=I(_.csf_media_buttons);f.find(".csf-shortcode-button").data("editor-id",i),t.prepend(f)}}}})},I.fn.csf_confirm=function(){return this.each(function(){I(this).on("click",function(e){var t=I(this).data("confirm")||_.csf_vars.i18n.confirm;if(!confirm(t))return e.preventDefault(),!1;T.vars.is_confirm=!0,T.vars.form_modified=!1})})},I.fn.serializeObject=function(){var s={};return I.each(this.serializeArray(),function(e,t){var n=t.name,i=t.value;s[n]=s[n]===y?i:I.isArray(s[n])?s[n].concat(i):[s[n],i]}),s},I.fn.csf_save=function(){return this.each(function(){var i,s=I(this),c=I(".csf-save"),r=I(".csf-options"),o=!1;s.on("click",function(e){if(!o){var t=s.data("save"),n=s.val();c.attr("value",t),s.hasClass("csf-save-ajax")?(e.preventDefault(),r.addClass("csf-saving"),c.prop("disabled",!0),_.wp.ajax.post("csf_"+r.data("unique")+"_ajax_save",{data:I("#csf-form").serializeJSONCSF()}).done(function(e){if(I(".csf-error").remove(),Object.keys(e.errors).length){var a='<i class="csf-label-error csf-error">!</i>';I.each(e.errors,function(e,t){var n=I('[data-depend-id="'+e+'"]'),i=I('a[href="#tab='+n.closest(".csf-section").data("section-id")+'"]'),s=i.closest(".csf-tab-item");n.closest(".csf-fieldset").append('<p class="csf-error csf-error-text">'+t+"</p>"),i.find(".csf-error").length||i.append(a),s.find(".csf-arrow .csf-error").length||s.find(".csf-arrow").append(a)})}r.removeClass("csf-saving"),c.prop("disabled",!1).attr("value",n),o=!1,T.vars.form_modified=!1,T.vars.$form_warning.hide(),clearTimeout(i);var t=I(".csf-form-success");t.empty().append(e.notice).fadeIn("fast",function(){i=setTimeout(function(){t.fadeOut("fast")},1e3)})}).fail(function(e){alert(e.error)})):T.vars.form_modified=!1}o=!0})})},I.fn.csf_options=function(){return this.each(function(){var e=I(this),t=e.find(".csf-content"),n=e.find(".csf-form-success"),i=e.find(".csf-form-warning"),s=e.find(".csf-header .csf-save");(T.vars.$form_warning=i).length&&(_.onbeforeunload=function(){return!!T.vars.form_modified||y},t.on("change keypress",":input",function(){T.vars.form_modified||(n.hide(),i.fadeIn("fast"),T.vars.form_modified=!0)})),n.hasClass("csf-form-show")&&setTimeout(function(){n.fadeOut("fast")},1e3),I(b).keydown(function(e){if((e.ctrlKey||e.metaKey)&&83===e.which)return s.trigger("click"),e.preventDefault(),!1})})},I.fn.csf_taxonomy=function(){return this.each(function(){var e=I(this),t=e.parents("form");if("addtag"===t.attr("id")){var n=t.find("#submit"),i=e.find(".csf-field").csf_clone();n.on("click",function(){t.find(".form-required").hasClass("form-invalid")||(e.data("inited",!1),e.empty(),e.html(i),i=i.csf_clone(),e.csf_reload_script())})}})},I.fn.csf_shortcode=function(){var m=this;return m.shortcode_parse=function(e,n){var i="";return I.each(e,function(e,t){i+="["+(n=n||e),I.each(t,function(e,t){"content"===e?(i+="]",i+=t,i+="[/"+n):i+=m.shortcode_tags(e,t)}),i+="]"}),i},m.shortcode_tags=function(e,t){var n="";return""!==t&&("object"!=typeof t||I.isArray(t)?n+=" "+e.replace("-","_")+'="'+t.toString()+'"':I.each(t,function(e,t){switch(e){case"background-image":t=t.url?t.url:""}""!==t&&(n+=" "+e.replace("-","_")+'="'+t.toString()+'"')})),n},m.insertAtChars=function(e,t){var n=void 0!==e[0].name?e[0]:e;return n.value.length&&void 0!==n.selectionStart?(n.focus(),n.value.substring(0,n.selectionStart)+t+n.value.substring(n.selectionEnd,n.value.length)):(n.focus(),t)},m.send_to_editor=function(e,t){var n;if("undefined"!=typeof tinymce&&(n=tinymce.get(t)),n&&!n.isHidden())n.execCommand("mceInsertContent",!1,e);else{var i=I("#"+t);i.val(m.insertAtChars(i,e)).trigger("change")}},this.each(function(){var c,r,o,n,f,l,d,s,h,p=I(this),i=p.find(".csf-modal-load"),u=(p.find(".csf-modal-content"),p.find(".csf-modal-insert")),a=p.find(".csf-modal-loading"),t=p.find("select"),v=p.data("modal-id"),g=p.data("nonce");I(b).on("click",'.csf-shortcode-button[data-modal-id="'+v+'"]',function(e){e.preventDefault(),h=I(this),c=h.data("editor-id")||!1,r=h.data("target-id")||!1,o=h.data("gutenberg-id")||!1,p.removeClass("hidden"),p.hasClass("csf-shortcode-single")&&f===y&&t.trigger("change")}),t.on("change",function(){var e=I(this),t=e.find(":selected");n=e.val(),f=t.data("shortcode"),l=t.data("view")||"normal",d=t.data("group")||f,i.empty(),n?(a.show(),_.wp.ajax.post("csf-get-shortcode-"+v,{shortcode_key:n,nonce:g}).done(function(e){a.hide();var t=I(e.content).appendTo(i);u.parent().removeClass("hidden"),s=t.find(".csf--repeat-shortcode").csf_clone(),t.csf_reload_script(),t.find(".csf-fields").csf_reload_script()})):u.parent().addClass("hidden")}),u.on("click",function(e){if(e.preventDefault(),!u.prop("disabled")&&!u.attr("disabled")){var i="",t=p.find(".csf-field:not(.csf-depend-on)").find(":input:not(.ignore)").serializeObjectCSF();switch(l){case"contents":var n=f?t[f]:t;I.each(n,function(e,t){var n=f||e;i+="["+n+"]"+t+"[/"+n+"]"});break;case"group":i+="["+f,I.each(t[f],function(e,t){i+=m.shortcode_tags(e,t)}),i+="]",i+=m.shortcode_parse(t[d],d),i+="[/"+f+"]";break;case"repeater":i+=m.shortcode_parse(t[d],d);break;default:i+=m.shortcode_parse(t)}if(i=""===i?"["+f+"]":i,o){var s=_.csf_gutenberg_props.attributes.hasOwnProperty("shortcode")?_.csf_gutenberg_props.attributes.shortcode:"";_.csf_gutenberg_props.setAttributes({shortcode:s+i})}else if(c)m.send_to_editor(i,c);else{var a=r?I(r):h.parent().find("textarea");a.val(m.insertAtChars(a,i)).trigger("change")}p.addClass("hidden")}}),p.on("click",".csf--repeat-button",function(e){e.preventDefault();var t=p.find(".csf--repeatable"),n=s.csf_clone(),i=n.find(".csf-repeat-remove");n.appendTo(t);n.find(".csf-fields").csf_reload_script(),T.helper.name_nested_replace(p.find(".csf--repeat-shortcode"),d),i.on("click",function(){n.remove(),T.helper.name_nested_replace(p.find(".csf--repeat-shortcode"),d)})}),p.on("click",".csf-modal-close, .csf-modal-overlay",function(){p.addClass("hidden")})})},"function"==typeof Color&&(Color.prototype.toString=function(){if(this._alpha<1)return this.toCSS("rgba",this._alpha).replace(/\s+/g,"");var e=parseInt(this._color,10).toString(16);if(this.error)return"";if(e.length<6)for(var t=6-e.length-1;0<=t;t--)e="0"+e;return"#"+e}),T.funcs.parse_color=function(e){var t=e.replace(/\s+/g,""),n=-1!==t.indexOf("rgba")?parseFloat(100*t.replace(/^.*,(.+)\)/,"$1")):100;return{value:t,transparent:n,rgba:n<100}},I.fn.csf_color=function(){return this.each(function(){var c,r=I(this),o=T.funcs.parse_color(r.val()),e=!_.csf_vars.color_palette.length||_.csf_vars.color_palette;r.hasClass("wp-color-picker")&&r.closest(".wp-picker-container").after(r).remove(),r.wpColorPicker({palettes:e,change:function(e,t){var n=t.color.toString();c.removeClass("csf--transparent-active"),c.find(".csf--transparent-offset").css("background-color",n),r.val(n).trigger("change")},create:function(){c=r.closest(".wp-picker-container");var i=r.data("a8cIris"),e=I('<div class="csf--transparent-wrap"><div class="csf--transparent-slider"></div><div class="csf--transparent-offset"></div><div class="csf--transparent-text"></div><div class="csf--transparent-button">transparent <i class="fas fa-toggle-off"></i></div></div>').appendTo(c.find(".wp-picker-holder")),s=e.find(".csf--transparent-slider"),a=e.find(".csf--transparent-text"),n=e.find(".csf--transparent-offset"),t=e.find(".csf--transparent-button");"transparent"===r.val()&&c.addClass("csf--transparent-active"),t.on("click",function(){"transparent"!==r.val()?(r.val("transparent").trigger("change").removeClass("iris-error"),c.addClass("csf--transparent-active")):(r.val(i._color.toString()).trigger("change"),c.removeClass("csf--transparent-active"))}),s.slider({value:o.transparent,step:1,min:0,max:100,slide:function(e,t){var n=parseFloat(t.value/100);i._color._alpha=n,r.wpColorPicker("color",i._color.toString()),a.text(1===n||0===n?"":n)},create:function(){var e=parseFloat(o.transparent/100),t=e<1?e:"";a.text(t),n.css("background-color",o.value),c.on("click",".wp-picker-clear",function(){i._color._alpha=1,a.text(""),s.slider("option","value",100),c.removeClass("csf--transparent-active"),r.trigger("change")}),c.on("click",".wp-picker-default",function(){var e=T.funcs.parse_color(r.data("default-color")),t=parseFloat(e.transparent/100),n=t<1?t:"";i._color._alpha=t,a.text(n),s.slider("option","value",e.transparent),"transparent"===e.value&&(r.removeClass("iris-error"),c.addClass("csf--transparent-active"))})}})}})})},I.fn.csf_chosen=function(){return this.each(function(){var a=I(this),e=a.parent().find(".chosen-container"),t=a.hasClass("csf-chosen-sortable")||!1,n=a.hasClass("csf-chosen-ajax")||!1,i=a.attr("multiple")||!1,s=i?"100%":"auto",c=I.extend({allow_single_deselect:!0,disable_search_threshold:10,width:s,no_results_text:_.csf_vars.i18n.no_results_text},a.data("chosen-settings"));if(e.length&&e.remove(),n){var r=I.extend({data:{type:"post",nonce:""},allow_single_deselect:!0,disable_search_threshold:-1,width:"100%",min_length:3,type_delay:500,typing_text:_.csf_vars.i18n.typing_text,searching_text:_.csf_vars.i18n.searching_text,no_results_text:_.csf_vars.i18n.no_results_text},a.data("chosen-settings"));a.CSFAjaxChosen(r)}else a.chosen(c);if(i){var o=a.parent().find(".csf-hide-select"),f=o.val()||[];a.on("change",function(e,t){t&&t.selected?o.append('<option value="'+t.selected+'" selected="selected">'+t.selected+"</option>"):t&&t.deselected&&o.find('option[value="'+t.deselected+'"]').remove(),_.wp.customize!==y&&0===o.children().length&&o.data("customize-setting-link")&&_.wp.customize.control(o.data("customize-setting-link")).setting.set(""),o.trigger("change")}),a.CSFChosenOrder(f,!0)}if(t){var l=a.parent().find(".chosen-container").find(".chosen-choices");l.bind("mousedown",function(e){I(e.target).is("span")&&e.stopPropagation()}),l.sortable({items:"li:not(.search-field)",helper:"orginal",cursor:"move",placeholder:"search-choice-placeholder",start:function(e,t){t.placeholder.width(t.item.innerWidth()),t.placeholder.height(t.item.innerHeight())},update:function(e,t){var i="",s=a.data("chosen"),n=a.parent().find(".csf-hide-select");l.find(".search-choice-close").each(function(){var n=I(this).data("option-array-index");I.each(s.results_data,function(e,t){t.array_index===n&&(i+='<option value="'+t.value+'" selected>'+t.value+"</option>")})}),n.children().remove(),n.append(i),n.trigger("change")}})}})},I.fn.csf_checkbox=function(){return this.each(function(){var e=I(this),t=e.find(".csf--input"),n=e.find(".csf--checkbox");n.on("click",function(){t.val(Number(n.prop("checked"))).trigger("change")})})},I.fn.csf_siblings=function(){return this.each(function(){var t=I(this),e=t.find(".csf--sibling"),n=t.data("multiple")||!1;e.on("click",function(){var e=I(this);n?e.hasClass("csf--active")?(e.removeClass("csf--active"),e.find("input").prop("checked",!1).trigger("change")):(e.addClass("csf--active"),e.find("input").prop("checked",!0).trigger("change")):(t.find("input").prop("checked",!1),e.find("input").prop("checked",!0).trigger("change"),e.addClass("csf--active").siblings().removeClass("csf--active"))})})},I.fn.csf_help=function(){return this.each(function(){var e,t,n=I(this);n.on({mouseenter:function(){e=I('<div class="csf-tooltip"></div>').html(n.find(".csf-help-text").html()).appendTo("body"),t=T.vars.is_rtl?n.offset().left+24:n.offset().left-e.outerWidth(),e.css({top:n.offset().top-(e.outerHeight()/2-14),left:t})},mouseleave:function(){e!==y&&e.remove()}})})},I.fn.csf_customizer_refresh=function(){return this.each(function(){var e=I(this),t=e.closest(".csf-customize-complex");if(t.length){var n=t.data("unique-id");if(n===y)return;var i=t.find(":input"),s=t.data("option-id"),a=i.serializeObjectCSF(),c=!I.isEmptyObject(a)&&a[n]&&a[n][s]?a[n][s]:"",r=_.wp.customize.control(n+"["+s+"]");r.setting._value=null,r.setting.set(c)}else e.find(":input").first().trigger("change");I(b).trigger("csf-customizer-refresh",e)})},I.fn.csf_customizer_listen=function(e){var t=I.extend({closest:!1},e);return this.each(function(){if(_.wp.customize!==y){var n=t.closest?I(this).closest(".csf-customize-complex"):I(this),e=n.find(":input"),i=n.data("unique-id"),s=n.data("option-id");i!==y&&e.on("change keyup",function(){var e=n.find(":input").serializeObjectCSF(),t=!I.isEmptyObject(e)&&e[i]&&e[i][s]?e[i][s]:"";_.wp.customize.control(i+"["+s+"]").setting.set(t)})}})},I(b).on("expanded",".control-section",function(){var e=I(this);if(e.hasClass("open")&&!e.data("inited")){var t=e.find(".csf-customize-field"),n=e.find(".csf-customize-complex");t.length&&(e.csf_dependency(),t.csf_reload_script({dependency:!1}),n.csf_customizer_listen()),e.data("inited",!0)}}),T.vars.$window.on("resize csf.resize",T.helper.debounce(function(e){(-1<navigator.userAgent.indexOf("AppleWebKit/")?T.vars.$window.width():_.innerWidth)<=782&&!T.vars.onloaded&&(I(".csf-section").csf_reload_script(),T.vars.onloaded=!0)},200)).trigger("csf.resize"),I.fn.csf_widgets=function(){return this.each(function(){I(b).on("widget-added widget-updated",function(e,t){var n=t.find(".csf-fields");n.length&&n.csf_reload_script()}),I(b).on("click",".widget-top",function(e){var t=I(this).parent().find(".csf-fields");t.length&&t.csf_reload_script()}),I(".widgets-sortables, .control-section-sidebar").on("sortstop",function(e,t){t.item.find(".csf-fields").csf_reload_script_retry()})})},I.fn.csf_nav_menu=function(){return this.each(function(){var e=I(this);e.on("click","a.item-edit",function(){I(this).closest("li.menu-item").find(".csf-fields").csf_reload_script()}),e.on("sortstop",function(e,t){t.item.find(".csf-fields").csf_reload_script_retry()})})},I.fn.csf_reload_script_retry=function(){return this.each(function(){var e=I(this);e.data("inited")&&e.children(".csf-field-wp_editor").csf_field_wp_editor()})},I.fn.csf_reload_script=function(e){var t=I.extend({dependency:!0},e);return this.each(function(){var e=I(this);e.data("inited")||(e.children(".csf-field-accordion").csf_field_accordion(),e.children(".csf-field-backup").csf_field_backup(),e.children(".csf-field-background").csf_field_background(),e.children(".csf-field-code_editor").csf_field_code_editor(),e.children(".csf-field-date").csf_field_date(),e.children(".csf-field-fieldset").csf_field_fieldset(),e.children(".csf-field-gallery").csf_field_gallery(),e.children(".csf-field-group").csf_field_group(),e.children(".csf-field-icon").csf_field_icon(),e.children(".csf-field-link").csf_field_link(),e.children(".csf-field-media").csf_field_media(),e.children(".csf-field-map").csf_field_map(),e.children(".csf-field-repeater").csf_field_repeater(),e.children(".csf-field-slider").csf_field_slider(),e.children(".csf-field-sortable").csf_field_sortable(),e.children(".csf-field-sorter").csf_field_sorter(),e.children(".csf-field-spinner").csf_field_spinner(),e.children(".csf-field-switcher").csf_field_switcher(),e.children(".csf-field-tabbed").csf_field_tabbed(),e.children(".csf-field-typography").csf_field_typography(),e.children(".csf-field-upload").csf_field_upload(),e.children(".csf-field-wp_editor").csf_field_wp_editor(),e.children(".csf-field-border").find(".csf-color").csf_color(),e.children(".csf-field-background").find(".csf-color").csf_color(),e.children(".csf-field-color").find(".csf-color").csf_color(),e.children(".csf-field-color_group").find(".csf-color").csf_color(),e.children(".csf-field-link_color").find(".csf-color").csf_color(),e.children(".csf-field-typography").find(".csf-color").csf_color(),e.children(".csf-field-select").find(".csf-chosen").csf_chosen(),e.children(".csf-field-checkbox").find(".csf-checkbox").csf_checkbox(),e.children(".csf-field-button_set").find(".csf-siblings").csf_siblings(),e.children(".csf-field-image_select").find(".csf-siblings").csf_siblings(),e.children(".csf-field-palette").find(".csf-siblings").csf_siblings(),e.children(".csf-field").find(".csf-help").csf_help(),t.dependency&&e.csf_dependency(),e.data("inited",!0),I(b).trigger("csf-reload-script",e))})},I(b).ready(function(){I(".csf-save").csf_save(),I(".csf-options").csf_options(),I(".csf-sticky-header").csf_sticky(),I(".csf-nav-options").csf_nav_options(),I(".csf-nav-metabox").csf_nav_metabox(),I(".csf-taxonomy").csf_taxonomy(),I(".csf-page-templates").csf_page_templates(),I(".csf-post-formats").csf_post_formats(),I(".csf-shortcode").csf_shortcode(),I(".csf-search").csf_search(),I(".csf-confirm").csf_confirm(),I(".csf-expand-all").csf_expand_all(),I(".csf-onload").csf_reload_script(),I("#widgets-editor").csf_widgets(),I("#widgets-right").csf_widgets(),I("#menu-to-edit").csf_nav_menu()})}(jQuery,window,document);
|
1 |
+
/* Codestar Framework | A Simple and Lightweight WordPress Option Framework - v2.2.6*/
|
2 |
|
3 |
+
!function(I,_,b,y){"use strict";var T=T||{};T.funcs={},T.vars={onloaded:!1,$body:I("body"),$window:I(_),$document:I(b),$form_warning:null,is_confirm:!1,form_modified:!1,code_themes:[],is_rtl:I("body").hasClass("rtl")},T.helper={uid:function(e){return(e||"")+Math.random().toString(36).substr(2,9)},preg_quote:function(e){return(e+"").replace(/(\[|\])/g,"\\$1")},name_nested_replace:function(e,t){var n=new RegExp(T.helper.preg_quote(t+"[\\d+]"),"g");e.find(":radio").each(function(){(this.checked||this.orginal_checked)&&(this.orginal_checked=!0)}),e.each(function(e){I(this).find(":input").each(function(){this.name=this.name.replace(n,t+"["+e+"]"),this.orginal_checked&&(this.checked=!0)})})},debounce:function(i,s,a){var c;return function(){var e=this,t=arguments,n=a&&!c;clearTimeout(c),c=setTimeout(function(){c=null,a||i.apply(e,t)},s),n&&i.apply(e,t)}}},I.fn.csf_clone=function(){for(var e=I.fn.clone.apply(this,arguments),t=this.find("select").add(this.filter("select")),n=e.find("select").add(e.filter("select")),i=0;i<t.length;++i)for(var s=0;s<t[i].options.length;++s)!0===t[i].options[s].selected&&(n[i].options[s].selected=!0);return this.find(":radio").each(function(){this.orginal_checked=this.checked}),e},I.fn.csf_expand_all=function(){return this.each(function(){I(this).on("click",function(e){e.preventDefault(),I(".csf-wrapper").toggleClass("csf-show-all"),I(".csf-section").csf_reload_script(),I(this).find(".fa").toggleClass("fa-indent").toggleClass("fa-outdent")})})},I.fn.csf_nav_options=function(){return this.each(function(){var s,e=I(this),t=I(_),a=I("#wpwrap"),c=e.find("a");t.on("hashchange csf.hashchange",function(){var e=_.location.hash.replace("#tab=",""),t=e||c.first().attr("href").replace("#tab=",""),n=I('[data-tab-id="'+t+'"]');if(n.length){n.closest(".csf-tab-item").addClass("csf-tab-expanded").siblings().removeClass("csf-tab-expanded"),n.next().is("ul")&&(t=(n=n.next().find("li").first().find("a")).data("tab-id")),c.removeClass("csf-active"),n.addClass("csf-active"),s&&s.addClass("hidden");var i=I('[data-section-id="'+t+'"]');i.removeClass("hidden"),i.csf_reload_script(),I(".csf-section-id").val(i.index()+1),s=i,a.hasClass("wp-responsive-open")&&(I("html, body").animate({scrollTop:i.offset().top-50},200),a.removeClass("wp-responsive-open"))}}).trigger("csf.hashchange")})},I.fn.csf_nav_metabox=function(){return this.each(function(){var s,e=I(this),a=e.find("a"),c=e.parent().find(".csf-section");a.each(function(i){I(this).on("click",function(e){e.preventDefault();var t=I(this);a.removeClass("csf-active"),t.addClass("csf-active"),s!==y&&s.addClass("hidden");var n=c.eq(i);n.removeClass("hidden"),n.csf_reload_script(),s=n})}),a.first().trigger("click")})},I.fn.csf_page_templates=function(){this.length&&I(b).on("change",".editor-page-attributes__template select, #page_template",function(){var e=I(this).val()||"default";I(".csf-page-templates").removeClass("csf-metabox-show").addClass("csf-metabox-hide"),I(".csf-page-"+e.toLowerCase().replace(/[^a-zA-Z0-9]+/g,"-")).removeClass("csf-metabox-hide").addClass("csf-metabox-show")})},I.fn.csf_post_formats=function(){this.length&&I(b).on("change",'.editor-post-format select, #formatdiv input[name="post_format"]',function(){var e=I(this).val()||"default";e="0"===e?"default":e,I(".csf-post-formats").removeClass("csf-metabox-show").addClass("csf-metabox-hide"),I(".csf-post-format-"+e).removeClass("csf-metabox-hide").addClass("csf-metabox-show")})},I.fn.csf_search=function(){return this.each(function(){I(this).find("input").on("change keyup",function(){var n=I(this).val(),e=I(".csf-wrapper"),t=e.find(".csf-section").find("> .csf-field:not(.csf-depend-on)"),i=t.find("> .csf-title, .csf-search-tags");3<n.length?(t.addClass("csf-metabox-hide"),e.addClass("csf-search-all"),i.each(function(){var e=I(this);if(e.text().match(new RegExp(".*?"+n+".*?","i"))){var t=e.closest(".csf-field");t.removeClass("csf-metabox-hide"),t.parent().csf_reload_script()}})):(t.removeClass("csf-metabox-hide"),e.removeClass("csf-search-all"))})})},I.fn.csf_sticky=function(){return this.each(function(){var i=I(this),s=I(_),a=i.find(".csf-header-inner"),c=parseInt(a.css("padding-left"))+parseInt(a.css("padding-right")),r=0,o=!1,e=function(){o||requestAnimationFrame(function(){var e,t,n;e=i.offset().top,t=Math.max(32,e-r),n=s.innerWidth(),t<=32&&782<n?(a.css({width:i.outerWidth()-c}),i.css({height:i.outerHeight()}).addClass("csf-sticky")):(a.removeAttr("style"),i.removeAttr("style").removeClass("csf-sticky")),o=!1}),o=!0},t=function(){r=s.scrollTop(),e()};s.on("scroll resize",t),t()})},I.fn.csf_dependency=function(){return this.each(function(){var e=I(this),t=e.children("[data-controller]");if(t.length){var n=I.csf_deps.createRuleset(),i=I.csf_deps.createRuleset(),f=[],l=[];t.each(function(){var s=I(this),e=s.data("controller").split("|"),a=s.data("condition").split("|"),c=s.data("value").toString().split("|"),r=!!s.data("depend-global"),o=r?i:n;I.each(e,function(e,t){var n=c[e]||"",i=a[e]||a[0];(o=o.createRule('[data-depend-id="'+t+'"]',i,n)).include(s),r?l.push(t):f.push(t)})}),f.length&&I.csf_deps.enable(e,n,f),l.length&&I.csf_deps.enable(T.vars.$body,i,l)}})},I.fn.csf_field_accordion=function(){return this.each(function(){I(this).find(".csf-accordion-title").on("click",function(){var e=I(this),t=e.find(".csf-accordion-icon"),n=e.next();t.hasClass("fa-angle-right")?t.removeClass("fa-angle-right").addClass("fa-angle-down"):t.removeClass("fa-angle-down").addClass("fa-angle-right"),n.data("opened")||(n.csf_reload_script(),n.data("opened",!0)),n.toggleClass("csf-accordion-open")})})},I.fn.csf_field_backup=function(){return this.each(function(){if(_.wp.customize!==y){var t=this,n=I(this),i=(I("body"),n.find(".csf-import")),s=n.find(".csf-reset");t.notificationOverlay=function(){wp.customize.notifications&&wp.customize.OverlayNotification&&(wp.customize.state("saved").get()||(wp.customize.state("changesetStatus").set("trash"),wp.customize.each(function(e){e._dirty=!1}),wp.customize.state("saved").set(!0)),wp.customize.notifications.add(new wp.customize.OverlayNotification("csf_field_backup_notification",{type:"default",message:" ",loading:!0})))},s.on("click",function(e){e.preventDefault(),T.vars.is_confirm&&(t.notificationOverlay(),_.wp.ajax.post("csf-reset",{unique:s.data("unique"),nonce:s.data("nonce")}).done(function(e){_.location.reload(!0)}).fail(function(e){alert(e.error),wp.customize.notifications.remove("csf_field_backup_notification")}))}),i.on("click",function(e){e.preventDefault(),T.vars.is_confirm&&(t.notificationOverlay(),_.wp.ajax.post("csf-import",{unique:i.data("unique"),nonce:i.data("nonce"),data:n.find(".csf-import-data").val()}).done(function(e){_.location.reload(!0)}).fail(function(e){alert(e.error),wp.customize.notifications.remove("csf_field_backup_notification")}))})}})},I.fn.csf_field_background=function(){return this.each(function(){I(this).find(".csf--background-image").csf_reload_script()})},I.fn.csf_field_code_editor=function(){return this.each(function(){if("function"==typeof CodeMirror){var t=I(this),i=t.find("textarea"),e=t.find(".CodeMirror"),s=i.data("editor");e.length&&e.remove();var a=setInterval(function(){if(t.is(":visible")){var n=CodeMirror.fromTextArea(i[0],s);if("default"!==s.theme&&-1===T.vars.code_themes.indexOf(s.theme)){var e=I("<link>");I("#csf-codemirror-css").after(e),e.attr({rel:"stylesheet",id:"csf-codemirror-"+s.theme+"-css",href:s.cdnURL+"/theme/"+s.theme+".min.css",type:"text/css",media:"all"}),T.vars.code_themes.push(s.theme)}CodeMirror.modeURL=s.cdnURL+"/mode/%N/%N.min.js",CodeMirror.autoLoadMode(n,s.mode),n.on("change",function(e,t){i.val(n.getValue()).trigger("change")}),clearInterval(a)}})}})},I.fn.csf_field_date=function(){return this.each(function(){var e=I(this),i=e.find("input"),s=e.find(".csf-date-settings").data("settings"),t={showAnim:"",beforeShow:function(e,t){I(t.dpDiv).addClass("csf-datepicker-wrapper")},onClose:function(e,t){I(t.dpDiv).removeClass("csf-datepicker-wrapper")}};s=I.extend({},s,t),2===i.length&&(s=I.extend({},s,{onSelect:function(e){I(this),i.first();var t=i.first().attr("id")===I(this).attr("id")?"minDate":"maxDate",n=I.datepicker.parseDate(s.dateFormat,e);i.not(this).datepicker("option",t,n)}})),i.each(function(){var e=I(this);e.hasClass("hasDatepicker")&&e.removeAttr("id").removeClass("hasDatepicker"),e.datepicker(s)})})},I.fn.csf_field_datetime=function(){return this.each(function(){var e=I(this),i=e.find("input"),t=e.find(".csf-datetime-settings").data("settings");t=I.extend({},t,{onReady:function(e,t,n){I(n.calendarContainer).addClass("csf-flatpickr")}}),2===i.length&&(t=I.extend({},t,{onChange:function(e,t,n){"from"===I(n.element).data("type")?i.last().get(0)._flatpickr.set("minDate",e[0]):i.first().get(0)._flatpickr.set("maxDate",e[0])}})),i.each(function(){I(this).flatpickr(t)})})},I.fn.csf_field_fieldset=function(){return this.each(function(){I(this).find(".csf-fieldset-content").csf_reload_script()})},I.fn.csf_field_gallery=function(){return this.each(function(){var a,e=I(this),c=e.find(".csf-edit-gallery"),r=e.find(".csf-clear-gallery"),o=e.find("ul"),f=e.find("input");e.find("img");e.on("click",".csf-button, .csf-edit-gallery",function(e){var t=I(this),n=f.val(),i=t.hasClass("csf-edit-gallery")?"edit":"add",s="add"!==i||n.length?"gallery-edit":"gallery";e.preventDefault(),void 0!==_.wp&&_.wp.media&&_.wp.media.gallery&&("gallery"===s?(a=_.wp.media({library:{type:"image"},frame:"post",state:"gallery",multiple:!0})).open():(a=_.wp.media.gallery.edit('[gallery ids="'+n+'"]'),"add"===i&&a.setState("gallery-library")),a.on("update",function(e){o.empty();var t=e.models.map(function(e){var t=e.toJSON(),n=t.sizes&&t.sizes.thumbnail&&t.sizes.thumbnail.url?t.sizes.thumbnail.url:t.url;return o.append('<li><img src="'+n+'"></li>'),t.id});f.val(t.join(",")).trigger("change"),r.removeClass("hidden"),c.removeClass("hidden")}))}),r.on("click",function(e){e.preventDefault(),o.empty(),f.val("").trigger("change"),r.addClass("hidden"),c.addClass("hidden")})})},I.fn.csf_field_group=function(){return this.each(function(){var e=I(this),t=e.children(".csf-fieldset"),n=t.length?t:e,r=n.children(".csf-cloneable-wrapper"),i=n.children(".csf-cloneable-hidden"),o=n.children(".csf-cloneable-max"),f=n.children(".csf-cloneable-min"),l=r.data("field-id"),d=Boolean(Number(r.data("title-number"))),h=parseInt(r.data("max")),s=parseInt(r.data("min"));r.hasClass("ui-accordion")&&r.find(".ui-accordion-header-icon").remove();var p=function(e){e.find(".csf-cloneable-title-number").each(function(e){I(this).html(I(this).closest(".csf-cloneable-item").index()+1+".")})};r.accordion({header:"> .csf-cloneable-item > .csf-cloneable-title",collapsible:!0,active:!1,animate:!1,heightStyle:"content",icons:{header:"csf-cloneable-header-icon fas fa-angle-right",activeHeader:"csf-cloneable-header-icon fas fa-angle-down"},activate:function(e,t){var n=t.newPanel,i=t.newHeader;if(n.length&&!n.data("opened")){var s=n.children().first().find(":input").first(),a=i.find(".csf-cloneable-value");s.on("change keyup",function(e){a.text(s.val())}),n.csf_reload_script(),n.data("opened",!0),n.data("retry",!1)}else n.data("retry")&&(n.csf_reload_script_retry(),n.data("retry",!1))}}),r.sortable({axis:"y",handle:".csf-cloneable-title,.csf-cloneable-sort",helper:"original",cursor:"move",placeholder:"widget-placeholder",start:function(e,t){r.accordion({active:!1}),r.sortable("refreshPositions"),t.item.children(".csf-cloneable-content").data("retry",!0)},update:function(e,t){T.helper.name_nested_replace(r.children(".csf-cloneable-item"),l),r.csf_customizer_refresh(),d&&p(r)}}),n.children(".csf-cloneable-add").on("click",function(e){e.preventDefault();var t=r.children(".csf-cloneable-item").length;if(f.hide(),h&&h<t+1)o.show();else{var n=i.csf_clone(!0);n.removeClass("csf-cloneable-hidden"),n.find(':input[name!="_pseudo"]').each(function(){this.name=this.name.replace("___","").replace(l+"[0]",l+"["+t+"]")}),r.append(n),r.accordion("refresh"),r.accordion({active:t}),r.csf_customizer_refresh(),r.csf_customizer_listen({closest:!0}),d&&p(r)}});var a=function(e){e.preventDefault();var t=r.children(".csf-cloneable-item").length;if(f.hide(),h&&h<t+1)o.show();else{var n=I(this).parent().parent(),i=n.children(".csf-cloneable-helper").csf_clone(!0),s=n.children(".csf-cloneable-title").csf_clone(),a=n.children(".csf-cloneable-content").csf_clone(),c=I('<div class="csf-cloneable-item" />');c.append(i),c.append(s),c.append(a),r.children().eq(n.index()).after(c),T.helper.name_nested_replace(r.children(".csf-cloneable-item"),l),r.accordion("refresh"),r.csf_customizer_refresh(),r.csf_customizer_listen({closest:!0}),d&&p(r)}};r.children(".csf-cloneable-item").children(".csf-cloneable-helper").on("click",".csf-cloneable-clone",a),n.children(".csf-cloneable-hidden").children(".csf-cloneable-helper").on("click",".csf-cloneable-clone",a);var c=function(e){e.preventDefault();var t=r.children(".csf-cloneable-item").length;o.hide(),f.hide(),s&&t-1<s?f.show():(I(this).closest(".csf-cloneable-item").remove(),T.helper.name_nested_replace(r.children(".csf-cloneable-item"),l),r.csf_customizer_refresh(),d&&p(r))};r.children(".csf-cloneable-item").children(".csf-cloneable-helper").on("click",".csf-cloneable-remove",c),n.children(".csf-cloneable-hidden").children(".csf-cloneable-helper").on("click",".csf-cloneable-remove",c)})},I.fn.csf_field_icon=function(){return this.each(function(){var n=I(this);n.on("click",".csf-icon-add",function(e){e.preventDefault();var t=I(this),i=I("#csf-modal-icon");i.removeClass("hidden"),T.vars.$icon_target=n,T.vars.icon_modal_loaded||(i.find(".csf-modal-loading").show(),_.wp.ajax.post("csf-get-icons",{nonce:t.data("nonce")}).done(function(e){i.find(".csf-modal-loading").hide(),T.vars.icon_modal_loaded=!0;var n=i.find(".csf-modal-load").html(e.content);n.on("click","i",function(e){e.preventDefault();var t=I(this).attr("title");T.vars.$icon_target.find(".csf-icon-preview i").removeAttr("class").addClass(t),T.vars.$icon_target.find(".csf-icon-preview").removeClass("hidden"),T.vars.$icon_target.find(".csf-icon-remove").removeClass("hidden"),T.vars.$icon_target.find("input").val(t).trigger("change"),i.addClass("hidden")}),i.on("change keyup",".csf-icon-search",function(){var t=I(this).val();n.find("i").each(function(){var e=I(this);e.attr("title").search(new RegExp(t,"i"))<0?e.hide():e.show()})}),i.on("click",".csf-modal-close, .csf-modal-overlay",function(){i.addClass("hidden")})}).fail(function(e){i.find(".csf-modal-loading").hide(),i.find(".csf-modal-load").html(e.error),i.on("click",function(){i.addClass("hidden")})}))}),n.on("click",".csf-icon-remove",function(e){e.preventDefault(),n.find(".csf-icon-preview").addClass("hidden"),n.find("input").val("").trigger("change"),I(this).addClass("hidden")})})},I.fn.csf_field_map=function(){return this.each(function(){if("undefined"!=typeof L){var e=I(this),t=e.find(".csf--map-osm"),n=e.find(".csf--map-search input"),i=e.find(".csf--latitude"),s=e.find(".csf--longitude"),a=e.find(".csf--zoom"),c=t.data("map"),r=L.map(t.get(0),c);L.tileLayer("https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",{attribution:'© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors'}).addTo(r);var o=L.marker(c.center,{draggable:!0}).addTo(r),f=function(e){i.val(e.lat),s.val(e.lng),a.val(r.getZoom())};r.on("click",function(e){o.setLatLng(e.latlng),f(e.latlng)}),r.on("zoom",function(){f(o.getLatLng())}),o.on("drag",function(){f(o.getLatLng())}),n.length||(n=I('[data-depend-id="'+e.find(".csf--address-field").data("address-field")+'"]'));var l={};n.autocomplete({source:function(e,n){var i=e.term;i in l?n(l[i]):I.get("https://nominatim.openstreetmap.org/search",{format:"json",q:i},function(e){var t;t=e.length?e.map(function(e){return{value:e.display_name,label:e.display_name,lat:e.lat,lon:e.lon}},"json"):[{value:"no-data",label:"No Results."}],l[i]=t,n(t)})},select:function(e,t){if("no-data"===t.item.value)return!1;var n=L.latLng(t.item.lat,t.item.lon);r.panTo(n),o.setLatLng(n),f(n)},create:function(e,t){I(this).autocomplete("widget").addClass("csf-map-ui-autocomplate")}});var d=function(){var e=L.latLng(i.val(),s.val());r.panTo(e),o.setLatLng(e)};i.on("change",d),s.on("change",d)}})},I.fn.csf_field_link=function(){return this.each(function(){var s=I(this),e=s.find(".csf--link"),a=s.find(".csf--add"),c=s.find(".csf--edit"),r=s.find(".csf--remove"),o=s.find(".csf--result"),t=T.helper.uid("csf-wplink-textarea-");a.on("click",function(e){e.preventDefault(),_.wpLink.open(t)}),c.on("click",function(e){e.preventDefault(),a.trigger("click"),I("#wp-link-url").val(s.find(".csf--url").val()),I("#wp-link-text").val(s.find(".csf--text").val()),I("#wp-link-target").prop("checked","_blank"===s.find(".csf--target").val())}),r.on("click",function(e){e.preventDefault(),s.find(".csf--url").val("").trigger("change"),s.find(".csf--text").val(""),s.find(".csf--target").val(""),a.removeClass("hidden"),c.addClass("hidden"),r.addClass("hidden"),o.parent().addClass("hidden")}),e.attr("id",t).on("change",function(){var e=_.wpLink.getAttrs(),t=e.href,n=I("#wp-link-text").val(),i=e.target?e.target:"";s.find(".csf--url").val(t).trigger("change"),s.find(".csf--text").val(n),s.find(".csf--target").val(i),o.html('{url:"'+t+'", text:"'+n+'", target:"'+i+'"}'),a.addClass("hidden"),c.removeClass("hidden"),r.removeClass("hidden"),o.parent().removeClass("hidden")})})},I.fn.csf_field_media=function(){return this.each(function(){var i,s=I(this),a=s.find(".csf--button"),c=s.find(".csf--remove"),r=a.data("library")&&a.data("library").split(",")||"",o=!!s.hasClass("csf-assign-field-background")&&s.closest(".csf-field-background").find(".csf--auto-attributes");a.on("click",function(e){e.preventDefault(),void 0!==_.wp&&_.wp.media&&_.wp.media.gallery&&(i||(i=_.wp.media({library:{type:r}})).on("select",function(){var e,t=i.state().get("selection").first().attributes,n=a.data("preview-size")||"thumbnail";r.length&&-1===r.indexOf(t.subtype)&&-1===r.indexOf(t.type)||(s.find(".csf--id").val(t.id),s.find(".csf--width").val(t.width),s.find(".csf--height").val(t.height),s.find(".csf--alt").val(t.alt),s.find(".csf--title").val(t.title),s.find(".csf--description").val(t.description),e=void 0!==t.sizes&&void 0!==t.sizes.thumbnail&&"thumbnail"===n?t.sizes.thumbnail.url:void 0!==t.sizes&&void 0!==t.sizes.full?t.sizes.full.url:"image"===t.type?t.url:t.icon,console.log(t),o&&o.removeClass("csf--attributes-hidden"),c.removeClass("hidden"),s.find(".csf--preview").removeClass("hidden"),s.find(".csf--src").attr("src",e),s.find(".csf--thumbnail").val(e),s.find(".csf--url").val(t.url).trigger("change"))}),i.open())}),c.on("click",function(e){e.preventDefault(),o&&o.addClass("csf--attributes-hidden"),c.addClass("hidden"),s.find("input").val(""),s.find(".csf--preview").addClass("hidden"),s.find(".csf--url").trigger("change")})})},I.fn.csf_field_repeater=function(){return this.each(function(){var e=I(this),t=e.children(".csf-fieldset"),n=t.length?t:e,c=n.children(".csf-repeater-wrapper"),i=n.children(".csf-repeater-hidden"),r=n.children(".csf-repeater-max"),o=n.children(".csf-repeater-min"),f=c.data("field-id"),l=parseInt(c.data("max")),s=parseInt(c.data("min"));c.children(".csf-repeater-item").children(".csf-repeater-content").csf_reload_script(),c.sortable({axis:"y",handle:".csf-repeater-sort",helper:"original",cursor:"move",placeholder:"widget-placeholder",update:function(e,t){T.helper.name_nested_replace(c.children(".csf-repeater-item"),f),c.csf_customizer_refresh(),t.item.csf_reload_script_retry()}}),n.children(".csf-repeater-add").on("click",function(e){e.preventDefault();var t=c.children(".csf-repeater-item").length;if(o.hide(),l&&l<t+1)r.show();else{var n=i.csf_clone(!0);n.removeClass("csf-repeater-hidden"),n.find(':input[name!="_pseudo"]').each(function(){this.name=this.name.replace("___","").replace(f+"[0]",f+"["+t+"]")}),c.append(n),n.children(".csf-repeater-content").csf_reload_script(),c.csf_customizer_refresh(),c.csf_customizer_listen({closest:!0})}});var a=function(e){e.preventDefault();var t=c.children(".csf-repeater-item").length;if(o.hide(),l&&l<t+1)r.show();else{var n=I(this).parent().parent().parent(),i=n.children(".csf-repeater-content").csf_clone(),s=n.children(".csf-repeater-helper").csf_clone(!0),a=I('<div class="csf-repeater-item" />');a.append(i),a.append(s),c.children().eq(n.index()).after(a),a.children(".csf-repeater-content").csf_reload_script(),T.helper.name_nested_replace(c.children(".csf-repeater-item"),f),c.csf_customizer_refresh(),c.csf_customizer_listen({closest:!0})}};c.children(".csf-repeater-item").children(".csf-repeater-helper").on("click",".csf-repeater-clone",a),n.children(".csf-repeater-hidden").children(".csf-repeater-helper").on("click",".csf-repeater-clone",a);var d=function(e){e.preventDefault();var t=c.children(".csf-repeater-item").length;r.hide(),o.hide(),s&&t-1<s?o.show():(I(this).closest(".csf-repeater-item").remove(),T.helper.name_nested_replace(c.children(".csf-repeater-item"),f),c.csf_customizer_refresh())};c.children(".csf-repeater-item").children(".csf-repeater-helper").on("click",".csf-repeater-remove",d),n.children(".csf-repeater-hidden").children(".csf-repeater-helper").on("click",".csf-repeater-remove",d)})},I.fn.csf_field_slider=function(){return this.each(function(){var e=I(this),n=e.find("input"),t=e.find(".csf-slider-ui"),i=n.data(),s=n.val()||0;t.hasClass("ui-slider")&&t.empty(),t.slider({range:"min",value:s,min:i.min||0,max:i.max||100,step:i.step||1,slide:function(e,t){n.val(t.value).trigger("change")}}),n.on("keyup",function(){t.slider("value",n.val())})})},I.fn.csf_field_sortable=function(){return this.each(function(){var n=I(this).find(".csf-sortable");n.sortable({axis:"y",helper:"original",cursor:"move",placeholder:"widget-placeholder",update:function(e,t){n.csf_customizer_refresh()}}),n.find(".csf-sortable-content").csf_reload_script()})},I.fn.csf_field_sorter=function(){return this.each(function(){var i=I(this),e=i.find(".csf-enabled"),t=i.find(".csf-disabled"),n=!!t.length&&t;e.sortable({connectWith:n,placeholder:"ui-sortable-placeholder",update:function(e,t){var n=t.item.find("input");t.item.parent().hasClass("csf-enabled")?n.attr("name",n.attr("name").replace("disabled","enabled")):n.attr("name",n.attr("name").replace("enabled","disabled")),i.csf_customizer_refresh()}}),n&&n.sortable({connectWith:e,placeholder:"ui-sortable-placeholder",update:function(e,t){i.csf_customizer_refresh()}})})},I.fn.csf_field_spinner=function(){return this.each(function(){var e=I(this),n=e.find("input"),t=e.find(".ui-button"),i=n.data();t.length&&t.remove(),n.spinner({min:i.min||0,max:i.max||100,step:i.step||1,create:function(e,t){i.unit&&n.after('<span class="ui-button csf--unit">'+i.unit+"</span>")},spin:function(e,t){n.val(t.value).trigger("change")}})})},I.fn.csf_field_switcher=function(){return this.each(function(){var n=I(this).find(".csf--switcher");n.on("click",function(){var e=0,t=n.find("input");n.hasClass("csf--active")?n.removeClass("csf--active"):(e=1,n.addClass("csf--active")),t.val(e).trigger("change")})})},I.fn.csf_field_tabbed=function(){return this.each(function(){var e=I(this),t=e.find(".csf-tabbed-nav a"),s=e.find(".csf-tabbed-content");s.eq(0).csf_reload_script(),t.on("click",function(e){e.preventDefault();var t=I(this),n=t.index(),i=s.eq(n);t.addClass("csf-tabbed-active").siblings().removeClass("csf-tabbed-active"),i.csf_reload_script(),i.removeClass("hidden").siblings().addClass("hidden")})})},I.fn.csf_field_typography=function(){return this.each(function(){var j=this,L=I(this),i=[],A=csf_typography_json.webfonts,t=csf_typography_json.googlestyles,q=csf_typography_json.defaultstyles;j.sanitize_subset=function(e){return e=(e=e.replace("-ext"," Extended")).charAt(0).toUpperCase()+e.slice(1)},j.sanitize_style=function(e){return t[e]?t[e]:e},j.load_google_font=function(e,t,n){e&&"object"==typeof WebFont&&(t=t?t.replace("normal",""):"",n=n?n.replace("normal",""):"",(t||n)&&(e=e+":"+t+n),-1===i.indexOf(e)&&WebFont.load({google:{families:[e]}}),i.push(e))},j.append_select_options=function(e,t,s,a,c){e.find("option").not(":first").remove();var r="";I.each(t,function(e,t){var n,i=t;n=c?s&&-1!==s.indexOf(t)?" selected":"":s&&s===t?" selected":"","subset"===a?i=j.sanitize_subset(t):"style"===a&&(i=j.sanitize_style(t)),r+='<option value="'+t+'"'+n+">"+i+"</option>"}),e.append(r).trigger("csf.change").trigger("chosen:updated")},j.init=function(){var l=[],e=L.find(".csf--typography"),d=L.find(".csf--type"),h=L.find(".csf--block-font-style"),v=e.data("unit"),g=e.data("line-height-unit"),t=e.data("exclude")?e.data("exclude").split(","):[];L.find(".csf--chosen").length&&L.find("select").each(function(){var e=I(this),t=e.parent().find(".chosen-container");t.length&&t.remove(),e.chosen({allow_single_deselect:!0,disable_search_threshold:15,width:"100%"})});var m=L.find(".csf--font-family"),i=m.val();m.find("option").not(":first-child").remove();var s="";I.each(A,function(n,e){t&&-1!==t.indexOf(n)||(s+='<optgroup label="'+e.label+'">',I.each(e.fonts,function(e,t){s+='<option value="'+(t="object"==typeof t?e:t)+'" data-type="'+n+'"'+(t===i?" selected":"")+">"+t+"</option>"}),s+="</optgroup>")}),m.append(s).trigger("chosen:updated");var p=L.find(".csf--block-font-style");if(p.length){var u=L.find(".csf--font-style-select"),_=u.val()?u.val().replace(/normal/g,""):"";u.on("change csf.change",function(e){var t=u.val();!t&&l&&-1===l.indexOf("normal")&&(t=l[0]);var n=t&&"italic"!==t&&"normal"===t?"normal":"",i=t&&"italic"!==t&&"normal"!==t?t.replace("italic",""):n,s=t&&"italic"===t.substr(-6)?"italic":"";L.find(".csf--font-weight").val(i),L.find(".csf--font-style").val(s)});var b=L.find(".csf--block-extra-styles");if(b.length)var y=L.find(".csf--extra-styles"),w=y.val()}var C=L.find(".csf--block-subset");if(C.length)var k=L.find(".csf--subset"),x=k.val(),z=k.data("multiple")||!1;var D=L.find(".csf--block-backup-font-family");m.on("change csf.change",function(e){C.length&&C.addClass("hidden"),b.length&&b.addClass("hidden"),D.length&&D.addClass("hidden");var t=m.find(":selected"),n=t.val(),i=t.data("type");if(i&&n){if("google"!==i&&"custom"!==i||!D.length||D.removeClass("hidden"),p.length){var s=q;"google"===i&&A[i].fonts[n][0]?s=A[i].fonts[n][0]:"custom"===i&&A[i].fonts[n]&&(s=A[i].fonts[n]);var a=-1!==(l=s).indexOf("normal")?"normal":s[0],c=_&&-1!==s.indexOf(_)?_:a;j.append_select_options(u,s,c,"style"),_=!1,p.removeClass("hidden"),"google"===i&&b.length&&1<s.length&&(j.append_select_options(y,s,w,"style",!0),w=!1,b.removeClass("hidden"))}if("google"===i&&C.length&&A[i].fonts[n][1]){var r=A[i].fonts[n][1],o=r.length<2&&"latin"!==r[0]?r[0]:"",f=x&&-1!==r.indexOf(x)?x:o;f=z&&x?x:f,j.append_select_options(k,r,f,"subset",z),x=!1,C.removeClass("hidden")}}else h.find(":input").val(""),C.length&&(k.find("option").not(":first-child").remove(),k.trigger("chosen:updated")),p.length&&(u.find("option").not(":first-child").remove(),u.trigger("chosen:updated"));d.val(i)}).trigger("csf.change");var O=L.find(".csf--block-preview");if(O.length){var S=L.find(".csf--preview");L.on("change",T.helper.debounce(function(e){O.removeClass("hidden");var t=m.val(),n=L.find(".csf--font-weight").val(),i=L.find(".csf--font-style").val(),s=L.find(".csf--font-size").val(),a=L.find(".csf--font-variant").val(),c=L.find(".csf--line-height").val(),r=L.find(".csf--text-align").val(),o=L.find(".csf--text-transform").val(),f=L.find(".csf--text-decoration").val(),l=L.find(".csf--color").val(),d=L.find(".csf--word-spacing").val(),h=L.find(".csf--letter-spacing").val(),p=L.find(".csf--custom-style").val();"google"===L.find(".csf--type").val()&&j.load_google_font(t,n,i);var u={};t&&(u.fontFamily=t),n&&(u.fontWeight=n),i&&(u.fontStyle=i),a&&(u.fontVariant=a),s&&(u.fontSize=s+v),c&&(u.lineHeight=c+g),h&&(u.letterSpacing=h+v),d&&(u.wordSpacing=d+v),r&&(u.textAlign=r),o&&(u.textTransform=o),f&&(u.textDecoration=f),l&&(u.color=l),S.removeAttr("style"),p&&S.attr("style",p),S.css(u)},100)),O.on("click",function(){S.toggleClass("csf--black-background");var e=O.find(".csf--toggle");e.hasClass("fa-toggle-off")?e.removeClass("fa-toggle-off").addClass("fa-toggle-on"):e.removeClass("fa-toggle-on").addClass("fa-toggle-off")}),O.hasClass("hidden")||L.trigger("change")}},j.init()})},I.fn.csf_field_upload=function(){return this.each(function(){var t,e=I(this),n=e.find("input"),i=e.find(".csf--button"),s=e.find(".csf--remove"),a=e.find(".csf--preview"),c=e.find(".csf--src"),r=i.data("library")&&i.data("library").split(",")||"";i.on("click",function(e){e.preventDefault(),void 0!==_.wp&&_.wp.media&&_.wp.media.gallery&&(t||(t=_.wp.media({library:{type:r}})).on("select",function(){var e=t.state().get("selection").first().attributes;r.length&&-1===r.indexOf(e.subtype)&&-1===r.indexOf(e.type)||n.val(e.url).trigger("change")}),t.open())}),s.on("click",function(e){e.preventDefault(),n.val("").trigger("change")}),n.on("change",function(e){var t=n.val();t?s.removeClass("hidden"):s.addClass("hidden"),a.length&&(-1!==I.inArray(t.split(".").pop().toLowerCase(),["jpg","jpeg","gif","png","svg","webp"])?(a.removeClass("hidden"),c.attr("src",t)):a.addClass("hidden"))})})},I.fn.csf_field_wp_editor=function(){return this.each(function(){if(void 0!==_.wp.editor&&void 0!==_.tinyMCEPreInit&&void 0!==_.tinyMCEPreInit.mceInit.csf_wp_editor){var e=I(this),t=e.find(".csf-wp-editor"),n=e.find("textarea");(e.find(".wp-editor-wrap").length||e.find(".mce-container").length)&&(t.empty(),t.append(n),n.css("display",""));var i=T.helper.uid("csf-editor-");n.attr("id",i);var s={tinymce:_.tinyMCEPreInit.mceInit.csf_wp_editor,quicktags:_.tinyMCEPreInit.qtInit.csf_wp_editor},a=t.data("editor-settings"),c=wp.oldEditor?wp.oldEditor:wp.editor;c&&c.hasOwnProperty("autop")&&(wp.editor.autop=c.autop,wp.editor.removep=c.removep,wp.editor.initialize=c.initialize);s.tinymce=I.extend({},s.tinymce,{selector:"#"+i,setup:function(t){t.on("change keyup",function(){var e=a.wpautop?t.getContent():wp.editor.removep(t.getContent());n.val(e).trigger("change")})}}),!1===a.tinymce&&(s.tinymce=!1,t.addClass("csf-no-tinymce")),!1===a.quicktags&&(s.quicktags=!1,t.addClass("csf-no-quicktags"));var r=setInterval(function(){e.is(":visible")&&(_.wp.editor.initialize(i,s),clearInterval(r))});if(a.media_buttons&&_.csf_media_buttons){var o=t.find(".wp-media-buttons");if(o.length)o.find(".csf-shortcode-button").data("editor-id",i);else{var f=I(_.csf_media_buttons);f.find(".csf-shortcode-button").data("editor-id",i),t.prepend(f)}}}})},I.fn.csf_confirm=function(){return this.each(function(){I(this).on("click",function(e){var t=I(this).data("confirm")||_.csf_vars.i18n.confirm;if(!confirm(t))return e.preventDefault(),!1;T.vars.is_confirm=!0,T.vars.form_modified=!1})})},I.fn.serializeObject=function(){var s={};return I.each(this.serializeArray(),function(e,t){var n=t.name,i=t.value;s[n]=s[n]===y?i:I.isArray(s[n])?s[n].concat(i):[s[n],i]}),s},I.fn.csf_save=function(){return this.each(function(){var i,s=I(this),c=I(".csf-save"),r=I(".csf-options"),o=!1;s.on("click",function(e){if(!o){var t=s.data("save"),n=s.val();c.attr("value",t),s.hasClass("csf-save-ajax")?(e.preventDefault(),r.addClass("csf-saving"),c.prop("disabled",!0),_.wp.ajax.post("csf_"+r.data("unique")+"_ajax_save",{data:I("#csf-form").serializeJSONCSF()}).done(function(e){if(I(".csf-error").remove(),Object.keys(e.errors).length){var a='<i class="csf-label-error csf-error">!</i>';I.each(e.errors,function(e,t){var n=I('[data-depend-id="'+e+'"]'),i=I('a[href="#tab='+n.closest(".csf-section").data("section-id")+'"]'),s=i.closest(".csf-tab-item");n.closest(".csf-fieldset").append('<p class="csf-error csf-error-text">'+t+"</p>"),i.find(".csf-error").length||i.append(a),s.find(".csf-arrow .csf-error").length||s.find(".csf-arrow").append(a)})}r.removeClass("csf-saving"),c.prop("disabled",!1).attr("value",n),o=!1,T.vars.form_modified=!1,T.vars.$form_warning.hide(),clearTimeout(i);var t=I(".csf-form-success");t.empty().append(e.notice).fadeIn("fast",function(){i=setTimeout(function(){t.fadeOut("fast")},1e3)})}).fail(function(e){alert(e.error)})):T.vars.form_modified=!1}o=!0})})},I.fn.csf_options=function(){return this.each(function(){var e=I(this),t=e.find(".csf-content"),n=e.find(".csf-form-success"),i=e.find(".csf-form-warning"),s=e.find(".csf-header .csf-save");(T.vars.$form_warning=i).length&&(_.onbeforeunload=function(){return!!T.vars.form_modified||y},t.on("change keypress",":input",function(){T.vars.form_modified||(n.hide(),i.fadeIn("fast"),T.vars.form_modified=!0)})),n.hasClass("csf-form-show")&&setTimeout(function(){n.fadeOut("fast")},1e3),I(b).keydown(function(e){if((e.ctrlKey||e.metaKey)&&83===e.which)return s.trigger("click"),e.preventDefault(),!1})})},I.fn.csf_taxonomy=function(){return this.each(function(){var e=I(this),t=e.parents("form");if("addtag"===t.attr("id")){var n=t.find("#submit"),i=e.find(".csf-field").csf_clone();n.on("click",function(){t.find(".form-required").hasClass("form-invalid")||(e.data("inited",!1),e.empty(),e.html(i),i=i.csf_clone(),e.csf_reload_script())})}})},I.fn.csf_shortcode=function(){var m=this;return m.shortcode_parse=function(e,n){var i="";return I.each(e,function(e,t){i+="["+(n=n||e),I.each(t,function(e,t){"content"===e?(i+="]",i+=t,i+="[/"+n):i+=m.shortcode_tags(e,t)}),i+="]"}),i},m.shortcode_tags=function(e,t){var n="";return""!==t&&("object"!=typeof t||I.isArray(t)?n+=" "+e.replace("-","_")+'="'+t.toString()+'"':I.each(t,function(e,t){switch(e){case"background-image":t=t.url?t.url:""}""!==t&&(n+=" "+e.replace("-","_")+'="'+t.toString()+'"')})),n},m.insertAtChars=function(e,t){var n=void 0!==e[0].name?e[0]:e;return n.value.length&&void 0!==n.selectionStart?(n.focus(),n.value.substring(0,n.selectionStart)+t+n.value.substring(n.selectionEnd,n.value.length)):(n.focus(),t)},m.send_to_editor=function(e,t){var n;if("undefined"!=typeof tinymce&&(n=tinymce.get(t)),n&&!n.isHidden())n.execCommand("mceInsertContent",!1,e);else{var i=I("#"+t);i.val(m.insertAtChars(i,e)).trigger("change")}},this.each(function(){var c,r,o,n,f,l,d,s,h,p=I(this),i=p.find(".csf-modal-load"),u=(p.find(".csf-modal-content"),p.find(".csf-modal-insert")),a=p.find(".csf-modal-loading"),t=p.find("select"),v=p.data("modal-id"),g=p.data("nonce");I(b).on("click",'.csf-shortcode-button[data-modal-id="'+v+'"]',function(e){e.preventDefault(),h=I(this),c=h.data("editor-id")||!1,r=h.data("target-id")||!1,o=h.data("gutenberg-id")||!1,p.removeClass("hidden"),p.hasClass("csf-shortcode-single")&&f===y&&t.trigger("change")}),t.on("change",function(){var e=I(this),t=e.find(":selected");n=e.val(),f=t.data("shortcode"),l=t.data("view")||"normal",d=t.data("group")||f,i.empty(),n?(a.show(),_.wp.ajax.post("csf-get-shortcode-"+v,{shortcode_key:n,nonce:g}).done(function(e){a.hide();var t=I(e.content).appendTo(i);u.parent().removeClass("hidden"),s=t.find(".csf--repeat-shortcode").csf_clone(),t.csf_reload_script(),t.find(".csf-fields").csf_reload_script()})):u.parent().addClass("hidden")}),u.on("click",function(e){if(e.preventDefault(),!u.prop("disabled")&&!u.attr("disabled")){var i="",t=p.find(".csf-field:not(.csf-depend-on)").find(":input:not(.ignore)").serializeObjectCSF();switch(l){case"contents":var n=f?t[f]:t;I.each(n,function(e,t){var n=f||e;i+="["+n+"]"+t+"[/"+n+"]"});break;case"group":i+="["+f,I.each(t[f],function(e,t){i+=m.shortcode_tags(e,t)}),i+="]",i+=m.shortcode_parse(t[d],d),i+="[/"+f+"]";break;case"repeater":i+=m.shortcode_parse(t[d],d);break;default:i+=m.shortcode_parse(t)}if(i=""===i?"["+f+"]":i,o){var s=_.csf_gutenberg_props.attributes.hasOwnProperty("shortcode")?_.csf_gutenberg_props.attributes.shortcode:"";_.csf_gutenberg_props.setAttributes({shortcode:s+i})}else if(c)m.send_to_editor(i,c);else{var a=r?I(r):h.parent().find("textarea");a.val(m.insertAtChars(a,i)).trigger("change")}p.addClass("hidden")}}),p.on("click",".csf--repeat-button",function(e){e.preventDefault();var t=p.find(".csf--repeatable"),n=s.csf_clone(),i=n.find(".csf-repeat-remove");n.appendTo(t);n.find(".csf-fields").csf_reload_script(),T.helper.name_nested_replace(p.find(".csf--repeat-shortcode"),d),i.on("click",function(){n.remove(),T.helper.name_nested_replace(p.find(".csf--repeat-shortcode"),d)})}),p.on("click",".csf-modal-close, .csf-modal-overlay",function(){p.addClass("hidden")})})},"function"==typeof Color&&(Color.prototype.toString=function(){if(this._alpha<1)return this.toCSS("rgba",this._alpha).replace(/\s+/g,"");var e=parseInt(this._color,10).toString(16);if(this.error)return"";if(e.length<6)for(var t=6-e.length-1;0<=t;t--)e="0"+e;return"#"+e}),T.funcs.parse_color=function(e){var t=e.replace(/\s+/g,""),n=-1!==t.indexOf("rgba")?parseFloat(100*t.replace(/^.*,(.+)\)/,"$1")):100;return{value:t,transparent:n,rgba:n<100}},I.fn.csf_color=function(){return this.each(function(){var c,r=I(this),o=T.funcs.parse_color(r.val()),e=!_.csf_vars.color_palette.length||_.csf_vars.color_palette;r.hasClass("wp-color-picker")&&r.closest(".wp-picker-container").after(r).remove(),r.wpColorPicker({palettes:e,change:function(e,t){var n=t.color.toString();c.removeClass("csf--transparent-active"),c.find(".csf--transparent-offset").css("background-color",n),r.val(n).trigger("change")},create:function(){c=r.closest(".wp-picker-container");var i=r.data("a8cIris"),e=I('<div class="csf--transparent-wrap"><div class="csf--transparent-slider"></div><div class="csf--transparent-offset"></div><div class="csf--transparent-text"></div><div class="csf--transparent-button">transparent <i class="fas fa-toggle-off"></i></div></div>').appendTo(c.find(".wp-picker-holder")),s=e.find(".csf--transparent-slider"),a=e.find(".csf--transparent-text"),n=e.find(".csf--transparent-offset"),t=e.find(".csf--transparent-button");"transparent"===r.val()&&c.addClass("csf--transparent-active"),t.on("click",function(){"transparent"!==r.val()?(r.val("transparent").trigger("change").removeClass("iris-error"),c.addClass("csf--transparent-active")):(r.val(i._color.toString()).trigger("change"),c.removeClass("csf--transparent-active"))}),s.slider({value:o.transparent,step:1,min:0,max:100,slide:function(e,t){var n=parseFloat(t.value/100);i._color._alpha=n,r.wpColorPicker("color",i._color.toString()),a.text(1===n||0===n?"":n)},create:function(){var e=parseFloat(o.transparent/100),t=e<1?e:"";a.text(t),n.css("background-color",o.value),c.on("click",".wp-picker-clear",function(){i._color._alpha=1,a.text(""),s.slider("option","value",100),c.removeClass("csf--transparent-active"),r.trigger("change")}),c.on("click",".wp-picker-default",function(){var e=T.funcs.parse_color(r.data("default-color")),t=parseFloat(e.transparent/100),n=t<1?t:"";i._color._alpha=t,a.text(n),s.slider("option","value",e.transparent),"transparent"===e.value&&(r.removeClass("iris-error"),c.addClass("csf--transparent-active"))})}})}})})},I.fn.csf_chosen=function(){return this.each(function(){var a=I(this),e=a.parent().find(".chosen-container"),t=a.hasClass("csf-chosen-sortable")||!1,n=a.hasClass("csf-chosen-ajax")||!1,i=a.attr("multiple")||!1,s=i?"100%":"auto",c=I.extend({allow_single_deselect:!0,disable_search_threshold:10,width:s,no_results_text:_.csf_vars.i18n.no_results_text},a.data("chosen-settings"));if(e.length&&e.remove(),n){var r=I.extend({data:{type:"post",nonce:""},allow_single_deselect:!0,disable_search_threshold:-1,width:"100%",min_length:3,type_delay:500,typing_text:_.csf_vars.i18n.typing_text,searching_text:_.csf_vars.i18n.searching_text,no_results_text:_.csf_vars.i18n.no_results_text},a.data("chosen-settings"));a.CSFAjaxChosen(r)}else a.chosen(c);if(i){var o=a.parent().find(".csf-hide-select"),f=o.val()||[];a.on("change",function(e,t){t&&t.selected?o.append('<option value="'+t.selected+'" selected="selected">'+t.selected+"</option>"):t&&t.deselected&&o.find('option[value="'+t.deselected+'"]').remove(),_.wp.customize!==y&&0===o.children().length&&o.data("customize-setting-link")&&_.wp.customize.control(o.data("customize-setting-link")).setting.set(""),o.trigger("change")}),a.CSFChosenOrder(f,!0)}if(t){var l=a.parent().find(".chosen-container").find(".chosen-choices");l.bind("mousedown",function(e){I(e.target).is("span")&&e.stopPropagation()}),l.sortable({items:"li:not(.search-field)",helper:"orginal",cursor:"move",placeholder:"search-choice-placeholder",start:function(e,t){t.placeholder.width(t.item.innerWidth()),t.placeholder.height(t.item.innerHeight())},update:function(e,t){var i="",s=a.data("chosen"),n=a.parent().find(".csf-hide-select");l.find(".search-choice-close").each(function(){var n=I(this).data("option-array-index");I.each(s.results_data,function(e,t){t.array_index===n&&(i+='<option value="'+t.value+'" selected>'+t.value+"</option>")})}),n.children().remove(),n.append(i),n.trigger("change")}})}})},I.fn.csf_checkbox=function(){return this.each(function(){var e=I(this),t=e.find(".csf--input"),n=e.find(".csf--checkbox");n.on("click",function(){t.val(Number(n.prop("checked"))).trigger("change")})})},I.fn.csf_siblings=function(){return this.each(function(){var t=I(this),e=t.find(".csf--sibling"),n=t.data("multiple")||!1;e.on("click",function(){var e=I(this);n?e.hasClass("csf--active")?(e.removeClass("csf--active"),e.find("input").prop("checked",!1).trigger("change")):(e.addClass("csf--active"),e.find("input").prop("checked",!0).trigger("change")):(t.find("input").prop("checked",!1),e.find("input").prop("checked",!0).trigger("change"),e.addClass("csf--active").siblings().removeClass("csf--active"))})})},I.fn.csf_help=function(){return this.each(function(){var e,t,n=I(this);n.on({mouseenter:function(){e=I('<div class="csf-tooltip"></div>').html(n.find(".csf-help-text").html()).appendTo("body"),t=T.vars.is_rtl?n.offset().left+24:n.offset().left-e.outerWidth(),e.css({top:n.offset().top-(e.outerHeight()/2-14),left:t})},mouseleave:function(){e!==y&&e.remove()}})})},I.fn.csf_customizer_refresh=function(){return this.each(function(){var e=I(this),t=e.closest(".csf-customize-complex");if(t.length){var n=t.data("unique-id");if(n===y)return;var i=t.find(":input"),s=t.data("option-id"),a=i.serializeObjectCSF(),c=!I.isEmptyObject(a)&&a[n]&&a[n][s]?a[n][s]:"",r=_.wp.customize.control(n+"["+s+"]");r.setting._value=null,r.setting.set(c)}else e.find(":input").first().trigger("change");I(b).trigger("csf-customizer-refresh",e)})},I.fn.csf_customizer_listen=function(e){var t=I.extend({closest:!1},e);return this.each(function(){if(_.wp.customize!==y){var n=t.closest?I(this).closest(".csf-customize-complex"):I(this),e=n.find(":input"),i=n.data("unique-id"),s=n.data("option-id");i!==y&&e.on("change keyup",function(){var e=n.find(":input").serializeObjectCSF(),t=!I.isEmptyObject(e)&&e[i]&&e[i][s]?e[i][s]:"";_.wp.customize.control(i+"["+s+"]").setting.set(t)})}})},I(b).on("expanded",".control-section",function(){var e=I(this);if(e.hasClass("open")&&!e.data("inited")){var t=e.find(".csf-customize-field"),n=e.find(".csf-customize-complex");t.length&&(e.csf_dependency(),t.csf_reload_script({dependency:!1}),n.csf_customizer_listen()),e.data("inited",!0)}}),T.vars.$window.on("resize csf.resize",T.helper.debounce(function(e){(-1<navigator.userAgent.indexOf("AppleWebKit/")?T.vars.$window.width():_.innerWidth)<=782&&!T.vars.onloaded&&(I(".csf-section").csf_reload_script(),T.vars.onloaded=!0)},200)).trigger("csf.resize"),I.fn.csf_widgets=function(){return this.each(function(){I(b).on("widget-added widget-updated",function(e,t){var n=t.find(".csf-fields");n.length&&n.csf_reload_script()}),I(b).on("click",".widget-top",function(e){var t=I(this).parent().find(".csf-fields");t.length&&t.csf_reload_script()}),I(".widgets-sortables, .control-section-sidebar").on("sortstop",function(e,t){t.item.find(".csf-fields").csf_reload_script_retry()})})},I.fn.csf_nav_menu=function(){return this.each(function(){var e=I(this);e.on("click","a.item-edit",function(){I(this).closest("li.menu-item").find(".csf-fields").csf_reload_script()}),e.on("sortstop",function(e,t){t.item.find(".csf-fields").csf_reload_script_retry()})})},I.fn.csf_reload_script_retry=function(){return this.each(function(){var e=I(this);e.data("inited")&&e.children(".csf-field-wp_editor").csf_field_wp_editor()})},I.fn.csf_reload_script=function(e){var t=I.extend({dependency:!0},e);return this.each(function(){var e=I(this);e.data("inited")||(e.children(".csf-field-accordion").csf_field_accordion(),e.children(".csf-field-backup").csf_field_backup(),e.children(".csf-field-background").csf_field_background(),e.children(".csf-field-code_editor").csf_field_code_editor(),e.children(".csf-field-date").csf_field_date(),e.children(".csf-field-datetime").csf_field_datetime(),e.children(".csf-field-fieldset").csf_field_fieldset(),e.children(".csf-field-gallery").csf_field_gallery(),e.children(".csf-field-group").csf_field_group(),e.children(".csf-field-icon").csf_field_icon(),e.children(".csf-field-link").csf_field_link(),e.children(".csf-field-media").csf_field_media(),e.children(".csf-field-map").csf_field_map(),e.children(".csf-field-repeater").csf_field_repeater(),e.children(".csf-field-slider").csf_field_slider(),e.children(".csf-field-sortable").csf_field_sortable(),e.children(".csf-field-sorter").csf_field_sorter(),e.children(".csf-field-spinner").csf_field_spinner(),e.children(".csf-field-switcher").csf_field_switcher(),e.children(".csf-field-tabbed").csf_field_tabbed(),e.children(".csf-field-typography").csf_field_typography(),e.children(".csf-field-upload").csf_field_upload(),e.children(".csf-field-wp_editor").csf_field_wp_editor(),e.children(".csf-field-border").find(".csf-color").csf_color(),e.children(".csf-field-background").find(".csf-color").csf_color(),e.children(".csf-field-color").find(".csf-color").csf_color(),e.children(".csf-field-color_group").find(".csf-color").csf_color(),e.children(".csf-field-link_color").find(".csf-color").csf_color(),e.children(".csf-field-typography").find(".csf-color").csf_color(),e.children(".csf-field-select").find(".csf-chosen").csf_chosen(),e.children(".csf-field-checkbox").find(".csf-checkbox").csf_checkbox(),e.children(".csf-field-button_set").find(".csf-siblings").csf_siblings(),e.children(".csf-field-image_select").find(".csf-siblings").csf_siblings(),e.children(".csf-field-palette").find(".csf-siblings").csf_siblings(),e.children(".csf-field").find(".csf-help").csf_help(),t.dependency&&e.csf_dependency(),e.data("inited",!0),I(b).trigger("csf-reload-script",e))})},I(b).ready(function(){I(".csf-save").csf_save(),I(".csf-options").csf_options(),I(".csf-sticky-header").csf_sticky(),I(".csf-nav-options").csf_nav_options(),I(".csf-nav-metabox").csf_nav_metabox(),I(".csf-taxonomy").csf_taxonomy(),I(".csf-page-templates").csf_page_templates(),I(".csf-post-formats").csf_post_formats(),I(".csf-shortcode").csf_shortcode(),I(".csf-search").csf_search(),I(".csf-confirm").csf_confirm(),I(".csf-expand-all").csf_expand_all(),I(".csf-onload").csf_reload_script(),I("#widgets-editor").csf_widgets(),I("#widgets-right").csf_widgets(),I("#menu-to-edit").csf_nav_menu()})}(jQuery,window,document);
|
vendor/codestar-framework/assets/js/plugins.js
CHANGED
@@ -1,4 +1,2677 @@
|
|
1 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
*
|
3 |
* jQuery Chosen AJAX Autocomplete Library
|
4 |
*
|
1 |
+
/* flatpickr v4.6.9, @license MIT */
|
2 |
+
(function (global, factory) {
|
3 |
+
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
|
4 |
+
typeof define === 'function' && define.amd ? define(factory) :
|
5 |
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.flatpickr = factory());
|
6 |
+
}(this, (function () { 'use strict';
|
7 |
+
|
8 |
+
/*! *****************************************************************************
|
9 |
+
Copyright (c) Microsoft Corporation.
|
10 |
+
|
11 |
+
Permission to use, copy, modify, and/or distribute this software for any
|
12 |
+
purpose with or without fee is hereby granted.
|
13 |
+
|
14 |
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
15 |
+
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
16 |
+
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
17 |
+
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
18 |
+
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
19 |
+
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
20 |
+
PERFORMANCE OF THIS SOFTWARE.
|
21 |
+
***************************************************************************** */
|
22 |
+
|
23 |
+
var __assign = function() {
|
24 |
+
__assign = Object.assign || function __assign(t) {
|
25 |
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
26 |
+
s = arguments[i];
|
27 |
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
|
28 |
+
}
|
29 |
+
return t;
|
30 |
+
};
|
31 |
+
return __assign.apply(this, arguments);
|
32 |
+
};
|
33 |
+
|
34 |
+
function __spreadArrays() {
|
35 |
+
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
|
36 |
+
for (var r = Array(s), k = 0, i = 0; i < il; i++)
|
37 |
+
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
|
38 |
+
r[k] = a[j];
|
39 |
+
return r;
|
40 |
+
}
|
41 |
+
|
42 |
+
var HOOKS = [
|
43 |
+
"onChange",
|
44 |
+
"onClose",
|
45 |
+
"onDayCreate",
|
46 |
+
"onDestroy",
|
47 |
+
"onKeyDown",
|
48 |
+
"onMonthChange",
|
49 |
+
"onOpen",
|
50 |
+
"onParseConfig",
|
51 |
+
"onReady",
|
52 |
+
"onValueUpdate",
|
53 |
+
"onYearChange",
|
54 |
+
"onPreCalendarPosition",
|
55 |
+
];
|
56 |
+
var defaults = {
|
57 |
+
_disable: [],
|
58 |
+
allowInput: false,
|
59 |
+
allowInvalidPreload: false,
|
60 |
+
altFormat: "F j, Y",
|
61 |
+
altInput: false,
|
62 |
+
altInputClass: "form-control input",
|
63 |
+
animate: typeof window === "object" &&
|
64 |
+
window.navigator.userAgent.indexOf("MSIE") === -1,
|
65 |
+
ariaDateFormat: "F j, Y",
|
66 |
+
autoFillDefaultTime: true,
|
67 |
+
clickOpens: true,
|
68 |
+
closeOnSelect: true,
|
69 |
+
conjunction: ", ",
|
70 |
+
dateFormat: "Y-m-d",
|
71 |
+
defaultHour: 12,
|
72 |
+
defaultMinute: 0,
|
73 |
+
defaultSeconds: 0,
|
74 |
+
disable: [],
|
75 |
+
disableMobile: false,
|
76 |
+
enableSeconds: false,
|
77 |
+
enableTime: false,
|
78 |
+
errorHandler: function (err) {
|
79 |
+
return typeof console !== "undefined" && console.warn(err);
|
80 |
+
},
|
81 |
+
getWeek: function (givenDate) {
|
82 |
+
var date = new Date(givenDate.getTime());
|
83 |
+
date.setHours(0, 0, 0, 0);
|
84 |
+
// Thursday in current week decides the year.
|
85 |
+
date.setDate(date.getDate() + 3 - ((date.getDay() + 6) % 7));
|
86 |
+
// January 4 is always in week 1.
|
87 |
+
var week1 = new Date(date.getFullYear(), 0, 4);
|
88 |
+
// Adjust to Thursday in week 1 and count number of weeks from date to week1.
|
89 |
+
return (1 +
|
90 |
+
Math.round(((date.getTime() - week1.getTime()) / 86400000 -
|
91 |
+
3 +
|
92 |
+
((week1.getDay() + 6) % 7)) /
|
93 |
+
7));
|
94 |
+
},
|
95 |
+
hourIncrement: 1,
|
96 |
+
ignoredFocusElements: [],
|
97 |
+
inline: false,
|
98 |
+
locale: "default",
|
99 |
+
minuteIncrement: 5,
|
100 |
+
mode: "single",
|
101 |
+
monthSelectorType: "dropdown",
|
102 |
+
nextArrow: "<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M13.207 8.472l-7.854 7.854-0.707-0.707 7.146-7.146-7.146-7.148 0.707-0.707 7.854 7.854z' /></svg>",
|
103 |
+
noCalendar: false,
|
104 |
+
now: new Date(),
|
105 |
+
onChange: [],
|
106 |
+
onClose: [],
|
107 |
+
onDayCreate: [],
|
108 |
+
onDestroy: [],
|
109 |
+
onKeyDown: [],
|
110 |
+
onMonthChange: [],
|
111 |
+
onOpen: [],
|
112 |
+
onParseConfig: [],
|
113 |
+
onReady: [],
|
114 |
+
onValueUpdate: [],
|
115 |
+
onYearChange: [],
|
116 |
+
onPreCalendarPosition: [],
|
117 |
+
plugins: [],
|
118 |
+
position: "auto",
|
119 |
+
positionElement: undefined,
|
120 |
+
prevArrow: "<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M5.207 8.471l7.146 7.147-0.707 0.707-7.853-7.854 7.854-7.853 0.707 0.707-7.147 7.146z' /></svg>",
|
121 |
+
shorthandCurrentMonth: false,
|
122 |
+
showMonths: 1,
|
123 |
+
static: false,
|
124 |
+
time_24hr: false,
|
125 |
+
weekNumbers: false,
|
126 |
+
wrap: false,
|
127 |
+
};
|
128 |
+
|
129 |
+
var english = {
|
130 |
+
weekdays: {
|
131 |
+
shorthand: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
|
132 |
+
longhand: [
|
133 |
+
"Sunday",
|
134 |
+
"Monday",
|
135 |
+
"Tuesday",
|
136 |
+
"Wednesday",
|
137 |
+
"Thursday",
|
138 |
+
"Friday",
|
139 |
+
"Saturday",
|
140 |
+
],
|
141 |
+
},
|
142 |
+
months: {
|
143 |
+
shorthand: [
|
144 |
+
"Jan",
|
145 |
+
"Feb",
|
146 |
+
"Mar",
|
147 |
+
"Apr",
|
148 |
+
"May",
|
149 |
+
"Jun",
|
150 |
+
"Jul",
|
151 |
+
"Aug",
|
152 |
+
"Sep",
|
153 |
+
"Oct",
|
154 |
+
"Nov",
|
155 |
+
"Dec",
|
156 |
+
],
|
157 |
+
longhand: [
|
158 |
+
"January",
|
159 |
+
"February",
|
160 |
+
"March",
|
161 |
+
"April",
|
162 |
+
"May",
|
163 |
+
"June",
|
164 |
+
"July",
|
165 |
+
"August",
|
166 |
+
"September",
|
167 |
+
"October",
|
168 |
+
"November",
|
169 |
+
"December",
|
170 |
+
],
|
171 |
+
},
|
172 |
+
daysInMonth: [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31],
|
173 |
+
firstDayOfWeek: 0,
|
174 |
+
ordinal: function (nth) {
|
175 |
+
var s = nth % 100;
|
176 |
+
if (s > 3 && s < 21)
|
177 |
+
return "th";
|
178 |
+
switch (s % 10) {
|
179 |
+
case 1:
|
180 |
+
return "st";
|
181 |
+
case 2:
|
182 |
+
return "nd";
|
183 |
+
case 3:
|
184 |
+
return "rd";
|
185 |
+
default:
|
186 |
+
return "th";
|
187 |
+
}
|
188 |
+
},
|
189 |
+
rangeSeparator: " to ",
|
190 |
+
weekAbbreviation: "Wk",
|
191 |
+
scrollTitle: "Scroll to increment",
|
192 |
+
toggleTitle: "Click to toggle",
|
193 |
+
amPM: ["AM", "PM"],
|
194 |
+
yearAriaLabel: "Year",
|
195 |
+
monthAriaLabel: "Month",
|
196 |
+
hourAriaLabel: "Hour",
|
197 |
+
minuteAriaLabel: "Minute",
|
198 |
+
time_24hr: false,
|
199 |
+
};
|
200 |
+
|
201 |
+
var pad = function (number, length) {
|
202 |
+
if (length === void 0) { length = 2; }
|
203 |
+
return ("000" + number).slice(length * -1);
|
204 |
+
};
|
205 |
+
var int = function (bool) { return (bool === true ? 1 : 0); };
|
206 |
+
/* istanbul ignore next */
|
207 |
+
function debounce(fn, wait) {
|
208 |
+
var t;
|
209 |
+
return function () {
|
210 |
+
var _this = this;
|
211 |
+
clearTimeout(t);
|
212 |
+
t = setTimeout(function () { return fn.apply(_this, arguments); }, wait);
|
213 |
+
};
|
214 |
+
}
|
215 |
+
var arrayify = function (obj) {
|
216 |
+
return obj instanceof Array ? obj : [obj];
|
217 |
+
};
|
218 |
+
|
219 |
+
function toggleClass(elem, className, bool) {
|
220 |
+
if (bool === true)
|
221 |
+
return elem.classList.add(className);
|
222 |
+
elem.classList.remove(className);
|
223 |
+
}
|
224 |
+
function createElement(tag, className, content) {
|
225 |
+
var e = window.document.createElement(tag);
|
226 |
+
className = className || "";
|
227 |
+
content = content || "";
|
228 |
+
e.className = className;
|
229 |
+
if (content !== undefined)
|
230 |
+
e.textContent = content;
|
231 |
+
return e;
|
232 |
+
}
|
233 |
+
function clearNode(node) {
|
234 |
+
while (node.firstChild)
|
235 |
+
node.removeChild(node.firstChild);
|
236 |
+
}
|
237 |
+
function findParent(node, condition) {
|
238 |
+
if (condition(node))
|
239 |
+
return node;
|
240 |
+
else if (node.parentNode)
|
241 |
+
return findParent(node.parentNode, condition);
|
242 |
+
return undefined; // nothing found
|
243 |
+
}
|
244 |
+
function createNumberInput(inputClassName, opts) {
|
245 |
+
var wrapper = createElement("div", "numInputWrapper"), numInput = createElement("input", "numInput " + inputClassName), arrowUp = createElement("span", "arrowUp"), arrowDown = createElement("span", "arrowDown");
|
246 |
+
if (navigator.userAgent.indexOf("MSIE 9.0") === -1) {
|
247 |
+
numInput.type = "number";
|
248 |
+
}
|
249 |
+
else {
|
250 |
+
numInput.type = "text";
|
251 |
+
numInput.pattern = "\\d*";
|
252 |
+
}
|
253 |
+
if (opts !== undefined)
|
254 |
+
for (var key in opts)
|
255 |
+
numInput.setAttribute(key, opts[key]);
|
256 |
+
wrapper.appendChild(numInput);
|
257 |
+
wrapper.appendChild(arrowUp);
|
258 |
+
wrapper.appendChild(arrowDown);
|
259 |
+
return wrapper;
|
260 |
+
}
|
261 |
+
function getEventTarget(event) {
|
262 |
+
try {
|
263 |
+
if (typeof event.composedPath === "function") {
|
264 |
+
var path = event.composedPath();
|
265 |
+
return path[0];
|
266 |
+
}
|
267 |
+
return event.target;
|
268 |
+
}
|
269 |
+
catch (error) {
|
270 |
+
return event.target;
|
271 |
+
}
|
272 |
+
}
|
273 |
+
|
274 |
+
var doNothing = function () { return undefined; };
|
275 |
+
var monthToStr = function (monthNumber, shorthand, locale) { return locale.months[shorthand ? "shorthand" : "longhand"][monthNumber]; };
|
276 |
+
var revFormat = {
|
277 |
+
D: doNothing,
|
278 |
+
F: function (dateObj, monthName, locale) {
|
279 |
+
dateObj.setMonth(locale.months.longhand.indexOf(monthName));
|
280 |
+
},
|
281 |
+
G: function (dateObj, hour) {
|
282 |
+
dateObj.setHours(parseFloat(hour));
|
283 |
+
},
|
284 |
+
H: function (dateObj, hour) {
|
285 |
+
dateObj.setHours(parseFloat(hour));
|
286 |
+
},
|
287 |
+
J: function (dateObj, day) {
|
288 |
+
dateObj.setDate(parseFloat(day));
|
289 |
+
},
|
290 |
+
K: function (dateObj, amPM, locale) {
|
291 |
+
dateObj.setHours((dateObj.getHours() % 12) +
|
292 |
+
12 * int(new RegExp(locale.amPM[1], "i").test(amPM)));
|
293 |
+
},
|
294 |
+
M: function (dateObj, shortMonth, locale) {
|
295 |
+
dateObj.setMonth(locale.months.shorthand.indexOf(shortMonth));
|
296 |
+
},
|
297 |
+
S: function (dateObj, seconds) {
|
298 |
+
dateObj.setSeconds(parseFloat(seconds));
|
299 |
+
},
|
300 |
+
U: function (_, unixSeconds) { return new Date(parseFloat(unixSeconds) * 1000); },
|
301 |
+
W: function (dateObj, weekNum, locale) {
|
302 |
+
var weekNumber = parseInt(weekNum);
|
303 |
+
var date = new Date(dateObj.getFullYear(), 0, 2 + (weekNumber - 1) * 7, 0, 0, 0, 0);
|
304 |
+
date.setDate(date.getDate() - date.getDay() + locale.firstDayOfWeek);
|
305 |
+
return date;
|
306 |
+
},
|
307 |
+
Y: function (dateObj, year) {
|
308 |
+
dateObj.setFullYear(parseFloat(year));
|
309 |
+
},
|
310 |
+
Z: function (_, ISODate) { return new Date(ISODate); },
|
311 |
+
d: function (dateObj, day) {
|
312 |
+
dateObj.setDate(parseFloat(day));
|
313 |
+
},
|
314 |
+
h: function (dateObj, hour) {
|
315 |
+
dateObj.setHours(parseFloat(hour));
|
316 |
+
},
|
317 |
+
i: function (dateObj, minutes) {
|
318 |
+
dateObj.setMinutes(parseFloat(minutes));
|
319 |
+
},
|
320 |
+
j: function (dateObj, day) {
|
321 |
+
dateObj.setDate(parseFloat(day));
|
322 |
+
},
|
323 |
+
l: doNothing,
|
324 |
+
m: function (dateObj, month) {
|
325 |
+
dateObj.setMonth(parseFloat(month) - 1);
|
326 |
+
},
|
327 |
+
n: function (dateObj, month) {
|
328 |
+
dateObj.setMonth(parseFloat(month) - 1);
|
329 |
+
},
|
330 |
+
s: function (dateObj, seconds) {
|
331 |
+
dateObj.setSeconds(parseFloat(seconds));
|
332 |
+
},
|
333 |
+
u: function (_, unixMillSeconds) {
|
334 |
+
return new Date(parseFloat(unixMillSeconds));
|
335 |
+
},
|
336 |
+
w: doNothing,
|
337 |
+
y: function (dateObj, year) {
|
338 |
+
dateObj.setFullYear(2000 + parseFloat(year));
|
339 |
+
},
|
340 |
+
};
|
341 |
+
var tokenRegex = {
|
342 |
+
D: "(\\w+)",
|
343 |
+
F: "(\\w+)",
|
344 |
+
G: "(\\d\\d|\\d)",
|
345 |
+
H: "(\\d\\d|\\d)",
|
346 |
+
J: "(\\d\\d|\\d)\\w+",
|
347 |
+
K: "",
|
348 |
+
M: "(\\w+)",
|
349 |
+
S: "(\\d\\d|\\d)",
|
350 |
+
U: "(.+)",
|
351 |
+
W: "(\\d\\d|\\d)",
|
352 |
+
Y: "(\\d{4})",
|
353 |
+
Z: "(.+)",
|
354 |
+
d: "(\\d\\d|\\d)",
|
355 |
+
h: "(\\d\\d|\\d)",
|
356 |
+
i: "(\\d\\d|\\d)",
|
357 |
+
j: "(\\d\\d|\\d)",
|
358 |
+
l: "(\\w+)",
|
359 |
+
m: "(\\d\\d|\\d)",
|
360 |
+
n: "(\\d\\d|\\d)",
|
361 |
+
s: "(\\d\\d|\\d)",
|
362 |
+
u: "(.+)",
|
363 |
+
w: "(\\d\\d|\\d)",
|
364 |
+
y: "(\\d{2})",
|
365 |
+
};
|
366 |
+
var formats = {
|
367 |
+
// get the date in UTC
|
368 |
+
Z: function (date) { return date.toISOString(); },
|
369 |
+
// weekday name, short, e.g. Thu
|
370 |
+
D: function (date, locale, options) {
|
371 |
+
return locale.weekdays.shorthand[formats.w(date, locale, options)];
|
372 |
+
},
|
373 |
+
// full month name e.g. January
|
374 |
+
F: function (date, locale, options) {
|
375 |
+
return monthToStr(formats.n(date, locale, options) - 1, false, locale);
|
376 |
+
},
|
377 |
+
// padded hour 1-12
|
378 |
+
G: function (date, locale, options) {
|
379 |
+
return pad(formats.h(date, locale, options));
|
380 |
+
},
|
381 |
+
// hours with leading zero e.g. 03
|
382 |
+
H: function (date) { return pad(date.getHours()); },
|
383 |
+
// day (1-30) with ordinal suffix e.g. 1st, 2nd
|
384 |
+
J: function (date, locale) {
|
385 |
+
return locale.ordinal !== undefined
|
386 |
+
? date.getDate() + locale.ordinal(date.getDate())
|
387 |
+
: date.getDate();
|
388 |
+
},
|
389 |
+
// AM/PM
|
390 |
+
K: function (date, locale) { return locale.amPM[int(date.getHours() > 11)]; },
|
391 |
+
// shorthand month e.g. Jan, Sep, Oct, etc
|
392 |
+
M: function (date, locale) {
|
393 |
+
return monthToStr(date.getMonth(), true, locale);
|
394 |
+
},
|
395 |
+
// seconds 00-59
|
396 |
+
S: function (date) { return pad(date.getSeconds()); },
|
397 |
+
// unix timestamp
|
398 |
+
U: function (date) { return date.getTime() / 1000; },
|
399 |
+
W: function (date, _, options) {
|
400 |
+
return options.getWeek(date);
|
401 |
+
},
|
402 |
+
// full year e.g. 2016, padded (0001-9999)
|
403 |
+
Y: function (date) { return pad(date.getFullYear(), 4); },
|
404 |
+
// day in month, padded (01-30)
|
405 |
+
d: function (date) { return pad(date.getDate()); },
|
406 |
+
// hour from 1-12 (am/pm)
|
407 |
+
h: function (date) { return (date.getHours() % 12 ? date.getHours() % 12 : 12); },
|
408 |
+
// minutes, padded with leading zero e.g. 09
|
409 |
+
i: function (date) { return pad(date.getMinutes()); },
|
410 |
+
// day in month (1-30)
|
411 |
+
j: function (date) { return date.getDate(); },
|
412 |
+
// weekday name, full, e.g. Thursday
|
413 |
+
l: function (date, locale) {
|
414 |
+
return locale.weekdays.longhand[date.getDay()];
|
415 |
+
},
|
416 |
+
// padded month number (01-12)
|
417 |
+
m: function (date) { return pad(date.getMonth() + 1); },
|
418 |
+
// the month number (1-12)
|
419 |
+
n: function (date) { return date.getMonth() + 1; },
|
420 |
+
// seconds 0-59
|
421 |
+
s: function (date) { return date.getSeconds(); },
|
422 |
+
// Unix Milliseconds
|
423 |
+
u: function (date) { return date.getTime(); },
|
424 |
+
// number of the day of the week
|
425 |
+
w: function (date) { return date.getDay(); },
|
426 |
+
// last two digits of year e.g. 16 for 2016
|
427 |
+
y: function (date) { return String(date.getFullYear()).substring(2); },
|
428 |
+
};
|
429 |
+
|
430 |
+
var createDateFormatter = function (_a) {
|
431 |
+
var _b = _a.config, config = _b === void 0 ? defaults : _b, _c = _a.l10n, l10n = _c === void 0 ? english : _c, _d = _a.isMobile, isMobile = _d === void 0 ? false : _d;
|
432 |
+
return function (dateObj, frmt, overrideLocale) {
|
433 |
+
var locale = overrideLocale || l10n;
|
434 |
+
if (config.formatDate !== undefined && !isMobile) {
|
435 |
+
return config.formatDate(dateObj, frmt, locale);
|
436 |
+
}
|
437 |
+
return frmt
|
438 |
+
.split("")
|
439 |
+
.map(function (c, i, arr) {
|
440 |
+
return formats[c] && arr[i - 1] !== "\\"
|
441 |
+
? formats[c](dateObj, locale, config)
|
442 |
+
: c !== "\\"
|
443 |
+
? c
|
444 |
+
: "";
|
445 |
+
})
|
446 |
+
.join("");
|
447 |
+
};
|
448 |
+
};
|
449 |
+
var createDateParser = function (_a) {
|
450 |
+
var _b = _a.config, config = _b === void 0 ? defaults : _b, _c = _a.l10n, l10n = _c === void 0 ? english : _c;
|
451 |
+
return function (date, givenFormat, timeless, customLocale) {
|
452 |
+
if (date !== 0 && !date)
|
453 |
+
return undefined;
|
454 |
+
var locale = customLocale || l10n;
|
455 |
+
var parsedDate;
|
456 |
+
var dateOrig = date;
|
457 |
+
if (date instanceof Date)
|
458 |
+
parsedDate = new Date(date.getTime());
|
459 |
+
else if (typeof date !== "string" &&
|
460 |
+
date.toFixed !== undefined // timestamp
|
461 |
+
)
|
462 |
+
// create a copy
|
463 |
+
parsedDate = new Date(date);
|
464 |
+
else if (typeof date === "string") {
|
465 |
+
// date string
|
466 |
+
var format = givenFormat || (config || defaults).dateFormat;
|
467 |
+
var datestr = String(date).trim();
|
468 |
+
if (datestr === "today") {
|
469 |
+
parsedDate = new Date();
|
470 |
+
timeless = true;
|
471 |
+
}
|
472 |
+
else if (/Z$/.test(datestr) ||
|
473 |
+
/GMT$/.test(datestr) // datestrings w/ timezone
|
474 |
+
)
|
475 |
+
parsedDate = new Date(date);
|
476 |
+
else if (config && config.parseDate)
|
477 |
+
parsedDate = config.parseDate(date, format);
|
478 |
+
else {
|
479 |
+
parsedDate =
|
480 |
+
!config || !config.noCalendar
|
481 |
+
? new Date(new Date().getFullYear(), 0, 1, 0, 0, 0, 0)
|
482 |
+
: new Date(new Date().setHours(0, 0, 0, 0));
|
483 |
+
var matched = void 0, ops = [];
|
484 |
+
for (var i = 0, matchIndex = 0, regexStr = ""; i < format.length; i++) {
|
485 |
+
var token_1 = format[i];
|
486 |
+
var isBackSlash = token_1 === "\\";
|
487 |
+
var escaped = format[i - 1] === "\\" || isBackSlash;
|
488 |
+
if (tokenRegex[token_1] && !escaped) {
|
489 |
+
regexStr += tokenRegex[token_1];
|
490 |
+
var match = new RegExp(regexStr).exec(date);
|
491 |
+
if (match && (matched = true)) {
|
492 |
+
ops[token_1 !== "Y" ? "push" : "unshift"]({
|
493 |
+
fn: revFormat[token_1],
|
494 |
+
val: match[++matchIndex],
|
495 |
+
});
|
496 |
+
}
|
497 |
+
}
|
498 |
+
else if (!isBackSlash)
|
499 |
+
regexStr += "."; // don't really care
|
500 |
+
ops.forEach(function (_a) {
|
501 |
+
var fn = _a.fn, val = _a.val;
|
502 |
+
return (parsedDate = fn(parsedDate, val, locale) || parsedDate);
|
503 |
+
});
|
504 |
+
}
|
505 |
+
parsedDate = matched ? parsedDate : undefined;
|
506 |
+
}
|
507 |
+
}
|
508 |
+
/* istanbul ignore next */
|
509 |
+
if (!(parsedDate instanceof Date && !isNaN(parsedDate.getTime()))) {
|
510 |
+
config.errorHandler(new Error("Invalid date provided: " + dateOrig));
|
511 |
+
return undefined;
|
512 |
+
}
|
513 |
+
if (timeless === true)
|
514 |
+
parsedDate.setHours(0, 0, 0, 0);
|
515 |
+
return parsedDate;
|
516 |
+
};
|
517 |
+
};
|
518 |
+
/**
|
519 |
+
* Compute the difference in dates, measured in ms
|
520 |
+
*/
|
521 |
+
function compareDates(date1, date2, timeless) {
|
522 |
+
if (timeless === void 0) { timeless = true; }
|
523 |
+
if (timeless !== false) {
|
524 |
+
return (new Date(date1.getTime()).setHours(0, 0, 0, 0) -
|
525 |
+
new Date(date2.getTime()).setHours(0, 0, 0, 0));
|
526 |
+
}
|
527 |
+
return date1.getTime() - date2.getTime();
|
528 |
+
}
|
529 |
+
var isBetween = function (ts, ts1, ts2) {
|
530 |
+
return ts > Math.min(ts1, ts2) && ts < Math.max(ts1, ts2);
|
531 |
+
};
|
532 |
+
var duration = {
|
533 |
+
DAY: 86400000,
|
534 |
+
};
|
535 |
+
function getDefaultHours(config) {
|
536 |
+
var hours = config.defaultHour;
|
537 |
+
var minutes = config.defaultMinute;
|
538 |
+
var seconds = config.defaultSeconds;
|
539 |
+
if (config.minDate !== undefined) {
|
540 |
+
var minHour = config.minDate.getHours();
|
541 |
+
var minMinutes = config.minDate.getMinutes();
|
542 |
+
var minSeconds = config.minDate.getSeconds();
|
543 |
+
if (hours < minHour) {
|
544 |
+
hours = minHour;
|
545 |
+
}
|
546 |
+
if (hours === minHour && minutes < minMinutes) {
|
547 |
+
minutes = minMinutes;
|
548 |
+
}
|
549 |
+
if (hours === minHour && minutes === minMinutes && seconds < minSeconds)
|
550 |
+
seconds = config.minDate.getSeconds();
|
551 |
+
}
|
552 |
+
if (config.maxDate !== undefined) {
|
553 |
+
var maxHr = config.maxDate.getHours();
|
554 |
+
var maxMinutes = config.maxDate.getMinutes();
|
555 |
+
hours = Math.min(hours, maxHr);
|
556 |
+
if (hours === maxHr)
|
557 |
+
minutes = Math.min(maxMinutes, minutes);
|
558 |
+
if (hours === maxHr && minutes === maxMinutes)
|
559 |
+
seconds = config.maxDate.getSeconds();
|
560 |
+
}
|
561 |
+
return { hours: hours, minutes: minutes, seconds: seconds };
|
562 |
+
}
|
563 |
+
|
564 |
+
if (typeof Object.assign !== "function") {
|
565 |
+
Object.assign = function (target) {
|
566 |
+
var args = [];
|
567 |
+
for (var _i = 1; _i < arguments.length; _i++) {
|
568 |
+
args[_i - 1] = arguments[_i];
|
569 |
+
}
|
570 |
+
if (!target) {
|
571 |
+
throw TypeError("Cannot convert undefined or null to object");
|
572 |
+
}
|
573 |
+
var _loop_1 = function (source) {
|
574 |
+
if (source) {
|
575 |
+
Object.keys(source).forEach(function (key) { return (target[key] = source[key]); });
|
576 |
+
}
|
577 |
+
};
|
578 |
+
for (var _a = 0, args_1 = args; _a < args_1.length; _a++) {
|
579 |
+
var source = args_1[_a];
|
580 |
+
_loop_1(source);
|
581 |
+
}
|
582 |
+
return target;
|
583 |
+
};
|
584 |
+
}
|
585 |
+
|
586 |
+
var DEBOUNCED_CHANGE_MS = 300;
|
587 |
+
function FlatpickrInstance(element, instanceConfig) {
|
588 |
+
var self = {
|
589 |
+
config: __assign(__assign({}, defaults), flatpickr.defaultConfig),
|
590 |
+
l10n: english,
|
591 |
+
};
|
592 |
+
self.parseDate = createDateParser({ config: self.config, l10n: self.l10n });
|
593 |
+
self._handlers = [];
|
594 |
+
self.pluginElements = [];
|
595 |
+
self.loadedPlugins = [];
|
596 |
+
self._bind = bind;
|
597 |
+
self._setHoursFromDate = setHoursFromDate;
|
598 |
+
self._positionCalendar = positionCalendar;
|
599 |
+
self.changeMonth = changeMonth;
|
600 |
+
self.changeYear = changeYear;
|
601 |
+
self.clear = clear;
|
602 |
+
self.close = close;
|
603 |
+
self._createElement = createElement;
|
604 |
+
self.destroy = destroy;
|
605 |
+
self.isEnabled = isEnabled;
|
606 |
+
self.jumpToDate = jumpToDate;
|
607 |
+
self.open = open;
|
608 |
+
self.redraw = redraw;
|
609 |
+
self.set = set;
|
610 |
+
self.setDate = setDate;
|
611 |
+
self.toggle = toggle;
|
612 |
+
function setupHelperFunctions() {
|
613 |
+
self.utils = {
|
614 |
+
getDaysInMonth: function (month, yr) {
|
615 |
+
if (month === void 0) { month = self.currentMonth; }
|
616 |
+
if (yr === void 0) { yr = self.currentYear; }
|
617 |
+
if (month === 1 && ((yr % 4 === 0 && yr % 100 !== 0) || yr % 400 === 0))
|
618 |
+
return 29;
|
619 |
+
return self.l10n.daysInMonth[month];
|
620 |
+
},
|
621 |
+
};
|
622 |
+
}
|
623 |
+
function init() {
|
624 |
+
self.element = self.input = element;
|
625 |
+
self.isOpen = false;
|
626 |
+
parseConfig();
|
627 |
+
setupLocale();
|
628 |
+
setupInputs();
|
629 |
+
setupDates();
|
630 |
+
setupHelperFunctions();
|
631 |
+
if (!self.isMobile)
|
632 |
+
build();
|
633 |
+
bindEvents();
|
634 |
+
if (self.selectedDates.length || self.config.noCalendar) {
|
635 |
+
if (self.config.enableTime) {
|
636 |
+
setHoursFromDate(self.config.noCalendar ? self.latestSelectedDateObj : undefined);
|
637 |
+
}
|
638 |
+
updateValue(false);
|
639 |
+
}
|
640 |
+
setCalendarWidth();
|
641 |
+
var isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);
|
642 |
+
/* TODO: investigate this further
|
643 |
+
|
644 |
+
Currently, there is weird positioning behavior in safari causing pages
|
645 |
+
to scroll up. https://github.com/chmln/flatpickr/issues/563
|
646 |
+
|
647 |
+
However, most browsers are not Safari and positioning is expensive when used
|
648 |
+
in scale. https://github.com/chmln/flatpickr/issues/1096
|
649 |
+
*/
|
650 |
+
if (!self.isMobile && isSafari) {
|
651 |
+
positionCalendar();
|
652 |
+
}
|
653 |
+
triggerEvent("onReady");
|
654 |
+
}
|
655 |
+
function bindToInstance(fn) {
|
656 |
+
return fn.bind(self);
|
657 |
+
}
|
658 |
+
function setCalendarWidth() {
|
659 |
+
var config = self.config;
|
660 |
+
if (config.weekNumbers === false && config.showMonths === 1) {
|
661 |
+
return;
|
662 |
+
}
|
663 |
+
else if (config.noCalendar !== true) {
|
664 |
+
window.requestAnimationFrame(function () {
|
665 |
+
if (self.calendarContainer !== undefined) {
|
666 |
+
self.calendarContainer.style.visibility = "hidden";
|
667 |
+
self.calendarContainer.style.display = "block";
|
668 |
+
}
|
669 |
+
if (self.daysContainer !== undefined) {
|
670 |
+
var daysWidth = (self.days.offsetWidth + 1) * config.showMonths;
|
671 |
+
self.daysContainer.style.width = daysWidth + "px";
|
672 |
+
self.calendarContainer.style.width =
|
673 |
+
daysWidth +
|
674 |
+
(self.weekWrapper !== undefined
|
675 |
+
? self.weekWrapper.offsetWidth
|
676 |
+
: 0) +
|
677 |
+
"px";
|
678 |
+
self.calendarContainer.style.removeProperty("visibility");
|
679 |
+
self.calendarContainer.style.removeProperty("display");
|
680 |
+
}
|
681 |
+
});
|
682 |
+
}
|
683 |
+
}
|
684 |
+
/**
|
685 |
+
* The handler for all events targeting the time inputs
|
686 |
+
*/
|
687 |
+
function updateTime(e) {
|
688 |
+
if (self.selectedDates.length === 0) {
|
689 |
+
var defaultDate = self.config.minDate === undefined ||
|
690 |
+
compareDates(new Date(), self.config.minDate) >= 0
|
691 |
+
? new Date()
|
692 |
+
: new Date(self.config.minDate.getTime());
|
693 |
+
var defaults = getDefaultHours(self.config);
|
694 |
+
defaultDate.setHours(defaults.hours, defaults.minutes, defaults.seconds, defaultDate.getMilliseconds());
|
695 |
+
self.selectedDates = [defaultDate];
|
696 |
+
self.latestSelectedDateObj = defaultDate;
|
697 |
+
}
|
698 |
+
if (e !== undefined && e.type !== "blur") {
|
699 |
+
timeWrapper(e);
|
700 |
+
}
|
701 |
+
var prevValue = self._input.value;
|
702 |
+
setHoursFromInputs();
|
703 |
+
updateValue();
|
704 |
+
if (self._input.value !== prevValue) {
|
705 |
+
self._debouncedChange();
|
706 |
+
}
|
707 |
+
}
|
708 |
+
function ampm2military(hour, amPM) {
|
709 |
+
return (hour % 12) + 12 * int(amPM === self.l10n.amPM[1]);
|
710 |
+
}
|
711 |
+
function military2ampm(hour) {
|
712 |
+
switch (hour % 24) {
|
713 |
+
case 0:
|
714 |
+
case 12:
|
715 |
+
return 12;
|
716 |
+
default:
|
717 |
+
return hour % 12;
|
718 |
+
}
|
719 |
+
}
|
720 |
+
/**
|
721 |
+
* Syncs the selected date object time with user's time input
|
722 |
+
*/
|
723 |
+
function setHoursFromInputs() {
|
724 |
+
if (self.hourElement === undefined || self.minuteElement === undefined)
|
725 |
+
return;
|
726 |
+
var hours = (parseInt(self.hourElement.value.slice(-2), 10) || 0) % 24, minutes = (parseInt(self.minuteElement.value, 10) || 0) % 60, seconds = self.secondElement !== undefined
|
727 |
+
? (parseInt(self.secondElement.value, 10) || 0) % 60
|
728 |
+
: 0;
|
729 |
+
if (self.amPM !== undefined) {
|
730 |
+
hours = ampm2military(hours, self.amPM.textContent);
|
731 |
+
}
|
732 |
+
var limitMinHours = self.config.minTime !== undefined ||
|
733 |
+
(self.config.minDate &&
|
734 |
+
self.minDateHasTime &&
|
735 |
+
self.latestSelectedDateObj &&
|
736 |
+
compareDates(self.latestSelectedDateObj, self.config.minDate, true) ===
|
737 |
+
0);
|
738 |
+
var limitMaxHours = self.config.maxTime !== undefined ||
|
739 |
+
(self.config.maxDate &&
|
740 |
+
self.maxDateHasTime &&
|
741 |
+
self.latestSelectedDateObj &&
|
742 |
+
compareDates(self.latestSelectedDateObj, self.config.maxDate, true) ===
|
743 |
+
0);
|
744 |
+
if (limitMaxHours) {
|
745 |
+
var maxTime = self.config.maxTime !== undefined
|
746 |
+
? self.config.maxTime
|
747 |
+
: self.config.maxDate;
|
748 |
+
hours = Math.min(hours, maxTime.getHours());
|
749 |
+
if (hours === maxTime.getHours())
|
750 |
+
minutes = Math.min(minutes, maxTime.getMinutes());
|
751 |
+
if (minutes === maxTime.getMinutes())
|
752 |
+
seconds = Math.min(seconds, maxTime.getSeconds());
|
753 |
+
}
|
754 |
+
if (limitMinHours) {
|
755 |
+
var minTime = self.config.minTime !== undefined
|
756 |
+
? self.config.minTime
|
757 |
+
: self.config.minDate;
|
758 |
+
hours = Math.max(hours, minTime.getHours());
|
759 |
+
if (hours === minTime.getHours() && minutes < minTime.getMinutes())
|
760 |
+
minutes = minTime.getMinutes();
|
761 |
+
if (minutes === minTime.getMinutes())
|
762 |
+
seconds = Math.max(seconds, minTime.getSeconds());
|
763 |
+
}
|
764 |
+
setHours(hours, minutes, seconds);
|
765 |
+
}
|
766 |
+
/**
|
767 |
+
* Syncs time input values with a date
|
768 |
+
*/
|
769 |
+
function setHoursFromDate(dateObj) {
|
770 |
+
var date = dateObj || self.latestSelectedDateObj;
|
771 |
+
if (date) {
|
772 |
+
setHours(date.getHours(), date.getMinutes(), date.getSeconds());
|
773 |
+
}
|
774 |
+
}
|
775 |
+
/**
|
776 |
+
* Sets the hours, minutes, and optionally seconds
|
777 |
+
* of the latest selected date object and the
|
778 |
+
* corresponding time inputs
|
779 |
+
* @param {Number} hours the hour. whether its military
|
780 |
+
* or am-pm gets inferred from config
|
781 |
+
* @param {Number} minutes the minutes
|
782 |
+
* @param {Number} seconds the seconds (optional)
|
783 |
+
*/
|
784 |
+
function setHours(hours, minutes, seconds) {
|
785 |
+
if (self.latestSelectedDateObj !== undefined) {
|
786 |
+
self.latestSelectedDateObj.setHours(hours % 24, minutes, seconds || 0, 0);
|
787 |
+
}
|
788 |
+
if (!self.hourElement || !self.minuteElement || self.isMobile)
|
789 |
+
return;
|
790 |
+
self.hourElement.value = pad(!self.config.time_24hr
|
791 |
+
? ((12 + hours) % 12) + 12 * int(hours % 12 === 0)
|
792 |
+
: hours);
|
793 |
+
self.minuteElement.value = pad(minutes);
|
794 |
+
if (self.amPM !== undefined)
|
795 |
+
self.amPM.textContent = self.l10n.amPM[int(hours >= 12)];
|
796 |
+
if (self.secondElement !== undefined)
|
797 |
+
self.secondElement.value = pad(seconds);
|
798 |
+
}
|
799 |
+
/**
|
800 |
+
* Handles the year input and incrementing events
|
801 |
+
* @param {Event} event the keyup or increment event
|
802 |
+
*/
|
803 |
+
function onYearInput(event) {
|
804 |
+
var eventTarget = getEventTarget(event);
|
805 |
+
var year = parseInt(eventTarget.value) + (event.delta || 0);
|
806 |
+
if (year / 1000 > 1 ||
|
807 |
+
(event.key === "Enter" && !/[^\d]/.test(year.toString()))) {
|
808 |
+
changeYear(year);
|
809 |
+
}
|
810 |
+
}
|
811 |
+
/**
|
812 |
+
* Essentially addEventListener + tracking
|
813 |
+
* @param {Element} element the element to addEventListener to
|
814 |
+
* @param {String} event the event name
|
815 |
+
* @param {Function} handler the event handler
|
816 |
+
*/
|
817 |
+
function bind(element, event, handler, options) {
|
818 |
+
if (event instanceof Array)
|
819 |
+
return event.forEach(function (ev) { return bind(element, ev, handler, options); });
|
820 |
+
if (element instanceof Array)
|
821 |
+
return element.forEach(function (el) { return bind(el, event, handler, options); });
|
822 |
+
element.addEventListener(event, handler, options);
|
823 |
+
self._handlers.push({
|
824 |
+
remove: function () { return element.removeEventListener(event, handler); },
|
825 |
+
});
|
826 |
+
}
|
827 |
+
function triggerChange() {
|
828 |
+
triggerEvent("onChange");
|
829 |
+
}
|
830 |
+
/**
|
831 |
+
* Adds all the necessary event listeners
|
832 |
+
*/
|
833 |
+
function bindEvents() {
|
834 |
+
if (self.config.wrap) {
|
835 |
+
["open", "close", "toggle", "clear"].forEach(function (evt) {
|
836 |
+
Array.prototype.forEach.call(self.element.querySelectorAll("[data-" + evt + "]"), function (el) {
|
837 |
+
return bind(el, "click", self[evt]);
|
838 |
+
});
|
839 |
+
});
|
840 |
+
}
|
841 |
+
if (self.isMobile) {
|
842 |
+
setupMobile();
|
843 |
+
return;
|
844 |
+
}
|
845 |
+
var debouncedResize = debounce(onResize, 50);
|
846 |
+
self._debouncedChange = debounce(triggerChange, DEBOUNCED_CHANGE_MS);
|
847 |
+
if (self.daysContainer && !/iPhone|iPad|iPod/i.test(navigator.userAgent))
|
848 |
+
bind(self.daysContainer, "mouseover", function (e) {
|
849 |
+
if (self.config.mode === "range")
|
850 |
+
onMouseOver(getEventTarget(e));
|
851 |
+
});
|
852 |
+
bind(window.document.body, "keydown", onKeyDown);
|
853 |
+
if (!self.config.inline && !self.config.static)
|
854 |
+
bind(window, "resize", debouncedResize);
|
855 |
+
if (window.ontouchstart !== undefined)
|
856 |
+
bind(window.document, "touchstart", documentClick);
|
857 |
+
else
|
858 |
+
bind(window.document, "mousedown", documentClick);
|
859 |
+
bind(window.document, "focus", documentClick, { capture: true });
|
860 |
+
if (self.config.clickOpens === true) {
|
861 |
+
bind(self._input, "focus", self.open);
|
862 |
+
bind(self._input, "click", self.open);
|
863 |
+
}
|
864 |
+
if (self.daysContainer !== undefined) {
|
865 |
+
bind(self.monthNav, "click", onMonthNavClick);
|
866 |
+
bind(self.monthNav, ["keyup", "increment"], onYearInput);
|
867 |
+
bind(self.daysContainer, "click", selectDate);
|
868 |
+
}
|
869 |
+
if (self.timeContainer !== undefined &&
|
870 |
+
self.minuteElement !== undefined &&
|
871 |
+
self.hourElement !== undefined) {
|
872 |
+
var selText = function (e) {
|
873 |
+
return getEventTarget(e).select();
|
874 |
+
};
|
875 |
+
bind(self.timeContainer, ["increment"], updateTime);
|
876 |
+
bind(self.timeContainer, "blur", updateTime, { capture: true });
|
877 |
+
bind(self.timeContainer, "click", timeIncrement);
|
878 |
+
bind([self.hourElement, self.minuteElement], ["focus", "click"], selText);
|
879 |
+
if (self.secondElement !== undefined)
|
880 |
+
bind(self.secondElement, "focus", function () { return self.secondElement && self.secondElement.select(); });
|
881 |
+
if (self.amPM !== undefined) {
|
882 |
+
bind(self.amPM, "click", function (e) {
|
883 |
+
updateTime(e);
|
884 |
+
triggerChange();
|
885 |
+
});
|
886 |
+
}
|
887 |
+
}
|
888 |
+
if (self.config.allowInput) {
|
889 |
+
bind(self._input, "blur", onBlur);
|
890 |
+
}
|
891 |
+
}
|
892 |
+
/**
|
893 |
+
* Set the calendar view to a particular date.
|
894 |
+
* @param {Date} jumpDate the date to set the view to
|
895 |
+
* @param {boolean} triggerChange if change events should be triggered
|
896 |
+
*/
|
897 |
+
function jumpToDate(jumpDate, triggerChange) {
|
898 |
+
var jumpTo = jumpDate !== undefined
|
899 |
+
? self.parseDate(jumpDate)
|
900 |
+
: self.latestSelectedDateObj ||
|
901 |
+
(self.config.minDate && self.config.minDate > self.now
|
902 |
+
? self.config.minDate
|
903 |
+
: self.config.maxDate && self.config.maxDate < self.now
|
904 |
+
? self.config.maxDate
|
905 |
+
: self.now);
|
906 |
+
var oldYear = self.currentYear;
|
907 |
+
var oldMonth = self.currentMonth;
|
908 |
+
try {
|
909 |
+
if (jumpTo !== undefined) {
|
910 |
+
self.currentYear = jumpTo.getFullYear();
|
911 |
+
self.currentMonth = jumpTo.getMonth();
|
912 |
+
}
|
913 |
+
}
|
914 |
+
catch (e) {
|
915 |
+
/* istanbul ignore next */
|
916 |
+
e.message = "Invalid date supplied: " + jumpTo;
|
917 |
+
self.config.errorHandler(e);
|
918 |
+
}
|
919 |
+
if (triggerChange && self.currentYear !== oldYear) {
|
920 |
+
triggerEvent("onYearChange");
|
921 |
+
buildMonthSwitch();
|
922 |
+
}
|
923 |
+
if (triggerChange &&
|
924 |
+
(self.currentYear !== oldYear || self.currentMonth !== oldMonth)) {
|
925 |
+
triggerEvent("onMonthChange");
|
926 |
+
}
|
927 |
+
self.redraw();
|
928 |
+
}
|
929 |
+
/**
|
930 |
+
* The up/down arrow handler for time inputs
|
931 |
+
* @param {Event} e the click event
|
932 |
+
*/
|
933 |
+
function timeIncrement(e) {
|
934 |
+
var eventTarget = getEventTarget(e);
|
935 |
+
if (~eventTarget.className.indexOf("arrow"))
|
936 |
+
incrementNumInput(e, eventTarget.classList.contains("arrowUp") ? 1 : -1);
|
937 |
+
}
|
938 |
+
/**
|
939 |
+
* Increments/decrements the value of input associ-
|
940 |
+
* ated with the up/down arrow by dispatching an
|
941 |
+
* "increment" event on the input.
|
942 |
+
*
|
943 |
+
* @param {Event} e the click event
|
944 |
+
* @param {Number} delta the diff (usually 1 or -1)
|
945 |
+
* @param {Element} inputElem the input element
|
946 |
+
*/
|
947 |
+
function incrementNumInput(e, delta, inputElem) {
|
948 |
+
var target = e && getEventTarget(e);
|
949 |
+
var input = inputElem ||
|
950 |
+
(target && target.parentNode && target.parentNode.firstChild);
|
951 |
+
var event = createEvent("increment");
|
952 |
+
event.delta = delta;
|
953 |
+
input && input.dispatchEvent(event);
|
954 |
+
}
|
955 |
+
function build() {
|
956 |
+
var fragment = window.document.createDocumentFragment();
|
957 |
+
self.calendarContainer = createElement("div", "flatpickr-calendar");
|
958 |
+
self.calendarContainer.tabIndex = -1;
|
959 |
+
if (!self.config.noCalendar) {
|
960 |
+
fragment.appendChild(buildMonthNav());
|
961 |
+
self.innerContainer = createElement("div", "flatpickr-innerContainer");
|
962 |
+
if (self.config.weekNumbers) {
|
963 |
+
var _a = buildWeeks(), weekWrapper = _a.weekWrapper, weekNumbers = _a.weekNumbers;
|
964 |
+
self.innerContainer.appendChild(weekWrapper);
|
965 |
+
self.weekNumbers = weekNumbers;
|
966 |
+
self.weekWrapper = weekWrapper;
|
967 |
+
}
|
968 |
+
self.rContainer = createElement("div", "flatpickr-rContainer");
|
969 |
+
self.rContainer.appendChild(buildWeekdays());
|
970 |
+
if (!self.daysContainer) {
|
971 |
+
self.daysContainer = createElement("div", "flatpickr-days");
|
972 |
+
self.daysContainer.tabIndex = -1;
|
973 |
+
}
|
974 |
+
buildDays();
|
975 |
+
self.rContainer.appendChild(self.daysContainer);
|
976 |
+
self.innerContainer.appendChild(self.rContainer);
|
977 |
+
fragment.appendChild(self.innerContainer);
|
978 |
+
}
|
979 |
+
if (self.config.enableTime) {
|
980 |
+
fragment.appendChild(buildTime());
|
981 |
+
}
|
982 |
+
toggleClass(self.calendarContainer, "rangeMode", self.config.mode === "range");
|
983 |
+
toggleClass(self.calendarContainer, "animate", self.config.animate === true);
|
984 |
+
toggleClass(self.calendarContainer, "multiMonth", self.config.showMonths > 1);
|
985 |
+
self.calendarContainer.appendChild(fragment);
|
986 |
+
var customAppend = self.config.appendTo !== undefined &&
|
987 |
+
self.config.appendTo.nodeType !== undefined;
|
988 |
+
if (self.config.inline || self.config.static) {
|
989 |
+
self.calendarContainer.classList.add(self.config.inline ? "inline" : "static");
|
990 |
+
if (self.config.inline) {
|
991 |
+
if (!customAppend && self.element.parentNode)
|
992 |
+
self.element.parentNode.insertBefore(self.calendarContainer, self._input.nextSibling);
|
993 |
+
else if (self.config.appendTo !== undefined)
|
994 |
+
self.config.appendTo.appendChild(self.calendarContainer);
|
995 |
+
}
|
996 |
+
if (self.config.static) {
|
997 |
+
var wrapper = createElement("div", "flatpickr-wrapper");
|
998 |
+
if (self.element.parentNode)
|
999 |
+
self.element.parentNode.insertBefore(wrapper, self.element);
|
1000 |
+
wrapper.appendChild(self.element);
|
1001 |
+
if (self.altInput)
|
1002 |
+
wrapper.appendChild(self.altInput);
|
1003 |
+
wrapper.appendChild(self.calendarContainer);
|
1004 |
+
}
|
1005 |
+
}
|
1006 |
+
if (!self.config.static && !self.config.inline)
|
1007 |
+
(self.config.appendTo !== undefined
|
1008 |
+
? self.config.appendTo
|
1009 |
+
: window.document.body).appendChild(self.calendarContainer);
|
1010 |
+
}
|
1011 |
+
function createDay(className, date, dayNumber, i) {
|
1012 |
+
var dateIsEnabled = isEnabled(date, true), dayElement = createElement("span", "flatpickr-day " + className, date.getDate().toString());
|
1013 |
+
dayElement.dateObj = date;
|
1014 |
+
dayElement.$i = i;
|
1015 |
+
dayElement.setAttribute("aria-label", self.formatDate(date, self.config.ariaDateFormat));
|
1016 |
+
if (className.indexOf("hidden") === -1 &&
|
1017 |
+
compareDates(date, self.now) === 0) {
|
1018 |
+
self.todayDateElem = dayElement;
|
1019 |
+
dayElement.classList.add("today");
|
1020 |
+
dayElement.setAttribute("aria-current", "date");
|
1021 |
+
}
|
1022 |
+
if (dateIsEnabled) {
|
1023 |
+
dayElement.tabIndex = -1;
|
1024 |
+
if (isDateSelected(date)) {
|
1025 |
+
dayElement.classList.add("selected");
|
1026 |
+
self.selectedDateElem = dayElement;
|
1027 |
+
if (self.config.mode === "range") {
|
1028 |
+
toggleClass(dayElement, "startRange", self.selectedDates[0] &&
|
1029 |
+
compareDates(date, self.selectedDates[0], true) === 0);
|
1030 |
+
toggleClass(dayElement, "endRange", self.selectedDates[1] &&
|
1031 |
+
compareDates(date, self.selectedDates[1], true) === 0);
|
1032 |
+
if (className === "nextMonthDay")
|
1033 |
+
dayElement.classList.add("inRange");
|
1034 |
+
}
|
1035 |
+
}
|
1036 |
+
}
|
1037 |
+
else {
|
1038 |
+
dayElement.classList.add("flatpickr-disabled");
|
1039 |
+
}
|
1040 |
+
if (self.config.mode === "range") {
|
1041 |
+
if (isDateInRange(date) && !isDateSelected(date))
|
1042 |
+
dayElement.classList.add("inRange");
|
1043 |
+
}
|
1044 |
+
if (self.weekNumbers &&
|
1045 |
+
self.config.showMonths === 1 &&
|
1046 |
+
className !== "prevMonthDay" &&
|
1047 |
+
dayNumber % 7 === 1) {
|
1048 |
+
self.weekNumbers.insertAdjacentHTML("beforeend", "<span class='flatpickr-day'>" + self.config.getWeek(date) + "</span>");
|
1049 |
+
}
|
1050 |
+
triggerEvent("onDayCreate", dayElement);
|
1051 |
+
return dayElement;
|
1052 |
+
}
|
1053 |
+
function focusOnDayElem(targetNode) {
|
1054 |
+
targetNode.focus();
|
1055 |
+
if (self.config.mode === "range")
|
1056 |
+
onMouseOver(targetNode);
|
1057 |
+
}
|
1058 |
+
function getFirstAvailableDay(delta) {
|
1059 |
+
var startMonth = delta > 0 ? 0 : self.config.showMonths - 1;
|
1060 |
+
var endMonth = delta > 0 ? self.config.showMonths : -1;
|
1061 |
+
for (var m = startMonth; m != endMonth; m += delta) {
|
1062 |
+
var month = self.daysContainer.children[m];
|
1063 |
+
var startIndex = delta > 0 ? 0 : month.children.length - 1;
|
1064 |
+
var endIndex = delta > 0 ? month.children.length : -1;
|
1065 |
+
for (var i = startIndex; i != endIndex; i += delta) {
|
1066 |
+
var c = month.children[i];
|
1067 |
+
if (c.className.indexOf("hidden") === -1 && isEnabled(c.dateObj))
|
1068 |
+
return c;
|
1069 |
+
}
|
1070 |
+
}
|
1071 |
+
return undefined;
|
1072 |
+
}
|
1073 |
+
function getNextAvailableDay(current, delta) {
|
1074 |
+
var givenMonth = current.className.indexOf("Month") === -1
|
1075 |
+
? current.dateObj.getMonth()
|
1076 |
+
: self.currentMonth;
|
1077 |
+
var endMonth = delta > 0 ? self.config.showMonths : -1;
|
1078 |
+
var loopDelta = delta > 0 ? 1 : -1;
|
1079 |
+
for (var m = givenMonth - self.currentMonth; m != endMonth; m += loopDelta) {
|
1080 |
+
var month = self.daysContainer.children[m];
|
1081 |
+
var startIndex = givenMonth - self.currentMonth === m
|
1082 |
+
? current.$i + delta
|
1083 |
+
: delta < 0
|
1084 |
+
? month.children.length - 1
|
1085 |
+
: 0;
|
1086 |
+
var numMonthDays = month.children.length;
|
1087 |
+
for (var i = startIndex; i >= 0 && i < numMonthDays && i != (delta > 0 ? numMonthDays : -1); i += loopDelta) {
|
1088 |
+
var c = month.children[i];
|
1089 |
+
if (c.className.indexOf("hidden") === -1 &&
|
1090 |
+
isEnabled(c.dateObj) &&
|
1091 |
+
Math.abs(current.$i - i) >= Math.abs(delta))
|
1092 |
+
return focusOnDayElem(c);
|
1093 |
+
}
|
1094 |
+
}
|
1095 |
+
self.changeMonth(loopDelta);
|
1096 |
+
focusOnDay(getFirstAvailableDay(loopDelta), 0);
|
1097 |
+
return undefined;
|
1098 |
+
}
|
1099 |
+
function focusOnDay(current, offset) {
|
1100 |
+
var dayFocused = isInView(document.activeElement || document.body);
|
1101 |
+
var startElem = current !== undefined
|
1102 |
+
? current
|
1103 |
+
: dayFocused
|
1104 |
+
? document.activeElement
|
1105 |
+
: self.selectedDateElem !== undefined && isInView(self.selectedDateElem)
|
1106 |
+
? self.selectedDateElem
|
1107 |
+
: self.todayDateElem !== undefined && isInView(self.todayDateElem)
|
1108 |
+
? self.todayDateElem
|
1109 |
+
: getFirstAvailableDay(offset > 0 ? 1 : -1);
|
1110 |
+
if (startElem === undefined) {
|
1111 |
+
self._input.focus();
|
1112 |
+
}
|
1113 |
+
else if (!dayFocused) {
|
1114 |
+
focusOnDayElem(startElem);
|
1115 |
+
}
|
1116 |
+
else {
|
1117 |
+
getNextAvailableDay(startElem, offset);
|
1118 |
+
}
|
1119 |
+
}
|
1120 |
+
function buildMonthDays(year, month) {
|
1121 |
+
var firstOfMonth = (new Date(year, month, 1).getDay() - self.l10n.firstDayOfWeek + 7) % 7;
|
1122 |
+
var prevMonthDays = self.utils.getDaysInMonth((month - 1 + 12) % 12, year);
|
1123 |
+
var daysInMonth = self.utils.getDaysInMonth(month, year), days = window.document.createDocumentFragment(), isMultiMonth = self.config.showMonths > 1, prevMonthDayClass = isMultiMonth ? "prevMonthDay hidden" : "prevMonthDay", nextMonthDayClass = isMultiMonth ? "nextMonthDay hidden" : "nextMonthDay";
|
1124 |
+
var dayNumber = prevMonthDays + 1 - firstOfMonth, dayIndex = 0;
|
1125 |
+
// prepend days from the ending of previous month
|
1126 |
+
for (; dayNumber <= prevMonthDays; dayNumber++, dayIndex++) {
|
1127 |
+
days.appendChild(createDay(prevMonthDayClass, new Date(year, month - 1, dayNumber), dayNumber, dayIndex));
|
1128 |
+
}
|
1129 |
+
// Start at 1 since there is no 0th day
|
1130 |
+
for (dayNumber = 1; dayNumber <= daysInMonth; dayNumber++, dayIndex++) {
|
1131 |
+
days.appendChild(createDay("", new Date(year, month, dayNumber), dayNumber, dayIndex));
|
1132 |
+
}
|
1133 |
+
// append days from the next month
|
1134 |
+
for (var dayNum = daysInMonth + 1; dayNum <= 42 - firstOfMonth &&
|
1135 |
+
(self.config.showMonths === 1 || dayIndex % 7 !== 0); dayNum++, dayIndex++) {
|
1136 |
+
days.appendChild(createDay(nextMonthDayClass, new Date(year, month + 1, dayNum % daysInMonth), dayNum, dayIndex));
|
1137 |
+
}
|
1138 |
+
//updateNavigationCurrentMonth();
|
1139 |
+
var dayContainer = createElement("div", "dayContainer");
|
1140 |
+
dayContainer.appendChild(days);
|
1141 |
+
return dayContainer;
|
1142 |
+
}
|
1143 |
+
function buildDays() {
|
1144 |
+
if (self.daysContainer === undefined) {
|
1145 |
+
return;
|
1146 |
+
}
|
1147 |
+
clearNode(self.daysContainer);
|
1148 |
+
// TODO: week numbers for each month
|
1149 |
+
if (self.weekNumbers)
|
1150 |
+
clearNode(self.weekNumbers);
|
1151 |
+
var frag = document.createDocumentFragment();
|
1152 |
+
for (var i = 0; i < self.config.showMonths; i++) {
|
1153 |
+
var d = new Date(self.currentYear, self.currentMonth, 1);
|
1154 |
+
d.setMonth(self.currentMonth + i);
|
1155 |
+
frag.appendChild(buildMonthDays(d.getFullYear(), d.getMonth()));
|
1156 |
+
}
|
1157 |
+
self.daysContainer.appendChild(frag);
|
1158 |
+
self.days = self.daysContainer.firstChild;
|
1159 |
+
if (self.config.mode === "range" && self.selectedDates.length === 1) {
|
1160 |
+
onMouseOver();
|
1161 |
+
}
|
1162 |
+
}
|
1163 |
+
function buildMonthSwitch() {
|
1164 |
+
if (self.config.showMonths > 1 ||
|
1165 |
+
self.config.monthSelectorType !== "dropdown")
|
1166 |
+
return;
|
1167 |
+
var shouldBuildMonth = function (month) {
|
1168 |
+
if (self.config.minDate !== undefined &&
|
1169 |
+
self.currentYear === self.config.minDate.getFullYear() &&
|
1170 |
+
month < self.config.minDate.getMonth()) {
|
1171 |
+
return false;
|
1172 |
+
}
|
1173 |
+
return !(self.config.maxDate !== undefined &&
|
1174 |
+
self.currentYear === self.config.maxDate.getFullYear() &&
|
1175 |
+
month > self.config.maxDate.getMonth());
|
1176 |
+
};
|
1177 |
+
self.monthsDropdownContainer.tabIndex = -1;
|
1178 |
+
self.monthsDropdownContainer.innerHTML = "";
|
1179 |
+
for (var i = 0; i < 12; i++) {
|
1180 |
+
if (!shouldBuildMonth(i))
|
1181 |
+
continue;
|
1182 |
+
var month = createElement("option", "flatpickr-monthDropdown-month");
|
1183 |
+
month.value = new Date(self.currentYear, i).getMonth().toString();
|
1184 |
+
month.textContent = monthToStr(i, self.config.shorthandCurrentMonth, self.l10n);
|
1185 |
+
month.tabIndex = -1;
|
1186 |
+
if (self.currentMonth === i) {
|
1187 |
+
month.selected = true;
|
1188 |
+
}
|
1189 |
+
self.monthsDropdownContainer.appendChild(month);
|
1190 |
+
}
|
1191 |
+
}
|
1192 |
+
function buildMonth() {
|
1193 |
+
var container = createElement("div", "flatpickr-month");
|
1194 |
+
var monthNavFragment = window.document.createDocumentFragment();
|
1195 |
+
var monthElement;
|
1196 |
+
if (self.config.showMonths > 1 ||
|
1197 |
+
self.config.monthSelectorType === "static") {
|
1198 |
+
monthElement = createElement("span", "cur-month");
|
1199 |
+
}
|
1200 |
+
else {
|
1201 |
+
self.monthsDropdownContainer = createElement("select", "flatpickr-monthDropdown-months");
|
1202 |
+
self.monthsDropdownContainer.setAttribute("aria-label", self.l10n.monthAriaLabel);
|
1203 |
+
bind(self.monthsDropdownContainer, "change", function (e) {
|
1204 |
+
var target = getEventTarget(e);
|
1205 |
+
var selectedMonth = parseInt(target.value, 10);
|
1206 |
+
self.changeMonth(selectedMonth - self.currentMonth);
|
1207 |
+
triggerEvent("onMonthChange");
|
1208 |
+
});
|
1209 |
+
buildMonthSwitch();
|
1210 |
+
monthElement = self.monthsDropdownContainer;
|
1211 |
+
}
|
1212 |
+
var yearInput = createNumberInput("cur-year", { tabindex: "-1" });
|
1213 |
+
var yearElement = yearInput.getElementsByTagName("input")[0];
|
1214 |
+
yearElement.setAttribute("aria-label", self.l10n.yearAriaLabel);
|
1215 |
+
if (self.config.minDate) {
|
1216 |
+
yearElement.setAttribute("min", self.config.minDate.getFullYear().toString());
|
1217 |
+
}
|
1218 |
+
if (self.config.maxDate) {
|
1219 |
+
yearElement.setAttribute("max", self.config.maxDate.getFullYear().toString());
|
1220 |
+
yearElement.disabled =
|
1221 |
+
!!self.config.minDate &&
|
1222 |
+
self.config.minDate.getFullYear() === self.config.maxDate.getFullYear();
|
1223 |
+
}
|
1224 |
+
var currentMonth = createElement("div", "flatpickr-current-month");
|
1225 |
+
currentMonth.appendChild(monthElement);
|
1226 |
+
currentMonth.appendChild(yearInput);
|
1227 |
+
monthNavFragment.appendChild(currentMonth);
|
1228 |
+
container.appendChild(monthNavFragment);
|
1229 |
+
return {
|
1230 |
+
container: container,
|
1231 |
+
yearElement: yearElement,
|
1232 |
+
monthElement: monthElement,
|
1233 |
+
};
|
1234 |
+
}
|
1235 |
+
function buildMonths() {
|
1236 |
+
clearNode(self.monthNav);
|
1237 |
+
self.monthNav.appendChild(self.prevMonthNav);
|
1238 |
+
if (self.config.showMonths) {
|
1239 |
+
self.yearElements = [];
|
1240 |
+
self.monthElements = [];
|
1241 |
+
}
|
1242 |
+
for (var m = self.config.showMonths; m--;) {
|
1243 |
+
var month = buildMonth();
|
1244 |
+
self.yearElements.push(month.yearElement);
|
1245 |
+
self.monthElements.push(month.monthElement);
|
1246 |
+
self.monthNav.appendChild(month.container);
|
1247 |
+
}
|
1248 |
+
self.monthNav.appendChild(self.nextMonthNav);
|
1249 |
+
}
|
1250 |
+
function buildMonthNav() {
|
1251 |
+
self.monthNav = createElement("div", "flatpickr-months");
|
1252 |
+
self.yearElements = [];
|
1253 |
+
self.monthElements = [];
|
1254 |
+
self.prevMonthNav = createElement("span", "flatpickr-prev-month");
|
1255 |
+
self.prevMonthNav.innerHTML = self.config.prevArrow;
|
1256 |
+
self.nextMonthNav = createElement("span", "flatpickr-next-month");
|
1257 |
+
self.nextMonthNav.innerHTML = self.config.nextArrow;
|
1258 |
+
buildMonths();
|
1259 |
+
Object.defineProperty(self, "_hidePrevMonthArrow", {
|
1260 |
+
get: function () { return self.__hidePrevMonthArrow; },
|
1261 |
+
set: function (bool) {
|
1262 |
+
if (self.__hidePrevMonthArrow !== bool) {
|
1263 |
+
toggleClass(self.prevMonthNav, "flatpickr-disabled", bool);
|
1264 |
+
self.__hidePrevMonthArrow = bool;
|
1265 |
+
}
|
1266 |
+
},
|
1267 |
+
});
|
1268 |
+
Object.defineProperty(self, "_hideNextMonthArrow", {
|
1269 |
+
get: function () { return self.__hideNextMonthArrow; },
|
1270 |
+
set: function (bool) {
|
1271 |
+
if (self.__hideNextMonthArrow !== bool) {
|
1272 |
+
toggleClass(self.nextMonthNav, "flatpickr-disabled", bool);
|
1273 |
+
self.__hideNextMonthArrow = bool;
|
1274 |
+
}
|
1275 |
+
},
|
1276 |
+
});
|
1277 |
+
self.currentYearElement = self.yearElements[0];
|
1278 |
+
updateNavigationCurrentMonth();
|
1279 |
+
return self.monthNav;
|
1280 |
+
}
|
1281 |
+
function buildTime() {
|
1282 |
+
self.calendarContainer.classList.add("hasTime");
|
1283 |
+
if (self.config.noCalendar)
|
1284 |
+
self.calendarContainer.classList.add("noCalendar");
|
1285 |
+
var defaults = getDefaultHours(self.config);
|
1286 |
+
self.timeContainer = createElement("div", "flatpickr-time");
|
1287 |
+
self.timeContainer.tabIndex = -1;
|
1288 |
+
var separator = createElement("span", "flatpickr-time-separator", ":");
|
1289 |
+
var hourInput = createNumberInput("flatpickr-hour", {
|
1290 |
+
"aria-label": self.l10n.hourAriaLabel,
|
1291 |
+
});
|
1292 |
+
self.hourElement = hourInput.getElementsByTagName("input")[0];
|
1293 |
+
var minuteInput = createNumberInput("flatpickr-minute", {
|
1294 |
+
"aria-label": self.l10n.minuteAriaLabel,
|
1295 |
+
});
|
1296 |
+
self.minuteElement = minuteInput.getElementsByTagName("input")[0];
|
1297 |
+
self.hourElement.tabIndex = self.minuteElement.tabIndex = -1;
|
1298 |
+
self.hourElement.value = pad(self.latestSelectedDateObj
|
1299 |
+
? self.latestSelectedDateObj.getHours()
|
1300 |
+
: self.config.time_24hr
|
1301 |
+
? defaults.hours
|
1302 |
+
: military2ampm(defaults.hours));
|
1303 |
+
self.minuteElement.value = pad(self.latestSelectedDateObj
|
1304 |
+
? self.latestSelectedDateObj.getMinutes()
|
1305 |
+
: defaults.minutes);
|
1306 |
+
self.hourElement.setAttribute("step", self.config.hourIncrement.toString());
|
1307 |
+
self.minuteElement.setAttribute("step", self.config.minuteIncrement.toString());
|
1308 |
+
self.hourElement.setAttribute("min", self.config.time_24hr ? "0" : "1");
|
1309 |
+
self.hourElement.setAttribute("max", self.config.time_24hr ? "23" : "12");
|
1310 |
+
self.hourElement.setAttribute("maxlength", "2");
|
1311 |
+
self.minuteElement.setAttribute("min", "0");
|
1312 |
+
self.minuteElement.setAttribute("max", "59");
|
1313 |
+
self.minuteElement.setAttribute("maxlength", "2");
|
1314 |
+
self.timeContainer.appendChild(hourInput);
|
1315 |
+
self.timeContainer.appendChild(separator);
|
1316 |
+
self.timeContainer.appendChild(minuteInput);
|
1317 |
+
if (self.config.time_24hr)
|
1318 |
+
self.timeContainer.classList.add("time24hr");
|
1319 |
+
if (self.config.enableSeconds) {
|
1320 |
+
self.timeContainer.classList.add("hasSeconds");
|
1321 |
+
var secondInput = createNumberInput("flatpickr-second");
|
1322 |
+
self.secondElement = secondInput.getElementsByTagName("input")[0];
|
1323 |
+
self.secondElement.value = pad(self.latestSelectedDateObj
|
1324 |
+
? self.latestSelectedDateObj.getSeconds()
|
1325 |
+
: defaults.seconds);
|
1326 |
+
self.secondElement.setAttribute("step", self.minuteElement.getAttribute("step"));
|
1327 |
+
self.secondElement.setAttribute("min", "0");
|
1328 |
+
self.secondElement.setAttribute("max", "59");
|
1329 |
+
self.secondElement.setAttribute("maxlength", "2");
|
1330 |
+
self.timeContainer.appendChild(createElement("span", "flatpickr-time-separator", ":"));
|
1331 |
+
self.timeContainer.appendChild(secondInput);
|
1332 |
+
}
|
1333 |
+
if (!self.config.time_24hr) {
|
1334 |
+
// add self.amPM if appropriate
|
1335 |
+
self.amPM = createElement("span", "flatpickr-am-pm", self.l10n.amPM[int((self.latestSelectedDateObj
|
1336 |
+
? self.hourElement.value
|
1337 |
+
: self.config.defaultHour) > 11)]);
|
1338 |
+
self.amPM.title = self.l10n.toggleTitle;
|
1339 |
+
self.amPM.tabIndex = -1;
|
1340 |
+
self.timeContainer.appendChild(self.amPM);
|
1341 |
+
}
|
1342 |
+
return self.timeContainer;
|
1343 |
+
}
|
1344 |
+
function buildWeekdays() {
|
1345 |
+
if (!self.weekdayContainer)
|
1346 |
+
self.weekdayContainer = createElement("div", "flatpickr-weekdays");
|
1347 |
+
else
|
1348 |
+
clearNode(self.weekdayContainer);
|
1349 |
+
for (var i = self.config.showMonths; i--;) {
|
1350 |
+
var container = createElement("div", "flatpickr-weekdaycontainer");
|
1351 |
+
self.weekdayContainer.appendChild(container);
|
1352 |
+
}
|
1353 |
+
updateWeekdays();
|
1354 |
+
return self.weekdayContainer;
|
1355 |
+
}
|
1356 |
+
function updateWeekdays() {
|
1357 |
+
if (!self.weekdayContainer) {
|
1358 |
+
return;
|
1359 |
+
}
|
1360 |
+
var firstDayOfWeek = self.l10n.firstDayOfWeek;
|
1361 |
+
var weekdays = __spreadArrays(self.l10n.weekdays.shorthand);
|
1362 |
+
if (firstDayOfWeek > 0 && firstDayOfWeek < weekdays.length) {
|
1363 |
+
weekdays = __spreadArrays(weekdays.splice(firstDayOfWeek, weekdays.length), weekdays.splice(0, firstDayOfWeek));
|
1364 |
+
}
|
1365 |
+
for (var i = self.config.showMonths; i--;) {
|
1366 |
+
self.weekdayContainer.children[i].innerHTML = "\n <span class='flatpickr-weekday'>\n " + weekdays.join("</span><span class='flatpickr-weekday'>") + "\n </span>\n ";
|
1367 |
+
}
|
1368 |
+
}
|
1369 |
+
/* istanbul ignore next */
|
1370 |
+
function buildWeeks() {
|
1371 |
+
self.calendarContainer.classList.add("hasWeeks");
|
1372 |
+
var weekWrapper = createElement("div", "flatpickr-weekwrapper");
|
1373 |
+
weekWrapper.appendChild(createElement("span", "flatpickr-weekday", self.l10n.weekAbbreviation));
|
1374 |
+
var weekNumbers = createElement("div", "flatpickr-weeks");
|
1375 |
+
weekWrapper.appendChild(weekNumbers);
|
1376 |
+
return {
|
1377 |
+
weekWrapper: weekWrapper,
|
1378 |
+
weekNumbers: weekNumbers,
|
1379 |
+
};
|
1380 |
+
}
|
1381 |
+
function changeMonth(value, isOffset) {
|
1382 |
+
if (isOffset === void 0) { isOffset = true; }
|
1383 |
+
var delta = isOffset ? value : value - self.currentMonth;
|
1384 |
+
if ((delta < 0 && self._hidePrevMonthArrow === true) ||
|
1385 |
+
(delta > 0 && self._hideNextMonthArrow === true))
|
1386 |
+
return;
|
1387 |
+
self.currentMonth += delta;
|
1388 |
+
if (self.currentMonth < 0 || self.currentMonth > 11) {
|
1389 |
+
self.currentYear += self.currentMonth > 11 ? 1 : -1;
|
1390 |
+
self.currentMonth = (self.currentMonth + 12) % 12;
|
1391 |
+
triggerEvent("onYearChange");
|
1392 |
+
buildMonthSwitch();
|
1393 |
+
}
|
1394 |
+
buildDays();
|
1395 |
+
triggerEvent("onMonthChange");
|
1396 |
+
updateNavigationCurrentMonth();
|
1397 |
+
}
|
1398 |
+
function clear(triggerChangeEvent, toInitial) {
|
1399 |
+
if (triggerChangeEvent === void 0) { triggerChangeEvent = true; }
|
1400 |
+
if (toInitial === void 0) { toInitial = true; }
|
1401 |
+
self.input.value = "";
|
1402 |
+
if (self.altInput !== undefined)
|
1403 |
+
self.altInput.value = "";
|
1404 |
+
if (self.mobileInput !== undefined)
|
1405 |
+
self.mobileInput.value = "";
|
1406 |
+
self.selectedDates = [];
|
1407 |
+
self.latestSelectedDateObj = undefined;
|
1408 |
+
if (toInitial === true) {
|
1409 |
+
self.currentYear = self._initialDate.getFullYear();
|
1410 |
+
self.currentMonth = self._initialDate.getMonth();
|
1411 |
+
}
|
1412 |
+
if (self.config.enableTime === true) {
|
1413 |
+
var _a = getDefaultHours(self.config), hours = _a.hours, minutes = _a.minutes, seconds = _a.seconds;
|
1414 |
+
setHours(hours, minutes, seconds);
|
1415 |
+
}
|
1416 |
+
self.redraw();
|
1417 |
+
if (triggerChangeEvent)
|
1418 |
+
// triggerChangeEvent is true (default) or an Event
|
1419 |
+
triggerEvent("onChange");
|
1420 |
+
}
|
1421 |
+
function close() {
|
1422 |
+
self.isOpen = false;
|
1423 |
+
if (!self.isMobile) {
|
1424 |
+
if (self.calendarContainer !== undefined) {
|
1425 |
+
self.calendarContainer.classList.remove("open");
|
1426 |
+
}
|
1427 |
+
if (self._input !== undefined) {
|
1428 |
+
self._input.classList.remove("active");
|
1429 |
+
}
|
1430 |
+
}
|
1431 |
+
triggerEvent("onClose");
|
1432 |
+
}
|
1433 |
+
function destroy() {
|
1434 |
+
if (self.config !== undefined)
|
1435 |
+
triggerEvent("onDestroy");
|
1436 |
+
for (var i = self._handlers.length; i--;) {
|
1437 |
+
self._handlers[i].remove();
|
1438 |
+
}
|
1439 |
+
self._handlers = [];
|
1440 |
+
if (self.mobileInput) {
|
1441 |
+
if (self.mobileInput.parentNode)
|
1442 |
+
self.mobileInput.parentNode.removeChild(self.mobileInput);
|
1443 |
+
self.mobileInput = undefined;
|
1444 |
+
}
|
1445 |
+
else if (self.calendarContainer && self.calendarContainer.parentNode) {
|
1446 |
+
if (self.config.static && self.calendarContainer.parentNode) {
|
1447 |
+
var wrapper = self.calendarContainer.parentNode;
|
1448 |
+
wrapper.lastChild && wrapper.removeChild(wrapper.lastChild);
|
1449 |
+
if (wrapper.parentNode) {
|
1450 |
+
while (wrapper.firstChild)
|
1451 |
+
wrapper.parentNode.insertBefore(wrapper.firstChild, wrapper);
|
1452 |
+
wrapper.parentNode.removeChild(wrapper);
|
1453 |
+
}
|
1454 |
+
}
|
1455 |
+
else
|
1456 |
+
self.calendarContainer.parentNode.removeChild(self.calendarContainer);
|
1457 |
+
}
|
1458 |
+
if (self.altInput) {
|
1459 |
+
self.input.type = "text";
|
1460 |
+
if (self.altInput.parentNode)
|
1461 |
+
self.altInput.parentNode.removeChild(self.altInput);
|
1462 |
+
delete self.altInput;
|
1463 |
+
}
|
1464 |
+
if (self.input) {
|
1465 |
+
self.input.type = self.input._type;
|
1466 |
+
self.input.classList.remove("flatpickr-input");
|
1467 |
+
self.input.removeAttribute("readonly");
|
1468 |
+
}
|
1469 |
+
[
|
1470 |
+
"_showTimeInput",
|
1471 |
+
"latestSelectedDateObj",
|
1472 |
+
"_hideNextMonthArrow",
|
1473 |
+
"_hidePrevMonthArrow",
|
1474 |
+
"__hideNextMonthArrow",
|
1475 |
+
"__hidePrevMonthArrow",
|
1476 |
+
"isMobile",
|
1477 |
+
"isOpen",
|
1478 |
+
"selectedDateElem",
|
1479 |
+
"minDateHasTime",
|
1480 |
+
"maxDateHasTime",
|
1481 |
+
"days",
|
1482 |
+
"daysContainer",
|
1483 |
+
"_input",
|
1484 |
+
"_positionElement",
|
1485 |
+
"innerContainer",
|
1486 |
+
"rContainer",
|
1487 |
+
"monthNav",
|
1488 |
+
"todayDateElem",
|
1489 |
+
"calendarContainer",
|
1490 |
+
"weekdayContainer",
|
1491 |
+
"prevMonthNav",
|
1492 |
+
"nextMonthNav",
|
1493 |
+
"monthsDropdownContainer",
|
1494 |
+
"currentMonthElement",
|
1495 |
+
"currentYearElement",
|
1496 |
+
"navigationCurrentMonth",
|
1497 |
+
"selectedDateElem",
|
1498 |
+
"config",
|
1499 |
+
].forEach(function (k) {
|
1500 |
+
try {
|
1501 |
+
delete self[k];
|
1502 |
+
}
|
1503 |
+
catch (_) { }
|
1504 |
+
});
|
1505 |
+
}
|
1506 |
+
function isCalendarElem(elem) {
|
1507 |
+
if (self.config.appendTo && self.config.appendTo.contains(elem))
|
1508 |
+
return true;
|
1509 |
+
return self.calendarContainer.contains(elem);
|
1510 |
+
}
|
1511 |
+
function documentClick(e) {
|
1512 |
+
if (self.isOpen && !self.config.inline) {
|
1513 |
+
var eventTarget_1 = getEventTarget(e);
|
1514 |
+
var isCalendarElement = isCalendarElem(eventTarget_1);
|
1515 |
+
var isInput = eventTarget_1 === self.input ||
|
1516 |
+
eventTarget_1 === self.altInput ||
|
1517 |
+
self.element.contains(eventTarget_1) ||
|
1518 |
+
// web components
|
1519 |
+
// e.path is not present in all browsers. circumventing typechecks
|
1520 |
+
(e.path &&
|
1521 |
+
e.path.indexOf &&
|
1522 |
+
(~e.path.indexOf(self.input) ||
|
1523 |
+
~e.path.indexOf(self.altInput)));
|
1524 |
+
var lostFocus = e.type === "blur"
|
1525 |
+
? isInput &&
|
1526 |
+
e.relatedTarget &&
|
1527 |
+
!isCalendarElem(e.relatedTarget)
|
1528 |
+
: !isInput &&
|
1529 |
+
!isCalendarElement &&
|
1530 |
+
!isCalendarElem(e.relatedTarget);
|
1531 |
+
var isIgnored = !self.config.ignoredFocusElements.some(function (elem) {
|
1532 |
+
return elem.contains(eventTarget_1);
|
1533 |
+
});
|
1534 |
+
if (lostFocus && isIgnored) {
|
1535 |
+
if (self.timeContainer !== undefined &&
|
1536 |
+
self.minuteElement !== undefined &&
|
1537 |
+
self.hourElement !== undefined &&
|
1538 |
+
self.input.value !== "" &&
|
1539 |
+
self.input.value !== undefined) {
|
1540 |
+
updateTime();
|
1541 |
+
}
|
1542 |
+
self.close();
|
1543 |
+
if (self.config &&
|
1544 |
+
self.config.mode === "range" &&
|
1545 |
+
self.selectedDates.length === 1) {
|
1546 |
+
self.clear(false);
|
1547 |
+
self.redraw();
|
1548 |
+
}
|
1549 |
+
}
|
1550 |
+
}
|
1551 |
+
}
|
1552 |
+
function changeYear(newYear) {
|
1553 |
+
if (!newYear ||
|
1554 |
+
(self.config.minDate && newYear < self.config.minDate.getFullYear()) ||
|
1555 |
+
(self.config.maxDate && newYear > self.config.maxDate.getFullYear()))
|
1556 |
+
return;
|
1557 |
+
var newYearNum = newYear, isNewYear = self.currentYear !== newYearNum;
|
1558 |
+
self.currentYear = newYearNum || self.currentYear;
|
1559 |
+
if (self.config.maxDate &&
|
1560 |
+
self.currentYear === self.config.maxDate.getFullYear()) {
|
1561 |
+
self.currentMonth = Math.min(self.config.maxDate.getMonth(), self.currentMonth);
|
1562 |
+
}
|
1563 |
+
else if (self.config.minDate &&
|
1564 |
+
self.currentYear === self.config.minDate.getFullYear()) {
|
1565 |
+
self.currentMonth = Math.max(self.config.minDate.getMonth(), self.currentMonth);
|
1566 |
+
}
|
1567 |
+
if (isNewYear) {
|
1568 |
+
self.redraw();
|
1569 |
+
triggerEvent("onYearChange");
|
1570 |
+
buildMonthSwitch();
|
1571 |
+
}
|
1572 |
+
}
|
1573 |
+
function isEnabled(date, timeless) {
|
1574 |
+
var _a;
|
1575 |
+
if (timeless === void 0) { timeless = true; }
|
1576 |
+
var dateToCheck = self.parseDate(date, undefined, timeless); // timeless
|
1577 |
+
if ((self.config.minDate &&
|
1578 |
+
dateToCheck &&
|
1579 |
+
compareDates(dateToCheck, self.config.minDate, timeless !== undefined ? timeless : !self.minDateHasTime) < 0) ||
|
1580 |
+
(self.config.maxDate &&
|
1581 |
+
dateToCheck &&
|
1582 |
+
compareDates(dateToCheck, self.config.maxDate, timeless !== undefined ? timeless : !self.maxDateHasTime) > 0))
|
1583 |
+
return false;
|
1584 |
+
if (!self.config.enable && self.config.disable.length === 0)
|
1585 |
+
return true;
|
1586 |
+
if (dateToCheck === undefined)
|
1587 |
+
return false;
|
1588 |
+
var bool = !!self.config.enable, array = (_a = self.config.enable) !== null && _a !== void 0 ? _a : self.config.disable;
|
1589 |
+
for (var i = 0, d = void 0; i < array.length; i++) {
|
1590 |
+
d = array[i];
|
1591 |
+
if (typeof d === "function" &&
|
1592 |
+
d(dateToCheck) // disabled by function
|
1593 |
+
)
|
1594 |
+
return bool;
|
1595 |
+
else if (d instanceof Date &&
|
1596 |
+
dateToCheck !== undefined &&
|
1597 |
+
d.getTime() === dateToCheck.getTime())
|
1598 |
+
// disabled by date
|
1599 |
+
return bool;
|
1600 |
+
else if (typeof d === "string") {
|
1601 |
+
// disabled by date string
|
1602 |
+
var parsed = self.parseDate(d, undefined, true);
|
1603 |
+
return parsed && parsed.getTime() === dateToCheck.getTime()
|
1604 |
+
? bool
|
1605 |
+
: !bool;
|
1606 |
+
}
|
1607 |
+
else if (
|
1608 |
+
// disabled by range
|
1609 |
+
typeof d === "object" &&
|
1610 |
+
dateToCheck !== undefined &&
|
1611 |
+
d.from &&
|
1612 |
+
d.to &&
|
1613 |
+
dateToCheck.getTime() >= d.from.getTime() &&
|
1614 |
+
dateToCheck.getTime() <= d.to.getTime())
|
1615 |
+
return bool;
|
1616 |
+
}
|
1617 |
+
return !bool;
|
1618 |
+
}
|
1619 |
+
function isInView(elem) {
|
1620 |
+
if (self.daysContainer !== undefined)
|
1621 |
+
return (elem.className.indexOf("hidden") === -1 &&
|
1622 |
+
elem.className.indexOf("flatpickr-disabled") === -1 &&
|
1623 |
+
self.daysContainer.contains(elem));
|
1624 |
+
return false;
|
1625 |
+
}
|
1626 |
+
function onBlur(e) {
|
1627 |
+
var isInput = e.target === self._input;
|
1628 |
+
if (isInput &&
|
1629 |
+
(self.selectedDates.length > 0 || self._input.value.length > 0) &&
|
1630 |
+
!(e.relatedTarget && isCalendarElem(e.relatedTarget))) {
|
1631 |
+
self.setDate(self._input.value, true, e.target === self.altInput
|
1632 |
+
? self.config.altFormat
|
1633 |
+
: self.config.dateFormat);
|
1634 |
+
}
|
1635 |
+
}
|
1636 |
+
function onKeyDown(e) {
|
1637 |
+
// e.key e.keyCode
|
1638 |
+
// "Backspace" 8
|
1639 |
+
// "Tab" 9
|
1640 |
+
// "Enter" 13
|
1641 |
+
// "Escape" (IE "Esc") 27
|
1642 |
+
// "ArrowLeft" (IE "Left") 37
|
1643 |
+
// "ArrowUp" (IE "Up") 38
|
1644 |
+
// "ArrowRight" (IE "Right") 39
|
1645 |
+
// "ArrowDown" (IE "Down") 40
|
1646 |
+
// "Delete" (IE "Del") 46
|
1647 |
+
var eventTarget = getEventTarget(e);
|
1648 |
+
var isInput = self.config.wrap
|
1649 |
+
? element.contains(eventTarget)
|
1650 |
+
: eventTarget === self._input;
|
1651 |
+
var allowInput = self.config.allowInput;
|
1652 |
+
var allowKeydown = self.isOpen && (!allowInput || !isInput);
|
1653 |
+
var allowInlineKeydown = self.config.inline && isInput && !allowInput;
|
1654 |
+
if (e.keyCode === 13 && isInput) {
|
1655 |
+
if (allowInput) {
|
1656 |
+
self.setDate(self._input.value, true, eventTarget === self.altInput
|
1657 |
+
? self.config.altFormat
|
1658 |
+
: self.config.dateFormat);
|
1659 |
+
return eventTarget.blur();
|
1660 |
+
}
|
1661 |
+
else {
|
1662 |
+
self.open();
|
1663 |
+
}
|
1664 |
+
}
|
1665 |
+
else if (isCalendarElem(eventTarget) ||
|
1666 |
+
allowKeydown ||
|
1667 |
+
allowInlineKeydown) {
|
1668 |
+
var isTimeObj = !!self.timeContainer &&
|
1669 |
+
self.timeContainer.contains(eventTarget);
|
1670 |
+
switch (e.keyCode) {
|
1671 |
+
case 13:
|
1672 |
+
if (isTimeObj) {
|
1673 |
+
e.preventDefault();
|
1674 |
+
updateTime();
|
1675 |
+
focusAndClose();
|
1676 |
+
}
|
1677 |
+
else
|
1678 |
+
selectDate(e);
|
1679 |
+
break;
|
1680 |
+
case 27: // escape
|
1681 |
+
e.preventDefault();
|
1682 |
+
focusAndClose();
|
1683 |
+
break;
|
1684 |
+
case 8:
|
1685 |
+
case 46:
|
1686 |
+
if (isInput && !self.config.allowInput) {
|
1687 |
+
e.preventDefault();
|
1688 |
+
self.clear();
|
1689 |
+
}
|
1690 |
+
break;
|
1691 |
+
case 37:
|
1692 |
+
case 39:
|
1693 |
+
if (!isTimeObj && !isInput) {
|
1694 |
+
e.preventDefault();
|
1695 |
+
if (self.daysContainer !== undefined &&
|
1696 |
+
(allowInput === false ||
|
1697 |
+
(document.activeElement && isInView(document.activeElement)))) {
|
1698 |
+
var delta_1 = e.keyCode === 39 ? 1 : -1;
|
1699 |
+
if (!e.ctrlKey)
|
1700 |
+
focusOnDay(undefined, delta_1);
|
1701 |
+
else {
|
1702 |
+
e.stopPropagation();
|
1703 |
+
changeMonth(delta_1);
|
1704 |
+
focusOnDay(getFirstAvailableDay(1), 0);
|
1705 |
+
}
|
1706 |
+
}
|
1707 |
+
}
|
1708 |
+
else if (self.hourElement)
|
1709 |
+
self.hourElement.focus();
|
1710 |
+
break;
|
1711 |
+
case 38:
|
1712 |
+
case 40:
|
1713 |
+
e.preventDefault();
|
1714 |
+
var delta = e.keyCode === 40 ? 1 : -1;
|
1715 |
+
if ((self.daysContainer &&
|
1716 |
+
eventTarget.$i !== undefined) ||
|
1717 |
+
eventTarget === self.input ||
|
1718 |
+
eventTarget === self.altInput) {
|
1719 |
+
if (e.ctrlKey) {
|
1720 |
+
e.stopPropagation();
|
1721 |
+
changeYear(self.currentYear - delta);
|
1722 |
+
focusOnDay(getFirstAvailableDay(1), 0);
|
1723 |
+
}
|
1724 |
+
else if (!isTimeObj)
|
1725 |
+
focusOnDay(undefined, delta * 7);
|
1726 |
+
}
|
1727 |
+
else if (eventTarget === self.currentYearElement) {
|
1728 |
+
changeYear(self.currentYear - delta);
|
1729 |
+
}
|
1730 |
+
else if (self.config.enableTime) {
|
1731 |
+
if (!isTimeObj && self.hourElement)
|
1732 |
+
self.hourElement.focus();
|
1733 |
+
updateTime(e);
|
1734 |
+
self._debouncedChange();
|
1735 |
+
}
|
1736 |
+
break;
|
1737 |
+
case 9:
|
1738 |
+
if (isTimeObj) {
|
1739 |
+
var elems = [
|
1740 |
+
self.hourElement,
|
1741 |
+
self.minuteElement,
|
1742 |
+
self.secondElement,
|
1743 |
+
self.amPM,
|
1744 |
+
]
|
1745 |
+
.concat(self.pluginElements)
|
1746 |
+
.filter(function (x) { return x; });
|
1747 |
+
var i = elems.indexOf(eventTarget);
|
1748 |
+
if (i !== -1) {
|
1749 |
+
var target = elems[i + (e.shiftKey ? -1 : 1)];
|
1750 |
+
e.preventDefault();
|
1751 |
+
(target || self._input).focus();
|
1752 |
+
}
|
1753 |
+
}
|
1754 |
+
else if (!self.config.noCalendar &&
|
1755 |
+
self.daysContainer &&
|
1756 |
+
self.daysContainer.contains(eventTarget) &&
|
1757 |
+
e.shiftKey) {
|
1758 |
+
e.preventDefault();
|
1759 |
+
self._input.focus();
|
1760 |
+
}
|
1761 |
+
break;
|
1762 |
+
}
|
1763 |
+
}
|
1764 |
+
if (self.amPM !== undefined && eventTarget === self.amPM) {
|
1765 |
+
switch (e.key) {
|
1766 |
+
case self.l10n.amPM[0].charAt(0):
|
1767 |
+
case self.l10n.amPM[0].charAt(0).toLowerCase():
|
1768 |
+
self.amPM.textContent = self.l10n.amPM[0];
|
1769 |
+
setHoursFromInputs();
|
1770 |
+
updateValue();
|
1771 |
+
break;
|
1772 |
+
case self.l10n.amPM[1].charAt(0):
|
1773 |
+
case self.l10n.amPM[1].charAt(0).toLowerCase():
|
1774 |
+
self.amPM.textContent = self.l10n.amPM[1];
|
1775 |
+
setHoursFromInputs();
|
1776 |
+
updateValue();
|
1777 |
+
break;
|
1778 |
+
}
|
1779 |
+
}
|
1780 |
+
if (isInput || isCalendarElem(eventTarget)) {
|
1781 |
+
triggerEvent("onKeyDown", e);
|
1782 |
+
}
|
1783 |
+
}
|
1784 |
+
function onMouseOver(elem) {
|
1785 |
+
if (self.selectedDates.length !== 1 ||
|
1786 |
+
(elem &&
|
1787 |
+
(!elem.classList.contains("flatpickr-day") ||
|
1788 |
+
elem.classList.contains("flatpickr-disabled"))))
|
1789 |
+
return;
|
1790 |
+
var hoverDate = elem
|
1791 |
+
? elem.dateObj.getTime()
|
1792 |
+
: self.days.firstElementChild.dateObj.getTime(), initialDate = self.parseDate(self.selectedDates[0], undefined, true).getTime(), rangeStartDate = Math.min(hoverDate, self.selectedDates[0].getTime()), rangeEndDate = Math.max(hoverDate, self.selectedDates[0].getTime());
|
1793 |
+
var containsDisabled = false;
|
1794 |
+
var minRange = 0, maxRange = 0;
|
1795 |
+
for (var t = rangeStartDate; t < rangeEndDate; t += duration.DAY) {
|
1796 |
+
if (!isEnabled(new Date(t), true)) {
|
1797 |
+
containsDisabled =
|
1798 |
+
containsDisabled || (t > rangeStartDate && t < rangeEndDate);
|
1799 |
+
if (t < initialDate && (!minRange || t > minRange))
|
1800 |
+
minRange = t;
|
1801 |
+
else if (t > initialDate && (!maxRange || t < maxRange))
|
1802 |
+
maxRange = t;
|
1803 |
+
}
|
1804 |
+
}
|
1805 |
+
for (var m = 0; m < self.config.showMonths; m++) {
|
1806 |
+
var month = self.daysContainer.children[m];
|
1807 |
+
var _loop_1 = function (i, l) {
|
1808 |
+
var dayElem = month.children[i], date = dayElem.dateObj;
|
1809 |
+
var timestamp = date.getTime();
|
1810 |
+
var outOfRange = (minRange > 0 && timestamp < minRange) ||
|
1811 |
+
(maxRange > 0 && timestamp > maxRange);
|
1812 |
+
if (outOfRange) {
|
1813 |
+
dayElem.classList.add("notAllowed");
|
1814 |
+
["inRange", "startRange", "endRange"].forEach(function (c) {
|
1815 |
+
dayElem.classList.remove(c);
|
1816 |
+
});
|
1817 |
+
return "continue";
|
1818 |
+
}
|
1819 |
+
else if (containsDisabled && !outOfRange)
|
1820 |
+
return "continue";
|
1821 |
+
["startRange", "inRange", "endRange", "notAllowed"].forEach(function (c) {
|
1822 |
+
dayElem.classList.remove(c);
|
1823 |
+
});
|
1824 |
+
if (elem !== undefined) {
|
1825 |
+
elem.classList.add(hoverDate <= self.selectedDates[0].getTime()
|
1826 |
+
? "startRange"
|
1827 |
+
: "endRange");
|
1828 |
+
if (initialDate < hoverDate && timestamp === initialDate)
|
1829 |
+
dayElem.classList.add("startRange");
|
1830 |
+
else if (initialDate > hoverDate && timestamp === initialDate)
|
1831 |
+
dayElem.classList.add("endRange");
|
1832 |
+
if (timestamp >= minRange &&
|
1833 |
+
(maxRange === 0 || timestamp <= maxRange) &&
|
1834 |
+
isBetween(timestamp, initialDate, hoverDate))
|
1835 |
+
dayElem.classList.add("inRange");
|
1836 |
+
}
|
1837 |
+
};
|
1838 |
+
for (var i = 0, l = month.children.length; i < l; i++) {
|
1839 |
+
_loop_1(i, l);
|
1840 |
+
}
|
1841 |
+
}
|
1842 |
+
}
|
1843 |
+
function onResize() {
|
1844 |
+
if (self.isOpen && !self.config.static && !self.config.inline)
|
1845 |
+
positionCalendar();
|
1846 |
+
}
|
1847 |
+
function open(e, positionElement) {
|
1848 |
+
if (positionElement === void 0) { positionElement = self._positionElement; }
|
1849 |
+
if (self.isMobile === true) {
|
1850 |
+
if (e) {
|
1851 |
+
e.preventDefault();
|
1852 |
+
var eventTarget = getEventTarget(e);
|
1853 |
+
if (eventTarget) {
|
1854 |
+
eventTarget.blur();
|
1855 |
+
}
|
1856 |
+
}
|
1857 |
+
if (self.mobileInput !== undefined) {
|
1858 |
+
self.mobileInput.focus();
|
1859 |
+
self.mobileInput.click();
|
1860 |
+
}
|
1861 |
+
triggerEvent("onOpen");
|
1862 |
+
return;
|
1863 |
+
}
|
1864 |
+
else if (self._input.disabled || self.config.inline) {
|
1865 |
+
return;
|
1866 |
+
}
|
1867 |
+
var wasOpen = self.isOpen;
|
1868 |
+
self.isOpen = true;
|
1869 |
+
if (!wasOpen) {
|
1870 |
+
self.calendarContainer.classList.add("open");
|
1871 |
+
self._input.classList.add("active");
|
1872 |
+
triggerEvent("onOpen");
|
1873 |
+
positionCalendar(positionElement);
|
1874 |
+
}
|
1875 |
+
if (self.config.enableTime === true && self.config.noCalendar === true) {
|
1876 |
+
if (self.config.allowInput === false &&
|
1877 |
+
(e === undefined ||
|
1878 |
+
!self.timeContainer.contains(e.relatedTarget))) {
|
1879 |
+
setTimeout(function () { return self.hourElement.select(); }, 50);
|
1880 |
+
}
|
1881 |
+
}
|
1882 |
+
}
|
1883 |
+
function minMaxDateSetter(type) {
|
1884 |
+
return function (date) {
|
1885 |
+
var dateObj = (self.config["_" + type + "Date"] = self.parseDate(date, self.config.dateFormat));
|
1886 |
+
var inverseDateObj = self.config["_" + (type === "min" ? "max" : "min") + "Date"];
|
1887 |
+
if (dateObj !== undefined) {
|
1888 |
+
self[type === "min" ? "minDateHasTime" : "maxDateHasTime"] =
|
1889 |
+
dateObj.getHours() > 0 ||
|
1890 |
+
dateObj.getMinutes() > 0 ||
|
1891 |
+
dateObj.getSeconds() > 0;
|
1892 |
+
}
|
1893 |
+
if (self.selectedDates) {
|
1894 |
+
self.selectedDates = self.selectedDates.filter(function (d) { return isEnabled(d); });
|
1895 |
+
if (!self.selectedDates.length && type === "min")
|
1896 |
+
setHoursFromDate(dateObj);
|
1897 |
+
updateValue();
|
1898 |
+
}
|
1899 |
+
if (self.daysContainer) {
|
1900 |
+
redraw();
|
1901 |
+
if (dateObj !== undefined)
|
1902 |
+
self.currentYearElement[type] = dateObj.getFullYear().toString();
|
1903 |
+
else
|
1904 |
+
self.currentYearElement.removeAttribute(type);
|
1905 |
+
self.currentYearElement.disabled =
|
1906 |
+
!!inverseDateObj &&
|
1907 |
+
dateObj !== undefined &&
|
1908 |
+
inverseDateObj.getFullYear() === dateObj.getFullYear();
|
1909 |
+
}
|
1910 |
+
};
|
1911 |
+
}
|
1912 |
+
function parseConfig() {
|
1913 |
+
var boolOpts = [
|
1914 |
+
"wrap",
|
1915 |
+
"weekNumbers",
|
1916 |
+
"allowInput",
|
1917 |
+
"allowInvalidPreload",
|
1918 |
+
"clickOpens",
|
1919 |
+
"time_24hr",
|
1920 |
+
"enableTime",
|
1921 |
+
"noCalendar",
|
1922 |
+
"altInput",
|
1923 |
+
"shorthandCurrentMonth",
|
1924 |
+
"inline",
|
1925 |
+
"static",
|
1926 |
+
"enableSeconds",
|
1927 |
+
"disableMobile",
|
1928 |
+
];
|
1929 |
+
var userConfig = __assign(__assign({}, JSON.parse(JSON.stringify(element.dataset || {}))), instanceConfig);
|
1930 |
+
var formats = {};
|
1931 |
+
self.config.parseDate = userConfig.parseDate;
|
1932 |
+
self.config.formatDate = userConfig.formatDate;
|
1933 |
+
Object.defineProperty(self.config, "enable", {
|
1934 |
+
get: function () { return self.config._enable; },
|
1935 |
+
set: function (dates) {
|
1936 |
+
self.config._enable = parseDateRules(dates);
|
1937 |
+
},
|
1938 |
+
});
|
1939 |
+
Object.defineProperty(self.config, "disable", {
|
1940 |
+
get: function () { return self.config._disable; },
|
1941 |
+
set: function (dates) {
|
1942 |
+
self.config._disable = parseDateRules(dates);
|
1943 |
+
},
|
1944 |
+
});
|
1945 |
+
var timeMode = userConfig.mode === "time";
|
1946 |
+
if (!userConfig.dateFormat && (userConfig.enableTime || timeMode)) {
|
1947 |
+
var defaultDateFormat = flatpickr.defaultConfig.dateFormat || defaults.dateFormat;
|
1948 |
+
formats.dateFormat =
|
1949 |
+
userConfig.noCalendar || timeMode
|
1950 |
+
? "H:i" + (userConfig.enableSeconds ? ":S" : "")
|
1951 |
+
: defaultDateFormat + " H:i" + (userConfig.enableSeconds ? ":S" : "");
|
1952 |
+
}
|
1953 |
+
if (userConfig.altInput &&
|
1954 |
+
(userConfig.enableTime || timeMode) &&
|
1955 |
+
!userConfig.altFormat) {
|
1956 |
+
var defaultAltFormat = flatpickr.defaultConfig.altFormat || defaults.altFormat;
|
1957 |
+
formats.altFormat =
|
1958 |
+
userConfig.noCalendar || timeMode
|
1959 |
+
? "h:i" + (userConfig.enableSeconds ? ":S K" : " K")
|
1960 |
+
: defaultAltFormat + (" h:i" + (userConfig.enableSeconds ? ":S" : "") + " K");
|
1961 |
+
}
|
1962 |
+
Object.defineProperty(self.config, "minDate", {
|
1963 |
+
get: function () { return self.config._minDate; },
|
1964 |
+
set: minMaxDateSetter("min"),
|
1965 |
+
});
|
1966 |
+
Object.defineProperty(self.config, "maxDate", {
|
1967 |
+
get: function () { return self.config._maxDate; },
|
1968 |
+
set: minMaxDateSetter("max"),
|
1969 |
+
});
|
1970 |
+
var minMaxTimeSetter = function (type) { return function (val) {
|
1971 |
+
self.config[type === "min" ? "_minTime" : "_maxTime"] = self.parseDate(val, "H:i:S");
|
1972 |
+
}; };
|
1973 |
+
Object.defineProperty(self.config, "minTime", {
|
1974 |
+
get: function () { return self.config._minTime; },
|
1975 |
+
set: minMaxTimeSetter("min"),
|
1976 |
+
});
|
1977 |
+
Object.defineProperty(self.config, "maxTime", {
|
1978 |
+
get: function () { return self.config._maxTime; },
|
1979 |
+
set: minMaxTimeSetter("max"),
|
1980 |
+
});
|
1981 |
+
if (userConfig.mode === "time") {
|
1982 |
+
self.config.noCalendar = true;
|
1983 |
+
self.config.enableTime = true;
|
1984 |
+
}
|
1985 |
+
Object.assign(self.config, formats, userConfig);
|
1986 |
+
for (var i = 0; i < boolOpts.length; i++)
|
1987 |
+
// https://github.com/microsoft/TypeScript/issues/31663
|
1988 |
+
self.config[boolOpts[i]] =
|
1989 |
+
self.config[boolOpts[i]] === true ||
|
1990 |
+
self.config[boolOpts[i]] === "true";
|
1991 |
+
HOOKS.filter(function (hook) { return self.config[hook] !== undefined; }).forEach(function (hook) {
|
1992 |
+
self.config[hook] = arrayify(self.config[hook] || []).map(bindToInstance);
|
1993 |
+
});
|
1994 |
+
self.isMobile =
|
1995 |
+
!self.config.disableMobile &&
|
1996 |
+
!self.config.inline &&
|
1997 |
+
self.config.mode === "single" &&
|
1998 |
+
!self.config.disable.length &&
|
1999 |
+
!self.config.enable &&
|
2000 |
+
!self.config.weekNumbers &&
|
2001 |
+
/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
|
2002 |
+
for (var i = 0; i < self.config.plugins.length; i++) {
|
2003 |
+
var pluginConf = self.config.plugins[i](self) || {};
|
2004 |
+
for (var key in pluginConf) {
|
2005 |
+
if (HOOKS.indexOf(key) > -1) {
|
2006 |
+
self.config[key] = arrayify(pluginConf[key])
|
2007 |
+
.map(bindToInstance)
|
2008 |
+
.concat(self.config[key]);
|
2009 |
+
}
|
2010 |
+
else if (typeof userConfig[key] === "undefined")
|
2011 |
+
self.config[key] = pluginConf[key];
|
2012 |
+
}
|
2013 |
+
}
|
2014 |
+
if (!userConfig.altInputClass) {
|
2015 |
+
self.config.altInputClass =
|
2016 |
+
getInputElem().className + " " + self.config.altInputClass;
|
2017 |
+
}
|
2018 |
+
triggerEvent("onParseConfig");
|
2019 |
+
}
|
2020 |
+
function getInputElem() {
|
2021 |
+
return self.config.wrap
|
2022 |
+
? element.querySelector("[data-input]")
|
2023 |
+
: element;
|
2024 |
+
}
|
2025 |
+
function setupLocale() {
|
2026 |
+
if (typeof self.config.locale !== "object" &&
|
2027 |
+
typeof flatpickr.l10ns[self.config.locale] === "undefined")
|
2028 |
+
self.config.errorHandler(new Error("flatpickr: invalid locale " + self.config.locale));
|
2029 |
+
self.l10n = __assign(__assign({}, flatpickr.l10ns.default), (typeof self.config.locale === "object"
|
2030 |
+
? self.config.locale
|
2031 |
+
: self.config.locale !== "default"
|
2032 |
+
? flatpickr.l10ns[self.config.locale]
|
2033 |
+
: undefined));
|
2034 |
+
tokenRegex.K = "(" + self.l10n.amPM[0] + "|" + self.l10n.amPM[1] + "|" + self.l10n.amPM[0].toLowerCase() + "|" + self.l10n.amPM[1].toLowerCase() + ")";
|
2035 |
+
var userConfig = __assign(__assign({}, instanceConfig), JSON.parse(JSON.stringify(element.dataset || {})));
|
2036 |
+
if (userConfig.time_24hr === undefined &&
|
2037 |
+
flatpickr.defaultConfig.time_24hr === undefined) {
|
2038 |
+
self.config.time_24hr = self.l10n.time_24hr;
|
2039 |
+
}
|
2040 |
+
self.formatDate = createDateFormatter(self);
|
2041 |
+
self.parseDate = createDateParser({ config: self.config, l10n: self.l10n });
|
2042 |
+
}
|
2043 |
+
function positionCalendar(customPositionElement) {
|
2044 |
+
if (typeof self.config.position === "function") {
|
2045 |
+
return void self.config.position(self, customPositionElement);
|
2046 |
+
}
|
2047 |
+
if (self.calendarContainer === undefined)
|
2048 |
+
return;
|
2049 |
+
triggerEvent("onPreCalendarPosition");
|
2050 |
+
var positionElement = customPositionElement || self._positionElement;
|
2051 |
+
var calendarHeight = Array.prototype.reduce.call(self.calendarContainer.children, (function (acc, child) { return acc + child.offsetHeight; }), 0), calendarWidth = self.calendarContainer.offsetWidth, configPos = self.config.position.split(" "), configPosVertical = configPos[0], configPosHorizontal = configPos.length > 1 ? configPos[1] : null, inputBounds = positionElement.getBoundingClientRect(), distanceFromBottom = window.innerHeight - inputBounds.bottom, showOnTop = configPosVertical === "above" ||
|
2052 |
+
(configPosVertical !== "below" &&
|
2053 |
+
distanceFromBottom < calendarHeight &&
|
2054 |
+
inputBounds.top > calendarHeight);
|
2055 |
+
var top = window.pageYOffset +
|
2056 |
+
inputBounds.top +
|
2057 |
+
(!showOnTop ? positionElement.offsetHeight + 2 : -calendarHeight - 2);
|
2058 |
+
toggleClass(self.calendarContainer, "arrowTop", !showOnTop);
|
2059 |
+
toggleClass(self.calendarContainer, "arrowBottom", showOnTop);
|
2060 |
+
if (self.config.inline)
|
2061 |
+
return;
|
2062 |
+
var left = window.pageXOffset + inputBounds.left;
|
2063 |
+
var isCenter = false;
|
2064 |
+
var isRight = false;
|
2065 |
+
if (configPosHorizontal === "center") {
|
2066 |
+
left -= (calendarWidth - inputBounds.width) / 2;
|
2067 |
+
isCenter = true;
|
2068 |
+
}
|
2069 |
+
else if (configPosHorizontal === "right") {
|
2070 |
+
left -= calendarWidth - inputBounds.width;
|
2071 |
+
isRight = true;
|
2072 |
+
}
|
2073 |
+
toggleClass(self.calendarContainer, "arrowLeft", !isCenter && !isRight);
|
2074 |
+
toggleClass(self.calendarContainer, "arrowCenter", isCenter);
|
2075 |
+
toggleClass(self.calendarContainer, "arrowRight", isRight);
|
2076 |
+
var right = window.document.body.offsetWidth -
|
2077 |
+
(window.pageXOffset + inputBounds.right);
|
2078 |
+
var rightMost = left + calendarWidth > window.document.body.offsetWidth;
|
2079 |
+
var centerMost = right + calendarWidth > window.document.body.offsetWidth;
|
2080 |
+
toggleClass(self.calendarContainer, "rightMost", rightMost);
|
2081 |
+
if (self.config.static)
|
2082 |
+
return;
|
2083 |
+
self.calendarContainer.style.top = top + "px";
|
2084 |
+
if (!rightMost) {
|
2085 |
+
self.calendarContainer.style.left = left + "px";
|
2086 |
+
self.calendarContainer.style.right = "auto";
|
2087 |
+
}
|
2088 |
+
else if (!centerMost) {
|
2089 |
+
self.calendarContainer.style.left = "auto";
|
2090 |
+
self.calendarContainer.style.right = right + "px";
|
2091 |
+
}
|
2092 |
+
else {
|
2093 |
+
var doc = getDocumentStyleSheet();
|
2094 |
+
// some testing environments don't have css support
|
2095 |
+
if (doc === undefined)
|
2096 |
+
return;
|
2097 |
+
var bodyWidth = window.document.body.offsetWidth;
|
2098 |
+
var centerLeft = Math.max(0, bodyWidth / 2 - calendarWidth / 2);
|
2099 |
+
var centerBefore = ".flatpickr-calendar.centerMost:before";
|
2100 |
+
var centerAfter = ".flatpickr-calendar.centerMost:after";
|
2101 |
+
var centerIndex = doc.cssRules.length;
|
2102 |
+
var centerStyle = "{left:" + inputBounds.left + "px;right:auto;}";
|
2103 |
+
toggleClass(self.calendarContainer, "rightMost", false);
|
2104 |
+
toggleClass(self.calendarContainer, "centerMost", true);
|
2105 |
+
doc.insertRule(centerBefore + "," + centerAfter + centerStyle, centerIndex);
|
2106 |
+
self.calendarContainer.style.left = centerLeft + "px";
|
2107 |
+
self.calendarContainer.style.right = "auto";
|
2108 |
+
}
|
2109 |
+
}
|
2110 |
+
function getDocumentStyleSheet() {
|
2111 |
+
var editableSheet = null;
|
2112 |
+
for (var i = 0; i < document.styleSheets.length; i++) {
|
2113 |
+
var sheet = document.styleSheets[i];
|
2114 |
+
try {
|
2115 |
+
sheet.cssRules;
|
2116 |
+
}
|
2117 |
+
catch (err) {
|
2118 |
+
continue;
|
2119 |
+
}
|
2120 |
+
editableSheet = sheet;
|
2121 |
+
break;
|
2122 |
+
}
|
2123 |
+
return editableSheet != null ? editableSheet : createStyleSheet();
|
2124 |
+
}
|
2125 |
+
function createStyleSheet() {
|
2126 |
+
var style = document.createElement("style");
|
2127 |
+
document.head.appendChild(style);
|
2128 |
+
return style.sheet;
|
2129 |
+
}
|
2130 |
+
function redraw() {
|
2131 |
+
if (self.config.noCalendar || self.isMobile)
|
2132 |
+
return;
|
2133 |
+
buildMonthSwitch();
|
2134 |
+
updateNavigationCurrentMonth();
|
2135 |
+
buildDays();
|
2136 |
+
}
|
2137 |
+
function focusAndClose() {
|
2138 |
+
self._input.focus();
|
2139 |
+
if (window.navigator.userAgent.indexOf("MSIE") !== -1 ||
|
2140 |
+
navigator.msMaxTouchPoints !== undefined) {
|
2141 |
+
// hack - bugs in the way IE handles focus keeps the calendar open
|
2142 |
+
setTimeout(self.close, 0);
|
2143 |
+
}
|
2144 |
+
else {
|
2145 |
+
self.close();
|
2146 |
+
}
|
2147 |
+
}
|
2148 |
+
function selectDate(e) {
|
2149 |
+
e.preventDefault();
|
2150 |
+
e.stopPropagation();
|
2151 |
+
var isSelectable = function (day) {
|
2152 |
+
return day.classList &&
|
2153 |
+
day.classList.contains("flatpickr-day") &&
|
2154 |
+
!day.classList.contains("flatpickr-disabled") &&
|
2155 |
+
!day.classList.contains("notAllowed");
|
2156 |
+
};
|
2157 |
+
var t = findParent(getEventTarget(e), isSelectable);
|
2158 |
+
if (t === undefined)
|
2159 |
+
return;
|
2160 |
+
var target = t;
|
2161 |
+
var selectedDate = (self.latestSelectedDateObj = new Date(target.dateObj.getTime()));
|
2162 |
+
var shouldChangeMonth = (selectedDate.getMonth() < self.currentMonth ||
|
2163 |
+
selectedDate.getMonth() >
|
2164 |
+
self.currentMonth + self.config.showMonths - 1) &&
|
2165 |
+
self.config.mode !== "range";
|
2166 |
+
self.selectedDateElem = target;
|
2167 |
+
if (self.config.mode === "single")
|
2168 |
+
self.selectedDates = [selectedDate];
|
2169 |
+
else if (self.config.mode === "multiple") {
|
2170 |
+
var selectedIndex = isDateSelected(selectedDate);
|
2171 |
+
if (selectedIndex)
|
2172 |
+
self.selectedDates.splice(parseInt(selectedIndex), 1);
|
2173 |
+
else
|
2174 |
+
self.selectedDates.push(selectedDate);
|
2175 |
+
}
|
2176 |
+
else if (self.config.mode === "range") {
|
2177 |
+
if (self.selectedDates.length === 2) {
|
2178 |
+
self.clear(false, false);
|
2179 |
+
}
|
2180 |
+
self.latestSelectedDateObj = selectedDate;
|
2181 |
+
self.selectedDates.push(selectedDate);
|
2182 |
+
// unless selecting same date twice, sort ascendingly
|
2183 |
+
if (compareDates(selectedDate, self.selectedDates[0], true) !== 0)
|
2184 |
+
self.selectedDates.sort(function (a, b) { return a.getTime() - b.getTime(); });
|
2185 |
+
}
|
2186 |
+
setHoursFromInputs();
|
2187 |
+
if (shouldChangeMonth) {
|
2188 |
+
var isNewYear = self.currentYear !== selectedDate.getFullYear();
|
2189 |
+
self.currentYear = selectedDate.getFullYear();
|
2190 |
+
self.currentMonth = selectedDate.getMonth();
|
2191 |
+
if (isNewYear) {
|
2192 |
+
triggerEvent("onYearChange");
|
2193 |
+
buildMonthSwitch();
|
2194 |
+
}
|
2195 |
+
triggerEvent("onMonthChange");
|
2196 |
+
}
|
2197 |
+
updateNavigationCurrentMonth();
|
2198 |
+
buildDays();
|
2199 |
+
updateValue();
|
2200 |
+
// maintain focus
|
2201 |
+
if (!shouldChangeMonth &&
|
2202 |
+
self.config.mode !== "range" &&
|
2203 |
+
self.config.showMonths === 1)
|
2204 |
+
focusOnDayElem(target);
|
2205 |
+
else if (self.selectedDateElem !== undefined &&
|
2206 |
+
self.hourElement === undefined) {
|
2207 |
+
self.selectedDateElem && self.selectedDateElem.focus();
|
2208 |
+
}
|
2209 |
+
if (self.hourElement !== undefined)
|
2210 |
+
self.hourElement !== undefined && self.hourElement.focus();
|
2211 |
+
if (self.config.closeOnSelect) {
|
2212 |
+
var single = self.config.mode === "single" && !self.config.enableTime;
|
2213 |
+
var range = self.config.mode === "range" &&
|
2214 |
+
self.selectedDates.length === 2 &&
|
2215 |
+
!self.config.enableTime;
|
2216 |
+
if (single || range) {
|
2217 |
+
focusAndClose();
|
2218 |
+
}
|
2219 |
+
}
|
2220 |
+
triggerChange();
|
2221 |
+
}
|
2222 |
+
var CALLBACKS = {
|
2223 |
+
locale: [setupLocale, updateWeekdays],
|
2224 |
+
showMonths: [buildMonths, setCalendarWidth, buildWeekdays],
|
2225 |
+
minDate: [jumpToDate],
|
2226 |
+
maxDate: [jumpToDate],
|
2227 |
+
clickOpens: [
|
2228 |
+
function () {
|
2229 |
+
if (self.config.clickOpens === true) {
|
2230 |
+
bind(self._input, "focus", self.open);
|
2231 |
+
bind(self._input, "click", self.open);
|
2232 |
+
}
|
2233 |
+
else {
|
2234 |
+
self._input.removeEventListener("focus", self.open);
|
2235 |
+
self._input.removeEventListener("click", self.open);
|
2236 |
+
}
|
2237 |
+
},
|
2238 |
+
],
|
2239 |
+
};
|
2240 |
+
function set(option, value) {
|
2241 |
+
if (option !== null && typeof option === "object") {
|
2242 |
+
Object.assign(self.config, option);
|
2243 |
+
for (var key in option) {
|
2244 |
+
if (CALLBACKS[key] !== undefined)
|
2245 |
+
CALLBACKS[key].forEach(function (x) { return x(); });
|
2246 |
+
}
|
2247 |
+
}
|
2248 |
+
else {
|
2249 |
+
self.config[option] = value;
|
2250 |
+
if (CALLBACKS[option] !== undefined)
|
2251 |
+
CALLBACKS[option].forEach(function (x) { return x(); });
|
2252 |
+
else if (HOOKS.indexOf(option) > -1)
|
2253 |
+
self.config[option] = arrayify(value);
|
2254 |
+
}
|
2255 |
+
self.redraw();
|
2256 |
+
updateValue(true);
|
2257 |
+
}
|
2258 |
+
function setSelectedDate(inputDate, format) {
|
2259 |
+
var dates = [];
|
2260 |
+
if (inputDate instanceof Array)
|
2261 |
+
dates = inputDate.map(function (d) { return self.parseDate(d, format); });
|
2262 |
+
else if (inputDate instanceof Date || typeof inputDate === "number")
|
2263 |
+
dates = [self.parseDate(inputDate, format)];
|
2264 |
+
else if (typeof inputDate === "string") {
|
2265 |
+
switch (self.config.mode) {
|
2266 |
+
case "single":
|
2267 |
+
case "time":
|
2268 |
+
dates = [self.parseDate(inputDate, format)];
|
2269 |
+
break;
|
2270 |
+
case "multiple":
|
2271 |
+
dates = inputDate
|
2272 |
+
.split(self.config.conjunction)
|
2273 |
+
.map(function (date) { return self.parseDate(date, format); });
|
2274 |
+
break;
|
2275 |
+
case "range":
|
2276 |
+
dates = inputDate
|
2277 |
+
.split(self.l10n.rangeSeparator)
|
2278 |
+
.map(function (date) { return self.parseDate(date, format); });
|
2279 |
+
break;
|
2280 |
+
}
|
2281 |
+
}
|
2282 |
+
else
|
2283 |
+
self.config.errorHandler(new Error("Invalid date supplied: " + JSON.stringify(inputDate)));
|
2284 |
+
self.selectedDates = (self.config.allowInvalidPreload
|
2285 |
+
? dates
|
2286 |
+
: dates.filter(function (d) { return d instanceof Date && isEnabled(d, false); }));
|
2287 |
+
if (self.config.mode === "range")
|
2288 |
+
self.selectedDates.sort(function (a, b) { return a.getTime() - b.getTime(); });
|
2289 |
+
}
|
2290 |
+
function setDate(date, triggerChange, format) {
|
2291 |
+
if (triggerChange === void 0) { triggerChange = false; }
|
2292 |
+
if (format === void 0) { format = self.config.dateFormat; }
|
2293 |
+
if ((date !== 0 && !date) || (date instanceof Array && date.length === 0))
|
2294 |
+
return self.clear(triggerChange);
|
2295 |
+
setSelectedDate(date, format);
|
2296 |
+
self.latestSelectedDateObj =
|
2297 |
+
self.selectedDates[self.selectedDates.length - 1];
|
2298 |
+
self.redraw();
|
2299 |
+
jumpToDate(undefined, triggerChange);
|
2300 |
+
setHoursFromDate();
|
2301 |
+
if (self.selectedDates.length === 0) {
|
2302 |
+
self.clear(false);
|
2303 |
+
}
|
2304 |
+
updateValue(triggerChange);
|
2305 |
+
if (triggerChange)
|
2306 |
+
triggerEvent("onChange");
|
2307 |
+
}
|
2308 |
+
function parseDateRules(arr) {
|
2309 |
+
return arr
|
2310 |
+
.slice()
|
2311 |
+
.map(function (rule) {
|
2312 |
+
if (typeof rule === "string" ||
|
2313 |
+
typeof rule === "number" ||
|
2314 |
+
rule instanceof Date) {
|
2315 |
+
return self.parseDate(rule, undefined, true);
|
2316 |
+
}
|
2317 |
+
else if (rule &&
|
2318 |
+
typeof rule === "object" &&
|
2319 |
+
rule.from &&
|
2320 |
+
rule.to)
|
2321 |
+
return {
|
2322 |
+
from: self.parseDate(rule.from, undefined),
|
2323 |
+
to: self.parseDate(rule.to, undefined),
|
2324 |
+
};
|
2325 |
+
return rule;
|
2326 |
+
})
|
2327 |
+
.filter(function (x) { return x; }); // remove falsy values
|
2328 |
+
}
|
2329 |
+
function setupDates() {
|
2330 |
+
self.selectedDates = [];
|
2331 |
+
self.now = self.parseDate(self.config.now) || new Date();
|
2332 |
+
// Workaround IE11 setting placeholder as the input's value
|
2333 |
+
var preloadedDate = self.config.defaultDate ||
|
2334 |
+
((self.input.nodeName === "INPUT" ||
|
2335 |
+
self.input.nodeName === "TEXTAREA") &&
|
2336 |
+
self.input.placeholder &&
|
2337 |
+
self.input.value === self.input.placeholder
|
2338 |
+
? null
|
2339 |
+
: self.input.value);
|
2340 |
+
if (preloadedDate)
|
2341 |
+
setSelectedDate(preloadedDate, self.config.dateFormat);
|
2342 |
+
self._initialDate =
|
2343 |
+
self.selectedDates.length > 0
|
2344 |
+
? self.selectedDates[0]
|
2345 |
+
: self.config.minDate &&
|
2346 |
+
self.config.minDate.getTime() > self.now.getTime()
|
2347 |
+
? self.config.minDate
|
2348 |
+
: self.config.maxDate &&
|
2349 |
+
self.config.maxDate.getTime() < self.now.getTime()
|
2350 |
+
? self.config.maxDate
|
2351 |
+
: self.now;
|
2352 |
+
self.currentYear = self._initialDate.getFullYear();
|
2353 |
+
self.currentMonth = self._initialDate.getMonth();
|
2354 |
+
if (self.selectedDates.length > 0)
|
2355 |
+
self.latestSelectedDateObj = self.selectedDates[0];
|
2356 |
+
if (self.config.minTime !== undefined)
|
2357 |
+
self.config.minTime = self.parseDate(self.config.minTime, "H:i");
|
2358 |
+
if (self.config.maxTime !== undefined)
|
2359 |
+
self.config.maxTime = self.parseDate(self.config.maxTime, "H:i");
|
2360 |
+
self.minDateHasTime =
|
2361 |
+
!!self.config.minDate &&
|
2362 |
+
(self.config.minDate.getHours() > 0 ||
|
2363 |
+
self.config.minDate.getMinutes() > 0 ||
|
2364 |
+
self.config.minDate.getSeconds() > 0);
|
2365 |
+
self.maxDateHasTime =
|
2366 |
+
!!self.config.maxDate &&
|
2367 |
+
(self.config.maxDate.getHours() > 0 ||
|
2368 |
+
self.config.maxDate.getMinutes() > 0 ||
|
2369 |
+
self.config.maxDate.getSeconds() > 0);
|
2370 |
+
}
|
2371 |
+
function setupInputs() {
|
2372 |
+
self.input = getInputElem();
|
2373 |
+
/* istanbul ignore next */
|
2374 |
+
if (!self.input) {
|
2375 |
+
self.config.errorHandler(new Error("Invalid input element specified"));
|
2376 |
+
return;
|
2377 |
+
}
|
2378 |
+
// hack: store previous type to restore it after destroy()
|
2379 |
+
self.input._type = self.input.type;
|
2380 |
+
self.input.type = "text";
|
2381 |
+
self.input.classList.add("flatpickr-input");
|
2382 |
+
self._input = self.input;
|
2383 |
+
if (self.config.altInput) {
|
2384 |
+
// replicate self.element
|
2385 |
+
self.altInput = createElement(self.input.nodeName, self.config.altInputClass);
|
2386 |
+
self._input = self.altInput;
|
2387 |
+
self.altInput.placeholder = self.input.placeholder;
|
2388 |
+
self.altInput.disabled = self.input.disabled;
|
2389 |
+
self.altInput.required = self.input.required;
|
2390 |
+
self.altInput.tabIndex = self.input.tabIndex;
|
2391 |
+
self.altInput.type = "text";
|
2392 |
+
self.input.setAttribute("type", "hidden");
|
2393 |
+
if (!self.config.static && self.input.parentNode)
|
2394 |
+
self.input.parentNode.insertBefore(self.altInput, self.input.nextSibling);
|
2395 |
+
}
|
2396 |
+
if (!self.config.allowInput)
|
2397 |
+
self._input.setAttribute("readonly", "readonly");
|
2398 |
+
self._positionElement = self.config.positionElement || self._input;
|
2399 |
+
}
|
2400 |
+
function setupMobile() {
|
2401 |
+
var inputType = self.config.enableTime
|
2402 |
+
? self.config.noCalendar
|
2403 |
+
? "time"
|
2404 |
+
: "datetime-local"
|
2405 |
+
: "date";
|
2406 |
+
self.mobileInput = createElement("input", self.input.className + " flatpickr-mobile");
|
2407 |
+
self.mobileInput.tabIndex = 1;
|
2408 |
+
self.mobileInput.type = inputType;
|
2409 |
+
self.mobileInput.disabled = self.input.disabled;
|
2410 |
+
self.mobileInput.required = self.input.required;
|
2411 |
+
self.mobileInput.placeholder = self.input.placeholder;
|
2412 |
+
self.mobileFormatStr =
|
2413 |
+
inputType === "datetime-local"
|
2414 |
+
? "Y-m-d\\TH:i:S"
|
2415 |
+
: inputType === "date"
|
2416 |
+
? "Y-m-d"
|
2417 |
+
: "H:i:S";
|
2418 |
+
if (self.selectedDates.length > 0) {
|
2419 |
+
self.mobileInput.defaultValue = self.mobileInput.value = self.formatDate(self.selectedDates[0], self.mobileFormatStr);
|
2420 |
+
}
|
2421 |
+
if (self.config.minDate)
|
2422 |
+
self.mobileInput.min = self.formatDate(self.config.minDate, "Y-m-d");
|
2423 |
+
if (self.config.maxDate)
|
2424 |
+
self.mobileInput.max = self.formatDate(self.config.maxDate, "Y-m-d");
|
2425 |
+
if (self.input.getAttribute("step"))
|
2426 |
+
self.mobileInput.step = String(self.input.getAttribute("step"));
|
2427 |
+
self.input.type = "hidden";
|
2428 |
+
if (self.altInput !== undefined)
|
2429 |
+
self.altInput.type = "hidden";
|
2430 |
+
try {
|
2431 |
+
if (self.input.parentNode)
|
2432 |
+
self.input.parentNode.insertBefore(self.mobileInput, self.input.nextSibling);
|
2433 |
+
}
|
2434 |
+
catch (_a) { }
|
2435 |
+
bind(self.mobileInput, "change", function (e) {
|
2436 |
+
self.setDate(getEventTarget(e).value, false, self.mobileFormatStr);
|
2437 |
+
triggerEvent("onChange");
|
2438 |
+
triggerEvent("onClose");
|
2439 |
+
});
|
2440 |
+
}
|
2441 |
+
function toggle(e) {
|
2442 |
+
if (self.isOpen === true)
|
2443 |
+
return self.close();
|
2444 |
+
self.open(e);
|
2445 |
+
}
|
2446 |
+
function triggerEvent(event, data) {
|
2447 |
+
// If the instance has been destroyed already, all hooks have been removed
|
2448 |
+
if (self.config === undefined)
|
2449 |
+
return;
|
2450 |
+
var hooks = self.config[event];
|
2451 |
+
if (hooks !== undefined && hooks.length > 0) {
|
2452 |
+
for (var i = 0; hooks[i] && i < hooks.length; i++)
|
2453 |
+
hooks[i](self.selectedDates, self.input.value, self, data);
|
2454 |
+
}
|
2455 |
+
if (event === "onChange") {
|
2456 |
+
self.input.dispatchEvent(createEvent("change"));
|
2457 |
+
// many front-end frameworks bind to the input event
|
2458 |
+
self.input.dispatchEvent(createEvent("input"));
|
2459 |
+
}
|
2460 |
+
}
|
2461 |
+
function createEvent(name) {
|
2462 |
+
var e = document.createEvent("Event");
|
2463 |
+
e.initEvent(name, true, true);
|
2464 |
+
return e;
|
2465 |
+
}
|
2466 |
+
function isDateSelected(date) {
|
2467 |
+
for (var i = 0; i < self.selectedDates.length; i++) {
|
2468 |
+
if (compareDates(self.selectedDates[i], date) === 0)
|
2469 |
+
return "" + i;
|
2470 |
+
}
|
2471 |
+
return false;
|
2472 |
+
}
|
2473 |
+
function isDateInRange(date) {
|
2474 |
+
if (self.config.mode !== "range" || self.selectedDates.length < 2)
|
2475 |
+
return false;
|
2476 |
+
return (compareDates(date, self.selectedDates[0]) >= 0 &&
|
2477 |
+
compareDates(date, self.selectedDates[1]) <= 0);
|
2478 |
+
}
|
2479 |
+
function updateNavigationCurrentMonth() {
|
2480 |
+
if (self.config.noCalendar || self.isMobile || !self.monthNav)
|
2481 |
+
return;
|
2482 |
+
self.yearElements.forEach(function (yearElement, i) {
|
2483 |
+
var d = new Date(self.currentYear, self.currentMonth, 1);
|
2484 |
+
d.setMonth(self.currentMonth + i);
|
2485 |
+
if (self.config.showMonths > 1 ||
|
2486 |
+
self.config.monthSelectorType === "static") {
|
2487 |
+
self.monthElements[i].textContent =
|
2488 |
+
monthToStr(d.getMonth(), self.config.shorthandCurrentMonth, self.l10n) + " ";
|
2489 |
+
}
|
2490 |
+
else {
|
2491 |
+
self.monthsDropdownContainer.value = d.getMonth().toString();
|
2492 |
+
}
|
2493 |
+
yearElement.value = d.getFullYear().toString();
|
2494 |
+
});
|
2495 |
+
self._hidePrevMonthArrow =
|
2496 |
+
self.config.minDate !== undefined &&
|
2497 |
+
(self.currentYear === self.config.minDate.getFullYear()
|
2498 |
+
? self.currentMonth <= self.config.minDate.getMonth()
|
2499 |
+
: self.currentYear < self.config.minDate.getFullYear());
|
2500 |
+
self._hideNextMonthArrow =
|
2501 |
+
self.config.maxDate !== undefined &&
|
2502 |
+
(self.currentYear === self.config.maxDate.getFullYear()
|
2503 |
+
? self.currentMonth + 1 > self.config.maxDate.getMonth()
|
2504 |
+
: self.currentYear > self.config.maxDate.getFullYear());
|
2505 |
+
}
|
2506 |
+
function getDateStr(format) {
|
2507 |
+
return self.selectedDates
|
2508 |
+
.map(function (dObj) { return self.formatDate(dObj, format); })
|
2509 |
+
.filter(function (d, i, arr) {
|
2510 |
+
return self.config.mode !== "range" ||
|
2511 |
+
self.config.enableTime ||
|
2512 |
+
arr.indexOf(d) === i;
|
2513 |
+
})
|
2514 |
+
.join(self.config.mode !== "range"
|
2515 |
+
? self.config.conjunction
|
2516 |
+
: self.l10n.rangeSeparator);
|
2517 |
+
}
|
2518 |
+
/**
|
2519 |
+
* Updates the values of inputs associated with the calendar
|
2520 |
+
*/
|
2521 |
+
function updateValue(triggerChange) {
|
2522 |
+
if (triggerChange === void 0) { triggerChange = true; }
|
2523 |
+
if (self.mobileInput !== undefined && self.mobileFormatStr) {
|
2524 |
+
self.mobileInput.value =
|
2525 |
+
self.latestSelectedDateObj !== undefined
|
2526 |
+
? self.formatDate(self.latestSelectedDateObj, self.mobileFormatStr)
|
2527 |
+
: "";
|
2528 |
+
}
|
2529 |
+
self.input.value = getDateStr(self.config.dateFormat);
|
2530 |
+
if (self.altInput !== undefined) {
|
2531 |
+
self.altInput.value = getDateStr(self.config.altFormat);
|
2532 |
+
}
|
2533 |
+
if (triggerChange !== false)
|
2534 |
+
triggerEvent("onValueUpdate");
|
2535 |
+
}
|
2536 |
+
function onMonthNavClick(e) {
|
2537 |
+
var eventTarget = getEventTarget(e);
|
2538 |
+
var isPrevMonth = self.prevMonthNav.contains(eventTarget);
|
2539 |
+
var isNextMonth = self.nextMonthNav.contains(eventTarget);
|
2540 |
+
if (isPrevMonth || isNextMonth) {
|
2541 |
+
changeMonth(isPrevMonth ? -1 : 1);
|
2542 |
+
}
|
2543 |
+
else if (self.yearElements.indexOf(eventTarget) >= 0) {
|
2544 |
+
eventTarget.select();
|
2545 |
+
}
|
2546 |
+
else if (eventTarget.classList.contains("arrowUp")) {
|
2547 |
+
self.changeYear(self.currentYear + 1);
|
2548 |
+
}
|
2549 |
+
else if (eventTarget.classList.contains("arrowDown")) {
|
2550 |
+
self.changeYear(self.currentYear - 1);
|
2551 |
+
}
|
2552 |
+
}
|
2553 |
+
function timeWrapper(e) {
|
2554 |
+
e.preventDefault();
|
2555 |
+
var isKeyDown = e.type === "keydown", eventTarget = getEventTarget(e), input = eventTarget;
|
2556 |
+
if (self.amPM !== undefined && eventTarget === self.amPM) {
|
2557 |
+
self.amPM.textContent =
|
2558 |
+
self.l10n.amPM[int(self.amPM.textContent === self.l10n.amPM[0])];
|
2559 |
+
}
|
2560 |
+
var min = parseFloat(input.getAttribute("min")), max = parseFloat(input.getAttribute("max")), step = parseFloat(input.getAttribute("step")), curValue = parseInt(input.value, 10), delta = e.delta ||
|
2561 |
+
(isKeyDown ? (e.which === 38 ? 1 : -1) : 0);
|
2562 |
+
var newValue = curValue + step * delta;
|
2563 |
+
if (typeof input.value !== "undefined" && input.value.length === 2) {
|
2564 |
+
var isHourElem = input === self.hourElement, isMinuteElem = input === self.minuteElement;
|
2565 |
+
if (newValue < min) {
|
2566 |
+
newValue =
|
2567 |
+
max +
|
2568 |
+
newValue +
|
2569 |
+
int(!isHourElem) +
|
2570 |
+
(int(isHourElem) && int(!self.amPM));
|
2571 |
+
if (isMinuteElem)
|
2572 |
+
incrementNumInput(undefined, -1, self.hourElement);
|
2573 |
+
}
|
2574 |
+
else if (newValue > max) {
|
2575 |
+
newValue =
|
2576 |
+
input === self.hourElement ? newValue - max - int(!self.amPM) : min;
|
2577 |
+
if (isMinuteElem)
|
2578 |
+
incrementNumInput(undefined, 1, self.hourElement);
|
2579 |
+
}
|
2580 |
+
if (self.amPM &&
|
2581 |
+
isHourElem &&
|
2582 |
+
(step === 1
|
2583 |
+
? newValue + curValue === 23
|
2584 |
+
: Math.abs(newValue - curValue) > step)) {
|
2585 |
+
self.amPM.textContent =
|
2586 |
+
self.l10n.amPM[int(self.amPM.textContent === self.l10n.amPM[0])];
|
2587 |
+
}
|
2588 |
+
input.value = pad(newValue);
|
2589 |
+
}
|
2590 |
+
}
|
2591 |
+
init();
|
2592 |
+
return self;
|
2593 |
+
}
|
2594 |
+
/* istanbul ignore next */
|
2595 |
+
function _flatpickr(nodeList, config) {
|
2596 |
+
// static list
|
2597 |
+
var nodes = Array.prototype.slice
|
2598 |
+
.call(nodeList)
|
2599 |
+
.filter(function (x) { return x instanceof HTMLElement; });
|
2600 |
+
var instances = [];
|
2601 |
+
for (var i = 0; i < nodes.length; i++) {
|
2602 |
+
var node = nodes[i];
|
2603 |
+
try {
|
2604 |
+
if (node.getAttribute("data-fp-omit") !== null)
|
2605 |
+
continue;
|
2606 |
+
if (node._flatpickr !== undefined) {
|
2607 |
+
node._flatpickr.destroy();
|
2608 |
+
node._flatpickr = undefined;
|
2609 |
+
}
|
2610 |
+
node._flatpickr = FlatpickrInstance(node, config || {});
|
2611 |
+
instances.push(node._flatpickr);
|
2612 |
+
}
|
2613 |
+
catch (e) {
|
2614 |
+
console.error(e);
|
2615 |
+
}
|
2616 |
+
}
|
2617 |
+
return instances.length === 1 ? instances[0] : instances;
|
2618 |
+
}
|
2619 |
+
/* istanbul ignore next */
|
2620 |
+
if (typeof HTMLElement !== "undefined" &&
|
2621 |
+
typeof HTMLCollection !== "undefined" &&
|
2622 |
+
typeof NodeList !== "undefined") {
|
2623 |
+
// browser env
|
2624 |
+
HTMLCollection.prototype.flatpickr = NodeList.prototype.flatpickr = function (config) {
|
2625 |
+
return _flatpickr(this, config);
|
2626 |
+
};
|
2627 |
+
HTMLElement.prototype.flatpickr = function (config) {
|
2628 |
+
return _flatpickr([this], config);
|
2629 |
+
};
|
2630 |
+
}
|
2631 |
+
/* istanbul ignore next */
|
2632 |
+
var flatpickr = function (selector, config) {
|
2633 |
+
if (typeof selector === "string") {
|
2634 |
+
return _flatpickr(window.document.querySelectorAll(selector), config);
|
2635 |
+
}
|
2636 |
+
else if (selector instanceof Node) {
|
2637 |
+
return _flatpickr([selector], config);
|
2638 |
+
}
|
2639 |
+
else {
|
2640 |
+
return _flatpickr(selector, config);
|
2641 |
+
}
|
2642 |
+
};
|
2643 |
+
/* istanbul ignore next */
|
2644 |
+
flatpickr.defaultConfig = {};
|
2645 |
+
flatpickr.l10ns = {
|
2646 |
+
en: __assign({}, english),
|
2647 |
+
default: __assign({}, english),
|
2648 |
+
};
|
2649 |
+
flatpickr.localize = function (l10n) {
|
2650 |
+
flatpickr.l10ns.default = __assign(__assign({}, flatpickr.l10ns.default), l10n);
|
2651 |
+
};
|
2652 |
+
flatpickr.setDefaults = function (config) {
|
2653 |
+
flatpickr.defaultConfig = __assign(__assign({}, flatpickr.defaultConfig), config);
|
2654 |
+
};
|
2655 |
+
flatpickr.parseDate = createDateParser({});
|
2656 |
+
flatpickr.formatDate = createDateFormatter({});
|
2657 |
+
flatpickr.compareDates = compareDates;
|
2658 |
+
/* istanbul ignore next */
|
2659 |
+
if (typeof jQuery !== "undefined" && typeof jQuery.fn !== "undefined") {
|
2660 |
+
jQuery.fn.flatpickr = function (config) {
|
2661 |
+
return _flatpickr(this, config);
|
2662 |
+
};
|
2663 |
+
}
|
2664 |
+
Date.prototype.fp_incr = function (days) {
|
2665 |
+
return new Date(this.getFullYear(), this.getMonth(), this.getDate() + (typeof days === "string" ? parseInt(days, 10) : days));
|
2666 |
+
};
|
2667 |
+
if (typeof window !== "undefined") {
|
2668 |
+
window.flatpickr = flatpickr;
|
2669 |
+
}
|
2670 |
+
|
2671 |
+
return flatpickr;
|
2672 |
+
|
2673 |
+
})));
|
2674 |
+
;/**
|
2675 |
*
|
2676 |
* jQuery Chosen AJAX Autocomplete Library
|
2677 |
*
|
vendor/codestar-framework/assets/js/plugins.min.js
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
-
/* Codestar Framework | A Simple and Lightweight WordPress Option Framework - v2.2.
|
2 |
|
3 |
-
!function(o){function e(t,e){this.element=o(t),this.options=e,this.init()}e.prototype.init=function(){this.element.chosen(this.options),this.container=this.element.next(".chosen-container"),this.search_field=this.container.find(".chosen-search-input"),this.is_multiple=this.container.hasClass("chosen-container-multi"),this.is_typing=!1,this.chosenXhr=null,this.events()},e.prototype.events=function(){var t=this;this.search_field.on("compositionstart",function(){t.is_typing=!0}),this.search_field.on("compositionend",function(){t.is_typing=!1,t.update_list()}),this.search_field.on("keyup",function(){t.update_list()}),this.search_field.on("focus",function(){t.search_field_focused()})},e.prototype.search_field_focused=function(){this.search_welcome_message(),0===this.options.min_length&&0===this.search_field.val().length&&this.update_list()},e.prototype.search_welcome_message=function(){var t=o.trim(this.search_field.val()),e=this.container.find(".chosen-results");0===e.children().length&&0===t.length&&e.html('<li class="no-results">'+this.options.typing_text.replace("%s",this.options.min_length-t.length)+"</li>")},e.prototype.update_list=function(){var e=this;if(this.search_welcome_message(),!this.is_typing){var t=o.trim(this.search_field.val()),s=t.length<this.options.min_length?this.options.typing_text.replace("%s",this.options.min_length-t.length):this.options.searching_text;this.container.find(".no-results").text(s),t!==this.search_field.data("prevVal")&&(this.search_field.data("prevVal",t),this.timer&&clearTimeout(this.timer),t.length<this.options.min_length||(this.timer=setTimeout(function(){e.chosenXhr&&e.chosenXhr.abort(),e.options.data.term=t,e.chosenXhr=window.wp.ajax.post("csf-chosen",e.options.data).done(function(t){e.show_results(t)}).fail(function(t){e.container.find(".no-results").text(t.error)})},this.options.type_delay)))}},e.prototype.show_results=function(t){var s=this;if(!this.is_typing&&null!==t){if(0===t.length)return this.element.data().chosen.no_results_clear(),void this.element.data().chosen.no_results(this.search_field.val());var i=[];this.element.find("option").each(function(){o(this).is(":selected")?i.push(o(this).val()+"-"+o(this).text()):o(this).attr("value").length&&o(this).remove()}),o.each(t,function(t,e){-1===o.inArray(e.value+"-"+e.text,i)&&o("<option />").attr("value",e.value).html(e.text).appendTo(s.element)});var e=this.search_field.val(),n=this.search_field.innerWidth();if(this.element.trigger("chosen:updated"),this.is_multiple){var r=this.element.parent().find(".csf-hide-select").val()||[];this.element.CSFChosenOrder(r,!0),this.search_field.css("width",n)}this.search_field.val(e),null!==this.chosenXhr.done&&this.chosenXhr.done(t)}},o.fn.CSFAjaxChosen=function(t){return this.each(function(){new e(this,t)})}}(jQuery),function(){var s,i,o=[].indexOf||function(t){for(var e=0,s=this.length;e<s;e++)if(e in this&&this[e]===t)return e;return-1},n={}.hasOwnProperty;i=function(){function t(){}return t.insertAt=function(t,e,s){return s.insertBefore(t,s.children[e].nextSibling)},t.getFlattenedOptionsAndGroups=function(t){var e,s,i,n,r,o,h,l,c;for(e=[],o=0,l=(i=Array.prototype.filter.call(t.childNodes,function(t){var e;return"OPTION"===(e=t.nodeName.toUpperCase())||"OPTGROUP"===e})).length;o<l;o++)if(s=i[o],e.push(s),"OPTGROUP"===s.nodeName.toUpperCase())for(h=0,c=(r=Array.prototype.filter.call(s.childNodes,function(t){return"OPTION"===t.nodeName.toUpperCase()})).length;h<c;h++)n=r[h],e.push(n);return e},t.isValidMultipleSelectElement=function(t){return null!=t&&"SELECT"===t.nodeName&&t.multiple},t.getChosenUIContainer=function(t){return""!==t.id?document.getElementById(t.id.replace(/-/g,"_")+"_chosen"):this.searchChosenUIContainer(t)},t.isChosenified=function(t){return null!=this.getChosenUIContainer(t)},t.forceSelection=function(t,e){var s,i,n,r;for(n=this.getFlattenedOptionsAndGroups(t),s=0;s<n.length;)r=(i=n[s]).getAttribute("value"),0<=o.call(e,r)?(i.selected=!0,i.setAttribute("selected","")):(i.selected=!1,i.removeAttribute("selected")),s++;return this.triggerEvent(t,"chosen:updated")},t.CSFChosenOrder=function(t,e,s){var i,n,r,o,h,l,c,a,u,_,d,p,f,g;if(null!=this.getDOMElement&&(t=this.getDOMElement(t)),this.isValidMultipleSelectElement(t)&&null!=(n=this.getChosenUIContainer(t))&&e instanceof Array){for(e=e.map(Function.prototype.call,String.prototype.trim),c=this.getFlattenedOptionsAndGroups(t),null!=s&&!0===s&&this.forceSelection(t,e),g=[],r=_=0,p=e.length;_<p;r=++_){for(h=e[r],a=null,o=d=0,f=c.length;d<f;o=++d)c[o].value===h&&(a=o);i=n.querySelectorAll(".search-choice"),u=this.relAttributeName,null!=(l=Array.prototype.filter.call(i,function(t){return null!=t.querySelector("a.search-choice-close["+u+'="'+a+'"]')})[0])&&(n.querySelector("ul.chosen-choices"),g.push(this.insertAt(l,r,n.querySelector("ul.chosen-choices"))))}return g}},t}(),(s=jQuery).fn.extend({CSFChosenOrder:function(t,e){return _CSFChosenOrder.CSFChosenOrder(this,t,e)}}),this._CSFChosenOrder=function(t){function e(){return e.__super__.constructor.apply(this,arguments)}return function(t,e){for(var s in e)n.call(e,s)&&(t[s]=e[s]);function i(){this.constructor=t}i.prototype=e.prototype,t.prototype=new i,t.__super__=e.prototype}(e,i),e.relAttributeName="data-option-array-index",e.isjQueryObject=function(t){return"undefined"!=typeof jQuery&&null!==jQuery&&t instanceof jQuery},e.getDOMElement=function(t){return this.isjQueryObject(t)?t.get(0):t},e.searchChosenUIContainer=function(t){return null!=s(t).data("chosen")?s(t).data("chosen").container[0]:s(t).next(".chosen-container.chosen-container-multi").get(0)},e.triggerEvent=function(t,e){return s(t).trigger(e)},e}()}.call(this),function(){var h,s,n,o,r={}.hasOwnProperty;(o=function(){function t(){this.options_index=0,this.parsed=[]}return t.prototype.add_node=function(t){return"OPTGROUP"===t.nodeName.toUpperCase()?this.add_group(t):this.add_option(t)},t.prototype.add_group=function(t){var e,s,i,n,r,o;for(e=this.parsed.length,this.parsed.push({array_index:e,group:!0,label:t.label,title:t.title?t.title:void 0,children:0,disabled:t.disabled,classes:t.className}),o=[],s=0,i=(r=t.childNodes).length;s<i;s++)n=r[s],o.push(this.add_option(n,e,t.disabled));return o},t.prototype.add_option=function(t,e,s){if("OPTION"===t.nodeName.toUpperCase())return""!==t.text?(null!=e&&(this.parsed[e].children+=1),this.parsed.push({array_index:this.parsed.length,options_index:this.options_index,value:t.value,text:t.text,html:t.innerHTML,title:t.title?t.title:void 0,selected:t.selected,disabled:!0===s?s:t.disabled,group_array_index:e,group_label:null!=e?this.parsed[e].label:null,classes:t.className,style:t.style.cssText})):this.parsed.push({array_index:this.parsed.length,options_index:this.options_index,empty:!0}),this.options_index+=1},t}()).select_to_array=function(t){var e,s,i,n,r;for(n=new o,s=0,i=(r=t.childNodes).length;s<i;s++)e=r[s],n.add_node(e);return n.parsed},s=function(){function n(t,e){var s,i;this.form_field=t,this.options=null!=e?e:{},this.label_click_handler=(s=this.label_click_handler,i=this,function(){return s.apply(i,arguments)}),n.browser_is_supported()&&(this.is_multiple=this.form_field.multiple,this.set_default_text(),this.set_default_values(),this.setup(),this.set_up_html(),this.register_observers(),this.on_ready())}return n.prototype.set_default_values=function(){var e,s;return this.click_test_action=(e=this,function(t){return e.test_active_click(t)}),this.activate_action=(s=this,function(t){return s.activate_field(t)}),this.active_field=!1,this.mouse_on_container=!1,this.results_showing=!1,this.result_highlighted=null,this.is_rtl=this.options.rtl||/\bchosen-rtl\b/.test(this.form_field.className),this.allow_single_deselect=null!=this.options.allow_single_deselect&&null!=this.form_field.options[0]&&""===this.form_field.options[0].text&&this.options.allow_single_deselect,this.disable_search_threshold=this.options.disable_search_threshold||0,this.disable_search=this.options.disable_search||!1,this.enable_split_word_search=null==this.options.enable_split_word_search||this.options.enable_split_word_search,this.group_search=null==this.options.group_search||this.options.group_search,this.search_contains=this.options.search_contains||!1,this.single_backstroke_delete=null==this.options.single_backstroke_delete||this.options.single_backstroke_delete,this.max_selected_options=this.options.max_selected_options||1/0,this.inherit_select_classes=this.options.inherit_select_classes||!1,this.display_selected_options=null==this.options.display_selected_options||this.options.display_selected_options,this.display_disabled_options=null==this.options.display_disabled_options||this.options.display_disabled_options,this.include_group_label_in_selected=this.options.include_group_label_in_selected||!1,this.max_shown_results=this.options.max_shown_results||Number.POSITIVE_INFINITY,this.case_sensitive_search=this.options.case_sensitive_search||!1,this.hide_results_on_select=null==this.options.hide_results_on_select||this.options.hide_results_on_select},n.prototype.set_default_text=function(){return this.form_field.getAttribute("data-placeholder")?this.default_text=this.form_field.getAttribute("data-placeholder"):this.is_multiple?this.default_text=this.options.placeholder_text_multiple||this.options.placeholder_text||n.default_multiple_text:this.default_text=this.options.placeholder_text_single||this.options.placeholder_text||n.default_single_text,this.default_text=this.escape_html(this.default_text),this.results_none_found=this.form_field.getAttribute("data-no_results_text")||this.options.no_results_text||n.default_no_result_text},n.prototype.choice_label=function(t){return this.include_group_label_in_selected&&null!=t.group_label?"<b class='group-name'>"+this.escape_html(t.group_label)+"</b>"+t.html:t.html},n.prototype.mouse_enter=function(){return this.mouse_on_container=!0},n.prototype.mouse_leave=function(){return this.mouse_on_container=!1},n.prototype.input_focus=function(t){if(this.is_multiple){if(!this.active_field)return setTimeout((e=this,function(){return e.container_mousedown()}),50)}else if(!this.active_field)return this.activate_field();var e},n.prototype.input_blur=function(t){if(!this.mouse_on_container)return this.active_field=!1,setTimeout((e=this,function(){return e.blur_test()}),100);var e},n.prototype.label_click_handler=function(t){return this.is_multiple?this.container_mousedown(t):this.activate_field()},n.prototype.results_option_build=function(t){var e,s,i,n,r,o,h;for(e="",n=h=0,r=(o=this.results_data).length;n<r&&((i="")!==(i=(s=o[n]).group?this.result_add_group(s):this.result_add_option(s))&&(h++,e+=i),(null!=t?t.first:void 0)&&(s.selected&&this.is_multiple?this.choice_build(s):s.selected&&!this.is_multiple&&this.single_set_selected_text(this.choice_label(s))),!(h>=this.max_shown_results));n++);return e},n.prototype.result_add_option=function(t){var e,s;return t.search_match&&this.include_option_in_results(t)?(e=[],t.disabled||t.selected&&this.is_multiple||e.push("active-result"),!t.disabled||t.selected&&this.is_multiple||e.push("disabled-result"),t.selected&&e.push("result-selected"),null!=t.group_array_index&&e.push("group-option"),""!==t.classes&&e.push(t.classes),(s=document.createElement("li")).className=e.join(" "),t.style&&(s.style.cssText=t.style),s.setAttribute("data-option-array-index",t.array_index),s.innerHTML=t.highlighted_html||t.html,t.title&&(s.title=t.title),this.outerHTML(s)):""},n.prototype.result_add_group=function(t){var e,s;return(t.search_match||t.group_match)&&0<t.active_options?((e=[]).push("group-result"),t.classes&&e.push(t.classes),(s=document.createElement("li")).className=e.join(" "),s.innerHTML=t.highlighted_html||this.escape_html(t.label),t.title&&(s.title=t.title),this.outerHTML(s)):""},n.prototype.results_update_field=function(){if(this.set_default_text(),this.is_multiple||this.results_reset_cleanup(),this.result_clear_highlight(),this.results_build(),this.results_showing)return this.winnow_results()},n.prototype.reset_single_select_options=function(){var t,e,s,i,n;for(n=[],t=0,e=(s=this.results_data).length;t<e;t++)(i=s[t]).selected?n.push(i.selected=!1):n.push(void 0);return n},n.prototype.results_toggle=function(){return this.results_showing?this.results_hide():this.results_show()},n.prototype.results_search=function(t){return this.results_showing?this.winnow_results():this.results_show()},n.prototype.winnow_results=function(t){var e,s,i,n,r,o,h,l,c,a,u,_,d,p,f;for(this.no_results_clear(),a=0,e=(h=this.get_search_text()).replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),c=this.get_search_regex(e),i=0,n=(l=this.results_data).length;i<n;i++)(r=l[i]).search_match=!1,_=u=null,r.highlighted_html="",this.include_option_in_results(r)&&(r.group&&(r.group_match=!1,r.active_options=0),null!=r.group_array_index&&this.results_data[r.group_array_index]&&(0===(u=this.results_data[r.group_array_index]).active_options&&u.search_match&&(a+=1),u.active_options+=1),f=r.group?r.label:r.text,r.group&&!this.group_search||(_=this.search_string_match(f,c),r.search_match=null!=_,r.search_match&&!r.group&&(a+=1),r.search_match?(h.length&&(d=_.index,o=f.slice(0,d),s=f.slice(d,d+h.length),p=f.slice(d+h.length),r.highlighted_html=this.escape_html(o)+"<em>"+this.escape_html(s)+"</em>"+this.escape_html(p)),null!=u&&(u.group_match=!0)):null!=r.group_array_index&&this.results_data[r.group_array_index].search_match&&(r.search_match=!0)));return this.result_clear_highlight(),a<1&&h.length?(this.update_results_content(""),this.no_results(h)):(this.update_results_content(this.results_option_build()),(null!=t?t.skip_highlight:void 0)?void 0:this.winnow_results_set_highlight())},n.prototype.get_search_regex=function(t){var e,s;return s=this.search_contains?t:"(^|\\s|\\b)"+t+"[^\\s]*",this.enable_split_word_search||this.search_contains||(s="^"+s),e=this.case_sensitive_search?"":"i",new RegExp(s,e)},n.prototype.search_string_match=function(t,e){var s;return s=e.exec(t),!this.search_contains&&(null!=s?s[1]:void 0)&&(s.index+=1),s},n.prototype.choices_count=function(){var t,e,s;if(null!=this.selected_option_count)return this.selected_option_count;for(t=this.selected_option_count=0,e=(s=this.form_field.options).length;t<e;t++)s[t].selected&&(this.selected_option_count+=1);return this.selected_option_count},n.prototype.choices_click=function(t){if(t.preventDefault(),this.activate_field(),!this.results_showing&&!this.is_disabled)return this.results_show()},n.prototype.keydown_checker=function(t){var e,s;switch(s=null!=(e=t.which)?e:t.keyCode,this.search_field_scale(),8!==s&&this.pending_backstroke&&this.clear_backstroke(),s){case 8:this.backstroke_length=this.get_search_field_value().length;break;case 9:this.results_showing&&!this.is_multiple&&this.result_select(t),this.mouse_on_container=!1;break;case 13:case 27:this.results_showing&&t.preventDefault();break;case 32:this.disable_search&&t.preventDefault();break;case 38:t.preventDefault(),this.keyup_arrow();break;case 40:t.preventDefault(),this.keydown_arrow()}},n.prototype.keyup_checker=function(t){var e,s;switch(s=null!=(e=t.which)?e:t.keyCode,this.search_field_scale(),s){case 8:this.is_multiple&&this.backstroke_length<1&&0<this.choices_count()?this.keydown_backstroke():this.pending_backstroke||(this.result_clear_highlight(),this.results_search());break;case 13:t.preventDefault(),this.results_showing&&this.result_select(t);break;case 27:this.results_showing&&this.results_hide();break;case 9:case 16:case 17:case 18:case 38:case 40:case 91:break;default:this.results_search()}},n.prototype.clipboard_event_checker=function(t){var e;if(!this.is_disabled)return setTimeout((e=this,function(){return e.results_search()}),50)},n.prototype.container_width=function(){return null!=this.options.width?this.options.width:this.form_field.offsetWidth+"px"},n.prototype.include_option_in_results=function(t){return!(this.is_multiple&&!this.display_selected_options&&t.selected)&&(!(!this.display_disabled_options&&t.disabled)&&!t.empty)},n.prototype.search_results_touchstart=function(t){return this.touch_started=!0,this.search_results_mouseover(t)},n.prototype.search_results_touchmove=function(t){return this.touch_started=!1,this.search_results_mouseout(t)},n.prototype.search_results_touchend=function(t){if(this.touch_started)return this.search_results_mouseup(t)},n.prototype.outerHTML=function(t){var e;return t.outerHTML?t.outerHTML:((e=document.createElement("div")).appendChild(t),e.innerHTML)},n.prototype.get_single_html=function(){return'<a class="chosen-single chosen-default">\n <span>'+this.default_text+'</span>\n <div><b></b></div>\n</a>\n<div class="chosen-drop">\n <div class="chosen-search">\n <input class="chosen-search-input" type="text" autocomplete="off" />\n </div>\n <ul class="chosen-results"></ul>\n</div>'},n.prototype.get_multi_html=function(){return'<ul class="chosen-choices">\n <li class="search-field">\n <input class="chosen-search-input" type="text" autocomplete="off" value="'+this.default_text+'" />\n </li>\n</ul>\n<div class="chosen-drop">\n <ul class="chosen-results"></ul>\n</div>'},n.prototype.get_no_results_html=function(t){return'<li class="no-results">\n '+this.results_none_found+" <span>"+this.escape_html(t)+"</span>\n</li>"},n.browser_is_supported=function(){return"Microsoft Internet Explorer"===window.navigator.appName?8<=document.documentMode:!(/iP(od|hone)/i.test(window.navigator.userAgent)||/IEMobile/i.test(window.navigator.userAgent)||/Windows Phone/i.test(window.navigator.userAgent)||/BlackBerry/i.test(window.navigator.userAgent)||/BB10/i.test(window.navigator.userAgent)||/Android.*Mobile/i.test(window.navigator.userAgent))},n.default_multiple_text="Select Some Options",n.default_single_text="Select an Option",n.default_no_result_text="No results match",n}(),(h=jQuery).fn.extend({chosen:function(i){return s.browser_is_supported()?this.each(function(t){var e,s;s=(e=h(this)).data("chosen"),"destroy"!==i?s instanceof n||e.data("chosen",new n(this,i)):s instanceof n&&s.destroy()}):this}}),n=function(t){function e(){return e.__super__.constructor.apply(this,arguments)}return function(t,e){for(var s in e)r.call(e,s)&&(t[s]=e[s]);function i(){this.constructor=t}i.prototype=e.prototype,t.prototype=new i,t.__super__=e.prototype}(e,s),e.prototype.setup=function(){return this.form_field_jq=h(this.form_field),this.current_selectedIndex=this.form_field.selectedIndex},e.prototype.set_up_html=function(){var t,e;return(t=["chosen-container"]).push("chosen-container-"+(this.is_multiple?"multi":"single")),this.inherit_select_classes&&this.form_field.className&&t.push(this.form_field.className),this.is_rtl&&t.push("chosen-rtl"),e={class:t.join(" "),title:this.form_field.title},this.form_field.id.length&&(e.id=this.form_field.id.replace(/[^\w]/g,"_")+"_chosen"),this.container=h("<div />",e),this.container.width(this.container_width()),this.is_multiple?this.container.html(this.get_multi_html()):this.container.html(this.get_single_html()),this.form_field_jq.hide().after(this.container),this.dropdown=this.container.find("div.chosen-drop").first(),this.search_field=this.container.find("input").first(),this.search_results=this.container.find("ul.chosen-results").first(),this.search_field_scale(),this.search_no_results=this.container.find("li.no-results").first(),this.is_multiple?(this.search_choices=this.container.find("ul.chosen-choices").first(),this.search_container=this.container.find("li.search-field").first()):(this.search_container=this.container.find("div.chosen-search").first(),this.selected_item=this.container.find(".chosen-single").first()),this.results_build(),this.set_tab_index(),this.set_label_behavior()},e.prototype.on_ready=function(){return this.form_field_jq.trigger("chosen:ready",{chosen:this})},e.prototype.register_observers=function(){var e,s,i,n,r,o,h,l,c,a,u,_,d,p,f,g,m,v,y,b,w,x,k,C;return this.container.on("touchstart.chosen",(e=this,function(t){e.container_mousedown(t)})),this.container.on("touchend.chosen",(s=this,function(t){s.container_mouseup(t)})),this.container.on("mousedown.chosen",(i=this,function(t){i.container_mousedown(t)})),this.container.on("mouseup.chosen",(n=this,function(t){n.container_mouseup(t)})),this.container.on("mouseenter.chosen",(r=this,function(t){r.mouse_enter(t)})),this.container.on("mouseleave.chosen",(o=this,function(t){o.mouse_leave(t)})),this.search_results.on("mouseup.chosen",(h=this,function(t){h.search_results_mouseup(t)})),this.search_results.on("mouseover.chosen",(l=this,function(t){l.search_results_mouseover(t)})),this.search_results.on("mouseout.chosen",(c=this,function(t){c.search_results_mouseout(t)})),this.search_results.on("mousewheel.chosen DOMMouseScroll.chosen",(a=this,function(t){a.search_results_mousewheel(t)})),this.search_results.on("touchstart.chosen",(u=this,function(t){u.search_results_touchstart(t)})),this.search_results.on("touchmove.chosen",(_=this,function(t){_.search_results_touchmove(t)})),this.search_results.on("touchend.chosen",(d=this,function(t){d.search_results_touchend(t)})),this.form_field_jq.on("chosen:updated.chosen",(p=this,function(t){p.results_update_field(t)})),this.form_field_jq.on("chosen:activate.chosen",(f=this,function(t){f.activate_field(t)})),this.form_field_jq.on("chosen:open.chosen",(g=this,function(t){g.container_mousedown(t)})),this.form_field_jq.on("chosen:close.chosen",(m=this,function(t){m.close_field(t)})),this.search_field.on("blur.chosen",(v=this,function(t){v.input_blur(t)})),this.search_field.on("keyup.chosen",(y=this,function(t){y.keyup_checker(t)})),this.search_field.on("keydown.chosen",(b=this,function(t){b.keydown_checker(t)})),this.search_field.on("focus.chosen",(w=this,function(t){w.input_focus(t)})),this.search_field.on("cut.chosen",(x=this,function(t){x.clipboard_event_checker(t)})),this.search_field.on("paste.chosen",(k=this,function(t){k.clipboard_event_checker(t)})),this.is_multiple?this.search_choices.on("click.chosen",(C=this,function(t){C.choices_click(t)})):this.container.on("click.chosen",function(t){t.preventDefault()})},e.prototype.destroy=function(){return h(this.container[0].ownerDocument).off("click.chosen",this.click_test_action),0<this.form_field_label.length&&this.form_field_label.off("click.chosen"),this.search_field[0].tabIndex&&(this.form_field_jq[0].tabIndex=this.search_field[0].tabIndex),this.container.remove(),this.form_field_jq.removeData("chosen"),this.form_field_jq.show()},e.prototype.search_field_disabled=function(){return this.is_disabled=this.form_field.disabled||this.form_field_jq.parents("fieldset").is(":disabled"),this.container.toggleClass("chosen-disabled",this.is_disabled),this.search_field[0].disabled=this.is_disabled,this.is_multiple||this.selected_item.off("focus.chosen",this.activate_field),this.is_disabled?this.close_field():this.is_multiple?void 0:this.selected_item.on("focus.chosen",this.activate_field)},e.prototype.container_mousedown=function(t){var e;if(!this.is_disabled)return!t||"mousedown"!==(e=t.type)&&"touchstart"!==e||this.results_showing||t.preventDefault(),null!=t&&h(t.target).hasClass("search-choice-close")?void 0:(this.active_field?this.is_multiple||!t||h(t.target)[0]!==this.selected_item[0]&&!h(t.target).parents("a.chosen-single").length||(t.preventDefault(),this.results_toggle()):(this.is_multiple&&this.search_field.val(""),h(this.container[0].ownerDocument).on("click.chosen",this.click_test_action),this.results_show()),this.activate_field())},e.prototype.container_mouseup=function(t){if("ABBR"===t.target.nodeName&&!this.is_disabled)return this.results_reset(t)},e.prototype.search_results_mousewheel=function(t){var e;if(t.originalEvent&&(e=t.originalEvent.deltaY||-t.originalEvent.wheelDelta||t.originalEvent.detail),null!=e)return t.preventDefault(),"DOMMouseScroll"===t.type&&(e*=40),this.search_results.scrollTop(e+this.search_results.scrollTop())},e.prototype.blur_test=function(t){if(!this.active_field&&this.container.hasClass("chosen-container-active"))return this.close_field()},e.prototype.close_field=function(){return h(this.container[0].ownerDocument).off("click.chosen",this.click_test_action),this.active_field=!1,this.results_hide(),this.container.removeClass("chosen-container-active"),this.clear_backstroke(),this.show_search_field_default(),this.search_field_scale(),this.search_field.blur()},e.prototype.activate_field=function(){if(!this.is_disabled)return this.container.addClass("chosen-container-active"),this.active_field=!0,this.search_field.val(this.search_field.val()),this.search_field.focus()},e.prototype.test_active_click=function(t){var e;return(e=h(t.target).closest(".chosen-container")).length&&this.container[0]===e[0]?this.active_field=!0:this.close_field()},e.prototype.results_build=function(){return this.parsing=!0,this.selected_option_count=null,this.results_data=o.select_to_array(this.form_field),this.is_multiple?this.search_choices.find("li.search-choice").remove():(this.single_set_selected_text(),this.disable_search||this.form_field.options.length<=this.disable_search_threshold?(this.search_field[0].readOnly=!0,this.container.addClass("chosen-container-single-nosearch")):(this.search_field[0].readOnly=!1,this.container.removeClass("chosen-container-single-nosearch"))),this.update_results_content(this.results_option_build({first:!0})),this.search_field_disabled(),this.show_search_field_default(),this.search_field_scale(),this.parsing=!1},e.prototype.result_do_highlight=function(t){var e,s,i,n;if(t.length){if(this.result_clear_highlight(),this.result_highlight=t,this.result_highlight.addClass("highlighted"),(i=parseInt(this.search_results.css("maxHeight"),10))+(n=this.search_results.scrollTop())<=(e=(s=this.result_highlight.position().top+this.search_results.scrollTop())+this.result_highlight.outerHeight()))return this.search_results.scrollTop(0<e-i?e-i:0);if(s<n)return this.search_results.scrollTop(s)}},e.prototype.result_clear_highlight=function(){return this.result_highlight&&this.result_highlight.removeClass("highlighted"),this.result_highlight=null},e.prototype.results_show=function(){return this.is_multiple&&this.max_selected_options<=this.choices_count()?(this.form_field_jq.trigger("chosen:maxselected",{chosen:this}),!1):(this.container.addClass("chosen-with-drop"),this.results_showing=!0,this.search_field.focus(),this.search_field.val(this.get_search_field_value()),this.winnow_results(),this.form_field_jq.trigger("chosen:showing_dropdown",{chosen:this}))},e.prototype.update_results_content=function(t){return this.search_results.html(t)},e.prototype.results_hide=function(){return this.results_showing&&(this.result_clear_highlight(),this.container.removeClass("chosen-with-drop"),this.form_field_jq.trigger("chosen:hiding_dropdown",{chosen:this})),this.results_showing=!1},e.prototype.set_tab_index=function(t){var e;if(this.form_field.tabIndex)return e=this.form_field.tabIndex,this.form_field.tabIndex=-1,this.search_field[0].tabIndex=e},e.prototype.set_label_behavior=function(){if(this.form_field_label=this.form_field_jq.parents("label"),!this.form_field_label.length&&this.form_field.id.length&&(this.form_field_label=h("label[for='"+this.form_field.id+"']")),0<this.form_field_label.length)return this.form_field_label.on("click.chosen",this.label_click_handler)},e.prototype.show_search_field_default=function(){return this.is_multiple&&this.choices_count()<1&&!this.active_field?(this.search_field.val(this.default_text),this.search_field.addClass("default")):(this.search_field.val(""),this.search_field.removeClass("default"))},e.prototype.search_results_mouseup=function(t){var e;if((e=h(t.target).hasClass("active-result")?h(t.target):h(t.target).parents(".active-result").first()).length)return this.result_highlight=e,this.result_select(t),this.search_field.focus()},e.prototype.search_results_mouseover=function(t){var e;if(e=h(t.target).hasClass("active-result")?h(t.target):h(t.target).parents(".active-result").first())return this.result_do_highlight(e)},e.prototype.search_results_mouseout=function(t){if(h(t.target).hasClass("active-result")||h(t.target).parents(".active-result").first())return this.result_clear_highlight()},e.prototype.choice_build=function(t){var e,s,i;return e=h("<li />",{class:"search-choice"}).html("<span>"+this.choice_label(t)+"</span>"),t.disabled?e.addClass("search-choice-disabled"):((s=h("<a />",{class:"search-choice-close","data-option-array-index":t.array_index})).on("click.chosen",(i=this,function(t){return i.choice_destroy_link_click(t)})),e.append(s)),this.search_container.before(e)},e.prototype.choice_destroy_link_click=function(t){if(t.preventDefault(),t.stopPropagation(),!this.is_disabled)return this.choice_destroy(h(t.target))},e.prototype.choice_destroy=function(t){if(this.result_deselect(t[0].getAttribute("data-option-array-index")))return this.active_field?this.search_field.focus():this.show_search_field_default(),this.is_multiple&&0<this.choices_count()&&this.get_search_field_value().length<1&&this.results_hide(),t.parents("li").first().remove(),this.search_field_scale()},e.prototype.results_reset=function(){if(this.reset_single_select_options(),this.form_field.options[0].selected=!0,this.single_set_selected_text(),this.show_search_field_default(),this.results_reset_cleanup(),this.trigger_form_field_change(),this.active_field)return this.results_hide()},e.prototype.results_reset_cleanup=function(){return this.current_selectedIndex=this.form_field.selectedIndex,this.selected_item.find("abbr").remove()},e.prototype.result_select=function(t){var e,s;if(this.result_highlight)return e=this.result_highlight,this.result_clear_highlight(),this.is_multiple&&this.max_selected_options<=this.choices_count()?(this.form_field_jq.trigger("chosen:maxselected",{chosen:this}),!1):(this.is_multiple?e.removeClass("active-result"):this.reset_single_select_options(),e.addClass("result-selected"),(s=this.results_data[e[0].getAttribute("data-option-array-index")]).selected=!0,this.form_field.options[s.options_index].selected=!0,this.selected_option_count=null,this.is_multiple?this.choice_build(s):this.single_set_selected_text(this.choice_label(s)),this.is_multiple&&(!this.hide_results_on_select||t.metaKey||t.ctrlKey)?t.metaKey||t.ctrlKey?this.winnow_results({skip_highlight:!0}):(this.search_field.val(""),this.winnow_results()):(this.results_hide(),this.show_search_field_default()),(this.is_multiple||this.form_field.selectedIndex!==this.current_selectedIndex)&&this.trigger_form_field_change({selected:this.form_field.options[s.options_index].value}),this.current_selectedIndex=this.form_field.selectedIndex,t.preventDefault(),this.search_field_scale())},e.prototype.single_set_selected_text=function(t){return null==t&&(t=this.default_text),t===this.default_text?this.selected_item.addClass("chosen-default"):(this.single_deselect_control_build(),this.selected_item.removeClass("chosen-default")),this.selected_item.find("span").html(t)},e.prototype.result_deselect=function(t){var e;return e=this.results_data[t],!this.form_field.options[e.options_index].disabled&&(e.selected=!1,this.form_field.options[e.options_index].selected=!1,this.selected_option_count=null,this.result_clear_highlight(),this.results_showing&&this.winnow_results(),this.trigger_form_field_change({deselected:this.form_field.options[e.options_index].value}),this.search_field_scale(),!0)},e.prototype.single_deselect_control_build=function(){if(this.allow_single_deselect)return this.selected_item.find("abbr").length||this.selected_item.find("span").first().after('<abbr class="search-choice-close"></abbr>'),this.selected_item.addClass("chosen-single-with-deselect")},e.prototype.get_search_field_value=function(){return this.search_field.val()},e.prototype.get_search_text=function(){return h.trim(this.get_search_field_value())},e.prototype.escape_html=function(t){return h("<div/>").text(t).html()},e.prototype.winnow_results_set_highlight=function(){var t,e;if(null!=(t=(e=this.is_multiple?[]:this.search_results.find(".result-selected.active-result")).length?e.first():this.search_results.find(".active-result").first()))return this.result_do_highlight(t)},e.prototype.no_results=function(t){var e;return e=this.get_no_results_html(t),this.search_results.append(e),this.form_field_jq.trigger("chosen:no_results",{chosen:this})},e.prototype.no_results_clear=function(){return this.search_results.find(".no-results").remove()},e.prototype.keydown_arrow=function(){var t;return this.results_showing&&this.result_highlight?(t=this.result_highlight.nextAll("li.active-result").first())?this.result_do_highlight(t):void 0:this.results_show()},e.prototype.keyup_arrow=function(){var t;return this.results_showing||this.is_multiple?this.result_highlight?(t=this.result_highlight.prevAll("li.active-result")).length?this.result_do_highlight(t.first()):(0<this.choices_count()&&this.results_hide(),this.result_clear_highlight()):void 0:this.results_show()},e.prototype.keydown_backstroke=function(){var t;return this.pending_backstroke?(this.choice_destroy(this.pending_backstroke.find("a").first()),this.clear_backstroke()):(t=this.search_container.siblings("li.search-choice").last()).length&&!t.hasClass("search-choice-disabled")?(this.pending_backstroke=t,this.single_backstroke_delete?this.keydown_backstroke():this.pending_backstroke.addClass("search-choice-focus")):void 0},e.prototype.clear_backstroke=function(){return this.pending_backstroke&&this.pending_backstroke.removeClass("search-choice-focus"),this.pending_backstroke=null},e.prototype.search_field_scale=function(){var t,e,s,i,n,r,o;if(this.is_multiple){for(n={position:"absolute",left:"-1000px",top:"-1000px",display:"none",whiteSpace:"pre"},e=0,s=(r=["fontSize","fontStyle","fontWeight","fontFamily","lineHeight","textTransform","letterSpacing"]).length;e<s;e++)n[i=r[e]]=this.search_field.css(i);return(t=h("<div />").css(n)).text(this.get_search_field_value()),h("body").append(t),o=t.width()+25,t.remove(),this.container.is(":visible")&&(o=Math.min(this.container.outerWidth()-10,o)),this.search_field.width(o)}},e.prototype.trigger_form_field_change=function(t){return this.form_field_jq.trigger("input",t),this.form_field_jq.trigger("change",t)},e}()}.call(this),function(o){"use strict";function n(t,e,s){this.init(t,e,s)}function t(){this.rules=[]}o.extend(n.prototype,{init:function(t,e,s){this.controller=t,this.condition=e,this.value=s,this.rules=[],this.controls=[]},evalCondition:function(t,e,s,i,n){if("=="==s)return this.checkBoolean(i)==this.checkBoolean(n);if("!="==s)return this.checkBoolean(i)!=this.checkBoolean(n);if(">="==s)return Number(n)>=Number(i);if("<="==s)return Number(n)<=Number(i);if(">"==s)return Number(n)>Number(i);if("<"==s)return Number(n)<Number(i);if("()"==s)return window[i](t,e,n);if("any"==s){if(o.isArray(n)){for(var r=n.length-1;0<=r;r--)if(-1!==o.inArray(n[r],i.split(",")))return!0}else if(-1!==o.inArray(n,i.split(",")))return!0}else if("not-any"==s)if(o.isArray(n)){for(r=n.length-1;0<=r;r--)if(-1==o.inArray(n[r],i.split(",")))return!0}else if(-1==o.inArray(n,i.split(",")))return!0;return!1},checkBoolean:function(t){switch(t){case!0:case"true":case 1:case"1":t=!0;break;case null:case!1:case"false":case 0:case"0":t=!1}return t},checkCondition:function(t){if(!this.condition)return!0;var e=t.find(this.controller),s=this.getControlValue(t,e);return void 0!==s&&(s=this.normalizeValue(e,this.value,s),this.evalCondition(t,e,this.condition,this.value,s))},normalizeValue:function(t,e,s){return"number"==typeof e?parseFloat(s):s},getControlValue:function(t,e){return 1<e.length&&("radio"==e.attr("type")||"checkbox"==e.attr("type"))?e.filter(":checked").map(function(){return this.value}).get():"checkbox"==e.attr("type")||"radio"==e.attr("type")?e.is(":checked"):e.val()},createRule:function(t,e,s){var i=new n(t,e,s);return this.rules.push(i),i},include:function(t){this.controls.push(t)},applyRule:function(s,t){var e;e=void 0===t?this.checkCondition(s):t;var i=o.map(this.controls,function(t,e){return s.find(t)});e?(o(i).each(function(){o(this).removeClass("csf-depend-on")}),o(this.rules).each(function(){this.applyRule(s)})):(o(i).each(function(){o(this).addClass("csf-depend-on")}),o(this.rules).each(function(){this.applyRule(s,!1)}))}}),o.extend(t.prototype,{createRule:function(t,e,s){var i=new n(t,e,s);return this.rules.push(i),i},applyRules:function(t){o(this.rules).each(function(){this.applyRule(t)})}}),o.csf_deps={createRuleset:function(){return new t},enable:function(s,i,n){return s.on("change keyup",function(t){var e=t.target.getAttribute("data-depend-id")||t.target.getAttribute("data-sub-depend-id");-1!==n.indexOf(e)&&i.applyRules(s)}),i.applyRules(s),!0}}}(jQuery),function(t,s){if("function"==typeof define&&define.amd)define(["exports","jquery"],function(t,e){return s(t,e)});else if("undefined"!=typeof exports){var e=require("jquery");s(exports,e)}else s(t,t.jQuery||t.Zepto||t.ender||t.$)}(this,function(t,e){var h={validate:/^(?!(_nonce|_pseudo))[a-zA-Z0-9_-]*(?:\[(?:\d*|(?!(_nonce|_pseudo))[a-zA-Z0-9_-]+)\])*$/i,key:/[a-zA-Z0-9_-]+|(?=\[\])/g,named:/^[a-zA-Z0-9_-]+$/,push:/^$/,fixed:/^\d+$/};function s(i,t){var s={},r={};function o(t,e,s){return t[e]=s,t}function e(){return s}this.addPair=function(t){if(!h.validate.test(t.name))return this;var e=function(t,e){for(var s,i=t.match(h.key);void 0!==(s=i.pop());)h.push.test(s)?e=o([],(n=t.replace(/\[\]$/,""),void 0===r[n]&&(r[n]=0),r[n]++),e):h.fixed.test(s)?e=o([],s,e):h.named.test(s)&&(e=o({},s,e));var n;return e}(t.name,t.value);return s=i.extend(!0,s,e),this},this.addPairs=function(t){if(!i.isArray(t))throw new Error("formSerializer.addPairs expects an Array");for(var e=0,s=t.length;e<s;e++)this.addPair(t[e]);return this},this.serialize=e,this.serializeJSON=function(){return JSON.stringify(e())}}return s.patterns=h,s.serializeObject=function(){return new s(e,this).addPairs(this.serializeArray()).serialize()},s.serializeJSON=function(){return new s(e,this).addPairs(this.serializeArray()).serializeJSON()},void 0!==e.fn&&(e.fn.serializeObjectCSF=s.serializeObject,e.fn.serializeJSONCSF=s.serializeJSON),t.FormSerializer=s});
|
1 |
+
/* Codestar Framework | A Simple and Lightweight WordPress Option Framework - v2.2.6*/
|
2 |
|
3 |
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).flatpickr=t()}(this,function(){"use strict";var ee=function(){return(ee=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function te(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],s=0,a=r.length;s<a;s++,o++)i[o]=r[s];return i}var ne=["onChange","onClose","onDayCreate","onDestroy","onKeyDown","onMonthChange","onOpen","onParseConfig","onReady","onValueUpdate","onYearChange","onPreCalendarPosition"],ie={_disable:[],allowInput:!1,allowInvalidPreload:!1,altFormat:"F j, Y",altInput:!1,altInputClass:"form-control input",animate:"object"==typeof window&&-1===window.navigator.userAgent.indexOf("MSIE"),ariaDateFormat:"F j, Y",autoFillDefaultTime:!0,clickOpens:!0,closeOnSelect:!0,conjunction:", ",dateFormat:"Y-m-d",defaultHour:12,defaultMinute:0,defaultSeconds:0,disable:[],disableMobile:!1,enableSeconds:!1,enableTime:!1,errorHandler:function(e){return"undefined"!=typeof console&&console.warn(e)},getWeek:function(e){var t=new Date(e.getTime());t.setHours(0,0,0,0),t.setDate(t.getDate()+3-(t.getDay()+6)%7);var n=new Date(t.getFullYear(),0,4);return 1+Math.round(((t.getTime()-n.getTime())/864e5-3+(n.getDay()+6)%7)/7)},hourIncrement:1,ignoredFocusElements:[],inline:!1,locale:"default",minuteIncrement:5,mode:"single",monthSelectorType:"dropdown",nextArrow:"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M13.207 8.472l-7.854 7.854-0.707-0.707 7.146-7.146-7.146-7.148 0.707-0.707 7.854 7.854z' /></svg>",noCalendar:!1,now:new Date,onChange:[],onClose:[],onDayCreate:[],onDestroy:[],onKeyDown:[],onMonthChange:[],onOpen:[],onParseConfig:[],onReady:[],onValueUpdate:[],onYearChange:[],onPreCalendarPosition:[],plugins:[],position:"auto",positionElement:void 0,prevArrow:"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M5.207 8.471l7.146 7.147-0.707 0.707-7.853-7.854 7.854-7.853 0.707 0.707-7.147 7.146z' /></svg>",shorthandCurrentMonth:!1,showMonths:1,static:!1,time_24hr:!1,weekNumbers:!1,wrap:!1},oe={weekdays:{shorthand:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longhand:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},months:{shorthand:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longhand:["January","February","March","April","May","June","July","August","September","October","November","December"]},daysInMonth:[31,28,31,30,31,30,31,31,30,31,30,31],firstDayOfWeek:0,ordinal:function(e){var t=e%100;if(3<t&&t<21)return"th";switch(t%10){case 1:return"st";case 2:return"nd";case 3:return"rd";default:return"th"}},rangeSeparator:" to ",weekAbbreviation:"Wk",scrollTitle:"Scroll to increment",toggleTitle:"Click to toggle",amPM:["AM","PM"],yearAriaLabel:"Year",monthAriaLabel:"Month",hourAriaLabel:"Hour",minuteAriaLabel:"Minute",time_24hr:!1},re=function(e,t){return void 0===t&&(t=2),("000"+e).slice(-1*t)},se=function(e){return!0===e?1:0};function ae(t,n){var i;return function(){var e=this;clearTimeout(i),i=setTimeout(function(){return t.apply(e,arguments)},n)}}var le=function(e){return e instanceof Array?e:[e]};function ce(e,t,n){if(!0===n)return e.classList.add(t);e.classList.remove(t)}function ue(e,t,n){var i=window.document.createElement(e);return t=t||"",n=n||"",i.className=t,void 0!==n&&(i.textContent=n),i}function he(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function de(e,t){var n=ue("div","numInputWrapper"),i=ue("input","numInput "+e),o=ue("span","arrowUp"),r=ue("span","arrowDown");if(-1===navigator.userAgent.indexOf("MSIE 9.0")?i.type="number":(i.type="text",i.pattern="\\d*"),void 0!==t)for(var s in t)i.setAttribute(s,t[s]);return n.appendChild(i),n.appendChild(o),n.appendChild(r),n}function fe(t){try{return"function"!=typeof t.composedPath?t.target:t.composedPath()[0]}catch(e){return t.target}}var e=function(){},pe=function(e,t,n){return n.months[t?"shorthand":"longhand"][e]},b={D:e,F:function(e,t,n){e.setMonth(n.months.longhand.indexOf(t))},G:function(e,t){e.setHours(parseFloat(t))},H:function(e,t){e.setHours(parseFloat(t))},J:function(e,t){e.setDate(parseFloat(t))},K:function(e,t,n){e.setHours(e.getHours()%12+12*se(new RegExp(n.amPM[1],"i").test(t)))},M:function(e,t,n){e.setMonth(n.months.shorthand.indexOf(t))},S:function(e,t){e.setSeconds(parseFloat(t))},U:function(e,t){return new Date(1e3*parseFloat(t))},W:function(e,t,n){var i=parseInt(t),o=new Date(e.getFullYear(),0,2+7*(i-1),0,0,0,0);return o.setDate(o.getDate()-o.getDay()+n.firstDayOfWeek),o},Y:function(e,t){e.setFullYear(parseFloat(t))},Z:function(e,t){return new Date(t)},d:function(e,t){e.setDate(parseFloat(t))},h:function(e,t){e.setHours(parseFloat(t))},i:function(e,t){e.setMinutes(parseFloat(t))},j:function(e,t){e.setDate(parseFloat(t))},l:e,m:function(e,t){e.setMonth(parseFloat(t)-1)},n:function(e,t){e.setMonth(parseFloat(t)-1)},s:function(e,t){e.setSeconds(parseFloat(t))},u:function(e,t){return new Date(parseFloat(t))},w:e,y:function(e,t){e.setFullYear(2e3+parseFloat(t))}},_e={D:"(\\w+)",F:"(\\w+)",G:"(\\d\\d|\\d)",H:"(\\d\\d|\\d)",J:"(\\d\\d|\\d)\\w+",K:"",M:"(\\w+)",S:"(\\d\\d|\\d)",U:"(.+)",W:"(\\d\\d|\\d)",Y:"(\\d{4})",Z:"(.+)",d:"(\\d\\d|\\d)",h:"(\\d\\d|\\d)",i:"(\\d\\d|\\d)",j:"(\\d\\d|\\d)",l:"(\\w+)",m:"(\\d\\d|\\d)",n:"(\\d\\d|\\d)",s:"(\\d\\d|\\d)",u:"(.+)",w:"(\\d\\d|\\d)",y:"(\\d{2})"},l={Z:function(e){return e.toISOString()},D:function(e,t,n){return t.weekdays.shorthand[l.w(e,t,n)]},F:function(e,t,n){return pe(l.n(e,t,n)-1,!1,t)},G:function(e,t,n){return re(l.h(e,t,n))},H:function(e){return re(e.getHours())},J:function(e,t){return void 0!==t.ordinal?e.getDate()+t.ordinal(e.getDate()):e.getDate()},K:function(e,t){return t.amPM[se(11<e.getHours())]},M:function(e,t){return pe(e.getMonth(),!0,t)},S:function(e){return re(e.getSeconds())},U:function(e){return e.getTime()/1e3},W:function(e,t,n){return n.getWeek(e)},Y:function(e){return re(e.getFullYear(),4)},d:function(e){return re(e.getDate())},h:function(e){return e.getHours()%12?e.getHours()%12:12},i:function(e){return re(e.getMinutes())},j:function(e){return e.getDate()},l:function(e,t){return t.weekdays.longhand[e.getDay()]},m:function(e){return re(e.getMonth()+1)},n:function(e){return e.getMonth()+1},s:function(e){return e.getSeconds()},u:function(e){return e.getTime()},w:function(e){return e.getDay()},y:function(e){return String(e.getFullYear()).substring(2)}},me=function(e){var t=e.config,r=void 0===t?ie:t,n=e.l10n,s=void 0===n?oe:n,i=e.isMobile,a=void 0!==i&&i;return function(i,e,t){var o=t||s;return void 0===r.formatDate||a?e.split("").map(function(e,t,n){return l[e]&&"\\"!==n[t-1]?l[e](i,o,r):"\\"!==e?e:""}).join(""):r.formatDate(i,e,o)}},ge=function(e){var t=e.config,v=void 0===t?ie:t,n=e.l10n,y=void 0===n?oe:n;return function(e,t,n,i){if(0===e||e){var o,r=i||y,s=e;if(e instanceof Date)o=new Date(e.getTime());else if("string"!=typeof e&&void 0!==e.toFixed)o=new Date(e);else if("string"==typeof e){var a=t||(v||ie).dateFormat,l=String(e).trim();if("today"===l)o=new Date,n=!0;else if(/Z$/.test(l)||/GMT$/.test(l))o=new Date(e);else if(v&&v.parseDate)o=v.parseDate(e,a);else{o=v&&v.noCalendar?new Date((new Date).setHours(0,0,0,0)):new Date((new Date).getFullYear(),0,1,0,0,0,0);for(var c=void 0,u=[],h=0,d=0,f="";h<a.length;h++){var p=a[h],_="\\"===p,m="\\"===a[h-1]||_;if(_e[p]&&!m){f+=_e[p];var g=new RegExp(f).exec(e);g&&(c=!0)&&u["Y"!==p?"push":"unshift"]({fn:b[p],val:g[++d]})}else _||(f+=".");u.forEach(function(e){var t=e.fn,n=e.val;return o=t(o,n,r)||o})}o=c?o:void 0}}if(o instanceof Date&&!isNaN(o.getTime()))return!0===n&&o.setHours(0,0,0,0),o;v.errorHandler(new Error("Invalid date provided: "+s))}}};function ve(e,t,n){return void 0===n&&(n=!0),!1!==n?new Date(e.getTime()).setHours(0,0,0,0)-new Date(t.getTime()).setHours(0,0,0,0):e.getTime()-t.getTime()}var ye=function(e,t,n){return e>Math.min(t,n)&&e<Math.max(t,n)},be={DAY:864e5};function we(e){var t=e.defaultHour,n=e.defaultMinute,i=e.defaultSeconds;if(void 0!==e.minDate){var o=e.minDate.getHours(),r=e.minDate.getMinutes(),s=e.minDate.getSeconds();t<o&&(t=o),t===o&&n<r&&(n=r),t===o&&n===r&&i<s&&(i=e.minDate.getSeconds())}if(void 0!==e.maxDate){var a=e.maxDate.getHours(),l=e.maxDate.getMinutes();(t=Math.min(t,a))===a&&(n=Math.min(l,n)),t===a&&n===l&&(i=e.maxDate.getSeconds())}return{hours:t,minutes:n,seconds:i}}"function"!=typeof Object.assign&&(Object.assign=function(n){for(var e=[],t=1;t<arguments.length;t++)e[t-1]=arguments[t];if(!n)throw TypeError("Cannot convert undefined or null to object");for(var i=function(t){t&&Object.keys(t).forEach(function(e){return n[e]=t[e]})},o=0,r=e;o<r.length;o++){i(r[o])}return n});var De=300;function s(d,u){var D={config:ee(ee({},ie),Ce.defaultConfig),l10n:oe};function h(e){return e.bind(D)}function t(){var t=D.config;!1===t.weekNumbers&&1===t.showMonths||!0!==t.noCalendar&&window.requestAnimationFrame(function(){if(void 0!==D.calendarContainer&&(D.calendarContainer.style.visibility="hidden",D.calendarContainer.style.display="block"),void 0!==D.daysContainer){var e=(D.days.offsetWidth+1)*t.showMonths;D.daysContainer.style.width=e+"px",D.calendarContainer.style.width=e+(void 0!==D.weekWrapper?D.weekWrapper.offsetWidth:0)+"px",D.calendarContainer.style.removeProperty("visibility"),D.calendarContainer.style.removeProperty("display")}})}function f(e){if(0===D.selectedDates.length){var t=void 0===D.config.minDate||0<=ve(new Date,D.config.minDate)?new Date:new Date(D.config.minDate.getTime()),n=we(D.config);t.setHours(n.hours,n.minutes,n.seconds,t.getMilliseconds()),D.selectedDates=[t],D.latestSelectedDateObj=t}void 0!==e&&"blur"!==e.type&&function(e){e.preventDefault();var t="keydown"===e.type,n=fe(e),i=n;void 0!==D.amPM&&n===D.amPM&&(D.amPM.textContent=D.l10n.amPM[se(D.amPM.textContent===D.l10n.amPM[0])]);var o=parseFloat(i.getAttribute("min")),r=parseFloat(i.getAttribute("max")),s=parseFloat(i.getAttribute("step")),a=parseInt(i.value,10),l=e.delta||(t?38===e.which?1:-1:0),c=a+s*l;if(void 0!==i.value&&2===i.value.length){var u=i===D.hourElement,h=i===D.minuteElement;c<o?(c=r+c+se(!u)+(se(u)&&se(!D.amPM)),h&&_(void 0,-1,D.hourElement)):r<c&&(c=i===D.hourElement?c-r-se(!D.amPM):o,h&&_(void 0,1,D.hourElement)),D.amPM&&u&&(1===s?c+a===23:Math.abs(c-a)>s)&&(D.amPM.textContent=D.l10n.amPM[se(D.amPM.textContent===D.l10n.amPM[0])]),i.value=re(c)}}(e);var i=D._input.value;p(),X(),D._input.value!==i&&D._debouncedChange()}function p(){if(void 0!==D.hourElement&&void 0!==D.minuteElement){var e,t,n=(parseInt(D.hourElement.value.slice(-2),10)||0)%24,i=(parseInt(D.minuteElement.value,10)||0)%60,o=void 0!==D.secondElement?(parseInt(D.secondElement.value,10)||0)%60:0;void 0!==D.amPM&&(e=n,t=D.amPM.textContent,n=e%12+12*se(t===D.l10n.amPM[1]));var r=void 0!==D.config.minTime||D.config.minDate&&D.minDateHasTime&&D.latestSelectedDateObj&&0===ve(D.latestSelectedDateObj,D.config.minDate,!0);if(void 0!==D.config.maxTime||D.config.maxDate&&D.maxDateHasTime&&D.latestSelectedDateObj&&0===ve(D.latestSelectedDateObj,D.config.maxDate,!0)){var s=void 0!==D.config.maxTime?D.config.maxTime:D.config.maxDate;(n=Math.min(n,s.getHours()))===s.getHours()&&(i=Math.min(i,s.getMinutes())),i===s.getMinutes()&&(o=Math.min(o,s.getSeconds()))}if(r){var a=void 0!==D.config.minTime?D.config.minTime:D.config.minDate;(n=Math.max(n,a.getHours()))===a.getHours()&&i<a.getMinutes()&&(i=a.getMinutes()),i===a.getMinutes()&&(o=Math.max(o,a.getSeconds()))}l(n,i,o)}}function o(e){var t=e||D.latestSelectedDateObj;t&&l(t.getHours(),t.getMinutes(),t.getSeconds())}function l(e,t,n){void 0!==D.latestSelectedDateObj&&D.latestSelectedDateObj.setHours(e%24,t,n||0,0),D.hourElement&&D.minuteElement&&!D.isMobile&&(D.hourElement.value=re(D.config.time_24hr?e:(12+e)%12+12*se(e%12==0)),D.minuteElement.value=re(t),void 0!==D.amPM&&(D.amPM.textContent=D.l10n.amPM[se(12<=e)]),void 0!==D.secondElement&&(D.secondElement.value=re(n)))}function n(e){var t=fe(e),n=parseInt(t.value)+(e.delta||0);(1<n/1e3||"Enter"===e.key&&!/[^\d]/.test(n.toString()))&&S(n)}function s(t,n,i,o){return n instanceof Array?n.forEach(function(e){return s(t,e,i,o)}):t instanceof Array?t.forEach(function(e){return s(e,n,i,o)}):(t.addEventListener(n,i,o),void D._handlers.push({remove:function(){return t.removeEventListener(n,i)}}))}function c(){K("onChange")}function i(e,t){var n=void 0!==e?D.parseDate(e):D.latestSelectedDateObj||(D.config.minDate&&D.config.minDate>D.now?D.config.minDate:D.config.maxDate&&D.config.maxDate<D.now?D.config.maxDate:D.now),i=D.currentYear,o=D.currentMonth;try{void 0!==n&&(D.currentYear=n.getFullYear(),D.currentMonth=n.getMonth())}catch(e){e.message="Invalid date supplied: "+n,D.config.errorHandler(e)}t&&D.currentYear!==i&&(K("onYearChange"),w()),!t||D.currentYear===i&&D.currentMonth===o||K("onMonthChange"),D.redraw()}function r(e){var t=fe(e);~t.className.indexOf("arrow")&&_(e,t.classList.contains("arrowUp")?1:-1)}function _(e,t,n){var i=e&&fe(e),o=n||i&&i.parentNode&&i.parentNode.firstChild,r=$("increment");r.delta=t,o&&o.dispatchEvent(r)}function m(e,t,n,i){var o,r=A(t,!0),s=ue("span","flatpickr-day "+e,t.getDate().toString());return s.dateObj=t,s.$i=i,s.setAttribute("aria-label",D.formatDate(t,D.config.ariaDateFormat)),-1===e.indexOf("hidden")&&0===ve(t,D.now)&&((D.todayDateElem=s).classList.add("today"),s.setAttribute("aria-current","date")),r?(s.tabIndex=-1,Q(t)&&(s.classList.add("selected"),D.selectedDateElem=s,"range"===D.config.mode&&(ce(s,"startRange",D.selectedDates[0]&&0===ve(t,D.selectedDates[0],!0)),ce(s,"endRange",D.selectedDates[1]&&0===ve(t,D.selectedDates[1],!0)),"nextMonthDay"===e&&s.classList.add("inRange")))):s.classList.add("flatpickr-disabled"),"range"===D.config.mode&&(o=t,!("range"!==D.config.mode||D.selectedDates.length<2)&&0<=ve(o,D.selectedDates[0])&&ve(o,D.selectedDates[1])<=0&&!Q(t)&&s.classList.add("inRange")),D.weekNumbers&&1===D.config.showMonths&&"prevMonthDay"!==e&&n%7==1&&D.weekNumbers.insertAdjacentHTML("beforeend","<span class='flatpickr-day'>"+D.config.getWeek(t)+"</span>"),K("onDayCreate",s),s}function g(e){e.focus(),"range"===D.config.mode&&F(e)}function v(e){for(var t=0<e?0:D.config.showMonths-1,n=0<e?D.config.showMonths:-1,i=t;i!=n;i+=e)for(var o=D.daysContainer.children[i],r=0<e?0:o.children.length-1,s=0<e?o.children.length:-1,a=r;a!=s;a+=e){var l=o.children[a];if(-1===l.className.indexOf("hidden")&&A(l.dateObj))return l}}function y(e,t){var n=I(document.activeElement||document.body),i=void 0!==e?e:n?document.activeElement:void 0!==D.selectedDateElem&&I(D.selectedDateElem)?D.selectedDateElem:void 0!==D.todayDateElem&&I(D.todayDateElem)?D.todayDateElem:v(0<t?1:-1);void 0===i?D._input.focus():n?function(e,t){for(var n=-1===e.className.indexOf("Month")?e.dateObj.getMonth():D.currentMonth,i=0<t?D.config.showMonths:-1,o=0<t?1:-1,r=n-D.currentMonth;r!=i;r+=o)for(var s=D.daysContainer.children[r],a=n-D.currentMonth===r?e.$i+t:t<0?s.children.length-1:0,l=s.children.length,c=a;0<=c&&c<l&&c!=(0<t?l:-1);c+=o){var u=s.children[c];if(-1===u.className.indexOf("hidden")&&A(u.dateObj)&&Math.abs(e.$i-c)>=Math.abs(t))return g(u)}D.changeMonth(o),y(v(o),0)}(i,t):g(i)}function a(e,t){for(var n=(new Date(e,t,1).getDay()-D.l10n.firstDayOfWeek+7)%7,i=D.utils.getDaysInMonth((t-1+12)%12,e),o=D.utils.getDaysInMonth(t,e),r=window.document.createDocumentFragment(),s=1<D.config.showMonths,a=s?"prevMonthDay hidden":"prevMonthDay",l=s?"nextMonthDay hidden":"nextMonthDay",c=i+1-n,u=0;c<=i;c++,u++)r.appendChild(m(a,new Date(e,t-1,c),c,u));for(c=1;c<=o;c++,u++)r.appendChild(m("",new Date(e,t,c),c,u));for(var h=o+1;h<=42-n&&(1===D.config.showMonths||u%7!=0);h++,u++)r.appendChild(m(l,new Date(e,t+1,h%o),h,u));var d=ue("div","dayContainer");return d.appendChild(r),d}function b(){if(void 0!==D.daysContainer){he(D.daysContainer),D.weekNumbers&&he(D.weekNumbers);for(var e=document.createDocumentFragment(),t=0;t<D.config.showMonths;t++){var n=new Date(D.currentYear,D.currentMonth,1);n.setMonth(D.currentMonth+t),e.appendChild(a(n.getFullYear(),n.getMonth()))}D.daysContainer.appendChild(e),D.days=D.daysContainer.firstChild,"range"===D.config.mode&&1===D.selectedDates.length&&F()}}function w(){if(!(1<D.config.showMonths||"dropdown"!==D.config.monthSelectorType)){var e;D.monthsDropdownContainer.tabIndex=-1,D.monthsDropdownContainer.innerHTML="";for(var t=0;t<12;t++)if(e=t,!(void 0!==D.config.minDate&&D.currentYear===D.config.minDate.getFullYear()&&e<D.config.minDate.getMonth()||void 0!==D.config.maxDate&&D.currentYear===D.config.maxDate.getFullYear()&&e>D.config.maxDate.getMonth())){var n=ue("option","flatpickr-monthDropdown-month");n.value=new Date(D.currentYear,t).getMonth().toString(),n.textContent=pe(t,D.config.shorthandCurrentMonth,D.l10n),n.tabIndex=-1,D.currentMonth===t&&(n.selected=!0),D.monthsDropdownContainer.appendChild(n)}}}function C(){var e,t=ue("div","flatpickr-month"),n=window.document.createDocumentFragment();e=1<D.config.showMonths||"static"===D.config.monthSelectorType?ue("span","cur-month"):(D.monthsDropdownContainer=ue("select","flatpickr-monthDropdown-months"),D.monthsDropdownContainer.setAttribute("aria-label",D.l10n.monthAriaLabel),s(D.monthsDropdownContainer,"change",function(e){var t=fe(e),n=parseInt(t.value,10);D.changeMonth(n-D.currentMonth),K("onMonthChange")}),w(),D.monthsDropdownContainer);var i=de("cur-year",{tabindex:"-1"}),o=i.getElementsByTagName("input")[0];o.setAttribute("aria-label",D.l10n.yearAriaLabel),D.config.minDate&&o.setAttribute("min",D.config.minDate.getFullYear().toString()),D.config.maxDate&&(o.setAttribute("max",D.config.maxDate.getFullYear().toString()),o.disabled=!!D.config.minDate&&D.config.minDate.getFullYear()===D.config.maxDate.getFullYear());var r=ue("div","flatpickr-current-month");return r.appendChild(e),r.appendChild(i),n.appendChild(r),t.appendChild(n),{container:t,yearElement:o,monthElement:e}}function x(){he(D.monthNav),D.monthNav.appendChild(D.prevMonthNav),D.config.showMonths&&(D.yearElements=[],D.monthElements=[]);for(var e=D.config.showMonths;e--;){var t=C();D.yearElements.push(t.yearElement),D.monthElements.push(t.monthElement),D.monthNav.appendChild(t.container)}D.monthNav.appendChild(D.nextMonthNav)}function M(){D.weekdayContainer?he(D.weekdayContainer):D.weekdayContainer=ue("div","flatpickr-weekdays");for(var e=D.config.showMonths;e--;){var t=ue("div","flatpickr-weekdaycontainer");D.weekdayContainer.appendChild(t)}return k(),D.weekdayContainer}function k(){if(D.weekdayContainer){var e=D.l10n.firstDayOfWeek,t=te(D.l10n.weekdays.shorthand);0<e&&e<t.length&&(t=te(t.splice(e,t.length),t.splice(0,e)));for(var n=D.config.showMonths;n--;)D.weekdayContainer.children[n].innerHTML="\n <span class='flatpickr-weekday'>\n "+t.join("</span><span class='flatpickr-weekday'>")+"\n </span>\n "}}function E(e,t){void 0===t&&(t=!0);var n=t?e:e-D.currentMonth;n<0&&!0===D._hidePrevMonthArrow||0<n&&!0===D._hideNextMonthArrow||(D.currentMonth+=n,(D.currentMonth<0||11<D.currentMonth)&&(D.currentYear+=11<D.currentMonth?1:-1,D.currentMonth=(D.currentMonth+12)%12,K("onYearChange"),w()),b(),K("onMonthChange"),V())}function T(e){return!(!D.config.appendTo||!D.config.appendTo.contains(e))||D.calendarContainer.contains(e)}function O(e){if(D.isOpen&&!D.config.inline){var t=fe(e),n=T(t),i=t===D.input||t===D.altInput||D.element.contains(t)||e.path&&e.path.indexOf&&(~e.path.indexOf(D.input)||~e.path.indexOf(D.altInput)),o="blur"===e.type?i&&e.relatedTarget&&!T(e.relatedTarget):!i&&!n&&!T(e.relatedTarget),r=!D.config.ignoredFocusElements.some(function(e){return e.contains(t)});o&&r&&(void 0!==D.timeContainer&&void 0!==D.minuteElement&&void 0!==D.hourElement&&""!==D.input.value&&void 0!==D.input.value&&f(),D.close(),D.config&&"range"===D.config.mode&&1===D.selectedDates.length&&(D.clear(!1),D.redraw()))}}function S(e){if(!(!e||D.config.minDate&&e<D.config.minDate.getFullYear()||D.config.maxDate&&e>D.config.maxDate.getFullYear())){var t=e,n=D.currentYear!==t;D.currentYear=t||D.currentYear,D.config.maxDate&&D.currentYear===D.config.maxDate.getFullYear()?D.currentMonth=Math.min(D.config.maxDate.getMonth(),D.currentMonth):D.config.minDate&&D.currentYear===D.config.minDate.getFullYear()&&(D.currentMonth=Math.max(D.config.minDate.getMonth(),D.currentMonth)),n&&(D.redraw(),K("onYearChange"),w())}}function A(e,t){var n;void 0===t&&(t=!0);var i=D.parseDate(e,void 0,t);if(D.config.minDate&&i&&ve(i,D.config.minDate,void 0!==t?t:!D.minDateHasTime)<0||D.config.maxDate&&i&&0<ve(i,D.config.maxDate,void 0!==t?t:!D.maxDateHasTime))return!1;if(!D.config.enable&&0===D.config.disable.length)return!0;if(void 0===i)return!1;for(var o=!!D.config.enable,r=null!==(n=D.config.enable)&&void 0!==n?n:D.config.disable,s=0,a=void 0;s<r.length;s++){if("function"==typeof(a=r[s])&&a(i))return o;if(a instanceof Date&&void 0!==i&&a.getTime()===i.getTime())return o;if("string"==typeof a){var l=D.parseDate(a,void 0,!0);return l&&l.getTime()===i.getTime()?o:!o}if("object"==typeof a&&void 0!==i&&a.from&&a.to&&i.getTime()>=a.from.getTime()&&i.getTime()<=a.to.getTime())return o}return!o}function I(e){return void 0!==D.daysContainer&&(-1===e.className.indexOf("hidden")&&-1===e.className.indexOf("flatpickr-disabled")&&D.daysContainer.contains(e))}function N(e){!(e.target===D._input)||!(0<D.selectedDates.length||0<D._input.value.length)||e.relatedTarget&&T(e.relatedTarget)||D.setDate(D._input.value,!0,e.target===D.altInput?D.config.altFormat:D.config.dateFormat)}function j(e){var t=fe(e),n=D.config.wrap?d.contains(t):t===D._input,i=D.config.allowInput,o=D.isOpen&&(!i||!n),r=D.config.inline&&n&&!i;if(13===e.keyCode&&n){if(i)return D.setDate(D._input.value,!0,t===D.altInput?D.config.altFormat:D.config.dateFormat),t.blur();D.open()}else if(T(t)||o||r){var s=!!D.timeContainer&&D.timeContainer.contains(t);switch(e.keyCode){case 13:s?(e.preventDefault(),f(),W()):B(e);break;case 27:e.preventDefault(),W();break;case 8:case 46:n&&!D.config.allowInput&&(e.preventDefault(),D.clear());break;case 37:case 39:if(s||n)D.hourElement&&D.hourElement.focus();else if(e.preventDefault(),void 0!==D.daysContainer&&(!1===i||document.activeElement&&I(document.activeElement))){var a=39===e.keyCode?1:-1;e.ctrlKey?(e.stopPropagation(),E(a),y(v(1),0)):y(void 0,a)}break;case 38:case 40:e.preventDefault();var l=40===e.keyCode?1:-1;D.daysContainer&&void 0!==t.$i||t===D.input||t===D.altInput?e.ctrlKey?(e.stopPropagation(),S(D.currentYear-l),y(v(1),0)):s||y(void 0,7*l):t===D.currentYearElement?S(D.currentYear-l):D.config.enableTime&&(!s&&D.hourElement&&D.hourElement.focus(),f(e),D._debouncedChange());break;case 9:if(s){var c=[D.hourElement,D.minuteElement,D.secondElement,D.amPM].concat(D.pluginElements).filter(function(e){return e}),u=c.indexOf(t);if(-1!==u){var h=c[u+(e.shiftKey?-1:1)];e.preventDefault(),(h||D._input).focus()}}else!D.config.noCalendar&&D.daysContainer&&D.daysContainer.contains(t)&&e.shiftKey&&(e.preventDefault(),D._input.focus())}}if(void 0!==D.amPM&&t===D.amPM)switch(e.key){case D.l10n.amPM[0].charAt(0):case D.l10n.amPM[0].charAt(0).toLowerCase():D.amPM.textContent=D.l10n.amPM[0],p(),X();break;case D.l10n.amPM[1].charAt(0):case D.l10n.amPM[1].charAt(0).toLowerCase():D.amPM.textContent=D.l10n.amPM[1],p(),X()}(n||T(t))&&K("onKeyDown",e)}function F(r){if(1===D.selectedDates.length&&(!r||r.classList.contains("flatpickr-day")&&!r.classList.contains("flatpickr-disabled"))){for(var s=r?r.dateObj.getTime():D.days.firstElementChild.dateObj.getTime(),a=D.parseDate(D.selectedDates[0],void 0,!0).getTime(),e=Math.min(s,D.selectedDates[0].getTime()),t=Math.max(s,D.selectedDates[0].getTime()),l=!1,c=0,u=0,n=e;n<t;n+=be.DAY)A(new Date(n),!0)||(l=l||e<n&&n<t,n<a&&(!c||c<n)?c=n:a<n&&(!u||n<u)&&(u=n));for(var i=0;i<D.config.showMonths;i++)for(var h=D.daysContainer.children[i],o=function(e,t){var n=h.children[e],i=n.dateObj.getTime(),o=0<c&&i<c||0<u&&u<i;return o?(n.classList.add("notAllowed"),["inRange","startRange","endRange"].forEach(function(e){n.classList.remove(e)}),"continue"):l&&!o?"continue":(["startRange","inRange","endRange","notAllowed"].forEach(function(e){n.classList.remove(e)}),void(void 0!==r&&(r.classList.add(s<=D.selectedDates[0].getTime()?"startRange":"endRange"),a<s&&i===a?n.classList.add("startRange"):s<a&&i===a&&n.classList.add("endRange"),c<=i&&(0===u||i<=u)&&ye(i,a,s)&&n.classList.add("inRange"))))},d=0,f=h.children.length;d<f;d++)o(d)}}function P(){!D.isOpen||D.config.static||D.config.inline||R()}function Y(i){return function(e){var t=D.config["_"+i+"Date"]=D.parseDate(e,D.config.dateFormat),n=D.config["_"+("min"===i?"max":"min")+"Date"];void 0!==t&&(D["min"===i?"minDateHasTime":"maxDateHasTime"]=0<t.getHours()||0<t.getMinutes()||0<t.getSeconds()),D.selectedDates&&(D.selectedDates=D.selectedDates.filter(function(e){return A(e)}),D.selectedDates.length||"min"!==i||o(t),X()),D.daysContainer&&(q(),void 0!==t?D.currentYearElement[i]=t.getFullYear().toString():D.currentYearElement.removeAttribute(i),D.currentYearElement.disabled=!!n&&void 0!==t&&n.getFullYear()===t.getFullYear())}}function H(){return D.config.wrap?d.querySelector("[data-input]"):d}function L(){"object"!=typeof D.config.locale&&void 0===Ce.l10ns[D.config.locale]&&D.config.errorHandler(new Error("flatpickr: invalid locale "+D.config.locale)),D.l10n=ee(ee({},Ce.l10ns.default),"object"==typeof D.config.locale?D.config.locale:"default"!==D.config.locale?Ce.l10ns[D.config.locale]:void 0),_e.K="("+D.l10n.amPM[0]+"|"+D.l10n.amPM[1]+"|"+D.l10n.amPM[0].toLowerCase()+"|"+D.l10n.amPM[1].toLowerCase()+")",void 0===ee(ee({},u),JSON.parse(JSON.stringify(d.dataset||{}))).time_24hr&&void 0===Ce.defaultConfig.time_24hr&&(D.config.time_24hr=D.l10n.time_24hr),D.formatDate=me(D),D.parseDate=ge({config:D.config,l10n:D.l10n})}function R(e){if("function"!=typeof D.config.position){if(void 0!==D.calendarContainer){K("onPreCalendarPosition");var t=e||D._positionElement,n=Array.prototype.reduce.call(D.calendarContainer.children,function(e,t){return e+t.offsetHeight},0),i=D.calendarContainer.offsetWidth,o=D.config.position.split(" "),r=o[0],s=1<o.length?o[1]:null,a=t.getBoundingClientRect(),l=window.innerHeight-a.bottom,c="above"===r||"below"!==r&&l<n&&a.top>n,u=window.pageYOffset+a.top+(c?-n-2:t.offsetHeight+2);if(ce(D.calendarContainer,"arrowTop",!c),ce(D.calendarContainer,"arrowBottom",c),!D.config.inline){var h=window.pageXOffset+a.left,d=!1,f=!1;"center"===s?(h-=(i-a.width)/2,d=!0):"right"===s&&(h-=i-a.width,f=!0),ce(D.calendarContainer,"arrowLeft",!d&&!f),ce(D.calendarContainer,"arrowCenter",d),ce(D.calendarContainer,"arrowRight",f);var p=window.document.body.offsetWidth-(window.pageXOffset+a.right),_=h+i>window.document.body.offsetWidth,m=p+i>window.document.body.offsetWidth;if(ce(D.calendarContainer,"rightMost",_),!D.config.static)if(D.calendarContainer.style.top=u+"px",_)if(m){var g=function(){for(var e=null,t=0;t<document.styleSheets.length;t++){var n=document.styleSheets[t];try{n.cssRules}catch(e){continue}e=n;break}return null!=e?e:(i=document.createElement("style"),document.head.appendChild(i),i.sheet);var i}();if(void 0===g)return;var v=window.document.body.offsetWidth,y=Math.max(0,v/2-i/2),b=g.cssRules.length,w="{left:"+a.left+"px;right:auto;}";ce(D.calendarContainer,"rightMost",!1),ce(D.calendarContainer,"centerMost",!0),g.insertRule(".flatpickr-calendar.centerMost:before,.flatpickr-calendar.centerMost:after"+w,b),D.calendarContainer.style.left=y+"px",D.calendarContainer.style.right="auto"}else D.calendarContainer.style.left="auto",D.calendarContainer.style.right=p+"px";else D.calendarContainer.style.left=h+"px",D.calendarContainer.style.right="auto"}}}else D.config.position(D,e)}function q(){D.config.noCalendar||D.isMobile||(w(),V(),b())}function W(){D._input.focus(),-1!==window.navigator.userAgent.indexOf("MSIE")||void 0!==navigator.msMaxTouchPoints?setTimeout(D.close,0):D.close()}function B(e){e.preventDefault(),e.stopPropagation();var t=function e(t,n){return n(t)?t:t.parentNode?e(t.parentNode,n):void 0}(fe(e),function(e){return e.classList&&e.classList.contains("flatpickr-day")&&!e.classList.contains("flatpickr-disabled")&&!e.classList.contains("notAllowed")});if(void 0!==t){var n=t,i=D.latestSelectedDateObj=new Date(n.dateObj.getTime()),o=(i.getMonth()<D.currentMonth||i.getMonth()>D.currentMonth+D.config.showMonths-1)&&"range"!==D.config.mode;if(D.selectedDateElem=n,"single"===D.config.mode)D.selectedDates=[i];else if("multiple"===D.config.mode){var r=Q(i);r?D.selectedDates.splice(parseInt(r),1):D.selectedDates.push(i)}else"range"===D.config.mode&&(2===D.selectedDates.length&&D.clear(!1,!1),D.latestSelectedDateObj=i,D.selectedDates.push(i),0!==ve(i,D.selectedDates[0],!0)&&D.selectedDates.sort(function(e,t){return e.getTime()-t.getTime()}));if(p(),o){var s=D.currentYear!==i.getFullYear();D.currentYear=i.getFullYear(),D.currentMonth=i.getMonth(),s&&(K("onYearChange"),w()),K("onMonthChange")}if(V(),b(),X(),o||"range"===D.config.mode||1!==D.config.showMonths?void 0!==D.selectedDateElem&&void 0===D.hourElement&&D.selectedDateElem&&D.selectedDateElem.focus():g(n),void 0!==D.hourElement&&void 0!==D.hourElement&&D.hourElement.focus(),D.config.closeOnSelect){var a="single"===D.config.mode&&!D.config.enableTime,l="range"===D.config.mode&&2===D.selectedDates.length&&!D.config.enableTime;(a||l)&&W()}c()}}D.parseDate=ge({config:D.config,l10n:D.l10n}),D._handlers=[],D.pluginElements=[],D.loadedPlugins=[],D._bind=s,D._setHoursFromDate=o,D._positionCalendar=R,D.changeMonth=E,D.changeYear=S,D.clear=function(e,t){void 0===e&&(e=!0);void 0===t&&(t=!0);D.input.value="",void 0!==D.altInput&&(D.altInput.value="");void 0!==D.mobileInput&&(D.mobileInput.value="");D.selectedDates=[],!(D.latestSelectedDateObj=void 0)===t&&(D.currentYear=D._initialDate.getFullYear(),D.currentMonth=D._initialDate.getMonth());if(!0===D.config.enableTime){var n=we(D.config),i=n.hours,o=n.minutes,r=n.seconds;l(i,o,r)}D.redraw(),e&&K("onChange")},D.close=function(){D.isOpen=!1,D.isMobile||(void 0!==D.calendarContainer&&D.calendarContainer.classList.remove("open"),void 0!==D._input&&D._input.classList.remove("active"));K("onClose")},D._createElement=ue,D.destroy=function(){void 0!==D.config&&K("onDestroy");for(var e=D._handlers.length;e--;)D._handlers[e].remove();if(D._handlers=[],D.mobileInput)D.mobileInput.parentNode&&D.mobileInput.parentNode.removeChild(D.mobileInput),D.mobileInput=void 0;else if(D.calendarContainer&&D.calendarContainer.parentNode)if(D.config.static&&D.calendarContainer.parentNode){var t=D.calendarContainer.parentNode;if(t.lastChild&&t.removeChild(t.lastChild),t.parentNode){for(;t.firstChild;)t.parentNode.insertBefore(t.firstChild,t);t.parentNode.removeChild(t)}}else D.calendarContainer.parentNode.removeChild(D.calendarContainer);D.altInput&&(D.input.type="text",D.altInput.parentNode&&D.altInput.parentNode.removeChild(D.altInput),delete D.altInput);D.input&&(D.input.type=D.input._type,D.input.classList.remove("flatpickr-input"),D.input.removeAttribute("readonly"));["_showTimeInput","latestSelectedDateObj","_hideNextMonthArrow","_hidePrevMonthArrow","__hideNextMonthArrow","__hidePrevMonthArrow","isMobile","isOpen","selectedDateElem","minDateHasTime","maxDateHasTime","days","daysContainer","_input","_positionElement","innerContainer","rContainer","monthNav","todayDateElem","calendarContainer","weekdayContainer","prevMonthNav","nextMonthNav","monthsDropdownContainer","currentMonthElement","currentYearElement","navigationCurrentMonth","selectedDateElem","config"].forEach(function(e){try{delete D[e]}catch(e){}})},D.isEnabled=A,D.jumpToDate=i,D.open=function(e,t){void 0===t&&(t=D._positionElement);{if(!0===D.isMobile){if(e){e.preventDefault();var n=fe(e);n&&n.blur()}return void 0!==D.mobileInput&&(D.mobileInput.focus(),D.mobileInput.click()),void K("onOpen")}if(D._input.disabled||D.config.inline)return}var i=D.isOpen;D.isOpen=!0,i||(D.calendarContainer.classList.add("open"),D._input.classList.add("active"),K("onOpen"),R(t));!0===D.config.enableTime&&!0===D.config.noCalendar&&(!1!==D.config.allowInput||void 0!==e&&D.timeContainer.contains(e.relatedTarget)||setTimeout(function(){return D.hourElement.select()},50))},D.redraw=q,D.set=function(e,t){if(null!==e&&"object"==typeof e)for(var n in Object.assign(D.config,e),e)void 0!==z[n]&&z[n].forEach(function(e){return e()});else D.config[e]=t,void 0!==z[e]?z[e].forEach(function(e){return e()}):-1<ne.indexOf(e)&&(D.config[e]=le(t));D.redraw(),X(!0)},D.setDate=function(e,t,n){void 0===t&&(t=!1);void 0===n&&(n=D.config.dateFormat);if(0!==e&&!e||e instanceof Array&&0===e.length)return D.clear(t);U(e,n),D.latestSelectedDateObj=D.selectedDates[D.selectedDates.length-1],D.redraw(),i(void 0,t),o(),0===D.selectedDates.length&&D.clear(!1);X(t),t&&K("onChange")},D.toggle=function(e){if(!0===D.isOpen)return D.close();D.open(e)};var z={locale:[L,k],showMonths:[x,t,M],minDate:[i],maxDate:[i],clickOpens:[function(){!0===D.config.clickOpens?(s(D._input,"focus",D.open),s(D._input,"click",D.open)):(D._input.removeEventListener("focus",D.open),D._input.removeEventListener("click",D.open))}]};function U(e,t){var n=[];if(e instanceof Array)n=e.map(function(e){return D.parseDate(e,t)});else if(e instanceof Date||"number"==typeof e)n=[D.parseDate(e,t)];else if("string"==typeof e)switch(D.config.mode){case"single":case"time":n=[D.parseDate(e,t)];break;case"multiple":n=e.split(D.config.conjunction).map(function(e){return D.parseDate(e,t)});break;case"range":n=e.split(D.l10n.rangeSeparator).map(function(e){return D.parseDate(e,t)})}else D.config.errorHandler(new Error("Invalid date supplied: "+JSON.stringify(e)));D.selectedDates=D.config.allowInvalidPreload?n:n.filter(function(e){return e instanceof Date&&A(e,!1)}),"range"===D.config.mode&&D.selectedDates.sort(function(e,t){return e.getTime()-t.getTime()})}function J(e){return e.slice().map(function(e){return"string"==typeof e||"number"==typeof e||e instanceof Date?D.parseDate(e,void 0,!0):e&&"object"==typeof e&&e.from&&e.to?{from:D.parseDate(e.from,void 0),to:D.parseDate(e.to,void 0)}:e}).filter(function(e){return e})}function K(e,t){if(void 0!==D.config){var n=D.config[e];if(void 0!==n&&0<n.length)for(var i=0;n[i]&&i<n.length;i++)n[i](D.selectedDates,D.input.value,D,t);"onChange"===e&&(D.input.dispatchEvent($("change")),D.input.dispatchEvent($("input")))}}function $(e){var t=document.createEvent("Event");return t.initEvent(e,!0,!0),t}function Q(e){for(var t=0;t<D.selectedDates.length;t++)if(0===ve(D.selectedDates[t],e))return""+t;return!1}function V(){D.config.noCalendar||D.isMobile||!D.monthNav||(D.yearElements.forEach(function(e,t){var n=new Date(D.currentYear,D.currentMonth,1);n.setMonth(D.currentMonth+t),1<D.config.showMonths||"static"===D.config.monthSelectorType?D.monthElements[t].textContent=pe(n.getMonth(),D.config.shorthandCurrentMonth,D.l10n)+" ":D.monthsDropdownContainer.value=n.getMonth().toString(),e.value=n.getFullYear().toString()}),D._hidePrevMonthArrow=void 0!==D.config.minDate&&(D.currentYear===D.config.minDate.getFullYear()?D.currentMonth<=D.config.minDate.getMonth():D.currentYear<D.config.minDate.getFullYear()),D._hideNextMonthArrow=void 0!==D.config.maxDate&&(D.currentYear===D.config.maxDate.getFullYear()?D.currentMonth+1>D.config.maxDate.getMonth():D.currentYear>D.config.maxDate.getFullYear()))}function G(t){return D.selectedDates.map(function(e){return D.formatDate(e,t)}).filter(function(e,t,n){return"range"!==D.config.mode||D.config.enableTime||n.indexOf(e)===t}).join("range"!==D.config.mode?D.config.conjunction:D.l10n.rangeSeparator)}function X(e){void 0===e&&(e=!0),void 0!==D.mobileInput&&D.mobileFormatStr&&(D.mobileInput.value=void 0!==D.latestSelectedDateObj?D.formatDate(D.latestSelectedDateObj,D.mobileFormatStr):""),D.input.value=G(D.config.dateFormat),void 0!==D.altInput&&(D.altInput.value=G(D.config.altFormat)),!1!==e&&K("onValueUpdate")}function Z(e){var t=fe(e),n=D.prevMonthNav.contains(t),i=D.nextMonthNav.contains(t);n||i?E(n?-1:1):0<=D.yearElements.indexOf(t)?t.select():t.classList.contains("arrowUp")?D.changeYear(D.currentYear+1):t.classList.contains("arrowDown")&&D.changeYear(D.currentYear-1)}return function(){D.element=D.input=d,D.isOpen=!1,function(){var e=["wrap","weekNumbers","allowInput","allowInvalidPreload","clickOpens","time_24hr","enableTime","noCalendar","altInput","shorthandCurrentMonth","inline","static","enableSeconds","disableMobile"],t=ee(ee({},JSON.parse(JSON.stringify(d.dataset||{}))),u),n={};D.config.parseDate=t.parseDate,D.config.formatDate=t.formatDate,Object.defineProperty(D.config,"enable",{get:function(){return D.config._enable},set:function(e){D.config._enable=J(e)}}),Object.defineProperty(D.config,"disable",{get:function(){return D.config._disable},set:function(e){D.config._disable=J(e)}});var i="time"===t.mode;if(!t.dateFormat&&(t.enableTime||i)){var o=Ce.defaultConfig.dateFormat||ie.dateFormat;n.dateFormat=t.noCalendar||i?"H:i"+(t.enableSeconds?":S":""):o+" H:i"+(t.enableSeconds?":S":"")}if(t.altInput&&(t.enableTime||i)&&!t.altFormat){var r=Ce.defaultConfig.altFormat||ie.altFormat;n.altFormat=t.noCalendar||i?"h:i"+(t.enableSeconds?":S K":" K"):r+" h:i"+(t.enableSeconds?":S":"")+" K"}Object.defineProperty(D.config,"minDate",{get:function(){return D.config._minDate},set:Y("min")}),Object.defineProperty(D.config,"maxDate",{get:function(){return D.config._maxDate},set:Y("max")});var s=function(t){return function(e){D.config["min"===t?"_minTime":"_maxTime"]=D.parseDate(e,"H:i:S")}};Object.defineProperty(D.config,"minTime",{get:function(){return D.config._minTime},set:s("min")}),Object.defineProperty(D.config,"maxTime",{get:function(){return D.config._maxTime},set:s("max")}),"time"===t.mode&&(D.config.noCalendar=!0,D.config.enableTime=!0),Object.assign(D.config,n,t);for(var a=0;a<e.length;a++)D.config[e[a]]=!0===D.config[e[a]]||"true"===D.config[e[a]];ne.filter(function(e){return void 0!==D.config[e]}).forEach(function(e){D.config[e]=le(D.config[e]||[]).map(h)}),D.isMobile=!D.config.disableMobile&&!D.config.inline&&"single"===D.config.mode&&!D.config.disable.length&&!D.config.enable&&!D.config.weekNumbers&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);for(var a=0;a<D.config.plugins.length;a++){var l=D.config.plugins[a](D)||{};for(var c in l)-1<ne.indexOf(c)?D.config[c]=le(l[c]).map(h).concat(D.config[c]):void 0===t[c]&&(D.config[c]=l[c])}t.altInputClass||(D.config.altInputClass=H().className+" "+D.config.altInputClass),K("onParseConfig")}(),L(),function(){if(D.input=H(),!D.input)return D.config.errorHandler(new Error("Invalid input element specified"));D.input._type=D.input.type,D.input.type="text",D.input.classList.add("flatpickr-input"),D._input=D.input,D.config.altInput&&(D.altInput=ue(D.input.nodeName,D.config.altInputClass),D._input=D.altInput,D.altInput.placeholder=D.input.placeholder,D.altInput.disabled=D.input.disabled,D.altInput.required=D.input.required,D.altInput.tabIndex=D.input.tabIndex,D.altInput.type="text",D.input.setAttribute("type","hidden"),!D.config.static&&D.input.parentNode&&D.input.parentNode.insertBefore(D.altInput,D.input.nextSibling)),D.config.allowInput||D._input.setAttribute("readonly","readonly"),D._positionElement=D.config.positionElement||D._input}(),function(){D.selectedDates=[],D.now=D.parseDate(D.config.now)||new Date;var e=D.config.defaultDate||("INPUT"!==D.input.nodeName&&"TEXTAREA"!==D.input.nodeName||!D.input.placeholder||D.input.value!==D.input.placeholder?D.input.value:null);e&&U(e,D.config.dateFormat),D._initialDate=0<D.selectedDates.length?D.selectedDates[0]:D.config.minDate&&D.config.minDate.getTime()>D.now.getTime()?D.config.minDate:D.config.maxDate&&D.config.maxDate.getTime()<D.now.getTime()?D.config.maxDate:D.now,D.currentYear=D._initialDate.getFullYear(),D.currentMonth=D._initialDate.getMonth(),0<D.selectedDates.length&&(D.latestSelectedDateObj=D.selectedDates[0]),void 0!==D.config.minTime&&(D.config.minTime=D.parseDate(D.config.minTime,"H:i")),void 0!==D.config.maxTime&&(D.config.maxTime=D.parseDate(D.config.maxTime,"H:i")),D.minDateHasTime=!!D.config.minDate&&(0<D.config.minDate.getHours()||0<D.config.minDate.getMinutes()||0<D.config.minDate.getSeconds()),D.maxDateHasTime=!!D.config.maxDate&&(0<D.config.maxDate.getHours()||0<D.config.maxDate.getMinutes()||0<D.config.maxDate.getSeconds())}(),D.utils={getDaysInMonth:function(e,t){return void 0===e&&(e=D.currentMonth),void 0===t&&(t=D.currentYear),1===e&&(t%4==0&&t%100!=0||t%400==0)?29:D.l10n.daysInMonth[e]}},D.isMobile||function(){var e=window.document.createDocumentFragment();if(D.calendarContainer=ue("div","flatpickr-calendar"),D.calendarContainer.tabIndex=-1,!D.config.noCalendar){if(e.appendChild((D.monthNav=ue("div","flatpickr-months"),D.yearElements=[],D.monthElements=[],D.prevMonthNav=ue("span","flatpickr-prev-month"),D.prevMonthNav.innerHTML=D.config.prevArrow,D.nextMonthNav=ue("span","flatpickr-next-month"),D.nextMonthNav.innerHTML=D.config.nextArrow,x(),Object.defineProperty(D,"_hidePrevMonthArrow",{get:function(){return D.__hidePrevMonthArrow},set:function(e){D.__hidePrevMonthArrow!==e&&(ce(D.prevMonthNav,"flatpickr-disabled",e),D.__hidePrevMonthArrow=e)}}),Object.defineProperty(D,"_hideNextMonthArrow",{get:function(){return D.__hideNextMonthArrow},set:function(e){D.__hideNextMonthArrow!==e&&(ce(D.nextMonthNav,"flatpickr-disabled",e),D.__hideNextMonthArrow=e)}}),D.currentYearElement=D.yearElements[0],V(),D.monthNav)),D.innerContainer=ue("div","flatpickr-innerContainer"),D.config.weekNumbers){var t=function(){D.calendarContainer.classList.add("hasWeeks");var e=ue("div","flatpickr-weekwrapper");e.appendChild(ue("span","flatpickr-weekday",D.l10n.weekAbbreviation));var t=ue("div","flatpickr-weeks");return e.appendChild(t),{weekWrapper:e,weekNumbers:t}}(),n=t.weekWrapper,i=t.weekNumbers;D.innerContainer.appendChild(n),D.weekNumbers=i,D.weekWrapper=n}D.rContainer=ue("div","flatpickr-rContainer"),D.rContainer.appendChild(M()),D.daysContainer||(D.daysContainer=ue("div","flatpickr-days"),D.daysContainer.tabIndex=-1),b(),D.rContainer.appendChild(D.daysContainer),D.innerContainer.appendChild(D.rContainer),e.appendChild(D.innerContainer)}D.config.enableTime&&e.appendChild(function(){D.calendarContainer.classList.add("hasTime"),D.config.noCalendar&&D.calendarContainer.classList.add("noCalendar");var e=we(D.config);D.timeContainer=ue("div","flatpickr-time"),D.timeContainer.tabIndex=-1;var t=ue("span","flatpickr-time-separator",":"),n=de("flatpickr-hour",{"aria-label":D.l10n.hourAriaLabel});D.hourElement=n.getElementsByTagName("input")[0];var i=de("flatpickr-minute",{"aria-label":D.l10n.minuteAriaLabel});if(D.minuteElement=i.getElementsByTagName("input")[0],D.hourElement.tabIndex=D.minuteElement.tabIndex=-1,D.hourElement.value=re(D.latestSelectedDateObj?D.latestSelectedDateObj.getHours():D.config.time_24hr?e.hours:function(e){switch(e%24){case 0:case 12:return 12;default:return e%12}}(e.hours)),D.minuteElement.value=re(D.latestSelectedDateObj?D.latestSelectedDateObj.getMinutes():e.minutes),D.hourElement.setAttribute("step",D.config.hourIncrement.toString()),D.minuteElement.setAttribute("step",D.config.minuteIncrement.toString()),D.hourElement.setAttribute("min",D.config.time_24hr?"0":"1"),D.hourElement.setAttribute("max",D.config.time_24hr?"23":"12"),D.hourElement.setAttribute("maxlength","2"),D.minuteElement.setAttribute("min","0"),D.minuteElement.setAttribute("max","59"),D.minuteElement.setAttribute("maxlength","2"),D.timeContainer.appendChild(n),D.timeContainer.appendChild(t),D.timeContainer.appendChild(i),D.config.time_24hr&&D.timeContainer.classList.add("time24hr"),D.config.enableSeconds){D.timeContainer.classList.add("hasSeconds");var o=de("flatpickr-second");D.secondElement=o.getElementsByTagName("input")[0],D.secondElement.value=re(D.latestSelectedDateObj?D.latestSelectedDateObj.getSeconds():e.seconds),D.secondElement.setAttribute("step",D.minuteElement.getAttribute("step")),D.secondElement.setAttribute("min","0"),D.secondElement.setAttribute("max","59"),D.secondElement.setAttribute("maxlength","2"),D.timeContainer.appendChild(ue("span","flatpickr-time-separator",":")),D.timeContainer.appendChild(o)}return D.config.time_24hr||(D.amPM=ue("span","flatpickr-am-pm",D.l10n.amPM[se(11<(D.latestSelectedDateObj?D.hourElement.value:D.config.defaultHour))]),D.amPM.title=D.l10n.toggleTitle,D.amPM.tabIndex=-1,D.timeContainer.appendChild(D.amPM)),D.timeContainer}()),ce(D.calendarContainer,"rangeMode","range"===D.config.mode),ce(D.calendarContainer,"animate",!0===D.config.animate),ce(D.calendarContainer,"multiMonth",1<D.config.showMonths),D.calendarContainer.appendChild(e);var o=void 0!==D.config.appendTo&&void 0!==D.config.appendTo.nodeType;if((D.config.inline||D.config.static)&&(D.calendarContainer.classList.add(D.config.inline?"inline":"static"),D.config.inline&&(!o&&D.element.parentNode?D.element.parentNode.insertBefore(D.calendarContainer,D._input.nextSibling):void 0!==D.config.appendTo&&D.config.appendTo.appendChild(D.calendarContainer)),D.config.static)){var r=ue("div","flatpickr-wrapper");D.element.parentNode&&D.element.parentNode.insertBefore(r,D.element),r.appendChild(D.element),D.altInput&&r.appendChild(D.altInput),r.appendChild(D.calendarContainer)}D.config.static||D.config.inline||(void 0!==D.config.appendTo?D.config.appendTo:window.document.body).appendChild(D.calendarContainer)}(),function(){if(D.config.wrap&&["open","close","toggle","clear"].forEach(function(t){Array.prototype.forEach.call(D.element.querySelectorAll("[data-"+t+"]"),function(e){return s(e,"click",D[t])})}),D.isMobile)return function(){var e=D.config.enableTime?D.config.noCalendar?"time":"datetime-local":"date";D.mobileInput=ue("input",D.input.className+" flatpickr-mobile"),D.mobileInput.tabIndex=1,D.mobileInput.type=e,D.mobileInput.disabled=D.input.disabled,D.mobileInput.required=D.input.required,D.mobileInput.placeholder=D.input.placeholder,D.mobileFormatStr="datetime-local"===e?"Y-m-d\\TH:i:S":"date"===e?"Y-m-d":"H:i:S",0<D.selectedDates.length&&(D.mobileInput.defaultValue=D.mobileInput.value=D.formatDate(D.selectedDates[0],D.mobileFormatStr)),D.config.minDate&&(D.mobileInput.min=D.formatDate(D.config.minDate,"Y-m-d")),D.config.maxDate&&(D.mobileInput.max=D.formatDate(D.config.maxDate,"Y-m-d")),D.input.getAttribute("step")&&(D.mobileInput.step=String(D.input.getAttribute("step"))),D.input.type="hidden",void 0!==D.altInput&&(D.altInput.type="hidden");try{D.input.parentNode&&D.input.parentNode.insertBefore(D.mobileInput,D.input.nextSibling)}catch(e){}s(D.mobileInput,"change",function(e){D.setDate(fe(e).value,!1,D.mobileFormatStr),K("onChange"),K("onClose")})}();var e=ae(P,50);D._debouncedChange=ae(c,De),D.daysContainer&&!/iPhone|iPad|iPod/i.test(navigator.userAgent)&&s(D.daysContainer,"mouseover",function(e){"range"===D.config.mode&&F(fe(e))}),s(window.document.body,"keydown",j),D.config.inline||D.config.static||s(window,"resize",e),void 0!==window.ontouchstart?s(window.document,"touchstart",O):s(window.document,"mousedown",O),s(window.document,"focus",O,{capture:!0}),!0===D.config.clickOpens&&(s(D._input,"focus",D.open),s(D._input,"click",D.open)),void 0!==D.daysContainer&&(s(D.monthNav,"click",Z),s(D.monthNav,["keyup","increment"],n),s(D.daysContainer,"click",B)),void 0!==D.timeContainer&&void 0!==D.minuteElement&&void 0!==D.hourElement&&(s(D.timeContainer,["increment"],f),s(D.timeContainer,"blur",f,{capture:!0}),s(D.timeContainer,"click",r),s([D.hourElement,D.minuteElement],["focus","click"],function(e){return fe(e).select()}),void 0!==D.secondElement&&s(D.secondElement,"focus",function(){return D.secondElement&&D.secondElement.select()}),void 0!==D.amPM&&s(D.amPM,"click",function(e){f(e),c()})),D.config.allowInput&&s(D._input,"blur",N)}(),(D.selectedDates.length||D.config.noCalendar)&&(D.config.enableTime&&o(D.config.noCalendar?D.latestSelectedDateObj:void 0),X(!1)),t();var e=/^((?!chrome|android).)*safari/i.test(navigator.userAgent);!D.isMobile&&e&&R(),K("onReady")}(),D}function n(e,t){for(var n=Array.prototype.slice.call(e).filter(function(e){return e instanceof HTMLElement}),i=[],o=0;o<n.length;o++){var r=n[o];try{if(null!==r.getAttribute("data-fp-omit"))continue;void 0!==r._flatpickr&&(r._flatpickr.destroy(),r._flatpickr=void 0),r._flatpickr=s(r,t||{}),i.push(r._flatpickr)}catch(e){console.error(e)}}return 1===i.length?i[0]:i}"undefined"!=typeof HTMLElement&&"undefined"!=typeof HTMLCollection&&"undefined"!=typeof NodeList&&(HTMLCollection.prototype.flatpickr=NodeList.prototype.flatpickr=function(e){return n(this,e)},HTMLElement.prototype.flatpickr=function(e){return n([this],e)});var Ce=function(e,t){return"string"==typeof e?n(window.document.querySelectorAll(e),t):e instanceof Node?n([e],t):n(e,t)};return Ce.defaultConfig={},Ce.l10ns={en:ee({},oe),default:ee({},oe)},Ce.localize=function(e){Ce.l10ns.default=ee(ee({},Ce.l10ns.default),e)},Ce.setDefaults=function(e){Ce.defaultConfig=ee(ee({},Ce.defaultConfig),e)},Ce.parseDate=ge({}),Ce.formatDate=me({}),Ce.compareDates=ve,"undefined"!=typeof jQuery&&void 0!==jQuery.fn&&(jQuery.fn.flatpickr=function(e){return n(this,e)}),Date.prototype.fp_incr=function(e){return new Date(this.getFullYear(),this.getMonth(),this.getDate()+("string"==typeof e?parseInt(e,10):e))},"undefined"!=typeof window&&(window.flatpickr=Ce),Ce}),function(s){function t(e,t){this.element=s(e),this.options=t,this.init()}t.prototype.init=function(){this.element.chosen(this.options),this.container=this.element.next(".chosen-container"),this.search_field=this.container.find(".chosen-search-input"),this.is_multiple=this.container.hasClass("chosen-container-multi"),this.is_typing=!1,this.chosenXhr=null,this.events()},t.prototype.events=function(){var e=this;this.search_field.on("compositionstart",function(){e.is_typing=!0}),this.search_field.on("compositionend",function(){e.is_typing=!1,e.update_list()}),this.search_field.on("keyup",function(){e.update_list()}),this.search_field.on("focus",function(){e.search_field_focused()})},t.prototype.search_field_focused=function(){this.search_welcome_message(),0===this.options.min_length&&0===this.search_field.val().length&&this.update_list()},t.prototype.search_welcome_message=function(){var e=s.trim(this.search_field.val()),t=this.container.find(".chosen-results");0===t.children().length&&0===e.length&&t.html('<li class="no-results">'+this.options.typing_text.replace("%s",this.options.min_length-e.length)+"</li>")},t.prototype.update_list=function(){var t=this;if(this.search_welcome_message(),!this.is_typing){var e=s.trim(this.search_field.val()),n=e.length<this.options.min_length?this.options.typing_text.replace("%s",this.options.min_length-e.length):this.options.searching_text;this.container.find(".no-results").text(n),e!==this.search_field.data("prevVal")&&(this.search_field.data("prevVal",e),this.timer&&clearTimeout(this.timer),e.length<this.options.min_length||(this.timer=setTimeout(function(){t.chosenXhr&&t.chosenXhr.abort(),t.options.data.term=e,t.chosenXhr=window.wp.ajax.post("csf-chosen",t.options.data).done(function(e){t.show_results(e)}).fail(function(e){t.container.find(".no-results").text(e.error)})},this.options.type_delay)))}},t.prototype.show_results=function(e){var n=this;if(!this.is_typing&&null!==e){if(0===e.length)return this.element.data().chosen.no_results_clear(),void this.element.data().chosen.no_results(this.search_field.val());var i=[];this.element.find("option").each(function(){s(this).is(":selected")?i.push(s(this).val()+"-"+s(this).text()):s(this).attr("value").length&&s(this).remove()}),s.each(e,function(e,t){-1===s.inArray(t.value+"-"+t.text,i)&&s("<option />").attr("value",t.value).html(t.text).appendTo(n.element)});var t=this.search_field.val(),o=this.search_field.innerWidth();if(this.element.trigger("chosen:updated"),this.is_multiple){var r=this.element.parent().find(".csf-hide-select").val()||[];this.element.CSFChosenOrder(r,!0),this.search_field.css("width",o)}this.search_field.val(t),null!==this.chosenXhr.done&&this.chosenXhr.done(e)}},s.fn.CSFAjaxChosen=function(e){return this.each(function(){new t(this,e)})}}(jQuery),function(){var n,i,s=[].indexOf||function(e){for(var t=0,n=this.length;t<n;t++)if(t in this&&this[t]===e)return t;return-1},o={}.hasOwnProperty;i=function(){function e(){}return e.insertAt=function(e,t,n){return n.insertBefore(e,n.children[t].nextSibling)},e.getFlattenedOptionsAndGroups=function(e){var t,n,i,o,r,s,a,l,c;for(t=[],s=0,l=(i=Array.prototype.filter.call(e.childNodes,function(e){var t;return"OPTION"===(t=e.nodeName.toUpperCase())||"OPTGROUP"===t})).length;s<l;s++)if(n=i[s],t.push(n),"OPTGROUP"===n.nodeName.toUpperCase())for(a=0,c=(r=Array.prototype.filter.call(n.childNodes,function(e){return"OPTION"===e.nodeName.toUpperCase()})).length;a<c;a++)o=r[a],t.push(o);return t},e.isValidMultipleSelectElement=function(e){return null!=e&&"SELECT"===e.nodeName&&e.multiple},e.getChosenUIContainer=function(e){return""!==e.id?document.getElementById(e.id.replace(/-/g,"_")+"_chosen"):this.searchChosenUIContainer(e)},e.isChosenified=function(e){return null!=this.getChosenUIContainer(e)},e.forceSelection=function(e,t){var n,i,o,r;for(o=this.getFlattenedOptionsAndGroups(e),n=0;n<o.length;)r=(i=o[n]).getAttribute("value"),0<=s.call(t,r)?(i.selected=!0,i.setAttribute("selected","")):(i.selected=!1,i.removeAttribute("selected")),n++;return this.triggerEvent(e,"chosen:updated")},e.CSFChosenOrder=function(e,t,n){var i,o,r,s,a,l,c,u,h,d,f,p,_,m;if(null!=this.getDOMElement&&(e=this.getDOMElement(e)),this.isValidMultipleSelectElement(e)&&null!=(o=this.getChosenUIContainer(e))&&t instanceof Array){for(t=t.map(Function.prototype.call,String.prototype.trim),c=this.getFlattenedOptionsAndGroups(e),null!=n&&!0===n&&this.forceSelection(e,t),m=[],r=d=0,p=t.length;d<p;r=++d){for(a=t[r],u=null,s=f=0,_=c.length;f<_;s=++f)c[s].value===a&&(u=s);i=o.querySelectorAll(".search-choice"),h=this.relAttributeName,null!=(l=Array.prototype.filter.call(i,function(e){return null!=e.querySelector("a.search-choice-close["+h+'="'+u+'"]')})[0])&&(o.querySelector("ul.chosen-choices"),m.push(this.insertAt(l,r,o.querySelector("ul.chosen-choices"))))}return m}},e}(),(n=jQuery).fn.extend({CSFChosenOrder:function(e,t){return _CSFChosenOrder.CSFChosenOrder(this,e,t)}}),this._CSFChosenOrder=function(e){function t(){return t.__super__.constructor.apply(this,arguments)}return function(e,t){for(var n in t)o.call(t,n)&&(e[n]=t[n]);function i(){this.constructor=e}i.prototype=t.prototype,e.prototype=new i,e.__super__=t.prototype}(t,i),t.relAttributeName="data-option-array-index",t.isjQueryObject=function(e){return"undefined"!=typeof jQuery&&null!==jQuery&&e instanceof jQuery},t.getDOMElement=function(e){return this.isjQueryObject(e)?e.get(0):e},t.searchChosenUIContainer=function(e){return null!=n(e).data("chosen")?n(e).data("chosen").container[0]:n(e).next(".chosen-container.chosen-container-multi").get(0)},t.triggerEvent=function(e,t){return n(e).trigger(t)},t}()}.call(this),function(){var a,n,o,s,r={}.hasOwnProperty;(s=function(){function e(){this.options_index=0,this.parsed=[]}return e.prototype.add_node=function(e){return"OPTGROUP"===e.nodeName.toUpperCase()?this.add_group(e):this.add_option(e)},e.prototype.add_group=function(e){var t,n,i,o,r,s;for(t=this.parsed.length,this.parsed.push({array_index:t,group:!0,label:e.label,title:e.title?e.title:void 0,children:0,disabled:e.disabled,classes:e.className}),s=[],n=0,i=(r=e.childNodes).length;n<i;n++)o=r[n],s.push(this.add_option(o,t,e.disabled));return s},e.prototype.add_option=function(e,t,n){if("OPTION"===e.nodeName.toUpperCase())return""!==e.text?(null!=t&&(this.parsed[t].children+=1),this.parsed.push({array_index:this.parsed.length,options_index:this.options_index,value:e.value,text:e.text,html:e.innerHTML,title:e.title?e.title:void 0,selected:e.selected,disabled:!0===n?n:e.disabled,group_array_index:t,group_label:null!=t?this.parsed[t].label:null,classes:e.className,style:e.style.cssText})):this.parsed.push({array_index:this.parsed.length,options_index:this.options_index,empty:!0}),this.options_index+=1},e}()).select_to_array=function(e){var t,n,i,o,r;for(o=new s,n=0,i=(r=e.childNodes).length;n<i;n++)t=r[n],o.add_node(t);return o.parsed},n=function(){function o(e,t){var n,i;this.form_field=e,this.options=null!=t?t:{},this.label_click_handler=(n=this.label_click_handler,i=this,function(){return n.apply(i,arguments)}),o.browser_is_supported()&&(this.is_multiple=this.form_field.multiple,this.set_default_text(),this.set_default_values(),this.setup(),this.set_up_html(),this.register_observers(),this.on_ready())}return o.prototype.set_default_values=function(){var t,n;return this.click_test_action=(t=this,function(e){return t.test_active_click(e)}),this.activate_action=(n=this,function(e){return n.activate_field(e)}),this.active_field=!1,this.mouse_on_container=!1,this.results_showing=!1,this.result_highlighted=null,this.is_rtl=this.options.rtl||/\bchosen-rtl\b/.test(this.form_field.className),this.allow_single_deselect=null!=this.options.allow_single_deselect&&null!=this.form_field.options[0]&&""===this.form_field.options[0].text&&this.options.allow_single_deselect,this.disable_search_threshold=this.options.disable_search_threshold||0,this.disable_search=this.options.disable_search||!1,this.enable_split_word_search=null==this.options.enable_split_word_search||this.options.enable_split_word_search,this.group_search=null==this.options.group_search||this.options.group_search,this.search_contains=this.options.search_contains||!1,this.single_backstroke_delete=null==this.options.single_backstroke_delete||this.options.single_backstroke_delete,this.max_selected_options=this.options.max_selected_options||1/0,this.inherit_select_classes=this.options.inherit_select_classes||!1,this.display_selected_options=null==this.options.display_selected_options||this.options.display_selected_options,this.display_disabled_options=null==this.options.display_disabled_options||this.options.display_disabled_options,this.include_group_label_in_selected=this.options.include_group_label_in_selected||!1,this.max_shown_results=this.options.max_shown_results||Number.POSITIVE_INFINITY,this.case_sensitive_search=this.options.case_sensitive_search||!1,this.hide_results_on_select=null==this.options.hide_results_on_select||this.options.hide_results_on_select},o.prototype.set_default_text=function(){return this.form_field.getAttribute("data-placeholder")?this.default_text=this.form_field.getAttribute("data-placeholder"):this.is_multiple?this.default_text=this.options.placeholder_text_multiple||this.options.placeholder_text||o.default_multiple_text:this.default_text=this.options.placeholder_text_single||this.options.placeholder_text||o.default_single_text,this.default_text=this.escape_html(this.default_text),this.results_none_found=this.form_field.getAttribute("data-no_results_text")||this.options.no_results_text||o.default_no_result_text},o.prototype.choice_label=function(e){return this.include_group_label_in_selected&&null!=e.group_label?"<b class='group-name'>"+this.escape_html(e.group_label)+"</b>"+e.html:e.html},o.prototype.mouse_enter=function(){return this.mouse_on_container=!0},o.prototype.mouse_leave=function(){return this.mouse_on_container=!1},o.prototype.input_focus=function(e){if(this.is_multiple){if(!this.active_field)return setTimeout((t=this,function(){return t.container_mousedown()}),50)}else if(!this.active_field)return this.activate_field();var t},o.prototype.input_blur=function(e){if(!this.mouse_on_container)return this.active_field=!1,setTimeout((t=this,function(){return t.blur_test()}),100);var t},o.prototype.label_click_handler=function(e){return this.is_multiple?this.container_mousedown(e):this.activate_field()},o.prototype.results_option_build=function(e){var t,n,i,o,r,s,a;for(t="",o=a=0,r=(s=this.results_data).length;o<r&&((i="")!==(i=(n=s[o]).group?this.result_add_group(n):this.result_add_option(n))&&(a++,t+=i),(null!=e?e.first:void 0)&&(n.selected&&this.is_multiple?this.choice_build(n):n.selected&&!this.is_multiple&&this.single_set_selected_text(this.choice_label(n))),!(a>=this.max_shown_results));o++);return t},o.prototype.result_add_option=function(e){var t,n;return e.search_match&&this.include_option_in_results(e)?(t=[],e.disabled||e.selected&&this.is_multiple||t.push("active-result"),!e.disabled||e.selected&&this.is_multiple||t.push("disabled-result"),e.selected&&t.push("result-selected"),null!=e.group_array_index&&t.push("group-option"),""!==e.classes&&t.push(e.classes),(n=document.createElement("li")).className=t.join(" "),e.style&&(n.style.cssText=e.style),n.setAttribute("data-option-array-index",e.array_index),n.innerHTML=e.highlighted_html||e.html,e.title&&(n.title=e.title),this.outerHTML(n)):""},o.prototype.result_add_group=function(e){var t,n;return(e.search_match||e.group_match)&&0<e.active_options?((t=[]).push("group-result"),e.classes&&t.push(e.classes),(n=document.createElement("li")).className=t.join(" "),n.innerHTML=e.highlighted_html||this.escape_html(e.label),e.title&&(n.title=e.title),this.outerHTML(n)):""},o.prototype.results_update_field=function(){if(this.set_default_text(),this.is_multiple||this.results_reset_cleanup(),this.result_clear_highlight(),this.results_build(),this.results_showing)return this.winnow_results()},o.prototype.reset_single_select_options=function(){var e,t,n,i,o;for(o=[],e=0,t=(n=this.results_data).length;e<t;e++)(i=n[e]).selected?o.push(i.selected=!1):o.push(void 0);return o},o.prototype.results_toggle=function(){return this.results_showing?this.results_hide():this.results_show()},o.prototype.results_search=function(e){return this.results_showing?this.winnow_results():this.results_show()},o.prototype.winnow_results=function(e){var t,n,i,o,r,s,a,l,c,u,h,d,f,p,_;for(this.no_results_clear(),u=0,t=(a=this.get_search_text()).replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),c=this.get_search_regex(t),i=0,o=(l=this.results_data).length;i<o;i++)(r=l[i]).search_match=!1,d=h=null,r.highlighted_html="",this.include_option_in_results(r)&&(r.group&&(r.group_match=!1,r.active_options=0),null!=r.group_array_index&&this.results_data[r.group_array_index]&&(0===(h=this.results_data[r.group_array_index]).active_options&&h.search_match&&(u+=1),h.active_options+=1),_=r.group?r.label:r.text,r.group&&!this.group_search||(d=this.search_string_match(_,c),r.search_match=null!=d,r.search_match&&!r.group&&(u+=1),r.search_match?(a.length&&(f=d.index,s=_.slice(0,f),n=_.slice(f,f+a.length),p=_.slice(f+a.length),r.highlighted_html=this.escape_html(s)+"<em>"+this.escape_html(n)+"</em>"+this.escape_html(p)),null!=h&&(h.group_match=!0)):null!=r.group_array_index&&this.results_data[r.group_array_index].search_match&&(r.search_match=!0)));return this.result_clear_highlight(),u<1&&a.length?(this.update_results_content(""),this.no_results(a)):(this.update_results_content(this.results_option_build()),(null!=e?e.skip_highlight:void 0)?void 0:this.winnow_results_set_highlight())},o.prototype.get_search_regex=function(e){var t,n;return n=this.search_contains?e:"(^|\\s|\\b)"+e+"[^\\s]*",this.enable_split_word_search||this.search_contains||(n="^"+n),t=this.case_sensitive_search?"":"i",new RegExp(n,t)},o.prototype.search_string_match=function(e,t){var n;return n=t.exec(e),!this.search_contains&&(null!=n?n[1]:void 0)&&(n.index+=1),n},o.prototype.choices_count=function(){var e,t,n;if(null!=this.selected_option_count)return this.selected_option_count;for(e=this.selected_option_count=0,t=(n=this.form_field.options).length;e<t;e++)n[e].selected&&(this.selected_option_count+=1);return this.selected_option_count},o.prototype.choices_click=function(e){if(e.preventDefault(),this.activate_field(),!this.results_showing&&!this.is_disabled)return this.results_show()},o.prototype.keydown_checker=function(e){var t,n;switch(n=null!=(t=e.which)?t:e.keyCode,this.search_field_scale(),8!==n&&this.pending_backstroke&&this.clear_backstroke(),n){case 8:this.backstroke_length=this.get_search_field_value().length;break;case 9:this.results_showing&&!this.is_multiple&&this.result_select(e),this.mouse_on_container=!1;break;case 13:case 27:this.results_showing&&e.preventDefault();break;case 32:this.disable_search&&e.preventDefault();break;case 38:e.preventDefault(),this.keyup_arrow();break;case 40:e.preventDefault(),this.keydown_arrow()}},o.prototype.keyup_checker=function(e){var t,n;switch(n=null!=(t=e.which)?t:e.keyCode,this.search_field_scale(),n){case 8:this.is_multiple&&this.backstroke_length<1&&0<this.choices_count()?this.keydown_backstroke():this.pending_backstroke||(this.result_clear_highlight(),this.results_search());break;case 13:e.preventDefault(),this.results_showing&&this.result_select(e);break;case 27:this.results_showing&&this.results_hide();break;case 9:case 16:case 17:case 18:case 38:case 40:case 91:break;default:this.results_search()}},o.prototype.clipboard_event_checker=function(e){var t;if(!this.is_disabled)return setTimeout((t=this,function(){return t.results_search()}),50)},o.prototype.container_width=function(){return null!=this.options.width?this.options.width:this.form_field.offsetWidth+"px"},o.prototype.include_option_in_results=function(e){return!(this.is_multiple&&!this.display_selected_options&&e.selected)&&(!(!this.display_disabled_options&&e.disabled)&&!e.empty)},o.prototype.search_results_touchstart=function(e){return this.touch_started=!0,this.search_results_mouseover(e)},o.prototype.search_results_touchmove=function(e){return this.touch_started=!1,this.search_results_mouseout(e)},o.prototype.search_results_touchend=function(e){if(this.touch_started)return this.search_results_mouseup(e)},o.prototype.outerHTML=function(e){var t;return e.outerHTML?e.outerHTML:((t=document.createElement("div")).appendChild(e),t.innerHTML)},o.prototype.get_single_html=function(){return'<a class="chosen-single chosen-default">\n <span>'+this.default_text+'</span>\n <div><b></b></div>\n</a>\n<div class="chosen-drop">\n <div class="chosen-search">\n <input class="chosen-search-input" type="text" autocomplete="off" />\n </div>\n <ul class="chosen-results"></ul>\n</div>'},o.prototype.get_multi_html=function(){return'<ul class="chosen-choices">\n <li class="search-field">\n <input class="chosen-search-input" type="text" autocomplete="off" value="'+this.default_text+'" />\n </li>\n</ul>\n<div class="chosen-drop">\n <ul class="chosen-results"></ul>\n</div>'},o.prototype.get_no_results_html=function(e){return'<li class="no-results">\n '+this.results_none_found+" <span>"+this.escape_html(e)+"</span>\n</li>"},o.browser_is_supported=function(){return"Microsoft Internet Explorer"===window.navigator.appName?8<=document.documentMode:!(/iP(od|hone)/i.test(window.navigator.userAgent)||/IEMobile/i.test(window.navigator.userAgent)||/Windows Phone/i.test(window.navigator.userAgent)||/BlackBerry/i.test(window.navigator.userAgent)||/BB10/i.test(window.navigator.userAgent)||/Android.*Mobile/i.test(window.navigator.userAgent))},o.default_multiple_text="Select Some Options",o.default_single_text="Select an Option",o.default_no_result_text="No results match",o}(),(a=jQuery).fn.extend({chosen:function(i){return n.browser_is_supported()?this.each(function(e){var t,n;n=(t=a(this)).data("chosen"),"destroy"!==i?n instanceof o||t.data("chosen",new o(this,i)):n instanceof o&&n.destroy()}):this}}),o=function(e){function t(){return t.__super__.constructor.apply(this,arguments)}return function(e,t){for(var n in t)r.call(t,n)&&(e[n]=t[n]);function i(){this.constructor=e}i.prototype=t.prototype,e.prototype=new i,e.__super__=t.prototype}(t,n),t.prototype.setup=function(){return this.form_field_jq=a(this.form_field),this.current_selectedIndex=this.form_field.selectedIndex},t.prototype.set_up_html=function(){var e,t;return(e=["chosen-container"]).push("chosen-container-"+(this.is_multiple?"multi":"single")),this.inherit_select_classes&&this.form_field.className&&e.push(this.form_field.className),this.is_rtl&&e.push("chosen-rtl"),t={class:e.join(" "),title:this.form_field.title},this.form_field.id.length&&(t.id=this.form_field.id.replace(/[^\w]/g,"_")+"_chosen"),this.container=a("<div />",t),this.container.width(this.container_width()),this.is_multiple?this.container.html(this.get_multi_html()):this.container.html(this.get_single_html()),this.form_field_jq.hide().after(this.container),this.dropdown=this.container.find("div.chosen-drop").first(),this.search_field=this.container.find("input").first(),this.search_results=this.container.find("ul.chosen-results").first(),this.search_field_scale(),this.search_no_results=this.container.find("li.no-results").first(),this.is_multiple?(this.search_choices=this.container.find("ul.chosen-choices").first(),this.search_container=this.container.find("li.search-field").first()):(this.search_container=this.container.find("div.chosen-search").first(),this.selected_item=this.container.find(".chosen-single").first()),this.results_build(),this.set_tab_index(),this.set_label_behavior()},t.prototype.on_ready=function(){return this.form_field_jq.trigger("chosen:ready",{chosen:this})},t.prototype.register_observers=function(){var t,n,i,o,r,s,a,l,c,u,h,d,f,p,_,m,g,v,y,b,w,D,C,x;return this.container.on("touchstart.chosen",(t=this,function(e){t.container_mousedown(e)})),this.container.on("touchend.chosen",(n=this,function(e){n.container_mouseup(e)})),this.container.on("mousedown.chosen",(i=this,function(e){i.container_mousedown(e)})),this.container.on("mouseup.chosen",(o=this,function(e){o.container_mouseup(e)})),this.container.on("mouseenter.chosen",(r=this,function(e){r.mouse_enter(e)})),this.container.on("mouseleave.chosen",(s=this,function(e){s.mouse_leave(e)})),this.search_results.on("mouseup.chosen",(a=this,function(e){a.search_results_mouseup(e)})),this.search_results.on("mouseover.chosen",(l=this,function(e){l.search_results_mouseover(e)})),this.search_results.on("mouseout.chosen",(c=this,function(e){c.search_results_mouseout(e)})),this.search_results.on("mousewheel.chosen DOMMouseScroll.chosen",(u=this,function(e){u.search_results_mousewheel(e)})),this.search_results.on("touchstart.chosen",(h=this,function(e){h.search_results_touchstart(e)})),this.search_results.on("touchmove.chosen",(d=this,function(e){d.search_results_touchmove(e)})),this.search_results.on("touchend.chosen",(f=this,function(e){f.search_results_touchend(e)})),this.form_field_jq.on("chosen:updated.chosen",(p=this,function(e){p.results_update_field(e)})),this.form_field_jq.on("chosen:activate.chosen",(_=this,function(e){_.activate_field(e)})),this.form_field_jq.on("chosen:open.chosen",(m=this,function(e){m.container_mousedown(e)})),this.form_field_jq.on("chosen:close.chosen",(g=this,function(e){g.close_field(e)})),this.search_field.on("blur.chosen",(v=this,function(e){v.input_blur(e)})),this.search_field.on("keyup.chosen",(y=this,function(e){y.keyup_checker(e)})),this.search_field.on("keydown.chosen",(b=this,function(e){b.keydown_checker(e)})),this.search_field.on("focus.chosen",(w=this,function(e){w.input_focus(e)})),this.search_field.on("cut.chosen",(D=this,function(e){D.clipboard_event_checker(e)})),this.search_field.on("paste.chosen",(C=this,function(e){C.clipboard_event_checker(e)})),this.is_multiple?this.search_choices.on("click.chosen",(x=this,function(e){x.choices_click(e)})):this.container.on("click.chosen",function(e){e.preventDefault()})},t.prototype.destroy=function(){return a(this.container[0].ownerDocument).off("click.chosen",this.click_test_action),0<this.form_field_label.length&&this.form_field_label.off("click.chosen"),this.search_field[0].tabIndex&&(this.form_field_jq[0].tabIndex=this.search_field[0].tabIndex),this.container.remove(),this.form_field_jq.removeData("chosen"),this.form_field_jq.show()},t.prototype.search_field_disabled=function(){return this.is_disabled=this.form_field.disabled||this.form_field_jq.parents("fieldset").is(":disabled"),this.container.toggleClass("chosen-disabled",this.is_disabled),this.search_field[0].disabled=this.is_disabled,this.is_multiple||this.selected_item.off("focus.chosen",this.activate_field),this.is_disabled?this.close_field():this.is_multiple?void 0:this.selected_item.on("focus.chosen",this.activate_field)},t.prototype.container_mousedown=function(e){var t;if(!this.is_disabled)return!e||"mousedown"!==(t=e.type)&&"touchstart"!==t||this.results_showing||e.preventDefault(),null!=e&&a(e.target).hasClass("search-choice-close")?void 0:(this.active_field?this.is_multiple||!e||a(e.target)[0]!==this.selected_item[0]&&!a(e.target).parents("a.chosen-single").length||(e.preventDefault(),this.results_toggle()):(this.is_multiple&&this.search_field.val(""),a(this.container[0].ownerDocument).on("click.chosen",this.click_test_action),this.results_show()),this.activate_field())},t.prototype.container_mouseup=function(e){if("ABBR"===e.target.nodeName&&!this.is_disabled)return this.results_reset(e)},t.prototype.search_results_mousewheel=function(e){var t;if(e.originalEvent&&(t=e.originalEvent.deltaY||-e.originalEvent.wheelDelta||e.originalEvent.detail),null!=t)return e.preventDefault(),"DOMMouseScroll"===e.type&&(t*=40),this.search_results.scrollTop(t+this.search_results.scrollTop())},t.prototype.blur_test=function(e){if(!this.active_field&&this.container.hasClass("chosen-container-active"))return this.close_field()},t.prototype.close_field=function(){return a(this.container[0].ownerDocument).off("click.chosen",this.click_test_action),this.active_field=!1,this.results_hide(),this.container.removeClass("chosen-container-active"),this.clear_backstroke(),this.show_search_field_default(),this.search_field_scale(),this.search_field.blur()},t.prototype.activate_field=function(){if(!this.is_disabled)return this.container.addClass("chosen-container-active"),this.active_field=!0,this.search_field.val(this.search_field.val()),this.search_field.focus()},t.prototype.test_active_click=function(e){var t;return(t=a(e.target).closest(".chosen-container")).length&&this.container[0]===t[0]?this.active_field=!0:this.close_field()},t.prototype.results_build=function(){return this.parsing=!0,this.selected_option_count=null,this.results_data=s.select_to_array(this.form_field),this.is_multiple?this.search_choices.find("li.search-choice").remove():(this.single_set_selected_text(),this.disable_search||this.form_field.options.length<=this.disable_search_threshold?(this.search_field[0].readOnly=!0,this.container.addClass("chosen-container-single-nosearch")):(this.search_field[0].readOnly=!1,this.container.removeClass("chosen-container-single-nosearch"))),this.update_results_content(this.results_option_build({first:!0})),this.search_field_disabled(),this.show_search_field_default(),this.search_field_scale(),this.parsing=!1},t.prototype.result_do_highlight=function(e){var t,n,i,o;if(e.length){if(this.result_clear_highlight(),this.result_highlight=e,this.result_highlight.addClass("highlighted"),(i=parseInt(this.search_results.css("maxHeight"),10))+(o=this.search_results.scrollTop())<=(t=(n=this.result_highlight.position().top+this.search_results.scrollTop())+this.result_highlight.outerHeight()))return this.search_results.scrollTop(0<t-i?t-i:0);if(n<o)return this.search_results.scrollTop(n)}},t.prototype.result_clear_highlight=function(){return this.result_highlight&&this.result_highlight.removeClass("highlighted"),this.result_highlight=null},t.prototype.results_show=function(){return this.is_multiple&&this.max_selected_options<=this.choices_count()?(this.form_field_jq.trigger("chosen:maxselected",{chosen:this}),!1):(this.container.addClass("chosen-with-drop"),this.results_showing=!0,this.search_field.focus(),this.search_field.val(this.get_search_field_value()),this.winnow_results(),this.form_field_jq.trigger("chosen:showing_dropdown",{chosen:this}))},t.prototype.update_results_content=function(e){return this.search_results.html(e)},t.prototype.results_hide=function(){return this.results_showing&&(this.result_clear_highlight(),this.container.removeClass("chosen-with-drop"),this.form_field_jq.trigger("chosen:hiding_dropdown",{chosen:this})),this.results_showing=!1},t.prototype.set_tab_index=function(e){var t;if(this.form_field.tabIndex)return t=this.form_field.tabIndex,this.form_field.tabIndex=-1,this.search_field[0].tabIndex=t},t.prototype.set_label_behavior=function(){if(this.form_field_label=this.form_field_jq.parents("label"),!this.form_field_label.length&&this.form_field.id.length&&(this.form_field_label=a("label[for='"+this.form_field.id+"']")),0<this.form_field_label.length)return this.form_field_label.on("click.chosen",this.label_click_handler)},t.prototype.show_search_field_default=function(){return this.is_multiple&&this.choices_count()<1&&!this.active_field?(this.search_field.val(this.default_text),this.search_field.addClass("default")):(this.search_field.val(""),this.search_field.removeClass("default"))},t.prototype.search_results_mouseup=function(e){var t;if((t=a(e.target).hasClass("active-result")?a(e.target):a(e.target).parents(".active-result").first()).length)return this.result_highlight=t,this.result_select(e),this.search_field.focus()},t.prototype.search_results_mouseover=function(e){var t;if(t=a(e.target).hasClass("active-result")?a(e.target):a(e.target).parents(".active-result").first())return this.result_do_highlight(t)},t.prototype.search_results_mouseout=function(e){if(a(e.target).hasClass("active-result")||a(e.target).parents(".active-result").first())return this.result_clear_highlight()},t.prototype.choice_build=function(e){var t,n,i;return t=a("<li />",{class:"search-choice"}).html("<span>"+this.choice_label(e)+"</span>"),e.disabled?t.addClass("search-choice-disabled"):((n=a("<a />",{class:"search-choice-close","data-option-array-index":e.array_index})).on("click.chosen",(i=this,function(e){return i.choice_destroy_link_click(e)})),t.append(n)),this.search_container.before(t)},t.prototype.choice_destroy_link_click=function(e){if(e.preventDefault(),e.stopPropagation(),!this.is_disabled)return this.choice_destroy(a(e.target))},t.prototype.choice_destroy=function(e){if(this.result_deselect(e[0].getAttribute("data-option-array-index")))return this.active_field?this.search_field.focus():this.show_search_field_default(),this.is_multiple&&0<this.choices_count()&&this.get_search_field_value().length<1&&this.results_hide(),e.parents("li").first().remove(),this.search_field_scale()},t.prototype.results_reset=function(){if(this.reset_single_select_options(),this.form_field.options[0].selected=!0,this.single_set_selected_text(),this.show_search_field_default(),this.results_reset_cleanup(),this.trigger_form_field_change(),this.active_field)return this.results_hide()},t.prototype.results_reset_cleanup=function(){return this.current_selectedIndex=this.form_field.selectedIndex,this.selected_item.find("abbr").remove()},t.prototype.result_select=function(e){var t,n;if(this.result_highlight)return t=this.result_highlight,this.result_clear_highlight(),this.is_multiple&&this.max_selected_options<=this.choices_count()?(this.form_field_jq.trigger("chosen:maxselected",{chosen:this}),!1):(this.is_multiple?t.removeClass("active-result"):this.reset_single_select_options(),t.addClass("result-selected"),(n=this.results_data[t[0].getAttribute("data-option-array-index")]).selected=!0,this.form_field.options[n.options_index].selected=!0,this.selected_option_count=null,this.is_multiple?this.choice_build(n):this.single_set_selected_text(this.choice_label(n)),this.is_multiple&&(!this.hide_results_on_select||e.metaKey||e.ctrlKey)?e.metaKey||e.ctrlKey?this.winnow_results({skip_highlight:!0}):(this.search_field.val(""),this.winnow_results()):(this.results_hide(),this.show_search_field_default()),(this.is_multiple||this.form_field.selectedIndex!==this.current_selectedIndex)&&this.trigger_form_field_change({selected:this.form_field.options[n.options_index].value}),this.current_selectedIndex=this.form_field.selectedIndex,e.preventDefault(),this.search_field_scale())},t.prototype.single_set_selected_text=function(e){return null==e&&(e=this.default_text),e===this.default_text?this.selected_item.addClass("chosen-default"):(this.single_deselect_control_build(),this.selected_item.removeClass("chosen-default")),this.selected_item.find("span").html(e)},t.prototype.result_deselect=function(e){var t;return t=this.results_data[e],!this.form_field.options[t.options_index].disabled&&(t.selected=!1,this.form_field.options[t.options_index].selected=!1,this.selected_option_count=null,this.result_clear_highlight(),this.results_showing&&this.winnow_results(),this.trigger_form_field_change({deselected:this.form_field.options[t.options_index].value}),this.search_field_scale(),!0)},t.prototype.single_deselect_control_build=function(){if(this.allow_single_deselect)return this.selected_item.find("abbr").length||this.selected_item.find("span").first().after('<abbr class="search-choice-close"></abbr>'),this.selected_item.addClass("chosen-single-with-deselect")},t.prototype.get_search_field_value=function(){return this.search_field.val()},t.prototype.get_search_text=function(){return a.trim(this.get_search_field_value())},t.prototype.escape_html=function(e){return a("<div/>").text(e).html()},t.prototype.winnow_results_set_highlight=function(){var e,t;if(null!=(e=(t=this.is_multiple?[]:this.search_results.find(".result-selected.active-result")).length?t.first():this.search_results.find(".active-result").first()))return this.result_do_highlight(e)},t.prototype.no_results=function(e){var t;return t=this.get_no_results_html(e),this.search_results.append(t),this.form_field_jq.trigger("chosen:no_results",{chosen:this})},t.prototype.no_results_clear=function(){return this.search_results.find(".no-results").remove()},t.prototype.keydown_arrow=function(){var e;return this.results_showing&&this.result_highlight?(e=this.result_highlight.nextAll("li.active-result").first())?this.result_do_highlight(e):void 0:this.results_show()},t.prototype.keyup_arrow=function(){var e;return this.results_showing||this.is_multiple?this.result_highlight?(e=this.result_highlight.prevAll("li.active-result")).length?this.result_do_highlight(e.first()):(0<this.choices_count()&&this.results_hide(),this.result_clear_highlight()):void 0:this.results_show()},t.prototype.keydown_backstroke=function(){var e;return this.pending_backstroke?(this.choice_destroy(this.pending_backstroke.find("a").first()),this.clear_backstroke()):(e=this.search_container.siblings("li.search-choice").last()).length&&!e.hasClass("search-choice-disabled")?(this.pending_backstroke=e,this.single_backstroke_delete?this.keydown_backstroke():this.pending_backstroke.addClass("search-choice-focus")):void 0},t.prototype.clear_backstroke=function(){return this.pending_backstroke&&this.pending_backstroke.removeClass("search-choice-focus"),this.pending_backstroke=null},t.prototype.search_field_scale=function(){var e,t,n,i,o,r,s;if(this.is_multiple){for(o={position:"absolute",left:"-1000px",top:"-1000px",display:"none",whiteSpace:"pre"},t=0,n=(r=["fontSize","fontStyle","fontWeight","fontFamily","lineHeight","textTransform","letterSpacing"]).length;t<n;t++)o[i=r[t]]=this.search_field.css(i);return(e=a("<div />").css(o)).text(this.get_search_field_value()),a("body").append(e),s=e.width()+25,e.remove(),this.container.is(":visible")&&(s=Math.min(this.container.outerWidth()-10,s)),this.search_field.width(s)}},t.prototype.trigger_form_field_change=function(e){return this.form_field_jq.trigger("input",e),this.form_field_jq.trigger("change",e)},t}()}.call(this),function(s){"use strict";function o(e,t,n){this.init(e,t,n)}function e(){this.rules=[]}s.extend(o.prototype,{init:function(e,t,n){this.controller=e,this.condition=t,this.value=n,this.rules=[],this.controls=[]},evalCondition:function(e,t,n,i,o){if("=="==n)return this.checkBoolean(i)==this.checkBoolean(o);if("!="==n)return this.checkBoolean(i)!=this.checkBoolean(o);if(">="==n)return Number(o)>=Number(i);if("<="==n)return Number(o)<=Number(i);if(">"==n)return Number(o)>Number(i);if("<"==n)return Number(o)<Number(i);if("()"==n)return window[i](e,t,o);if("any"==n){if(s.isArray(o)){for(var r=o.length-1;0<=r;r--)if(-1!==s.inArray(o[r],i.split(",")))return!0}else if(-1!==s.inArray(o,i.split(",")))return!0}else if("not-any"==n)if(s.isArray(o)){for(r=o.length-1;0<=r;r--)if(-1==s.inArray(o[r],i.split(",")))return!0}else if(-1==s.inArray(o,i.split(",")))return!0;return!1},checkBoolean:function(e){switch(e){case!0:case"true":case 1:case"1":e=!0;break;case null:case!1:case"false":case 0:case"0":e=!1}return e},checkCondition:function(e){if(!this.condition)return!0;var t=e.find(this.controller),n=this.getControlValue(e,t);return void 0!==n&&(n=this.normalizeValue(t,this.value,n),this.evalCondition(e,t,this.condition,this.value,n))},normalizeValue:function(e,t,n){return"number"==typeof t?parseFloat(n):n},getControlValue:function(e,t){return 1<t.length&&("radio"==t.attr("type")||"checkbox"==t.attr("type"))?t.filter(":checked").map(function(){return this.value}).get():"checkbox"==t.attr("type")||"radio"==t.attr("type")?t.is(":checked"):t.val()},createRule:function(e,t,n){var i=new o(e,t,n);return this.rules.push(i),i},include:function(e){this.controls.push(e)},applyRule:function(n,e){var t;t=void 0===e?this.checkCondition(n):e;var i=s.map(this.controls,function(e,t){return n.find(e)});t?(s(i).each(function(){s(this).removeClass("csf-depend-on")}),s(this.rules).each(function(){this.applyRule(n)})):(s(i).each(function(){s(this).addClass("csf-depend-on")}),s(this.rules).each(function(){this.applyRule(n,!1)}))}}),s.extend(e.prototype,{createRule:function(e,t,n){var i=new o(e,t,n);return this.rules.push(i),i},applyRules:function(e){s(this.rules).each(function(){this.applyRule(e)})}}),s.csf_deps={createRuleset:function(){return new e},enable:function(n,i,o){return n.on("change keyup",function(e){var t=e.target.getAttribute("data-depend-id")||e.target.getAttribute("data-sub-depend-id");-1!==o.indexOf(t)&&i.applyRules(n)}),i.applyRules(n),!0}}}(jQuery),function(e,n){if("function"==typeof define&&define.amd)define(["exports","jquery"],function(e,t){return n(e,t)});else if("undefined"!=typeof exports){var t=require("jquery");n(exports,t)}else n(e,e.jQuery||e.Zepto||e.ender||e.$)}(this,function(e,t){var a={validate:/^(?!(_nonce|_pseudo))[a-zA-Z0-9_-]*(?:\[(?:\d*|(?!(_nonce|_pseudo))[a-zA-Z0-9_-]+)\])*$/i,key:/[a-zA-Z0-9_-]+|(?=\[\])/g,named:/^[a-zA-Z0-9_-]+$/,push:/^$/,fixed:/^\d+$/};function n(i,e){var n={},r={};function s(e,t,n){return e[t]=n,e}function t(){return n}this.addPair=function(e){if(!a.validate.test(e.name))return this;var t=function(e,t){for(var n,i=e.match(a.key);void 0!==(n=i.pop());)a.push.test(n)?t=s([],(o=e.replace(/\[\]$/,""),void 0===r[o]&&(r[o]=0),r[o]++),t):a.fixed.test(n)?t=s([],n,t):a.named.test(n)&&(t=s({},n,t));var o;return t}(e.name,e.value);return n=i.extend(!0,n,t),this},this.addPairs=function(e){if(!i.isArray(e))throw new Error("formSerializer.addPairs expects an Array");for(var t=0,n=e.length;t<n;t++)this.addPair(e[t]);return this},this.serialize=t,this.serializeJSON=function(){return JSON.stringify(t())}}return n.patterns=a,n.serializeObject=function(){return new n(t,this).addPairs(this.serializeArray()).serialize()},n.serializeJSON=function(){return new n(t,this).addPairs(this.serializeArray()).serializeJSON()},void 0!==t.fn&&(t.fn.serializeObjectCSF=n.serializeObject,t.fn.serializeJSONCSF=n.serializeJSON),e.FormSerializer=n});
|
vendor/codestar-framework/assets/scss/partials/_base.scss
CHANGED
@@ -1,470 +1,470 @@
|
|
1 |
-
/**
|
2 |
-
* 01. Base
|
3 |
-
*/
|
4 |
-
.csf{
|
5 |
-
position: relative;
|
6 |
-
|
7 |
-
label{
|
8 |
-
padding: 0;
|
9 |
-
margin: 0;
|
10 |
-
display: inline-block;
|
11 |
-
}
|
12 |
-
}
|
13 |
-
|
14 |
-
.csf-ab-icon{
|
15 |
-
top: 2px;
|
16 |
-
}
|
17 |
-
|
18 |
-
#screen-meta-links + .csf-options{
|
19 |
-
margin-top: 40px;
|
20 |
-
}
|
21 |
-
|
22 |
-
.csf-options{
|
23 |
-
margin-top: 20px;
|
24 |
-
margin-right: 20px;
|
25 |
-
}
|
26 |
-
|
27 |
-
/**
|
28 |
-
* 01. 01. Header
|
29 |
-
*/
|
30 |
-
.csf-header{
|
31 |
-
position: relative;
|
32 |
-
}
|
33 |
-
|
34 |
-
.csf-header-inner{
|
35 |
-
padding: 25px;
|
36 |
-
transition: box-shadow .3s ease;
|
37 |
-
|
38 |
-
h1{
|
39 |
-
float: left;
|
40 |
-
font-size: 1.5em;
|
41 |
-
line-height: 26px;
|
42 |
-
font-weight: 400;
|
43 |
-
margin: 0;
|
44 |
-
|
45 |
-
small{
|
46 |
-
font-size: 11px;
|
47 |
-
font-weight: 500;
|
48 |
-
}
|
49 |
-
}
|
50 |
-
}
|
51 |
-
|
52 |
-
/**
|
53 |
-
* 01. 02. Sticky
|
54 |
-
*/
|
55 |
-
.csf-sticky{
|
56 |
-
|
57 |
-
.csf-header-inner{
|
58 |
-
position: fixed;
|
59 |
-
z-index: 99;
|
60 |
-
top: 32px;
|
61 |
-
box-shadow: 0 5px 10px rgba(0,0,0,0.1);
|
62 |
-
}
|
63 |
-
}
|
64 |
-
|
65 |
-
/**
|
66 |
-
* 01. 03. Header Buttons
|
67 |
-
*/
|
68 |
-
.csf-buttons{
|
69 |
-
float: right;
|
70 |
-
|
71 |
-
.button{
|
72 |
-
margin: 0 2px;
|
73 |
-
line-height: 26px;
|
74 |
-
|
75 |
-
&:focus{
|
76 |
-
outline: none !important;
|
77 |
-
box-shadow: none !important;
|
78 |
-
}
|
79 |
-
}
|
80 |
-
|
81 |
-
.csf-save{
|
82 |
-
min-width: 72px;
|
83 |
-
}
|
84 |
-
}
|
85 |
-
|
86 |
-
.csf-header-left{
|
87 |
-
float: left;
|
88 |
-
}
|
89 |
-
|
90 |
-
.csf-header-right{
|
91 |
-
float: right;
|
92 |
-
}
|
93 |
-
|
94 |
-
/**
|
95 |
-
* 01. 04. Navigation
|
96 |
-
*/
|
97 |
-
.csf-nav{
|
98 |
-
display: block;
|
99 |
-
position: relative;
|
100 |
-
z-index: 10;
|
101 |
-
float: left;
|
102 |
-
|
103 |
-
ul{
|
104 |
-
clear: left;
|
105 |
-
margin: 0;
|
106 |
-
list-style-type: none;
|
107 |
-
|
108 |
-
li{
|
109 |
-
margin-bottom: 0;
|
110 |
-
|
111 |
-
a{
|
112 |
-
font-size: 13px;
|
113 |
-
position: relative;
|
114 |
-
display: block;
|
115 |
-
padding: 14px 12px;
|
116 |
-
text-decoration: none;
|
117 |
-
transition-property: color, background;
|
118 |
-
transition-duration: 0.2s;
|
119 |
-
transition-timing-function: ease;
|
120 |
-
|
121 |
-
&:focus{
|
122 |
-
outline: none;
|
123 |
-
box-shadow: none;
|
124 |
-
}
|
125 |
-
}
|
126 |
-
|
127 |
-
.csf-arrow:after{
|
128 |
-
content: "\f054";
|
129 |
-
display: inline-block;
|
130 |
-
font-family: "Font Awesome 5 Pro", "Font Awesome 5 Free", "FontAwesome";
|
131 |
-
font-weight: 900;
|
132 |
-
font-size: 9px;
|
133 |
-
line-height: 1;
|
134 |
-
position: absolute;
|
135 |
-
right: 10px;
|
136 |
-
top: 50%;
|
137 |
-
margin-top: -4px;
|
138 |
-
}
|
139 |
-
|
140 |
-
&.csf-tab-expanded{
|
141 |
-
|
142 |
-
.csf-arrow:after{
|
143 |
-
transform: rotate(90deg);
|
144 |
-
}
|
145 |
-
|
146 |
-
ul{
|
147 |
-
display: block;
|
148 |
-
}
|
149 |
-
}
|
150 |
-
}
|
151 |
-
|
152 |
-
ul{
|
153 |
-
display: none;
|
154 |
-
position: relative;
|
155 |
-
|
156 |
-
li{
|
157 |
-
|
158 |
-
a{
|
159 |
-
font-size: 12px;
|
160 |
-
padding: 12px 14px 12px 24px;
|
161 |
-
}
|
162 |
-
}
|
163 |
-
}
|
164 |
-
}
|
165 |
-
|
166 |
-
.csf-tab-icon{
|
167 |
-
width: 20px;
|
168 |
-
margin-right: 5px;
|
169 |
-
font-size: 13px;
|
170 |
-
text-align: center;
|
171 |
-
}
|
172 |
-
|
173 |
-
.csf-label-error{
|
174 |
-
margin-left: 4px;
|
175 |
-
vertical-align: top;
|
176 |
-
}
|
177 |
-
}
|
178 |
-
|
179 |
-
.csf-nav-normal{
|
180 |
-
width: 225px;
|
181 |
-
|
182 |
-
+ .csf-content{
|
183 |
-
margin-left: 225px;
|
184 |
-
}
|
185 |
-
}
|
186 |
-
|
187 |
-
.csf-nav-inline{
|
188 |
-
width: 100%;
|
189 |
-
|
190 |
-
ul{
|
191 |
-
|
192 |
-
li{
|
193 |
-
display: inline-block;
|
194 |
-
vertical-align: top;
|
195 |
-
}
|
196 |
-
}
|
197 |
-
}
|
198 |
-
|
199 |
-
.csf-nav-background{
|
200 |
-
position: absolute;
|
201 |
-
top: 0;
|
202 |
-
left: 0;
|
203 |
-
bottom: 0;
|
204 |
-
z-index: 9;
|
205 |
-
width: 225px;
|
206 |
-
}
|
207 |
-
|
208 |
-
/**
|
209 |
-
* 01. 05. Wrapper
|
210 |
-
*/
|
211 |
-
.csf-wrapper{
|
212 |
-
position: relative;
|
213 |
-
}
|
214 |
-
|
215 |
-
/**
|
216 |
-
* 01. 06. Content
|
217 |
-
*/
|
218 |
-
.csf-content{
|
219 |
-
position: relative;
|
220 |
-
background-color: #fff;
|
221 |
-
}
|
222 |
-
|
223 |
-
/**
|
224 |
-
* 01. 07. Section
|
225 |
-
*/
|
226 |
-
.csf-sections{
|
227 |
-
float: left;
|
228 |
-
width: 100%;
|
229 |
-
}
|
230 |
-
|
231 |
-
.csf-section-title{
|
232 |
-
display: none;
|
233 |
-
padding: 20px 30px;
|
234 |
-
background-color: #f5f5f5;
|
235 |
-
border-top: 1px solid #eee;
|
236 |
-
border-bottom: 1px solid #eee;
|
237 |
-
|
238 |
-
h3{
|
239 |
-
margin: 0;
|
240 |
-
padding: 0 ;
|
241 |
-
font-size: 13px;
|
242 |
-
font-weight: bold;
|
243 |
-
text-transform: uppercase;
|
244 |
-
}
|
245 |
-
|
246 |
-
.csf-section-icon{
|
247 |
-
margin-right: 5px;
|
248 |
-
}
|
249 |
-
}
|
250 |
-
|
251 |
-
/**
|
252 |
-
* 01. 08. Footer
|
253 |
-
*/
|
254 |
-
.csf-footer{
|
255 |
-
padding: 20px;
|
256 |
-
font-size: 11px;
|
257 |
-
}
|
258 |
-
|
259 |
-
/**
|
260 |
-
* 01. 09. Copyright
|
261 |
-
*/
|
262 |
-
.csf-copyright{
|
263 |
-
float: left;
|
264 |
-
margin-top: 5px;
|
265 |
-
}
|
266 |
-
|
267 |
-
/**
|
268 |
-
* 01. 10. Show All Settings
|
269 |
-
*/
|
270 |
-
.csf-search-all,
|
271 |
-
.csf-show-all{
|
272 |
-
.csf-nav-background,
|
273 |
-
.csf-nav{
|
274 |
-
display: none;
|
275 |
-
}
|
276 |
-
|
277 |
-
.csf-content{
|
278 |
-
margin-left: 0;
|
279 |
-
}
|
280 |
-
|
281 |
-
.csf-section-title,
|
282 |
-
.csf-section{
|
283 |
-
display: block !important;
|
284 |
-
}
|
285 |
-
}
|
286 |
-
|
287 |
-
.csf-search-all{
|
288 |
-
.csf-section-title{
|
289 |
-
display: none !important;
|
290 |
-
}
|
291 |
-
}
|
292 |
-
|
293 |
-
//
|
294 |
-
// Expand
|
295 |
-
//
|
296 |
-
.csf-expand-all{
|
297 |
-
float: left;
|
298 |
-
padding: 0 8px;
|
299 |
-
margin-right: 4px;
|
300 |
-
z-index: 1;
|
301 |
-
font-size: 13px;
|
302 |
-
line-height: 30px;
|
303 |
-
cursor: pointer;
|
304 |
-
user-select: none;
|
305 |
-
border-radius: 2px;
|
306 |
-
transition: all .2s;
|
307 |
-
|
308 |
-
span{
|
309 |
-
font-size: 11px;
|
310 |
-
vertical-align: middle;
|
311 |
-
}
|
312 |
-
}
|
313 |
-
|
314 |
-
/**
|
315 |
-
* 01. 11. Search Input
|
316 |
-
*/
|
317 |
-
.csf-search{
|
318 |
-
float: left;
|
319 |
-
|
320 |
-
input{
|
321 |
-
margin: 0 2px 0 0;
|
322 |
-
border: none;
|
323 |
-
font-size: 12px;
|
324 |
-
line-height: 30px;
|
325 |
-
min-height: 30px;
|
326 |
-
text-align: inherit;
|
327 |
-
padding: 0 10px;
|
328 |
-
border-radius: 2px;
|
329 |
-
box-shadow: none;
|
330 |
-
|
331 |
-
&:focus{
|
332 |
-
box-shadow: none;
|
333 |
-
}
|
334 |
-
}
|
335 |
-
}
|
336 |
-
|
337 |
-
.csf-saving{
|
338 |
-
|
339 |
-
.csf-buttons,
|
340 |
-
.csf-content{
|
341 |
-
cursor: default;
|
342 |
-
pointer-events: none;
|
343 |
-
opacity: 0.5;
|
344 |
-
}
|
345 |
-
}
|
346 |
-
|
347 |
-
/**
|
348 |
-
* 01. 12. Metabox
|
349 |
-
*/
|
350 |
-
.csf-metabox{
|
351 |
-
margin: -6px -12px -12px -12px;
|
352 |
-
|
353 |
-
.csf-field{
|
354 |
-
padding: 20px;
|
355 |
-
}
|
356 |
-
|
357 |
-
.csf-section-title{
|
358 |
-
padding: 20px;
|
359 |
-
}
|
360 |
-
}
|
361 |
-
|
362 |
-
.block-editor-page{
|
363 |
-
|
364 |
-
.csf-metabox{
|
365 |
-
margin: -6px -14px -14px -14px;
|
366 |
-
}
|
367 |
-
}
|
368 |
-
|
369 |
-
.block-editor-editor-skeleton__content{
|
370 |
-
|
371 |
-
.csf-metabox{
|
372 |
-
border-left: 1px solid #e2e4e7;
|
373 |
-
border-right: 1px solid #e2e4e7;
|
374 |
-
}
|
375 |
-
}
|
376 |
-
|
377 |
-
.csf-sections-reset{
|
378 |
-
float: left;
|
379 |
-
width: 100%;
|
380 |
-
text-align: right;
|
381 |
-
border-top: 1px solid #eee;
|
382 |
-
|
383 |
-
.csf-button-cancel,
|
384 |
-
input{
|
385 |
-
display: none;
|
386 |
-
}
|
387 |
-
|
388 |
-
label{
|
389 |
-
padding: 10px;
|
390 |
-
}
|
391 |
-
|
392 |
-
span{
|
393 |
-
-webkit-user-select: none;
|
394 |
-
user-select: none;
|
395 |
-
}
|
396 |
-
|
397 |
-
|
398 |
-
input:checked ~ .csf-button-reset{
|
399 |
-
display: none;
|
400 |
-
}
|
401 |
-
|
402 |
-
input:checked ~ .csf-button-cancel{
|
403 |
-
display: inline-block;
|
404 |
-
}
|
405 |
-
|
406 |
-
}
|
407 |
-
|
408 |
-
#side-sortables{
|
409 |
-
|
410 |
-
.csf-section-title{
|
411 |
-
padding: 12px;
|
412 |
-
}
|
413 |
-
|
414 |
-
.csf-field{
|
415 |
-
padding: 10px 15px;
|
416 |
-
|
417 |
-
.csf-title{
|
418 |
-
float: none;
|
419 |
-
width: 100%;
|
420 |
-
margin-bottom: 6px;
|
421 |
-
}
|
422 |
-
|
423 |
-
.csf-fieldset{
|
424 |
-
float: none;
|
425 |
-
width: 100%;
|
426 |
-
}
|
427 |
-
}
|
428 |
-
|
429 |
-
.csf-field-text input{
|
430 |
-
width: 100%;
|
431 |
-
}
|
432 |
-
|
433 |
-
.csf-notice{
|
434 |
-
padding: 10px 15px;
|
435 |
-
}
|
436 |
-
}
|
437 |
-
|
438 |
-
/**
|
439 |
-
* 01. 13. Comment Metabox
|
440 |
-
*/
|
441 |
-
.csf-comment-metabox{
|
442 |
-
margin: -6px -12px -12px -12px;
|
443 |
-
|
444 |
-
.csf-field{
|
445 |
-
padding: 20px;
|
446 |
-
}
|
447 |
-
|
448 |
-
.csf-section-title{
|
449 |
-
padding: 20px;
|
450 |
-
}
|
451 |
-
}
|
452 |
-
|
453 |
-
|
454 |
-
/**
|
455 |
-
* 01. 14. Help Tooltip
|
456 |
-
*/
|
457 |
-
.csf-tooltip{
|
458 |
-
position: absolute;
|
459 |
-
z-index: 5000001;
|
460 |
-
font-size: 12px;
|
461 |
-
line-height: 1.4;
|
462 |
-
text-align: center;
|
463 |
-
text-decoration: none;
|
464 |
-
padding: 6px 12px;
|
465 |
-
max-width: 200px;
|
466 |
-
color: #fff;
|
467 |
-
background-color: #000;
|
468 |
-
background-color: rgba(black, 0.85);
|
469 |
-
border-radius: 4px;
|
470 |
-
}
|
1 |
+
/**
|
2 |
+
* 01. Base
|
3 |
+
*/
|
4 |
+
.csf{
|
5 |
+
position: relative;
|
6 |
+
|
7 |
+
label{
|
8 |
+
padding: 0;
|
9 |
+
margin: 0;
|
10 |
+
display: inline-block;
|
11 |
+
}
|
12 |
+
}
|
13 |
+
|
14 |
+
.csf-ab-icon{
|
15 |
+
top: 2px;
|
16 |
+
}
|
17 |
+
|
18 |
+
#screen-meta-links + .csf-options{
|
19 |
+
margin-top: 40px;
|
20 |
+
}
|
21 |
+
|
22 |
+
.csf-options{
|
23 |
+
margin-top: 20px;
|
24 |
+
margin-right: 20px;
|
25 |
+
}
|
26 |
+
|
27 |
+
/**
|
28 |
+
* 01. 01. Header
|
29 |
+
*/
|
30 |
+
.csf-header{
|
31 |
+
position: relative;
|
32 |
+
}
|
33 |
+
|
34 |
+
.csf-header-inner{
|
35 |
+
padding: 25px;
|
36 |
+
transition: box-shadow .3s ease;
|
37 |
+
|
38 |
+
h1{
|
39 |
+
float: left;
|
40 |
+
font-size: 1.5em;
|
41 |
+
line-height: 26px;
|
42 |
+
font-weight: 400;
|
43 |
+
margin: 0;
|
44 |
+
|
45 |
+
small{
|
46 |
+
font-size: 11px;
|
47 |
+
font-weight: 500;
|
48 |
+
}
|
49 |
+
}
|
50 |
+
}
|
51 |
+
|
52 |
+
/**
|
53 |
+
* 01. 02. Sticky
|
54 |
+
*/
|
55 |
+
.csf-sticky{
|
56 |
+
|
57 |
+
.csf-header-inner{
|
58 |
+
position: fixed;
|
59 |
+
z-index: 99;
|
60 |
+
top: 32px;
|
61 |
+
box-shadow: 0 5px 10px rgba(0,0,0,0.1);
|
62 |
+
}
|
63 |
+
}
|
64 |
+
|
65 |
+
/**
|
66 |
+
* 01. 03. Header Buttons
|
67 |
+
*/
|
68 |
+
.csf-buttons{
|
69 |
+
float: right;
|
70 |
+
|
71 |
+
.button{
|
72 |
+
margin: 0 2px;
|
73 |
+
line-height: 26px;
|
74 |
+
|
75 |
+
&:focus{
|
76 |
+
outline: none !important;
|
77 |
+
box-shadow: none !important;
|
78 |
+
}
|
79 |
+
}
|
80 |
+
|
81 |
+
.csf-save{
|
82 |
+
min-width: 72px;
|
83 |
+
}
|
84 |
+
}
|
85 |
+
|
86 |
+
.csf-header-left{
|
87 |
+
float: left;
|
88 |
+
}
|
89 |
+
|
90 |
+
.csf-header-right{
|
91 |
+
float: right;
|
92 |
+
}
|
93 |
+
|
94 |
+
/**
|
95 |
+
* 01. 04. Navigation
|
96 |
+
*/
|
97 |
+
.csf-nav{
|
98 |
+
display: block;
|
99 |
+
position: relative;
|
100 |
+
z-index: 10;
|
101 |
+
float: left;
|
102 |
+
|
103 |
+
ul{
|
104 |
+
clear: left;
|
105 |
+
margin: 0;
|
106 |
+
list-style-type: none;
|
107 |
+
|
108 |
+
li{
|
109 |
+
margin-bottom: 0;
|
110 |
+
|
111 |
+
a{
|
112 |
+
font-size: 13px;
|
113 |
+
position: relative;
|
114 |
+
display: block;
|
115 |
+
padding: 14px 12px;
|
116 |
+
text-decoration: none;
|
117 |
+
transition-property: color, background;
|
118 |
+
transition-duration: 0.2s;
|
119 |
+
transition-timing-function: ease;
|
120 |
+
|
121 |
+
&:focus{
|
122 |
+
outline: none;
|
123 |
+
box-shadow: none;
|
124 |
+
}
|
125 |
+
}
|
126 |
+
|
127 |
+
.csf-arrow:after{
|
128 |
+
content: "\f054";
|
129 |
+
display: inline-block;
|
130 |
+
font-family: "Font Awesome 5 Pro", "Font Awesome 5 Free", "FontAwesome";
|
131 |
+
font-weight: 900;
|
132 |
+
font-size: 9px;
|
133 |
+
line-height: 1;
|
134 |
+
position: absolute;
|
135 |
+
right: 10px;
|
136 |
+
top: 50%;
|
137 |
+
margin-top: -4px;
|
138 |
+
}
|
139 |
+
|
140 |
+
&.csf-tab-expanded{
|
141 |
+
|
142 |
+
.csf-arrow:after{
|
143 |
+
transform: rotate(90deg);
|
144 |
+
}
|
145 |
+
|
146 |
+
ul{
|
147 |
+
display: block;
|
148 |
+
}
|
149 |
+
}
|
150 |
+
}
|
151 |
+
|
152 |
+
ul{
|
153 |
+
display: none;
|
154 |
+
position: relative;
|
155 |
+
|
156 |
+
li{
|
157 |
+
|
158 |
+
a{
|
159 |
+
font-size: 12px;
|
160 |
+
padding: 12px 14px 12px 24px;
|
161 |
+
}
|
162 |
+
}
|
163 |
+
}
|
164 |
+
}
|
165 |
+
|
166 |
+
.csf-tab-icon{
|
167 |
+
width: 20px;
|
168 |
+
margin-right: 5px;
|
169 |
+
font-size: 13px;
|
170 |
+
text-align: center;
|
171 |
+
}
|
172 |
+
|
173 |
+
.csf-label-error{
|
174 |
+
margin-left: 4px;
|
175 |
+
vertical-align: top;
|
176 |
+
}
|
177 |
+
}
|
178 |
+
|
179 |
+
.csf-nav-normal{
|
180 |
+
width: 225px;
|
181 |
+
|
182 |
+
+ .csf-content{
|
183 |
+
margin-left: 225px;
|
184 |
+
}
|
185 |
+
}
|
186 |
+
|
187 |
+
.csf-nav-inline{
|
188 |
+
width: 100%;
|
189 |
+
|
190 |
+
ul{
|
191 |
+
|
192 |
+
li{
|
193 |
+
display: inline-block;
|
194 |
+
vertical-align: top;
|
195 |
+
}
|
196 |
+
}
|
197 |
+
}
|
198 |
+
|
199 |
+
.csf-nav-background{
|
200 |
+
position: absolute;
|
201 |
+
top: 0;
|
202 |
+
left: 0;
|
203 |
+
bottom: 0;
|
204 |
+
z-index: 9;
|
205 |
+
width: 225px;
|
206 |
+
}
|
207 |
+
|
208 |
+
/**
|
209 |
+
* 01. 05. Wrapper
|
210 |
+
*/
|
211 |
+
.csf-wrapper{
|
212 |
+
position: relative;
|
213 |
+
}
|
214 |
+
|
215 |
+
/**
|
216 |
+
* 01. 06. Content
|
217 |
+
*/
|
218 |
+
.csf-content{
|
219 |
+
position: relative;
|
220 |
+
background-color: #fff;
|
221 |
+
}
|
222 |
+
|
223 |
+
/**
|
224 |
+
* 01. 07. Section
|
225 |
+
*/
|
226 |
+
.csf-sections{
|
227 |
+
float: left;
|
228 |
+
width: 100%;
|
229 |
+
}
|
230 |
+
|
231 |
+
.csf-section-title{
|
232 |
+
display: none;
|
233 |
+
padding: 20px 30px;
|
234 |
+
background-color: #f5f5f5;
|
235 |
+
border-top: 1px solid #eee;
|
236 |
+
border-bottom: 1px solid #eee;
|
237 |
+
|
238 |
+
h3{
|
239 |
+
margin: 0;
|
240 |
+
padding: 0 ;
|
241 |
+
font-size: 13px;
|
242 |
+
font-weight: bold;
|
243 |
+
text-transform: uppercase;
|
244 |
+
}
|
245 |
+
|
246 |
+
.csf-section-icon{
|
247 |
+
margin-right: 5px;
|
248 |
+
}
|
249 |
+
}
|
250 |
+
|
251 |
+
/**
|
252 |
+
* 01. 08. Footer
|
253 |
+
*/
|
254 |
+
.csf-footer{
|
255 |
+
padding: 20px;
|
256 |
+
font-size: 11px;
|
257 |
+
}
|
258 |
+
|
259 |
+
/**
|
260 |
+
* 01. 09. Copyright
|
261 |
+
*/
|
262 |
+
.csf-copyright{
|
263 |
+
float: left;
|
264 |
+
margin-top: 5px;
|
265 |
+
}
|
266 |
+
|
267 |
+
/**
|
268 |
+
* 01. 10. Show All Settings
|
269 |
+
*/
|
270 |
+
.csf-search-all,
|
271 |
+
.csf-show-all{
|
272 |
+
.csf-nav-background,
|
273 |
+
.csf-nav{
|
274 |
+
display: none;
|
275 |
+
}
|
276 |
+
|
277 |
+
.csf-content{
|
278 |
+
margin-left: 0;
|
279 |
+
}
|
280 |
+
|
281 |
+
.csf-section-title,
|
282 |
+
.csf-section{
|
283 |
+
display: block !important;
|
284 |
+
}
|
285 |
+
}
|
286 |
+
|
287 |
+
.csf-search-all{
|
288 |
+
.csf-section-title{
|
289 |
+
display: none !important;
|
290 |
+
}
|
291 |
+
}
|
292 |
+
|
293 |
+
//
|
294 |
+
// Expand
|
295 |
+
//
|
296 |
+
.csf-expand-all{
|
297 |
+
float: left;
|
298 |
+
padding: 0 8px;
|
299 |
+
margin-right: 4px;
|
300 |
+
z-index: 1;
|
301 |
+
font-size: 13px;
|
302 |
+
line-height: 30px;
|
303 |
+
cursor: pointer;
|
304 |
+
user-select: none;
|
305 |
+
border-radius: 2px;
|
306 |
+
transition: all .2s;
|
307 |
+
|
308 |
+
span{
|
309 |
+
font-size: 11px;
|
310 |
+
vertical-align: middle;
|
311 |
+
}
|
312 |
+
}
|
313 |
+
|
314 |
+
/**
|
315 |
+
* 01. 11. Search Input
|
316 |
+
*/
|
317 |
+
.csf-search{
|
318 |
+
float: left;
|
319 |
+
|
320 |
+
input{
|
321 |
+
margin: 0 2px 0 0;
|
322 |
+
border: none;
|
323 |
+
font-size: 12px;
|
324 |
+
line-height: 30px;
|
325 |
+
min-height: 30px;
|
326 |
+
text-align: inherit;
|
327 |
+
padding: 0 10px;
|
328 |
+
border-radius: 2px;
|
329 |
+
box-shadow: none;
|
330 |
+
|
331 |
+
&:focus{
|
332 |
+
box-shadow: none;
|
333 |
+
}
|
334 |
+
}
|
335 |
+
}
|
336 |
+
|
337 |
+
.csf-saving{
|
338 |
+
|
339 |
+
.csf-buttons,
|
340 |
+
.csf-content{
|
341 |
+
cursor: default;
|
342 |
+
pointer-events: none;
|
343 |
+
opacity: 0.5;
|
344 |
+
}
|
345 |
+
}
|
346 |
+
|
347 |
+
/**
|
348 |
+
* 01. 12. Metabox
|
349 |
+
*/
|
350 |
+
.csf-metabox{
|
351 |
+
margin: -6px -12px -12px -12px;
|
352 |
+
|
353 |
+
.csf-field{
|
354 |
+
padding: 20px;
|
355 |
+
}
|
356 |
+
|
357 |
+
.csf-section-title{
|
358 |
+
padding: 20px;
|
359 |
+
}
|
360 |
+
}
|
361 |
+
|
362 |
+
.block-editor-page{
|
363 |
+
|
364 |
+
.csf-metabox{
|
365 |
+
margin: -6px -14px -14px -14px;
|
366 |
+
}
|
367 |
+
}
|
368 |
+
|
369 |
+
.block-editor-editor-skeleton__content{
|
370 |
+
|
371 |
+
.csf-metabox{
|
372 |
+
border-left: 1px solid #e2e4e7;
|
373 |
+
border-right: 1px solid #e2e4e7;
|
374 |
+
}
|
375 |
+
}
|
376 |
+
|
377 |
+
.csf-sections-reset{
|
378 |
+
float: left;
|
379 |
+
width: 100%;
|
380 |
+
text-align: right;
|
381 |
+
border-top: 1px solid #eee;
|
382 |
+
|
383 |
+
.csf-button-cancel,
|
384 |
+
input{
|
385 |
+
display: none;
|
386 |
+
}
|
387 |
+
|
388 |
+
label{
|
389 |
+
padding: 10px;
|
390 |
+
}
|
391 |
+
|
392 |
+
span{
|
393 |
+
-webkit-user-select: none;
|
394 |
+
user-select: none;
|
395 |
+
}
|
396 |
+
|
397 |
+
|
398 |
+
input:checked ~ .csf-button-reset{
|
399 |
+
display: none;
|
400 |
+
}
|
401 |
+
|
402 |
+
input:checked ~ .csf-button-cancel{
|
403 |
+
display: inline-block;
|
404 |
+
}
|
405 |
+
|
406 |
+
}
|
407 |
+
|
408 |
+
#side-sortables{
|
409 |
+
|
410 |
+
.csf-section-title{
|
411 |
+
padding: 12px;
|
412 |
+
}
|
413 |
+
|
414 |
+
.csf-field{
|
415 |
+
padding: 10px 15px;
|
416 |
+
|
417 |
+
.csf-title{
|
418 |
+
float: none;
|
419 |
+
width: 100%;
|
420 |
+
margin-bottom: 6px;
|
421 |
+
}
|
422 |
+
|
423 |
+
.csf-fieldset{
|
424 |
+
float: none;
|
425 |
+
width: 100%;
|
426 |
+
}
|
427 |
+
}
|
428 |
+
|
429 |
+
.csf-field-text input{
|
430 |
+
width: 100%;
|
431 |
+
}
|
432 |
+
|
433 |
+
.csf-notice{
|
434 |
+
padding: 10px 15px;
|
435 |
+
}
|
436 |
+
}
|
437 |
+
|
438 |
+
/**
|
439 |
+
* 01. 13. Comment Metabox
|
440 |
+
*/
|
441 |
+
.csf-comment-metabox{
|
442 |
+
margin: -6px -12px -12px -12px;
|
443 |
+
|
444 |
+
.csf-field{
|
445 |
+
padding: 20px;
|
446 |
+
}
|
447 |
+
|
448 |
+
.csf-section-title{
|
449 |
+
padding: 20px;
|
450 |
+
}
|
451 |
+
}
|
452 |
+
|
453 |
+
|
454 |
+
/**
|
455 |
+
* 01. 14. Help Tooltip
|
456 |
+
*/
|
457 |
+
.csf-tooltip{
|
458 |
+
position: absolute;
|
459 |
+
z-index: 5000001;
|
460 |
+
font-size: 12px;
|
461 |
+
line-height: 1.4;
|
462 |
+
text-align: center;
|
463 |
+
text-decoration: none;
|
464 |
+
padding: 6px 12px;
|
465 |
+
max-width: 200px;
|
466 |
+
color: #fff;
|
467 |
+
background-color: #000;
|
468 |
+
background-color: rgba(black, 0.85);
|
469 |
+
border-radius: 4px;
|
470 |
+
}
|
vendor/codestar-framework/assets/scss/partials/_chosen.scss
CHANGED
@@ -1,405 +1,405 @@
|
|
1 |
-
/**
|
2 |
-
* Chosen JS Styles
|
3 |
-
*/
|
4 |
-
.chosen-container {
|
5 |
-
position: relative;
|
6 |
-
display: inline-block;
|
7 |
-
vertical-align: middle;
|
8 |
-
font-size: 13px;
|
9 |
-
user-select: none;
|
10 |
-
}
|
11 |
-
|
12 |
-
.chosen-container * {
|
13 |
-
box-sizing: border-box;
|
14 |
-
}
|
15 |
-
|
16 |
-
.chosen-container .chosen-drop {
|
17 |
-
position: absolute;
|
18 |
-
top: 100%;
|
19 |
-
z-index: 1010;
|
20 |
-
width: 100%;
|
21 |
-
border: 1px solid #aaa;
|
22 |
-
border-top: 0;
|
23 |
-
background: #fff;
|
24 |
-
box-shadow: 0 4px 5px rgba(0, 0, 0, 0.15);
|
25 |
-
clip: rect(0, 0, 0, 0);
|
26 |
-
clip-path: inset(100% 100%);
|
27 |
-
}
|
28 |
-
|
29 |
-
.chosen-container.chosen-with-drop .chosen-drop {
|
30 |
-
clip: auto;
|
31 |
-
clip-path: none;
|
32 |
-
}
|
33 |
-
|
34 |
-
.chosen-container a {
|
35 |
-
cursor: pointer;
|
36 |
-
}
|
37 |
-
|
38 |
-
.chosen-container .search-choice .group-name, .chosen-container .chosen-single .group-name {
|
39 |
-
margin-right: 4px;
|
40 |
-
overflow: hidden;
|
41 |
-
white-space: nowrap;
|
42 |
-
text-overflow: ellipsis;
|
43 |
-
font-weight: normal;
|
44 |
-
color: #999999;
|
45 |
-
}
|
46 |
-
|
47 |
-
.chosen-container .search-choice .group-name:after, .chosen-container .chosen-single .group-name:after {
|
48 |
-
content: ":";
|
49 |
-
padding-left: 2px;
|
50 |
-
vertical-align: top;
|
51 |
-
}
|
52 |
-
|
53 |
-
.chosen-container-single .chosen-single {
|
54 |
-
position: relative;
|
55 |
-
display: block;
|
56 |
-
overflow: hidden;
|
57 |
-
padding: 0 0 0 8px;
|
58 |
-
height: 25px;
|
59 |
-
border: 1px solid #aaa;
|
60 |
-
border-radius: 5px;
|
61 |
-
background-color: #fff;
|
62 |
-
background: linear-gradient(#fff 20%, #f6f6f6 50%, #eee 52%, #f4f4f4 100%);
|
63 |
-
background-clip: padding-box;
|
64 |
-
box-shadow: 0 0 3px #fff inset, 0 1px 1px rgba(0, 0, 0, 0.1);
|
65 |
-
color: #444;
|
66 |
-
text-decoration: none;
|
67 |
-
white-space: nowrap;
|
68 |
-
line-height: 24px;
|
69 |
-
}
|
70 |
-
|
71 |
-
.chosen-container-single .chosen-default {
|
72 |
-
color: #999;
|
73 |
-
}
|
74 |
-
|
75 |
-
.chosen-container-single .chosen-single span {
|
76 |
-
display: block;
|
77 |
-
overflow: hidden;
|
78 |
-
margin-right: 26px;
|
79 |
-
text-overflow: ellipsis;
|
80 |
-
white-space: nowrap;
|
81 |
-
}
|
82 |
-
|
83 |
-
.chosen-container-single .chosen-single-with-deselect span {
|
84 |
-
margin-right: 38px;
|
85 |
-
}
|
86 |
-
|
87 |
-
.chosen-container-single .chosen-single abbr {
|
88 |
-
position: absolute;
|
89 |
-
top: 6px;
|
90 |
-
right: 26px;
|
91 |
-
display: block;
|
92 |
-
width: 12px;
|
93 |
-
height: 12px;
|
94 |
-
font-size: 1px;
|
95 |
-
}
|
96 |
-
|
97 |
-
.chosen-container-single .chosen-single div {
|
98 |
-
position: absolute;
|
99 |
-
top: 0;
|
100 |
-
right: 0;
|
101 |
-
display: block;
|
102 |
-
width: 18px;
|
103 |
-
height: 100%;
|
104 |
-
}
|
105 |
-
|
106 |
-
.chosen-container-single .chosen-single div b {
|
107 |
-
display: block;
|
108 |
-
width: 100%;
|
109 |
-
height: 100%;
|
110 |
-
}
|
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 |
-
|
120 |
-
.chosen-container-single .chosen-search input[type="text"] {
|
121 |
-
margin: 1px 0;
|
122 |
-
padding: 4px 20px 4px 5px;
|
123 |
-
width: 100%;
|
124 |
-
height: auto;
|
125 |
-
outline: 0;
|
126 |
-
border: 1px solid #aaa;
|
127 |
-
font-size: 1em;
|
128 |
-
font-family: sans-serif;
|
129 |
-
line-height: normal;
|
130 |
-
border-radius: 0;
|
131 |
-
}
|
132 |
-
|
133 |
-
.chosen-container-single .chosen-drop {
|
134 |
-
margin-top: -1px;
|
135 |
-
border-radius: 0 0 4px 4px;
|
136 |
-
background-clip: padding-box;
|
137 |
-
}
|
138 |
-
|
139 |
-
.chosen-container-single.chosen-container-single-nosearch .chosen-search {
|
140 |
-
position: absolute;
|
141 |
-
clip: rect(0, 0, 0, 0);
|
142 |
-
clip-path: inset(100% 100%);
|
143 |
-
}
|
144 |
-
|
145 |
-
.chosen-container .chosen-results {
|
146 |
-
color: #444;
|
147 |
-
position: relative;
|
148 |
-
overflow-x: hidden;
|
149 |
-
overflow-y: auto;
|
150 |
-
margin: 0 4px 4px 0;
|
151 |
-
padding: 0 0 0 4px;
|
152 |
-
max-height: 240px;
|
153 |
-
-webkit-overflow-scrolling: touch;
|
154 |
-
}
|
155 |
-
|
156 |
-
.chosen-container .chosen-results li {
|
157 |
-
display: none;
|
158 |
-
margin: 0;
|
159 |
-
padding: 5px 6px;
|
160 |
-
list-style: none;
|
161 |
-
line-height: 15px;
|
162 |
-
word-wrap: break-word;
|
163 |
-
-webkit-touch-callout: none;
|
164 |
-
}
|
165 |
-
|
166 |
-
.chosen-container .chosen-results li.active-result {
|
167 |
-
display: list-item;
|
168 |
-
cursor: pointer;
|
169 |
-
}
|
170 |
-
|
171 |
-
.chosen-container .chosen-results li.disabled-result {
|
172 |
-
display: list-item;
|
173 |
-
color: #ccc;
|
174 |
-
cursor: default;
|
175 |
-
}
|
176 |
-
|
177 |
-
.chosen-container .chosen-results li.highlighted {
|
178 |
-
background-color: #3875d7;
|
179 |
-
background-image: linear-gradient(#3875d7 20%, #2a62bc 90%);
|
180 |
-
color: #fff;
|
181 |
-
}
|
182 |
-
|
183 |
-
.chosen-container .chosen-results li.no-results {
|
184 |
-
color: #777;
|
185 |
-
display: list-item;
|
186 |
-
background: #f4f4f4;
|
187 |
-
}
|
188 |
-
|
189 |
-
.chosen-container .chosen-results li.group-result {
|
190 |
-
display: list-item;
|
191 |
-
font-weight: bold;
|
192 |
-
cursor: default;
|
193 |
-
}
|
194 |
-
|
195 |
-
.chosen-container .chosen-results li.group-option {
|
196 |
-
padding-left: 15px;
|
197 |
-
}
|
198 |
-
|
199 |
-
.chosen-container .chosen-results li em {
|
200 |
-
font-style: normal;
|
201 |
-
text-decoration: underline;
|
202 |
-
}
|
203 |
-
|
204 |
-
.chosen-container-multi .chosen-choices {
|
205 |
-
position: relative;
|
206 |
-
overflow: hidden;
|
207 |
-
margin: 0;
|
208 |
-
padding: 0 5px;
|
209 |
-
width: 100%;
|
210 |
-
height: auto;
|
211 |
-
border: 1px solid #aaa;
|
212 |
-
background-color: #fff;
|
213 |
-
background-image: linear-gradient(#eee 1%, #fff 15%);
|
214 |
-
cursor: text;
|
215 |
-
}
|
216 |
-
|
217 |
-
.chosen-container-multi .chosen-choices li {
|
218 |
-
float: left;
|
219 |
-
list-style: none;
|
220 |
-
}
|
221 |
-
|
222 |
-
.chosen-container-multi .chosen-choices li.search-field {
|
223 |
-
margin: 0;
|
224 |
-
padding: 0;
|
225 |
-
white-space: nowrap;
|
226 |
-
}
|
227 |
-
|
228 |
-
.chosen-container-multi .chosen-choices li.search-field input[type="text"] {
|
229 |
-
margin: 1px 0;
|
230 |
-
padding: 0;
|
231 |
-
outline: 0;
|
232 |
-
border: 0 !important;
|
233 |
-
background: transparent !important;
|
234 |
-
box-shadow: none;
|
235 |
-
color: #999;
|
236 |
-
font-size: 100%;
|
237 |
-
font-family: sans-serif;
|
238 |
-
line-height: normal;
|
239 |
-
border-radius: 0;
|
240 |
-
width: 25px;
|
241 |
-
height: 25px;
|
242 |
-
min-height: 25px;
|
243 |
-
}
|
244 |
-
|
245 |
-
.chosen-container-multi .chosen-choices li.search-choice {
|
246 |
-
position: relative;
|
247 |
-
margin: 3px 5px 3px 0;
|
248 |
-
padding: 3px 20px 3px 6px;
|
249 |
-
border: 1px solid #aaa;
|
250 |
-
max-width: 100%;
|
251 |
-
border-radius: 3px;
|
252 |
-
background-color: #eeeeee;
|
253 |
-
background-image: linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%);
|
254 |
-
background-size: 100% 19px;
|
255 |
-
background-repeat: repeat-x;
|
256 |
-
background-clip: padding-box;
|
257 |
-
box-shadow: 0 0 2px #fff inset, 0 1px 0 rgba(0, 0, 0, 0.05);
|
258 |
-
color: #333;
|
259 |
-
line-height: 13px;
|
260 |
-
cursor: default;
|
261 |
-
}
|
262 |
-
|
263 |
-
.chosen-container-multi .chosen-choices li.search-choice span {
|
264 |
-
word-wrap: break-word;
|
265 |
-
white-space: nowrap;
|
266 |
-
}
|
267 |
-
|
268 |
-
.chosen-container-multi .chosen-choices li.search-choice .search-choice-close {
|
269 |
-
position: absolute;
|
270 |
-
top: 0;
|
271 |
-
right: 0;
|
272 |
-
display: block;
|
273 |
-
width: 12px;
|
274 |
-
height: 12px;
|
275 |
-
font-size: 1px;
|
276 |
-
}
|
277 |
-
|
278 |
-
.chosen-container-multi .chosen-choices li.search-choice-disabled {
|
279 |
-
padding-right: 5px;
|
280 |
-
border: 1px solid #ccc;
|
281 |
-
background-color: #e4e4e4;
|
282 |
-
background-image: linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%);
|
283 |
-
color: #666;
|
284 |
-
}
|
285 |
-
|
286 |
-
.chosen-container-multi .chosen-choices li.search-choice-focus {
|
287 |
-
background: #d4d4d4;
|
288 |
-
}
|
289 |
-
|
290 |
-
.chosen-container-multi .chosen-results {
|
291 |
-
margin: 0;
|
292 |
-
padding: 0;
|
293 |
-
}
|
294 |
-
|
295 |
-
.chosen-container-multi .chosen-drop .result-selected {
|
296 |
-
display: list-item;
|
297 |
-
color: #ccc;
|
298 |
-
cursor: default;
|
299 |
-
}
|
300 |
-
|
301 |
-
.chosen-container-active .chosen-single {
|
302 |
-
border: 1px solid #5897fb;
|
303 |
-
box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
|
304 |
-
}
|
305 |
-
|
306 |
-
.chosen-container-active.chosen-with-drop .chosen-single {
|
307 |
-
border: 1px solid #aaa;
|
308 |
-
border-bottom-right-radius: 0;
|
309 |
-
border-bottom-left-radius: 0;
|
310 |
-
background-image: linear-gradient(#eee 20%, #fff 80%);
|
311 |
-
box-shadow: 0 1px 0 #fff inset;
|
312 |
-
}
|
313 |
-
|
314 |
-
.chosen-container-active.chosen-with-drop .chosen-single div {
|
315 |
-
border-left: none;
|
316 |
-
background: transparent;
|
317 |
-
}
|
318 |
-
|
319 |
-
.chosen-container-active .chosen-choices {
|
320 |
-
border: 1px solid #5897fb;
|
321 |
-
box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
|
322 |
-
}
|
323 |
-
|
324 |
-
.chosen-container-active .chosen-choices li.search-field input[type="text"] {
|
325 |
-
color: #222 !important;
|
326 |
-
}
|
327 |
-
|
328 |
-
.chosen-disabled {
|
329 |
-
opacity: 0.5 !important;
|
330 |
-
cursor: default;
|
331 |
-
}
|
332 |
-
|
333 |
-
.chosen-disabled .chosen-single {
|
334 |
-
cursor: default;
|
335 |
-
}
|
336 |
-
|
337 |
-
.chosen-disabled .chosen-choices .search-choice .search-choice-close {
|
338 |
-
cursor: default;
|
339 |
-
}
|
340 |
-
|
341 |
-
.chosen-rtl {
|
342 |
-
text-align: right;
|
343 |
-
}
|
344 |
-
|
345 |
-
.chosen-rtl .chosen-single {
|
346 |
-
overflow: visible;
|
347 |
-
padding: 0 8px 0 0;
|
348 |
-
}
|
349 |
-
|
350 |
-
.chosen-rtl .chosen-single span {
|
351 |
-
margin-right: 0;
|
352 |
-
margin-left: 26px;
|
353 |
-
direction: rtl;
|
354 |
-
}
|
355 |
-
|
356 |
-
.chosen-rtl .chosen-single-with-deselect span {
|
357 |
-
margin-left: 38px;
|
358 |
-
}
|
359 |
-
|
360 |
-
.chosen-rtl .chosen-single div {
|
361 |
-
right: auto;
|
362 |
-
left: 3px;
|
363 |
-
}
|
364 |
-
|
365 |
-
.chosen-rtl .chosen-single abbr {
|
366 |
-
right: auto;
|
367 |
-
left: 26px;
|
368 |
-
}
|
369 |
-
|
370 |
-
.chosen-rtl .chosen-choices li {
|
371 |
-
float: right;
|
372 |
-
}
|
373 |
-
|
374 |
-
.chosen-rtl .chosen-choices li.search-field input[type="text"] {
|
375 |
-
direction: rtl;
|
376 |
-
}
|
377 |
-
|
378 |
-
.chosen-rtl .chosen-choices li.search-choice {
|
379 |
-
margin: 3px 5px 3px 0;
|
380 |
-
padding: 3px 5px 3px 19px;
|
381 |
-
}
|
382 |
-
|
383 |
-
.chosen-rtl .chosen-choices li.search-choice .search-choice-close {
|
384 |
-
right: auto;
|
385 |
-
left: 4px;
|
386 |
-
}
|
387 |
-
|
388 |
-
.chosen-rtl.chosen-container-single .chosen-results {
|
389 |
-
margin: 0 0 4px 4px;
|
390 |
-
padding: 0 4px 0 0;
|
391 |
-
}
|
392 |
-
|
393 |
-
.chosen-rtl .chosen-results li.group-option {
|
394 |
-
padding-right: 15px;
|
395 |
-
padding-left: 0;
|
396 |
-
}
|
397 |
-
|
398 |
-
.chosen-rtl.chosen-container-active.chosen-with-drop .chosen-single div {
|
399 |
-
border-right: none;
|
400 |
-
}
|
401 |
-
|
402 |
-
.chosen-rtl .chosen-search input[type="text"] {
|
403 |
-
padding: 4px 5px 4px 20px;
|
404 |
-
direction: rtl;
|
405 |
-
}
|
1 |
+
/**
|
2 |
+
* Chosen JS Styles
|
3 |
+
*/
|
4 |
+
.chosen-container {
|
5 |
+
position: relative;
|
6 |
+
display: inline-block;
|
7 |
+
vertical-align: middle;
|
8 |
+
font-size: 13px;
|
9 |
+
user-select: none;
|
10 |
+
}
|
11 |
+
|
12 |
+
.chosen-container * {
|
13 |
+
box-sizing: border-box;
|
14 |
+
}
|
15 |
+
|
16 |
+
.chosen-container .chosen-drop {
|
17 |
+
position: absolute;
|
18 |
+
top: 100%;
|
19 |
+
z-index: 1010;
|
20 |
+
width: 100%;
|
21 |
+
border: 1px solid #aaa;
|
22 |
+
border-top: 0;
|
23 |
+
background: #fff;
|
24 |
+
box-shadow: 0 4px 5px rgba(0, 0, 0, 0.15);
|
25 |
+
clip: rect(0, 0, 0, 0);
|
26 |
+
clip-path: inset(100% 100%);
|
27 |
+
}
|
28 |
+
|
29 |
+
.chosen-container.chosen-with-drop .chosen-drop {
|
30 |
+
clip: auto;
|
31 |
+
clip-path: none;
|
32 |
+
}
|
33 |
+
|
34 |
+
.chosen-container a {
|
35 |
+
cursor: pointer;
|
36 |
+
}
|
37 |
+
|
38 |
+
.chosen-container .search-choice .group-name, .chosen-container .chosen-single .group-name {
|
39 |
+
margin-right: 4px;
|
40 |
+
overflow: hidden;
|
41 |
+
white-space: nowrap;
|
42 |
+
text-overflow: ellipsis;
|
43 |
+
font-weight: normal;
|
44 |
+
color: #999999;
|
45 |
+
}
|
46 |
+
|
47 |
+
.chosen-container .search-choice .group-name:after, .chosen-container .chosen-single .group-name:after {
|
48 |
+
content: ":";
|
49 |
+
padding-left: 2px;
|
50 |
+
vertical-align: top;
|
51 |
+
}
|
52 |
+
|
53 |
+
.chosen-container-single .chosen-single {
|
54 |
+
position: relative;
|
55 |
+
display: block;
|
56 |
+
overflow: hidden;
|
57 |
+
padding: 0 0 0 8px;
|
58 |
+
height: 25px;
|
59 |
+
border: 1px solid #aaa;
|
60 |
+
border-radius: 5px;
|
61 |
+
background-color: #fff;
|
62 |
+
background: linear-gradient(#fff 20%, #f6f6f6 50%, #eee 52%, #f4f4f4 100%);
|
63 |
+
background-clip: padding-box;
|
64 |
+
box-shadow: 0 0 3px #fff inset, 0 1px 1px rgba(0, 0, 0, 0.1);
|
65 |
+
color: #444;
|
66 |
+
text-decoration: none;
|
67 |
+
white-space: nowrap;
|
68 |
+
line-height: 24px;
|
69 |
+
}
|
70 |
+
|
71 |
+
.chosen-container-single .chosen-default {
|
72 |
+
color: #999;
|
73 |
+
}
|
74 |
+
|
75 |
+
.chosen-container-single .chosen-single span {
|
76 |
+
display: block;
|
77 |
+
overflow: hidden;
|
78 |
+
margin-right: 26px;
|
79 |
+
text-overflow: ellipsis;
|
80 |
+
white-space: nowrap;
|
81 |
+
}
|
82 |
+
|
83 |
+
.chosen-container-single .chosen-single-with-deselect span {
|
84 |
+
margin-right: 38px;
|
85 |
+
}
|
86 |
+
|
87 |
+
.chosen-container-single .chosen-single abbr {
|
88 |
+
position: absolute;
|
89 |
+
top: 6px;
|
90 |
+
right: 26px;
|
91 |
+
display: block;
|
92 |
+
width: 12px;
|
93 |
+
height: 12px;
|
94 |
+
font-size: 1px;
|
95 |
+
}
|
96 |
+
|
97 |
+
.chosen-container-single .chosen-single div {
|
98 |
+
position: absolute;
|
99 |
+
top: 0;
|
100 |
+
right: 0;
|
101 |
+
display: block;
|
102 |
+
width: 18px;
|
103 |
+
height: 100%;
|
104 |
+
}
|
105 |
+
|
106 |
+
.chosen-container-single .chosen-single div b {
|
107 |
+
display: block;
|
108 |
+
width: 100%;
|
109 |
+
height: 100%;
|
110 |
+
}
|
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 |
+
|
120 |
+
.chosen-container-single .chosen-search input[type="text"] {
|
121 |
+
margin: 1px 0;
|
122 |
+
padding: 4px 20px 4px 5px;
|
123 |
+
width: 100%;
|
124 |
+
height: auto;
|
125 |
+
outline: 0;
|
126 |
+
border: 1px solid #aaa;
|
127 |
+
font-size: 1em;
|
128 |
+
font-family: sans-serif;
|
129 |
+
line-height: normal;
|
130 |
+
border-radius: 0;
|
131 |
+
}
|
132 |
+
|
133 |
+
.chosen-container-single .chosen-drop {
|
134 |
+
margin-top: -1px;
|
135 |
+
border-radius: 0 0 4px 4px;
|
136 |
+
background-clip: padding-box;
|
137 |
+
}
|
138 |
+
|
139 |
+
.chosen-container-single.chosen-container-single-nosearch .chosen-search {
|
140 |
+
position: absolute;
|
141 |
+
clip: rect(0, 0, 0, 0);
|
142 |
+
clip-path: inset(100% 100%);
|
143 |
+
}
|
144 |
+
|
145 |
+
.chosen-container .chosen-results {
|
146 |
+
color: #444;
|
147 |
+
position: relative;
|
148 |
+
overflow-x: hidden;
|
149 |
+
overflow-y: auto;
|
150 |
+
margin: 0 4px 4px 0;
|
151 |
+
padding: 0 0 0 4px;
|
152 |
+
max-height: 240px;
|
153 |
+
-webkit-overflow-scrolling: touch;
|
154 |
+
}
|
155 |
+
|
156 |
+
.chosen-container .chosen-results li {
|
157 |
+
display: none;
|
158 |
+
margin: 0;
|
159 |
+
padding: 5px 6px;
|
160 |
+
list-style: none;
|
161 |
+
line-height: 15px;
|
162 |
+
word-wrap: break-word;
|
163 |
+
-webkit-touch-callout: none;
|
164 |
+
}
|
165 |
+
|
166 |
+
.chosen-container .chosen-results li.active-result {
|
167 |
+
display: list-item;
|
168 |
+
cursor: pointer;
|
169 |
+
}
|
170 |
+
|
171 |
+
.chosen-container .chosen-results li.disabled-result {
|
172 |
+
display: list-item;
|
173 |
+
color: #ccc;
|
174 |
+
cursor: default;
|
175 |
+
}
|
176 |
+
|
177 |
+
.chosen-container .chosen-results li.highlighted {
|
178 |
+
background-color: #3875d7;
|
179 |
+
background-image: linear-gradient(#3875d7 20%, #2a62bc 90%);
|
180 |
+
color: #fff;
|
181 |
+
}
|
182 |
+
|
183 |
+
.chosen-container .chosen-results li.no-results {
|
184 |
+
color: #777;
|
185 |
+
display: list-item;
|
186 |
+
background: #f4f4f4;
|
187 |
+
}
|
188 |
+
|
189 |
+
.chosen-container .chosen-results li.group-result {
|
190 |
+
display: list-item;
|
191 |
+
font-weight: bold;
|
192 |
+
cursor: default;
|
193 |
+
}
|
194 |
+
|
195 |
+
.chosen-container .chosen-results li.group-option {
|
196 |
+
padding-left: 15px;
|
197 |
+
}
|
198 |
+
|
199 |
+
.chosen-container .chosen-results li em {
|
200 |
+
font-style: normal;
|
201 |
+
text-decoration: underline;
|
202 |
+
}
|
203 |
+
|
204 |
+
.chosen-container-multi .chosen-choices {
|
205 |
+
position: relative;
|
206 |
+
overflow: hidden;
|
207 |
+
margin: 0;
|
208 |
+
padding: 0 5px;
|
209 |
+
width: 100%;
|
210 |
+
height: auto;
|
211 |
+
border: 1px solid #aaa;
|
212 |
+
background-color: #fff;
|
213 |
+
background-image: linear-gradient(#eee 1%, #fff 15%);
|
214 |
+
cursor: text;
|
215 |
+
}
|
216 |
+
|
217 |
+
.chosen-container-multi .chosen-choices li {
|
218 |
+
float: left;
|
219 |
+
list-style: none;
|
220 |
+
}
|
221 |
+
|
222 |
+
.chosen-container-multi .chosen-choices li.search-field {
|
223 |
+
margin: 0;
|
224 |
+
padding: 0;
|
225 |
+
white-space: nowrap;
|
226 |
+
}
|
227 |
+
|
228 |
+
.chosen-container-multi .chosen-choices li.search-field input[type="text"] {
|
229 |
+
margin: 1px 0;
|
230 |
+
padding: 0;
|
231 |
+
outline: 0;
|
232 |
+
border: 0 !important;
|
233 |
+
background: transparent !important;
|
234 |
+
box-shadow: none;
|
235 |
+
color: #999;
|
236 |
+
font-size: 100%;
|
237 |
+
font-family: sans-serif;
|
238 |
+
line-height: normal;
|
239 |
+
border-radius: 0;
|
240 |
+
width: 25px;
|
241 |
+
height: 25px;
|
242 |
+
min-height: 25px;
|
243 |
+
}
|
244 |
+
|
245 |
+
.chosen-container-multi .chosen-choices li.search-choice {
|
246 |
+
position: relative;
|
247 |
+
margin: 3px 5px 3px 0;
|
248 |
+
padding: 3px 20px 3px 6px;
|
249 |
+
border: 1px solid #aaa;
|
250 |
+
max-width: 100%;
|
251 |
+
border-radius: 3px;
|
252 |
+
background-color: #eeeeee;
|
253 |
+
background-image: linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%);
|
254 |
+
background-size: 100% 19px;
|
255 |
+
background-repeat: repeat-x;
|
256 |
+
background-clip: padding-box;
|
257 |
+
box-shadow: 0 0 2px #fff inset, 0 1px 0 rgba(0, 0, 0, 0.05);
|
258 |
+
color: #333;
|
259 |
+
line-height: 13px;
|
260 |
+
cursor: default;
|
261 |
+
}
|
262 |
+
|
263 |
+
.chosen-container-multi .chosen-choices li.search-choice span {
|
264 |
+
word-wrap: break-word;
|
265 |
+
white-space: nowrap;
|
266 |
+
}
|
267 |
+
|
268 |
+
.chosen-container-multi .chosen-choices li.search-choice .search-choice-close {
|
269 |
+
position: absolute;
|
270 |
+
top: 0;
|
271 |
+
right: 0;
|
272 |
+
display: block;
|
273 |
+
width: 12px;
|
274 |
+
height: 12px;
|
275 |
+
font-size: 1px;
|
276 |
+
}
|
277 |
+
|
278 |
+
.chosen-container-multi .chosen-choices li.search-choice-disabled {
|
279 |
+
padding-right: 5px;
|
280 |
+
border: 1px solid #ccc;
|
281 |
+
background-color: #e4e4e4;
|
282 |
+
background-image: linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%);
|
283 |
+
color: #666;
|
284 |
+
}
|
285 |
+
|
286 |
+
.chosen-container-multi .chosen-choices li.search-choice-focus {
|
287 |
+
background: #d4d4d4;
|
288 |
+
}
|
289 |
+
|
290 |
+
.chosen-container-multi .chosen-results {
|
291 |
+
margin: 0;
|
292 |
+
padding: 0;
|
293 |
+
}
|
294 |
+
|
295 |
+
.chosen-container-multi .chosen-drop .result-selected {
|
296 |
+
display: list-item;
|
297 |
+
color: #ccc;
|
298 |
+
cursor: default;
|
299 |
+
}
|
300 |
+
|
301 |
+
.chosen-container-active .chosen-single {
|
302 |
+
border: 1px solid #5897fb;
|
303 |
+
box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
|
304 |
+
}
|
305 |
+
|
306 |
+
.chosen-container-active.chosen-with-drop .chosen-single {
|
307 |
+
border: 1px solid #aaa;
|
308 |
+
border-bottom-right-radius: 0;
|
309 |
+
border-bottom-left-radius: 0;
|
310 |
+
background-image: linear-gradient(#eee 20%, #fff 80%);
|
311 |
+
box-shadow: 0 1px 0 #fff inset;
|
312 |
+
}
|
313 |
+
|
314 |
+
.chosen-container-active.chosen-with-drop .chosen-single div {
|
315 |
+
border-left: none;
|
316 |
+
background: transparent;
|
317 |
+
}
|
318 |
+
|
319 |
+
.chosen-container-active .chosen-choices {
|
320 |
+
border: 1px solid #5897fb;
|
321 |
+
box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
|
322 |
+
}
|
323 |
+
|
324 |
+
.chosen-container-active .chosen-choices li.search-field input[type="text"] {
|
325 |
+
color: #222 !important;
|
326 |
+
}
|
327 |
+
|
328 |
+
.chosen-disabled {
|
329 |
+
opacity: 0.5 !important;
|
330 |
+
cursor: default;
|
331 |
+
}
|
332 |
+
|
333 |
+
.chosen-disabled .chosen-single {
|
334 |
+
cursor: default;
|
335 |
+
}
|
336 |
+
|
337 |
+
.chosen-disabled .chosen-choices .search-choice .search-choice-close {
|
338 |
+
cursor: default;
|
339 |
+
}
|
340 |
+
|
341 |
+
.chosen-rtl {
|
342 |
+
text-align: right;
|
343 |
+
}
|
344 |
+
|
345 |
+
.chosen-rtl .chosen-single {
|
346 |
+
overflow: visible;
|
347 |
+
padding: 0 8px 0 0;
|
348 |
+
}
|
349 |
+
|
350 |
+
.chosen-rtl .chosen-single span {
|
351 |
+
margin-right: 0;
|
352 |
+
margin-left: 26px;
|
353 |
+
direction: rtl;
|
354 |
+
}
|
355 |
+
|
356 |
+
.chosen-rtl .chosen-single-with-deselect span {
|
357 |
+
margin-left: 38px;
|
358 |
+
}
|
359 |
+
|
360 |
+
.chosen-rtl .chosen-single div {
|
361 |
+
right: auto;
|
362 |
+
left: 3px;
|
363 |
+
}
|
364 |
+
|
365 |
+
.chosen-rtl .chosen-single abbr {
|
366 |
+
right: auto;
|
367 |
+
left: 26px;
|
368 |
+
}
|
369 |
+
|
370 |
+
.chosen-rtl .chosen-choices li {
|
371 |
+
float: right;
|
372 |
+
}
|
373 |
+
|
374 |
+
.chosen-rtl .chosen-choices li.search-field input[type="text"] {
|
375 |
+
direction: rtl;
|
376 |
+
}
|
377 |
+
|
378 |
+
.chosen-rtl .chosen-choices li.search-choice {
|
379 |
+
margin: 3px 5px 3px 0;
|
380 |
+
padding: 3px 5px 3px 19px;
|
381 |
+
}
|
382 |
+
|
383 |
+
.chosen-rtl .chosen-choices li.search-choice .search-choice-close {
|
384 |
+
right: auto;
|
385 |
+
left: 4px;
|
386 |
+
}
|
387 |
+
|
388 |
+
.chosen-rtl.chosen-container-single .chosen-results {
|
389 |
+
margin: 0 0 4px 4px;
|
390 |
+
padding: 0 4px 0 0;
|
391 |
+
}
|
392 |
+
|
393 |
+
.chosen-rtl .chosen-results li.group-option {
|
394 |
+
padding-right: 15px;
|
395 |
+
padding-left: 0;
|
396 |
+
}
|
397 |
+
|
398 |
+
.chosen-rtl.chosen-container-active.chosen-with-drop .chosen-single div {
|
399 |
+
border-right: none;
|
400 |
+
}
|
401 |
+
|
402 |
+
.chosen-rtl .chosen-search input[type="text"] {
|
403 |
+
padding: 4px 5px 4px 20px;
|
404 |
+
direction: rtl;
|
405 |
+
}
|
vendor/codestar-framework/assets/scss/partials/_customizer.scss
CHANGED
@@ -73,9 +73,15 @@
|
|
73 |
}
|
74 |
}
|
75 |
|
76 |
-
.csf-field-date
|
|
|
|
|
|
|
|
|
|
|
77 |
|
78 |
.csf--to{
|
|
|
79 |
margin-left: 0;
|
80 |
}
|
81 |
}
|
73 |
}
|
74 |
}
|
75 |
|
76 |
+
.csf-field-date,
|
77 |
+
.csf-field-datetime{
|
78 |
+
|
79 |
+
label{
|
80 |
+
display: block;
|
81 |
+
}
|
82 |
|
83 |
.csf--to{
|
84 |
+
margin-top: 4px;
|
85 |
margin-left: 0;
|
86 |
}
|
87 |
}
|
vendor/codestar-framework/assets/scss/partials/_fields.scss
CHANGED
@@ -612,7 +612,37 @@
|
|
612 |
}
|
613 |
|
614 |
/**
|
615 |
-
* 03. 13. Field:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
616 |
*/
|
617 |
.csf-field-gallery{
|
618 |
|
@@ -646,7 +676,7 @@
|
|
646 |
}
|
647 |
|
648 |
/**
|
649 |
-
* 03.
|
650 |
*/
|
651 |
.csf-field-group{
|
652 |
|
@@ -772,7 +802,7 @@
|
|
772 |
}
|
773 |
|
774 |
/**
|
775 |
-
* 03.
|
776 |
*/
|
777 |
.csf-field-icon{
|
778 |
|
@@ -809,7 +839,7 @@
|
|
809 |
}
|
810 |
|
811 |
/**
|
812 |
-
* 03.
|
813 |
*/
|
814 |
.csf-field-image_select{
|
815 |
|
@@ -874,7 +904,7 @@
|
|
874 |
}
|
875 |
|
876 |
/**
|
877 |
-
* 03.
|
878 |
*/
|
879 |
.csf-field-link_color{
|
880 |
|
@@ -891,7 +921,7 @@
|
|
891 |
}
|
892 |
|
893 |
/**
|
894 |
-
* 03.
|
895 |
*/
|
896 |
.csf-field-map{
|
897 |
|
@@ -951,7 +981,7 @@
|
|
951 |
|
952 |
|
953 |
/**
|
954 |
-
* 03.
|
955 |
*/
|
956 |
.csf-field-media{
|
957 |
|
@@ -979,7 +1009,7 @@
|
|
979 |
}
|
980 |
|
981 |
/**
|
982 |
-
* 03.
|
983 |
*/
|
984 |
.csf-field-palette{
|
985 |
|
@@ -1038,7 +1068,7 @@
|
|
1038 |
}
|
1039 |
|
1040 |
/**
|
1041 |
-
* 03.
|
1042 |
*/
|
1043 |
.csf-field-repeater{
|
1044 |
|
@@ -1132,7 +1162,7 @@
|
|
1132 |
}
|
1133 |
|
1134 |
/**
|
1135 |
-
* 03.
|
1136 |
*/
|
1137 |
.csf-field-select{
|
1138 |
|
@@ -1155,7 +1185,7 @@
|
|
1155 |
}
|
1156 |
|
1157 |
/**
|
1158 |
-
* 03.
|
1159 |
*/
|
1160 |
.csf-field-slider{
|
1161 |
|
@@ -1235,7 +1265,7 @@
|
|
1235 |
}
|
1236 |
|
1237 |
/**
|
1238 |
-
* 03.
|
1239 |
*/
|
1240 |
.csf-field-sortable{
|
1241 |
|
@@ -1316,7 +1346,7 @@
|
|
1316 |
}
|
1317 |
|
1318 |
/**
|
1319 |
-
* 03.
|
1320 |
*/
|
1321 |
.csf-field-sorter{
|
1322 |
|
@@ -1393,7 +1423,7 @@
|
|
1393 |
}
|
1394 |
|
1395 |
/**
|
1396 |
-
* 03.
|
1397 |
*/
|
1398 |
.csf-field-spinner{
|
1399 |
|
@@ -1401,49 +1431,96 @@
|
|
1401 |
display: flex;
|
1402 |
}
|
1403 |
|
1404 |
-
.ui-
|
1405 |
-
|
1406 |
}
|
1407 |
|
1408 |
-
.ui-
|
1409 |
display: flex;
|
1410 |
-
|
1411 |
-
|
1412 |
-
|
1413 |
-
|
1414 |
-
|
1415 |
-
color: #555;
|
1416 |
-
border: 1px solid #7e8993;
|
1417 |
-
background-color: #f5f5f5;
|
1418 |
-
}
|
1419 |
|
1420 |
-
|
1421 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1422 |
|
1423 |
-
|
1424 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1425 |
}
|
1426 |
|
1427 |
-
|
1428 |
-
|
|
|
|
|
|
|
|
|
|
|
1429 |
}
|
1430 |
|
1431 |
-
|
1432 |
-
|
1433 |
-
|
1434 |
-
|
1435 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1436 |
}
|
1437 |
}
|
1438 |
|
1439 |
.ui-spinner-down{
|
1440 |
order: 1;
|
1441 |
-
border-right: 0;
|
1442 |
-
border-radius: 4px 0 0 4px;
|
1443 |
-
|
1444 |
-
&:before{
|
1445 |
-
content: "\f0d9";
|
1446 |
-
}
|
1447 |
}
|
1448 |
|
1449 |
.ui-spinner-input{
|
@@ -1452,39 +1529,15 @@
|
|
1452 |
|
1453 |
.csf--unit{
|
1454 |
order: 3;
|
1455 |
-
border-left: 0;
|
1456 |
-
user-select: none;
|
1457 |
}
|
1458 |
|
1459 |
.ui-spinner-up{
|
1460 |
order: 4;
|
1461 |
-
border-left: 0;
|
1462 |
-
border-radius: 0 4px 4px 0;
|
1463 |
-
|
1464 |
-
&:before{
|
1465 |
-
content: "\f0da";
|
1466 |
-
}
|
1467 |
-
}
|
1468 |
-
|
1469 |
-
input{
|
1470 |
-
position: relative;
|
1471 |
-
z-index: 1;
|
1472 |
-
width: 50px;
|
1473 |
-
text-align: center;
|
1474 |
-
margin: 0;
|
1475 |
-
padding: 0 8px;
|
1476 |
-
border-radius: 0;
|
1477 |
-
}
|
1478 |
-
|
1479 |
-
.ui-button-text,
|
1480 |
-
.ui-button-icon,
|
1481 |
-
.ui-button-icon-space{
|
1482 |
-
display: none;
|
1483 |
}
|
1484 |
}
|
1485 |
|
1486 |
/**
|
1487 |
-
* 03.
|
1488 |
*/
|
1489 |
.csf-field-switcher{
|
1490 |
|
@@ -1566,7 +1619,7 @@
|
|
1566 |
}
|
1567 |
|
1568 |
/**
|
1569 |
-
* 03.
|
1570 |
*/
|
1571 |
.csf-field-tabbed{
|
1572 |
|
@@ -1618,7 +1671,7 @@
|
|
1618 |
}
|
1619 |
|
1620 |
/**
|
1621 |
-
* 03.
|
1622 |
*/
|
1623 |
.csf-field-text{
|
1624 |
|
@@ -1630,7 +1683,7 @@
|
|
1630 |
}
|
1631 |
|
1632 |
/**
|
1633 |
-
* 03.
|
1634 |
*/
|
1635 |
.csf-field-textarea{
|
1636 |
|
@@ -1647,7 +1700,7 @@
|
|
1647 |
}
|
1648 |
|
1649 |
/**
|
1650 |
-
* 03.
|
1651 |
*/
|
1652 |
.csf-field-typography{
|
1653 |
|
@@ -1746,7 +1799,7 @@
|
|
1746 |
}
|
1747 |
|
1748 |
/**
|
1749 |
-
* 03.
|
1750 |
*/
|
1751 |
.csf-field-upload{
|
1752 |
|
@@ -1770,7 +1823,7 @@
|
|
1770 |
}
|
1771 |
|
1772 |
/**
|
1773 |
-
* 03.
|
1774 |
*/
|
1775 |
.csf-field-wp_editor{
|
1776 |
|
@@ -1827,7 +1880,7 @@
|
|
1827 |
}
|
1828 |
|
1829 |
/**
|
1830 |
-
* 03.
|
1831 |
*/
|
1832 |
.csf-field-heading{
|
1833 |
font-size: 1.5em;
|
@@ -1837,7 +1890,7 @@
|
|
1837 |
}
|
1838 |
|
1839 |
/**
|
1840 |
-
* 03.
|
1841 |
*/
|
1842 |
.csf-field-subheading{
|
1843 |
font-size: 14px;
|
@@ -1849,7 +1902,7 @@
|
|
1849 |
}
|
1850 |
|
1851 |
/**
|
1852 |
-
* 03.
|
1853 |
*/
|
1854 |
.csf-field-submessage{
|
1855 |
padding: 0 !important;
|
@@ -1898,7 +1951,7 @@
|
|
1898 |
}
|
1899 |
|
1900 |
/**
|
1901 |
-
* 03.
|
1902 |
*/
|
1903 |
.csf-field-notice{
|
1904 |
background-color: #f7f7f7;
|
@@ -1933,7 +1986,7 @@
|
|
1933 |
}
|
1934 |
|
1935 |
/**
|
1936 |
-
* 03.
|
1937 |
*/
|
1938 |
.csf-field-number{
|
1939 |
|
@@ -1968,7 +2021,7 @@
|
|
1968 |
}
|
1969 |
|
1970 |
/**
|
1971 |
-
* 03.
|
1972 |
*/
|
1973 |
.csf-field-link{
|
1974 |
|
@@ -2011,7 +2064,7 @@
|
|
2011 |
}
|
2012 |
|
2013 |
/**
|
2014 |
-
* 03.
|
2015 |
*/
|
2016 |
.csf-help{
|
2017 |
cursor: help;
|
612 |
}
|
613 |
|
614 |
/**
|
615 |
+
* 03. 13. Field: datetime
|
616 |
+
*/
|
617 |
+
.csf-field-datetime{
|
618 |
+
|
619 |
+
input{
|
620 |
+
margin: 0;
|
621 |
+
}
|
622 |
+
|
623 |
+
.csf--to{
|
624 |
+
margin-left: 7px;
|
625 |
+
}
|
626 |
+
}
|
627 |
+
|
628 |
+
.csf-flatpickr{
|
629 |
+
|
630 |
+
select,
|
631 |
+
input{
|
632 |
+
min-height: auto;
|
633 |
+
|
634 |
+
&:focus{
|
635 |
+
box-shadow: none;
|
636 |
+
}
|
637 |
+
}
|
638 |
+
|
639 |
+
&.open{
|
640 |
+
z-index: 9999999 !important;
|
641 |
+
}
|
642 |
+
}
|
643 |
+
|
644 |
+
/**
|
645 |
+
* 03. 14. Field: gallery
|
646 |
*/
|
647 |
.csf-field-gallery{
|
648 |
|
676 |
}
|
677 |
|
678 |
/**
|
679 |
+
* 03. 15. Field: group
|
680 |
*/
|
681 |
.csf-field-group{
|
682 |
|
802 |
}
|
803 |
|
804 |
/**
|
805 |
+
* 03. 16. Field: icon
|
806 |
*/
|
807 |
.csf-field-icon{
|
808 |
|
839 |
}
|
840 |
|
841 |
/**
|
842 |
+
* 03. 17. Field: image_select
|
843 |
*/
|
844 |
.csf-field-image_select{
|
845 |
|
904 |
}
|
905 |
|
906 |
/**
|
907 |
+
* 03. 18. Field: link_color
|
908 |
*/
|
909 |
.csf-field-link_color{
|
910 |
|
921 |
}
|
922 |
|
923 |
/**
|
924 |
+
* 03. 19. Field: map
|
925 |
*/
|
926 |
.csf-field-map{
|
927 |
|
981 |
|
982 |
|
983 |
/**
|
984 |
+
* 03. 20. Field: media
|
985 |
*/
|
986 |
.csf-field-media{
|
987 |
|
1009 |
}
|
1010 |
|
1011 |
/**
|
1012 |
+
* 03. 21. Field: palette
|
1013 |
*/
|
1014 |
.csf-field-palette{
|
1015 |
|
1068 |
}
|
1069 |
|
1070 |
/**
|
1071 |
+
* 03. 22. Field: repeater
|
1072 |
*/
|
1073 |
.csf-field-repeater{
|
1074 |
|
1162 |
}
|
1163 |
|
1164 |
/**
|
1165 |
+
* 03. 23. Field: select
|
1166 |
*/
|
1167 |
.csf-field-select{
|
1168 |
|
1185 |
}
|
1186 |
|
1187 |
/**
|
1188 |
+
* 03. 24. Field: slider
|
1189 |
*/
|
1190 |
.csf-field-slider{
|
1191 |
|
1265 |
}
|
1266 |
|
1267 |
/**
|
1268 |
+
* 03. 25. Field: sortable
|
1269 |
*/
|
1270 |
.csf-field-sortable{
|
1271 |
|
1346 |
}
|
1347 |
|
1348 |
/**
|
1349 |
+
* 03. 26. Field: sorter
|
1350 |
*/
|
1351 |
.csf-field-sorter{
|
1352 |
|
1423 |
}
|
1424 |
|
1425 |
/**
|
1426 |
+
* 03. 27. Field: spinner
|
1427 |
*/
|
1428 |
.csf-field-spinner{
|
1429 |
|
1431 |
display: flex;
|
1432 |
}
|
1433 |
|
1434 |
+
.ui-widget{
|
1435 |
+
font-family: inherit;
|
1436 |
}
|
1437 |
|
1438 |
+
.ui-spinner{
|
1439 |
display: flex;
|
1440 |
+
align-items: stretch;
|
1441 |
+
overflow: unset;
|
1442 |
+
border: none;
|
1443 |
+
background: none;
|
1444 |
+
border-radius: 0;
|
|
|
|
|
|
|
|
|
1445 |
|
1446 |
+
.ui-button{
|
1447 |
+
display: flex;
|
1448 |
+
flex-direction: column;
|
1449 |
+
justify-content: center;
|
1450 |
+
text-align: center;
|
1451 |
+
min-width: 20px;
|
1452 |
+
padding: 0 4px;
|
1453 |
+
margin: 0;
|
1454 |
+
color: #555;
|
1455 |
+
background-color: #f5f5f5;
|
1456 |
+
border: 1px solid #7e8993;
|
1457 |
+
}
|
1458 |
|
1459 |
+
.ui-spinner-button{
|
1460 |
+
position: relative;
|
1461 |
+
cursor: pointer;
|
1462 |
+
height: auto;
|
1463 |
+
|
1464 |
+
&:hover{
|
1465 |
+
background-color: #e7e7e7;
|
1466 |
+
}
|
1467 |
+
|
1468 |
+
&:active{
|
1469 |
+
background-color: #ddd;
|
1470 |
+
}
|
1471 |
+
|
1472 |
+
&:before{
|
1473 |
+
font-family: "Font Awesome 5 Pro", "Font Awesome 5 Free", "FontAwesome";
|
1474 |
+
font-weight: 900;
|
1475 |
+
font-size: 14px;
|
1476 |
+
line-height: 14px;
|
1477 |
+
}
|
1478 |
}
|
1479 |
|
1480 |
+
.ui-spinner-down{
|
1481 |
+
border-right: 0;
|
1482 |
+
border-radius: 4px 0 0 4px;
|
1483 |
+
|
1484 |
+
&:before{
|
1485 |
+
content: "\f0d9";
|
1486 |
+
}
|
1487 |
}
|
1488 |
|
1489 |
+
.ui-spinner-up{
|
1490 |
+
border-left: 0;
|
1491 |
+
border-radius: 0 4px 4px 0;
|
1492 |
+
|
1493 |
+
&:before{
|
1494 |
+
content: "\f0da";
|
1495 |
+
}
|
1496 |
+
}
|
1497 |
+
|
1498 |
+
.csf--unit{
|
1499 |
+
border-left: 0;
|
1500 |
+
user-select: none;
|
1501 |
+
}
|
1502 |
+
|
1503 |
+
.ui-button-text,
|
1504 |
+
.ui-button-icon,
|
1505 |
+
.ui-button-icon-space{
|
1506 |
+
display: none;
|
1507 |
+
}
|
1508 |
+
|
1509 |
+
input{
|
1510 |
+
font-family: inherit;
|
1511 |
+
font-size: inherit;
|
1512 |
+
position: relative;
|
1513 |
+
z-index: 1;
|
1514 |
+
width: 50px;
|
1515 |
+
text-align: center;
|
1516 |
+
margin: 0;
|
1517 |
+
padding: 0 8px;
|
1518 |
+
border-radius: 0;
|
1519 |
}
|
1520 |
}
|
1521 |
|
1522 |
.ui-spinner-down{
|
1523 |
order: 1;
|
|
|
|
|
|
|
|
|
|
|
|
|
1524 |
}
|
1525 |
|
1526 |
.ui-spinner-input{
|
1529 |
|
1530 |
.csf--unit{
|
1531 |
order: 3;
|
|
|
|
|
1532 |
}
|
1533 |
|
1534 |
.ui-spinner-up{
|
1535 |
order: 4;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1536 |
}
|
1537 |
}
|
1538 |
|
1539 |
/**
|
1540 |
+
* 03. 28. Field: switcher
|
1541 |
*/
|
1542 |
.csf-field-switcher{
|
1543 |
|
1619 |
}
|
1620 |
|
1621 |
/**
|
1622 |
+
* 03. 29. Field: tabbed
|
1623 |
*/
|
1624 |
.csf-field-tabbed{
|
1625 |
|
1671 |
}
|
1672 |
|
1673 |
/**
|
1674 |
+
* 03. 30. Field: text
|
1675 |
*/
|
1676 |
.csf-field-text{
|
1677 |
|
1683 |
}
|
1684 |
|
1685 |
/**
|
1686 |
+
* 03. 31. Field: textarea
|
1687 |
*/
|
1688 |
.csf-field-textarea{
|
1689 |
|
1700 |
}
|
1701 |
|
1702 |
/**
|
1703 |
+
* 03. 32. Field: typography
|
1704 |
*/
|
1705 |
.csf-field-typography{
|
1706 |
|
1799 |
}
|
1800 |
|
1801 |
/**
|
1802 |
+
* 03. 33. Field: upload
|
1803 |
*/
|
1804 |
.csf-field-upload{
|
1805 |
|
1823 |
}
|
1824 |
|
1825 |
/**
|
1826 |
+
* 03. 34. Field: wp_editor
|
1827 |
*/
|
1828 |
.csf-field-wp_editor{
|
1829 |
|
1880 |
}
|
1881 |
|
1882 |
/**
|
1883 |
+
* 03. 35. Field: heading
|
1884 |
*/
|
1885 |
.csf-field-heading{
|
1886 |
font-size: 1.5em;
|
1890 |
}
|
1891 |
|
1892 |
/**
|
1893 |
+
* 03. 36. Field: subheading
|
1894 |
*/
|
1895 |
.csf-field-subheading{
|
1896 |
font-size: 14px;
|
1902 |
}
|
1903 |
|
1904 |
/**
|
1905 |
+
* 03. 37. Field: submessage
|
1906 |
*/
|
1907 |
.csf-field-submessage{
|
1908 |
padding: 0 !important;
|
1951 |
}
|
1952 |
|
1953 |
/**
|
1954 |
+
* 03. 38. Field: notice
|
1955 |
*/
|
1956 |
.csf-field-notice{
|
1957 |
background-color: #f7f7f7;
|
1986 |
}
|
1987 |
|
1988 |
/**
|
1989 |
+
* 03. 39. Field: number
|
1990 |
*/
|
1991 |
.csf-field-number{
|
1992 |
|
2021 |
}
|
2022 |
|
2023 |
/**
|
2024 |
+
* 03. 40. Field: link
|
2025 |
*/
|
2026 |
.csf-field-link{
|
2027 |
|
2064 |
}
|
2065 |
|
2066 |
/**
|
2067 |
+
* 03. 41. others
|
2068 |
*/
|
2069 |
.csf-help{
|
2070 |
cursor: help;
|
vendor/codestar-framework/assets/scss/partials/_flatpickr.scss
ADDED
@@ -0,0 +1,794 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* Flatpickr
|
3 |
+
*/
|
4 |
+
.flatpickr-calendar {
|
5 |
+
background: transparent;
|
6 |
+
opacity: 0;
|
7 |
+
display: none;
|
8 |
+
text-align: center;
|
9 |
+
visibility: hidden;
|
10 |
+
padding: 0;
|
11 |
+
-webkit-animation: none;
|
12 |
+
animation: none;
|
13 |
+
direction: ltr;
|
14 |
+
border: 0;
|
15 |
+
font-size: 14px;
|
16 |
+
line-height: 24px;
|
17 |
+
border-radius: 5px;
|
18 |
+
position: absolute;
|
19 |
+
width: 307.875px;
|
20 |
+
-webkit-box-sizing: border-box;
|
21 |
+
box-sizing: border-box;
|
22 |
+
-ms-touch-action: manipulation;
|
23 |
+
touch-action: manipulation;
|
24 |
+
background: #fff;
|
25 |
+
-webkit-box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0,0,0,0.08);
|
26 |
+
box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0,0,0,0.08);
|
27 |
+
}
|
28 |
+
.flatpickr-calendar.open,
|
29 |
+
.flatpickr-calendar.inline {
|
30 |
+
opacity: 1;
|
31 |
+
max-height: 640px;
|
32 |
+
visibility: visible;
|
33 |
+
}
|
34 |
+
.flatpickr-calendar.open {
|
35 |
+
display: inline-block;
|
36 |
+
z-index: 99999;
|
37 |
+
}
|
38 |
+
.flatpickr-calendar.animate.open {
|
39 |
+
-webkit-animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);
|
40 |
+
animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);
|
41 |
+
}
|
42 |
+
.flatpickr-calendar.inline {
|
43 |
+
display: block;
|
44 |
+
position: relative;
|
45 |
+
top: 2px;
|
46 |
+
}
|
47 |
+
.flatpickr-calendar.static {
|
48 |
+
position: absolute;
|
49 |
+
top: calc(100% + 2px);
|
50 |
+
}
|
51 |
+
.flatpickr-calendar.static.open {
|
52 |
+
z-index: 999;
|
53 |
+
display: block;
|
54 |
+
}
|
55 |
+
.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7) {
|
56 |
+
-webkit-box-shadow: none !important;
|
57 |
+
box-shadow: none !important;
|
58 |
+
}
|
59 |
+
.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1) {
|
60 |
+
-webkit-box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
|
61 |
+
box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
|
62 |
+
}
|
63 |
+
.flatpickr-calendar .hasWeeks .dayContainer,
|
64 |
+
.flatpickr-calendar .hasTime .dayContainer {
|
65 |
+
border-bottom: 0;
|
66 |
+
border-bottom-right-radius: 0;
|
67 |
+
border-bottom-left-radius: 0;
|
68 |
+
}
|
69 |
+
.flatpickr-calendar .hasWeeks .dayContainer {
|
70 |
+
border-left: 0;
|
71 |
+
}
|
72 |
+
.flatpickr-calendar.hasTime .flatpickr-time {
|
73 |
+
height: 40px;
|
74 |
+
border-top: 1px solid #e6e6e6;
|
75 |
+
}
|
76 |
+
.flatpickr-calendar.noCalendar.hasTime .flatpickr-time {
|
77 |
+
height: auto;
|
78 |
+
}
|
79 |
+
.flatpickr-calendar:before,
|
80 |
+
.flatpickr-calendar:after {
|
81 |
+
position: absolute;
|
82 |
+
display: block;
|
83 |
+
pointer-events: none;
|
84 |
+
border: solid transparent;
|
85 |
+
content: '';
|
86 |
+
height: 0;
|
87 |
+
width: 0;
|
88 |
+
left: 22px;
|
89 |
+
}
|
90 |
+
.flatpickr-calendar.rightMost:before,
|
91 |
+
.flatpickr-calendar.arrowRight:before,
|
92 |
+
.flatpickr-calendar.rightMost:after,
|
93 |
+
.flatpickr-calendar.arrowRight:after {
|
94 |
+
left: auto;
|
95 |
+
right: 22px;
|
96 |
+
}
|
97 |
+
.flatpickr-calendar.arrowCenter:before,
|
98 |
+
.flatpickr-calendar.arrowCenter:after {
|
99 |
+
left: 50%;
|
100 |
+
right: 50%;
|
101 |
+
}
|
102 |
+
.flatpickr-calendar:before {
|
103 |
+
border-width: 5px;
|
104 |
+
margin: 0 -5px;
|
105 |
+
}
|
106 |
+
.flatpickr-calendar:after {
|
107 |
+
border-width: 4px;
|
108 |
+
margin: 0 -4px;
|
109 |
+
}
|
110 |
+
.flatpickr-calendar.arrowTop:before,
|
111 |
+
.flatpickr-calendar.arrowTop:after {
|
112 |
+
bottom: 100%;
|
113 |
+
}
|
114 |
+
.flatpickr-calendar.arrowTop:before {
|
115 |
+
border-bottom-color: #e6e6e6;
|
116 |
+
}
|
117 |
+
.flatpickr-calendar.arrowTop:after {
|
118 |
+
border-bottom-color: #fff;
|
119 |
+
}
|
120 |
+
.flatpickr-calendar.arrowBottom:before,
|
121 |
+
.flatpickr-calendar.arrowBottom:after {
|
122 |
+
top: 100%;
|
123 |
+
}
|
124 |
+
.flatpickr-calendar.arrowBottom:before {
|
125 |
+
border-top-color: #e6e6e6;
|
126 |
+
}
|
127 |
+
.flatpickr-calendar.arrowBottom:after {
|
128 |
+
border-top-color: #fff;
|
129 |
+
}
|
130 |
+
.flatpickr-calendar:focus {
|
131 |
+
outline: 0;
|
132 |
+
}
|
133 |
+
.flatpickr-wrapper {
|
134 |
+
position: relative;
|
135 |
+
display: inline-block;
|
136 |
+
}
|
137 |
+
.flatpickr-months {
|
138 |
+
display: -webkit-box;
|
139 |
+
display: -webkit-flex;
|
140 |
+
display: -ms-flexbox;
|
141 |
+
display: flex;
|
142 |
+
}
|
143 |
+
.flatpickr-months .flatpickr-month {
|
144 |
+
background: transparent;
|
145 |
+
color: rgba(0,0,0,0.9);
|
146 |
+
fill: rgba(0,0,0,0.9);
|
147 |
+
height: 34px;
|
148 |
+
line-height: 1;
|
149 |
+
text-align: center;
|
150 |
+
position: relative;
|
151 |
+
-webkit-user-select: none;
|
152 |
+
-moz-user-select: none;
|
153 |
+
-ms-user-select: none;
|
154 |
+
user-select: none;
|
155 |
+
overflow: hidden;
|
156 |
+
-webkit-box-flex: 1;
|
157 |
+
-webkit-flex: 1;
|
158 |
+
-ms-flex: 1;
|
159 |
+
flex: 1;
|
160 |
+
}
|
161 |
+
.flatpickr-months .flatpickr-prev-month,
|
162 |
+
.flatpickr-months .flatpickr-next-month {
|
163 |
+
text-decoration: none;
|
164 |
+
cursor: pointer;
|
165 |
+
position: absolute;
|
166 |
+
top: 0;
|
167 |
+
height: 34px;
|
168 |
+
padding: 10px;
|
169 |
+
z-index: 3;
|
170 |
+
color: rgba(0,0,0,0.9);
|
171 |
+
fill: rgba(0,0,0,0.9);
|
172 |
+
}
|
173 |
+
.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,
|
174 |
+
.flatpickr-months .flatpickr-next-month.flatpickr-disabled {
|
175 |
+
display: none;
|
176 |
+
}
|
177 |
+
.flatpickr-months .flatpickr-prev-month i,
|
178 |
+
.flatpickr-months .flatpickr-next-month i {
|
179 |
+
position: relative;
|
180 |
+
}
|
181 |
+
.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,
|
182 |
+
.flatpickr-months .flatpickr-next-month.flatpickr-prev-month {
|
183 |
+
/*
|
184 |
+
/*rtl:begin:ignore*/
|
185 |
+
/*
|
186 |
+
*/
|
187 |
+
left: 0;
|
188 |
+
/*
|
189 |
+
/*rtl:end:ignore*/
|
190 |
+
/*
|
191 |
+
*/
|
192 |
+
}
|
193 |
+
/*
|
194 |
+
/*rtl:begin:ignore*/
|
195 |
+
/*
|
196 |
+
/*rtl:end:ignore*/
|
197 |
+
.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,
|
198 |
+
.flatpickr-months .flatpickr-next-month.flatpickr-next-month {
|
199 |
+
/*
|
200 |
+
/*rtl:begin:ignore*/
|
201 |
+
/*
|
202 |
+
*/
|
203 |
+
right: 0;
|
204 |
+
/*
|
205 |
+
/*rtl:end:ignore*/
|
206 |
+
/*
|
207 |
+
*/
|
208 |
+
}
|
209 |
+
/*
|
210 |
+
/*rtl:begin:ignore*/
|
211 |
+
/*
|
212 |
+
/*rtl:end:ignore*/
|
213 |
+
.flatpickr-months .flatpickr-prev-month:hover,
|
214 |
+
.flatpickr-months .flatpickr-next-month:hover {
|
215 |
+
color: #959ea9;
|
216 |
+
}
|
217 |
+
.flatpickr-months .flatpickr-prev-month:hover svg,
|
218 |
+
.flatpickr-months .flatpickr-next-month:hover svg {
|
219 |
+
fill: #f64747;
|
220 |
+
}
|
221 |
+
.flatpickr-months .flatpickr-prev-month svg,
|
222 |
+
.flatpickr-months .flatpickr-next-month svg {
|
223 |
+
width: 14px;
|
224 |
+
height: 14px;
|
225 |
+
}
|
226 |
+
.flatpickr-months .flatpickr-prev-month svg path,
|
227 |
+
.flatpickr-months .flatpickr-next-month svg path {
|
228 |
+
-webkit-transition: fill 0.1s;
|
229 |
+
transition: fill 0.1s;
|
230 |
+
fill: inherit;
|
231 |
+
}
|
232 |
+
.numInputWrapper {
|
233 |
+
position: relative;
|
234 |
+
height: auto;
|
235 |
+
}
|
236 |
+
.numInputWrapper input,
|
237 |
+
.numInputWrapper span {
|
238 |
+
display: inline-block;
|
239 |
+
}
|
240 |
+
.numInputWrapper input {
|
241 |
+
width: 100%;
|
242 |
+
}
|
243 |
+
.numInputWrapper input::-ms-clear {
|
244 |
+
display: none;
|
245 |
+
}
|
246 |
+
.numInputWrapper input::-webkit-outer-spin-button,
|
247 |
+
.numInputWrapper input::-webkit-inner-spin-button {
|
248 |
+
margin: 0;
|
249 |
+
-webkit-appearance: none;
|
250 |
+
}
|
251 |
+
.numInputWrapper span {
|
252 |
+
position: absolute;
|
253 |
+
right: 0;
|
254 |
+
width: 14px;
|
255 |
+
padding: 0 4px 0 2px;
|
256 |
+
height: 50%;
|
257 |
+
line-height: 50%;
|
258 |
+
opacity: 0;
|
259 |
+
cursor: pointer;
|
260 |
+
border: 1px solid rgba(57,57,57,0.15);
|
261 |
+
-webkit-box-sizing: border-box;
|
262 |
+
box-sizing: border-box;
|
263 |
+
}
|
264 |
+
.numInputWrapper span:hover {
|
265 |
+
background: rgba(0,0,0,0.1);
|
266 |
+
}
|
267 |
+
.numInputWrapper span:active {
|
268 |
+
background: rgba(0,0,0,0.2);
|
269 |
+
}
|
270 |
+
.numInputWrapper span:after {
|
271 |
+
display: block;
|
272 |
+
content: "";
|
273 |
+
position: absolute;
|
274 |
+
}
|
275 |
+
.numInputWrapper span.arrowUp {
|
276 |
+
top: 0;
|
277 |
+
border-bottom: 0;
|
278 |
+
}
|
279 |
+
.numInputWrapper span.arrowUp:after {
|
280 |
+
border-left: 4px solid transparent;
|
281 |
+
border-right: 4px solid transparent;
|
282 |
+
border-bottom: 4px solid rgba(57,57,57,0.6);
|
283 |
+
top: 26%;
|
284 |
+
}
|
285 |
+
.numInputWrapper span.arrowDown {
|
286 |
+
top: 50%;
|
287 |
+
}
|
288 |
+
.numInputWrapper span.arrowDown:after {
|
289 |
+
border-left: 4px solid transparent;
|
290 |
+
border-right: 4px solid transparent;
|
291 |
+
border-top: 4px solid rgba(57,57,57,0.6);
|
292 |
+
top: 40%;
|
293 |
+
}
|
294 |
+
.numInputWrapper span svg {
|
295 |
+
width: inherit;
|
296 |
+
height: auto;
|
297 |
+
}
|
298 |
+
.numInputWrapper span svg path {
|
299 |
+
fill: rgba(0,0,0,0.5);
|
300 |
+
}
|
301 |
+
.numInputWrapper:hover {
|
302 |
+
background: rgba(0,0,0,0.05);
|
303 |
+
}
|
304 |
+
.numInputWrapper:hover span {
|
305 |
+
opacity: 1;
|
306 |
+
}
|
307 |
+
.flatpickr-current-month {
|
308 |
+
font-size: 135%;
|
309 |
+
line-height: inherit;
|
310 |
+
font-weight: 300;
|
311 |
+
color: inherit;
|
312 |
+
position: absolute;
|
313 |
+
width: 75%;
|
314 |
+
left: 12.5%;
|
315 |
+
padding: 7.48px 0 0 0;
|
316 |
+
line-height: 1;
|
317 |
+
height: 34px;
|
318 |
+
display: inline-block;
|
319 |
+
text-align: center;
|
320 |
+
-webkit-transform: translate3d(0px, 0px, 0px);
|
321 |
+
transform: translate3d(0px, 0px, 0px);
|
322 |
+
}
|
323 |
+
.flatpickr-current-month span.cur-month {
|
324 |
+
font-family: inherit;
|
325 |
+
font-weight: 700;
|
326 |
+
color: inherit;
|
327 |
+
display: inline-block;
|
328 |
+
margin-left: 0.5ch;
|
329 |
+
padding: 0;
|
330 |
+
}
|
331 |
+
.flatpickr-current-month span.cur-month:hover {
|
332 |
+
background: rgba(0,0,0,0.05);
|
333 |
+
}
|
334 |
+
.flatpickr-current-month .numInputWrapper {
|
335 |
+
width: 6ch;
|
336 |
+
width: 7ch\0;
|
337 |
+
display: inline-block;
|
338 |
+
}
|
339 |
+
.flatpickr-current-month .numInputWrapper span.arrowUp:after {
|
340 |
+
border-bottom-color: rgba(0,0,0,0.9);
|
341 |
+
}
|
342 |
+
.flatpickr-current-month .numInputWrapper span.arrowDown:after {
|
343 |
+
border-top-color: rgba(0,0,0,0.9);
|
344 |
+
}
|
345 |
+
.flatpickr-current-month input.cur-year {
|
346 |
+
background: transparent;
|
347 |
+
-webkit-box-sizing: border-box;
|
348 |
+
box-sizing: border-box;
|
349 |
+
color: inherit;
|
350 |
+
cursor: text;
|
351 |
+
padding: 0 0 0 0.5ch;
|
352 |
+
margin: 0;
|
353 |
+
display: inline-block;
|
354 |
+
font-size: inherit;
|
355 |
+
font-family: inherit;
|
356 |
+
font-weight: 300;
|
357 |
+
line-height: inherit;
|
358 |
+
height: auto;
|
359 |
+
border: 0;
|
360 |
+
border-radius: 0;
|
361 |
+
vertical-align: initial;
|
362 |
+
-webkit-appearance: textfield;
|
363 |
+
-moz-appearance: textfield;
|
364 |
+
appearance: textfield;
|
365 |
+
}
|
366 |
+
.flatpickr-current-month input.cur-year:focus {
|
367 |
+
outline: 0;
|
368 |
+
}
|
369 |
+
.flatpickr-current-month input.cur-year[disabled],
|
370 |
+
.flatpickr-current-month input.cur-year[disabled]:hover {
|
371 |
+
font-size: 100%;
|
372 |
+
color: rgba(0,0,0,0.5);
|
373 |
+
background: transparent;
|
374 |
+
pointer-events: none;
|
375 |
+
}
|
376 |
+
.flatpickr-current-month .flatpickr-monthDropdown-months {
|
377 |
+
appearance: menulist;
|
378 |
+
background: transparent;
|
379 |
+
border: none;
|
380 |
+
border-radius: 0;
|
381 |
+
box-sizing: border-box;
|
382 |
+
color: inherit;
|
383 |
+
cursor: pointer;
|
384 |
+
font-size: inherit;
|
385 |
+
font-family: inherit;
|
386 |
+
font-weight: 300;
|
387 |
+
height: auto;
|
388 |
+
line-height: inherit;
|
389 |
+
margin: -1px 0 0 0;
|
390 |
+
outline: none;
|
391 |
+
padding: 0 0 0 0.5ch;
|
392 |
+
position: relative;
|
393 |
+
vertical-align: initial;
|
394 |
+
-webkit-box-sizing: border-box;
|
395 |
+
-webkit-appearance: menulist;
|
396 |
+
-moz-appearance: menulist;
|
397 |
+
width: auto;
|
398 |
+
}
|
399 |
+
.flatpickr-current-month .flatpickr-monthDropdown-months:focus,
|
400 |
+
.flatpickr-current-month .flatpickr-monthDropdown-months:active {
|
401 |
+
outline: none;
|
402 |
+
}
|
403 |
+
.flatpickr-current-month .flatpickr-monthDropdown-months:hover {
|
404 |
+
background: rgba(0,0,0,0.05);
|
405 |
+
}
|
406 |
+
.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month {
|
407 |
+
background-color: transparent;
|
408 |
+
outline: none;
|
409 |
+
padding: 0;
|
410 |
+
}
|
411 |
+
.flatpickr-weekdays {
|
412 |
+
background: transparent;
|
413 |
+
text-align: center;
|
414 |
+
overflow: hidden;
|
415 |
+
width: 100%;
|
416 |
+
display: -webkit-box;
|
417 |
+
display: -webkit-flex;
|
418 |
+
display: -ms-flexbox;
|
419 |
+
display: flex;
|
420 |
+
-webkit-box-align: center;
|
421 |
+
-webkit-align-items: center;
|
422 |
+
-ms-flex-align: center;
|
423 |
+
align-items: center;
|
424 |
+
height: 28px;
|
425 |
+
}
|
426 |
+
.flatpickr-weekdays .flatpickr-weekdaycontainer {
|
427 |
+
display: -webkit-box;
|
428 |
+
display: -webkit-flex;
|
429 |
+
display: -ms-flexbox;
|
430 |
+
display: flex;
|
431 |
+
-webkit-box-flex: 1;
|
432 |
+
-webkit-flex: 1;
|
433 |
+
-ms-flex: 1;
|
434 |
+
flex: 1;
|
435 |
+
}
|
436 |
+
span.flatpickr-weekday {
|
437 |
+
cursor: default;
|
438 |
+
font-size: 90%;
|
439 |
+
background: transparent;
|
440 |
+
color: rgba(0,0,0,0.54);
|
441 |
+
line-height: 1;
|
442 |
+
margin: 0;
|
443 |
+
text-align: center;
|
444 |
+
display: block;
|
445 |
+
-webkit-box-flex: 1;
|
446 |
+
-webkit-flex: 1;
|
447 |
+
-ms-flex: 1;
|
448 |
+
flex: 1;
|
449 |
+
font-weight: bolder;
|
450 |
+
}
|
451 |
+
.dayContainer,
|
452 |
+
.flatpickr-weeks {
|
453 |
+
padding: 1px 0 0 0;
|
454 |
+
}
|
455 |
+
.flatpickr-days {
|
456 |
+
position: relative;
|
457 |
+
overflow: hidden;
|
458 |
+
display: -webkit-box;
|
459 |
+
display: -webkit-flex;
|
460 |
+
display: -ms-flexbox;
|
461 |
+
display: flex;
|
462 |
+
-webkit-box-align: start;
|
463 |
+
-webkit-align-items: flex-start;
|
464 |
+
-ms-flex-align: start;
|
465 |
+
align-items: flex-start;
|
466 |
+
width: 307.875px;
|
467 |
+
}
|
468 |
+
.flatpickr-days:focus {
|
469 |
+
outline: 0;
|
470 |
+
}
|
471 |
+
.dayContainer {
|
472 |
+
padding: 0;
|
473 |
+
outline: 0;
|
474 |
+
text-align: left;
|
475 |
+
width: 307.875px;
|
476 |
+
min-width: 307.875px;
|
477 |
+
max-width: 307.875px;
|
478 |
+
-webkit-box-sizing: border-box;
|
479 |
+
box-sizing: border-box;
|
480 |
+
display: inline-block;
|
481 |
+
display: -ms-flexbox;
|
482 |
+
display: -webkit-box;
|
483 |
+
display: -webkit-flex;
|
484 |
+
display: flex;
|
485 |
+
-webkit-flex-wrap: wrap;
|
486 |
+
flex-wrap: wrap;
|
487 |
+
-ms-flex-wrap: wrap;
|
488 |
+
-ms-flex-pack: justify;
|
489 |
+
-webkit-justify-content: space-around;
|
490 |
+
justify-content: space-around;
|
491 |
+
-webkit-transform: translate3d(0px, 0px, 0px);
|
492 |
+
transform: translate3d(0px, 0px, 0px);
|
493 |
+
opacity: 1;
|
494 |
+
}
|
495 |
+
.dayContainer + .dayContainer {
|
496 |
+
-webkit-box-shadow: -1px 0 0 #e6e6e6;
|
497 |
+
box-shadow: -1px 0 0 #e6e6e6;
|
498 |
+
}
|
499 |
+
.flatpickr-day {
|
500 |
+
background: none;
|
501 |
+
border: 1px solid transparent;
|
502 |
+
border-radius: 150px;
|
503 |
+
-webkit-box-sizing: border-box;
|
504 |
+
box-sizing: border-box;
|
505 |
+
color: #393939;
|
506 |
+
cursor: pointer;
|
507 |
+
font-weight: 400;
|
508 |
+
width: 14.2857143%;
|
509 |
+
-webkit-flex-basis: 14.2857143%;
|
510 |
+
-ms-flex-preferred-size: 14.2857143%;
|
511 |
+
flex-basis: 14.2857143%;
|
512 |
+
max-width: 39px;
|
513 |
+
height: 39px;
|
514 |
+
line-height: 39px;
|
515 |
+
margin: 0;
|
516 |
+
display: inline-block;
|
517 |
+
position: relative;
|
518 |
+
-webkit-box-pack: center;
|
519 |
+
-webkit-justify-content: center;
|
520 |
+
-ms-flex-pack: center;
|
521 |
+
justify-content: center;
|
522 |
+
text-align: center;
|
523 |
+
}
|
524 |
+
.flatpickr-day.inRange,
|
525 |
+
.flatpickr-day.prevMonthDay.inRange,
|
526 |
+
.flatpickr-day.nextMonthDay.inRange,
|
527 |
+
.flatpickr-day.today.inRange,
|
528 |
+
.flatpickr-day.prevMonthDay.today.inRange,
|
529 |
+
.flatpickr-day.nextMonthDay.today.inRange,
|
530 |
+
.flatpickr-day:hover,
|
531 |
+
.flatpickr-day.prevMonthDay:hover,
|
532 |
+
.flatpickr-day.nextMonthDay:hover,
|
533 |
+
.flatpickr-day:focus,
|
534 |
+
.flatpickr-day.prevMonthDay:focus,
|
535 |
+
.flatpickr-day.nextMonthDay:focus {
|
536 |
+
cursor: pointer;
|
537 |
+
outline: 0;
|
538 |
+
background: #e6e6e6;
|
539 |
+
border-color: #e6e6e6;
|
540 |
+
}
|
541 |
+
.flatpickr-day.today {
|
542 |
+
border-color: #959ea9;
|
543 |
+
}
|
544 |
+
.flatpickr-day.today:hover,
|
545 |
+
.flatpickr-day.today:focus {
|
546 |
+
border-color: #959ea9;
|
547 |
+
background: #959ea9;
|
548 |
+
color: #fff;
|
549 |
+
}
|
550 |
+
.flatpickr-day.selected,
|
551 |
+
.flatpickr-day.startRange,
|
552 |
+
.flatpickr-day.endRange,
|
553 |
+
.flatpickr-day.selected.inRange,
|
554 |
+
.flatpickr-day.startRange.inRange,
|
555 |
+
.flatpickr-day.endRange.inRange,
|
556 |
+
.flatpickr-day.selected:focus,
|
557 |
+
.flatpickr-day.startRange:focus,
|
558 |
+
.flatpickr-day.endRange:focus,
|
559 |
+
.flatpickr-day.selected:hover,
|
560 |
+
.flatpickr-day.startRange:hover,
|
561 |
+
.flatpickr-day.endRange:hover,
|
562 |
+
.flatpickr-day.selected.prevMonthDay,
|
563 |
+
.flatpickr-day.startRange.prevMonthDay,
|
564 |
+
.flatpickr-day.endRange.prevMonthDay,
|
565 |
+
.flatpickr-day.selected.nextMonthDay,
|
566 |
+
.flatpickr-day.startRange.nextMonthDay,
|
567 |
+
.flatpickr-day.endRange.nextMonthDay {
|
568 |
+
background: #569ff7;
|
569 |
+
-webkit-box-shadow: none;
|
570 |
+
box-shadow: none;
|
571 |
+
color: #fff;
|
572 |
+
border-color: #569ff7;
|
573 |
+
}
|
574 |
+
.flatpickr-day.selected.startRange,
|
575 |
+
.flatpickr-day.startRange.startRange,
|
576 |
+
.flatpickr-day.endRange.startRange {
|
577 |
+
border-radius: 50px 0 0 50px;
|
578 |
+
}
|
579 |
+
.flatpickr-day.selected.endRange,
|
580 |
+
.flatpickr-day.startRange.endRange,
|
581 |
+
.flatpickr-day.endRange.endRange {
|
582 |
+
border-radius: 0 50px 50px 0;
|
583 |
+
}
|
584 |
+
.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)),
|
585 |
+
.flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)),
|
586 |
+
.flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)) {
|
587 |
+
-webkit-box-shadow: -10px 0 0 #569ff7;
|
588 |
+
box-shadow: -10px 0 0 #569ff7;
|
589 |
+
}
|
590 |
+
.flatpickr-day.selected.startRange.endRange,
|
591 |
+
.flatpickr-day.startRange.startRange.endRange,
|
592 |
+
.flatpickr-day.endRange.startRange.endRange {
|
593 |
+
border-radius: 50px;
|
594 |
+
}
|
595 |
+
.flatpickr-day.inRange {
|
596 |
+
border-radius: 0;
|
597 |
+
-webkit-box-shadow: -5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
|
598 |
+
box-shadow: -5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
|
599 |
+
}
|
600 |
+
.flatpickr-day.flatpickr-disabled,
|
601 |
+
.flatpickr-day.flatpickr-disabled:hover,
|
602 |
+
.flatpickr-day.prevMonthDay,
|
603 |
+
.flatpickr-day.nextMonthDay,
|
604 |
+
.flatpickr-day.notAllowed,
|
605 |
+
.flatpickr-day.notAllowed.prevMonthDay,
|
606 |
+
.flatpickr-day.notAllowed.nextMonthDay {
|
607 |
+
color: rgba(57,57,57,0.3);
|
608 |
+
background: transparent;
|
609 |
+
border-color: transparent;
|
610 |
+
cursor: default;
|
611 |
+
}
|
612 |
+
.flatpickr-day.flatpickr-disabled,
|
613 |
+
.flatpickr-day.flatpickr-disabled:hover {
|
614 |
+
cursor: not-allowed;
|
615 |
+
color: rgba(57,57,57,0.1);
|
616 |
+
}
|
617 |
+
.flatpickr-day.week.selected {
|
618 |
+
border-radius: 0;
|
619 |
+
-webkit-box-shadow: -5px 0 0 #569ff7, 5px 0 0 #569ff7;
|
620 |
+
box-shadow: -5px 0 0 #569ff7, 5px 0 0 #569ff7;
|
621 |
+
}
|
622 |
+
.flatpickr-day.hidden {
|
623 |
+
visibility: hidden;
|
624 |
+
}
|
625 |
+
.rangeMode .flatpickr-day {
|
626 |
+
margin-top: 1px;
|
627 |
+
}
|
628 |
+
.flatpickr-weekwrapper {
|
629 |
+
float: left;
|
630 |
+
}
|
631 |
+
.flatpickr-weekwrapper .flatpickr-weeks {
|
632 |
+
padding: 0 12px;
|
633 |
+
-webkit-box-shadow: 1px 0 0 #e6e6e6;
|
634 |
+
box-shadow: 1px 0 0 #e6e6e6;
|
635 |
+
}
|
636 |
+
.flatpickr-weekwrapper .flatpickr-weekday {
|
637 |
+
float: none;
|
638 |
+
width: 100%;
|
639 |
+
line-height: 28px;
|
640 |
+
}
|
641 |
+
.flatpickr-weekwrapper span.flatpickr-day,
|
642 |
+
.flatpickr-weekwrapper span.flatpickr-day:hover {
|
643 |
+
display: block;
|
644 |
+
width: 100%;
|
645 |
+
max-width: none;
|
646 |
+
color: rgba(57,57,57,0.3);
|
647 |
+
background: transparent;
|
648 |
+
cursor: default;
|
649 |
+
border: none;
|
650 |
+
}
|
651 |
+
.flatpickr-innerContainer {
|
652 |
+
display: block;
|
653 |
+
display: -webkit-box;
|
654 |
+
display: -webkit-flex;
|
655 |
+
display: -ms-flexbox;
|
656 |
+
display: flex;
|
657 |
+
-webkit-box-sizing: border-box;
|
658 |
+
box-sizing: border-box;
|
659 |
+
overflow: hidden;
|
660 |
+
}
|
661 |
+
.flatpickr-rContainer {
|
662 |
+
display: inline-block;
|
663 |
+
padding: 0;
|
664 |
+
-webkit-box-sizing: border-box;
|
665 |
+
box-sizing: border-box;
|
666 |
+
}
|
667 |
+
.flatpickr-time {
|
668 |
+
text-align: center;
|
669 |
+
outline: 0;
|
670 |
+
display: block;
|
671 |
+
height: 0;
|
672 |
+
line-height: 40px;
|
673 |
+
max-height: 40px;
|
674 |
+
-webkit-box-sizing: border-box;
|
675 |
+
box-sizing: border-box;
|
676 |
+
overflow: hidden;
|
677 |
+
display: -webkit-box;
|
678 |
+
display: -webkit-flex;
|
679 |
+
display: -ms-flexbox;
|
680 |
+
display: flex;
|
681 |
+
}
|
682 |
+
.flatpickr-time:after {
|
683 |
+
content: "";
|
684 |
+
display: table;
|
685 |
+
clear: both;
|
686 |
+
}
|
687 |
+
.flatpickr-time .numInputWrapper {
|
688 |
+
-webkit-box-flex: 1;
|
689 |
+
-webkit-flex: 1;
|
690 |
+
-ms-flex: 1;
|
691 |
+
flex: 1;
|
692 |
+
width: 40%;
|
693 |
+
height: 40px;
|
694 |
+
float: left;
|
695 |
+
}
|
696 |
+
.flatpickr-time .numInputWrapper span.arrowUp:after {
|
697 |
+
border-bottom-color: #393939;
|
698 |
+
}
|
699 |
+
.flatpickr-time .numInputWrapper span.arrowDown:after {
|
700 |
+
border-top-color: #393939;
|
701 |
+
}
|
702 |
+
.flatpickr-time.hasSeconds .numInputWrapper {
|
703 |
+
width: 26%;
|
704 |
+
}
|
705 |
+
.flatpickr-time.time24hr .numInputWrapper {
|
706 |
+
width: 49%;
|
707 |
+
}
|
708 |
+
.flatpickr-time input {
|
709 |
+
background: transparent;
|
710 |
+
-webkit-box-shadow: none;
|
711 |
+
box-shadow: none;
|
712 |
+
border: 0;
|
713 |
+
border-radius: 0;
|
714 |
+
text-align: center;
|
715 |
+
margin: 0;
|
716 |
+
padding: 0;
|
717 |
+
height: inherit;
|
718 |
+
line-height: inherit;
|
719 |
+
color: #393939;
|
720 |
+
font-size: 14px;
|
721 |
+
position: relative;
|
722 |
+
-webkit-box-sizing: border-box;
|
723 |
+
box-sizing: border-box;
|
724 |
+
-webkit-appearance: textfield;
|
725 |
+
-moz-appearance: textfield;
|
726 |
+
appearance: textfield;
|
727 |
+
}
|
728 |
+
.flatpickr-time input.flatpickr-hour {
|
729 |
+
font-weight: bold;
|
730 |
+
}
|
731 |
+
.flatpickr-time input.flatpickr-minute,
|
732 |
+
.flatpickr-time input.flatpickr-second {
|
733 |
+
font-weight: 400;
|
734 |
+
}
|
735 |
+
.flatpickr-time input:focus {
|
736 |
+
outline: 0;
|
737 |
+
border: 0;
|
738 |
+
}
|
739 |
+
.flatpickr-time .flatpickr-time-separator,
|
740 |
+
.flatpickr-time .flatpickr-am-pm {
|
741 |
+
height: inherit;
|
742 |
+
float: left;
|
743 |
+
line-height: inherit;
|
744 |
+
color: #393939;
|
745 |
+
font-weight: bold;
|
746 |
+
width: 2%;
|
747 |
+
-webkit-user-select: none;
|
748 |
+
-moz-user-select: none;
|
749 |
+
-ms-user-select: none;
|
750 |
+
user-select: none;
|
751 |
+
-webkit-align-self: center;
|
752 |
+
-ms-flex-item-align: center;
|
753 |
+
align-self: center;
|
754 |
+
}
|
755 |
+
.flatpickr-time .flatpickr-am-pm {
|
756 |
+
outline: 0;
|
757 |
+
width: 18%;
|
758 |
+
cursor: pointer;
|
759 |
+
text-align: center;
|
760 |
+
font-weight: 400;
|
761 |
+
}
|
762 |
+
.flatpickr-time input:hover,
|
763 |
+
.flatpickr-time .flatpickr-am-pm:hover,
|
764 |
+
.flatpickr-time input:focus,
|
765 |
+
.flatpickr-time .flatpickr-am-pm:focus {
|
766 |
+
background: #eee;
|
767 |
+
}
|
768 |
+
.flatpickr-input[readonly] {
|
769 |
+
cursor: pointer;
|
770 |
+
}
|
771 |
+
@-webkit-keyframes fpFadeInDown {
|
772 |
+
from {
|
773 |
+
opacity: 0;
|
774 |
+
-webkit-transform: translate3d(0, -20px, 0);
|
775 |
+
transform: translate3d(0, -20px, 0);
|
776 |
+
}
|
777 |
+
to {
|
778 |
+
opacity: 1;
|
779 |
+
-webkit-transform: translate3d(0, 0, 0);
|
780 |
+
transform: translate3d(0, 0, 0);
|
781 |
+
}
|
782 |
+
}
|
783 |
+
@keyframes fpFadeInDown {
|
784 |
+
from {
|
785 |
+
opacity: 0;
|
786 |
+
-webkit-transform: translate3d(0, -20px, 0);
|
787 |
+
transform: translate3d(0, -20px, 0);
|
788 |
+
}
|
789 |
+
to {
|
790 |
+
opacity: 1;
|
791 |
+
-webkit-transform: translate3d(0, 0, 0);
|
792 |
+
transform: translate3d(0, 0, 0);
|
793 |
+
}
|
794 |
+
}
|
vendor/codestar-framework/assets/scss/partials/_helper.scss
CHANGED
@@ -1,152 +1,152 @@
|
|
1 |
-
/**
|
2 |
-
* 10. Helper
|
3 |
-
*/
|
4 |
-
.csf-subtitle-text{
|
5 |
-
margin-top: 6px;
|
6 |
-
font-weight: 400;
|
7 |
-
color: #999;
|
8 |
-
}
|
9 |
-
|
10 |
-
.csf-desc-text{
|
11 |
-
clear: both;
|
12 |
-
float: left;
|
13 |
-
width: 100%;
|
14 |
-
margin-top: 6px;
|
15 |
-
font-weight: 400;
|
16 |
-
color: #999;
|
17 |
-
}
|
18 |
-
|
19 |
-
.csf-error-text{
|
20 |
-
margin-top: 6px;
|
21 |
-
color: #d02c21;
|
22 |
-
}
|
23 |
-
|
24 |
-
.csf-before-text{
|
25 |
-
margin-bottom: 6px;
|
26 |
-
}
|
27 |
-
|
28 |
-
.csf-after-text{
|
29 |
-
margin-top: 6px;
|
30 |
-
}
|
31 |
-
|
32 |
-
.csf-metabox-hide{
|
33 |
-
display: none !important;
|
34 |
-
}
|
35 |
-
|
36 |
-
.csf-metabox-show{
|
37 |
-
display: block !important;
|
38 |
-
}
|
39 |
-
|
40 |
-
.csf-depend-hidden.csf-depend-on{
|
41 |
-
display: none;
|
42 |
-
}
|
43 |
-
|
44 |
-
.csf-depend-visible.csf-depend-on{
|
45 |
-
display: block;
|
46 |
-
opacity: 0.75;
|
47 |
-
filter: grayscale(1);
|
48 |
-
user-select: none;
|
49 |
-
border-top: 1px solid #eee;
|
50 |
-
|
51 |
-
.clear:before{
|
52 |
-
content: "";
|
53 |
-
left: 0;
|
54 |
-
top: 0;
|
55 |
-
right: 0;
|
56 |
-
bottom: 0;
|
57 |
-
position: absolute;
|
58 |
-
background-color: #eee;
|
59 |
-
opacity: 0.25;
|
60 |
-
z-index: 10;
|
61 |
-
}
|
62 |
-
}
|
63 |
-
|
64 |
-
.csf-warning-primary{
|
65 |
-
color: #fff !important;
|
66 |
-
border-color: #dc3545 !important;
|
67 |
-
background: #dc3545 !important;
|
68 |
-
|
69 |
-
&:hover,
|
70 |
-
&:focus{
|
71 |
-
border-color: #bd2130 !important;
|
72 |
-
background: #bd2130 !important;
|
73 |
-
}
|
74 |
-
|
75 |
-
&:focus{
|
76 |
-
box-shadow: 0 0 0 1px #fff, 0 0 0 3px #bd2130 !important;
|
77 |
-
}
|
78 |
-
|
79 |
-
&:active{
|
80 |
-
border-color: #bd2130 !important;
|
81 |
-
background: #bd2130 !important;
|
82 |
-
}
|
83 |
-
}
|
84 |
-
|
85 |
-
.csf-form-result{
|
86 |
-
display: none;
|
87 |
-
float: left;
|
88 |
-
padding: 0 8px;
|
89 |
-
margin-right: 4px;
|
90 |
-
font-size: 11px;
|
91 |
-
line-height: 30px;
|
92 |
-
user-select: none;
|
93 |
-
border-radius: 2px;
|
94 |
-
}
|
95 |
-
|
96 |
-
.csf-form-show{
|
97 |
-
display: block;
|
98 |
-
}
|
99 |
-
|
100 |
-
.csf-form-success{
|
101 |
-
color: #fff;
|
102 |
-
background-color: #46b450;
|
103 |
-
}
|
104 |
-
|
105 |
-
.csf-form-warning{
|
106 |
-
color: #8a6d3b;
|
107 |
-
background-color: #faebcc;
|
108 |
-
}
|
109 |
-
|
110 |
-
.csf-label-error{
|
111 |
-
position: relative;
|
112 |
-
top: -2px;
|
113 |
-
display: inline-block;
|
114 |
-
font-size: 10px;
|
115 |
-
line-height: 10px;
|
116 |
-
height: 10px;
|
117 |
-
width: 10px;
|
118 |
-
padding: 1px;
|
119 |
-
font-style: normal;
|
120 |
-
text-align: center;
|
121 |
-
color: #fff;
|
122 |
-
vertical-align: middle;
|
123 |
-
background-color: #e10000;
|
124 |
-
border-radius: 2px;
|
125 |
-
}
|
126 |
-
|
127 |
-
.csf-no-option{
|
128 |
-
padding: 30px;
|
129 |
-
}
|
130 |
-
|
131 |
-
.csf-input-number{
|
132 |
-
-moz-appearance:textfield;
|
133 |
-
}
|
134 |
-
|
135 |
-
.csf-input-number::-webkit-inner-spin-button,
|
136 |
-
.csf-input-number::-webkit-outer-spin-button{
|
137 |
-
-webkit-appearance: none;
|
138 |
-
margin: 0;
|
139 |
-
}
|
140 |
-
|
141 |
-
.csf-fa5-shims{
|
142 |
-
|
143 |
-
.csf{
|
144 |
-
|
145 |
-
.fas,
|
146 |
-
.far,
|
147 |
-
.fab{
|
148 |
-
font-family: "FontAwesome";
|
149 |
-
font-style: normal;
|
150 |
-
}
|
151 |
-
}
|
152 |
-
}
|
1 |
+
/**
|
2 |
+
* 10. Helper
|
3 |
+
*/
|
4 |
+
.csf-subtitle-text{
|
5 |
+
margin-top: 6px;
|
6 |
+
font-weight: 400;
|
7 |
+
color: #999;
|
8 |
+
}
|
9 |
+
|
10 |
+
.csf-desc-text{
|
11 |
+
clear: both;
|
12 |
+
float: left;
|
13 |
+
width: 100%;
|
14 |
+
margin-top: 6px;
|
15 |
+
font-weight: 400;
|
16 |
+
color: #999;
|
17 |
+
}
|
18 |
+
|
19 |
+
.csf-error-text{
|
20 |
+
margin-top: 6px;
|
21 |
+
color: #d02c21;
|
22 |
+
}
|
23 |
+
|
24 |
+
.csf-before-text{
|
25 |
+
margin-bottom: 6px;
|
26 |
+
}
|
27 |
+
|
28 |
+
.csf-after-text{
|
29 |
+
margin-top: 6px;
|
30 |
+
}
|
31 |
+
|
32 |
+
.csf-metabox-hide{
|
33 |
+
display: none !important;
|
34 |
+
}
|
35 |
+
|
36 |
+
.csf-metabox-show{
|
37 |
+
display: block !important;
|
38 |
+
}
|
39 |
+
|
40 |
+
.csf-depend-hidden.csf-depend-on{
|
41 |
+
display: none;
|
42 |
+
}
|
43 |
+
|
44 |
+
.csf-depend-visible.csf-depend-on{
|
45 |
+
display: block;
|
46 |
+
opacity: 0.75;
|
47 |
+
filter: grayscale(1);
|
48 |
+
user-select: none;
|
49 |
+
border-top: 1px solid #eee;
|
50 |
+
|
51 |
+
.clear:before{
|
52 |
+
content: "";
|
53 |
+
left: 0;
|
54 |
+
top: 0;
|
55 |
+
right: 0;
|
56 |
+
bottom: 0;
|
57 |
+
position: absolute;
|
58 |
+
background-color: #eee;
|
59 |
+
opacity: 0.25;
|
60 |
+
z-index: 10;
|
61 |
+
}
|
62 |
+
}
|
63 |
+
|
64 |
+
.csf-warning-primary{
|
65 |
+
color: #fff !important;
|
66 |
+
border-color: #dc3545 !important;
|
67 |
+
background: #dc3545 !important;
|
68 |
+
|
69 |
+
&:hover,
|
70 |
+
&:focus{
|
71 |
+
border-color: #bd2130 !important;
|
72 |
+
background: #bd2130 !important;
|
73 |
+
}
|
74 |
+
|
75 |
+
&:focus{
|
76 |
+
box-shadow: 0 0 0 1px #fff, 0 0 0 3px #bd2130 !important;
|
77 |
+
}
|
78 |
+
|
79 |
+
&:active{
|
80 |
+
border-color: #bd2130 !important;
|
81 |
+
background: #bd2130 !important;
|
82 |
+
}
|
83 |
+
}
|
84 |
+
|
85 |
+
.csf-form-result{
|
86 |
+
display: none;
|
87 |
+
float: left;
|
88 |
+
padding: 0 8px;
|
89 |
+
margin-right: 4px;
|
90 |
+
font-size: 11px;
|
91 |
+
line-height: 30px;
|
92 |
+
user-select: none;
|
93 |
+
border-radius: 2px;
|
94 |
+
}
|
95 |
+
|
96 |
+
.csf-form-show{
|
97 |
+
display: block;
|
98 |
+
}
|
99 |
+
|
100 |
+
.csf-form-success{
|
101 |
+
color: #fff;
|
102 |
+
background-color: #46b450;
|
103 |
+
}
|
104 |
+
|
105 |
+
.csf-form-warning{
|
106 |
+
color: #8a6d3b;
|
107 |
+
background-color: #faebcc;
|
108 |
+
}
|
109 |
+
|
110 |
+
.csf-label-error{
|
111 |
+
position: relative;
|
112 |
+
top: -2px;
|
113 |
+
display: inline-block;
|
114 |
+
font-size: 10px;
|
115 |
+
line-height: 10px;
|
116 |
+
height: 10px;
|
117 |
+
width: 10px;
|
118 |
+
padding: 1px;
|
119 |
+
font-style: normal;
|
120 |
+
text-align: center;
|
121 |
+
color: #fff;
|
122 |
+
vertical-align: middle;
|
123 |
+
background-color: #e10000;
|
124 |
+
border-radius: 2px;
|
125 |
+
}
|
126 |
+
|
127 |
+
.csf-no-option{
|
128 |
+
padding: 30px;
|
129 |
+
}
|
130 |
+
|
131 |
+
.csf-input-number{
|
132 |
+
-moz-appearance:textfield;
|
133 |
+
}
|
134 |
+
|
135 |
+
.csf-input-number::-webkit-inner-spin-button,
|
136 |
+
.csf-input-number::-webkit-outer-spin-button{
|
137 |
+
-webkit-appearance: none;
|
138 |
+
margin: 0;
|
139 |
+
}
|
140 |
+
|
141 |
+
.csf-fa5-shims{
|
142 |
+
|
143 |
+
.csf{
|
144 |
+
|
145 |
+
.fas,
|
146 |
+
.far,
|
147 |
+
.fab{
|
148 |
+
font-family: "FontAwesome";
|
149 |
+
font-style: normal;
|
150 |
+
}
|
151 |
+
}
|
152 |
+
}
|
vendor/codestar-framework/assets/scss/partials/_modal.scss
CHANGED
@@ -1,330 +1,330 @@
|
|
1 |
-
/**
|
2 |
-
* 09. Modal
|
3 |
-
*/
|
4 |
-
.csf-modal{
|
5 |
-
position: fixed;
|
6 |
-
z-index: 100101;
|
7 |
-
top: 0;
|
8 |
-
left: 0;
|
9 |
-
width: 100%;
|
10 |
-
height: 100%;
|
11 |
-
|
12 |
-
&.hidden{
|
13 |
-
display: none;
|
14 |
-
}
|
15 |
-
}
|
16 |
-
|
17 |
-
.csf-modal-icon{
|
18 |
-
z-index: 100102;
|
19 |
-
}
|
20 |
-
|
21 |
-
.csf-modal-table{
|
22 |
-
display: table;
|
23 |
-
width: 100%;
|
24 |
-
height: 100%;
|
25 |
-
}
|
26 |
-
|
27 |
-
.csf-modal-table-cell{
|
28 |
-
display: table-cell;
|
29 |
-
vertical-align: middle;
|
30 |
-
margin: 100px 0;
|
31 |
-
}
|
32 |
-
|
33 |
-
.csf-modal-inner{
|
34 |
-
position: relative;
|
35 |
-
z-index: 10;
|
36 |
-
width: 760px;
|
37 |
-
height: 750px;
|
38 |
-
margin: 0 auto;
|
39 |
-
background-color: #fff;
|
40 |
-
}
|
41 |
-
|
42 |
-
.csf-modal-content{
|
43 |
-
position: relative;
|
44 |
-
overflow: hidden;
|
45 |
-
overflow-y: auto;
|
46 |
-
height: 595px;
|
47 |
-
|
48 |
-
.csf-shortcode-button{
|
49 |
-
display: none;
|
50 |
-
}
|
51 |
-
|
52 |
-
.csf-field{
|
53 |
-
padding: 15px 30px 15px 15px;
|
54 |
-
}
|
55 |
-
|
56 |
-
a{
|
57 |
-
&:active,
|
58 |
-
&:focus{
|
59 |
-
outline: none;
|
60 |
-
box-shadow: none;
|
61 |
-
}
|
62 |
-
}
|
63 |
-
|
64 |
-
h4{
|
65 |
-
font-size: 13px;
|
66 |
-
|
67 |
-
small{
|
68 |
-
font-style: italic;
|
69 |
-
font-weight: 400;
|
70 |
-
color: #aaa;
|
71 |
-
}
|
72 |
-
}
|
73 |
-
}
|
74 |
-
|
75 |
-
.csf-modal-title{
|
76 |
-
position: relative;
|
77 |
-
background-color: #fcfcfc;
|
78 |
-
border-bottom: 1px solid #ddd;
|
79 |
-
height: 36px;
|
80 |
-
font-size: 16px;
|
81 |
-
font-weight: 600;
|
82 |
-
line-height: 36px;
|
83 |
-
margin: 0;
|
84 |
-
padding: 0 36px 0 16px;
|
85 |
-
}
|
86 |
-
|
87 |
-
.csf-modal-header{
|
88 |
-
width: 100%;
|
89 |
-
padding: 14px 0;
|
90 |
-
background-color: #f5f5f5;
|
91 |
-
border-bottom: 1px solid #ddd;
|
92 |
-
|
93 |
-
select{
|
94 |
-
display: block;
|
95 |
-
width: 250px;
|
96 |
-
margin: 0 auto;
|
97 |
-
font-size: 13px;
|
98 |
-
line-height: 1;
|
99 |
-
height: 30px;
|
100 |
-
min-height: 30px;
|
101 |
-
background-color: #fff;
|
102 |
-
}
|
103 |
-
}
|
104 |
-
|
105 |
-
.csf-modal-close{
|
106 |
-
color: #666;
|
107 |
-
padding: 0;
|
108 |
-
position: absolute;
|
109 |
-
top: 0;
|
110 |
-
right: 0;
|
111 |
-
width: 36px;
|
112 |
-
height: 36px;
|
113 |
-
text-align: center;
|
114 |
-
background: none;
|
115 |
-
border: none;
|
116 |
-
cursor: pointer;
|
117 |
-
|
118 |
-
&:before{
|
119 |
-
font: normal 20px/36px dashicons;
|
120 |
-
content: "\f158";
|
121 |
-
vertical-align: top;
|
122 |
-
width: 36px;
|
123 |
-
height: 36px;
|
124 |
-
}
|
125 |
-
|
126 |
-
&:hover{
|
127 |
-
opacity: 0.5;
|
128 |
-
}
|
129 |
-
}
|
130 |
-
|
131 |
-
.csf-modal-insert-wrapper{
|
132 |
-
text-align: center;
|
133 |
-
width: 100%;
|
134 |
-
padding: 15px 0;
|
135 |
-
background-color: #f5f5f5;
|
136 |
-
border-top: 1px solid #ddd;
|
137 |
-
}
|
138 |
-
|
139 |
-
.csf-modal-overlay{
|
140 |
-
position: absolute;
|
141 |
-
top: 0;
|
142 |
-
left: 0;
|
143 |
-
width: 100%;
|
144 |
-
height: 100%;
|
145 |
-
background-color: #000;
|
146 |
-
opacity: 0.5;
|
147 |
-
}
|
148 |
-
|
149 |
-
/**
|
150 |
-
* 09. 01. Shortcode Modal
|
151 |
-
*/
|
152 |
-
.csf--repeatable{
|
153 |
-
padding: 15px 15px 0 15px;
|
154 |
-
}
|
155 |
-
|
156 |
-
.csf--repeat-button-block{
|
157 |
-
text-align: center;
|
158 |
-
padding-bottom: 15px;
|
159 |
-
}
|
160 |
-
|
161 |
-
.csf--repeat-shortcode{
|
162 |
-
position: relative;
|
163 |
-
margin-bottom: 15px;
|
164 |
-
border: 1px dashed #ddd;
|
165 |
-
|
166 |
-
&:first-child{
|
167 |
-
|
168 |
-
.csf-repeat-remove{
|
169 |
-
display: none;
|
170 |
-
}
|
171 |
-
}
|
172 |
-
|
173 |
-
.csf-repeat-remove{
|
174 |
-
position: absolute;
|
175 |
-
right: 10px;
|
176 |
-
top: 10px;
|
177 |
-
z-index: 10;
|
178 |
-
cursor: pointer;
|
179 |
-
display: inline-block;
|
180 |
-
font-size: 11px;
|
181 |
-
width: 18px;
|
182 |
-
height: 18px;
|
183 |
-
line-height: 18px;
|
184 |
-
text-align: center;
|
185 |
-
border-radius: 2px;
|
186 |
-
color: #fff;
|
187 |
-
background-color: #e14d43;
|
188 |
-
opacity: 0.5;
|
189 |
-
|
190 |
-
&:hover{
|
191 |
-
opacity: 0.5;
|
192 |
-
}
|
193 |
-
}
|
194 |
-
}
|
195 |
-
|
196 |
-
.csf-shortcode-single{
|
197 |
-
|
198 |
-
.csf-modal-inner{
|
199 |
-
height: 750px;
|
200 |
-
}
|
201 |
-
|
202 |
-
.csf-modal-content{
|
203 |
-
height: 652px;
|
204 |
-
}
|
205 |
-
}
|
206 |
-
|
207 |
-
.elementor-editor-active{
|
208 |
-
|
209 |
-
.csf-shortcode-button{
|
210 |
-
margin-left: 5px;
|
211 |
-
}
|
212 |
-
|
213 |
-
.csf-modal .hidden{
|
214 |
-
display: none !important;
|
215 |
-
}
|
216 |
-
}
|
217 |
-
|
218 |
-
/**
|
219 |
-
* 09. 02. Gutenberg Modal
|
220 |
-
*/
|
221 |
-
.csf-shortcode-block{
|
222 |
-
text-align: center;
|
223 |
-
padding: 14px;
|
224 |
-
font-size: 13px;
|
225 |
-
background-color: #f5f5f5;
|
226 |
-
font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;
|
227 |
-
}
|
228 |
-
|
229 |
-
.csf-shortcode-block .components-button{
|
230 |
-
margin-bottom: 10px;
|
231 |
-
}
|
232 |
-
|
233 |
-
/**
|
234 |
-
* 09. 03. Icon Modal
|
235 |
-
*/
|
236 |
-
.csf-modal-icon{
|
237 |
-
|
238 |
-
.csf-icon-title{
|
239 |
-
padding: 15px 0;
|
240 |
-
margin: 4px;
|
241 |
-
font-size: 14px;
|
242 |
-
font-weight: bold;
|
243 |
-
text-align: center;
|
244 |
-
border: 1px solid #eee;
|
245 |
-
background-color: #f7f7f7;
|
246 |
-
}
|
247 |
-
|
248 |
-
.csf-modal-header{
|
249 |
-
text-align: center;
|
250 |
-
}
|
251 |
-
|
252 |
-
.csf-icon-search{
|
253 |
-
width: 50%;
|
254 |
-
height: 40px;
|
255 |
-
line-height: 40px;
|
256 |
-
}
|
257 |
-
|
258 |
-
i{
|
259 |
-
cursor: pointer;
|
260 |
-
display: inline-block;
|
261 |
-
margin: 4px;
|
262 |
-
width: 35px;
|
263 |
-
height: 35px;
|
264 |
-
line-height: 35px;
|
265 |
-
font-size: 16px;
|
266 |
-
color: #555;
|
267 |
-
text-align: center;
|
268 |
-
border: 1px solid #ccc;
|
269 |
-
background-color: #f7f7f7;
|
270 |
-
border-radius: 2px;
|
271 |
-
box-shadow: 1px 1px 0 rgba(0,0,0,0.05);
|
272 |
-
|
273 |
-
&:hover {
|
274 |
-
color: #fff;
|
275 |
-
border-color: #222;
|
276 |
-
background-color: #222;
|
277 |
-
}
|
278 |
-
}
|
279 |
-
|
280 |
-
.csf-modal-content{
|
281 |
-
padding: 10px;
|
282 |
-
height: 618px;
|
283 |
-
}
|
284 |
-
|
285 |
-
.csf-error-text{
|
286 |
-
padding: 10px;
|
287 |
-
}
|
288 |
-
}
|
289 |
-
|
290 |
-
.csf-modal-loading{
|
291 |
-
display: none;
|
292 |
-
position: absolute;
|
293 |
-
left: 15px;
|
294 |
-
top: 15px;
|
295 |
-
}
|
296 |
-
|
297 |
-
.csf-loading{
|
298 |
-
position: relative;
|
299 |
-
width: 20px;
|
300 |
-
height: 20px;
|
301 |
-
background: #ccc;
|
302 |
-
border-radius: 20px;
|
303 |
-
box-shadow: 0 2px 5px rgba(0,0,0,0.07);
|
304 |
-
|
305 |
-
&:after{
|
306 |
-
position: absolute;
|
307 |
-
top: 50%;
|
308 |
-
left: 50%;
|
309 |
-
width: 4px;
|
310 |
-
height: 4px;
|
311 |
-
content: "";
|
312 |
-
margin-top: -2px;
|
313 |
-
margin-left: -2px;
|
314 |
-
background-color: white;
|
315 |
-
animation-duration: 0.5s;
|
316 |
-
animation-iteration-count: infinite;
|
317 |
-
animation-timing-function: linear;
|
318 |
-
animation-name: csfLoader;
|
319 |
-
border-radius: 4px;
|
320 |
-
}
|
321 |
-
}
|
322 |
-
|
323 |
-
@keyframes csfLoader {
|
324 |
-
0% {
|
325 |
-
transform: rotate(0deg) translateX(-6px) rotate(0deg);
|
326 |
-
}
|
327 |
-
100% {
|
328 |
-
transform: rotate(360deg) translateX(-6px) rotate(-360deg);
|
329 |
-
}
|
330 |
-
}
|
1 |
+
/**
|
2 |
+
* 09. Modal
|
3 |
+
*/
|
4 |
+
.csf-modal{
|
5 |
+
position: fixed;
|
6 |
+
z-index: 100101;
|
7 |
+
top: 0;
|
8 |
+
left: 0;
|
9 |
+
width: 100%;
|
10 |
+
height: 100%;
|
11 |
+
|
12 |
+
&.hidden{
|
13 |
+
display: none;
|
14 |
+
}
|
15 |
+
}
|
16 |
+
|
17 |
+
.csf-modal-icon{
|
18 |
+
z-index: 100102;
|
19 |
+
}
|
20 |
+
|
21 |
+
.csf-modal-table{
|
22 |
+
display: table;
|
23 |
+
width: 100%;
|
24 |
+
height: 100%;
|
25 |
+
}
|
26 |
+
|
27 |
+
.csf-modal-table-cell{
|
28 |
+
display: table-cell;
|
29 |
+
vertical-align: middle;
|
30 |
+
margin: 100px 0;
|
31 |
+
}
|
32 |
+
|
33 |
+
.csf-modal-inner{
|
34 |
+
position: relative;
|
35 |
+
z-index: 10;
|
36 |
+
width: 760px;
|
37 |
+
height: 750px;
|
38 |
+
margin: 0 auto;
|
39 |
+
background-color: #fff;
|
40 |
+
}
|
41 |
+
|
42 |
+
.csf-modal-content{
|
43 |
+
position: relative;
|
44 |
+
overflow: hidden;
|
45 |
+
overflow-y: auto;
|
46 |
+
height: 595px;
|
47 |
+
|
48 |
+
.csf-shortcode-button{
|
49 |
+
display: none;
|
50 |
+
}
|
51 |
+
|
52 |
+
.csf-field{
|
53 |
+
padding: 15px 30px 15px 15px;
|
54 |
+
}
|
55 |
+
|
56 |
+
a{
|
57 |
+
&:active,
|
58 |
+
&:focus{
|
59 |
+
outline: none;
|
60 |
+
box-shadow: none;
|
61 |
+
}
|
62 |
+
}
|
63 |
+
|
64 |
+
h4{
|
65 |
+
font-size: 13px;
|
66 |
+
|
67 |
+
small{
|
68 |
+
font-style: italic;
|
69 |
+
font-weight: 400;
|
70 |
+
color: #aaa;
|
71 |
+
}
|
72 |
+
}
|
73 |
+
}
|
74 |
+
|
75 |
+
.csf-modal-title{
|
76 |
+
position: relative;
|
77 |
+
background-color: #fcfcfc;
|
78 |
+
border-bottom: 1px solid #ddd;
|
79 |
+
height: 36px;
|
80 |
+
font-size: 16px;
|
81 |
+
font-weight: 600;
|
82 |
+
line-height: 36px;
|
83 |
+
margin: 0;
|
84 |
+
padding: 0 36px 0 16px;
|
85 |
+
}
|
86 |
+
|
87 |
+
.csf-modal-header{
|
88 |
+
width: 100%;
|
89 |
+
padding: 14px 0;
|
90 |
+
background-color: #f5f5f5;
|
91 |
+
border-bottom: 1px solid #ddd;
|
92 |
+
|
93 |
+
select{
|
94 |
+
display: block;
|
95 |
+
width: 250px;
|
96 |
+
margin: 0 auto;
|
97 |
+
font-size: 13px;
|
98 |
+
line-height: 1;
|
99 |
+
height: 30px;
|
100 |
+
min-height: 30px;
|
101 |
+
background-color: #fff;
|
102 |
+
}
|
103 |
+
}
|
104 |
+
|
105 |
+
.csf-modal-close{
|
106 |
+
color: #666;
|
107 |
+
padding: 0;
|
108 |
+
position: absolute;
|
109 |
+
top: 0;
|
110 |
+
right: 0;
|
111 |
+
width: 36px;
|
112 |
+
height: 36px;
|
113 |
+
text-align: center;
|
114 |
+
background: none;
|
115 |
+
border: none;
|
116 |
+
cursor: pointer;
|
117 |
+
|
118 |
+
&:before{
|
119 |
+
font: normal 20px/36px dashicons;
|
120 |
+
content: "\f158";
|
121 |
+
vertical-align: top;
|
122 |
+
width: 36px;
|
123 |
+
height: 36px;
|
124 |
+
}
|
125 |
+
|
126 |
+
&:hover{
|
127 |
+
opacity: 0.5;
|
128 |
+
}
|
129 |
+
}
|
130 |
+
|
131 |
+
.csf-modal-insert-wrapper{
|
132 |
+
text-align: center;
|
133 |
+
width: 100%;
|
134 |
+
padding: 15px 0;
|
135 |
+
background-color: #f5f5f5;
|
136 |
+
border-top: 1px solid #ddd;
|
137 |
+
}
|
138 |
+
|
139 |
+
.csf-modal-overlay{
|
140 |
+
position: absolute;
|
141 |
+
top: 0;
|
142 |
+
left: 0;
|
143 |
+
width: 100%;
|
144 |
+
height: 100%;
|
145 |
+
background-color: #000;
|
146 |
+
opacity: 0.5;
|
147 |
+
}
|
148 |
+
|
149 |
+
/**
|
150 |
+
* 09. 01. Shortcode Modal
|
151 |
+
*/
|
152 |
+
.csf--repeatable{
|
153 |
+
padding: 15px 15px 0 15px;
|
154 |
+
}
|
155 |
+
|
156 |
+
.csf--repeat-button-block{
|
157 |
+
text-align: center;
|
158 |
+
padding-bottom: 15px;
|
159 |
+
}
|
160 |
+
|
161 |
+
.csf--repeat-shortcode{
|
162 |
+
position: relative;
|
163 |
+
margin-bottom: 15px;
|
164 |
+
border: 1px dashed #ddd;
|
165 |
+
|
166 |
+
&:first-child{
|
167 |
+
|
168 |
+
.csf-repeat-remove{
|
169 |
+
display: none;
|
170 |
+
}
|
171 |
+
}
|
172 |
+
|
173 |
+
.csf-repeat-remove{
|
174 |
+
position: absolute;
|
175 |
+
right: 10px;
|
176 |
+
top: 10px;
|
177 |
+
z-index: 10;
|
178 |
+
cursor: pointer;
|
179 |
+
display: inline-block;
|
180 |
+
font-size: 11px;
|
181 |
+
width: 18px;
|
182 |
+
height: 18px;
|
183 |
+
line-height: 18px;
|
184 |
+
text-align: center;
|
185 |
+
border-radius: 2px;
|
186 |
+
color: #fff;
|
187 |
+
background-color: #e14d43;
|
188 |
+
opacity: 0.5;
|
189 |
+
|
190 |
+
&:hover{
|
191 |
+
opacity: 0.5;
|
192 |
+
}
|
193 |
+
}
|
194 |
+
}
|
195 |
+
|
196 |
+
.csf-shortcode-single{
|
197 |
+
|
198 |
+
.csf-modal-inner{
|
199 |
+
height: 750px;
|
200 |
+
}
|
201 |
+
|
202 |
+
.csf-modal-content{
|
203 |
+
height: 652px;
|
204 |
+
}
|
205 |
+
}
|
206 |
+
|
207 |
+
.elementor-editor-active{
|
208 |
+
|
209 |
+
.csf-shortcode-button{
|
210 |
+
margin-left: 5px;
|
211 |
+
}
|
212 |
+
|
213 |
+
.csf-modal .hidden{
|
214 |
+
display: none !important;
|
215 |
+
}
|
216 |
+
}
|
217 |
+
|
218 |
+
/**
|
219 |
+
* 09. 02. Gutenberg Modal
|
220 |
+
*/
|
221 |
+
.csf-shortcode-block{
|
222 |
+
text-align: center;
|
223 |
+
padding: 14px;
|
224 |
+
font-size: 13px;
|
225 |
+
background-color: #f5f5f5;
|
226 |
+
font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;
|
227 |
+
}
|
228 |
+
|
229 |
+
.csf-shortcode-block .components-button{
|
230 |
+
margin-bottom: 10px;
|
231 |
+
}
|
232 |
+
|
233 |
+
/**
|
234 |
+
* 09. 03. Icon Modal
|
235 |
+
*/
|
236 |
+
.csf-modal-icon{
|
237 |
+
|
238 |
+
.csf-icon-title{
|
239 |
+
padding: 15px 0;
|
240 |
+
margin: 4px;
|
241 |
+
font-size: 14px;
|
242 |
+
font-weight: bold;
|
243 |
+
text-align: center;
|
244 |
+
border: 1px solid #eee;
|
245 |
+
background-color: #f7f7f7;
|
246 |
+
}
|
247 |
+
|
248 |
+
.csf-modal-header{
|
249 |
+
text-align: center;
|
250 |
+
}
|
251 |
+
|
252 |
+
.csf-icon-search{
|
253 |
+
width: 50%;
|
254 |
+
height: 40px;
|
255 |
+
line-height: 40px;
|
256 |
+
}
|
257 |
+
|
258 |
+
i{
|
259 |
+
cursor: pointer;
|
260 |
+
display: inline-block;
|
261 |
+
margin: 4px;
|
262 |
+
width: 35px;
|
263 |
+
height: 35px;
|
264 |
+
line-height: 35px;
|
265 |
+
font-size: 16px;
|
266 |
+
color: #555;
|
267 |
+
text-align: center;
|
268 |
+
border: 1px solid #ccc;
|
269 |
+
background-color: #f7f7f7;
|
270 |
+
border-radius: 2px;
|
271 |
+
box-shadow: 1px 1px 0 rgba(0,0,0,0.05);
|
272 |
+
|
273 |
+
&:hover {
|
274 |
+
color: #fff;
|
275 |
+
border-color: #222;
|
276 |
+
background-color: #222;
|
277 |
+
}
|
278 |
+
}
|
279 |
+
|
280 |
+
.csf-modal-content{
|
281 |
+
padding: 10px;
|
282 |
+
height: 618px;
|
283 |
+
}
|
284 |
+
|
285 |
+
.csf-error-text{
|
286 |
+
padding: 10px;
|
287 |
+
}
|
288 |
+
}
|
289 |
+
|
290 |
+
.csf-modal-loading{
|
291 |
+
display: none;
|
292 |
+
position: absolute;
|
293 |
+
left: 15px;
|
294 |
+
top: 15px;
|
295 |
+
}
|
296 |
+
|
297 |
+
.csf-loading{
|
298 |
+
position: relative;
|
299 |
+
width: 20px;
|
300 |
+
height: 20px;
|
301 |
+
background: #ccc;
|
302 |
+
border-radius: 20px;
|
303 |
+
box-shadow: 0 2px 5px rgba(0,0,0,0.07);
|
304 |
+
|
305 |
+
&:after{
|
306 |
+
position: absolute;
|
307 |
+
top: 50%;
|
308 |
+
left: 50%;
|
309 |
+
width: 4px;
|
310 |
+
height: 4px;
|
311 |
+
content: "";
|
312 |
+
margin-top: -2px;
|
313 |
+
margin-left: -2px;
|
314 |
+
background-color: white;
|
315 |
+
animation-duration: 0.5s;
|
316 |
+
animation-iteration-count: infinite;
|
317 |
+
animation-timing-function: linear;
|
318 |
+
animation-name: csfLoader;
|
319 |
+
border-radius: 4px;
|
320 |
+
}
|
321 |
+
}
|
322 |
+
|
323 |
+
@keyframes csfLoader {
|
324 |
+
0% {
|
325 |
+
transform: rotate(0deg) translateX(-6px) rotate(0deg);
|
326 |
+
}
|
327 |
+
100% {
|
328 |
+
transform: rotate(360deg) translateX(-6px) rotate(-360deg);
|
329 |
+
}
|
330 |
+
}
|
vendor/codestar-framework/assets/scss/partials/_navmenu.scss
CHANGED
@@ -1,60 +1,60 @@
|
|
1 |
-
/**
|
2 |
-
* 08. Nav Menu
|
3 |
-
*/
|
4 |
-
.csf-nav-menu-options{
|
5 |
-
clear: both;
|
6 |
-
float: left;
|
7 |
-
width: 100%;
|
8 |
-
|
9 |
-
> .csf-fields{
|
10 |
-
margin-left: -10px;
|
11 |
-
margin-top: 10px;
|
12 |
-
margin-bottom: 10px;
|
13 |
-
border-top: 1px solid #eee;
|
14 |
-
border-bottom: 1px solid #eee;
|
15 |
-
|
16 |
-
> .csf-field{
|
17 |
-
padding: 12px 14px 12px 12px;
|
18 |
-
|
19 |
-
.csf-title{
|
20 |
-
float: none;
|
21 |
-
width: 100%;
|
22 |
-
margin-bottom: 5px;
|
23 |
-
}
|
24 |
-
|
25 |
-
.csf-fieldset{
|
26 |
-
float: none;
|
27 |
-
width: 100%;
|
28 |
-
}
|
29 |
-
}
|
30 |
-
}
|
31 |
-
|
32 |
-
.csf-field-text input{
|
33 |
-
width: 100%;
|
34 |
-
}
|
35 |
-
|
36 |
-
.csf-field-notice .csf-notice{
|
37 |
-
padding: 15px;
|
38 |
-
}
|
39 |
-
}
|
40 |
-
|
41 |
-
.csf-nav-menu-title{
|
42 |
-
padding: 12px 14px 12px 12px;
|
43 |
-
background-color: #f5f5f5;
|
44 |
-
border-top: 1px solid #eee;
|
45 |
-
border-bottom: 1px solid #eee;
|
46 |
-
|
47 |
-
&:first-child{
|
48 |
-
border-top: 0;
|
49 |
-
}
|
50 |
-
|
51 |
-
h4{
|
52 |
-
margin: 0;
|
53 |
-
padding: 0;
|
54 |
-
color: #23282d;
|
55 |
-
}
|
56 |
-
}
|
57 |
-
|
58 |
-
.csf-nav-menu-icon{
|
59 |
-
margin-right: 5px;
|
60 |
-
}
|
1 |
+
/**
|
2 |
+
* 08. Nav Menu
|
3 |
+
*/
|
4 |
+
.csf-nav-menu-options{
|
5 |
+
clear: both;
|
6 |
+
float: left;
|
7 |
+
width: 100%;
|
8 |
+
|
9 |
+
> .csf-fields{
|
10 |
+
margin-left: -10px;
|
11 |
+
margin-top: 10px;
|
12 |
+
margin-bottom: 10px;
|
13 |
+
border-top: 1px solid #eee;
|
14 |
+
border-bottom: 1px solid #eee;
|
15 |
+
|
16 |
+
> .csf-field{
|
17 |
+
padding: 12px 14px 12px 12px;
|
18 |
+
|
19 |
+
.csf-title{
|
20 |
+
float: none;
|
21 |
+
width: 100%;
|
22 |
+
margin-bottom: 5px;
|
23 |
+
}
|
24 |
+
|
25 |
+
.csf-fieldset{
|
26 |
+
float: none;
|
27 |
+
width: 100%;
|
28 |
+
}
|
29 |
+
}
|
30 |
+
}
|
31 |
+
|
32 |
+
.csf-field-text input{
|
33 |
+
width: 100%;
|
34 |
+
}
|
35 |
+
|
36 |
+
.csf-field-notice .csf-notice{
|
37 |
+
padding: 15px;
|
38 |
+
}
|
39 |
+
}
|
40 |
+
|
41 |
+
.csf-nav-menu-title{
|
42 |
+
padding: 12px 14px 12px 12px;
|
43 |
+
background-color: #f5f5f5;
|
44 |
+
border-top: 1px solid #eee;
|
45 |
+
border-bottom: 1px solid #eee;
|
46 |
+
|
47 |
+
&:first-child{
|
48 |
+
border-top: 0;
|
49 |
+
}
|
50 |
+
|
51 |
+
h4{
|
52 |
+
margin: 0;
|
53 |
+
padding: 0;
|
54 |
+
color: #23282d;
|
55 |
+
}
|
56 |
+
}
|
57 |
+
|
58 |
+
.csf-nav-menu-icon{
|
59 |
+
margin-right: 5px;
|
60 |
+
}
|
vendor/codestar-framework/assets/scss/partials/_profile.scss
CHANGED
@@ -1,67 +1,67 @@
|
|
1 |
-
/**
|
2 |
-
* 06. Profile
|
3 |
-
*/
|
4 |
-
.csf-profile-options{
|
5 |
-
|
6 |
-
> h2 > .fa {
|
7 |
-
padding-right: 7px;
|
8 |
-
}
|
9 |
-
|
10 |
-
> .csf-field{
|
11 |
-
max-width: 750px;
|
12 |
-
padding: 15px 0;
|
13 |
-
border-top: none !important;
|
14 |
-
|
15 |
-
> .csf-title{
|
16 |
-
width: 200px;
|
17 |
-
|
18 |
-
h4{
|
19 |
-
font-size: 14px;
|
20 |
-
font-weight: 600;
|
21 |
-
line-height: 1.3;
|
22 |
-
display: inline-block;
|
23 |
-
vertical-align: middle;
|
24 |
-
}
|
25 |
-
}
|
26 |
-
|
27 |
-
> .csf-fieldset{
|
28 |
-
width: calc(100% - 220px);
|
29 |
-
|
30 |
-
> .csf-help{
|
31 |
-
top: -15px;
|
32 |
-
right: -5px;
|
33 |
-
}
|
34 |
-
}
|
35 |
-
}
|
36 |
-
|
37 |
-
> .csf-field-heading{
|
38 |
-
font-size: 1.1em;
|
39 |
-
}
|
40 |
-
|
41 |
-
> .csf-field-subheading{
|
42 |
-
font-size: 12px;
|
43 |
-
}
|
44 |
-
|
45 |
-
> .csf-field-subheading,
|
46 |
-
> .csf-field-heading{
|
47 |
-
margin: 10px 0;
|
48 |
-
padding: 15px !important;
|
49 |
-
border: 1px solid #ddd;
|
50 |
-
}
|
51 |
-
|
52 |
-
> .csf-field-submessage{
|
53 |
-
margin: 20px 0;
|
54 |
-
|
55 |
-
.csf-submessage{
|
56 |
-
padding: 10px;
|
57 |
-
border-left-width: 1px;
|
58 |
-
border-left-style: solid;
|
59 |
-
border-right-width: 1px;
|
60 |
-
border-right-style: solid;
|
61 |
-
}
|
62 |
-
}
|
63 |
-
|
64 |
-
> .csf-field-notice{
|
65 |
-
background-color: transparent;
|
66 |
-
}
|
67 |
-
}
|
1 |
+
/**
|
2 |
+
* 06. Profile
|
3 |
+
*/
|
4 |
+
.csf-profile-options{
|
5 |
+
|
6 |
+
> h2 > .fa {
|
7 |
+
padding-right: 7px;
|
8 |
+
}
|
9 |
+
|
10 |
+
> .csf-field{
|
11 |
+
max-width: 750px;
|
12 |
+
padding: 15px 0;
|
13 |
+
border-top: none !important;
|
14 |
+
|
15 |
+
> .csf-title{
|
16 |
+
width: 200px;
|
17 |
+
|
18 |
+
h4{
|
19 |
+
font-size: 14px;
|
20 |
+
font-weight: 600;
|
21 |
+
line-height: 1.3;
|
22 |
+
display: inline-block;
|
23 |
+
vertical-align: middle;
|
24 |
+
}
|
25 |
+
}
|
26 |
+
|
27 |
+
> .csf-fieldset{
|
28 |
+
width: calc(100% - 220px);
|
29 |
+
|
30 |
+
> .csf-help{
|
31 |
+
top: -15px;
|
32 |
+
right: -5px;
|
33 |
+
}
|
34 |
+
}
|
35 |
+
}
|
36 |
+
|
37 |
+
> .csf-field-heading{
|
38 |
+
font-size: 1.1em;
|
39 |
+
}
|
40 |
+
|
41 |
+
> .csf-field-subheading{
|
42 |
+
font-size: 12px;
|
43 |
+
}
|
44 |
+
|
45 |
+
> .csf-field-subheading,
|
46 |
+
> .csf-field-heading{
|
47 |
+
margin: 10px 0;
|
48 |
+
padding: 15px !important;
|
49 |
+
border: 1px solid #ddd;
|
50 |
+
}
|
51 |
+
|
52 |
+
> .csf-field-submessage{
|
53 |
+
margin: 20px 0;
|
54 |
+
|
55 |
+
.csf-submessage{
|
56 |
+
padding: 10px;
|
57 |
+
border-left-width: 1px;
|
58 |
+
border-left-style: solid;
|
59 |
+
border-right-width: 1px;
|
60 |
+
border-right-style: solid;
|
61 |
+
}
|
62 |
+
}
|
63 |
+
|
64 |
+
> .csf-field-notice{
|
65 |
+
background-color: transparent;
|
66 |
+
}
|
67 |
+
}
|
vendor/codestar-framework/assets/scss/partials/_responsive.scss
CHANGED
@@ -1,157 +1,157 @@
|
|
1 |
-
/**
|
2 |
-
* 12. Responsive
|
3 |
-
*/
|
4 |
-
@media only screen and (max-width:1200px){
|
5 |
-
|
6 |
-
.csf-metabox{
|
7 |
-
|
8 |
-
.csf-field{
|
9 |
-
|
10 |
-
.csf-title{
|
11 |
-
float: none;
|
12 |
-
width: 100%;
|
13 |
-
margin-bottom: 10px;
|
14 |
-
}
|
15 |
-
|
16 |
-
.csf-fieldset{
|
17 |
-
float: none;
|
18 |
-
width: 100%;
|
19 |
-
}
|
20 |
-
}
|
21 |
-
}
|
22 |
-
}
|
23 |
-
|
24 |
-
@media only screen and (max-width:782px){
|
25 |
-
|
26 |
-
.csf-header-inner{
|
27 |
-
text-align: center;
|
28 |
-
|
29 |
-
h1{
|
30 |
-
width: 100%;
|
31 |
-
margin-bottom: 10px;
|
32 |
-
}
|
33 |
-
}
|
34 |
-
|
35 |
-
.csf-form-result{
|
36 |
-
float: none;
|
37 |
-
margin-right: 0;
|
38 |
-
margin-bottom: 10px;
|
39 |
-
}
|
40 |
-
|
41 |
-
.csf-search,
|
42 |
-
.csf-header-right,
|
43 |
-
.csf-header-left{
|
44 |
-
width: 100%;
|
45 |
-
}
|
46 |
-
|
47 |
-
.csf-search{
|
48 |
-
text-align: center;
|
49 |
-
margin-bottom: 15px;
|
50 |
-
}
|
51 |
-
|
52 |
-
.csf-footer{
|
53 |
-
text-align: center;
|
54 |
-
}
|
55 |
-
|
56 |
-
.csf-buttons{
|
57 |
-
float: none;
|
58 |
-
}
|
59 |
-
|
60 |
-
.csf-copyright{
|
61 |
-
float: none;
|
62 |
-
margin-top: 10px;
|
63 |
-
}
|
64 |
-
|
65 |
-
.csf-nav,
|
66 |
-
.csf-expand-all,
|
67 |
-
.csf-reset-section,
|
68 |
-
.csf-nav-background{
|
69 |
-
display: none !important;
|
70 |
-
}
|
71 |
-
|
72 |
-
.csf-nav-normal + .csf-content{
|
73 |
-
margin-left: 0;
|
74 |
-
}
|
75 |
-
|
76 |
-
.csf-section-title,
|
77 |
-
.csf-section{
|
78 |
-
display: block !important;
|
79 |
-
}
|
80 |
-
|
81 |
-
.csf-field{
|
82 |
-
|
83 |
-
.csf-title{
|
84 |
-
float: none;
|
85 |
-
width: 100%;
|
86 |
-
margin-bottom: 10px;
|
87 |
-
}
|
88 |
-
|
89 |
-
.csf-fieldset{
|
90 |
-
float: none;
|
91 |
-
width: 100%;
|
92 |
-
}
|
93 |
-
}
|
94 |
-
|
95 |
-
.csf-field-color{
|
96 |
-
|
97 |
-
.button.wp-picker-clear{
|
98 |
-
padding: 0 8px;
|
99 |
-
line-height: 2.14285714;
|
100 |
-
min-height: 32px;
|
101 |
-
}
|
102 |
-
}
|
103 |
-
|
104 |
-
.csf-profile-options,
|
105 |
-
.csf-taxonomy-edit-fields{
|
106 |
-
|
107 |
-
> .csf-field{
|
108 |
-
|
109 |
-
> .csf-title{
|
110 |
-
float: none;
|
111 |
-
width: 100%;
|
112 |
-
margin-bottom: 10px;
|
113 |
-
}
|
114 |
-
|
115 |
-
> .csf-fieldset{
|
116 |
-
float: none;
|
117 |
-
width: 100%;
|
118 |
-
}
|
119 |
-
}
|
120 |
-
}
|
121 |
-
|
122 |
-
.csf-nav-menu-options{
|
123 |
-
|
124 |
-
> .csf-fields{
|
125 |
-
margin-left: -10px;
|
126 |
-
margin-right: -10px;
|
127 |
-
|
128 |
-
> .csf-field{
|
129 |
-
padding: 10px;
|
130 |
-
}
|
131 |
-
}
|
132 |
-
}
|
133 |
-
}
|
134 |
-
|
135 |
-
@media only screen and (max-width: 782px) {
|
136 |
-
|
137 |
-
.csf-modal{
|
138 |
-
|
139 |
-
.csf-modal-inner{
|
140 |
-
width: 90%;
|
141 |
-
}
|
142 |
-
}
|
143 |
-
}
|
144 |
-
|
145 |
-
@media only screen and (max-height: 750px) {
|
146 |
-
|
147 |
-
.csf-modal{
|
148 |
-
|
149 |
-
.csf-modal-inner{
|
150 |
-
height: auto;
|
151 |
-
}
|
152 |
-
|
153 |
-
.csf-modal-content{
|
154 |
-
height: calc(100vh - 200px);
|
155 |
-
}
|
156 |
-
}
|
157 |
-
}
|
1 |
+
/**
|
2 |
+
* 12. Responsive
|
3 |
+
*/
|
4 |
+
@media only screen and (max-width:1200px){
|
5 |
+
|
6 |
+
.csf-metabox{
|
7 |
+
|
8 |
+
.csf-field{
|
9 |
+
|
10 |
+
.csf-title{
|
11 |
+
float: none;
|
12 |
+
width: 100%;
|
13 |
+
margin-bottom: 10px;
|
14 |
+
}
|
15 |
+
|
16 |
+
.csf-fieldset{
|
17 |
+
float: none;
|
18 |
+
width: 100%;
|
19 |
+
}
|
20 |
+
}
|
21 |
+
}
|
22 |
+
}
|
23 |
+
|
24 |
+
@media only screen and (max-width:782px){
|
25 |
+
|
26 |
+
.csf-header-inner{
|
27 |
+
text-align: center;
|
28 |
+
|
29 |
+
h1{
|
30 |
+
width: 100%;
|
31 |
+
margin-bottom: 10px;
|
32 |
+
}
|
33 |
+
}
|
34 |
+
|
35 |
+
.csf-form-result{
|
36 |
+
float: none;
|
37 |
+
margin-right: 0;
|
38 |
+
margin-bottom: 10px;
|
39 |
+
}
|
40 |
+
|
41 |
+
.csf-search,
|
42 |
+
.csf-header-right,
|
43 |
+
.csf-header-left{
|
44 |
+
width: 100%;
|
45 |
+
}
|
46 |
+
|
47 |
+
.csf-search{
|
48 |
+
text-align: center;
|
49 |
+
margin-bottom: 15px;
|
50 |
+
}
|
51 |
+
|
52 |
+
.csf-footer{
|
53 |
+
text-align: center;
|
54 |
+
}
|
55 |
+
|
56 |
+
.csf-buttons{
|
57 |
+
float: none;
|
58 |
+
}
|
59 |
+
|
60 |
+
.csf-copyright{
|
61 |
+
float: none;
|
62 |
+
margin-top: 10px;
|
63 |
+
}
|
64 |
+
|
65 |
+
.csf-nav,
|
66 |
+
.csf-expand-all,
|
67 |
+
.csf-reset-section,
|
68 |
+
.csf-nav-background{
|
69 |
+
display: none !important;
|
70 |
+
}
|
71 |
+
|
72 |
+
.csf-nav-normal + .csf-content{
|
73 |
+
margin-left: 0;
|
74 |
+
}
|
75 |
+
|
76 |
+
.csf-section-title,
|
77 |
+
.csf-section{
|
78 |
+
display: block !important;
|
79 |
+
}
|
80 |
+
|
81 |
+
.csf-field{
|
82 |
+
|
83 |
+
.csf-title{
|
84 |
+
float: none;
|
85 |
+
width: 100%;
|
86 |
+
margin-bottom: 10px;
|
87 |
+
}
|
88 |
+
|
89 |
+
.csf-fieldset{
|
90 |
+
float: none;
|
91 |
+
width: 100%;
|
92 |
+
}
|
93 |
+
}
|
94 |
+
|
95 |
+
.csf-field-color{
|
96 |
+
|
97 |
+
.button.wp-picker-clear{
|
98 |
+
padding: 0 8px;
|
99 |
+
line-height: 2.14285714;
|
100 |
+
min-height: 32px;
|
101 |
+
}
|
102 |
+
}
|
103 |
+
|
104 |
+
.csf-profile-options,
|
105 |
+
.csf-taxonomy-edit-fields{
|
106 |
+
|
107 |
+
> .csf-field{
|
108 |
+
|
109 |
+
> .csf-title{
|
110 |
+
float: none;
|
111 |
+
width: 100%;
|
112 |
+
margin-bottom: 10px;
|
113 |
+
}
|
114 |
+
|
115 |
+
> .csf-fieldset{
|
116 |
+
float: none;
|
117 |
+
width: 100%;
|
118 |
+
}
|
119 |
+
}
|
120 |
+
}
|
121 |
+
|
122 |
+
.csf-nav-menu-options{
|
123 |
+
|
124 |
+
> .csf-fields{
|
125 |
+
margin-left: -10px;
|
126 |
+
margin-right: -10px;
|
127 |
+
|
128 |
+
> .csf-field{
|
129 |
+
padding: 10px;
|
130 |
+
}
|
131 |
+
}
|
132 |
+
}
|
133 |
+
}
|
134 |
+
|
135 |
+
@media only screen and (max-width: 782px) {
|
136 |
+
|
137 |
+
.csf-modal{
|
138 |
+
|
139 |
+
.csf-modal-inner{
|
140 |
+
width: 90%;
|
141 |
+
}
|
142 |
+
}
|
143 |
+
}
|
144 |
+
|
145 |
+
@media only screen and (max-height: 750px) {
|
146 |
+
|
147 |
+
.csf-modal{
|
148 |
+
|
149 |
+
.csf-modal-inner{
|
150 |
+
height: auto;
|
151 |
+
}
|
152 |
+
|
153 |
+
.csf-modal-content{
|
154 |
+
height: calc(100vh - 200px);
|
155 |
+
}
|
156 |
+
}
|
157 |
+
}
|
vendor/codestar-framework/assets/scss/partials/_taxonomy.scss
CHANGED
@@ -1,114 +1,114 @@
|
|
1 |
-
/**
|
2 |
-
* 06. Taxonomy
|
3 |
-
*/
|
4 |
-
.csf-taxonomy{
|
5 |
-
max-width: 95%;
|
6 |
-
|
7 |
-
> .csf-field{
|
8 |
-
border-top: none !important;
|
9 |
-
}
|
10 |
-
|
11 |
-
> .csf-field-heading{
|
12 |
-
font-size: 1.1em;
|
13 |
-
padding: 20px !important;
|
14 |
-
border: 1px solid #ddd;
|
15 |
-
}
|
16 |
-
|
17 |
-
> .csf-field-subheading{
|
18 |
-
font-size: 12px;
|
19 |
-
padding: 15px !important;
|
20 |
-
border: 1px solid #ddd;
|
21 |
-
}
|
22 |
-
|
23 |
-
> .csf-field-submessage{
|
24 |
-
|
25 |
-
.csf-submessage{
|
26 |
-
padding: 15px;
|
27 |
-
border-left-width: 1px;
|
28 |
-
border-left-style: solid;
|
29 |
-
border-right-width: 1px;
|
30 |
-
border-right-style: solid;
|
31 |
-
}
|
32 |
-
}
|
33 |
-
|
34 |
-
> .csf-field-notice{
|
35 |
-
background-color: transparent;
|
36 |
-
}
|
37 |
-
|
38 |
-
.csf-section-title{
|
39 |
-
display: block;
|
40 |
-
padding: 15px ;
|
41 |
-
background-color: #f9f9f9;
|
42 |
-
border: 1px solid #e5e5e5;
|
43 |
-
box-shadow: 0 1px 1px rgba(0,0,0,0.04);
|
44 |
-
}
|
45 |
-
}
|
46 |
-
|
47 |
-
.csf-taxonomy-add-fields{
|
48 |
-
|
49 |
-
> .csf-field{
|
50 |
-
padding: 8px 0;
|
51 |
-
|
52 |
-
> .csf-title{
|
53 |
-
float: none;
|
54 |
-
width: 100%;
|
55 |
-
padding: 2px 2px 4px 0;
|
56 |
-
|
57 |
-
h4{
|
58 |
-
font-size: 12px;
|
59 |
-
font-weight: normal;
|
60 |
-
}
|
61 |
-
}
|
62 |
-
|
63 |
-
> .csf-fieldset{
|
64 |
-
float: none;
|
65 |
-
width: 100%;
|
66 |
-
|
67 |
-
> .csf-help{
|
68 |
-
right: -5px;
|
69 |
-
}
|
70 |
-
}
|
71 |
-
}
|
72 |
-
|
73 |
-
+ p.submit{
|
74 |
-
margin-top: 0;
|
75 |
-
}
|
76 |
-
}
|
77 |
-
|
78 |
-
.csf-taxonomy-edit-fields{
|
79 |
-
|
80 |
-
> .csf-field{
|
81 |
-
padding: 20px 0;
|
82 |
-
|
83 |
-
> .csf-title{
|
84 |
-
width: 200px;
|
85 |
-
|
86 |
-
h4{
|
87 |
-
font-size: 14px;
|
88 |
-
font-weight: 600;
|
89 |
-
line-height: 1.3;
|
90 |
-
display: inline-block;
|
91 |
-
vertical-align: middle;
|
92 |
-
}
|
93 |
-
}
|
94 |
-
|
95 |
-
> .csf-fieldset{
|
96 |
-
width: calc(100% - 220px);
|
97 |
-
|
98 |
-
> .csf-help{
|
99 |
-
top: -5px;
|
100 |
-
right: -5px;
|
101 |
-
}
|
102 |
-
}
|
103 |
-
}
|
104 |
-
|
105 |
-
> .csf-field-submessage{
|
106 |
-
margin: 20px 0;
|
107 |
-
}
|
108 |
-
|
109 |
-
> .csf-field-subheading,
|
110 |
-
> .csf-field-heading{
|
111 |
-
margin: 20px 0;
|
112 |
-
border: 1px solid #ddd;
|
113 |
-
}
|
114 |
-
}
|
1 |
+
/**
|
2 |
+
* 06. Taxonomy
|
3 |
+
*/
|
4 |
+
.csf-taxonomy{
|
5 |
+
max-width: 95%;
|
6 |
+
|
7 |
+
> .csf-field{
|
8 |
+
border-top: none !important;
|
9 |
+
}
|
10 |
+
|
11 |
+
> .csf-field-heading{
|
12 |
+
font-size: 1.1em;
|
13 |
+
padding: 20px !important;
|
14 |
+
border: 1px solid #ddd;
|
15 |
+
}
|
16 |
+
|
17 |
+
> .csf-field-subheading{
|
18 |
+
font-size: 12px;
|
19 |
+
padding: 15px !important;
|
20 |
+
border: 1px solid #ddd;
|
21 |
+
}
|
22 |
+
|
23 |
+
> .csf-field-submessage{
|
24 |
+
|
25 |
+
.csf-submessage{
|
26 |
+
padding: 15px;
|
27 |
+
border-left-width: 1px;
|
28 |
+
border-left-style: solid;
|
29 |
+
border-right-width: 1px;
|
30 |
+
border-right-style: solid;
|
31 |
+
}
|
32 |
+
}
|
33 |
+
|
34 |
+
> .csf-field-notice{
|
35 |
+
background-color: transparent;
|
36 |
+
}
|
37 |
+
|
38 |
+
.csf-section-title{
|
39 |
+
display: block;
|
40 |
+
padding: 15px ;
|
41 |
+
background-color: #f9f9f9;
|
42 |
+
border: 1px solid #e5e5e5;
|
43 |
+
box-shadow: 0 1px 1px rgba(0,0,0,0.04);
|
44 |
+
}
|
45 |
+
}
|
46 |
+
|
47 |
+
.csf-taxonomy-add-fields{
|
48 |
+
|
49 |
+
> .csf-field{
|
50 |
+
padding: 8px 0;
|
51 |
+
|
52 |
+
> .csf-title{
|
53 |
+
float: none;
|
54 |
+
width: 100%;
|
55 |
+
padding: 2px 2px 4px 0;
|
56 |
+
|
57 |
+
h4{
|
58 |
+
font-size: 12px;
|
59 |
+
font-weight: normal;
|
60 |
+
}
|
61 |
+
}
|
62 |
+
|
63 |
+
> .csf-fieldset{
|
64 |
+
float: none;
|
65 |
+
width: 100%;
|
66 |
+
|
67 |
+
> .csf-help{
|
68 |
+
right: -5px;
|
69 |
+
}
|
70 |
+
}
|
71 |
+
}
|
72 |
+
|
73 |
+
+ p.submit{
|
74 |
+
margin-top: 0;
|
75 |
+
}
|
76 |
+
}
|
77 |
+
|
78 |
+
.csf-taxonomy-edit-fields{
|
79 |
+
|
80 |
+
> .csf-field{
|
81 |
+
padding: 20px 0;
|
82 |
+
|
83 |
+
> .csf-title{
|
84 |
+
width: 200px;
|
85 |
+
|
86 |
+
h4{
|
87 |
+
font-size: 14px;
|
88 |
+
font-weight: 600;
|
89 |
+
line-height: 1.3;
|
90 |
+
display: inline-block;
|
91 |
+
vertical-align: middle;
|
92 |
+
}
|
93 |
+
}
|
94 |
+
|
95 |
+
> .csf-fieldset{
|
96 |
+
width: calc(100% - 220px);
|
97 |
+
|
98 |
+
> .csf-help{
|
99 |
+
top: -5px;
|
100 |
+
right: -5px;
|
101 |
+
}
|
102 |
+
}
|
103 |
+
}
|
104 |
+
|
105 |
+
> .csf-field-submessage{
|
106 |
+
margin: 20px 0;
|
107 |
+
}
|
108 |
+
|
109 |
+
> .csf-field-subheading,
|
110 |
+
> .csf-field-heading{
|
111 |
+
margin: 20px 0;
|
112 |
+
border: 1px solid #ddd;
|
113 |
+
}
|
114 |
+
}
|
vendor/codestar-framework/assets/scss/partials/_themes.scss
CHANGED
@@ -1,303 +1,303 @@
|
|
1 |
-
/**
|
2 |
-
* 02. Themes
|
3 |
-
*/
|
4 |
-
|
5 |
-
/**
|
6 |
-
* 02. 01. Theme Dark
|
7 |
-
*/
|
8 |
-
.csf-theme-dark{
|
9 |
-
|
10 |
-
.csf-header-inner{
|
11 |
-
background-color: #050505;
|
12 |
-
|
13 |
-
h1{
|
14 |
-
color: #fff;
|
15 |
-
|
16 |
-
small{
|
17 |
-
color: #555;
|
18 |
-
}
|
19 |
-
}
|
20 |
-
}
|
21 |
-
|
22 |
-
.csf-expand-all{
|
23 |
-
color: #999;
|
24 |
-
background-color: #222;
|
25 |
-
|
26 |
-
&:hover{
|
27 |
-
color: #fff;
|
28 |
-
background-color: #333;
|
29 |
-
}
|
30 |
-
}
|
31 |
-
|
32 |
-
.csf-search{
|
33 |
-
|
34 |
-
input{
|
35 |
-
color: #fff;
|
36 |
-
background-color: #222;
|
37 |
-
}
|
38 |
-
|
39 |
-
&:focus{
|
40 |
-
background-color: #444;
|
41 |
-
}
|
42 |
-
|
43 |
-
&::-webkit-input-placeholder{
|
44 |
-
color: #666;
|
45 |
-
}
|
46 |
-
}
|
47 |
-
|
48 |
-
.csf-nav{
|
49 |
-
|
50 |
-
ul{
|
51 |
-
|
52 |
-
li{
|
53 |
-
|
54 |
-
a{
|
55 |
-
color: #999;
|
56 |
-
border-color: #2f2f2f;
|
57 |
-
background-color: #222;
|
58 |
-
|
59 |
-
&:hover{
|
60 |
-
color: #fff;
|
61 |
-
}
|
62 |
-
}
|
63 |
-
|
64 |
-
.csf-active{
|
65 |
-
color: #fff;
|
66 |
-
background-color: #111;
|
67 |
-
}
|
68 |
-
}
|
69 |
-
|
70 |
-
ul{
|
71 |
-
|
72 |
-
li{
|
73 |
-
|
74 |
-
a{
|
75 |
-
border-color: #2f2f2f;
|
76 |
-
background-color: #191919;
|
77 |
-
}
|
78 |
-
|
79 |
-
.csf-active{
|
80 |
-
background-color: #101010;
|
81 |
-
}
|
82 |
-
}
|
83 |
-
|
84 |
-
&:before{
|
85 |
-
background-color: rgba(#222, 0.75);
|
86 |
-
}
|
87 |
-
}
|
88 |
-
}
|
89 |
-
|
90 |
-
> ul > li:last-child > a{
|
91 |
-
border: none;
|
92 |
-
}
|
93 |
-
}
|
94 |
-
|
95 |
-
.csf-nav-normal{
|
96 |
-
|
97 |
-
ul{
|
98 |
-
|
99 |
-
li{
|
100 |
-
|
101 |
-
a{
|
102 |
-
border-bottom-width: 1px;
|
103 |
-
border-bottom-style: solid;
|
104 |
-
}
|
105 |
-
|
106 |
-
.csf-active:after{
|
107 |
-
content: " ";
|
108 |
-
position: absolute;
|
109 |
-
right: 0;
|
110 |
-
top: 50%;
|
111 |
-
height: 0;
|
112 |
-
width: 0;
|
113 |
-
pointer-events: none;
|
114 |
-
border: solid transparent;
|
115 |
-
border-right-color: #fff;
|
116 |
-
border-width: 4px;
|
117 |
-
margin-top: -4px;
|
118 |
-
}
|
119 |
-
}
|
120 |
-
}
|
121 |
-
}
|
122 |
-
|
123 |
-
.csf-nav-inline{
|
124 |
-
background-color: #222;
|
125 |
-
|
126 |
-
ul{
|
127 |
-
|
128 |
-
li{
|
129 |
-
|
130 |
-
a{
|
131 |
-
text-align: center;
|
132 |
-
border-right-width: 1px;
|
133 |
-
border-right-style: solid;
|
134 |
-
}
|
135 |
-
|
136 |
-
.csf-active:after{
|
137 |
-
content: " ";
|
138 |
-
position: absolute;
|
139 |
-
left: 50%;
|
140 |
-
bottom: 0;
|
141 |
-
height: 0;
|
142 |
-
width: 0;
|
143 |
-
pointer-events: none;
|
144 |
-
border: solid transparent;
|
145 |
-
border-bottom-color: #fff;
|
146 |
-
border-width: 4px;
|
147 |
-
margin-left: -4px;
|
148 |
-
}
|
149 |
-
}
|
150 |
-
}
|
151 |
-
}
|
152 |
-
|
153 |
-
.csf-nav-background{
|
154 |
-
background-color: #222;
|
155 |
-
}
|
156 |
-
|
157 |
-
.csf-footer{
|
158 |
-
color: #555;
|
159 |
-
background-color: #050505;
|
160 |
-
}
|
161 |
-
}
|
162 |
-
|
163 |
-
/**
|
164 |
-
* 02. 02. Theme Light
|
165 |
-
*/
|
166 |
-
.csf-theme-light{
|
167 |
-
|
168 |
-
.csf-container{
|
169 |
-
border: 1px solid #ccd0d4;
|
170 |
-
box-shadow: 0 0 15 rgba(0,0,0,0.04);
|
171 |
-
}
|
172 |
-
|
173 |
-
.csf-header-inner{
|
174 |
-
border-bottom: 1px solid #ccd0d4;
|
175 |
-
background-color: #f5f5f5;
|
176 |
-
background: linear-gradient(#fefefe, #f5f5f5);
|
177 |
-
|
178 |
-
h1{
|
179 |
-
|
180 |
-
small{
|
181 |
-
color: #999;
|
182 |
-
}
|
183 |
-
}
|
184 |
-
}
|
185 |
-
|
186 |
-
.csf-expand-all{
|
187 |
-
color: #999;
|
188 |
-
background-color: #eee;
|
189 |
-
|
190 |
-
&:hover{
|
191 |
-
color: #555;
|
192 |
-
}
|
193 |
-
}
|
194 |
-
|
195 |
-
.csf-search{
|
196 |
-
|
197 |
-
input{
|
198 |
-
color: #555;
|
199 |
-
background-color: #eee;
|
200 |
-
|
201 |
-
&::-webkit-input-placeholder{
|
202 |
-
color: #999;
|
203 |
-
}
|
204 |
-
}
|
205 |
-
}
|
206 |
-
|
207 |
-
.csf-nav{
|
208 |
-
|
209 |
-
ul{
|
210 |
-
|
211 |
-
li{
|
212 |
-
|
213 |
-
a{
|
214 |
-
font-weight: 500;
|
215 |
-
color: #444;
|
216 |
-
background-color: #f5f5f5;
|
217 |
-
|
218 |
-
&:hover{
|
219 |
-
color: #111;
|
220 |
-
background-color: #fff;
|
221 |
-
}
|
222 |
-
}
|
223 |
-
|
224 |
-
.csf-active{
|
225 |
-
color: #111;
|
226 |
-
background-color: #fff;
|
227 |
-
}
|
228 |
-
}
|
229 |
-
|
230 |
-
ul{
|
231 |
-
|
232 |
-
li{
|
233 |
-
|
234 |
-
a{
|
235 |
-
background-color: #eee;
|
236 |
-
}
|
237 |
-
}
|
238 |
-
}
|
239 |
-
}
|
240 |
-
}
|
241 |
-
|
242 |
-
.csf-nav-normal{
|
243 |
-
|
244 |
-
> ul{
|
245 |
-
margin-right: -1px;
|
246 |
-
margin-bottom: -1px;
|
247 |
-
|
248 |
-
li{
|
249 |
-
|
250 |
-
a{
|
251 |
-
border-bottom: 1px solid #ccd0d4;
|
252 |
-
border-right: 1px solid #ccd0d4;
|
253 |
-
}
|
254 |
-
|
255 |
-
.csf-active{
|
256 |
-
border-right-color: #fff;
|
257 |
-
}
|
258 |
-
}
|
259 |
-
}
|
260 |
-
}
|
261 |
-
|
262 |
-
.csf-nav-inline{
|
263 |
-
background-color: #f5f5f5;
|
264 |
-
border-bottom: 1px solid #ccd0d4;
|
265 |
-
|
266 |
-
> ul{
|
267 |
-
margin-bottom: -1px;
|
268 |
-
|
269 |
-
li{
|
270 |
-
|
271 |
-
a{
|
272 |
-
text-align: center;
|
273 |
-
border-right: 1px solid #ccd0d4;
|
274 |
-
border-bottom: 1px solid #ccd0d4;
|
275 |
-
}
|
276 |
-
|
277 |
-
.csf-active{
|
278 |
-
border-bottom-color: #fff;
|
279 |
-
}
|
280 |
-
}
|
281 |
-
|
282 |
-
ul{
|
283 |
-
display: none !important
|
284 |
-
}
|
285 |
-
}
|
286 |
-
|
287 |
-
.csf-arrow:after{
|
288 |
-
display: none;
|
289 |
-
}
|
290 |
-
}
|
291 |
-
|
292 |
-
.csf-nav-background{
|
293 |
-
background-color: #f5f5f5;
|
294 |
-
border-right: 1px solid #ccd0d4;
|
295 |
-
}
|
296 |
-
|
297 |
-
.csf-footer{
|
298 |
-
color: #555;
|
299 |
-
border-top: 1px solid #ccd0d4;
|
300 |
-
background-color: #f5f5f5;
|
301 |
-
background: linear-gradient(#fafafa, #f5f5f5);
|
302 |
-
}
|
303 |
-
}
|
1 |
+
/**
|
2 |
+
* 02. Themes
|
3 |
+
*/
|
4 |
+
|
5 |
+
/**
|
6 |
+
* 02. 01. Theme Dark
|
7 |
+
*/
|
8 |
+
.csf-theme-dark{
|
9 |
+
|
10 |
+
.csf-header-inner{
|
11 |
+
background-color: #050505;
|
12 |
+
|
13 |
+
h1{
|
14 |
+
color: #fff;
|
15 |
+
|
16 |
+
small{
|
17 |
+
color: #555;
|
18 |
+
}
|
19 |
+
}
|
20 |
+
}
|
21 |
+
|
22 |
+
.csf-expand-all{
|
23 |
+
color: #999;
|
24 |
+
background-color: #222;
|
25 |
+
|
26 |
+
&:hover{
|
27 |
+
color: #fff;
|
28 |
+
background-color: #333;
|
29 |
+
}
|
30 |
+
}
|
31 |
+
|
32 |
+
.csf-search{
|
33 |
+
|
34 |
+
input{
|
35 |
+
color: #fff;
|
36 |
+
background-color: #222;
|
37 |
+
}
|
38 |
+
|
39 |
+
&:focus{
|
40 |
+
background-color: #444;
|
41 |
+
}
|
42 |
+
|
43 |
+
&::-webkit-input-placeholder{
|
44 |
+
color: #666;
|
45 |
+
}
|
46 |
+
}
|
47 |
+
|
48 |
+
.csf-nav{
|
49 |
+
|
50 |
+
ul{
|
51 |
+
|
52 |
+
li{
|
53 |
+
|
54 |
+
a{
|
55 |
+
color: #999;
|
56 |
+
border-color: #2f2f2f;
|
57 |
+
background-color: #222;
|
58 |
+
|
59 |
+
&:hover{
|
60 |
+
color: #fff;
|
61 |
+
}
|
62 |
+
}
|
63 |
+
|
64 |
+
.csf-active{
|
65 |
+
color: #fff;
|
66 |
+
background-color: #111;
|
67 |
+
}
|
68 |
+
}
|
69 |
+
|
70 |
+
ul{
|
71 |
+
|
72 |
+
li{
|
73 |
+
|
74 |
+
a{
|
75 |
+
border-color: #2f2f2f;
|
76 |
+
background-color: #191919;
|
77 |
+
}
|
78 |
+
|
79 |
+
.csf-active{
|
80 |
+
background-color: #101010;
|
81 |
+
}
|
82 |
+
}
|
83 |
+
|
84 |
+
&:before{
|
85 |
+
background-color: rgba(#222, 0.75);
|
86 |
+
}
|
87 |
+
}
|
88 |
+
}
|
89 |
+
|
90 |
+
> ul > li:last-child > a{
|
91 |
+
border: none;
|
92 |
+
}
|
93 |
+
}
|
94 |
+
|
95 |
+
.csf-nav-normal{
|
96 |
+
|
97 |
+
ul{
|
98 |
+
|
99 |
+
li{
|
100 |
+
|
101 |
+
a{
|
102 |
+
border-bottom-width: 1px;
|
103 |
+
border-bottom-style: solid;
|
104 |
+
}
|
105 |
+
|
106 |
+
.csf-active:after{
|
107 |
+
content: " ";
|
108 |
+
position: absolute;
|
109 |
+
right: 0;
|
110 |
+
top: 50%;
|
111 |
+
height: 0;
|
112 |
+
width: 0;
|
113 |
+
pointer-events: none;
|
114 |
+
border: solid transparent;
|
115 |
+
border-right-color: #fff;
|
116 |
+
border-width: 4px;
|
117 |
+
margin-top: -4px;
|
118 |
+
}
|
119 |
+
}
|
120 |
+
}
|
121 |
+
}
|
122 |
+
|
123 |
+
.csf-nav-inline{
|
124 |
+
background-color: #222;
|
125 |
+
|
126 |
+
ul{
|
127 |
+
|
128 |
+
li{
|
129 |
+
|
130 |
+
a{
|
131 |
+
text-align: center;
|
132 |
+
border-right-width: 1px;
|
133 |
+
border-right-style: solid;
|
134 |
+
}
|
135 |
+
|
136 |
+
.csf-active:after{
|
137 |
+
content: " ";
|
138 |
+
position: absolute;
|
139 |
+
left: 50%;
|
140 |
+
bottom: 0;
|
141 |
+
height: 0;
|
142 |
+
width: 0;
|
143 |
+
pointer-events: none;
|
144 |
+
border: solid transparent;
|
145 |
+
border-bottom-color: #fff;
|
146 |
+
border-width: 4px;
|
147 |
+
margin-left: -4px;
|
148 |
+
}
|
149 |
+
}
|
150 |
+
}
|
151 |
+
}
|
152 |
+
|
153 |
+
.csf-nav-background{
|
154 |
+
background-color: #222;
|
155 |
+
}
|
156 |
+
|
157 |
+
.csf-footer{
|
158 |
+
color: #555;
|
159 |
+
background-color: #050505;
|
160 |
+
}
|
161 |
+
}
|
162 |
+
|
163 |
+
/**
|
164 |
+
* 02. 02. Theme Light
|
165 |
+
*/
|
166 |
+
.csf-theme-light{
|
167 |
+
|
168 |
+
.csf-container{
|
169 |
+
border: 1px solid #ccd0d4;
|
170 |
+
box-shadow: 0 0 15 rgba(0,0,0,0.04);
|
171 |
+
}
|
172 |
+
|
173 |
+
.csf-header-inner{
|
174 |
+
border-bottom: 1px solid #ccd0d4;
|
175 |
+
background-color: #f5f5f5;
|
176 |
+
background: linear-gradient(#fefefe, #f5f5f5);
|
177 |
+
|
178 |
+
h1{
|
179 |
+
|
180 |
+
small{
|
181 |
+
color: #999;
|
182 |
+
}
|
183 |
+
}
|
184 |
+
}
|
185 |
+
|
186 |
+
.csf-expand-all{
|
187 |
+
color: #999;
|
188 |
+
background-color: #eee;
|
189 |
+
|
190 |
+
&:hover{
|
191 |
+
color: #555;
|
192 |
+
}
|
193 |
+
}
|
194 |
+
|
195 |
+
.csf-search{
|
196 |
+
|
197 |
+
input{
|
198 |
+
color: #555;
|
199 |
+
background-color: #eee;
|
200 |
+
|
201 |
+
&::-webkit-input-placeholder{
|
202 |
+
color: #999;
|
203 |
+
}
|
204 |
+
}
|
205 |
+
}
|
206 |
+
|
207 |
+
.csf-nav{
|
208 |
+
|
209 |
+
ul{
|
210 |
+
|
211 |
+
li{
|
212 |
+
|
213 |
+
a{
|
214 |
+
font-weight: 500;
|
215 |
+
color: #444;
|
216 |
+
background-color: #f5f5f5;
|
217 |
+
|
218 |
+
&:hover{
|
219 |
+
color: #111;
|
220 |
+
background-color: #fff;
|
221 |
+
}
|
222 |
+
}
|
223 |
+
|
224 |
+
.csf-active{
|
225 |
+
color: #111;
|
226 |
+
background-color: #fff;
|
227 |
+
}
|
228 |
+
}
|
229 |
+
|
230 |
+
ul{
|
231 |
+
|
232 |
+
li{
|
233 |
+
|
234 |
+
a{
|
235 |
+
background-color: #eee;
|
236 |
+
}
|
237 |
+
}
|
238 |
+
}
|
239 |
+
}
|
240 |
+
}
|
241 |
+
|
242 |
+
.csf-nav-normal{
|
243 |
+
|
244 |
+
> ul{
|
245 |
+
margin-right: -1px;
|
246 |
+
margin-bottom: -1px;
|
247 |
+
|
248 |
+
li{
|
249 |
+
|
250 |
+
a{
|
251 |
+
border-bottom: 1px solid #ccd0d4;
|
252 |
+
border-right: 1px solid #ccd0d4;
|
253 |
+
}
|
254 |
+
|
255 |
+
.csf-active{
|
256 |
+
border-right-color: #fff;
|
257 |
+
}
|
258 |
+
}
|
259 |
+
}
|
260 |
+
}
|
261 |
+
|
262 |
+
.csf-nav-inline{
|
263 |
+
background-color: #f5f5f5;
|
264 |
+
border-bottom: 1px solid #ccd0d4;
|
265 |
+
|
266 |
+
> ul{
|
267 |
+
margin-bottom: -1px;
|
268 |
+
|
269 |
+
li{
|
270 |
+
|
271 |
+
a{
|
272 |
+
text-align: center;
|
273 |
+
border-right: 1px solid #ccd0d4;
|
274 |
+
border-bottom: 1px solid #ccd0d4;
|
275 |
+
}
|
276 |
+
|
277 |
+
.csf-active{
|
278 |
+
border-bottom-color: #fff;
|
279 |
+
}
|
280 |
+
}
|
281 |
+
|
282 |
+
ul{
|
283 |
+
display: none !important
|
284 |
+
}
|
285 |
+
}
|
286 |
+
|
287 |
+
.csf-arrow:after{
|
288 |
+
display: none;
|
289 |
+
}
|
290 |
+
}
|
291 |
+
|
292 |
+
.csf-nav-background{
|
293 |
+
background-color: #f5f5f5;
|
294 |
+
border-right: 1px solid #ccd0d4;
|
295 |
+
}
|
296 |
+
|
297 |
+
.csf-footer{
|
298 |
+
color: #555;
|
299 |
+
border-top: 1px solid #ccd0d4;
|
300 |
+
background-color: #f5f5f5;
|
301 |
+
background: linear-gradient(#fafafa, #f5f5f5);
|
302 |
+
}
|
303 |
+
}
|
vendor/codestar-framework/assets/scss/partials/_welcome.scss
CHANGED
@@ -1,346 +1,346 @@
|
|
1 |
-
/**
|
2 |
-
* 11. Welcome Page
|
3 |
-
*/
|
4 |
-
.csf-welcome-wrap{
|
5 |
-
position: relative;
|
6 |
-
margin: 25px 40px 0 20px;
|
7 |
-
font-size: 15px;
|
8 |
-
max-width: 1200px;
|
9 |
-
|
10 |
-
p{
|
11 |
-
font-size: 14px;
|
12 |
-
line-height: 1.5;
|
13 |
-
}
|
14 |
-
|
15 |
-
h1{
|
16 |
-
margin: 0.2em 200px 0 0;
|
17 |
-
padding: 0;
|
18 |
-
color: #32373c;
|
19 |
-
line-height: 1.2em;
|
20 |
-
font-size: 2.8em;
|
21 |
-
font-weight: 400;
|
22 |
-
}
|
23 |
-
|
24 |
-
.csf-logo{
|
25 |
-
position: absolute;
|
26 |
-
overflow: hidden;
|
27 |
-
top: 0;
|
28 |
-
right: 0;
|
29 |
-
height: 160px;
|
30 |
-
width: 140px;
|
31 |
-
background-image: linear-gradient( 45deg, #2d67cb, #ad19f3);
|
32 |
-
box-shadow: 0 1px 4px rgba(0,0,0,0.25), inset 0 0 0 4px rgba(0,0,0,0.25);
|
33 |
-
|
34 |
-
.csf--effects i{
|
35 |
-
position: absolute;
|
36 |
-
width: 200px;
|
37 |
-
height: 100px;
|
38 |
-
background-color: rgba(0,0,0,0.15);
|
39 |
-
transform: rotate(-45deg);
|
40 |
-
}
|
41 |
-
|
42 |
-
.csf--effects i:nth-child(1){
|
43 |
-
bottom: -20px;
|
44 |
-
right: -70px;
|
45 |
-
}
|
46 |
-
|
47 |
-
.csf--effects i:nth-child(2){
|
48 |
-
bottom: -35px;
|
49 |
-
right: -80px;
|
50 |
-
}
|
51 |
-
|
52 |
-
.csf--effects i:nth-child(3){
|
53 |
-
bottom: -50px;
|
54 |
-
right: -90px;
|
55 |
-
}
|
56 |
-
|
57 |
-
.csf--effects i:nth-child(4){
|
58 |
-
bottom: -65px;
|
59 |
-
right: -100px;
|
60 |
-
}
|
61 |
-
|
62 |
-
.csf--wp-logos{
|
63 |
-
position: relative;
|
64 |
-
padding-top: 25px;
|
65 |
-
text-align: center;
|
66 |
-
}
|
67 |
-
|
68 |
-
.csf--wp-logo{
|
69 |
-
position: absolute;
|
70 |
-
left: 20px;
|
71 |
-
width: 20px;
|
72 |
-
height: 20px;
|
73 |
-
background-repeat: no-repeat;
|
74 |
-
background-position: center center;
|
75 |
-
background-image: url(../images/wp-logo.svg);
|
76 |
-
}
|
77 |
-
|
78 |
-
.csf--wp-plugin-logo{
|
79 |
-
display: inline-block;
|
80 |
-
width: 50px;
|
81 |
-
height: 50px;
|
82 |
-
border: 3px solid #fff;
|
83 |
-
background-size: 40px;
|
84 |
-
background-repeat: no-repeat;
|
85 |
-
background-position: center center;
|
86 |
-
background-image: url(../images/wp-plugin-logo.svg);
|
87 |
-
border-radius: 100%;
|
88 |
-
vertical-align: middle;
|
89 |
-
}
|
90 |
-
|
91 |
-
.csf--text{
|
92 |
-
position: absolute;
|
93 |
-
left: 0;
|
94 |
-
right: 0;
|
95 |
-
top: 90px;
|
96 |
-
color: #fff;
|
97 |
-
font-size: 13px;
|
98 |
-
line-height: 1.2em;
|
99 |
-
font-weight: 600;
|
100 |
-
text-align: center;
|
101 |
-
text-transform: uppercase;
|
102 |
-
text-shadow: 1px 1px 0 rgba(0,0,0,0.25);
|
103 |
-
}
|
104 |
-
|
105 |
-
.csf--version{
|
106 |
-
top: auto;
|
107 |
-
left: auto;
|
108 |
-
right: 8px;
|
109 |
-
bottom: 4px;
|
110 |
-
font-size: 11px;
|
111 |
-
text-transform: lowercase;
|
112 |
-
}
|
113 |
-
}
|
114 |
-
|
115 |
-
.csf-about-text{
|
116 |
-
font-weight: 400;
|
117 |
-
line-height: 1.6em;
|
118 |
-
font-size: 19px;
|
119 |
-
margin: 1em 200px 1em 0;
|
120 |
-
color: #555d66;
|
121 |
-
}
|
122 |
-
|
123 |
-
.csf-demo-button{
|
124 |
-
margin: 1em 200px 2em 0;
|
125 |
-
}
|
126 |
-
|
127 |
-
.nav-tab-wrapper{
|
128 |
-
margin-bottom: 20px;
|
129 |
-
}
|
130 |
-
|
131 |
-
ul{
|
132 |
-
list-style-type: disc;
|
133 |
-
padding-left: 15px;
|
134 |
-
}
|
135 |
-
|
136 |
-
.csf--col{
|
137 |
-
float: left;
|
138 |
-
padding-right: 20px;
|
139 |
-
box-sizing: border-box;
|
140 |
-
}
|
141 |
-
|
142 |
-
.csf--col-2{
|
143 |
-
width: 50%;
|
144 |
-
}
|
145 |
-
|
146 |
-
.csf--col-3{
|
147 |
-
width: 33.333%;
|
148 |
-
}
|
149 |
-
|
150 |
-
.csf--col-4{
|
151 |
-
width: 25%;
|
152 |
-
}
|
153 |
-
|
154 |
-
.csf--col-5{
|
155 |
-
width: 20%;
|
156 |
-
}
|
157 |
-
|
158 |
-
.csf--col-last{
|
159 |
-
padding-right: 0;
|
160 |
-
}
|
161 |
-
|
162 |
-
.csf--col-upgrade{
|
163 |
-
padding: 10px 0;
|
164 |
-
text-align: center;
|
165 |
-
border-top: 1px solid #e5e5e5;
|
166 |
-
}
|
167 |
-
}
|
168 |
-
|
169 |
-
.csf--table-compare{
|
170 |
-
|
171 |
-
thead,
|
172 |
-
tfoot{
|
173 |
-
td{
|
174 |
-
text-align: center;
|
175 |
-
}
|
176 |
-
}
|
177 |
-
|
178 |
-
td{
|
179 |
-
font-size: 14px;
|
180 |
-
text-align: center;
|
181 |
-
vertical-align: middle;
|
182 |
-
padding: 10px;
|
183 |
-
}
|
184 |
-
|
185 |
-
td:first-child{
|
186 |
-
text-align: left;
|
187 |
-
}
|
188 |
-
|
189 |
-
tfoot{
|
190 |
-
td{
|
191 |
-
padding: 15px 0;
|
192 |
-
}
|
193 |
-
}
|
194 |
-
|
195 |
-
.fa{
|
196 |
-
font-size: 18px;
|
197 |
-
}
|
198 |
-
|
199 |
-
.fa-check-circle{
|
200 |
-
color: #46b450;
|
201 |
-
}
|
202 |
-
|
203 |
-
.fa-times-circle{
|
204 |
-
color: #dc3232;
|
205 |
-
}
|
206 |
-
}
|
207 |
-
|
208 |
-
.csf-welcome-cols{
|
209 |
-
clear: both;
|
210 |
-
margin: 20px 0;
|
211 |
-
background-color: #fff;
|
212 |
-
padding: 0 0;
|
213 |
-
border-radius: 2px;
|
214 |
-
border: 1px solid #e5e5e5;
|
215 |
-
|
216 |
-
.csf--col{
|
217 |
-
width: 33.333%;
|
218 |
-
float: left;
|
219 |
-
padding: 20px;
|
220 |
-
text-align: center;
|
221 |
-
box-sizing: border-box;
|
222 |
-
min-height: 200px;
|
223 |
-
border-right: 1px solid #e5e5e5;
|
224 |
-
}
|
225 |
-
|
226 |
-
.csf--left,
|
227 |
-
.csf--block{
|
228 |
-
float: left;
|
229 |
-
width: 20%;
|
230 |
-
padding: 0 30px;
|
231 |
-
text-align: center;
|
232 |
-
box-sizing: border-box;
|
233 |
-
}
|
234 |
-
|
235 |
-
.csf--block{
|
236 |
-
width: 80%;
|
237 |
-
}
|
238 |
-
|
239 |
-
.csf--col-first{
|
240 |
-
border-bottom: 1px solid #e5e5e5;
|
241 |
-
}
|
242 |
-
|
243 |
-
.csf--last{
|
244 |
-
border-right: none;
|
245 |
-
}
|
246 |
-
|
247 |
-
.csf--space{
|
248 |
-
height: 20px;
|
249 |
-
}
|
250 |
-
|
251 |
-
.csf--icon{
|
252 |
-
display: inline-block;
|
253 |
-
font-size: 20px;
|
254 |
-
width: 30px;
|
255 |
-
height: 30px;
|
256 |
-
line-height: 30px;
|
257 |
-
text-align: center;
|
258 |
-
margin-bottom: 10px;
|
259 |
-
color: #fff;
|
260 |
-
background-color: #555;
|
261 |
-
border-radius: 30px;
|
262 |
-
}
|
263 |
-
|
264 |
-
.csf--active{
|
265 |
-
background-color: #5cb85c;
|
266 |
-
}
|
267 |
-
|
268 |
-
.csf--deactive{
|
269 |
-
background-color: #e14d43;
|
270 |
-
}
|
271 |
-
|
272 |
-
.csf--title{
|
273 |
-
font-weight: bold;
|
274 |
-
display: block;
|
275 |
-
}
|
276 |
-
|
277 |
-
p:last-child{
|
278 |
-
margin-bottom: 0;
|
279 |
-
}
|
280 |
-
}
|
281 |
-
|
282 |
-
.csf-features-cols{
|
283 |
-
|
284 |
-
.csf--key-features{
|
285 |
-
width: 30%;
|
286 |
-
}
|
287 |
-
.csf--available-fields{
|
288 |
-
width: 70%;
|
289 |
-
}
|
290 |
-
}
|
291 |
-
|
292 |
-
.csf-code-block{
|
293 |
-
margin: 20px 0;
|
294 |
-
padding: 5px 20px;
|
295 |
-
background-color: #fff;
|
296 |
-
border-radius: 2px;
|
297 |
-
box-shadow: 0 1px 1px rgba(0,0,0,0.15);
|
298 |
-
|
299 |
-
pre{
|
300 |
-
font-size: 13px;
|
301 |
-
color: #0073aa;
|
302 |
-
|
303 |
-
span{
|
304 |
-
color: #999;
|
305 |
-
}
|
306 |
-
}
|
307 |
-
}
|
308 |
-
|
309 |
-
.csf--table-fields{
|
310 |
-
td{
|
311 |
-
font-size: 14px;
|
312 |
-
}
|
313 |
-
}
|
314 |
-
|
315 |
-
.csf--upgrade a{
|
316 |
-
color: #5cb85c;
|
317 |
-
font-weight: bold;
|
318 |
-
|
319 |
-
&:focus,
|
320 |
-
&:hover{
|
321 |
-
color: #4aa14a;
|
322 |
-
outline: none;
|
323 |
-
box-shadow: none;
|
324 |
-
}
|
325 |
-
}
|
326 |
-
|
327 |
-
@media only screen and (max-width:782px){
|
328 |
-
|
329 |
-
.csf-welcome-cols{
|
330 |
-
.csf--col{
|
331 |
-
width: 100%;
|
332 |
-
min-height: auto;
|
333 |
-
border-right: none;
|
334 |
-
border-bottom: 1px solid #e5e5e5;
|
335 |
-
}
|
336 |
-
}
|
337 |
-
|
338 |
-
.csf-features-cols{
|
339 |
-
.csf--key-features{
|
340 |
-
width: 100%;
|
341 |
-
}
|
342 |
-
.csf--available-fields{
|
343 |
-
width: 100%;
|
344 |
-
}
|
345 |
-
}
|
346 |
-
}
|
1 |
+
/**
|
2 |
+
* 11. Welcome Page
|
3 |
+
*/
|
4 |
+
.csf-welcome-wrap{
|
5 |
+
position: relative;
|
6 |
+
margin: 25px 40px 0 20px;
|
7 |
+
font-size: 15px;
|
8 |
+
max-width: 1200px;
|
9 |
+
|
10 |
+
p{
|
11 |
+
font-size: 14px;
|
12 |
+
line-height: 1.5;
|
13 |
+
}
|
14 |
+
|
15 |
+
h1{
|
16 |
+
margin: 0.2em 200px 0 0;
|
17 |
+
padding: 0;
|
18 |
+
color: #32373c;
|
19 |
+
line-height: 1.2em;
|
20 |
+
font-size: 2.8em;
|
21 |
+
font-weight: 400;
|
22 |
+
}
|
23 |
+
|
24 |
+
.csf-logo{
|
25 |
+
position: absolute;
|
26 |
+
overflow: hidden;
|
27 |
+
top: 0;
|
28 |
+
right: 0;
|
29 |
+
height: 160px;
|
30 |
+
width: 140px;
|
31 |
+
background-image: linear-gradient( 45deg, #2d67cb, #ad19f3);
|
32 |
+
box-shadow: 0 1px 4px rgba(0,0,0,0.25), inset 0 0 0 4px rgba(0,0,0,0.25);
|
33 |
+
|
34 |
+
.csf--effects i{
|
35 |
+
position: absolute;
|
36 |
+
width: 200px;
|
37 |
+
height: 100px;
|
38 |
+
background-color: rgba(0,0,0,0.15);
|
39 |
+
transform: rotate(-45deg);
|
40 |
+
}
|
41 |
+
|
42 |
+
.csf--effects i:nth-child(1){
|
43 |
+
bottom: -20px;
|
44 |
+
right: -70px;
|
45 |
+
}
|
46 |
+
|
47 |
+
.csf--effects i:nth-child(2){
|
48 |
+
bottom: -35px;
|
49 |
+
right: -80px;
|
50 |
+
}
|
51 |
+
|
52 |
+
.csf--effects i:nth-child(3){
|
53 |
+
bottom: -50px;
|
54 |
+
right: -90px;
|
55 |
+
}
|
56 |
+
|
57 |
+
.csf--effects i:nth-child(4){
|
58 |
+
bottom: -65px;
|
59 |
+
right: -100px;
|
60 |
+
}
|
61 |
+
|
62 |
+
.csf--wp-logos{
|
63 |
+
position: relative;
|
64 |
+
padding-top: 25px;
|
65 |
+
text-align: center;
|
66 |
+
}
|
67 |
+
|
68 |
+
.csf--wp-logo{
|
69 |
+
position: absolute;
|
70 |
+
left: 20px;
|
71 |
+
width: 20px;
|
72 |
+
height: 20px;
|
73 |
+
background-repeat: no-repeat;
|
74 |
+
background-position: center center;
|
75 |
+
background-image: url(../images/wp-logo.svg);
|
76 |
+
}
|
77 |
+
|
78 |
+
.csf--wp-plugin-logo{
|
79 |
+
display: inline-block;
|
80 |
+
width: 50px;
|
81 |
+
height: 50px;
|
82 |
+
border: 3px solid #fff;
|
83 |
+
background-size: 40px;
|
84 |
+
background-repeat: no-repeat;
|
85 |
+
background-position: center center;
|
86 |
+
background-image: url(../images/wp-plugin-logo.svg);
|
87 |
+
border-radius: 100%;
|
88 |
+
vertical-align: middle;
|
89 |
+
}
|
90 |
+
|
91 |
+
.csf--text{
|
92 |
+
position: absolute;
|
93 |
+
left: 0;
|
94 |
+
right: 0;
|
95 |
+
top: 90px;
|
96 |
+
color: #fff;
|
97 |
+
font-size: 13px;
|
98 |
+
line-height: 1.2em;
|
99 |
+
font-weight: 600;
|
100 |
+
text-align: center;
|
101 |
+
text-transform: uppercase;
|
102 |
+
text-shadow: 1px 1px 0 rgba(0,0,0,0.25);
|
103 |
+
}
|
104 |
+
|
105 |
+
.csf--version{
|
106 |
+
top: auto;
|
107 |
+
left: auto;
|
108 |
+
right: 8px;
|
109 |
+
bottom: 4px;
|
110 |
+
font-size: 11px;
|
111 |
+
text-transform: lowercase;
|
112 |
+
}
|
113 |
+
}
|
114 |
+
|
115 |
+
.csf-about-text{
|
116 |
+
font-weight: 400;
|
117 |
+
line-height: 1.6em;
|
118 |
+
font-size: 19px;
|
119 |
+
margin: 1em 200px 1em 0;
|
120 |
+
color: #555d66;
|
121 |
+
}
|
122 |
+
|
123 |
+
.csf-demo-button{
|
124 |
+
margin: 1em 200px 2em 0;
|
125 |
+
}
|
126 |
+
|
127 |
+
.nav-tab-wrapper{
|
128 |
+
margin-bottom: 20px;
|
129 |
+
}
|
130 |
+
|
131 |
+
ul{
|
132 |
+
list-style-type: disc;
|
133 |
+
padding-left: 15px;
|
134 |
+
}
|
135 |
+
|
136 |
+
.csf--col{
|
137 |
+
float: left;
|
138 |
+
padding-right: 20px;
|
139 |
+
box-sizing: border-box;
|
140 |
+
}
|
141 |
+
|
142 |
+
.csf--col-2{
|
143 |
+
width: 50%;
|
144 |
+
}
|
145 |
+
|
146 |
+
.csf--col-3{
|
147 |
+
width: 33.333%;
|
148 |
+
}
|
149 |
+
|
150 |
+
.csf--col-4{
|
151 |
+
width: 25%;
|
152 |
+
}
|
153 |
+
|
154 |
+
.csf--col-5{
|
155 |
+
width: 20%;
|
156 |
+
}
|
157 |
+
|
158 |
+
.csf--col-last{
|
159 |
+
padding-right: 0;
|
160 |
+
}
|
161 |
+
|
162 |
+
.csf--col-upgrade{
|
163 |
+
padding: 10px 0;
|
164 |
+
text-align: center;
|
165 |
+
border-top: 1px solid #e5e5e5;
|
166 |
+
}
|
167 |
+
}
|
168 |
+
|
169 |
+
.csf--table-compare{
|
170 |
+
|
171 |
+
thead,
|
172 |
+
tfoot{
|
173 |
+
td{
|
174 |
+
text-align: center;
|
175 |
+
}
|
176 |
+
}
|
177 |
+
|
178 |
+
td{
|
179 |
+
font-size: 14px;
|
180 |
+
text-align: center;
|
181 |
+
vertical-align: middle;
|
182 |
+
padding: 10px;
|
183 |
+
}
|
184 |
+
|
185 |
+
td:first-child{
|
186 |
+
text-align: left;
|
187 |
+
}
|
188 |
+
|
189 |
+
tfoot{
|
190 |
+
td{
|
191 |
+
padding: 15px 0;
|
192 |
+
}
|
193 |
+
}
|
194 |
+
|
195 |
+
.fa{
|
196 |
+
font-size: 18px;
|
197 |
+
}
|
198 |
+
|
199 |
+
.fa-check-circle{
|
200 |
+
color: #46b450;
|
201 |
+
}
|
202 |
+
|
203 |
+
.fa-times-circle{
|
204 |
+
color: #dc3232;
|
205 |
+
}
|
206 |
+
}
|
207 |
+
|
208 |
+
.csf-welcome-cols{
|
209 |
+
clear: both;
|
210 |
+
margin: 20px 0;
|
211 |
+
background-color: #fff;
|
212 |
+
padding: 0 0;
|
213 |
+
border-radius: 2px;
|
214 |
+
border: 1px solid #e5e5e5;
|
215 |
+
|
216 |
+
.csf--col{
|
217 |
+
width: 33.333%;
|
218 |
+
float: left;
|
219 |
+
padding: 20px;
|
220 |
+
text-align: center;
|
221 |
+
box-sizing: border-box;
|
222 |
+
min-height: 200px;
|
223 |
+
border-right: 1px solid #e5e5e5;
|
224 |
+
}
|
225 |
+
|
226 |
+
.csf--left,
|
227 |
+
.csf--block{
|
228 |
+
float: left;
|
229 |
+
width: 20%;
|
230 |
+
padding: 0 30px;
|
231 |
+
text-align: center;
|
232 |
+
box-sizing: border-box;
|
233 |
+
}
|
234 |
+
|
235 |
+
.csf--block{
|
236 |
+
width: 80%;
|
237 |
+
}
|
238 |
+
|
239 |
+
.csf--col-first{
|
240 |
+
border-bottom: 1px solid #e5e5e5;
|
241 |
+
}
|
242 |
+
|
243 |
+
.csf--last{
|
244 |
+
border-right: none;
|
245 |
+
}
|
246 |
+
|
247 |
+
.csf--space{
|
248 |
+
height: 20px;
|
249 |
+
}
|
250 |
+
|
251 |
+
.csf--icon{
|
252 |
+
display: inline-block;
|
253 |
+
font-size: 20px;
|
254 |
+
width: 30px;
|
255 |
+
height: 30px;
|
256 |
+
line-height: 30px;
|
257 |
+
text-align: center;
|
258 |
+
margin-bottom: 10px;
|
259 |
+
color: #fff;
|
260 |
+
background-color: #555;
|
261 |
+
border-radius: 30px;
|
262 |
+
}
|
263 |
+
|
264 |
+
.csf--active{
|
265 |
+
background-color: #5cb85c;
|
266 |
+
}
|
267 |
+
|
268 |
+
.csf--deactive{
|
269 |
+
background-color: #e14d43;
|
270 |
+
}
|
271 |
+
|
272 |
+
.csf--title{
|
273 |
+
font-weight: bold;
|
274 |
+
display: block;
|
275 |
+
}
|
276 |
+
|
277 |
+
p:last-child{
|
278 |
+
margin-bottom: 0;
|
279 |
+
}
|
280 |
+
}
|
281 |
+
|
282 |
+
.csf-features-cols{
|
283 |
+
|
284 |
+
.csf--key-features{
|
285 |
+
width: 30%;
|
286 |
+
}
|
287 |
+
.csf--available-fields{
|
288 |
+
width: 70%;
|
289 |
+
}
|
290 |
+
}
|
291 |
+
|
292 |
+
.csf-code-block{
|
293 |
+
margin: 20px 0;
|
294 |
+
padding: 5px 20px;
|
295 |
+
background-color: #fff;
|
296 |
+
border-radius: 2px;
|
297 |
+
box-shadow: 0 1px 1px rgba(0,0,0,0.15);
|
298 |
+
|
299 |
+
pre{
|
300 |
+
font-size: 13px;
|
301 |
+
color: #0073aa;
|
302 |
+
|
303 |
+
span{
|
304 |
+
color: #999;
|
305 |
+
}
|
306 |
+
}
|
307 |
+
}
|
308 |
+
|
309 |
+
.csf--table-fields{
|
310 |
+
td{
|
311 |
+
font-size: 14px;
|
312 |
+
}
|
313 |
+
}
|
314 |
+
|
315 |
+
.csf--upgrade a{
|
316 |
+
color: #5cb85c;
|
317 |
+
font-weight: bold;
|
318 |
+
|
319 |
+
&:focus,
|
320 |
+
&:hover{
|
321 |
+
color: #4aa14a;
|
322 |
+
outline: none;
|
323 |
+
box-shadow: none;
|
324 |
+
}
|
325 |
+
}
|
326 |
+
|
327 |
+
@media only screen and (max-width:782px){
|
328 |
+
|
329 |
+
.csf-welcome-cols{
|
330 |
+
.csf--col{
|
331 |
+
width: 100%;
|
332 |
+
min-height: auto;
|
333 |
+
border-right: none;
|
334 |
+
border-bottom: 1px solid #e5e5e5;
|
335 |
+
}
|
336 |
+
}
|
337 |
+
|
338 |
+
.csf-features-cols{
|
339 |
+
.csf--key-features{
|
340 |
+
width: 100%;
|
341 |
+
}
|
342 |
+
.csf--available-fields{
|
343 |
+
width: 100%;
|
344 |
+
}
|
345 |
+
}
|
346 |
+
}
|
vendor/codestar-framework/assets/scss/partials/_widget.scss
CHANGED
@@ -1,67 +1,67 @@
|
|
1 |
-
/**
|
2 |
-
* 04. Widget
|
3 |
-
*/
|
4 |
-
.csf-widgets{
|
5 |
-
|
6 |
-
> .csf-field{
|
7 |
-
position: relative;
|
8 |
-
top: -1px;
|
9 |
-
margin-left: -15px;
|
10 |
-
margin-right: -15px;
|
11 |
-
padding: 12px 15px;
|
12 |
-
|
13 |
-
.csf-title{
|
14 |
-
float: none;
|
15 |
-
width: 100%;
|
16 |
-
margin-bottom: 5px;
|
17 |
-
}
|
18 |
-
|
19 |
-
.csf-fieldset{
|
20 |
-
float: none;
|
21 |
-
width: 100%;
|
22 |
-
}
|
23 |
-
}
|
24 |
-
|
25 |
-
.csf-field-text input{
|
26 |
-
width: 100%;
|
27 |
-
}
|
28 |
-
|
29 |
-
.csf-field-notice .csf-notice{
|
30 |
-
padding: 15px;
|
31 |
-
}
|
32 |
-
}
|
33 |
-
|
34 |
-
.control-section{
|
35 |
-
|
36 |
-
.csf-widgets{
|
37 |
-
|
38 |
-
> .csf-field{
|
39 |
-
margin-left: -10px;
|
40 |
-
margin-right: -10px;
|
41 |
-
padding: 10px 12px;
|
42 |
-
}
|
43 |
-
}
|
44 |
-
}
|
45 |
-
|
46 |
-
.wp-block{
|
47 |
-
|
48 |
-
.csf-widgets{
|
49 |
-
font-size: 13px;
|
50 |
-
|
51 |
-
> .csf-field{
|
52 |
-
margin-left: -10px;
|
53 |
-
margin-right: -10px;
|
54 |
-
|
55 |
-
.button-primary{
|
56 |
-
color: #fff;
|
57 |
-
}
|
58 |
-
|
59 |
-
> .csf-title{
|
60 |
-
|
61 |
-
> h4{
|
62 |
-
font-size: 13px;
|
63 |
-
}
|
64 |
-
}
|
65 |
-
}
|
66 |
-
}
|
67 |
-
}
|
1 |
+
/**
|
2 |
+
* 04. Widget
|
3 |
+
*/
|
4 |
+
.csf-widgets{
|
5 |
+
|
6 |
+
> .csf-field{
|
7 |
+
position: relative;
|
8 |
+
top: -1px;
|
9 |
+
margin-left: -15px;
|
10 |
+
margin-right: -15px;
|
11 |
+
padding: 12px 15px;
|
12 |
+
|
13 |
+
.csf-title{
|
14 |
+
float: none;
|
15 |
+
width: 100%;
|
16 |
+
margin-bottom: 5px;
|
17 |
+
}
|
18 |
+
|
19 |
+
.csf-fieldset{
|
20 |
+
float: none;
|
21 |
+
width: 100%;
|
22 |
+
}
|
23 |
+
}
|
24 |
+
|
25 |
+
.csf-field-text input{
|
26 |
+
width: 100%;
|
27 |
+
}
|
28 |
+
|
29 |
+
.csf-field-notice .csf-notice{
|
30 |
+
padding: 15px;
|
31 |
+
}
|
32 |
+
}
|
33 |
+
|
34 |
+
.control-section{
|
35 |
+
|
36 |
+
.csf-widgets{
|
37 |
+
|
38 |
+
> .csf-field{
|
39 |
+
margin-left: -10px;
|
40 |
+
margin-right: -10px;
|
41 |
+
padding: 10px 12px;
|
42 |
+
}
|
43 |
+
}
|
44 |
+
}
|
45 |
+
|
46 |
+
.wp-block{
|
47 |
+
|
48 |
+
.csf-widgets{
|
49 |
+
font-size: 13px;
|
50 |
+
|
51 |
+
> .csf-field{
|
52 |
+
margin-left: -10px;
|
53 |
+
margin-right: -10px;
|
54 |
+
|
55 |
+
.button-primary{
|
56 |
+
color: #fff;
|
57 |
+
}
|
58 |
+
|
59 |
+
> .csf-title{
|
60 |
+
|
61 |
+
> h4{
|
62 |
+
font-size: 13px;
|
63 |
+
}
|
64 |
+
}
|
65 |
+
}
|
66 |
+
}
|
67 |
+
}
|
vendor/codestar-framework/assets/scss/style-rtl.scss
CHANGED
@@ -1,728 +1,728 @@
|
|
1 |
-
/**
|
2 |
-
*
|
3 |
-
* ---------------------------------------------------------
|
4 |
-
* CODESTAR FRAMEWORK RTL CSS MAP
|
5 |
-
* ---------------------------------------------------------
|
6 |
-
*
|
7 |
-
* 01. Base
|
8 |
-
* 01. 01. Header
|
9 |
-
* 01. 02. Header Buttons
|
10 |
-
* 01. 03. Navigation
|
11 |
-
* 01. 04. Content
|
12 |
-
* 01. 05. Section
|
13 |
-
* 01. 06. Show All Settings
|
14 |
-
* 01. 07. Search Input
|
15 |
-
* 01. 08. Copyright
|
16 |
-
* 01. 09. Metabox
|
17 |
-
* 02. Fields
|
18 |
-
* 02. 01. Field: typography
|
19 |
-
* 02. 02. Field: checkbox, radio
|
20 |
-
* 02. 03. Field: switcher
|
21 |
-
* 02. 04. Field: upload
|
22 |
-
* 02. 05. Field: group
|
23 |
-
* 02. 06. Field: repeater
|
24 |
-
* 02. 07. Field: help
|
25 |
-
* 02. 08. Field: icon
|
26 |
-
* 02. 09. Field: gallery
|
27 |
-
* 02. 10. Field: sorter
|
28 |
-
* 02. 11. Field: tabbed
|
29 |
-
* 02. 12. Field: media
|
30 |
-
* 02. 13. Field: notice
|
31 |
-
* 02. 14. Field: border, spacing, dimensions
|
32 |
-
* 02. 15. Field: background
|
33 |
-
* 02. 16. Field: spinner
|
34 |
-
* 02. 17. Field: slider
|
35 |
-
* 02. 18. Field: button_set
|
36 |
-
* 02. 19. Field: link_color
|
37 |
-
* 02. 20. Field: color_group
|
38 |
-
* 02. 21. Field: palette
|
39 |
-
* 02. 22. Field: accordion
|
40 |
-
* 02. 23. Field: date
|
41 |
-
* 02. 24. Field: map
|
42 |
-
* 02. 25. Field: sortable
|
43 |
-
* 02. 26. Field: number
|
44 |
-
* 03. Taxonomy
|
45 |
-
* 04. Profile
|
46 |
-
* 05. Nav Menu
|
47 |
-
* 06. Modal
|
48 |
-
* 07. Customizer
|
49 |
-
* 08. Responsive
|
50 |
-
* 09. Others
|
51 |
-
*
|
52 |
-
* ---------------------------------------------------------
|
53 |
-
*
|
54 |
-
*/
|
55 |
-
|
56 |
-
/**
|
57 |
-
* 01. Base
|
58 |
-
*/
|
59 |
-
.csf-options{
|
60 |
-
margin-left: 20px;
|
61 |
-
margin-right: 0;
|
62 |
-
}
|
63 |
-
|
64 |
-
/**
|
65 |
-
* 01. 01. Header
|
66 |
-
*/
|
67 |
-
.csf-header{
|
68 |
-
h1{
|
69 |
-
float: right;
|
70 |
-
}
|
71 |
-
|
72 |
-
fieldset{
|
73 |
-
float: left;
|
74 |
-
}
|
75 |
-
}
|
76 |
-
|
77 |
-
/**
|
78 |
-
* 01. 02. Header Buttons
|
79 |
-
*/
|
80 |
-
.csf-buttons{
|
81 |
-
float: left;
|
82 |
-
direction: ltr;
|
83 |
-
}
|
84 |
-
|
85 |
-
.csf-header-left{
|
86 |
-
float: right;
|
87 |
-
}
|
88 |
-
|
89 |
-
.csf-header-right{
|
90 |
-
float: left;
|
91 |
-
}
|
92 |
-
|
93 |
-
/**
|
94 |
-
* 01. 03. Navigation
|
95 |
-
*/
|
96 |
-
.csf-nav{
|
97 |
-
float: right;
|
98 |
-
|
99 |
-
ul{
|
100 |
-
clear: right;
|
101 |
-
|
102 |
-
li{
|
103 |
-
.csf-active:after{
|
104 |
-
right: auto;
|
105 |
-
left: 0;
|
106 |
-
border-left-color: #fff;
|
107 |
-
border-right-color: transparent;
|
108 |
-
}
|
109 |
-
|
110 |
-
.csf-arrow:after{
|
111 |
-
content: "\f053";
|
112 |
-
right: auto;
|
113 |
-
left: 10px;
|
114 |
-
}
|
115 |
-
|
116 |
-
&.csf-tab-expanded .csf-arrow:after{
|
117 |
-
transform: rotate(-90deg);
|
118 |
-
}
|
119 |
-
}
|
120 |
-
|
121 |
-
ul{
|
122 |
-
li{
|
123 |
-
a{
|
124 |
-
padding-right: 25px;
|
125 |
-
padding-left: 15px;
|
126 |
-
}
|
127 |
-
}
|
128 |
-
|
129 |
-
&:before{
|
130 |
-
left: auto;
|
131 |
-
right: 15px;
|
132 |
-
}
|
133 |
-
}
|
134 |
-
}
|
135 |
-
|
136 |
-
.csf-tab-icon{
|
137 |
-
margin-left: 5px;
|
138 |
-
margin-right: 0;
|
139 |
-
}
|
140 |
-
}
|
141 |
-
|
142 |
-
.csf-nav-background{
|
143 |
-
left: auto;
|
144 |
-
right: 0;
|
145 |
-
}
|
146 |
-
|
147 |
-
/**
|
148 |
-
* 01. 04. Content
|
149 |
-
*/
|
150 |
-
.csf-content{
|
151 |
-
margin-left: 0;
|
152 |
-
margin-right: 225px;
|
153 |
-
}
|
154 |
-
|
155 |
-
/**
|
156 |
-
* 01. 05. Section
|
157 |
-
*/
|
158 |
-
.csf-sections{
|
159 |
-
float: right;
|
160 |
-
}
|
161 |
-
|
162 |
-
/**
|
163 |
-
* 01. 06. Show all options
|
164 |
-
*/
|
165 |
-
.csf-show-all .csf-content{
|
166 |
-
margin-right: 0;
|
167 |
-
overflow: hidden;
|
168 |
-
}
|
169 |
-
|
170 |
-
.csf-expand-all{
|
171 |
-
float: right;
|
172 |
-
right: auto;
|
173 |
-
left: 40px;
|
174 |
-
margin-right: 0;
|
175 |
-
margin-left: 4px;
|
176 |
-
}
|
177 |
-
|
178 |
-
/**
|
179 |
-
* 01. 07. Search Input
|
180 |
-
*/
|
181 |
-
.csf-search{
|
182 |
-
float: right;
|
183 |
-
|
184 |
-
input{
|
185 |
-
margin: 0 0 0 5px;
|
186 |
-
}
|
187 |
-
}
|
188 |
-
|
189 |
-
/**
|
190 |
-
* 01. 08. Copyright
|
191 |
-
*/
|
192 |
-
.csf-copyright{
|
193 |
-
float: right;
|
194 |
-
}
|
195 |
-
|
196 |
-
/**
|
197 |
-
* 01. 09. Metabox
|
198 |
-
*/
|
199 |
-
.csf-metabox{
|
200 |
-
margin: -6px -12px -12px -12px;
|
201 |
-
|
202 |
-
.csf-section-title{
|
203 |
-
padding: 20px;
|
204 |
-
}
|
205 |
-
}
|
206 |
-
|
207 |
-
.csf-section-title{
|
208 |
-
|
209 |
-
.csf-section-icon{
|
210 |
-
margin-left: 5px;
|
211 |
-
margin-right: 0;
|
212 |
-
}
|
213 |
-
}
|
214 |
-
|
215 |
-
/**
|
216 |
-
* 02. Fields
|
217 |
-
*/
|
218 |
-
.csf-field{
|
219 |
-
|
220 |
-
.csf-title{
|
221 |
-
float: right;
|
222 |
-
}
|
223 |
-
|
224 |
-
.csf-fieldset{
|
225 |
-
float: left;
|
226 |
-
}
|
227 |
-
}
|
228 |
-
|
229 |
-
.csf-pseudo-field{
|
230 |
-
padding: 0 0 0 5px !important;
|
231 |
-
}
|
232 |
-
|
233 |
-
/**
|
234 |
-
* 02. 01. Field: typography
|
235 |
-
*/
|
236 |
-
.csf-field-typography{
|
237 |
-
|
238 |
-
select{
|
239 |
-
margin: 0;
|
240 |
-
width: 100%;
|
241 |
-
}
|
242 |
-
|
243 |
-
.csf--blocks-inputs{
|
244 |
-
.csf--blocks{
|
245 |
-
flex-direction: row-reverse;
|
246 |
-
}
|
247 |
-
}
|
248 |
-
|
249 |
-
.csf--unit{
|
250 |
-
left: 4px;
|
251 |
-
right: auto;
|
252 |
-
}
|
253 |
-
}
|
254 |
-
|
255 |
-
/**
|
256 |
-
* 02. 02. Field: checkbox, radio
|
257 |
-
*/
|
258 |
-
.csf-field-checkbox,
|
259 |
-
.csf-field-radio{
|
260 |
-
|
261 |
-
ul ul li{
|
262 |
-
margin-left: 0;
|
263 |
-
margin-right: 8px;
|
264 |
-
|
265 |
-
&:first-child{
|
266 |
-
margin-right: 0;
|
267 |
-
}
|
268 |
-
}
|
269 |
-
|
270 |
-
.csf--inline-list li{
|
271 |
-
margin-right: 0;
|
272 |
-
margin-left: 15px;
|
273 |
-
}
|
274 |
-
|
275 |
-
.csf--text{
|
276 |
-
margin-left: 0;
|
277 |
-
margin-right: 5px;
|
278 |
-
}
|
279 |
-
}
|
280 |
-
|
281 |
-
/**
|
282 |
-
* 02. 03. Field: switcher
|
283 |
-
*/
|
284 |
-
.csf-field-switcher{
|
285 |
-
|
286 |
-
.csf--switcher{
|
287 |
-
float: right;
|
288 |
-
}
|
289 |
-
|
290 |
-
.csf--label{
|
291 |
-
float: right;
|
292 |
-
margin-left: 0;
|
293 |
-
margin-right: 5px;
|
294 |
-
}
|
295 |
-
}
|
296 |
-
|
297 |
-
/**
|
298 |
-
* 02. 04. Field: upload
|
299 |
-
*/
|
300 |
-
.csf-field-upload{
|
301 |
-
|
302 |
-
.csf--remove,
|
303 |
-
.csf--button{
|
304 |
-
margin-left: 0;
|
305 |
-
margin-right: 5px;
|
306 |
-
}
|
307 |
-
}
|
308 |
-
|
309 |
-
/**
|
310 |
-
* 02. 05. Field: group
|
311 |
-
*/
|
312 |
-
.csf-field-group{
|
313 |
-
|
314 |
-
.csf-cloneable-title{
|
315 |
-
padding: 15px 10px 15px 65px;
|
316 |
-
}
|
317 |
-
|
318 |
-
.csf-cloneable-helper{
|
319 |
-
right: auto;
|
320 |
-
left: 10px;
|
321 |
-
}
|
322 |
-
}
|
323 |
-
|
324 |
-
/**
|
325 |
-
* 02. 06. Field: repeater
|
326 |
-
*/
|
327 |
-
.csf-field-repeater{
|
328 |
-
|
329 |
-
.csf-repeater-helper{
|
330 |
-
border-left: 0;
|
331 |
-
border-right: 1px solid #eee;
|
332 |
-
}
|
333 |
-
}
|
334 |
-
|
335 |
-
/**
|
336 |
-
* 02. 07. Field: help
|
337 |
-
*/
|
338 |
-
.csf-help{
|
339 |
-
right: auto;
|
340 |
-
left: 5px;
|
341 |
-
}
|
342 |
-
|
343 |
-
/**
|
344 |
-
* 02. 08. Field: icon
|
345 |
-
*/
|
346 |
-
.csf-field-icon{
|
347 |
-
|
348 |
-
.button{
|
349 |
-
margin-right: 0;
|
350 |
-
margin-left: 5px;
|
351 |
-
}
|
352 |
-
|
353 |
-
.csf-icon-preview i{
|
354 |
-
margin-right: 0;
|
355 |
-
margin-left: 5px;
|
356 |
-
}
|
357 |
-
}
|
358 |
-
|
359 |
-
/**
|
360 |
-
* 02. 09. Field: gallery
|
361 |
-
*/
|
362 |
-
.csf-field-gallery{
|
363 |
-
|
364 |
-
ul li{
|
365 |
-
margin-right: 0;
|
366 |
-
margin-left: 5px;
|
367 |
-
}
|
368 |
-
|
369 |
-
.button{
|
370 |
-
margin-right: 0;
|
371 |
-
margin-left: 5px;
|
372 |
-
}
|
373 |
-
}
|
374 |
-
|
375 |
-
/**
|
376 |
-
* 02. 11. Field: tabbed
|
377 |
-
*/
|
378 |
-
.csf-field-tabbed{
|
379 |
-
|
380 |
-
.csf-tabbed-nav{
|
381 |
-
|
382 |
-
.csf--icon{
|
383 |
-
padding-right: 0;
|
384 |
-
padding-left: 5px;
|
385 |
-
}
|
386 |
-
|
387 |
-
a{
|
388 |
-
margin-right: 0;
|
389 |
-
margin-left: 5px;
|
390 |
-
}
|
391 |
-
}
|
392 |
-
}
|
393 |
-
|
394 |
-
/**
|
395 |
-
* 02. 12. Field: media
|
396 |
-
*/
|
397 |
-
.csf-field-media{
|
398 |
-
|
399 |
-
.button{
|
400 |
-
margin-left: 0;
|
401 |
-
margin-right: 7px;
|
402 |
-
}
|
403 |
-
|
404 |
-
.hidden + .button{
|
405 |
-
margin-right: 0;
|
406 |
-
}
|
407 |
-
}
|
408 |
-
|
409 |
-
/**
|
410 |
-
* 02. 13. Field: notice
|
411 |
-
*/
|
412 |
-
.csf-notice{
|
413 |
-
border-left: none;
|
414 |
-
border-right-style: solid;
|
415 |
-
border-right-width: 4px;
|
416 |
-
}
|
417 |
-
|
418 |
-
/**
|
419 |
-
* 02. 14. Field: border, spacing, dimensions
|
420 |
-
*/
|
421 |
-
.csf-field-dimensions,
|
422 |
-
.csf-field-spacing,
|
423 |
-
.csf-field-border{
|
424 |
-
|
425 |
-
.csf--input,
|
426 |
-
.csf-fieldset{
|
427 |
-
direction: ltr;
|
428 |
-
}
|
429 |
-
|
430 |
-
.csf--inputs,
|
431 |
-
.csf--color{
|
432 |
-
float: right;
|
433 |
-
}
|
434 |
-
|
435 |
-
.csf--color{
|
436 |
-
margin-right: 4px;
|
437 |
-
direction: rtl;
|
438 |
-
}
|
439 |
-
}
|
440 |
-
|
441 |
-
/**
|
442 |
-
* 02. 15. Field: background
|
443 |
-
*/
|
444 |
-
.csf-field-background{
|
445 |
-
|
446 |
-
.csf--block{
|
447 |
-
float: right;
|
448 |
-
}
|
449 |
-
|
450 |
-
.csf--select,
|
451 |
-
.csf--media{
|
452 |
-
padding-right: 0;
|
453 |
-
}
|
454 |
-
|
455 |
-
.csf--title{
|
456 |
-
margin-right: 0;
|
457 |
-
margin-left: 5px;
|
458 |
-
}
|
459 |
-
}
|
460 |
-
|
461 |
-
/**
|
462 |
-
* 02. 16. Field: spinner
|
463 |
-
*/
|
464 |
-
.csf-field-spinner{
|
465 |
-
|
466 |
-
.csf--spin{
|
467 |
-
float: right;
|
468 |
-
direction: ltr;
|
469 |
-
}
|
470 |
-
}
|
471 |
-
|
472 |
-
/**
|
473 |
-
* 02. 17. Field: slider
|
474 |
-
*/
|
475 |
-
.csf-field-slider{
|
476 |
-
|
477 |
-
.csf-slider-ui{
|
478 |
-
direction: ltr;
|
479 |
-
margin-right: 0;
|
480 |
-
margin-left: 15px;
|
481 |
-
}
|
482 |
-
|
483 |
-
.csf--input{
|
484 |
-
direction: ltr;
|
485 |
-
}
|
486 |
-
}
|
487 |
-
|
488 |
-
/**
|
489 |
-
* 02. 18. Field: button_set
|
490 |
-
*/
|
491 |
-
.csf-field-button_set{
|
492 |
-
|
493 |
-
.csf--button-group{
|
494 |
-
float: right;
|
495 |
-
}
|
496 |
-
}
|
497 |
-
|
498 |
-
/**
|
499 |
-
* 02. 19. Field: link_color
|
500 |
-
*/
|
501 |
-
.csf-field-link_color{
|
502 |
-
|
503 |
-
.csf--left{
|
504 |
-
float: right;
|
505 |
-
margin-right: 0;
|
506 |
-
margin-left: 10px;
|
507 |
-
}
|
508 |
-
}
|
509 |
-
|
510 |
-
/**
|
511 |
-
* 02. 20. Field: color_group
|
512 |
-
*/
|
513 |
-
.csf-field-color_group{
|
514 |
-
|
515 |
-
.csf--left{
|
516 |
-
float: right;
|
517 |
-
margin-right: 0;
|
518 |
-
margin-left: 10px;
|
519 |
-
}
|
520 |
-
}
|
521 |
-
|
522 |
-
/**
|
523 |
-
* 02. 21. Field: palette
|
524 |
-
*/
|
525 |
-
.csf-field-palette{
|
526 |
-
|
527 |
-
.csf--palette{
|
528 |
-
margin-right: 0;
|
529 |
-
margin-left: 10px;
|
530 |
-
}
|
531 |
-
}
|
532 |
-
|
533 |
-
/**
|
534 |
-
* 02. 22. Field: accordion
|
535 |
-
*/
|
536 |
-
.csf-field-accordion{
|
537 |
-
|
538 |
-
.csf--icon{
|
539 |
-
margin-right: 0;
|
540 |
-
margin-left: 2px;
|
541 |
-
}
|
542 |
-
}
|
543 |
-
|
544 |
-
/**
|
545 |
-
* 02. 23. Field: date
|
546 |
-
*/
|
547 |
-
.csf-field-date{
|
548 |
-
|
549 |
-
.csf--to {
|
550 |
-
margin-left: 0;
|
551 |
-
margin-right: 7px;
|
552 |
-
}
|
553 |
-
}
|
554 |
-
|
555 |
-
/**
|
556 |
-
* 02. 24. Field: map
|
557 |
-
*/
|
558 |
-
.csf-field-map{
|
559 |
-
|
560 |
-
.csf--map-input:last-child {
|
561 |
-
padding-left: 0;
|
562 |
-
padding-right: 10px;
|
563 |
-
}
|
564 |
-
}
|
565 |
-
|
566 |
-
/**
|
567 |
-
* 02. 25. Field: sortable
|
568 |
-
*/
|
569 |
-
.csf-field-sortable{
|
570 |
-
|
571 |
-
.csf-sortable-helper{
|
572 |
-
border-left: none;
|
573 |
-
border-right: 1px solid #eee;
|
574 |
-
}
|
575 |
-
}
|
576 |
-
|
577 |
-
/**
|
578 |
-
* 02. 26. Field: number
|
579 |
-
*/
|
580 |
-
.csf-field-number{
|
581 |
-
|
582 |
-
.csf--wrap{
|
583 |
-
float: right;
|
584 |
-
}
|
585 |
-
|
586 |
-
.csf--unit{
|
587 |
-
left: 4px;
|
588 |
-
right: auto;
|
589 |
-
}
|
590 |
-
}
|
591 |
-
|
592 |
-
/**
|
593 |
-
* 03. Taxonomy
|
594 |
-
*/
|
595 |
-
.csf-taxonomy-add-fields{
|
596 |
-
margin-right: 0;
|
597 |
-
margin-left: 30px;
|
598 |
-
|
599 |
-
.csf-field > .csf-fieldset > .csf-help{
|
600 |
-
left: -5px;
|
601 |
-
right: auto;
|
602 |
-
}
|
603 |
-
}
|
604 |
-
|
605 |
-
.csf-taxonomy-edit-fields{
|
606 |
-
margin-right: 0;
|
607 |
-
margin-left: 35px;
|
608 |
-
|
609 |
-
.csf-field > .csf-fieldset > .csf-help{
|
610 |
-
right: auto;
|
611 |
-
left: -5px;
|
612 |
-
}
|
613 |
-
}
|
614 |
-
|
615 |
-
/**
|
616 |
-
* 04. Profile
|
617 |
-
*/
|
618 |
-
.csf-profile-options{
|
619 |
-
|
620 |
-
> h2 > .fa{
|
621 |
-
padding-right: 0;
|
622 |
-
padding-left: 7px;
|
623 |
-
}
|
624 |
-
|
625 |
-
> .csf-field{
|
626 |
-
|
627 |
-
> .csf-fieldset{
|
628 |
-
|
629 |
-
> .csf-help{
|
630 |
-
left: -5px;
|
631 |
-
right: auto;
|
632 |
-
}
|
633 |
-
}
|
634 |
-
}
|
635 |
-
}
|
636 |
-
|
637 |
-
/**
|
638 |
-
* 05. Nav Menu
|
639 |
-
*/
|
640 |
-
.csf-nav-menu-options{
|
641 |
-
|
642 |
-
> .csf-fields{
|
643 |
-
margin-left: 0;
|
644 |
-
margin-right: -10px;
|
645 |
-
}
|
646 |
-
}
|
647 |
-
|
648 |
-
.csf-nav-menu-title {
|
649 |
-
padding-left: 14px;
|
650 |
-
padding-right: 12px;
|
651 |
-
}
|
652 |
-
|
653 |
-
.csf-nav-menu-icon{
|
654 |
-
margin-right: 0;
|
655 |
-
margin-left: 5px;
|
656 |
-
}
|
657 |
-
|
658 |
-
/**
|
659 |
-
* 06. Modal
|
660 |
-
*/
|
661 |
-
.csf-modal-content{
|
662 |
-
|
663 |
-
.csf-field{
|
664 |
-
padding: 15px 15px 15px 30px;
|
665 |
-
}
|
666 |
-
}
|
667 |
-
|
668 |
-
.csf-modal-title{
|
669 |
-
padding: 0 16px 0 36px;
|
670 |
-
}
|
671 |
-
|
672 |
-
.csf-modal-close{
|
673 |
-
right: auto;
|
674 |
-
left: 0;
|
675 |
-
}
|
676 |
-
|
677 |
-
/**
|
678 |
-
* 07. Customizer
|
679 |
-
*/
|
680 |
-
.control-section{
|
681 |
-
|
682 |
-
.csf-field{
|
683 |
-
|
684 |
-
.csf-fieldset{
|
685 |
-
margin-right: 0;
|
686 |
-
}
|
687 |
-
}
|
688 |
-
}
|
689 |
-
|
690 |
-
/**
|
691 |
-
* 08. Responsive
|
692 |
-
*/
|
693 |
-
@media only screen and (max-width:1200px){
|
694 |
-
.csf-metabox .csf-field .csf-fieldset{
|
695 |
-
margin-left: 0;
|
696 |
-
}
|
697 |
-
}
|
698 |
-
|
699 |
-
@media only screen and (max-width:782px){
|
700 |
-
.csf .csf-fieldset,
|
701 |
-
.csf .csf-content{
|
702 |
-
margin-right: 0;
|
703 |
-
}
|
704 |
-
}
|
705 |
-
|
706 |
-
/**
|
707 |
-
* 09. Others
|
708 |
-
*/
|
709 |
-
.csf-field{
|
710 |
-
|
711 |
-
.csf--transparent-slider{
|
712 |
-
margin-left: 0;
|
713 |
-
margin-right: 2px;
|
714 |
-
|
715 |
-
.ui-slider-handle{
|
716 |
-
margin: 0 -11px;
|
717 |
-
}
|
718 |
-
}
|
719 |
-
|
720 |
-
.csf--transparent-offset{
|
721 |
-
background-position: center right;
|
722 |
-
}
|
723 |
-
|
724 |
-
.csf--transparent-text{
|
725 |
-
right: auto;
|
726 |
-
left: 10px;
|
727 |
-
}
|
728 |
-
}
|
1 |
+
/**
|
2 |
+
*
|
3 |
+
* ---------------------------------------------------------
|
4 |
+
* CODESTAR FRAMEWORK RTL CSS MAP
|
5 |
+
* ---------------------------------------------------------
|
6 |
+
*
|
7 |
+
* 01. Base
|
8 |
+
* 01. 01. Header
|
9 |
+
* 01. 02. Header Buttons
|
10 |
+
* 01. 03. Navigation
|
11 |
+
* 01. 04. Content
|
12 |
+
* 01. 05. Section
|
13 |
+
* 01. 06. Show All Settings
|
14 |
+
* 01. 07. Search Input
|
15 |
+
* 01. 08. Copyright
|
16 |
+
* 01. 09. Metabox
|
17 |
+
* 02. Fields
|
18 |
+
* 02. 01. Field: typography
|
19 |
+
* 02. 02. Field: checkbox, radio
|
20 |
+
* 02. 03. Field: switcher
|
21 |
+
* 02. 04. Field: upload
|
22 |
+
* 02. 05. Field: group
|
23 |
+
* 02. 06. Field: repeater
|
24 |
+
* 02. 07. Field: help
|
25 |
+
* 02. 08. Field: icon
|
26 |
+
* 02. 09. Field: gallery
|
27 |
+
* 02. 10. Field: sorter
|
28 |
+
* 02. 11. Field: tabbed
|
29 |
+
* 02. 12. Field: media
|
30 |
+
* 02. 13. Field: notice
|
31 |
+
* 02. 14. Field: border, spacing, dimensions
|
32 |
+
* 02. 15. Field: background
|
33 |
+
* 02. 16. Field: spinner
|
34 |
+
* 02. 17. Field: slider
|
35 |
+
* 02. 18. Field: button_set
|
36 |
+
* 02. 19. Field: link_color
|
37 |
+
* 02. 20. Field: color_group
|
38 |
+
* 02. 21. Field: palette
|
39 |
+
* 02. 22. Field: accordion
|
40 |
+
* 02. 23. Field: date
|
41 |
+
* 02. 24. Field: map
|
42 |
+
* 02. 25. Field: sortable
|
43 |
+
* 02. 26. Field: number
|
44 |
+
* 03. Taxonomy
|
45 |
+
* 04. Profile
|
46 |
+
* 05. Nav Menu
|
47 |
+
* 06. Modal
|
48 |
+
* 07. Customizer
|
49 |
+
* 08. Responsive
|
50 |
+
* 09. Others
|
51 |
+
*
|
52 |
+
* ---------------------------------------------------------
|
53 |
+
*
|
54 |
+
*/
|
55 |
+
|
56 |
+
/**
|
57 |
+
* 01. Base
|
58 |
+
*/
|
59 |
+
.csf-options{
|
60 |
+
margin-left: 20px;
|
61 |
+
margin-right: 0;
|
62 |
+
}
|
63 |
+
|
64 |
+
/**
|
65 |
+
* 01. 01. Header
|
66 |
+
*/
|
67 |
+
.csf-header{
|
68 |
+
h1{
|
69 |
+
float: right;
|
70 |
+
}
|
71 |
+
|
72 |
+
fieldset{
|
73 |
+
float: left;
|
74 |
+
}
|
75 |
+
}
|
76 |
+
|
77 |
+
/**
|
78 |
+
* 01. 02. Header Buttons
|
79 |
+
*/
|
80 |
+
.csf-buttons{
|
81 |
+
float: left;
|
82 |
+
direction: ltr;
|
83 |
+
}
|
84 |
+
|
85 |
+
.csf-header-left{
|
86 |
+
float: right;
|
87 |
+
}
|
88 |
+
|
89 |
+
.csf-header-right{
|
90 |
+
float: left;
|
91 |
+
}
|
92 |
+
|
93 |
+
/**
|
94 |
+
* 01. 03. Navigation
|
95 |
+
*/
|
96 |
+
.csf-nav{
|
97 |
+
float: right;
|
98 |
+
|
99 |
+
ul{
|
100 |
+
clear: right;
|
101 |
+
|
102 |
+
li{
|
103 |
+
.csf-active:after{
|
104 |
+
right: auto;
|
105 |
+
left: 0;
|
106 |
+
border-left-color: #fff;
|
107 |
+
border-right-color: transparent;
|
108 |
+
}
|
109 |
+
|
110 |
+
.csf-arrow:after{
|
111 |
+
content: "\f053";
|
112 |
+
right: auto;
|
113 |
+
left: 10px;
|
114 |
+
}
|
115 |
+
|
116 |
+
&.csf-tab-expanded .csf-arrow:after{
|
117 |
+
transform: rotate(-90deg);
|
118 |
+
}
|
119 |
+
}
|
120 |
+
|
121 |
+
ul{
|
122 |
+
li{
|
123 |
+
a{
|
124 |
+
padding-right: 25px;
|
125 |
+
padding-left: 15px;
|
126 |
+
}
|
127 |
+
}
|
128 |
+
|
129 |
+
&:before{
|
130 |
+
left: auto;
|
131 |
+
right: 15px;
|
132 |
+
}
|
133 |
+
}
|
134 |
+
}
|
135 |
+
|
136 |
+
.csf-tab-icon{
|
137 |
+
margin-left: 5px;
|
138 |
+
margin-right: 0;
|
139 |
+
}
|
140 |
+
}
|
141 |
+
|
142 |
+
.csf-nav-background{
|
143 |
+
left: auto;
|
144 |
+
right: 0;
|
145 |
+
}
|
146 |
+
|
147 |
+
/**
|
148 |
+
* 01. 04. Content
|
149 |
+
*/
|
150 |
+
.csf-content{
|
151 |
+
margin-left: 0;
|
152 |
+
margin-right: 225px;
|
153 |
+
}
|
154 |
+
|
155 |
+
/**
|
156 |
+
* 01. 05. Section
|
157 |
+
*/
|
158 |
+
.csf-sections{
|
159 |
+
float: right;
|
160 |
+
}
|
161 |
+
|
162 |
+
/**
|
163 |
+
* 01. 06. Show all options
|
164 |
+
*/
|
165 |
+
.csf-show-all .csf-content{
|
166 |
+
margin-right: 0;
|
167 |
+
overflow: hidden;
|
168 |
+
}
|
169 |
+
|
170 |
+
.csf-expand-all{
|
171 |
+
float: right;
|
172 |
+
right: auto;
|
173 |
+
left: 40px;
|
174 |
+
margin-right: 0;
|
175 |
+
margin-left: 4px;
|
176 |
+
}
|
177 |
+
|
178 |
+
/**
|
179 |
+
* 01. 07. Search Input
|
180 |
+
*/
|
181 |
+
.csf-search{
|
182 |
+
float: right;
|
183 |
+
|
184 |
+
input{
|
185 |
+
margin: 0 0 0 5px;
|
186 |
+
}
|
187 |
+
}
|
188 |
+
|
189 |
+
/**
|
190 |
+
* 01. 08. Copyright
|
191 |
+
*/
|
192 |
+
.csf-copyright{
|
193 |
+
float: right;
|
194 |
+
}
|
195 |
+
|
196 |
+
/**
|
197 |
+
* 01. 09. Metabox
|
198 |
+
*/
|
199 |
+
.csf-metabox{
|
200 |
+
margin: -6px -12px -12px -12px;
|
201 |
+
|
202 |
+
.csf-section-title{
|
203 |
+
padding: 20px;
|
204 |
+
}
|
205 |
+
}
|
206 |
+
|
207 |
+
.csf-section-title{
|
208 |
+
|
209 |
+
.csf-section-icon{
|
210 |
+
margin-left: 5px;
|
211 |
+
margin-right: 0;
|
212 |
+
}
|
213 |
+
}
|
214 |
+
|
215 |
+
/**
|
216 |
+
* 02. Fields
|
217 |
+
*/
|
218 |
+
.csf-field{
|
219 |
+
|
220 |
+
.csf-title{
|
221 |
+
float: right;
|
222 |
+
}
|
223 |
+
|
224 |
+
.csf-fieldset{
|
225 |
+
float: left;
|
226 |
+
}
|
227 |
+
}
|
228 |
+
|
229 |
+
.csf-pseudo-field{
|
230 |
+
padding: 0 0 0 5px !important;
|
231 |
+
}
|
232 |
+
|
233 |
+
/**
|
234 |
+
* 02. 01. Field: typography
|
235 |
+
*/
|
236 |
+
.csf-field-typography{
|
237 |
+
|
238 |
+
select{
|
239 |
+
margin: 0;
|
240 |
+
width: 100%;
|
241 |
+
}
|
242 |
+
|
243 |
+
.csf--blocks-inputs{
|
244 |
+
.csf--blocks{
|
245 |
+
flex-direction: row-reverse;
|
246 |
+
}
|
247 |
+
}
|
248 |
+
|
249 |
+
.csf--unit{
|
250 |
+
left: 4px;
|
251 |
+
right: auto;
|
252 |
+
}
|
253 |
+
}
|
254 |
+
|
255 |
+
/**
|
256 |
+
* 02. 02. Field: checkbox, radio
|
257 |
+
*/
|
258 |
+
.csf-field-checkbox,
|
259 |
+
.csf-field-radio{
|
260 |
+
|
261 |
+
ul ul li{
|
262 |
+
margin-left: 0;
|
263 |
+
margin-right: 8px;
|
264 |
+
|
265 |
+
&:first-child{
|
266 |
+
margin-right: 0;
|
267 |
+
}
|
268 |
+
}
|
269 |
+
|
270 |
+
.csf--inline-list li{
|
271 |
+
margin-right: 0;
|
272 |
+
margin-left: 15px;
|
273 |
+
}
|
274 |
+
|
275 |
+
.csf--text{
|
276 |
+
margin-left: 0;
|
277 |
+
margin-right: 5px;
|
278 |
+
}
|
279 |
+
}
|
280 |
+
|
281 |
+
/**
|
282 |
+
* 02. 03. Field: switcher
|
283 |
+
*/
|
284 |
+
.csf-field-switcher{
|
285 |
+
|
286 |
+
.csf--switcher{
|
287 |
+
float: right;
|
288 |
+
}
|
289 |
+
|
290 |
+
.csf--label{
|
291 |
+
float: right;
|
292 |
+
margin-left: 0;
|
293 |
+
margin-right: 5px;
|
294 |
+
}
|
295 |
+
}
|
296 |
+
|
297 |
+
/**
|
298 |
+
* 02. 04. Field: upload
|
299 |
+
*/
|
300 |
+
.csf-field-upload{
|
301 |
+
|
302 |
+
.csf--remove,
|
303 |
+
.csf--button{
|
304 |
+
margin-left: 0;
|
305 |
+
margin-right: 5px;
|
306 |
+
}
|
307 |
+
}
|
308 |
+
|
309 |
+
/**
|
310 |
+
* 02. 05. Field: group
|
311 |
+
*/
|
312 |
+
.csf-field-group{
|
313 |
+
|
314 |
+
.csf-cloneable-title{
|
315 |
+
padding: 15px 10px 15px 65px;
|
316 |
+
}
|
317 |
+
|
318 |
+
.csf-cloneable-helper{
|
319 |
+
right: auto;
|
320 |
+
left: 10px;
|
321 |
+
}
|
322 |
+
}
|
323 |
+
|
324 |
+
/**
|
325 |
+
* 02. 06. Field: repeater
|
326 |
+
*/
|
327 |
+
.csf-field-repeater{
|
328 |
+
|
329 |
+
.csf-repeater-helper{
|
330 |
+
border-left: 0;
|
331 |
+
border-right: 1px solid #eee;
|
332 |
+
}
|
333 |
+
}
|
334 |
+
|
335 |
+
/**
|
336 |
+
* 02. 07. Field: help
|
337 |
+
*/
|
338 |
+
.csf-help{
|
339 |
+
right: auto;
|
340 |
+
left: 5px;
|
341 |
+
}
|
342 |
+
|
343 |
+
/**
|
344 |
+
* 02. 08. Field: icon
|
345 |
+
*/
|
346 |
+
.csf-field-icon{
|
347 |
+
|
348 |
+
.button{
|
349 |
+
margin-right: 0;
|
350 |
+
margin-left: 5px;
|
351 |
+
}
|
352 |
+
|
353 |
+
.csf-icon-preview i{
|
354 |
+
margin-right: 0;
|
355 |
+
margin-left: 5px;
|
356 |
+
}
|
357 |
+
}
|
358 |
+
|
359 |
+
/**
|
360 |
+
* 02. 09. Field: gallery
|
361 |
+
*/
|
362 |
+
.csf-field-gallery{
|
363 |
+
|
364 |
+
ul li{
|
365 |
+
margin-right: 0;
|
366 |
+
margin-left: 5px;
|
367 |
+
}
|
368 |
+
|
369 |
+
.button{
|
370 |
+
margin-right: 0;
|
371 |
+
margin-left: 5px;
|
372 |
+
}
|
373 |
+
}
|
374 |
+
|
375 |
+
/**
|
376 |
+
* 02. 11. Field: tabbed
|
377 |
+
*/
|
378 |
+
.csf-field-tabbed{
|
379 |
+
|
380 |
+
.csf-tabbed-nav{
|
381 |
+
|
382 |
+
.csf--icon{
|
383 |
+
padding-right: 0;
|
384 |
+
padding-left: 5px;
|
385 |
+
}
|
386 |
+
|
387 |
+
a{
|
388 |
+
margin-right: 0;
|
389 |
+
margin-left: 5px;
|
390 |
+
}
|
391 |
+
}
|
392 |
+
}
|
393 |
+
|
394 |
+
/**
|
395 |
+
* 02. 12. Field: media
|
396 |
+
*/
|
397 |
+
.csf-field-media{
|
398 |
+
|
399 |
+
.button{
|
400 |
+
margin-left: 0;
|
401 |
+
margin-right: 7px;
|
402 |
+
}
|
403 |
+
|
404 |
+
.hidden + .button{
|
405 |
+
margin-right: 0;
|
406 |
+
}
|
407 |
+
}
|
408 |
+
|
409 |
+
/**
|
410 |
+
* 02. 13. Field: notice
|
411 |
+
*/
|
412 |
+
.csf-notice{
|
413 |
+
border-left: none;
|
414 |
+
border-right-style: solid;
|
415 |
+
border-right-width: 4px;
|
416 |
+
}
|
417 |
+
|
418 |
+
/**
|
419 |
+
* 02. 14. Field: border, spacing, dimensions
|
420 |
+
*/
|
421 |
+
.csf-field-dimensions,
|
422 |
+
.csf-field-spacing,
|
423 |
+
.csf-field-border{
|
424 |
+
|
425 |
+
.csf--input,
|
426 |
+
.csf-fieldset{
|
427 |
+
direction: ltr;
|
428 |
+
}
|
429 |
+
|
430 |
+
.csf--inputs,
|
431 |
+
.csf--color{
|
432 |
+
float: right;
|
433 |
+
}
|
434 |
+
|
435 |
+
.csf--color{
|
436 |
+
margin-right: 4px;
|
437 |
+
direction: rtl;
|
438 |
+
}
|
439 |
+
}
|
440 |
+
|
441 |
+
/**
|
442 |
+
* 02. 15. Field: background
|
443 |
+
*/
|
444 |
+
.csf-field-background{
|
445 |
+
|
446 |
+
.csf--block{
|
447 |
+
float: right;
|
448 |
+
}
|
449 |
+
|
450 |
+
.csf--select,
|
451 |
+
.csf--media{
|
452 |
+
padding-right: 0;
|
453 |
+
}
|
454 |
+
|
455 |
+
.csf--title{
|
456 |
+
margin-right: 0;
|
457 |
+
margin-left: 5px;
|
458 |
+
}
|
459 |
+
}
|
460 |
+
|
461 |
+
/**
|
462 |
+
* 02. 16. Field: spinner
|
463 |
+
*/
|
464 |
+
.csf-field-spinner{
|
465 |
+
|
466 |
+
.csf--spin{
|
467 |
+
float: right;
|
468 |
+
direction: ltr;
|
469 |
+
}
|
470 |
+
}
|
471 |
+
|
472 |
+
/**
|
473 |
+
* 02. 17. Field: slider
|
474 |
+
*/
|
475 |
+
.csf-field-slider{
|
476 |
+
|
477 |
+
.csf-slider-ui{
|
478 |
+
direction: ltr;
|
479 |
+
margin-right: 0;
|
480 |
+
margin-left: 15px;
|
481 |
+
}
|
482 |
+
|
483 |
+
.csf--input{
|
484 |
+
direction: ltr;
|
485 |
+
}
|
486 |
+
}
|
487 |
+
|
488 |
+
/**
|
489 |
+
* 02. 18. Field: button_set
|
490 |
+
*/
|
491 |
+
.csf-field-button_set{
|
492 |
+
|
493 |
+
.csf--button-group{
|
494 |
+
float: right;
|
495 |
+
}
|
496 |
+
}
|
497 |
+
|
498 |
+
/**
|
499 |
+
* 02. 19. Field: link_color
|
500 |
+
*/
|
501 |
+
.csf-field-link_color{
|
502 |
+
|
503 |
+
.csf--left{
|
504 |
+
float: right;
|
505 |
+
margin-right: 0;
|
506 |
+
margin-left: 10px;
|
507 |
+
}
|
508 |
+
}
|
509 |
+
|
510 |
+
/**
|
511 |
+
* 02. 20. Field: color_group
|
512 |
+
*/
|
513 |
+
.csf-field-color_group{
|
514 |
+
|
515 |
+
.csf--left{
|
516 |
+
float: right;
|
517 |
+
margin-right: 0;
|
518 |
+
margin-left: 10px;
|
519 |
+
}
|
520 |
+
}
|
521 |
+
|
522 |
+
/**
|
523 |
+
* 02. 21. Field: palette
|
524 |
+
*/
|
525 |
+
.csf-field-palette{
|
526 |
+
|
527 |
+
.csf--palette{
|
528 |
+
margin-right: 0;
|
529 |
+
margin-left: 10px;
|
530 |
+
}
|
531 |
+
}
|
532 |
+
|
533 |
+
/**
|
534 |
+
* 02. 22. Field: accordion
|
535 |
+
*/
|
536 |
+
.csf-field-accordion{
|
537 |
+
|
538 |
+
.csf--icon{
|
539 |
+
margin-right: 0;
|
540 |
+
margin-left: 2px;
|
541 |
+
}
|
542 |
+
}
|
543 |
+
|
544 |
+
/**
|
545 |
+
* 02. 23. Field: date
|
546 |
+
*/
|
547 |
+
.csf-field-date{
|
548 |
+
|
549 |
+
.csf--to {
|
550 |
+
margin-left: 0;
|
551 |
+
margin-right: 7px;
|
552 |
+
}
|
553 |
+
}
|
554 |
+
|
555 |
+
/**
|
556 |
+
* 02. 24. Field: map
|
557 |
+
*/
|
558 |
+
.csf-field-map{
|
559 |
+
|
560 |
+
.csf--map-input:last-child {
|
561 |
+
padding-left: 0;
|
562 |
+
padding-right: 10px;
|
563 |
+
}
|
564 |
+
}
|
565 |
+
|
566 |
+
/**
|
567 |
+
* 02. 25. Field: sortable
|
568 |
+
*/
|
569 |
+
.csf-field-sortable{
|
570 |
+
|
571 |
+
.csf-sortable-helper{
|
572 |
+
border-left: none;
|
573 |
+
border-right: 1px solid #eee;
|
574 |
+
}
|
575 |
+
}
|
576 |
+
|
577 |
+
/**
|
578 |
+
* 02. 26. Field: number
|
579 |
+
*/
|
580 |
+
.csf-field-number{
|
581 |
+
|
582 |
+
.csf--wrap{
|
583 |
+
float: right;
|
584 |
+
}
|
585 |
+
|
586 |
+
.csf--unit{
|
587 |
+
left: 4px;
|
588 |
+
right: auto;
|
589 |
+
}
|
590 |
+
}
|
591 |
+
|
592 |
+
/**
|
593 |
+
* 03. Taxonomy
|
594 |
+
*/
|
595 |
+
.csf-taxonomy-add-fields{
|
596 |
+
margin-right: 0;
|
597 |
+
margin-left: 30px;
|
598 |
+
|
599 |
+
.csf-field > .csf-fieldset > .csf-help{
|
600 |
+
left: -5px;
|
601 |
+
right: auto;
|
602 |
+
}
|
603 |
+
}
|
604 |
+
|
605 |
+
.csf-taxonomy-edit-fields{
|
606 |
+
margin-right: 0;
|
607 |
+
margin-left: 35px;
|
608 |
+
|
609 |
+
.csf-field > .csf-fieldset > .csf-help{
|
610 |
+
right: auto;
|
611 |
+
left: -5px;
|
612 |
+
}
|
613 |
+
}
|
614 |
+
|
615 |
+
/**
|
616 |
+
* 04. Profile
|
617 |
+
*/
|
618 |
+
.csf-profile-options{
|
619 |
+
|
620 |
+
> h2 > .fa{
|
621 |
+
padding-right: 0;
|
622 |
+
padding-left: 7px;
|
623 |
+
}
|
624 |
+
|
625 |
+
> .csf-field{
|
626 |
+
|
627 |
+
> .csf-fieldset{
|
628 |
+
|
629 |
+
> .csf-help{
|
630 |
+
left: -5px;
|
631 |
+
right: auto;
|
632 |
+
}
|
633 |
+
}
|
634 |
+
}
|
635 |
+
}
|
636 |
+
|
637 |
+
/**
|
638 |
+
* 05. Nav Menu
|
639 |
+
*/
|
640 |
+
.csf-nav-menu-options{
|
641 |
+
|
642 |
+
> .csf-fields{
|
643 |
+
margin-left: 0;
|
644 |
+
margin-right: -10px;
|
645 |
+
}
|
646 |
+
}
|
647 |
+
|
648 |
+
.csf-nav-menu-title {
|
649 |
+
padding-left: 14px;
|
650 |
+
padding-right: 12px;
|
651 |
+
}
|
652 |
+
|
653 |
+
.csf-nav-menu-icon{
|
654 |
+
margin-right: 0;
|
655 |
+
margin-left: 5px;
|
656 |
+
}
|
657 |
+
|
658 |
+
/**
|
659 |
+
* 06. Modal
|
660 |
+
*/
|
661 |
+
.csf-modal-content{
|
662 |
+
|
663 |
+
.csf-field{
|
664 |
+
padding: 15px 15px 15px 30px;
|
665 |
+
}
|
666 |
+
}
|
667 |
+
|
668 |
+
.csf-modal-title{
|
669 |
+
padding: 0 16px 0 36px;
|
670 |
+
}
|
671 |
+
|
672 |
+
.csf-modal-close{
|
673 |
+
right: auto;
|
674 |
+
left: 0;
|
675 |
+
}
|
676 |
+
|
677 |
+
/**
|
678 |
+
* 07. Customizer
|
679 |
+
*/
|
680 |
+
.control-section{
|
681 |
+
|
682 |
+
.csf-field{
|
683 |
+
|
684 |
+
.csf-fieldset{
|
685 |
+
margin-right: 0;
|
686 |
+
}
|
687 |
+
}
|
688 |
+
}
|
689 |
+
|
690 |
+
/**
|
691 |
+
* 08. Responsive
|
692 |
+
*/
|
693 |
+
@media only screen and (max-width:1200px){
|
694 |
+
.csf-metabox .csf-field .csf-fieldset{
|
695 |
+
margin-left: 0;
|
696 |
+
}
|
697 |
+
}
|
698 |
+
|
699 |
+
@media only screen and (max-width:782px){
|
700 |
+
.csf .csf-fieldset,
|
701 |
+
.csf .csf-content{
|
702 |
+
margin-right: 0;
|
703 |
+
}
|
704 |
+
}
|
705 |
+
|
706 |
+
/**
|
707 |
+
* 09. Others
|
708 |
+
*/
|
709 |
+
.csf-field{
|
710 |
+
|
711 |
+
.csf--transparent-slider{
|
712 |
+
margin-left: 0;
|
713 |
+
margin-right: 2px;
|
714 |
+
|
715 |
+
.ui-slider-handle{
|
716 |
+
margin: 0 -11px;
|
717 |
+
}
|
718 |
+
}
|
719 |
+
|
720 |
+
.csf--transparent-offset{
|
721 |
+
background-position: center right;
|
722 |
+
}
|
723 |
+
|
724 |
+
.csf--transparent-text{
|
725 |
+
right: auto;
|
726 |
+
left: 10px;
|
727 |
+
}
|
728 |
+
}
|
vendor/codestar-framework/assets/scss/style.scss
CHANGED
@@ -35,34 +35,35 @@
|
|
35 |
* 03. 10. Field: color_group
|
36 |
* 03. 11. Field: fieldset
|
37 |
* 03. 12. Field: date
|
38 |
-
* 03. 13. Field:
|
39 |
-
* 03. 14. Field:
|
40 |
-
* 03. 15. Field:
|
41 |
-
* 03. 16. Field:
|
42 |
-
* 03. 17. Field:
|
43 |
-
* 03. 18. Field:
|
44 |
-
* 03. 19. Field:
|
45 |
-
* 03. 20. Field:
|
46 |
-
* 03. 21. Field:
|
47 |
-
* 03. 22. Field:
|
48 |
-
* 03. 23. Field:
|
49 |
-
* 03. 24. Field:
|
50 |
-
* 03. 25. Field:
|
51 |
-
* 03. 26. Field:
|
52 |
-
* 03. 27. Field:
|
53 |
-
* 03. 28. Field:
|
54 |
-
* 03. 29. Field:
|
55 |
-
* 03. 30. Field:
|
56 |
-
* 03. 31. Field:
|
57 |
-
* 03. 32. Field:
|
58 |
-
* 03. 33. Field:
|
59 |
-
* 03. 34. Field:
|
60 |
-
* 03. 35. Field:
|
61 |
-
* 03. 36. Field:
|
62 |
-
* 03. 37. Field:
|
63 |
-
* 03. 38. Field:
|
64 |
-
* 03. 39. Field:
|
65 |
-
* 03. 40. Field:
|
|
|
66 |
* 04. Widget
|
67 |
* 05. Customizer
|
68 |
* 06. Taxonomy
|
@@ -93,3 +94,4 @@
|
|
93 |
@import "partials/welcome";
|
94 |
@import "partials/responsive";
|
95 |
@import "partials/chosen";
|
|
35 |
* 03. 10. Field: color_group
|
36 |
* 03. 11. Field: fieldset
|
37 |
* 03. 12. Field: date
|
38 |
+
* 03. 13. Field: datetime
|
39 |
+
* 03. 14. Field: gallery
|
40 |
+
* 03. 15. Field: group
|
41 |
+
* 03. 16. Field: icon
|
42 |
+
* 03. 17. Field: image_select
|
43 |
+
* 03. 18. Field: link_color
|
44 |
+
* 03. 19. Field: map
|
45 |
+
* 03. 20. Field: media
|
46 |
+
* 03. 21. Field: palette
|
47 |
+
* 03. 22. Field: repeater
|
48 |
+
* 03. 23. Field: select
|
49 |
+
* 03. 24. Field: slider
|
50 |
+
* 03. 25. Field: sortable
|
51 |
+
* 03. 26. Field: sorter
|
52 |
+
* 03. 27. Field: spinner
|
53 |
+
* 03. 28. Field: switcher
|
54 |
+
* 03. 29. Field: tabbed
|
55 |
+
* 03. 30. Field: text
|
56 |
+
* 03. 31. Field: textarea
|
57 |
+
* 03. 32. Field: typography
|
58 |
+
* 03. 33. Field: upload
|
59 |
+
* 03. 34. Field: wp_editor
|
60 |
+
* 03. 35. Field: heading
|
61 |
+
* 03. 36. Field: subheading
|
62 |
+
* 03. 37. Field: submessage
|
63 |
+
* 03. 38. Field: notice
|
64 |
+
* 03. 39. Field: number
|
65 |
+
* 03. 40. Field: link
|
66 |
+
* 03. 41. Field: others
|
67 |
* 04. Widget
|
68 |
* 05. Customizer
|
69 |
* 06. Taxonomy
|
94 |
@import "partials/welcome";
|
95 |
@import "partials/responsive";
|
96 |
@import "partials/chosen";
|
97 |
+
@import "partials/flatpickr";
|
vendor/codestar-framework/classes/abstract.class.php
CHANGED
@@ -1,132 +1,132 @@
|
|
1 |
-
<?php if ( ! defined( 'ABSPATH' ) ) { die; } // Cannot access directly.
|
2 |
-
/**
|
3 |
-
*
|
4 |
-
* Abstract Class
|
5 |
-
*
|
6 |
-
* @since 1.0.0
|
7 |
-
* @version 1.0.0
|
8 |
-
*
|
9 |
-
*/
|
10 |
-
if ( ! class_exists( 'CSF_Abstract' ) ) {
|
11 |
-
abstract class CSF_Abstract {
|
12 |
-
|
13 |
-
public $abstract = '';
|
14 |
-
public $output_css = '';
|
15 |
-
|
16 |
-
public function __construct() {
|
17 |
-
|
18 |
-
// Collect output css and typography
|
19 |
-
if ( ! empty( $this->args['output_css'] ) || ! empty( $this->args['enqueue_webfont'] ) ) {
|
20 |
-
add_action( 'wp_enqueue_scripts', array( $this, 'collect_output_css_and_typography' ), 10 );
|
21 |
-
CSF::$css = apply_filters( "csf_{$this->unique}_output_css", CSF::$css, $this );
|
22 |
-
}
|
23 |
-
|
24 |
-
}
|
25 |
-
|
26 |
-
public function collect_output_css_and_typography() {
|
27 |
-
$this->recursive_output_css( $this->pre_fields );
|
28 |
-
}
|
29 |
-
|
30 |
-
public function recursive_output_css( $fields = array(), $combine_field = array() ) {
|
31 |
-
|
32 |
-
if ( ! empty( $fields ) ) {
|
33 |
-
|
34 |
-
foreach ( $fields as $field ) {
|
35 |
-
|
36 |
-
$field_id = ( ! empty( $field['id'] ) ) ? $field['id'] : '';
|
37 |
-
$field_type = ( ! empty( $field['type'] ) ) ? $field['type'] : '';
|
38 |
-
$field_output = ( ! empty( $field['output'] ) ) ? $field['output'] : '';
|
39 |
-
$field_check = ( $field_type === 'typography' || $field_output ) ? true : false;
|
40 |
-
$field_class = 'CSF_Field_' . $field_type;
|
41 |
-
|
42 |
-
if ( $field_type && $field_id ) {
|
43 |
-
|
44 |
-
|
45 |
-
if( $field_type === 'fieldset' ) {
|
46 |
-
if ( ! empty( $field['fields'] ) ) {
|
47 |
-
$this->recursive_output_css( $field['fields'], $field );
|
48 |
-
}
|
49 |
-
}
|
50 |
-
|
51 |
-
if( $field_type === 'accordion' ) {
|
52 |
-
if ( ! empty( $field['accordions'] ) ) {
|
53 |
-
foreach ( $field['accordions'] as $accordion ) {
|
54 |
-
$this->recursive_output_css( $accordion['fields'], $field );
|
55 |
-
}
|
56 |
-
}
|
57 |
-
}
|
58 |
-
|
59 |
-
if( $field_type === 'tabbed' ) {
|
60 |
-
if ( ! empty( $field['tabs'] ) ) {
|
61 |
-
foreach ( $field['tabs'] as $accordion ) {
|
62 |
-
$this->recursive_output_css( $accordion['fields'], $field );
|
63 |
-
}
|
64 |
-
}
|
65 |
-
}
|
66 |
-
|
67 |
-
if ( class_exists( $field_class ) ) {
|
68 |
-
|
69 |
-
if ( method_exists( $field_class, 'output' ) || method_exists( $field_class, 'enqueue_google_fonts' ) ) {
|
70 |
-
|
71 |
-
$field_value = '';
|
72 |
-
|
73 |
-
if ( $field_check && ( $this->abstract === 'options' || $this->abstract === 'customize' ) ) {
|
74 |
-
|
75 |
-
if( ! empty( $combine_field ) ) {
|
76 |
-
|
77 |
-
$field_value = ( isset( $this->options[$combine_field['id']][$field_id] ) ) ? $this->options[$combine_field['id']][$field_id] : '';
|
78 |
-
|
79 |
-
} else {
|
80 |
-
|
81 |
-
$field_value = ( isset( $this->options[$field_id] ) ) ? $this->options[$field_id] : '';
|
82 |
-
|
83 |
-
}
|
84 |
-
|
85 |
-
} else if ( $field_check && ( $this->abstract === 'metabox' && is_singular() || $this->abstract === 'taxonomy' && is_archive() ) ) {
|
86 |
-
|
87 |
-
if( ! empty( $combine_field ) ) {
|
88 |
-
|
89 |
-
$meta_value = $this->get_meta_value( $combine_field );
|
90 |
-
$field_value = ( isset( $meta_value[$field_id] ) ) ? $meta_value[$field_id] : '';
|
91 |
-
|
92 |
-
} else {
|
93 |
-
|
94 |
-
$meta_value = $this->get_meta_value( $field );
|
95 |
-
$field_value = ( isset( $meta_value ) ) ? $meta_value : '';
|
96 |
-
|
97 |
-
}
|
98 |
-
|
99 |
-
}
|
100 |
-
|
101 |
-
$instance = new $field_class( $field, $field_value, $this->unique, 'wp/enqueue', $this );
|
102 |
-
|
103 |
-
// typography enqueue and embed google web fonts
|
104 |
-
if ( $field_type === 'typography' && $this->args['enqueue_webfont'] && ! empty( $field_value['font-family'] ) ) {
|
105 |
-
|
106 |
-
$method = ( ! empty( $this->args['async_webfont'] ) ) ? 'async' : 'enqueue';
|
107 |
-
|
108 |
-
$instance->enqueue_google_fonts( $method );
|
109 |
-
|
110 |
-
}
|
111 |
-
|
112 |
-
// output css
|
113 |
-
if ( $field_output && $this->args['output_css'] ) {
|
114 |
-
CSF::$css .= $instance->output();
|
115 |
-
}
|
116 |
-
|
117 |
-
unset( $instance );
|
118 |
-
|
119 |
-
}
|
120 |
-
|
121 |
-
}
|
122 |
-
|
123 |
-
}
|
124 |
-
|
125 |
-
}
|
126 |
-
|
127 |
-
}
|
128 |
-
|
129 |
-
}
|
130 |
-
|
131 |
-
}
|
132 |
-
}
|
1 |
+
<?php if ( ! defined( 'ABSPATH' ) ) { die; } // Cannot access directly.
|
2 |
+
/**
|
3 |
+
*
|
4 |
+
* Abstract Class
|
5 |
+
*
|
6 |
+
* @since 1.0.0
|
7 |
+
* @version 1.0.0
|
8 |
+
*
|
9 |
+
*/
|
10 |
+
if ( ! class_exists( 'CSF_Abstract' ) ) {
|
11 |
+
abstract class CSF_Abstract {
|
12 |
+
|
13 |
+
public $abstract = '';
|
14 |
+
public $output_css = '';
|
15 |
+
|
16 |
+
public function __construct() {
|
17 |
+
|
18 |
+
// Collect output css and typography
|
19 |
+
if ( ! empty( $this->args['output_css'] ) || ! empty( $this->args['enqueue_webfont'] ) ) {
|
20 |
+
add_action( 'wp_enqueue_scripts', array( $this, 'collect_output_css_and_typography' ), 10 );
|
21 |
+
CSF::$css = apply_filters( "csf_{$this->unique}_output_css", CSF::$css, $this );
|
22 |
+
}
|
23 |
+
|
24 |
+
}
|
25 |
+
|
26 |
+
public function collect_output_css_and_typography() {
|
27 |
+
$this->recursive_output_css( $this->pre_fields );
|
28 |
+
}
|
29 |
+
|
30 |
+
public function recursive_output_css( $fields = array(), $combine_field = array() ) {
|
31 |
+
|
32 |
+
if ( ! empty( $fields ) ) {
|
33 |
+
|
34 |
+
foreach ( $fields as $field ) {
|
35 |
+
|
36 |
+
$field_id = ( ! empty( $field['id'] ) ) ? $field['id'] : '';
|
37 |
+
$field_type = ( ! empty( $field['type'] ) ) ? $field['type'] : '';
|
38 |
+
$field_output = ( ! empty( $field['output'] ) ) ? $field['output'] : '';
|
39 |
+
$field_check = ( $field_type === 'typography' || $field_output ) ? true : false;
|
40 |
+
$field_class = 'CSF_Field_' . $field_type;
|
41 |
+
|
42 |
+
if ( $field_type && $field_id ) {
|
43 |
+
|
44 |
+
|
45 |
+
if( $field_type === 'fieldset' ) {
|
46 |
+
if ( ! empty( $field['fields'] ) ) {
|
47 |
+
$this->recursive_output_css( $field['fields'], $field );
|
48 |
+
}
|
49 |
+
}
|
50 |
+
|
51 |
+
if( $field_type === 'accordion' ) {
|
52 |
+
if ( ! empty( $field['accordions'] ) ) {
|
53 |
+
foreach ( $field['accordions'] as $accordion ) {
|
54 |
+
$this->recursive_output_css( $accordion['fields'], $field );
|
55 |
+
}
|
56 |
+
}
|
57 |
+
}
|
58 |
+
|
59 |
+
if( $field_type === 'tabbed' ) {
|
60 |
+
if ( ! empty( $field['tabs'] ) ) {
|
61 |
+
foreach ( $field['tabs'] as $accordion ) {
|
62 |
+
$this->recursive_output_css( $accordion['fields'], $field );
|
63 |
+
}
|
64 |
+
}
|
65 |
+
}
|
66 |
+
|
67 |
+
if ( class_exists( $field_class ) ) {
|
68 |
+
|
69 |
+
if ( method_exists( $field_class, 'output' ) || method_exists( $field_class, 'enqueue_google_fonts' ) ) {
|
70 |
+
|
71 |
+
$field_value = '';
|
72 |
+
|
73 |
+
if ( $field_check && ( $this->abstract === 'options' || $this->abstract === 'customize' ) ) {
|
74 |
+
|
75 |
+
if( ! empty( $combine_field ) ) {
|
76 |
+
|
77 |
+
$field_value = ( isset( $this->options[$combine_field['id']][$field_id] ) ) ? $this->options[$combine_field['id']][$field_id] : '';
|
78 |
+
|
79 |
+
} else {
|
80 |
+
|
81 |
+
$field_value = ( isset( $this->options[$field_id] ) ) ? $this->options[$field_id] : '';
|
82 |
+
|
83 |
+
}
|
84 |
+
|
85 |
+
} else if ( $field_check && ( $this->abstract === 'metabox' && is_singular() || $this->abstract === 'taxonomy' && is_archive() ) ) {
|
86 |
+
|
87 |
+
if( ! empty( $combine_field ) ) {
|
88 |
+
|
89 |
+
$meta_value = $this->get_meta_value( $combine_field );
|
90 |
+
$field_value = ( isset( $meta_value[$field_id] ) ) ? $meta_value[$field_id] : '';
|
91 |
+
|
92 |
+
} else {
|
93 |
+
|
94 |
+
$meta_value = $this->get_meta_value( $field );
|
95 |
+
$field_value = ( isset( $meta_value ) ) ? $meta_value : '';
|
96 |
+
|
97 |
+
}
|
98 |
+
|
99 |
+
}
|
100 |
+
|
101 |
+
$instance = new $field_class( $field, $field_value, $this->unique, 'wp/enqueue', $this );
|
102 |
+
|
103 |
+
// typography enqueue and embed google web fonts
|
104 |
+
if ( $field_type === 'typography' && $this->args['enqueue_webfont'] && ! empty( $field_value['font-family'] ) ) {
|
105 |
+
|
106 |
+
$method = ( ! empty( $this->args['async_webfont'] ) ) ? 'async' : 'enqueue';
|
107 |
+
|
108 |
+
$instance->enqueue_google_fonts( $method );
|
109 |
+
|
110 |
+
}
|
111 |
+
|
112 |
+
// output css
|
113 |
+
if ( $field_output && $this->args['output_css'] ) {
|
114 |
+
CSF::$css .= $instance->output();
|
115 |
+
}
|
116 |
+
|
117 |
+
unset( $instance );
|
118 |
+
|
119 |
+
}
|
120 |
+
|
121 |
+
}
|
122 |
+
|
123 |
+
}
|
124 |
+
|
125 |
+
}
|
126 |
+
|
127 |
+
}
|
128 |
+
|
129 |
+
}
|
130 |
+
|
131 |
+
}
|
132 |
+
}
|
vendor/codestar-framework/classes/admin-options.class.php
CHANGED
@@ -1,725 +1,725 @@
|
|
1 |
-
<?php if ( ! defined( 'ABSPATH' ) ) { die; } // Cannot access directly.
|
2 |
-
/**
|
3 |
-
*
|
4 |
-
* Options Class
|
5 |
-
*
|
6 |
-
* @since 1.0.0
|
7 |
-
* @version 1.0.0
|
8 |
-
*
|
9 |
-
*/
|
10 |
-
if ( ! class_exists( 'CSF_Options' ) ) {
|
11 |
-
class CSF_Options extends CSF_Abstract {
|
12 |
-
|
13 |
-
// constans
|
14 |
-
public $unique = '';
|
15 |
-
public $notice = '';
|
16 |
-
public $abstract = 'options';
|
17 |
-
public $sections = array();
|
18 |
-
public $options = array();
|
19 |
-
public $errors = array();
|
20 |
-
public $pre_tabs = array();
|
21 |
-
public $pre_fields = array();
|
22 |
-
public $pre_sections = array();
|
23 |
-
public $args = array(
|
24 |
-
|
25 |
-
// framework title
|
26 |
-
'framework_title' => 'Codestar Framework <small>by Codestar</small>',
|
27 |
-
'framework_class' => '',
|
28 |
-
|
29 |
-
// menu settings
|
30 |
-
'menu_title' => '',
|
31 |
-
'menu_slug' => '',
|
32 |
-
'menu_type' => 'menu',
|
33 |
-
'menu_capability' => 'manage_options',
|
34 |
-
'menu_icon' => null,
|
35 |
-
'menu_position' => null,
|
36 |
-
'menu_hidden' => false,
|
37 |
-
'menu_parent' => '',
|
38 |
-
'sub_menu_title' => '',
|
39 |
-
|
40 |
-
// menu extras
|
41 |
-
'show_bar_menu' => true,
|
42 |
-
'show_sub_menu' => true,
|
43 |
-
'show_in_network' => true,
|
44 |
-
'show_in_customizer' => false,
|
45 |
-
|
46 |
-
'show_search' => true,
|
47 |
-
'show_reset_all' => true,
|
48 |
-
'show_reset_section' => true,
|
49 |
-
'show_footer' => true,
|
50 |
-
'show_all_options' => true,
|
51 |
-
'show_form_warning' => true,
|
52 |
-
'sticky_header' => true,
|
53 |
-
'save_defaults' => true,
|
54 |
-
'ajax_save' => true,
|
55 |
-
'form_action' => '',
|
56 |
-
|
57 |
-
// admin bar menu settings
|
58 |
-
'admin_bar_menu_icon' => '',
|
59 |
-
'admin_bar_menu_priority' => 50,
|
60 |
-
|
61 |
-
// footer
|
62 |
-
'footer_text' => '',
|
63 |
-
'footer_after' => '',
|
64 |
-
'footer_credit' => '',
|
65 |
-
|
66 |
-
// database model
|
67 |
-
'database' => '', // options, transient, theme_mod, network
|
68 |
-
'transient_time' => 0,
|
69 |
-
|
70 |
-
// contextual help
|
71 |
-
'contextual_help' => array(),
|
72 |
-
'contextual_help_sidebar' => '',
|
73 |
-
|
74 |
-
// typography options
|
75 |
-
'enqueue_webfont' => true,
|
76 |
-
'async_webfont' => false,
|
77 |
-
|
78 |
-
// others
|
79 |
-
'output_css' => true,
|
80 |
-
|
81 |
-
// theme
|
82 |
-
'nav' => 'normal',
|
83 |
-
'theme' => 'dark',
|
84 |
-
'class' => '',
|
85 |
-
|
86 |
-
// external default values
|
87 |
-
'defaults' => array(),
|
88 |
-
|
89 |
-
);
|
90 |
-
|
91 |
-
// run framework construct
|
92 |
-
public function __construct( $key, $params = array() ) {
|
93 |
-
|
94 |
-
$this->unique = $key;
|
95 |
-
$this->args = apply_filters( "csf_{$this->unique}_args", wp_parse_args( $params['args'], $this->args ), $this );
|
96 |
-
$this->sections = apply_filters( "csf_{$this->unique}_sections", $params['sections'], $this );
|
97 |
-
|
98 |
-
// run only is admin panel options, avoid performance loss
|
99 |
-
$this->pre_tabs = $this->pre_tabs( $this->sections );
|
100 |
-
$this->pre_fields = $this->pre_fields( $this->sections );
|
101 |
-
$this->pre_sections = $this->pre_sections( $this->sections );
|
102 |
-
|
103 |
-
$this->get_options();
|
104 |
-
$this->set_options();
|
105 |
-
$this->save_defaults();
|
106 |
-
|
107 |
-
add_action( 'admin_menu', array( $this, 'add_admin_menu' ) );
|
108 |
-
add_action( 'admin_bar_menu', array( $this, 'add_admin_bar_menu' ), $this->args['admin_bar_menu_priority'] );
|
109 |
-
add_action( 'wp_ajax_csf_'. $this->unique .'_ajax_save', array( $this, 'ajax_save' ) );
|
110 |
-
|
111 |
-
if ( $this->args['database'] === 'network' && ! empty( $this->args['show_in_network'] ) ) {
|
112 |
-
add_action( 'network_admin_menu', array( $this, 'add_admin_menu' ) );
|
113 |
-
}
|
114 |
-
|
115 |
-
// wp enqeueu for typography and output css
|
116 |
-
parent::__construct();
|
117 |
-
|
118 |
-
}
|
119 |
-
|
120 |
-
// instance
|
121 |
-
public static function instance( $key, $params = array() ) {
|
122 |
-
return new self( $key, $params );
|
123 |
-
}
|
124 |
-
|
125 |
-
public function pre_tabs( $sections ) {
|
126 |
-
|
127 |
-
$result = array();
|
128 |
-
$parents = array();
|
129 |
-
$count = 100;
|
130 |
-
|
131 |
-
foreach ( $sections as $key => $section ) {
|
132 |
-
if ( ! empty( $section['parent'] ) ) {
|
133 |
-
$section['priority'] = ( isset( $section['priority'] ) ) ? $section['priority'] : $count;
|
134 |
-
$parents[$section['parent']][] = $section;
|
135 |
-
unset( $sections[$key] );
|
136 |
-
}
|
137 |
-
$count++;
|
138 |
-
}
|
139 |
-
|
140 |
-
foreach ( $sections as $key => $section ) {
|
141 |
-
$section['priority'] = ( isset( $section['priority'] ) ) ? $section['priority'] : $count;
|
142 |
-
if ( ! empty( $section['id'] ) && ! empty( $parents[$section['id']] ) ) {
|
143 |
-
$section['subs'] = wp_list_sort( $parents[$section['id']], array( 'priority' => 'ASC' ), 'ASC', true );
|
144 |
-
}
|
145 |
-
$result[] = $section;
|
146 |
-
$count++;
|
147 |
-
}
|
148 |
-
|
149 |
-
return wp_list_sort( $result, array( 'priority' => 'ASC' ), 'ASC', true );
|
150 |
-
}
|
151 |
-
|
152 |
-
public function pre_fields( $sections ) {
|
153 |
-
|
154 |
-
$result = array();
|
155 |
-
|
156 |
-
foreach ( $sections as $key => $section ) {
|
157 |
-
if ( ! empty( $section['fields'] ) ) {
|
158 |
-
foreach ( $section['fields'] as $field ) {
|
159 |
-
$result[] = $field;
|
160 |
-
}
|
161 |
-
}
|
162 |
-
}
|
163 |
-
|
164 |
-
return $result;
|
165 |
-
}
|
166 |
-
|
167 |
-
public function pre_sections( $sections ) {
|
168 |
-
|
169 |
-
$result = array();
|
170 |
-
|
171 |
-
foreach ( $this->pre_tabs as $tab ) {
|
172 |
-
if ( ! empty( $tab['subs'] ) ) {
|
173 |
-
foreach ( $tab['subs'] as $sub ) {
|
174 |
-
$sub['ptitle'] = $tab['title'];
|
175 |
-
$result[] = $sub;
|
176 |
-
}
|
177 |
-
}
|
178 |
-
if ( empty( $tab['subs'] ) ) {
|
179 |
-
$result[] = $tab;
|
180 |
-
}
|
181 |
-
}
|
182 |
-
|
183 |
-
return $result;
|
184 |
-
}
|
185 |
-
|
186 |
-
// add admin bar menu
|
187 |
-
public function add_admin_bar_menu( $wp_admin_bar ) {
|
188 |
-
|
189 |
-
if ( ! current_user_can( $this->args['menu_capability'] ) ) {
|
190 |
-
return;
|
191 |
-
}
|
192 |
-
|
193 |
-
if ( is_network_admin() && ( $this->args['database'] !== 'network' || $this->args['show_in_network'] !== true ) ) {
|
194 |
-
return;
|
195 |
-
}
|
196 |
-
|
197 |
-
if ( ! empty( $this->args['show_bar_menu'] ) && empty( $this->args['menu_hidden'] ) ) {
|
198 |
-
|
199 |
-
global $submenu;
|
200 |
-
|
201 |
-
$menu_slug = $this->args['menu_slug'];
|
202 |
-
$menu_icon = ( ! empty( $this->args['admin_bar_menu_icon'] ) ) ? '<span class="csf-ab-icon ab-icon '. esc_attr( $this->args['admin_bar_menu_icon'] ) .'"></span>' : '';
|
203 |
-
|
204 |
-
$wp_admin_bar->add_node( array(
|
205 |
-
'id' => $menu_slug,
|
206 |
-
'title' => $menu_icon . esc_attr( $this->args['menu_title'] ),
|
207 |
-
'href' => esc_url( ( is_network_admin() ) ? network_admin_url( 'admin.php?page='. $menu_slug ) : admin_url( 'admin.php?page='. $menu_slug ) ),
|
208 |
-
) );
|
209 |
-
|
210 |
-
if ( ! empty( $submenu[$menu_slug] ) ) {
|
211 |
-
foreach ( $submenu[$menu_slug] as $menu_key => $menu_value ) {
|
212 |
-
$wp_admin_bar->add_node( array(
|
213 |
-
'parent' => $menu_slug,
|
214 |
-
'id' => $menu_slug .'-'. $menu_key,
|
215 |
-
'title' => $menu_value[0],
|
216 |
-
'href' => esc_url( ( is_network_admin() ) ? network_admin_url( 'admin.php?page='. $menu_value[2] ) : admin_url( 'admin.php?page='. $menu_value[2] ) ),
|
217 |
-
) );
|
218 |
-
}
|
219 |
-
}
|
220 |
-
|
221 |
-
}
|
222 |
-
|
223 |
-
}
|
224 |
-
|
225 |
-
public function ajax_save() {
|
226 |
-
|
227 |
-
$result = $this->set_options( true );
|
228 |
-
|
229 |
-
if ( ! $result ) {
|
230 |
-
wp_send_json_error( array( 'error' => esc_html__( 'Error while saving the changes.', 'csf' ) ) );
|
231 |
-
} else {
|
232 |
-
wp_send_json_success( array( 'notice' => $this->notice, 'errors' => $this->errors ) );
|
233 |
-
}
|
234 |
-
|
235 |
-
}
|
236 |
-
|
237 |
-
// get default value
|
238 |
-
public function get_default( $field ) {
|
239 |
-
|
240 |
-
$default = ( isset( $field['default'] ) ) ? $field['default'] : '';
|
241 |
-
$default = ( isset( $this->args['defaults'][$field['id']] ) ) ? $this->args['defaults'][$field['id']] : $default;
|
242 |
-
|
243 |
-
return $default;
|
244 |
-
|
245 |
-
}
|
246 |
-
|
247 |
-
// save defaults and set new fields value to main options
|
248 |
-
public function save_defaults() {
|
249 |
-
|
250 |
-
$tmp_options = $this->options;
|
251 |
-
|
252 |
-
foreach ( $this->pre_fields as $field ) {
|
253 |
-
if ( ! empty( $field['id'] ) ) {
|
254 |
-
$this->options[$field['id']] = ( isset( $this->options[$field['id']] ) ) ? $this->options[$field['id']] : $this->get_default( $field );
|
255 |
-
}
|
256 |
-
}
|
257 |
-
|
258 |
-
if ( $this->args['save_defaults'] && empty( $tmp_options ) ) {
|
259 |
-
$this->save_options( $this->options );
|
260 |
-
}
|
261 |
-
|
262 |
-
}
|
263 |
-
|
264 |
-
// set options
|
265 |
-
public function set_options( $ajax = false ) {
|
266 |
-
|
267 |
-
// XSS ok.
|
268 |
-
// No worries, This "POST" requests is sanitizing in the below foreach. see #L337 - #L341
|
269 |
-
$response = ( $ajax && ! empty( $_POST['data'] ) ) ? json_decode( wp_unslash( trim( $_POST['data'] ) ), true ) : $_POST;
|
270 |
-
|
271 |
-
// Set variables.
|
272 |
-
$data = array();
|
273 |
-
$noncekey = 'csf_options_nonce'. $this->unique;
|
274 |
-
$nonce = ( ! empty( $response[$noncekey] ) ) ? $response[$noncekey] : '';
|
275 |
-
$options = ( ! empty( $response[$this->unique] ) ) ? $response[$this->unique] : array();
|
276 |
-
$transient = ( ! empty( $response['csf_transient'] ) ) ? $response['csf_transient'] : array();
|
277 |
-
|
278 |
-
if ( wp_verify_nonce( $nonce, 'csf_options_nonce' ) ) {
|
279 |
-
|
280 |
-
$importing = false;
|
281 |
-
$section_id = ( ! empty( $transient['section'] ) ) ? $transient['section'] : '';
|
282 |
-
|
283 |
-
if ( ! $ajax && ! empty( $response[ 'csf_import_data' ] ) ) {
|
284 |
-
|
285 |
-
// XSS ok.
|
286 |
-
// No worries, This "POST" requests is sanitizing in the below foreach. see #L337 - #L341
|
287 |
-
$import_data = json_decode( wp_unslash( trim( $response[ 'csf_import_data' ] ) ), true );
|
288 |
-
$options = ( is_array( $import_data ) && ! empty( $import_data ) ) ? $import_data : array();
|
289 |
-
$importing = true;
|
290 |
-
$this->notice = esc_html__( 'Settings successfully imported.', 'csf' );
|
291 |
-
|
292 |
-
}
|
293 |
-
|
294 |
-
if ( ! empty( $transient['reset'] ) ) {
|
295 |
-
|
296 |
-
foreach ( $this->pre_fields as $field ) {
|
297 |
-
if ( ! empty( $field['id'] ) ) {
|
298 |
-
$data[$field['id']] = $this->get_default( $field );
|
299 |
-
}
|
300 |
-
}
|
301 |
-
|
302 |
-
$this->notice = esc_html__( 'Default settings restored.', 'csf' );
|
303 |
-
|
304 |
-
} else if ( ! empty( $transient['reset_section'] ) && ! empty( $section_id ) ) {
|
305 |
-
|
306 |
-
if ( ! empty( $this->pre_sections[$section_id-1]['fields'] ) ) {
|
307 |
-
|
308 |
-
foreach ( $this->pre_sections[$section_id-1]['fields'] as $field ) {
|
309 |
-
if ( ! empty( $field['id'] ) ) {
|
310 |
-
$data[$field['id']] = $this->get_default( $field );
|
311 |
-
}
|
312 |
-
}
|
313 |
-
|
314 |
-
}
|
315 |
-
|
316 |
-
$data = wp_parse_args( $data, $this->options );
|
317 |
-
|
318 |
-
$this->notice = esc_html__( 'Default settings restored.', 'csf' );
|
319 |
-
|
320 |
-
} else {
|
321 |
-
|
322 |
-
// sanitize and validate
|
323 |
-
foreach ( $this->pre_fields as $field ) {
|
324 |
-
|
325 |
-
if ( ! empty( $field['id'] ) ) {
|
326 |
-
|
327 |
-
$field_id = $field['id'];
|
328 |
-
$field_value = isset( $options[$field_id] ) ? $options[$field_id] : '';
|
329 |
-
|
330 |
-
// Ajax and Importing doing wp_unslash already.
|
331 |
-
if ( ! $ajax && ! $importing ) {
|
332 |
-
$field_value = wp_unslash( $field_value );
|
333 |
-
}
|
334 |
-
|
335 |
-
// Sanitize "post" request of field.
|
336 |
-
if ( ! isset( $field['sanitize'] ) ) {
|
337 |
-
|
338 |
-
if( is_array( $field_value ) ) {
|
339 |
-
|
340 |
-
$data[$field_id] = wp_kses_post_deep( $field_value );
|
341 |
-
|
342 |
-
} else {
|
343 |
-
|
344 |
-
$data[$field_id] = wp_kses_post( $field_value );
|
345 |
-
|
346 |
-
}
|
347 |
-
|
348 |
-
} else if( isset( $field['sanitize'] ) && is_callable( $field['sanitize'] ) ) {
|
349 |
-
|
350 |
-
$data[$field_id] = call_user_func( $field['sanitize'], $field_value );
|
351 |
-
|
352 |
-
} else {
|
353 |
-
|
354 |
-
$data[$field_id] = $field_value;
|
355 |
-
|
356 |
-
}
|
357 |
-
|
358 |
-
// Validate "post" request of field.
|
359 |
-
if ( isset( $field['validate'] ) && is_callable( $field['validate'] ) ) {
|
360 |
-
|
361 |
-
$has_validated = call_user_func( $field['validate'], $field_value );
|
362 |
-
|
363 |
-
if ( ! empty( $has_validated ) ) {
|
364 |
-
|
365 |
-
$data[$field_id] = ( isset( $this->options[$field_id] ) ) ? $this->options[$field_id] : '';
|
366 |
-
$this->errors[$field_id] = $has_validated;
|
367 |
-
|
368 |
-
}
|
369 |
-
|
370 |
-
}
|
371 |
-
|
372 |
-
}
|
373 |
-
|
374 |
-
}
|
375 |
-
|
376 |
-
}
|
377 |
-
|
378 |
-
$data = apply_filters( "csf_{$this->unique}_save", $data, $this );
|
379 |
-
|
380 |
-
do_action( "csf_{$this->unique}_save_before", $data, $this );
|
381 |
-
|
382 |
-
$this->options = $data;
|
383 |
-
|
384 |
-
$this->save_options( $data );
|
385 |
-
|
386 |
-
do_action( "csf_{$this->unique}_save_after", $data, $this );
|
387 |
-
|
388 |
-
if ( empty( $this->notice ) ) {
|
389 |
-
$this->notice = esc_html__( 'Settings saved.', 'csf' );
|
390 |
-
}
|
391 |
-
|
392 |
-
return true;
|
393 |
-
|
394 |
-
}
|
395 |
-
|
396 |
-
return false;
|
397 |
-
|
398 |
-
}
|
399 |
-
|
400 |
-
// save options database
|
401 |
-
public function save_options( $data ) {
|
402 |
-
|
403 |
-
if ( $this->args['database'] === 'transient' ) {
|
404 |
-
set_transient( $this->unique, $data, $this->args['transient_time'] );
|
405 |
-
} else if ( $this->args['database'] === 'theme_mod' ) {
|
406 |
-
set_theme_mod( $this->unique, $data );
|
407 |
-
} else if ( $this->args['database'] === 'network' ) {
|
408 |
-
update_site_option( $this->unique, $data );
|
409 |
-
} else {
|
410 |
-
update_option( $this->unique, $data );
|
411 |
-
}
|
412 |
-
|
413 |
-
do_action( "csf_{$this->unique}_saved", $data, $this );
|
414 |
-
|
415 |
-
}
|
416 |
-
|
417 |
-
// get options from database
|
418 |
-
public function get_options() {
|
419 |
-
|
420 |
-
if ( $this->args['database'] === 'transient' ) {
|
421 |
-
$this->options = get_transient( $this->unique );
|
422 |
-
} else if ( $this->args['database'] === 'theme_mod' ) {
|
423 |
-
$this->options = get_theme_mod( $this->unique );
|
424 |
-
} else if ( $this->args['database'] === 'network' ) {
|
425 |
-
$this->options = get_site_option( $this->unique );
|
426 |
-
} else {
|
427 |
-
$this->options = get_option( $this->unique );
|
428 |
-
}
|
429 |
-
|
430 |
-
if ( empty( $this->options ) ) {
|
431 |
-
$this->options = array();
|
432 |
-
}
|
433 |
-
|
434 |
-
return $this->options;
|
435 |
-
|
436 |
-
}
|
437 |
-
|
438 |
-
// admin menu
|
439 |
-
public function add_admin_menu() {
|
440 |
-
|
441 |
-
extract( $this->args );
|
442 |
-
|
443 |
-
if ( $menu_type === 'submenu' ) {
|
444 |
-
|
445 |
-
$menu_page = call_user_func( 'add_submenu_page', $menu_parent, esc_attr( $menu_title ), esc_attr( $menu_title ), $menu_capability, $menu_slug, array( $this, 'add_options_html' ) );
|
446 |
-
|
447 |
-
} else {
|
448 |
-
|
449 |
-
$menu_page = call_user_func( 'add_menu_page', esc_attr( $menu_title ), esc_attr( $menu_title ), $menu_capability, $menu_slug, array( $this, 'add_options_html' ), $menu_icon, $menu_position );
|
450 |
-
|
451 |
-
if ( ! empty( $sub_menu_title ) ) {
|
452 |
-
call_user_func( 'add_submenu_page', $menu_slug, esc_attr( $sub_menu_title ), esc_attr( $sub_menu_title ), $menu_capability, $menu_slug, array( $this, 'add_options_html' ) );
|
453 |
-
}
|
454 |
-
|
455 |
-
if ( ! empty( $this->args['show_sub_menu'] ) && count( $this->pre_tabs ) > 1 ) {
|
456 |
-
|
457 |
-
// create submenus
|
458 |
-
foreach ( $this->pre_tabs as $section ) {
|
459 |
-
call_user_func( 'add_submenu_page', $menu_slug, esc_attr( $section['title'] ), esc_attr( $section['title'] ), $menu_capability, $menu_slug .'#tab='. sanitize_title( $section['title'] ), '__return_null' );
|
460 |
-
}
|
461 |
-
|
462 |
-
remove_submenu_page( $menu_slug, $menu_slug );
|
463 |
-
|
464 |
-
}
|
465 |
-
|
466 |
-
if ( ! empty( $menu_hidden ) ) {
|
467 |
-
remove_menu_page( $menu_slug );
|
468 |
-
}
|
469 |
-
|
470 |
-
}
|
471 |
-
|
472 |
-
add_action( 'load-'. $menu_page, array( $this, 'add_page_on_load' ) );
|
473 |
-
|
474 |
-
}
|
475 |
-
|
476 |
-
public function add_page_on_load() {
|
477 |
-
|
478 |
-
if ( ! empty( $this->args['contextual_help'] ) ) {
|
479 |
-
|
480 |
-
$screen = get_current_screen();
|
481 |
-
|
482 |
-
foreach ( $this->args['contextual_help'] as $tab ) {
|
483 |
-
$screen->add_help_tab( $tab );
|
484 |
-
}
|
485 |
-
|
486 |
-
if ( ! empty( $this->args['contextual_help_sidebar'] ) ) {
|
487 |
-
$screen->set_help_sidebar( $this->args['contextual_help_sidebar'] );
|
488 |
-
}
|
489 |
-
|
490 |
-
}
|
491 |
-
|
492 |
-
add_filter( 'admin_footer_text', array( $this, 'add_admin_footer_text' ) );
|
493 |
-
|
494 |
-
}
|
495 |
-
|
496 |
-
public function add_admin_footer_text() {
|
497 |
-
$default = 'Thank you for creating with <a href="http://codestarframework.com/" target="_blank">Codestar Framework</a>';
|
498 |
-
echo ( ! empty( $this->args['footer_credit'] ) ) ? $this->args['footer_credit'] : $default;
|
499 |
-
}
|
500 |
-
|
501 |
-
public function error_check( $sections, $err = '' ) {
|
502 |
-
|
503 |
-
if ( ! $this->args['ajax_save'] ) {
|
504 |
-
|
505 |
-
if ( ! empty( $sections['fields'] ) ) {
|
506 |
-
foreach ( $sections['fields'] as $field ) {
|
507 |
-
if ( ! empty( $field['id'] ) ) {
|
508 |
-
if ( array_key_exists( $field['id'], $this->errors ) ) {
|
509 |
-
$err = '<span class="csf-label-error">!</span>';
|
510 |
-
}
|
511 |
-
}
|
512 |
-
}
|
513 |
-
}
|
514 |
-
|
515 |
-
if ( ! empty( $sections['subs'] ) ) {
|
516 |
-
foreach ( $sections['subs'] as $sub ) {
|
517 |
-
$err = $this->error_check( $sub, $err );
|
518 |
-
}
|
519 |
-
}
|
520 |
-
|
521 |
-
if ( ! empty( $sections['id'] ) && array_key_exists( $sections['id'], $this->errors ) ) {
|
522 |
-
$err = $this->errors[$sections['id']];
|
523 |
-
}
|
524 |
-
|
525 |
-
}
|
526 |
-
|
527 |
-
return $err;
|
528 |
-
}
|
529 |
-
|
530 |
-
// option page html output
|
531 |
-
public function add_options_html() {
|
532 |
-
|
533 |
-
$has_nav = ( count( $this->pre_tabs ) > 1 ) ? true : false;
|
534 |
-
$show_all = ( ! $has_nav ) ? ' csf-show-all' : '';
|
535 |
-
$ajax_class = ( $this->args['ajax_save'] ) ? ' csf-save-ajax' : '';
|
536 |
-
$sticky_class = ( $this->args['sticky_header'] ) ? ' csf-sticky-header' : '';
|
537 |
-
$wrapper_class = ( $this->args['framework_class'] ) ? ' '. $this->args['framework_class'] : '';
|
538 |
-
$theme = ( $this->args['theme'] ) ? ' csf-theme-'. $this->args['theme'] : '';
|
539 |
-
$class = ( $this->args['class'] ) ? ' '. $this->args['class'] : '';
|
540 |
-
$nav_type = ( $this->args['nav'] === 'inline' ) ? 'inline' : 'normal';
|
541 |
-
$form_action = ( $this->args['form_action'] ) ? $this->args['form_action'] : '';
|
542 |
-
|
543 |
-
do_action( 'csf_options_before' );
|
544 |
-
|
545 |
-
echo '<div class="csf csf-options'. esc_attr( $theme . $class . $wrapper_class ) .'" data-slug="'. esc_attr( $this->args['menu_slug'] ) .'" data-unique="'. esc_attr( $this->unique ) .'">';
|
546 |
-
|
547 |
-
echo '<div class="csf-container">';
|
548 |
-
|
549 |
-
echo '<form method="post" action="'. esc_attr( $form_action ) .'" enctype="multipart/form-data" id="csf-form" autocomplete="off" novalidate="novalidate">';
|
550 |
-
|
551 |
-
echo '<input type="hidden" class="csf-section-id" name="csf_transient[section]" value="1">';
|
552 |
-
|
553 |
-
wp_nonce_field( 'csf_options_nonce', 'csf_options_nonce'. $this->unique );
|
554 |
-
|
555 |
-
echo '<div class="csf-header'. esc_attr( $sticky_class ) .'">';
|
556 |
-
echo '<div class="csf-header-inner">';
|
557 |
-
|
558 |
-
echo '<div class="csf-header-left">';
|
559 |
-
echo '<h1>'. $this->args['framework_title'] .'</h1>';
|
560 |
-
echo '</div>';
|
561 |
-
|
562 |
-
echo '<div class="csf-header-right">';
|
563 |
-
|
564 |
-
$notice_class = ( ! empty( $this->notice ) ) ? 'csf-form-show' : '';
|
565 |
-
$notice_text = ( ! empty( $this->notice ) ) ? $this->notice : '';
|
566 |
-
|
567 |
-
echo '<div class="csf-form-result csf-form-success '. esc_attr( $notice_class ) .'">'. $notice_text .'</div>';
|
568 |
-
|
569 |
-
echo ( $this->args['show_form_warning'] ) ? '<div class="csf-form-result csf-form-warning">'. esc_html__( 'You have unsaved changes, save your changes!', 'csf' ) .'</div>' : '';
|
570 |
-
|
571 |
-
echo ( $has_nav && $this->args['show_all_options'] ) ? '<div class="csf-expand-all" title="'. esc_html__( 'show all settings', 'csf' ) .'"><i class="fas fa-outdent"></i></div>' : '';
|
572 |
-
|
573 |
-
echo ( $this->args['show_search'] ) ? '<div class="csf-search"><input type="text" name="csf-search" placeholder="'. esc_html__( 'Search...', 'csf' ) .'" autocomplete="off" /></div>' : '';
|
574 |
-
|
575 |
-
echo '<div class="csf-buttons">';
|
576 |
-
echo '<input type="submit" name="'. esc_attr( $this->unique ) .'[_nonce][save]" class="button button-primary csf-top-save csf-save'. esc_attr( $ajax_class ) .'" value="'. esc_html__( 'Save', 'csf' ) .'" data-save="'. esc_html__( 'Saving...', 'csf' ) .'">';
|
577 |
-
echo ( $this->args['show_reset_section'] ) ? '<input type="submit" name="csf_transient[reset_section]" class="button button-secondary csf-reset-section csf-confirm" value="'. esc_html__( 'Reset Section', 'csf' ) .'" data-confirm="'. esc_html__( 'Are you sure to reset this section options?', 'csf' ) .'">' : '';
|
578 |
-
echo ( $this->args['show_reset_all'] ) ? '<input type="submit" name="csf_transient[reset]" class="button csf-warning-primary csf-reset-all csf-confirm" value="'. ( ( $this->args['show_reset_section'] ) ? esc_html__( 'Reset All', 'csf' ) : esc_html__( 'Reset', 'csf' ) ) .'" data-confirm="'. esc_html__( 'Are you sure you want to reset all settings to default values?', 'csf' ) .'">' : '';
|
579 |
-
echo '</div>';
|
580 |
-
|
581 |
-
echo '</div>';
|
582 |
-
|
583 |
-
echo '<div class="clear"></div>';
|
584 |
-
echo '</div>';
|
585 |
-
echo '</div>';
|
586 |
-
|
587 |
-
echo '<div class="csf-wrapper'. esc_attr( $show_all ) .'">';
|
588 |
-
|
589 |
-
if ( $has_nav ) {
|
590 |
-
|
591 |
-
echo '<div class="csf-nav csf-nav-'. esc_attr( $nav_type ) .' csf-nav-options">';
|
592 |
-
|
593 |
-
echo '<ul>';
|
594 |
-
|
595 |
-
foreach ( $this->pre_tabs as $tab ) {
|
596 |
-
|
597 |
-
$tab_id = sanitize_title( $tab['title'] );
|
598 |
-
$tab_error = $this->error_check( $tab );
|
599 |
-
$tab_icon = ( ! empty( $tab['icon'] ) ) ? '<i class="csf-tab-icon '. esc_attr( $tab['icon'] ) .'"></i>' : '';
|
600 |
-
|
601 |
-
if ( ! empty( $tab['subs'] ) ) {
|
602 |
-
|
603 |
-
echo '<li class="csf-tab-item">';
|
604 |
-
|
605 |
-
echo '<a href="#tab='. esc_attr( $tab_id ) .'" data-tab-id="'. esc_attr( $tab_id ) .'" class="csf-arrow">'. $tab_icon . $tab['title'] . $tab_error .'</a>';
|
606 |
-
|
607 |
-
echo '<ul>';
|
608 |
-
|
609 |
-
foreach ( $tab['subs'] as $sub ) {
|
610 |
-
|
611 |
-
$sub_id = $tab_id .'/'. sanitize_title( $sub['title'] );
|
612 |
-
$sub_error = $this->error_check( $sub );
|
613 |
-
$sub_icon = ( ! empty( $sub['icon'] ) ) ? '<i class="csf-tab-icon '. esc_attr( $sub['icon'] ) .'"></i>' : '';
|
614 |
-
|
615 |
-
echo '<li><a href="#tab='. esc_attr( $sub_id ) .'" data-tab-id="'. esc_attr( $sub_id ) .'">'. $sub_icon . $sub['title'] . $sub_error .'</a></li>';
|
616 |
-
|
617 |
-
}
|
618 |
-
|
619 |
-
echo '</ul>';
|
620 |
-
|
621 |
-
echo '</li>';
|
622 |
-
|
623 |
-
} else {
|
624 |
-
|
625 |
-
echo '<li class="csf-tab-item"><a href="#tab='. esc_attr( $tab_id ) .'" data-tab-id="'. esc_attr( $tab_id ) .'">'. $tab_icon . $tab['title'] . $tab_error .'</a></li>';
|
626 |
-
|
627 |
-
}
|
628 |
-
|
629 |
-
}
|
630 |
-
|
631 |
-
echo '</ul>';
|
632 |
-
|
633 |
-
echo '</div>';
|
634 |
-
|
635 |
-
}
|
636 |
-
|
637 |
-
echo '<div class="csf-content">';
|
638 |
-
|
639 |
-
echo '<div class="csf-sections">';
|
640 |
-
|
641 |
-
foreach ( $this->pre_sections as $section ) {
|
642 |
-
|
643 |
-
$section_onload = ( ! $has_nav ) ? ' csf-onload' : '';
|
644 |
-
$section_class = ( ! empty( $section['class'] ) ) ? ' '. $section['class'] : '';
|
645 |
-
$section_icon = ( ! empty( $section['icon'] ) ) ? '<i class="csf-section-icon '. esc_attr( $section['icon'] ) .'"></i>' : '';
|
646 |
-
$section_title = ( ! empty( $section['title'] ) ) ? $section['title'] : '';
|
647 |
-
$section_parent = ( ! empty( $section['ptitle'] ) ) ? sanitize_title( $section['ptitle'] ) .'/' : '';
|
648 |
-
$section_slug = ( ! empty( $section['title'] ) ) ? sanitize_title( $section_title ) : '';
|
649 |
-
|
650 |
-
echo '<div class="csf-section hidden'. esc_attr( $section_onload . $section_class ) .'" data-section-id="'. esc_attr( $section_parent . $section_slug ) .'">';
|
651 |
-
echo ( $has_nav ) ? '<div class="csf-section-title"><h3>'. $section_icon . $section_title .'</h3></div>' : '';
|
652 |
-
echo ( ! empty( $section['description'] ) ) ? '<div class="csf-field csf-section-description">'. $section['description'] .'</div>' : '';
|
653 |
-
|
654 |
-
if ( ! empty( $section['fields'] ) ) {
|
655 |
-
|
656 |
-
foreach ( $section['fields'] as $field ) {
|
657 |
-
|
658 |
-
$is_field_error = $this->error_check( $field );
|
659 |
-
|
660 |
-
if ( ! empty( $is_field_error ) ) {
|
661 |
-
$field['_error'] = $is_field_error;
|
662 |
-
}
|
663 |
-
|
664 |
-
if ( ! empty( $field['id'] ) ) {
|
665 |
-
$field['default'] = $this->get_default( $field );
|
666 |
-
}
|
667 |
-
|
668 |
-
$value = ( ! empty( $field['id'] ) && isset( $this->options[$field['id']] ) ) ? $this->options[$field['id']] : '';
|
669 |
-
|
670 |
-
CSF::field( $field, $value, $this->unique, 'options' );
|
671 |
-
|
672 |
-
}
|
673 |
-
|
674 |
-
} else {
|
675 |
-
|
676 |
-
echo '<div class="csf-no-option">'. esc_html__( 'No data available.', 'csf' ) .'</div>';
|
677 |
-
|
678 |
-
}
|
679 |
-
|
680 |
-
echo '</div>';
|
681 |
-
|
682 |
-
}
|
683 |
-
|
684 |
-
echo '</div>';
|
685 |
-
|
686 |
-
echo '<div class="clear"></div>';
|
687 |
-
|
688 |
-
echo '</div>';
|
689 |
-
|
690 |
-
echo ( $has_nav && $nav_type === 'normal' ) ? '<div class="csf-nav-background"></div>' : '';
|
691 |
-
|
692 |
-
echo '</div>';
|
693 |
-
|
694 |
-
if ( ! empty( $this->args['show_footer'] ) ) {
|
695 |
-
|
696 |
-
echo '<div class="csf-footer">';
|
697 |
-
|
698 |
-
echo '<div class="csf-buttons">';
|
699 |
-
echo '<input type="submit" name="csf_transient[save]" class="button button-primary csf-save'. esc_attr( $ajax_class ) .'" value="'. esc_html__( 'Save', 'csf' ) .'" data-save="'. esc_html__( 'Saving...', 'csf' ) .'">';
|
700 |
-
echo ( $this->args['show_reset_section'] ) ? '<input type="submit" name="csf_transient[reset_section]" class="button button-secondary csf-reset-section csf-confirm" value="'. esc_html__( 'Reset Section', 'csf' ) .'" data-confirm="'. esc_html__( 'Are you sure to reset this section options?', 'csf' ) .'">' : '';
|
701 |
-
echo ( $this->args['show_reset_all'] ) ? '<input type="submit" name="csf_transient[reset]" class="button csf-warning-primary csf-reset-all csf-confirm" value="'. ( ( $this->args['show_reset_section'] ) ? esc_html__( 'Reset All', 'csf' ) : esc_html__( 'Reset', 'csf' ) ) .'" data-confirm="'. esc_html__( 'Are you sure you want to reset all settings to default values?', 'csf' ) .'">' : '';
|
702 |
-
echo '</div>';
|
703 |
-
|
704 |
-
echo ( ! empty( $this->args['footer_text'] ) ) ? '<div class="csf-copyright">'. $this->args['footer_text'] .'</div>' : '';
|
705 |
-
|
706 |
-
echo '<div class="clear"></div>';
|
707 |
-
echo '</div>';
|
708 |
-
|
709 |
-
}
|
710 |
-
|
711 |
-
echo '</form>';
|
712 |
-
|
713 |
-
echo '</div>';
|
714 |
-
|
715 |
-
echo '<div class="clear"></div>';
|
716 |
-
|
717 |
-
echo ( ! empty( $this->args['footer_after'] ) ) ? $this->args['footer_after'] : '';
|
718 |
-
|
719 |
-
echo '</div>';
|
720 |
-
|
721 |
-
do_action( 'csf_options_after' );
|
722 |
-
|
723 |
-
}
|
724 |
-
}
|
725 |
-
}
|
1 |
+
<?php if ( ! defined( 'ABSPATH' ) ) { die; } // Cannot access directly.
|
2 |
+
/**
|
3 |
+
*
|
4 |
+
* Options Class
|
5 |
+
*
|
6 |
+
* @since 1.0.0
|
7 |
+
* @version 1.0.0
|
8 |
+
*
|
9 |
+
*/
|
10 |
+
if ( ! class_exists( 'CSF_Options' ) ) {
|
11 |
+
class CSF_Options extends CSF_Abstract {
|
12 |
+
|
13 |
+
// constans
|
14 |
+
public $unique = '';
|
15 |
+
public $notice = '';
|
16 |
+
public $abstract = 'options';
|
17 |
+
public $sections = array();
|
18 |
+
public $options = array();
|
19 |
+
public $errors = array();
|
20 |
+
public $pre_tabs = array();
|
21 |
+
public $pre_fields = array();
|
22 |
+
public $pre_sections = array();
|
23 |
+
public $args = array(
|
24 |
+
|
25 |
+
// framework title
|
26 |
+
'framework_title' => 'Codestar Framework <small>by Codestar</small>',
|
27 |
+
'framework_class' => '',
|
28 |
+
|
29 |
+
// menu settings
|
30 |
+
'menu_title' => '',
|
31 |
+
'menu_slug' => '',
|
32 |
+
'menu_type' => 'menu',
|
33 |
+
'menu_capability' => 'manage_options',
|
34 |
+
'menu_icon' => null,
|
35 |
+
'menu_position' => null,
|
36 |
+
'menu_hidden' => false,
|
37 |
+
'menu_parent' => '',
|
38 |
+
'sub_menu_title' => '',
|
39 |
+
|
40 |
+
// menu extras
|
41 |
+
'show_bar_menu' => true,
|
42 |
+
'show_sub_menu' => true,
|
43 |
+
'show_in_network' => true,
|
44 |
+
'show_in_customizer' => false,
|
45 |
+
|
46 |
+
'show_search' => true,
|
47 |
+
'show_reset_all' => true,
|
48 |
+
'show_reset_section' => true,
|
49 |
+
'show_footer' => true,
|
50 |
+
'show_all_options' => true,
|
51 |
+
'show_form_warning' => true,
|
52 |
+
'sticky_header' => true,
|
53 |
+
'save_defaults' => true,
|
54 |
+
'ajax_save' => true,
|
55 |
+
'form_action' => '',
|
56 |
+
|
57 |
+
// admin bar menu settings
|
58 |
+
'admin_bar_menu_icon' => '',
|
59 |
+
'admin_bar_menu_priority' => 50,
|
60 |
+
|
61 |
+
// footer
|
62 |
+
'footer_text' => '',
|
63 |
+
'footer_after' => '',
|
64 |
+
'footer_credit' => '',
|
65 |
+
|
66 |
+
// database model
|
67 |
+
'database' => '', // options, transient, theme_mod, network
|
68 |
+
'transient_time' => 0,
|
69 |
+
|
70 |
+
// contextual help
|
71 |
+
'contextual_help' => array(),
|
72 |
+
'contextual_help_sidebar' => '',
|
73 |
+
|
74 |
+
// typography options
|
75 |
+
'enqueue_webfont' => true,
|
76 |
+
'async_webfont' => false,
|
77 |
+
|
78 |
+
// others
|
79 |
+
'output_css' => true,
|
80 |
+
|
81 |
+
// theme
|
82 |
+
'nav' => 'normal',
|
83 |
+
'theme' => 'dark',
|
84 |
+
'class' => '',
|
85 |
+
|
86 |
+
// external default values
|
87 |
+
'defaults' => array(),
|
88 |
+
|
89 |
+
);
|
90 |
+
|
91 |
+
// run framework construct
|
92 |
+
public function __construct( $key, $params = array() ) {
|
93 |
+
|
94 |
+
$this->unique = $key;
|
95 |
+
$this->args = apply_filters( "csf_{$this->unique}_args", wp_parse_args( $params['args'], $this->args ), $this );
|
96 |
+
$this->sections = apply_filters( "csf_{$this->unique}_sections", $params['sections'], $this );
|
97 |
+
|
98 |
+
// run only is admin panel options, avoid performance loss
|
99 |
+
$this->pre_tabs = $this->pre_tabs( $this->sections );
|
100 |
+
$this->pre_fields = $this->pre_fields( $this->sections );
|
101 |
+
$this->pre_sections = $this->pre_sections( $this->sections );
|
102 |
+
|
103 |
+
$this->get_options();
|
104 |
+
$this->set_options();
|
105 |
+
$this->save_defaults();
|
106 |
+
|
107 |
+
add_action( 'admin_menu', array( $this, 'add_admin_menu' ) );
|
108 |
+
add_action( 'admin_bar_menu', array( $this, 'add_admin_bar_menu' ), $this->args['admin_bar_menu_priority'] );
|
109 |
+
add_action( 'wp_ajax_csf_'. $this->unique .'_ajax_save', array( $this, 'ajax_save' ) );
|
110 |
+
|
111 |
+
if ( $this->args['database'] === 'network' && ! empty( $this->args['show_in_network'] ) ) {
|
112 |
+
add_action( 'network_admin_menu', array( $this, 'add_admin_menu' ) );
|
113 |
+
}
|
114 |
+
|
115 |
+
// wp enqeueu for typography and output css
|
116 |
+
parent::__construct();
|
117 |
+
|
118 |
+
}
|
119 |
+
|
120 |
+
// instance
|
121 |
+
public static function instance( $key, $params = array() ) {
|
122 |
+
return new self( $key, $params );
|
123 |
+
}
|
124 |
+
|
125 |
+
public function pre_tabs( $sections ) {
|
126 |
+
|
127 |
+
$result = array();
|
128 |
+
$parents = array();
|
129 |
+
$count = 100;
|
130 |
+
|
131 |
+
foreach ( $sections as $key => $section ) {
|
132 |
+
if ( ! empty( $section['parent'] ) ) {
|
133 |
+
$section['priority'] = ( isset( $section['priority'] ) ) ? $section['priority'] : $count;
|
134 |
+
$parents[$section['parent']][] = $section;
|
135 |
+
unset( $sections[$key] );
|
136 |
+
}
|
137 |
+
$count++;
|
138 |
+
}
|
139 |
+
|
140 |
+
foreach ( $sections as $key => $section ) {
|
141 |
+
$section['priority'] = ( isset( $section['priority'] ) ) ? $section['priority'] : $count;
|
142 |
+
if ( ! empty( $section['id'] ) && ! empty( $parents[$section['id']] ) ) {
|
143 |
+
$section['subs'] = wp_list_sort( $parents[$section['id']], array( 'priority' => 'ASC' ), 'ASC', true );
|
144 |
+
}
|
145 |
+
$result[] = $section;
|
146 |
+
$count++;
|
147 |
+
}
|
148 |
+
|
149 |
+
return wp_list_sort( $result, array( 'priority' => 'ASC' ), 'ASC', true );
|
150 |
+
}
|
151 |
+
|
152 |
+
public function pre_fields( $sections ) {
|
153 |
+
|
154 |
+
$result = array();
|
155 |
+
|
156 |
+
foreach ( $sections as $key => $section ) {
|
157 |
+
if ( ! empty( $section['fields'] ) ) {
|
158 |
+
foreach ( $section['fields'] as $field ) {
|
159 |
+
$result[] = $field;
|
160 |
+
}
|
161 |
+
}
|
162 |
+
}
|
163 |
+
|
164 |
+
return $result;
|
165 |
+
}
|
166 |
+
|
167 |
+
public function pre_sections( $sections ) {
|
168 |
+
|
169 |
+
$result = array();
|
170 |
+
|
171 |
+
foreach ( $this->pre_tabs as $tab ) {
|
172 |
+
if ( ! empty( $tab['subs'] ) ) {
|
173 |
+
foreach ( $tab['subs'] as $sub ) {
|
174 |
+
$sub['ptitle'] = $tab['title'];
|
175 |
+
$result[] = $sub;
|
176 |
+
}
|
177 |
+
}
|
178 |
+
if ( empty( $tab['subs'] ) ) {
|
179 |
+
$result[] = $tab;
|
180 |
+
}
|
181 |
+
}
|
182 |
+
|
183 |
+
return $result;
|
184 |
+
}
|
185 |
+
|
186 |
+
// add admin bar menu
|
187 |
+
public function add_admin_bar_menu( $wp_admin_bar ) {
|
188 |
+
|
189 |
+
if ( ! current_user_can( $this->args['menu_capability'] ) ) {
|
190 |
+
return;
|
191 |
+
}
|
192 |
+
|
193 |
+
if ( is_network_admin() && ( $this->args['database'] !== 'network' || $this->args['show_in_network'] !== true ) ) {
|
194 |
+
return;
|
195 |
+
}
|
196 |
+
|
197 |
+
if ( ! empty( $this->args['show_bar_menu'] ) && empty( $this->args['menu_hidden'] ) ) {
|
198 |
+
|
199 |
+
global $submenu;
|
200 |
+
|
201 |
+
$menu_slug = $this->args['menu_slug'];
|
202 |
+
$menu_icon = ( ! empty( $this->args['admin_bar_menu_icon'] ) ) ? '<span class="csf-ab-icon ab-icon '. esc_attr( $this->args['admin_bar_menu_icon'] ) .'"></span>' : '';
|
203 |
+
|
204 |
+
$wp_admin_bar->add_node( array(
|
205 |
+
'id' => $menu_slug,
|
206 |
+
'title' => $menu_icon . esc_attr( $this->args['menu_title'] ),
|
207 |
+
'href' => esc_url( ( is_network_admin() ) ? network_admin_url( 'admin.php?page='. $menu_slug ) : admin_url( 'admin.php?page='. $menu_slug ) ),
|
208 |
+
) );
|
209 |
+
|
210 |
+
if ( ! empty( $submenu[$menu_slug] ) ) {
|
211 |
+
foreach ( $submenu[$menu_slug] as $menu_key => $menu_value ) {
|
212 |
+
$wp_admin_bar->add_node( array(
|
213 |
+
'parent' => $menu_slug,
|
214 |
+
'id' => $menu_slug .'-'. $menu_key,
|
215 |
+
'title' => $menu_value[0],
|
216 |
+
'href' => esc_url( ( is_network_admin() ) ? network_admin_url( 'admin.php?page='. $menu_value[2] ) : admin_url( 'admin.php?page='. $menu_value[2] ) ),
|
217 |
+
) );
|
218 |
+
}
|
219 |
+
}
|
220 |
+
|
221 |
+
}
|
222 |
+
|
223 |
+
}
|
224 |
+
|
225 |
+
public function ajax_save() {
|
226 |
+
|
227 |
+
$result = $this->set_options( true );
|
228 |
+
|
229 |
+
if ( ! $result ) {
|
230 |
+
wp_send_json_error( array( 'error' => esc_html__( 'Error while saving the changes.', 'csf' ) ) );
|
231 |
+
} else {
|
232 |
+
wp_send_json_success( array( 'notice' => $this->notice, 'errors' => $this->errors ) );
|
233 |
+
}
|
234 |
+
|
235 |
+
}
|
236 |
+
|
237 |
+
// get default value
|
238 |
+
public function get_default( $field ) {
|
239 |
+
|
240 |
+
$default = ( isset( $field['default'] ) ) ? $field['default'] : '';
|
241 |
+
$default = ( isset( $this->args['defaults'][$field['id']] ) ) ? $this->args['defaults'][$field['id']] : $default;
|
242 |
+
|
243 |
+
return $default;
|
244 |
+
|
245 |
+
}
|
246 |
+
|
247 |
+
// save defaults and set new fields value to main options
|
248 |
+
public function save_defaults() {
|
249 |
+
|
250 |
+
$tmp_options = $this->options;
|
251 |
+
|
252 |
+
foreach ( $this->pre_fields as $field ) {
|
253 |
+
if ( ! empty( $field['id'] ) ) {
|
254 |
+
$this->options[$field['id']] = ( isset( $this->options[$field['id']] ) ) ? $this->options[$field['id']] : $this->get_default( $field );
|
255 |
+
}
|
256 |
+
}
|
257 |
+
|
258 |
+
if ( $this->args['save_defaults'] && empty( $tmp_options ) ) {
|
259 |
+
$this->save_options( $this->options );
|
260 |
+
}
|
261 |
+
|
262 |
+
}
|
263 |
+
|
264 |
+
// set options
|
265 |
+
public function set_options( $ajax = false ) {
|
266 |
+
|
267 |
+
// XSS ok.
|
268 |
+
// No worries, This "POST" requests is sanitizing in the below foreach. see #L337 - #L341
|
269 |
+
$response = ( $ajax && ! empty( $_POST['data'] ) ) ? json_decode( wp_unslash( trim( $_POST['data'] ) ), true ) : $_POST;
|
270 |
+
|
271 |
+
// Set variables.
|
272 |
+
$data = array();
|
273 |
+
$noncekey = 'csf_options_nonce'. $this->unique;
|
274 |
+
$nonce = ( ! empty( $response[$noncekey] ) ) ? $response[$noncekey] : '';
|
275 |
+
$options = ( ! empty( $response[$this->unique] ) ) ? $response[$this->unique] : array();
|
276 |
+
$transient = ( ! empty( $response['csf_transient'] ) ) ? $response['csf_transient'] : array();
|
277 |
+
|
278 |
+
if ( wp_verify_nonce( $nonce, 'csf_options_nonce' ) ) {
|
279 |
+
|
280 |
+
$importing = false;
|
281 |
+
$section_id = ( ! empty( $transient['section'] ) ) ? $transient['section'] : '';
|
282 |
+
|
283 |
+
if ( ! $ajax && ! empty( $response[ 'csf_import_data' ] ) ) {
|
284 |
+
|
285 |
+
// XSS ok.
|
286 |
+
// No worries, This "POST" requests is sanitizing in the below foreach. see #L337 - #L341
|
287 |
+
$import_data = json_decode( wp_unslash( trim( $response[ 'csf_import_data' ] ) ), true );
|
288 |
+
$options = ( is_array( $import_data ) && ! empty( $import_data ) ) ? $import_data : array();
|
289 |
+
$importing = true;
|
290 |
+
$this->notice = esc_html__( 'Settings successfully imported.', 'csf' );
|
291 |
+
|
292 |
+
}
|
293 |
+
|
294 |
+
if ( ! empty( $transient['reset'] ) ) {
|
295 |
+
|
296 |
+
foreach ( $this->pre_fields as $field ) {
|
297 |
+
if ( ! empty( $field['id'] ) ) {
|
298 |
+
$data[$field['id']] = $this->get_default( $field );
|
299 |
+
}
|
300 |
+
}
|
301 |
+
|
302 |
+
$this->notice = esc_html__( 'Default settings restored.', 'csf' );
|
303 |
+
|
304 |
+
} else if ( ! empty( $transient['reset_section'] ) && ! empty( $section_id ) ) {
|
305 |
+
|
306 |
+
if ( ! empty( $this->pre_sections[$section_id-1]['fields'] ) ) {
|
307 |
+
|
308 |
+
foreach ( $this->pre_sections[$section_id-1]['fields'] as $field ) {
|
309 |
+
if ( ! empty( $field['id'] ) ) {
|
310 |
+
$data[$field['id']] = $this->get_default( $field );
|
311 |
+
}
|
312 |
+
}
|
313 |
+
|
314 |
+
}
|
315 |
+
|
316 |
+
$data = wp_parse_args( $data, $this->options );
|
317 |
+
|
318 |
+
$this->notice = esc_html__( 'Default settings restored.', 'csf' );
|
319 |
+
|
320 |
+
} else {
|
321 |
+
|
322 |
+
// sanitize and validate
|
323 |
+
foreach ( $this->pre_fields as $field ) {
|
324 |
+
|
325 |
+
if ( ! empty( $field['id'] ) ) {
|
326 |
+
|
327 |
+
$field_id = $field['id'];
|
328 |
+
$field_value = isset( $options[$field_id] ) ? $options[$field_id] : '';
|
329 |
+
|
330 |
+
// Ajax and Importing doing wp_unslash already.
|
331 |
+
if ( ! $ajax && ! $importing ) {
|
332 |
+
$field_value = wp_unslash( $field_value );
|
333 |
+
}
|
334 |
+
|
335 |
+
// Sanitize "post" request of field.
|
336 |
+
if ( ! isset( $field['sanitize'] ) ) {
|
337 |
+
|
338 |
+
if( is_array( $field_value ) ) {
|
339 |
+
|
340 |
+
$data[$field_id] = wp_kses_post_deep( $field_value );
|
341 |
+
|
342 |
+
} else {
|
343 |
+
|
344 |
+
$data[$field_id] = wp_kses_post( $field_value );
|
345 |
+
|
346 |
+
}
|
347 |
+
|
348 |
+
} else if( isset( $field['sanitize'] ) && is_callable( $field['sanitize'] ) ) {
|
349 |
+
|
350 |
+
$data[$field_id] = call_user_func( $field['sanitize'], $field_value );
|
351 |
+
|
352 |
+
} else {
|
353 |
+
|
354 |
+
$data[$field_id] = $field_value;
|
355 |
+
|
356 |
+
}
|
357 |
+
|
358 |
+
// Validate "post" request of field.
|
359 |
+
if ( isset( $field['validate'] ) && is_callable( $field['validate'] ) ) {
|
360 |
+
|
361 |
+
$has_validated = call_user_func( $field['validate'], $field_value );
|
362 |
+
|
363 |
+
if ( ! empty( $has_validated ) ) {
|
364 |
+
|
365 |
+
$data[$field_id] = ( isset( $this->options[$field_id] ) ) ? $this->options[$field_id] : '';
|
366 |
+
$this->errors[$field_id] = $has_validated;
|
367 |
+
|
368 |
+
}
|
369 |
+
|
370 |
+
}
|
371 |
+
|
372 |
+
}
|
373 |
+
|
374 |
+
}
|
375 |
+
|
376 |
+
}
|
377 |
+
|
378 |
+
$data = apply_filters( "csf_{$this->unique}_save", $data, $this );
|
379 |
+
|
380 |
+
do_action( "csf_{$this->unique}_save_before", $data, $this );
|
381 |
+
|
382 |
+
$this->options = $data;
|
383 |
+
|
384 |
+
$this->save_options( $data );
|
385 |
+
|
386 |
+
do_action( "csf_{$this->unique}_save_after", $data, $this );
|
387 |
+
|
388 |
+
if ( empty( $this->notice ) ) {
|
389 |
+
$this->notice = esc_html__( 'Settings saved.', 'csf' );
|
390 |
+
}
|
391 |
+
|
392 |
+
return true;
|
393 |
+
|
394 |
+
}
|
395 |
+
|
396 |
+
return false;
|
397 |
+
|
398 |
+
}
|
399 |
+
|
400 |
+
// save options database
|
401 |
+
public function save_options( $data ) {
|
402 |
+
|
403 |
+
if ( $this->args['database'] === 'transient' ) {
|
404 |
+
set_transient( $this->unique, $data, $this->args['transient_time'] );
|
405 |
+
} else if ( $this->args['database'] === 'theme_mod' ) {
|
406 |
+
set_theme_mod( $this->unique, $data );
|
407 |
+
} else if ( $this->args['database'] === 'network' ) {
|
408 |
+
update_site_option( $this->unique, $data );
|
409 |
+
} else {
|
410 |
+
update_option( $this->unique, $data );
|
411 |
+
}
|
412 |
+
|
413 |
+
do_action( "csf_{$this->unique}_saved", $data, $this );
|
414 |
+
|
415 |
+
}
|
416 |
+
|
417 |
+
// get options from database
|
418 |
+
public function get_options() {
|
419 |
+
|
420 |
+
if ( $this->args['database'] === 'transient' ) {
|
421 |
+
$this->options = get_transient( $this->unique );
|
422 |
+
} else if ( $this->args['database'] === 'theme_mod' ) {
|
423 |
+
$this->options = get_theme_mod( $this->unique );
|
424 |
+
} else if ( $this->args['database'] === 'network' ) {
|
425 |
+
$this->options = get_site_option( $this->unique );
|
426 |
+
} else {
|
427 |
+
$this->options = get_option( $this->unique );
|
428 |
+
}
|
429 |
+
|
430 |
+
if ( empty( $this->options ) ) {
|
431 |
+
$this->options = array();
|
432 |
+
}
|
433 |
+
|
434 |
+
return $this->options;
|
435 |
+
|
436 |
+
}
|
437 |
+
|
438 |
+
// admin menu
|
439 |
+
public function add_admin_menu() {
|
440 |
+
|
441 |
+
extract( $this->args );
|
442 |
+
|
443 |
+
if ( $menu_type === 'submenu' ) {
|
444 |
+
|
445 |
+
$menu_page = call_user_func( 'add_submenu_page', $menu_parent, esc_attr( $menu_title ), esc_attr( $menu_title ), $menu_capability, $menu_slug, array( $this, 'add_options_html' ) );
|
446 |
+
|
447 |
+
} else {
|
448 |
+
|
449 |
+
$menu_page = call_user_func( 'add_menu_page', esc_attr( $menu_title ), esc_attr( $menu_title ), $menu_capability, $menu_slug, array( $this, 'add_options_html' ), $menu_icon, $menu_position );
|
450 |
+
|
451 |
+
if ( ! empty( $sub_menu_title ) ) {
|
452 |
+
call_user_func( 'add_submenu_page', $menu_slug, esc_attr( $sub_menu_title ), esc_attr( $sub_menu_title ), $menu_capability, $menu_slug, array( $this, 'add_options_html' ) );
|
453 |
+
}
|
454 |
+
|
455 |
+
if ( ! empty( $this->args['show_sub_menu'] ) && count( $this->pre_tabs ) > 1 ) {
|
456 |
+
|
457 |
+
// create submenus
|
458 |
+
foreach ( $this->pre_tabs as $section ) {
|
459 |
+
call_user_func( 'add_submenu_page', $menu_slug, esc_attr( $section['title'] ), esc_attr( $section['title'] ), $menu_capability, $menu_slug .'#tab='. sanitize_title( $section['title'] ), '__return_null' );
|
460 |
+
}
|
461 |
+
|
462 |
+
remove_submenu_page( $menu_slug, $menu_slug );
|
463 |
+
|
464 |
+
}
|
465 |
+
|
466 |
+
if ( ! empty( $menu_hidden ) ) {
|
467 |
+
remove_menu_page( $menu_slug );
|
468 |
+
}
|
469 |
+
|
470 |
+
}
|
471 |
+
|
472 |
+
add_action( 'load-'. $menu_page, array( $this, 'add_page_on_load' ) );
|
473 |
+
|
474 |
+
}
|
475 |
+
|
476 |
+
public function add_page_on_load() {
|
477 |
+
|
478 |
+
if ( ! empty( $this->args['contextual_help'] ) ) {
|
479 |
+
|
480 |
+
$screen = get_current_screen();
|
481 |
+
|
482 |
+
foreach ( $this->args['contextual_help'] as $tab ) {
|
483 |
+
$screen->add_help_tab( $tab );
|
484 |
+
}
|
485 |
+
|
486 |
+
if ( ! empty( $this->args['contextual_help_sidebar'] ) ) {
|
487 |
+
$screen->set_help_sidebar( $this->args['contextual_help_sidebar'] );
|
488 |
+
}
|
489 |
+
|
490 |
+
}
|
491 |
+
|
492 |
+
add_filter( 'admin_footer_text', array( $this, 'add_admin_footer_text' ) );
|
493 |
+
|
494 |
+
}
|
495 |
+
|
496 |
+
public function add_admin_footer_text() {
|
497 |
+
$default = 'Thank you for creating with <a href="http://codestarframework.com/" target="_blank">Codestar Framework</a>';
|
498 |
+
echo ( ! empty( $this->args['footer_credit'] ) ) ? $this->args['footer_credit'] : $default;
|
499 |
+
}
|
500 |
+
|
501 |
+
public function error_check( $sections, $err = '' ) {
|
502 |
+
|
503 |
+
if ( ! $this->args['ajax_save'] ) {
|
504 |
+
|
505 |
+
if ( ! empty( $sections['fields'] ) ) {
|
506 |
+
foreach ( $sections['fields'] as $field ) {
|
507 |
+
if ( ! empty( $field['id'] ) ) {
|
508 |
+
if ( array_key_exists( $field['id'], $this->errors ) ) {
|
509 |
+
$err = '<span class="csf-label-error">!</span>';
|
510 |
+
}
|
511 |
+
}
|
512 |
+
}
|
513 |
+
}
|
514 |
+
|
515 |
+
if ( ! empty( $sections['subs'] ) ) {
|
516 |
+
foreach ( $sections['subs'] as $sub ) {
|
517 |
+
$err = $this->error_check( $sub, $err );
|
518 |
+
}
|
519 |
+
}
|
520 |
+
|
521 |
+
if ( ! empty( $sections['id'] ) && array_key_exists( $sections['id'], $this->errors ) ) {
|
522 |
+
$err = $this->errors[$sections['id']];
|
523 |
+
}
|
524 |
+
|
525 |
+
}
|
526 |
+
|
527 |
+
return $err;
|
528 |
+
}
|
529 |
+
|
530 |
+
// option page html output
|
531 |
+
public function add_options_html() {
|
532 |
+
|
533 |
+
$has_nav = ( count( $this->pre_tabs ) > 1 ) ? true : false;
|
534 |
+
$show_all = ( ! $has_nav ) ? ' csf-show-all' : '';
|
535 |
+
$ajax_class = ( $this->args['ajax_save'] ) ? ' csf-save-ajax' : '';
|
536 |
+
$sticky_class = ( $this->args['sticky_header'] ) ? ' csf-sticky-header' : '';
|
537 |
+
$wrapper_class = ( $this->args['framework_class'] ) ? ' '. $this->args['framework_class'] : '';
|
538 |
+
$theme = ( $this->args['theme'] ) ? ' csf-theme-'. $this->args['theme'] : '';
|
539 |
+
$class = ( $this->args['class'] ) ? ' '. $this->args['class'] : '';
|
540 |
+
$nav_type = ( $this->args['nav'] === 'inline' ) ? 'inline' : 'normal';
|
541 |
+
$form_action = ( $this->args['form_action'] ) ? $this->args['form_action'] : '';
|
542 |
+
|
543 |
+
do_action( 'csf_options_before' );
|
544 |
+
|
545 |
+
echo '<div class="csf csf-options'. esc_attr( $theme . $class . $wrapper_class ) .'" data-slug="'. esc_attr( $this->args['menu_slug'] ) .'" data-unique="'. esc_attr( $this->unique ) .'">';
|
546 |
+
|
547 |
+
echo '<div class="csf-container">';
|
548 |
+
|
549 |
+
echo '<form method="post" action="'. esc_attr( $form_action ) .'" enctype="multipart/form-data" id="csf-form" autocomplete="off" novalidate="novalidate">';
|
550 |
+
|
551 |
+
echo '<input type="hidden" class="csf-section-id" name="csf_transient[section]" value="1">';
|
552 |
+
|
553 |
+
wp_nonce_field( 'csf_options_nonce', 'csf_options_nonce'. $this->unique );
|
554 |
+
|
555 |
+
echo '<div class="csf-header'. esc_attr( $sticky_class ) .'">';
|
556 |
+
echo '<div class="csf-header-inner">';
|
557 |
+
|
558 |
+
echo '<div class="csf-header-left">';
|
559 |
+
echo '<h1>'. $this->args['framework_title'] .'</h1>';
|
560 |
+
echo '</div>';
|
561 |
+
|
562 |
+
echo '<div class="csf-header-right">';
|
563 |
+
|
564 |
+
$notice_class = ( ! empty( $this->notice ) ) ? 'csf-form-show' : '';
|
565 |
+
$notice_text = ( ! empty( $this->notice ) ) ? $this->notice : '';
|
566 |
+
|
567 |
+
echo '<div class="csf-form-result csf-form-success '. esc_attr( $notice_class ) .'">'. $notice_text .'</div>';
|
568 |
+
|
569 |
+
echo ( $this->args['show_form_warning'] ) ? '<div class="csf-form-result csf-form-warning">'. esc_html__( 'You have unsaved changes, save your changes!', 'csf' ) .'</div>' : '';
|
570 |
+
|
571 |
+
echo ( $has_nav && $this->args['show_all_options'] ) ? '<div class="csf-expand-all" title="'. esc_html__( 'show all settings', 'csf' ) .'"><i class="fas fa-outdent"></i></div>' : '';
|
572 |
+
|
573 |
+
echo ( $this->args['show_search'] ) ? '<div class="csf-search"><input type="text" name="csf-search" placeholder="'. esc_html__( 'Search...', 'csf' ) .'" autocomplete="off" /></div>' : '';
|
574 |
+
|
575 |
+
echo '<div class="csf-buttons">';
|
576 |
+
echo '<input type="submit" name="'. esc_attr( $this->unique ) .'[_nonce][save]" class="button button-primary csf-top-save csf-save'. esc_attr( $ajax_class ) .'" value="'. esc_html__( 'Save', 'csf' ) .'" data-save="'. esc_html__( 'Saving...', 'csf' ) .'">';
|
577 |
+
echo ( $this->args['show_reset_section'] ) ? '<input type="submit" name="csf_transient[reset_section]" class="button button-secondary csf-reset-section csf-confirm" value="'. esc_html__( 'Reset Section', 'csf' ) .'" data-confirm="'. esc_html__( 'Are you sure to reset this section options?', 'csf' ) .'">' : '';
|
578 |
+
echo ( $this->args['show_reset_all'] ) ? '<input type="submit" name="csf_transient[reset]" class="button csf-warning-primary csf-reset-all csf-confirm" value="'. ( ( $this->args['show_reset_section'] ) ? esc_html__( 'Reset All', 'csf' ) : esc_html__( 'Reset', 'csf' ) ) .'" data-confirm="'. esc_html__( 'Are you sure you want to reset all settings to default values?', 'csf' ) .'">' : '';
|
579 |
+
echo '</div>';
|
580 |
+
|
581 |
+
echo '</div>';
|
582 |
+
|
583 |
+
echo '<div class="clear"></div>';
|
584 |
+
echo '</div>';
|
585 |
+
echo '</div>';
|
586 |
+
|
587 |
+
echo '<div class="csf-wrapper'. esc_attr( $show_all ) .'">';
|
588 |
+
|
589 |
+
if ( $has_nav ) {
|
590 |
+
|
591 |
+
echo '<div class="csf-nav csf-nav-'. esc_attr( $nav_type ) .' csf-nav-options">';
|
592 |
+
|
593 |
+
echo '<ul>';
|
594 |
+
|
595 |
+
foreach ( $this->pre_tabs as $tab ) {
|
596 |
+
|
597 |
+
$tab_id = sanitize_title( $tab['title'] );
|
598 |
+
$tab_error = $this->error_check( $tab );
|
599 |
+
$tab_icon = ( ! empty( $tab['icon'] ) ) ? '<i class="csf-tab-icon '. esc_attr( $tab['icon'] ) .'"></i>' : '';
|
600 |
+
|
601 |
+
if ( ! empty( $tab['subs'] ) ) {
|
602 |
+
|
603 |
+
echo '<li class="csf-tab-item">';
|
604 |
+
|
605 |
+
echo '<a href="#tab='. esc_attr( $tab_id ) .'" data-tab-id="'. esc_attr( $tab_id ) .'" class="csf-arrow">'. $tab_icon . $tab['title'] . $tab_error .'</a>';
|
606 |
+
|
607 |
+
echo '<ul>';
|
608 |
+
|
609 |
+
foreach ( $tab['subs'] as $sub ) {
|
610 |
+
|
611 |
+
$sub_id = $tab_id .'/'. sanitize_title( $sub['title'] );
|
612 |
+
$sub_error = $this->error_check( $sub );
|
613 |
+
$sub_icon = ( ! empty( $sub['icon'] ) ) ? '<i class="csf-tab-icon '. esc_attr( $sub['icon'] ) .'"></i>' : '';
|
614 |
+
|
615 |
+
echo '<li><a href="#tab='. esc_attr( $sub_id ) .'" data-tab-id="'. esc_attr( $sub_id ) .'">'. $sub_icon . $sub['title'] . $sub_error .'</a></li>';
|
616 |
+
|
617 |
+
}
|
618 |
+
|
619 |
+
echo '</ul>';
|
620 |
+
|
621 |
+
echo '</li>';
|
622 |
+
|
623 |
+
} else {
|
624 |
+
|
625 |
+
echo '<li class="csf-tab-item"><a href="#tab='. esc_attr( $tab_id ) .'" data-tab-id="'. esc_attr( $tab_id ) .'">'. $tab_icon . $tab['title'] . $tab_error .'</a></li>';
|
626 |
+
|
627 |
+
}
|
628 |
+
|
629 |
+
}
|
630 |
+
|
631 |
+
echo '</ul>';
|
632 |
+
|
633 |
+
echo '</div>';
|
634 |
+
|
635 |
+
}
|
636 |
+
|
637 |
+
echo '<div class="csf-content">';
|
638 |
+
|
639 |
+
echo '<div class="csf-sections">';
|
640 |
+
|
641 |
+
foreach ( $this->pre_sections as $section ) {
|
642 |
+
|
643 |
+
$section_onload = ( ! $has_nav ) ? ' csf-onload' : '';
|
644 |
+
$section_class = ( ! empty( $section['class'] ) ) ? ' '. $section['class'] : '';
|
645 |
+
$section_icon = ( ! empty( $section['icon'] ) ) ? '<i class="csf-section-icon '. esc_attr( $section['icon'] ) .'"></i>' : '';
|
646 |
+
$section_title = ( ! empty( $section['title'] ) ) ? $section['title'] : '';
|
647 |
+
$section_parent = ( ! empty( $section['ptitle'] ) ) ? sanitize_title( $section['ptitle'] ) .'/' : '';
|
648 |
+
$section_slug = ( ! empty( $section['title'] ) ) ? sanitize_title( $section_title ) : '';
|
649 |
+
|
650 |
+
echo '<div class="csf-section hidden'. esc_attr( $section_onload . $section_class ) .'" data-section-id="'. esc_attr( $section_parent . $section_slug ) .'">';
|
651 |
+
echo ( $has_nav ) ? '<div class="csf-section-title"><h3>'. $section_icon . $section_title .'</h3></div>' : '';
|
652 |
+
echo ( ! empty( $section['description'] ) ) ? '<div class="csf-field csf-section-description">'. $section['description'] .'</div>' : '';
|
653 |
+
|
654 |
+
if ( ! empty( $section['fields'] ) ) {
|
655 |
+
|
656 |
+
foreach ( $section['fields'] as $field ) {
|
657 |
+
|
658 |
+
$is_field_error = $this->error_check( $field );
|
659 |
+
|
660 |
+
if ( ! empty( $is_field_error ) ) {
|
661 |
+
$field['_error'] = $is_field_error;
|
662 |
+
}
|
663 |
+
|
664 |
+
if ( ! empty( $field['id'] ) ) {
|
665 |
+
$field['default'] = $this->get_default( $field );
|
666 |
+
}
|
667 |
+
|
668 |
+
$value = ( ! empty( $field['id'] ) && isset( $this->options[$field['id']] ) ) ? $this->options[$field['id']] : '';
|
669 |
+
|
670 |
+
CSF::field( $field, $value, $this->unique, 'options' );
|
671 |
+
|
672 |
+
}
|
673 |
+
|
674 |
+
} else {
|
675 |
+
|
676 |
+
echo '<div class="csf-no-option">'. esc_html__( 'No data available.', 'csf' ) .'</div>';
|
677 |
+
|
678 |
+
}
|
679 |
+
|
680 |
+
echo '</div>';
|
681 |
+
|
682 |
+
}
|
683 |
+
|
684 |
+
echo '</div>';
|
685 |
+
|
686 |
+
echo '<div class="clear"></div>';
|
687 |
+
|
688 |
+
echo '</div>';
|
689 |
+
|
690 |
+
echo ( $has_nav && $nav_type === 'normal' ) ? '<div class="csf-nav-background"></div>' : '';
|
691 |
+
|
692 |
+
echo '</div>';
|
693 |
+
|
694 |
+
if ( ! empty( $this->args['show_footer'] ) ) {
|
695 |
+
|
696 |
+
echo '<div class="csf-footer">';
|
697 |
+
|
698 |
+
echo '<div class="csf-buttons">';
|
699 |
+
echo '<input type="submit" name="csf_transient[save]" class="button button-primary csf-save'. esc_attr( $ajax_class ) .'" value="'. esc_html__( 'Save', 'csf' ) .'" data-save="'. esc_html__( 'Saving...', 'csf' ) .'">';
|
700 |
+
echo ( $this->args['show_reset_section'] ) ? '<input type="submit" name="csf_transient[reset_section]" class="button button-secondary csf-reset-section csf-confirm" value="'. esc_html__( 'Reset Section', 'csf' ) .'" data-confirm="'. esc_html__( 'Are you sure to reset this section options?', 'csf' ) .'">' : '';
|
701 |
+
echo ( $this->args['show_reset_all'] ) ? '<input type="submit" name="csf_transient[reset]" class="button csf-warning-primary csf-reset-all csf-confirm" value="'. ( ( $this->args['show_reset_section'] ) ? esc_html__( 'Reset All', 'csf' ) : esc_html__( 'Reset', 'csf' ) ) .'" data-confirm="'. esc_html__( 'Are you sure you want to reset all settings to default values?', 'csf' ) .'">' : '';
|
702 |
+
echo '</div>';
|
703 |
+
|
704 |
+
echo ( ! empty( $this->args['footer_text'] ) ) ? '<div class="csf-copyright">'. $this->args['footer_text'] .'</div>' : '';
|
705 |
+
|
706 |
+
echo '<div class="clear"></div>';
|
707 |
+
echo '</div>';
|
708 |
+
|
709 |
+
}
|
710 |
+
|
711 |
+
echo '</form>';
|
712 |
+
|
713 |
+
echo '</div>';
|
714 |
+
|
715 |
+
echo '<div class="clear"></div>';
|
716 |
+
|
717 |
+
echo ( ! empty( $this->args['footer_after'] ) ) ? $this->args['footer_after'] : '';
|
718 |
+
|
719 |
+
echo '</div>';
|
720 |
+
|
721 |
+
do_action( 'csf_options_after' );
|
722 |
+
|
723 |
+
}
|
724 |
+
}
|
725 |
+
}
|
vendor/codestar-framework/classes/comment-options.class.php
CHANGED
@@ -1,347 +1,347 @@
|
|
1 |
-
<?php if ( ! defined( 'ABSPATH' ) ) { die; } // Cannot access directly.
|
2 |
-
/**
|
3 |
-
*
|
4 |
-
* Comment Metabox Class
|
5 |
-
*
|
6 |
-
* @since 1.0.0
|
7 |
-
* @version 1.0.0
|
8 |
-
*
|
9 |
-
*/
|
10 |
-
if ( ! class_exists( 'CSF_Comment_Metabox' ) ) {
|
11 |
-
class CSF_Comment_Metabox extends CSF_Abstract{
|
12 |
-
|
13 |
-
// constans
|
14 |
-
public $unique = '';
|
15 |
-
public $abstract = 'comment_metabox';
|
16 |
-
public $pre_fields = array();
|
17 |
-
public $sections = array();
|
18 |
-
public $args = array(
|
19 |
-
'title' => '',
|
20 |
-
'data_type' => 'serialize',
|
21 |
-
'priority' => 'default',
|
22 |
-
'show_reset' => false,
|
23 |
-
'show_restore' => false,
|
24 |
-
'nav' => 'normal',
|
25 |
-
'theme' => 'dark',
|
26 |
-
'class' => '',
|
27 |
-
'defaults' => array(),
|
28 |
-
);
|
29 |
-
|
30 |
-
// run comment metabox construct
|
31 |
-
public function __construct( $key, $params = array() ) {
|
32 |
-
|
33 |
-
$this->unique = $key;
|
34 |
-
$this->args = apply_filters( "csf_{$this->unique}_args", wp_parse_args( $params['args'], $this->args ), $this );
|
35 |
-
$this->sections = apply_filters( "csf_{$this->unique}_sections", $params['sections'], $this );
|
36 |
-
$this->pre_fields = $this->pre_fields( $this->sections );
|
37 |
-
|
38 |
-
add_action( 'add_meta_boxes_comment', array( $this, 'add_comment_meta_box' ) );
|
39 |
-
add_action( 'edit_comment', array( $this, 'save_comment_meta_box' ) );
|
40 |
-
|
41 |
-
if ( ! empty( $this->args['class'] ) ) {
|
42 |
-
add_filter( 'postbox_classes_comment_'. $this->unique, array( $this, 'add_comment_metabox_classes' ) );
|
43 |
-
}
|
44 |
-
|
45 |
-
}
|
46 |
-
|
47 |
-
// instance
|
48 |
-
public static function instance( $key, $params = array() ) {
|
49 |
-
return new self( $key, $params );
|
50 |
-
}
|
51 |
-
|
52 |
-
public function pre_fields( $sections ) {
|
53 |
-
|
54 |
-
$result = array();
|
55 |
-
|
56 |
-
foreach ( $sections as $key => $section ) {
|
57 |
-
if ( ! empty( $section['fields'] ) ) {
|
58 |
-
foreach ( $section['fields'] as $field ) {
|
59 |
-
$result[] = $field;
|
60 |
-
}
|
61 |
-
}
|
62 |
-
}
|
63 |
-
|
64 |
-
return $result;
|
65 |
-
}
|
66 |
-
|
67 |
-
public function add_comment_metabox_classes( $classes ) {
|
68 |
-
|
69 |
-
if ( ! empty( $this->args['class'] ) ) {
|
70 |
-
$classes[] = $this->args['class'];
|
71 |
-
}
|
72 |
-
|
73 |
-
return $classes;
|
74 |
-
|
75 |
-
}
|
76 |
-
|
77 |
-
// add comment metabox
|
78 |
-
public function add_comment_meta_box( $post_type ) {
|
79 |
-
|
80 |
-
add_meta_box( $this->unique, $this->args['title'], array( $this, 'add_comment_meta_box_content' ), 'comment', 'normal', $this->args['priority'], $this->args );
|
81 |
-
|
82 |
-
}
|
83 |
-
|
84 |
-
// get default value
|
85 |
-
public function get_default( $field ) {
|
86 |
-
|
87 |
-
$default = ( isset( $field['default'] ) ) ? $field['default'] : '';
|
88 |
-
$default = ( isset( $this->args['defaults'][$field['id']] ) ) ? $this->args['defaults'][$field['id']] : $default;
|
89 |
-
|
90 |
-
return $default;
|
91 |
-
|
92 |
-
}
|
93 |
-
|
94 |
-
// get meta value
|
95 |
-
public function get_meta_value( $comment_id, $field ) {
|
96 |
-
|
97 |
-
$value = null;
|
98 |
-
|
99 |
-
if ( ! empty( $comment_id ) && ! empty( $field['id'] ) ) {
|
100 |
-
|
101 |
-
if ( $this->args['data_type'] !== 'serialize' ) {
|
102 |
-
$meta = get_comment_meta( $comment_id, $field['id'] );
|
103 |
-
$value = ( isset( $meta[0] ) ) ? $meta[0] : null;
|
104 |
-
} else {
|
105 |
-
$meta = get_comment_meta( $comment_id, $this->unique, true );
|
106 |
-
$value = ( isset( $meta[$field['id']] ) ) ? $meta[$field['id']] : null;
|
107 |
-
}
|
108 |
-
|
109 |
-
}
|
110 |
-
|
111 |
-
$default = ( isset( $field['id'] ) ) ? $this->get_default( $field ) : '';
|
112 |
-
$value = ( isset( $value ) ) ? $value : $default;
|
113 |
-
|
114 |
-
return $value;
|
115 |
-
|
116 |
-
}
|
117 |
-
|
118 |
-
// add comment metabox content
|
119 |
-
public function add_comment_meta_box_content( $comment, $callback ) {
|
120 |
-
|
121 |
-
$has_nav = ( count( $this->sections ) > 1 ) ? true : false;
|
122 |
-
$show_all = ( ! $has_nav ) ? ' csf-show-all' : '';
|
123 |
-
$errors = ( is_object ( $comment ) ) ? get_comment_meta( $comment->comment_ID, '_csf_errors_'. $this->unique, true ) : array();
|
124 |
-
$errors = ( ! empty( $errors ) ) ? $errors : array();
|
125 |
-
$theme = ( $this->args['theme'] ) ? ' csf-theme-'. $this->args['theme'] : '';
|
126 |
-
$nav_type = ( $this->args['nav'] === 'inline' ) ? 'inline' : 'normal';
|
127 |
-
|
128 |
-
if ( is_object( $comment ) && ! empty( $errors ) ) {
|
129 |
-
delete_comment_meta( $comment->comment_ID, '_csf_errors_'. $this->unique );
|
130 |
-
}
|
131 |
-
|
132 |
-
wp_nonce_field( 'csf_comment_metabox_nonce', 'csf_comment_metabox_nonce'. $this->unique );
|
133 |
-
|
134 |
-
echo '<div class="csf csf-comment-metabox'. esc_attr( $theme ) .'">';
|
135 |
-
|
136 |
-
echo '<div class="csf-wrapper'. esc_attr( $show_all ) .'">';
|
137 |
-
|
138 |
-
if ( $has_nav ) {
|
139 |
-
|
140 |
-
echo '<div class="csf-nav csf-nav-'. esc_attr( $nav_type ) .' csf-nav-metabox">';
|
141 |
-
|
142 |
-
echo '<ul>';
|
143 |
-
|
144 |
-
$tab_key = 1;
|
145 |
-
|
146 |
-
foreach ( $this->sections as $section ) {
|
147 |
-
|
148 |
-
$tab_icon = ( ! empty( $section['icon'] ) ) ? '<i class="csf-tab-icon '. esc_attr( $section['icon'] ) .'"></i>' : '';
|
149 |
-
$tab_error = ( ! empty( $errors['sections'][$tab_key] ) ) ? '<i class="csf-label-error csf-error">!</i>' : '';
|
150 |
-
|
151 |
-
echo '<li><a href="#">'. $tab_icon . $section['title'] . $tab_error .'</a></li>';
|
152 |
-
|
153 |
-
$tab_key++;
|
154 |
-
|
155 |
-
}
|
156 |
-
|
157 |
-
echo '</ul>';
|
158 |
-
|
159 |
-
echo '</div>';
|
160 |
-
|
161 |
-
}
|
162 |
-
|
163 |
-
echo '<div class="csf-content">';
|
164 |
-
|
165 |
-
echo '<div class="csf-sections">';
|
166 |
-
|
167 |
-
$section_key = 1;
|
168 |
-
|
169 |
-
foreach ( $this->sections as $section ) {
|
170 |
-
|
171 |
-
$section_onload = ( ! $has_nav ) ? ' csf-onload' : '';
|
172 |
-
$section_class = ( ! empty( $section['class'] ) ) ? ' '. $section['class'] : '';
|
173 |
-
$section_title = ( ! empty( $section['title'] ) ) ? $section['title'] : '';
|
174 |
-
$section_icon = ( ! empty( $section['icon'] ) ) ? '<i class="csf-section-icon '. esc_attr( $section['icon'] ) .'"></i>' : '';
|
175 |
-
|
176 |
-
echo '<div class="csf-section hidden'. esc_attr( $section_onload . $section_class ) .'">';
|
177 |
-
|
178 |
-
echo ( $section_title || $section_icon ) ? '<div class="csf-section-title"><h3>'. $section_icon . $section_title .'</h3></div>' : '';
|
179 |
-
echo ( ! empty( $section['description'] ) ) ? '<div class="csf-field csf-section-description">'. $section['description'] .'</div>' : '';
|
180 |
-
|
181 |
-
if ( ! empty( $section['fields'] ) ) {
|
182 |
-
|
183 |
-
foreach ( $section['fields'] as $field ) {
|
184 |
-
|
185 |
-
if ( ! empty( $field['id'] ) && ! empty( $errors['fields'][$field['id']] ) ) {
|
186 |
-
$field['_error'] = $errors['fields'][$field['id']];
|
187 |
-
}
|
188 |
-
|
189 |
-
if ( ! empty( $field['id'] ) ) {
|
190 |
-
$field['default'] = $this->get_default( $field );
|
191 |
-
}
|
192 |
-
|
193 |
-
CSF::field( $field, $this->get_meta_value( $comment->comment_ID, $field ), $this->unique, 'comment_metabox' );
|
194 |
-
|
195 |
-
}
|
196 |
-
|
197 |
-
} else {
|
198 |
-
|
199 |
-
echo '<div class="csf-no-option">'. esc_html__( 'No data available.', 'csf' ) .'</div>';
|
200 |
-
|
201 |
-
}
|
202 |
-
|
203 |
-
echo '</div>';
|
204 |
-
|
205 |
-
$section_key++;
|
206 |
-
|
207 |
-
}
|
208 |
-
|
209 |
-
echo '</div>';
|
210 |
-
|
211 |
-
if ( ! empty( $this->args['show_restore'] ) || ! empty( $this->args['show_reset'] ) ) {
|
212 |
-
|
213 |
-
echo '<div class="csf-sections-reset">';
|
214 |
-
echo '<label>';
|
215 |
-
echo '<input type="checkbox" name="'. esc_attr( $this->unique ) .'[_reset]" />';
|
216 |
-
echo '<span class="button csf-button-reset">'. esc_html__( 'Reset', 'csf' ) .'</span>';
|
217 |
-
echo '<span class="button csf-button-cancel">'. sprintf( '<small>( %s )</small> %s', esc_html__( 'update post', 'csf' ), esc_html__( 'Cancel', 'csf' ) ) .'</span>';
|
218 |
-
echo '</label>';
|
219 |
-
echo '</div>';
|
220 |
-
|
221 |
-
}
|
222 |
-
|
223 |
-
echo '</div>';
|
224 |
-
|
225 |
-
echo ( $has_nav && $nav_type === 'normal' ) ? '<div class="csf-nav-background"></div>' : '';
|
226 |
-
|
227 |
-
echo '<div class="clear"></div>';
|
228 |
-
|
229 |
-
echo '</div>';
|
230 |
-
|
231 |
-
echo '</div>';
|
232 |
-
|
233 |
-
}
|
234 |
-
|
235 |
-
// save comment metabox
|
236 |
-
public function save_comment_meta_box( $comment_id ) {
|
237 |
-
|
238 |
-
$count = 1;
|
239 |
-
$data = array();
|
240 |
-
$errors = array();
|
241 |
-
$noncekey = 'csf_comment_metabox_nonce'. $this->unique;
|
242 |
-
$nonce = ( ! empty( $_POST[ $noncekey ] ) ) ? sanitize_text_field( wp_unslash( $_POST[ $noncekey ] ) ) : '';
|
243 |
-
|
244 |
-
if ( ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) || ! wp_verify_nonce( $nonce, 'csf_comment_metabox_nonce' ) ) {
|
245 |
-
return $comment_id;
|
246 |
-
}
|
247 |
-
|
248 |
-
// XSS ok.
|
249 |
-
// No worries, This "POST" requests is sanitizing in the below foreach.
|
250 |
-
$request = ( ! empty( $_POST[ $this->unique ] ) ) ? $_POST[ $this->unique ] : array();
|
251 |
-
|
252 |
-
if ( ! empty( $request ) ) {
|
253 |
-
|
254 |
-
foreach ( $this->sections as $section ) {
|
255 |
-
|
256 |
-
if ( ! empty( $section['fields'] ) ) {
|
257 |
-
|
258 |
-
foreach ( $section['fields'] as $field ) {
|
259 |
-
|
260 |
-
if ( ! empty( $field['id'] ) ) {
|
261 |
-
|
262 |
-
$field_id = $field['id'];
|
263 |
-
$field_value = isset( $request[$field_id] ) ? $request[$field_id] : '';
|
264 |
-
|
265 |
-
// Sanitize "post" request of field.
|
266 |
-
if ( ! isset( $field['sanitize'] ) ) {
|
267 |
-
|
268 |
-
if( is_array( $field_value ) ) {
|
269 |
-
$data[$field_id] = wp_kses_post_deep( $field_value );
|
270 |
-
} else {
|
271 |
-
$data[$field_id] = wp_kses_post( $field_value );
|
272 |
-
}
|
273 |
-
|
274 |
-
} else if( isset( $field['sanitize'] ) && is_callable( $field['sanitize'] ) ) {
|
275 |
-
|
276 |
-
$data[$field_id] = call_user_func( $field['sanitize'], $field_value );
|
277 |
-
|
278 |
-
} else {
|
279 |
-
|
280 |
-
$data[$field_id] = $field_value;
|
281 |
-
|
282 |
-
}
|
283 |
-
|
284 |
-
// Validate "post" request of field.
|
285 |
-
if ( isset( $field['validate'] ) && is_callable( $field['validate'] ) ) {
|
286 |
-
|
287 |
-
$has_validated = call_user_func( $field['validate'], $field_value );
|
288 |
-
|
289 |
-
if ( ! empty( $has_validated ) ) {
|
290 |
-
|
291 |
-
$errors['sections'][$count] = true;
|
292 |
-
$errors['fields'][$field_id] = $has_validated;
|
293 |
-
$data[$field_id] = $this->get_meta_value( $comment_id, $field );
|
294 |
-
|
295 |
-
}
|
296 |
-
|
297 |
-
}
|
298 |
-
|
299 |
-
}
|
300 |
-
|
301 |
-
}
|
302 |
-
|
303 |
-
}
|
304 |
-
|
305 |
-
$count++;
|
306 |
-
|
307 |
-
}
|
308 |
-
|
309 |
-
}
|
310 |
-
|
311 |
-
$data = apply_filters( "csf_{$this->unique}_save", $data, $comment_id, $this );
|
312 |
-
|
313 |
-
do_action( "csf_{$this->unique}_save_before", $data, $comment_id, $this );
|
314 |
-
|
315 |
-
if ( empty( $data ) || ! empty( $request['_reset'] ) ) {
|
316 |
-
|
317 |
-
if ( $this->args['data_type'] !== 'serialize' ) {
|
318 |
-
foreach ( $data as $key => $value ) {
|
319 |
-
delete_comment_meta( $comment_id, $key );
|
320 |
-
}
|
321 |
-
} else {
|
322 |
-
delete_comment_meta( $comment_id, $this->unique );
|
323 |
-
}
|
324 |
-
|
325 |
-
} else {
|
326 |
-
|
327 |
-
if ( $this->args['data_type'] !== 'serialize' ) {
|
328 |
-
foreach ( $data as $key => $value ) {
|
329 |
-
update_comment_meta( $comment_id, $key, $value );
|
330 |
-
}
|
331 |
-
} else {
|
332 |
-
update_comment_meta( $comment_id, $this->unique, $data );
|
333 |
-
}
|
334 |
-
|
335 |
-
if ( ! empty( $errors ) ) {
|
336 |
-
update_comment_meta( $comment_id, '_csf_errors_'. $this->unique, $errors );
|
337 |
-
}
|
338 |
-
|
339 |
-
}
|
340 |
-
|
341 |
-
do_action( "csf_{$this->unique}_saved", $data, $comment_id, $this );
|
342 |
-
|
343 |
-
do_action( "csf_{$this->unique}_save_after", $data, $comment_id, $this );
|
344 |
-
|
345 |
-
}
|
346 |
-
}
|
347 |
-
}
|
1 |
+
<?php if ( ! defined( 'ABSPATH' ) ) { die; } // Cannot access directly.
|
2 |
+
/**
|
3 |
+
*
|
4 |
+
* Comment Metabox Class
|
5 |
+
*
|
6 |
+
* @since 1.0.0
|
7 |
+
* @version 1.0.0
|
8 |
+
*
|
9 |
+
*/
|
10 |
+
if ( ! class_exists( 'CSF_Comment_Metabox' ) ) {
|
11 |
+
class CSF_Comment_Metabox extends CSF_Abstract{
|
12 |
+
|
13 |
+
// constans
|
14 |
+
public $unique = '';
|
15 |
+
public $abstract = 'comment_metabox';
|
16 |
+
public $pre_fields = array();
|
17 |
+
public $sections = array();
|
18 |
+
public $args = array(
|
19 |
+
'title' => '',
|
20 |
+
'data_type' => 'serialize',
|
21 |
+
'priority' => 'default',
|
22 |
+
'show_reset' => false,
|
23 |
+
'show_restore' => false,
|
24 |
+
'nav' => 'normal',
|
25 |
+
'theme' => 'dark',
|
26 |
+
'class' => '',
|
27 |
+
'defaults' => array(),
|
28 |
+
);
|
29 |
+
|
30 |
+
// run comment metabox construct
|
31 |
+
public function __construct( $key, $params = array() ) {
|
32 |
+
|
33 |
+
$this->unique = $key;
|
34 |
+
$this->args = apply_filters( "csf_{$this->unique}_args", wp_parse_args( $params['args'], $this->args ), $this );
|
35 |
+
$this->sections = apply_filters( "csf_{$this->unique}_sections", $params['sections'], $this );
|
36 |
+
$this->pre_fields = $this->pre_fields( $this->sections );
|
37 |
+
|
38 |
+
add_action( 'add_meta_boxes_comment', array( $this, 'add_comment_meta_box' ) );
|
39 |
+
add_action( 'edit_comment', array( $this, 'save_comment_meta_box' ) );
|
40 |
+
|
41 |
+
if ( ! empty( $this->args['class'] ) ) {
|
42 |
+
add_filter( 'postbox_classes_comment_'. $this->unique, array( $this, 'add_comment_metabox_classes' ) );
|
43 |
+
}
|
44 |
+
|
45 |
+
}
|
46 |
+
|
47 |
+
// instance
|
48 |
+
public static function instance( $key, $params = array() ) {
|
49 |
+
return new self( $key, $params );
|
50 |
+
}
|
51 |
+
|
52 |
+
public function pre_fields( $sections ) {
|
53 |
+
|
54 |
+
$result = array();
|
55 |
+
|
56 |
+
foreach ( $sections as $key => $section ) {
|
57 |
+
if ( ! empty( $section['fields'] ) ) {
|
58 |
+
foreach ( $section['fields'] as $field ) {
|
59 |
+
$result[] = $field;
|
60 |
+
}
|
61 |
+
}
|
62 |
+
}
|
63 |
+
|
64 |
+
return $result;
|
65 |
+
}
|
66 |
+
|
67 |
+
public function add_comment_metabox_classes( $classes ) {
|
68 |
+
|
69 |
+
if ( ! empty( $this->args['class'] ) ) {
|
70 |
+
$classes[] = $this->args['class'];
|
71 |
+
}
|
72 |
+
|
73 |
+
return $classes;
|
74 |
+
|
75 |
+
}
|
76 |
+
|
77 |
+
// add comment metabox
|
78 |
+
public function add_comment_meta_box( $post_type ) {
|
79 |
+
|
80 |
+
add_meta_box( $this->unique, $this->args['title'], array( $this, 'add_comment_meta_box_content' ), 'comment', 'normal', $this->args['priority'], $this->args );
|
81 |
+
|
82 |
+
}
|
83 |
+
|
84 |
+
// get default value
|
85 |
+
public function get_default( $field ) {
|
86 |
+
|
87 |
+
$default = ( isset( $field['default'] ) ) ? $field['default'] : '';
|
88 |
+
$default = ( isset( $this->args['defaults'][$field['id']] ) ) ? $this->args['defaults'][$field['id']] : $default;
|
89 |
+
|
90 |
+
return $default;
|
91 |
+
|
92 |
+
}
|
93 |
+
|
94 |
+
// get meta value
|
95 |
+
public function get_meta_value( $comment_id, $field ) {
|
96 |
+
|
97 |
+
$value = null;
|
98 |
+
|
99 |
+
if ( ! empty( $comment_id ) && ! empty( $field['id'] ) ) {
|
100 |
+
|
101 |
+
if ( $this->args['data_type'] !== 'serialize' ) {
|
102 |
+
$meta = get_comment_meta( $comment_id, $field['id'] );
|
103 |
+
$value = ( isset( $meta[0] ) ) ? $meta[0] : null;
|
104 |
+
} else {
|
105 |
+
$meta = get_comment_meta( $comment_id, $this->unique, true );
|
106 |
+
$value = ( isset( $meta[$field['id']] ) ) ? $meta[$field['id']] : null;
|
107 |
+
}
|
108 |
+
|
109 |
+
}
|
110 |
+
|
111 |
+
$default = ( isset( $field['id'] ) ) ? $this->get_default( $field ) : '';
|
112 |
+
$value = ( isset( $value ) ) ? $value : $default;
|
113 |
+
|
114 |
+
return $value;
|
115 |
+
|
116 |
+
}
|
117 |
+
|
118 |
+
// add comment metabox content
|
119 |
+
public function add_comment_meta_box_content( $comment, $callback ) {
|
120 |
+
|
121 |
+
$has_nav = ( count( $this->sections ) > 1 ) ? true : false;
|
122 |
+
$show_all = ( ! $has_nav ) ? ' csf-show-all' : '';
|
123 |
+
$errors = ( is_object ( $comment ) ) ? get_comment_meta( $comment->comment_ID, '_csf_errors_'. $this->unique, true ) : array();
|
124 |
+
$errors = ( ! empty( $errors ) ) ? $errors : array();
|
125 |
+
$theme = ( $this->args['theme'] ) ? ' csf-theme-'. $this->args['theme'] : '';
|
126 |
+
$nav_type = ( $this->args['nav'] === 'inline' ) ? 'inline' : 'normal';
|
127 |
+
|
128 |
+
if ( is_object( $comment ) && ! empty( $errors ) ) {
|
129 |
+
delete_comment_meta( $comment->comment_ID, '_csf_errors_'. $this->unique );
|
130 |
+
}
|
131 |
+
|
132 |
+
wp_nonce_field( 'csf_comment_metabox_nonce', 'csf_comment_metabox_nonce'. $this->unique );
|
133 |
+
|
134 |
+
echo '<div class="csf csf-comment-metabox'. esc_attr( $theme ) .'">';
|
135 |
+
|
136 |
+
echo '<div class="csf-wrapper'. esc_attr( $show_all ) .'">';
|
137 |
+
|
138 |
+
if ( $has_nav ) {
|
139 |
+
|
140 |
+
echo '<div class="csf-nav csf-nav-'. esc_attr( $nav_type ) .' csf-nav-metabox">';
|
141 |
+
|
142 |
+
echo '<ul>';
|
143 |
+
|
144 |
+
$tab_key = 1;
|
145 |
+
|
146 |
+
foreach ( $this->sections as $section ) {
|
147 |
+
|
148 |
+
$tab_icon = ( ! empty( $section['icon'] ) ) ? '<i class="csf-tab-icon '. esc_attr( $section['icon'] ) .'"></i>' : '';
|
149 |
+
$tab_error = ( ! empty( $errors['sections'][$tab_key] ) ) ? '<i class="csf-label-error csf-error">!</i>' : '';
|
150 |
+
|
151 |
+
echo '<li><a href="#">'. $tab_icon . $section['title'] . $tab_error .'</a></li>';
|
152 |
+
|
153 |
+
$tab_key++;
|
154 |
+
|
155 |
+
}
|
156 |
+
|
157 |
+
echo '</ul>';
|
158 |
+
|
159 |
+
echo '</div>';
|
160 |
+
|
161 |
+
}
|
162 |
+
|
163 |
+
echo '<div class="csf-content">';
|
164 |
+
|
165 |
+
echo '<div class="csf-sections">';
|
166 |
+
|
167 |
+
$section_key = 1;
|
168 |
+
|
169 |
+
foreach ( $this->sections as $section ) {
|
170 |
+
|
171 |
+
$section_onload = ( ! $has_nav ) ? ' csf-onload' : '';
|
172 |
+
$section_class = ( ! empty( $section['class'] ) ) ? ' '. $section['class'] : '';
|
173 |
+
$section_title = ( ! empty( $section['title'] ) ) ? $section['title'] : '';
|
174 |
+
$section_icon = ( ! empty( $section['icon'] ) ) ? '<i class="csf-section-icon '. esc_attr( $section['icon'] ) .'"></i>' : '';
|
175 |
+
|
176 |
+
echo '<div class="csf-section hidden'. esc_attr( $section_onload . $section_class ) .'">';
|
177 |
+
|
178 |
+
echo ( $section_title || $section_icon ) ? '<div class="csf-section-title"><h3>'. $section_icon . $section_title .'</h3></div>' : '';
|
179 |
+
echo ( ! empty( $section['description'] ) ) ? '<div class="csf-field csf-section-description">'. $section['description'] .'</div>' : '';
|
180 |
+
|
181 |
+
if ( ! empty( $section['fields'] ) ) {
|
182 |
+
|
183 |
+
foreach ( $section['fields'] as $field ) {
|
184 |
+
|
185 |
+
if ( ! empty( $field['id'] ) && ! empty( $errors['fields'][$field['id']] ) ) {
|
186 |
+
$field['_error'] = $errors['fields'][$field['id']];
|
187 |
+
}
|
188 |
+
|
189 |
+
if ( ! empty( $field['id'] ) ) {
|
190 |
+
$field['default'] = $this->get_default( $field );
|
191 |
+
}
|
192 |
+
|
193 |
+
CSF::field( $field, $this->get_meta_value( $comment->comment_ID, $field ), $this->unique, 'comment_metabox' );
|
194 |
+
|
195 |
+
}
|
196 |
+
|
197 |
+
} else {
|
198 |
+
|
199 |
+
echo '<div class="csf-no-option">'. esc_html__( 'No data available.', 'csf' ) .'</div>';
|
200 |
+
|
201 |
+
}
|
202 |
+
|
203 |
+
echo '</div>';
|
204 |
+
|
205 |
+
$section_key++;
|
206 |
+
|
207 |
+
}
|
208 |
+
|
209 |
+
echo '</div>';
|
210 |
+
|
211 |
+
if ( ! empty( $this->args['show_restore'] ) || ! empty( $this->args['show_reset'] ) ) {
|
212 |
+
|
213 |
+
echo '<div class="csf-sections-reset">';
|
214 |
+
echo '<label>';
|
215 |
+
echo '<input type="checkbox" name="'. esc_attr( $this->unique ) .'[_reset]" />';
|
216 |
+
echo '<span class="button csf-button-reset">'. esc_html__( 'Reset', 'csf' ) .'</span>';
|
217 |
+
echo '<span class="button csf-button-cancel">'. sprintf( '<small>( %s )</small> %s', esc_html__( 'update post', 'csf' ), esc_html__( 'Cancel', 'csf' ) ) .'</span>';
|
218 |
+
echo '</label>';
|
219 |
+
echo '</div>';
|
220 |
+
|
221 |
+
}
|
222 |
+
|
223 |
+
echo '</div>';
|
224 |
+
|
225 |
+
echo ( $has_nav && $nav_type === 'normal' ) ? '<div class="csf-nav-background"></div>' : '';
|
226 |
+
|
227 |
+
echo '<div class="clear"></div>';
|
228 |
+
|
229 |
+
echo '</div>';
|
230 |
+
|
231 |
+
echo '</div>';
|
232 |
+
|
233 |
+
}
|
234 |
+
|
235 |
+
// save comment metabox
|
236 |
+
public function save_comment_meta_box( $comment_id ) {
|
237 |
+
|
238 |
+
$count = 1;
|
239 |
+
$data = array();
|
240 |
+
$errors = array();
|
241 |
+
$noncekey = 'csf_comment_metabox_nonce'. $this->unique;
|
242 |
+
$nonce = ( ! empty( $_POST[ $noncekey ] ) ) ? sanitize_text_field( wp_unslash( $_POST[ $noncekey ] ) ) : '';
|
243 |
+
|
244 |
+
if ( ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) || ! wp_verify_nonce( $nonce, 'csf_comment_metabox_nonce' ) ) {
|
245 |
+
return $comment_id;
|
246 |
+
}
|
247 |
+
|
248 |
+
// XSS ok.
|
249 |
+
// No worries, This "POST" requests is sanitizing in the below foreach.
|
250 |
+
$request = ( ! empty( $_POST[ $this->unique ] ) ) ? $_POST[ $this->unique ] : array();
|
251 |
+
|
252 |
+
if ( ! empty( $request ) ) {
|
253 |
+
|
254 |
+
foreach ( $this->sections as $section ) {
|
255 |
+
|
256 |
+
if ( ! empty( $section['fields'] ) ) {
|
257 |
+
|
258 |
+
foreach ( $section['fields'] as $field ) {
|
259 |
+
|
260 |
+
if ( ! empty( $field['id'] ) ) {
|
261 |
+
|
262 |
+
$field_id = $field['id'];
|
263 |
+
$field_value = isset( $request[$field_id] ) ? $request[$field_id] : '';
|
264 |
+
|
265 |
+
// Sanitize "post" request of field.
|
266 |
+
if ( ! isset( $field['sanitize'] ) ) {
|
267 |
+
|
268 |
+
if( is_array( $field_value ) ) {
|
269 |
+
$data[$field_id] = wp_kses_post_deep( $field_value );
|
270 |
+
} else {
|
271 |
+
$data[$field_id] = wp_kses_post( $field_value );
|
272 |
+
}
|
273 |
+
|
274 |
+
} else if( isset( $field['sanitize'] ) && is_callable( $field['sanitize'] ) ) {
|
275 |
+
|
276 |
+
$data[$field_id] = call_user_func( $field['sanitize'], $field_value );
|
277 |
+
|
278 |
+
} else {
|
279 |
+
|
280 |
+
$data[$field_id] = $field_value;
|
281 |
+
|
282 |
+
}
|
283 |
+
|
284 |
+
// Validate "post" request of field.
|
285 |
+
if ( isset( $field['validate'] ) && is_callable( $field['validate'] ) ) {
|
286 |
+
|
287 |
+
$has_validated = call_user_func( $field['validate'], $field_value );
|
288 |
+
|
289 |
+
if ( ! empty( $has_validated ) ) {
|
290 |
+
|
291 |
+
$errors['sections'][$count] = true;
|
292 |
+
$errors['fields'][$field_id] = $has_validated;
|
293 |
+
$data[$field_id] = $this->get_meta_value( $comment_id, $field );
|
294 |
+
|
295 |
+
}
|
296 |
+
|
297 |
+
}
|
298 |
+
|
299 |
+
}
|
300 |
+
|
301 |
+
}
|
302 |
+
|
303 |
+
}
|
304 |
+
|
305 |
+
$count++;
|
306 |
+
|
307 |
+
}
|
308 |
+
|
309 |
+
}
|
310 |
+
|
311 |
+
$data = apply_filters( "csf_{$this->unique}_save", $data, $comment_id, $this );
|
312 |
+
|
313 |
+
do_action( "csf_{$this->unique}_save_before", $data, $comment_id, $this );
|
314 |
+
|
315 |
+
if ( empty( $data ) || ! empty( $request['_reset'] ) ) {
|
316 |
+
|
317 |
+
if ( $this->args['data_type'] !== 'serialize' ) {
|
318 |
+
foreach ( $data as $key => $value ) {
|
319 |
+
delete_comment_meta( $comment_id, $key );
|
320 |
+
}
|
321 |
+
} else {
|
322 |
+
delete_comment_meta( $comment_id, $this->unique );
|
323 |
+
}
|
324 |
+
|
325 |
+
} else {
|
326 |
+
|
327 |
+
if ( $this->args['data_type'] !== 'serialize' ) {
|
328 |
+
foreach ( $data as $key => $value ) {
|
329 |
+
update_comment_meta( $comment_id, $key, $value );
|
330 |
+
}
|
331 |
+
} else {
|
332 |
+
update_comment_meta( $comment_id, $this->unique, $data );
|
333 |
+
}
|
334 |
+
|
335 |
+
if ( ! empty( $errors ) ) {
|
336 |
+
update_comment_meta( $comment_id, '_csf_errors_'. $this->unique, $errors );
|
337 |
+
}
|
338 |
+
|
339 |
+
}
|
340 |
+
|
341 |
+
do_action( "csf_{$this->unique}_saved", $data, $comment_id, $this );
|
342 |
+
|
343 |
+
do_action( "csf_{$this->unique}_save_after", $data, $comment_id, $this );
|
344 |
+
|
345 |
+
}
|
346 |
+
}
|
347 |
+
}
|
vendor/codestar-framework/classes/customize-options.class.php
CHANGED
@@ -1,282 +1,282 @@
|
|
1 |
-
<?php if ( ! defined( 'ABSPATH' ) ) { die; } // Cannot access directly.
|
2 |
-
/**
|
3 |
-
*
|
4 |
-
* Customize Options Class
|
5 |
-
*
|
6 |
-
* @since 1.0.0
|
7 |
-
* @version 1.0.0
|
8 |
-
*
|
9 |
-
*/
|
10 |
-
if ( ! class_exists( 'CSF_Customize_Options' ) ) {
|
11 |
-
class CSF_Customize_Options extends CSF_Abstract {
|
12 |
-
|
13 |
-
// constans
|
14 |
-
public $unique = '';
|
15 |
-
public $abstract = 'customize';
|
16 |
-
public $options = array();
|
17 |
-
public $sections = array();
|
18 |
-
public $pre_fields = array();
|
19 |
-
public $pre_tabs = array();
|
20 |
-
public $priority = 10;
|
21 |
-
public $args = array(
|
22 |
-
'database' => 'option',
|
23 |
-
'transport' => 'refresh',
|
24 |
-
'capability' => 'manage_options',
|
25 |
-
'save_defaults' => true,
|
26 |
-
'enqueue_webfont' => true,
|
27 |
-
'async_webfont' => false,
|
28 |
-
'output_css' => true,
|
29 |
-
'defaults' => array()
|
30 |
-
);
|
31 |
-
|
32 |
-
// run customize construct
|
33 |
-
public function __construct( $key, $params ) {
|
34 |
-
|
35 |
-
$this->unique = $key;
|
36 |
-
$this->args = apply_filters( "csf_{$this->unique}_args", wp_parse_args( $params['args'], $this->args ), $this );
|
37 |
-
$this->sections = apply_filters( "csf_{$this->unique}_sections", $params['sections'], $this );
|
38 |
-
$this->pre_fields = $this->pre_fields( $this->sections );
|
39 |
-
|
40 |
-
$this->get_options();
|
41 |
-
$this->save_defaults();
|
42 |
-
|
43 |
-
add_action( 'customize_register', array( $this, 'add_customize_options' ) );
|
44 |
-
add_action( 'customize_save_after', array( $this, 'add_customize_save_after' ) );
|
45 |
-
|
46 |
-
// Get options for enqueue actions
|
47 |
-
if ( is_customize_preview() ) {
|
48 |
-
add_action( 'wp_enqueue_scripts', array( $this, 'get_options' ) );
|
49 |
-
}
|
50 |
-
|
51 |
-
// wp enqeueu for typography and output css
|
52 |
-
parent::__construct();
|
53 |
-
|
54 |
-
}
|
55 |
-
|
56 |
-
// instance
|
57 |
-
public static function instance( $key, $params = array() ) {
|
58 |
-
return new self( $key, $params );
|
59 |
-
}
|
60 |
-
|
61 |
-
public function add_customize_save_after( $wp_customize ) {
|
62 |
-
do_action( "csf_{$this->unique}_save_before", $this->get_options(), $this, $wp_customize );
|
63 |
-
do_action( "csf_{$this->unique}_saved", $this->get_options(), $this, $wp_customize );
|
64 |
-
do_action( "csf_{$this->unique}_save_after", $this->get_options(), $this, $wp_customize );
|
65 |
-
}
|
66 |
-
|
67 |
-
// get default value
|
68 |
-
public function get_default( $field ) {
|
69 |
-
|
70 |
-
$default = ( isset( $field['default'] ) ) ? $field['default'] : '';
|
71 |
-
$default = ( isset( $this->args['defaults'][$field['id']] ) ) ? $this->args['defaults'][$field['id']] : $default;
|
72 |
-
|
73 |
-
return $default;
|
74 |
-
|
75 |
-
}
|
76 |
-
|
77 |
-
// get option
|
78 |
-
public function get_options() {
|
79 |
-
|
80 |
-
if ( $this->args['database'] === 'theme_mod' ) {
|
81 |
-
$this->options = get_theme_mod( $this->unique, array() );
|
82 |
-
} else {
|
83 |
-
$this->options = get_option( $this->unique, array() );
|
84 |
-
}
|
85 |
-
|
86 |
-
if ( empty( $this->options ) ) {
|
87 |
-
$this->options = array();
|
88 |
-
}
|
89 |
-
|
90 |
-
return $this->options;
|
91 |
-
|
92 |
-
}
|
93 |
-
|
94 |
-
// save defaults and set new fields value to main options
|
95 |
-
public function save_defaults() {
|
96 |
-
|
97 |
-
$tmp_options = $this->options;
|
98 |
-
|
99 |
-
if ( ! empty( $this->pre_fields ) ) {
|
100 |
-
foreach ( $this->pre_fields as $field ) {
|
101 |
-
if ( ! empty( $field['id'] ) ) {
|
102 |
-
$this->options[$field['id']] = ( isset( $this->options[$field['id']] ) ) ? $this->options[$field['id']] : $this->get_default( $field );
|
103 |
-
}
|
104 |
-
}
|
105 |
-
}
|
106 |
-
|
107 |
-
if ( $this->args['save_defaults'] && empty( $this->args['show_in_customizer'] ) && empty( $tmp_options ) ) {
|
108 |
-
|
109 |
-
if ( $this->args['database'] === 'theme_mod' ) {
|
110 |
-
set_theme_mod( $this->unique, $this->options );
|
111 |
-
} else {
|
112 |
-
update_option( $this->unique, $this->options );
|
113 |
-
}
|
114 |
-
|
115 |
-
}
|
116 |
-
|
117 |
-
}
|
118 |
-
|
119 |
-
public function pre_fields( $sections ) {
|
120 |
-
|
121 |
-
$result = array();
|
122 |
-
|
123 |
-
foreach ( $sections as $key => $section ) {
|
124 |
-
if ( ! empty( $section['fields'] ) ) {
|
125 |
-
foreach ( $section['fields'] as $field ) {
|
126 |
-
$result[] = $field;
|
127 |
-
}
|
128 |
-
}
|
129 |
-
}
|
130 |
-
|
131 |
-
return $result;
|
132 |
-
}
|
133 |
-
|
134 |
-
|
135 |
-
public function pre_tabs( $sections ) {
|
136 |
-
|
137 |
-
$result = array();
|
138 |
-
$parents = array();
|
139 |
-
|
140 |
-
foreach ( $sections as $key => $section ) {
|
141 |
-
if ( ! empty( $section['parent'] ) ) {
|
142 |
-
$parents[$section['parent']][] = $section;
|
143 |
-
unset( $sections[$key] );
|
144 |
-
}
|
145 |
-
}
|
146 |
-
|
147 |
-
foreach ( $sections as $key => $section ) {
|
148 |
-
if ( ! empty( $section['id'] ) && ! empty( $parents[$section['id']] ) ) {
|
149 |
-
$section['subs'] = $parents[$section['id']];
|
150 |
-
}
|
151 |
-
$result[] = $section;
|
152 |
-
}
|
153 |
-
|
154 |
-
return $result;
|
155 |
-
|
156 |
-
}
|
157 |
-
|
158 |
-
public function add_customize_options( $wp_customize ) {
|
159 |
-
|
160 |
-
if ( ! class_exists( 'WP_Customize_Panel_CSF' ) ) {
|
161 |
-
CSF::include_plugin_file( 'functions/customize.php' );
|
162 |
-
}
|
163 |
-
|
164 |
-
if ( ! empty( $this->sections ) ) {
|
165 |
-
|
166 |
-
$sections = $this->pre_tabs( $this->sections );
|
167 |
-
|
168 |
-
foreach ( $sections as $section ) {
|
169 |
-
|
170 |
-
if ( ! empty( $section['subs'] ) ) {
|
171 |
-
|
172 |
-
$panel_id = ( isset( $section['id'] ) ) ? $section['id'] : $this->unique .'-panel-'. $this->priority;
|
173 |
-
|
174 |
-
$wp_customize->add_panel( new WP_Customize_Panel_CSF( $wp_customize, $panel_id, array(
|
175 |
-
'title' => ( isset( $section['title'] ) ) ? $section['title'] : null,
|
176 |
-
'description' => ( isset( $section['description'] ) ) ? $section['description'] : null,
|
177 |
-
'priority' => ( isset( $section['priority'] ) ) ? $section['priority'] : null,
|
178 |
-
) ) );
|
179 |
-
|
180 |
-
$this->priority++;
|
181 |
-
|
182 |
-
foreach ( $section['subs'] as $sub_section ) {
|
183 |
-
|
184 |
-
$section_id = ( isset( $sub_section['id'] ) ) ? $sub_section['id'] : $this->unique .'-section-'. $this->priority;
|
185 |
-
|
186 |
-
$this->add_section( $wp_customize, $section_id, $sub_section, $panel_id );
|
187 |
-
|
188 |
-
$this->priority++;
|
189 |
-
|
190 |
-
}
|
191 |
-
|
192 |
-
} else {
|
193 |
-
|
194 |
-
$section_id = ( isset( $section['id'] ) ) ? $section['id'] : $this->unique .'-section-'. $this->priority;
|
195 |
-
|
196 |
-
$this->add_section( $wp_customize, $section_id, $section, false );
|
197 |
-
|
198 |
-
$this->priority++;
|
199 |
-
|
200 |
-
}
|
201 |
-
|
202 |
-
}
|
203 |
-
|
204 |
-
}
|
205 |
-
|
206 |
-
}
|
207 |
-
|
208 |
-
// add customize section
|
209 |
-
public function add_section( $wp_customize, $section_id, $section_args, $panel_id ) {
|
210 |
-
|
211 |
-
if ( ! empty( $section_args['assign'] ) ) {
|
212 |
-
|
213 |
-
$section_id = $section_args['assign'];
|
214 |
-
|
215 |
-
} else {
|
216 |
-
|
217 |
-
$wp_customize->add_section( new WP_Customize_Section_CSF( $wp_customize, $section_id, array(
|
218 |
-
'title' => ( isset( $section_args['title'] ) ) ? $section_args['title'] : '',
|
219 |
-
'description' => ( isset( $section_args['description'] ) ) ? $section_args['description'] : '',
|
220 |
-
'priority' => ( isset( $section_args['priority'] ) ) ? $section_args['priority'] : '',
|
221 |
-
'panel' => ( $panel_id ) ? $panel_id : '',
|
222 |
-
) ) );
|
223 |
-
|
224 |
-
}
|
225 |
-
|
226 |
-
if ( ! empty( $section_args['fields'] ) ) {
|
227 |
-
|
228 |
-
$field_key = 1;
|
229 |
-
|
230 |
-
foreach ( $section_args['fields'] as $field ) {
|
231 |
-
|
232 |
-
if ( isset( $field['id'] ) ) {
|
233 |
-
$field['default'] = $this->get_default( $field );
|
234 |
-
}
|
235 |
-
|
236 |
-
$field_id = ( isset( $field['id'] ) ) ? $field['id'] : '_nonce-'. $section_id .'-'. $field_key;
|
237 |
-
$setting_args = ( isset( $field['setting_args'] ) ) ? $field['setting_args'] : array();
|
238 |
-
$control_args = ( isset( $field['control_args'] ) ) ? $field['control_args'] : array();
|
239 |
-
$field_transport = ( isset( $field['transport'] ) ) ? $field['transport'] : $this->args['transport'];
|
240 |
-
$field_sanitize = ( isset( $field['sanitize'] ) ) ? $field['sanitize'] : '';
|
241 |
-
$field_validate = ( isset( $field['validate'] ) ) ? $field['validate'] : '';
|
242 |
-
$field_default = ( isset( $field['default'] ) ) ? $field['default'] : '';
|
243 |
-
$field_customize = ( isset( $field['customize'] ) && ! isset( $field['transport'] ) ) ? true : false;
|
244 |
-
$has_selective = ( isset( $field['selective_refresh'] ) && isset( $wp_customize->selective_refresh ) ) ? true : false;
|
245 |
-
|
246 |
-
$setting_id = $this->unique .'['. $field_id .']';
|
247 |
-
$transport = ( $has_selective || $field_customize ) ? 'postMessage' : $field_transport;
|
248 |
-
|
249 |
-
$wp_customize->add_setting( $setting_id,
|
250 |
-
wp_parse_args( $setting_args, array(
|
251 |
-
'default' => $field_default,
|
252 |
-
'type' => $this->args['database'],
|
253 |
-
'capability' => $this->args['capability'],
|
254 |
-
'transport' => $transport,
|
255 |
-
'sanitize_callback' => $field_sanitize,
|
256 |
-
'validate_callback' => $field_validate
|
257 |
-
) )
|
258 |
-
);
|
259 |
-
|
260 |
-
$wp_customize->add_control( new WP_Customize_Control_CSF( $wp_customize, $setting_id,
|
261 |
-
wp_parse_args( $control_args, array(
|
262 |
-
'unique' => $this->unique,
|
263 |
-
'field' => $field,
|
264 |
-
'section' => $section_id,
|
265 |
-
'settings' => $setting_id
|
266 |
-
) )
|
267 |
-
) );
|
268 |
-
|
269 |
-
if ( $has_selective ) {
|
270 |
-
$wp_customize->selective_refresh->add_partial( $setting_id, $field['selective_refresh'] );
|
271 |
-
}
|
272 |
-
|
273 |
-
$field_key++;
|
274 |
-
}
|
275 |
-
|
276 |
-
}
|
277 |
-
|
278 |
-
|
279 |
-
}
|
280 |
-
|
281 |
-
}
|
282 |
-
}
|
1 |
+
<?php if ( ! defined( 'ABSPATH' ) ) { die; } // Cannot access directly.
|
2 |
+
/**
|
3 |
+
*
|
4 |
+
* Customize Options Class
|
5 |
+
*
|
6 |
+
* @since 1.0.0
|
7 |
+
* @version 1.0.0
|
8 |
+
*
|
9 |
+
*/
|
10 |
+
if ( ! class_exists( 'CSF_Customize_Options' ) ) {
|
11 |
+
class CSF_Customize_Options extends CSF_Abstract {
|
12 |
+
|
13 |
+
// constans
|
14 |
+
public $unique = '';
|
15 |
+
public $abstract = 'customize';
|
16 |
+
public $options = array();
|
17 |
+
public $sections = array();
|
18 |
+
public $pre_fields = array();
|
19 |
+
public $pre_tabs = array();
|
20 |
+
public $priority = 10;
|
21 |
+
public $args = array(
|
22 |
+
'database' => 'option',
|
23 |
+
'transport' => 'refresh',
|
24 |
+
'capability' => 'manage_options',
|
25 |
+
'save_defaults' => true,
|
26 |
+
'enqueue_webfont' => true,
|
27 |
+
'async_webfont' => false,
|
28 |
+
'output_css' => true,
|
29 |
+
'defaults' => array()
|
30 |
+
);
|
31 |
+
|
32 |
+
// run customize construct
|
33 |
+
public function __construct( $key, $params ) {
|
34 |
+
|
35 |
+
$this->unique = $key;
|
36 |
+
$this->args = apply_filters( "csf_{$this->unique}_args", wp_parse_args( $params['args'], $this->args ), $this );
|
37 |
+
$this->sections = apply_filters( "csf_{$this->unique}_sections", $params['sections'], $this );
|
38 |
+
$this->pre_fields = $this->pre_fields( $this->sections );
|
39 |
+
|
40 |
+
$this->get_options();
|
41 |
+
$this->save_defaults();
|
42 |
+
|
43 |
+
add_action( 'customize_register', array( $this, 'add_customize_options' ) );
|
44 |
+
add_action( 'customize_save_after', array( $this, 'add_customize_save_after' ) );
|
45 |
+
|
46 |
+
// Get options for enqueue actions
|
47 |
+
if ( is_customize_preview() ) {
|
48 |
+
add_action( 'wp_enqueue_scripts', array( $this, 'get_options' ) );
|
49 |
+
}
|
50 |
+
|
51 |
+
// wp enqeueu for typography and output css
|
52 |
+
parent::__construct();
|
53 |
+
|
54 |
+
}
|
55 |
+
|
56 |
+
// instance
|
57 |
+
public static function instance( $key, $params = array() ) {
|
58 |
+
return new self( $key, $params );
|
59 |
+
}
|
60 |
+
|
61 |
+
public function add_customize_save_after( $wp_customize ) {
|
62 |
+
do_action( "csf_{$this->unique}_save_before", $this->get_options(), $this, $wp_customize );
|
63 |
+
do_action( "csf_{$this->unique}_saved", $this->get_options(), $this, $wp_customize );
|
64 |
+
do_action( "csf_{$this->unique}_save_after", $this->get_options(), $this, $wp_customize );
|
65 |
+
}
|
66 |
+
|
67 |
+
// get default value
|
68 |
+
public function get_default( $field ) {
|
69 |
+
|
70 |
+
$default = ( isset( $field['default'] ) ) ? $field['default'] : '';
|
71 |
+
$default = ( isset( $this->args['defaults'][$field['id']] ) ) ? $this->args['defaults'][$field['id']] : $default;
|
72 |
+
|
73 |
+
return $default;
|
74 |
+
|
75 |
+
}
|
76 |
+
|
77 |
+
// get option
|
78 |
+
public function get_options() {
|
79 |
+
|
80 |
+
if ( $this->args['database'] === 'theme_mod' ) {
|
81 |
+
$this->options = get_theme_mod( $this->unique, array() );
|
82 |
+
} else {
|
83 |
+
$this->options = get_option( $this->unique, array() );
|
84 |
+
}
|
85 |
+
|
86 |
+
if ( empty( $this->options ) ) {
|
87 |
+
$this->options = array();
|
88 |
+
}
|
89 |
+
|
90 |
+
return $this->options;
|
91 |
+
|
92 |
+
}
|
93 |
+
|
94 |
+
// save defaults and set new fields value to main options
|
95 |
+
public function save_defaults() {
|
96 |
+
|
97 |
+
$tmp_options = $this->options;
|
98 |
+
|
99 |
+
if ( ! empty( $this->pre_fields ) ) {
|
100 |
+
foreach ( $this->pre_fields as $field ) {
|
101 |
+
if ( ! empty( $field['id'] ) ) {
|
102 |
+
$this->options[$field['id']] = ( isset( $this->options[$field['id']] ) ) ? $this->options[$field['id']] : $this->get_default( $field );
|
103 |
+
}
|
104 |
+
}
|
105 |
+
}
|
106 |
+
|
107 |
+
if ( $this->args['save_defaults'] && empty( $this->args['show_in_customizer'] ) && empty( $tmp_options ) ) {
|
108 |
+
|
109 |
+
if ( $this->args['database'] === 'theme_mod' ) {
|
110 |
+
set_theme_mod( $this->unique, $this->options );
|
111 |
+
} else {
|
112 |
+
update_option( $this->unique, $this->options );
|
113 |
+
}
|
114 |
+
|
115 |
+
}
|
116 |
+
|
117 |
+
}
|
118 |
+
|
119 |
+
public function pre_fields( $sections ) {
|
120 |
+
|
121 |
+
$result = array();
|
122 |
+
|
123 |
+
foreach ( $sections as $key => $section ) {
|
124 |
+
if ( ! empty( $section['fields'] ) ) {
|
125 |
+
foreach ( $section['fields'] as $field ) {
|
126 |
+
$result[] = $field;
|
127 |
+
}
|
128 |
+
}
|
129 |
+
}
|
130 |
+
|
131 |
+
return $result;
|
132 |
+
}
|
133 |
+
|
134 |
+
|
135 |
+
public function pre_tabs( $sections ) {
|
136 |
+
|
137 |
+
$result = array();
|
138 |
+
$parents = array();
|
139 |
+
|
140 |
+
foreach ( $sections as $key => $section ) {
|
141 |
+
if ( ! empty( $section['parent'] ) ) {
|
142 |
+
$parents[$section['parent']][] = $section;
|
143 |
+
unset( $sections[$key] );
|
144 |
+
}
|
145 |
+
}
|
146 |
+
|
147 |
+
foreach ( $sections as $key => $section ) {
|
148 |
+
if ( ! empty( $section['id'] ) && ! empty( $parents[$section['id']] ) ) {
|
149 |
+
$section['subs'] = $parents[$section['id']];
|
150 |
+
}
|
151 |
+
$result[] = $section;
|
152 |
+
}
|
153 |
+
|
154 |
+
return $result;
|
155 |
+
|
156 |
+
}
|
157 |
+
|
158 |
+
public function add_customize_options( $wp_customize ) {
|
159 |
+
|
160 |
+
if ( ! class_exists( 'WP_Customize_Panel_CSF' ) ) {
|
161 |
+
CSF::include_plugin_file( 'functions/customize.php' );
|
162 |
+
}
|
163 |
+
|
164 |
+
if ( ! empty( $this->sections ) ) {
|
165 |
+
|
166 |
+
$sections = $this->pre_tabs( $this->sections );
|
167 |
+
|
168 |
+
foreach ( $sections as $section ) {
|
169 |
+
|
170 |
+
if ( ! empty( $section['subs'] ) ) {
|
171 |
+
|
172 |
+
$panel_id = ( isset( $section['id'] ) ) ? $section['id'] : $this->unique .'-panel-'. $this->priority;
|
173 |
+
|
174 |
+
$wp_customize->add_panel( new WP_Customize_Panel_CSF( $wp_customize, $panel_id, array(
|
175 |
+
'title' => ( isset( $section['title'] ) ) ? $section['title'] : null,
|
176 |
+
'description' => ( isset( $section['description'] ) ) ? $section['description'] : null,
|
177 |
+
'priority' => ( isset( $section['priority'] ) ) ? $section['priority'] : null,
|
178 |
+
) ) );
|
179 |
+
|
180 |
+
$this->priority++;
|
181 |
+
|
182 |
+
foreach ( $section['subs'] as $sub_section ) {
|
183 |
+
|
184 |
+
$section_id = ( isset( $sub_section['id'] ) ) ? $sub_section['id'] : $this->unique .'-section-'. $this->priority;
|
185 |
+
|
186 |
+
$this->add_section( $wp_customize, $section_id, $sub_section, $panel_id );
|
187 |
+
|
188 |
+
$this->priority++;
|
189 |
+
|
190 |
+
}
|
191 |
+
|
192 |
+
} else {
|
193 |
+
|
194 |
+
$section_id = ( isset( $section['id'] ) ) ? $section['id'] : $this->unique .'-section-'. $this->priority;
|
195 |
+
|
196 |
+
$this->add_section( $wp_customize, $section_id, $section, false );
|
197 |
+
|
198 |
+
$this->priority++;
|
199 |
+
|
200 |
+
}
|
201 |
+
|
202 |
+
}
|
203 |
+
|
204 |
+
}
|
205 |
+
|
206 |
+
}
|
207 |
+
|
208 |
+
// add customize section
|
209 |
+
public function add_section( $wp_customize, $section_id, $section_args, $panel_id ) {
|
210 |
+
|
211 |
+
if ( ! empty( $section_args['assign'] ) ) {
|
212 |
+
|
213 |
+
$section_id = $section_args['assign'];
|
214 |
+
|
215 |
+
} else {
|
216 |
+
|
217 |
+
$wp_customize->add_section( new WP_Customize_Section_CSF( $wp_customize, $section_id, array(
|
218 |
+
'title' => ( isset( $section_args['title'] ) ) ? $section_args['title'] : '',
|
219 |
+
'description' => ( isset( $section_args['description'] ) ) ? $section_args['description'] : '',
|
220 |
+
'priority' => ( isset( $section_args['priority'] ) ) ? $section_args['priority'] : '',
|
221 |
+
'panel' => ( $panel_id ) ? $panel_id : '',
|
222 |
+
) ) );
|
223 |
+
|
224 |
+
}
|
225 |
+
|
226 |
+
if ( ! empty( $section_args['fields'] ) ) {
|
227 |
+
|
228 |
+
$field_key = 1;
|
229 |
+
|
230 |
+
foreach ( $section_args['fields'] as $field ) {
|
231 |
+
|
232 |
+
if ( isset( $field['id'] ) ) {
|
233 |
+
$field['default'] = $this->get_default( $field );
|
234 |
+
}
|
235 |
+
|
236 |
+
$field_id = ( isset( $field['id'] ) ) ? $field['id'] : '_nonce-'. $section_id .'-'. $field_key;
|
237 |
+
$setting_args = ( isset( $field['setting_args'] ) ) ? $field['setting_args'] : array();
|
238 |
+
$control_args = ( isset( $field['control_args'] ) ) ? $field['control_args'] : array();
|
239 |
+
$field_transport = ( isset( $field['transport'] ) ) ? $field['transport'] : $this->args['transport'];
|
240 |
+
$field_sanitize = ( isset( $field['sanitize'] ) ) ? $field['sanitize'] : '';
|
241 |
+
$field_validate = ( isset( $field['validate'] ) ) ? $field['validate'] : '';
|
242 |
+
$field_default = ( isset( $field['default'] ) ) ? $field['default'] : '';
|
243 |
+
$field_customize = ( isset( $field['customize'] ) && ! isset( $field['transport'] ) ) ? true : false;
|
244 |
+
$has_selective = ( isset( $field['selective_refresh'] ) && isset( $wp_customize->selective_refresh ) ) ? true : false;
|
245 |
+
|
246 |
+
$setting_id = $this->unique .'['. $field_id .']';
|
247 |
+
$transport = ( $has_selective || $field_customize ) ? 'postMessage' : $field_transport;
|
248 |
+
|
249 |
+
$wp_customize->add_setting( $setting_id,
|
250 |
+
wp_parse_args( $setting_args, array(
|
251 |
+
'default' => $field_default,
|
252 |
+
'type' => $this->args['database'],
|
253 |
+
'capability' => $this->args['capability'],
|
254 |
+
'transport' => $transport,
|
255 |
+
'sanitize_callback' => $field_sanitize,
|
256 |
+
'validate_callback' => $field_validate
|
257 |
+
) )
|
258 |
+
);
|
259 |
+
|
260 |
+
$wp_customize->add_control( new WP_Customize_Control_CSF( $wp_customize, $setting_id,
|
261 |
+
wp_parse_args( $control_args, array(
|
262 |
+
'unique' => $this->unique,
|
263 |
+
'field' => $field,
|
264 |
+
'section' => $section_id,
|
265 |
+
'settings' => $setting_id
|
266 |
+
) )
|
267 |
+
) );
|
268 |
+
|
269 |
+
if ( $has_selective ) {
|
270 |
+
$wp_customize->selective_refresh->add_partial( $setting_id, $field['selective_refresh'] );
|
271 |
+
}
|
272 |
+
|
273 |
+
$field_key++;
|
274 |
+
}
|
275 |
+
|
276 |
+
}
|
277 |
+
|
278 |
+
|
279 |
+
}
|
280 |
+
|
281 |
+
}
|
282 |
+
}
|
vendor/codestar-framework/classes/metabox-options.class.php
CHANGED
@@ -1,425 +1,425 @@
|
|
1 |
-
<?php if ( ! defined( 'ABSPATH' ) ) { die; } // Cannot access directly.
|
2 |
-
/**
|
3 |
-
*
|
4 |
-
* Metabox Class
|
5 |
-
*
|
6 |
-
* @since 1.0.0
|
7 |
-
* @version 1.0.0
|
8 |
-
*
|
9 |
-
*/
|
10 |
-
if ( ! class_exists( 'CSF_Metabox' ) ) {
|
11 |
-
class CSF_Metabox extends CSF_Abstract{
|
12 |
-
|
13 |
-
// constans
|
14 |
-
public $unique = '';
|
15 |
-
public $abstract = 'metabox';
|
16 |
-
public $pre_fields = array();
|
17 |
-
public $sections = array();
|
18 |
-
public $post_type = array();
|
19 |
-
public $args = array(
|
20 |
-
'title' => '',
|
21 |
-
'post_type' => 'post',
|
22 |
-
'data_type' => 'serialize',
|
23 |
-
'context' => 'advanced',
|
24 |
-
'priority' => 'default',
|
25 |
-
'exclude_post_types' => array(),
|
26 |
-
'page_templates' => '',
|
27 |
-
'post_formats' => '',
|
28 |
-
'show_reset' => false,
|
29 |
-
'show_restore' => false,
|
30 |
-
'enqueue_webfont' => true,
|
31 |
-
'async_webfont' => false,
|
32 |
-
'output_css' => true,
|
33 |
-
'nav' => 'normal',
|
34 |
-
'theme' => 'dark',
|
35 |
-
'class' => '',
|
36 |
-
'defaults' => array(),
|
37 |
-
);
|
38 |
-
|
39 |
-
// run metabox construct
|
40 |
-
public function __construct( $key, $params = array() ) {
|
41 |
-
|
42 |
-
$this->unique = $key;
|
43 |
-
$this->args = apply_filters( "csf_{$this->unique}_args", wp_parse_args( $params['args'], $this->args ), $this );
|
44 |
-
$this->sections = apply_filters( "csf_{$this->unique}_sections", $params['sections'], $this );
|
45 |
-
$this->post_type = ( is_array( $this->args['post_type'] ) ) ? $this->args['post_type'] : array_filter( (array) $this->args['post_type'] );
|
46 |
-
$this->post_formats = ( is_array( $this->args['post_formats'] ) ) ? $this->args['post_formats'] : array_filter( (array) $this->args['post_formats'] );
|
47 |
-
$this->page_templates = ( is_array( $this->args['page_templates'] ) ) ? $this->args['page_templates'] : array_filter( (array) $this->args['page_templates'] );
|
48 |
-
$this->pre_fields = $this->pre_fields( $this->sections );
|
49 |
-
|
50 |
-
add_action( 'add_meta_boxes', array( $this, 'add_meta_box' ) );
|
51 |
-
add_action( 'save_post', array( $this, 'save_meta_box' ) );
|
52 |
-
add_action( 'edit_attachment', array( $this, 'save_meta_box' ) );
|
53 |
-
|
54 |
-
if ( ! empty( $this->page_templates ) || ! empty( $this->post_formats ) || ! empty( $this->args['class'] ) ) {
|
55 |
-
foreach ( $this->post_type as $post_type ) {
|
56 |
-
add_filter( 'postbox_classes_'. $post_type .'_'. $this->unique, array( $this, 'add_metabox_classes' ) );
|
57 |
-
}
|
58 |
-
}
|
59 |
-
|
60 |
-
// wp enqeueu for typography and output css
|
61 |
-
parent::__construct();
|
62 |
-
|
63 |
-
}
|
64 |
-
|
65 |
-
// instance
|
66 |
-
public static function instance( $key, $params = array() ) {
|
67 |
-
return new self( $key, $params );
|
68 |
-
}
|
69 |
-
|
70 |
-
public function pre_fields( $sections ) {
|
71 |
-
|
72 |
-
$result = array();
|
73 |
-
|
74 |
-
foreach ( $sections as $key => $section ) {
|
75 |
-
if ( ! empty( $section['fields'] ) ) {
|
76 |
-
foreach ( $section['fields'] as $field ) {
|
77 |
-
$result[] = $field;
|
78 |
-
}
|
79 |
-
}
|
80 |
-
}
|
81 |
-
|
82 |
-
return $result;
|
83 |
-
|
84 |
-
}
|
85 |
-
|
86 |
-
public function add_metabox_classes( $classes ) {
|
87 |
-
|
88 |
-
global $post;
|
89 |
-
|
90 |
-
if ( ! empty( $this->post_formats ) ) {
|
91 |
-
|
92 |
-
$saved_post_format = ( is_object( $post ) ) ? get_post_format( $post ) : false;
|
93 |
-
$saved_post_format = ( ! empty( $saved_post_format ) ) ? $saved_post_format : 'default';
|
94 |
-
|
95 |
-
$classes[] = 'csf-post-formats';
|
96 |
-
|
97 |
-
// Sanitize post format for standard to default
|
98 |
-
if ( ( $key = array_search( 'standard', $this->post_formats ) ) !== false ) {
|
99 |
-
$this->post_formats[$key] = 'default';
|
100 |
-
}
|
101 |
-
|
102 |
-
foreach ( $this->post_formats as $format ) {
|
103 |
-
$classes[] = 'csf-post-format-'. $format;
|
104 |
-
}
|
105 |
-
|
106 |
-
if ( ! in_array( $saved_post_format, $this->post_formats ) ) {
|
107 |
-
$classes[] = 'csf-metabox-hide';
|
108 |
-
} else {
|
109 |
-
$classes[] = 'csf-metabox-show';
|
110 |
-
}
|
111 |
-
|
112 |
-
}
|
113 |
-
|
114 |
-
if ( ! empty( $this->page_templates ) ) {
|
115 |
-
|
116 |
-
$saved_template = ( is_object( $post ) && ! empty( $post->page_template ) ) ? $post->page_template : 'default';
|
117 |
-
|
118 |
-
$classes[] = 'csf-page-templates';
|
119 |
-
|
120 |
-
foreach ( $this->page_templates as $template ) {
|
121 |
-
$classes[] = 'csf-page-'. preg_replace( '/[^a-zA-Z0-9]+/', '-', strtolower( $template ) );
|
122 |
-
}
|
123 |
-
|
124 |
-
if ( ! in_array( $saved_template, $this->page_templates ) ) {
|
125 |
-
$classes[] = 'csf-metabox-hide';
|
126 |
-
} else {
|
127 |
-
$classes[] = 'csf-metabox-show';
|
128 |
-
}
|
129 |
-
|
130 |
-
}
|
131 |
-
|
132 |
-
if ( ! empty( $this->args['class'] ) ) {
|
133 |
-
$classes[] = $this->args['class'];
|
134 |
-
}
|
135 |
-
|
136 |
-
return $classes;
|
137 |
-
|
138 |
-
}
|
139 |
-
|
140 |
-
// add metabox
|
141 |
-
public function add_meta_box( $post_type ) {
|
142 |
-
|
143 |
-
if ( ! in_array( $post_type, $this->args['exclude_post_types'] ) ) {
|
144 |
-
add_meta_box( $this->unique, $this->args['title'], array( $this, 'add_meta_box_content' ), $this->post_type, $this->args['context'], $this->args['priority'], $this->args );
|
145 |
-
}
|
146 |
-
|
147 |
-
}
|
148 |
-
|
149 |
-
// get default value
|
150 |
-
public function get_default( $field ) {
|
151 |
-
|
152 |
-
$default = ( isset( $field['default'] ) ) ? $field['default'] : '';
|
153 |
-
$default = ( isset( $this->args['defaults'][$field['id']] ) ) ? $this->args['defaults'][$field['id']] : $default;
|
154 |
-
|
155 |
-
return $default;
|
156 |
-
|
157 |
-
}
|
158 |
-
|
159 |
-
// get meta value
|
160 |
-
public function get_meta_value( $field ) {
|
161 |
-
|
162 |
-
global $post;
|
163 |
-
|
164 |
-
$value = null;
|
165 |
-
|
166 |
-
if ( is_object( $post ) && ! empty( $field['id'] ) ) {
|
167 |
-
|
168 |
-
if ( $this->args['data_type'] !== 'serialize' ) {
|
169 |
-
$meta = get_post_meta( $post->ID, $field['id'] );
|
170 |
-
$value = ( isset( $meta[0] ) ) ? $meta[0] : null;
|
171 |
-
} else {
|
172 |
-
$meta = get_post_meta( $post->ID, $this->unique, true );
|
173 |
-
$value = ( isset( $meta[$field['id']] ) ) ? $meta[$field['id']] : null;
|
174 |
-
}
|
175 |
-
|
176 |
-
}
|
177 |
-
|
178 |
-
$default = ( isset( $field['id'] ) ) ? $this->get_default( $field ) : '';
|
179 |
-
$value = ( isset( $value ) ) ? $value : $default;
|
180 |
-
|
181 |
-
return $value;
|
182 |
-
|
183 |
-
}
|
184 |
-
|
185 |
-
// add metabox content
|
186 |
-
public function add_meta_box_content( $post, $callback ) {
|
187 |
-
|
188 |
-
global $post;
|
189 |
-
|
190 |
-
$has_nav = ( count( $this->sections ) > 1 && $this->args['context'] !== 'side' ) ? true : false;
|
191 |
-
$show_all = ( ! $has_nav ) ? ' csf-show-all' : '';
|
192 |
-
$post_type = ( is_object ( $post ) ) ? $post->post_type : '';
|
193 |
-
$errors = ( is_object ( $post ) ) ? get_post_meta( $post->ID, '_csf_errors_'. $this->unique, true ) : array();
|
194 |
-
$errors = ( ! empty( $errors ) ) ? $errors : array();
|
195 |
-
$theme = ( $this->args['theme'] ) ? ' csf-theme-'. $this->args['theme'] : '';
|
196 |
-
$nav_type = ( $this->args['nav'] === 'inline' ) ? 'inline' : 'normal';
|
197 |
-
|
198 |
-
if ( is_object ( $post ) && ! empty( $errors ) ) {
|
199 |
-
delete_post_meta( $post->ID, '_csf_errors_'. $this->unique );
|
200 |
-
}
|
201 |
-
|
202 |
-
wp_nonce_field( 'csf_metabox_nonce', 'csf_metabox_nonce'. $this->unique );
|
203 |
-
|
204 |
-
echo '<div class="csf csf-metabox'. esc_attr( $theme ) .'">';
|
205 |
-
|
206 |
-
echo '<div class="csf-wrapper'. esc_attr( $show_all ) .'">';
|
207 |
-
|
208 |
-
if ( $has_nav ) {
|
209 |
-
|
210 |
-
echo '<div class="csf-nav csf-nav-'. esc_attr( $nav_type ) .' csf-nav-metabox">';
|
211 |
-
|
212 |
-
echo '<ul>';
|
213 |
-
|
214 |
-
$tab_key = 0;
|
215 |
-
|
216 |
-
foreach ( $this->sections as $section ) {
|
217 |
-
|
218 |
-
if ( ! empty( $section['post_type'] ) && ! in_array( $post_type, array_filter( (array) $section['post_type'] ) ) ) {
|
219 |
-
continue;
|
220 |
-
}
|
221 |
-
|
222 |
-
$tab_error = ( ! empty( $errors['sections'][$tab_key] ) ) ? '<i class="csf-label-error csf-error">!</i>' : '';
|
223 |
-
$tab_icon = ( ! empty( $section['icon'] ) ) ? '<i class="csf-tab-icon '. esc_attr( $section['icon'] ) .'"></i>' : '';
|
224 |
-
|
225 |
-
echo '<li><a href="#">'. $tab_icon . $section['title'] . $tab_error .'</a></li>';
|
226 |
-
|
227 |
-
$tab_key++;
|
228 |
-
|
229 |
-
}
|
230 |
-
|
231 |
-
echo '</ul>';
|
232 |
-
|
233 |
-
echo '</div>';
|
234 |
-
|
235 |
-
}
|
236 |
-
|
237 |
-
echo '<div class="csf-content">';
|
238 |
-
|
239 |
-
echo '<div class="csf-sections">';
|
240 |
-
|
241 |
-
$section_key = 0;
|
242 |
-
|
243 |
-
foreach ( $this->sections as $section ) {
|
244 |
-
|
245 |
-
if ( ! empty( $section['post_type'] ) && ! in_array( $post_type, array_filter( (array) $section['post_type'] ) ) ) {
|
246 |
-
continue;
|
247 |
-
}
|
248 |
-
|
249 |
-
$section_onload = ( ! $has_nav ) ? ' csf-onload' : '';
|
250 |
-
$section_class = ( ! empty( $section['class'] ) ) ? ' '. $section['class'] : '';
|
251 |
-
$section_title = ( ! empty( $section['title'] ) ) ? $section['title'] : '';
|
252 |
-
$section_icon = ( ! empty( $section['icon'] ) ) ? '<i class="csf-section-icon '. esc_attr( $section['icon'] ) .'"></i>' : '';
|
253 |
-
|
254 |
-
echo '<div class="csf-section hidden'. esc_attr( $section_onload . $section_class ) .'">';
|
255 |
-
|
256 |
-
echo ( $section_title || $section_icon ) ? '<div class="csf-section-title"><h3>'. $section_icon . $section_title .'</h3></div>' : '';
|
257 |
-
echo ( ! empty( $section['description'] ) ) ? '<div class="csf-field csf-section-description">'. $section['description'] .'</div>' : '';
|
258 |
-
|
259 |
-
if ( ! empty( $section['fields'] ) ) {
|
260 |
-
|
261 |
-
foreach ( $section['fields'] as $field ) {
|
262 |
-
|
263 |
-
if ( ! empty( $field['id'] ) && ! empty( $errors['fields'][$field['id']] ) ) {
|
264 |
-
$field['_error'] = $errors['fields'][$field['id']];
|
265 |
-
}
|
266 |
-
|
267 |
-
if ( ! empty( $field['id'] ) ) {
|
268 |
-
$field['default'] = $this->get_default( $field );
|
269 |
-
}
|
270 |
-
|
271 |
-
CSF::field( $field, $this->get_meta_value( $field ), $this->unique, 'metabox' );
|
272 |
-
|
273 |
-
}
|
274 |
-
|
275 |
-
} else {
|
276 |
-
|
277 |
-
echo '<div class="csf-no-option">'. esc_html__( 'No data available.', 'csf' ) .'</div>';
|
278 |
-
|
279 |
-
}
|
280 |
-
|
281 |
-
echo '</div>';
|
282 |
-
|
283 |
-
$section_key++;
|
284 |
-
|
285 |
-
}
|
286 |
-
|
287 |
-
echo '</div>';
|
288 |
-
|
289 |
-
if ( ! empty( $this->args['show_restore'] ) || ! empty( $this->args['show_reset'] ) ) {
|
290 |
-
|
291 |
-
echo '<div class="csf-sections-reset">';
|
292 |
-
echo '<label>';
|
293 |
-
echo '<input type="checkbox" name="'. esc_attr( $this->unique ) .'[_reset]" />';
|
294 |
-
echo '<span class="button csf-button-reset">'. esc_html__( 'Reset', 'csf' ) .'</span>';
|
295 |
-
echo '<span class="button csf-button-cancel">'. sprintf( '<small>( %s )</small> %s', esc_html__( 'update post', 'csf' ), esc_html__( 'Cancel', 'csf' ) ) .'</span>';
|
296 |
-
echo '</label>';
|
297 |
-
echo '</div>';
|
298 |
-
|
299 |
-
}
|
300 |
-
|
301 |
-
echo '</div>';
|
302 |
-
|
303 |
-
echo ( $has_nav && $nav_type === 'normal' ) ? '<div class="csf-nav-background"></div>' : '';
|
304 |
-
|
305 |
-
echo '<div class="clear"></div>';
|
306 |
-
|
307 |
-
echo '</div>';
|
308 |
-
|
309 |
-
echo '</div>';
|
310 |
-
|
311 |
-
}
|
312 |
-
|
313 |
-
// save metabox
|
314 |
-
public function save_meta_box( $post_id ) {
|
315 |
-
|
316 |
-
$count = 1;
|
317 |
-
$data = array();
|
318 |
-
$errors = array();
|
319 |
-
$noncekey = 'csf_metabox_nonce'. $this->unique;
|
320 |
-
$nonce = ( ! empty( $_POST[ $noncekey ] ) ) ? sanitize_text_field( wp_unslash( $_POST[ $noncekey ] ) ) : '';
|
321 |
-
|
322 |
-
if ( ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) || ! wp_verify_nonce( $nonce, 'csf_metabox_nonce' ) ) {
|
323 |
-
return $post_id;
|
324 |
-
}
|
325 |
-
|
326 |
-
// XSS ok.
|
327 |
-
// No worries, This "POST" requests is sanitizing in the below foreach.
|
328 |
-
$request = ( ! empty( $_POST[ $this->unique ] ) ) ? $_POST[ $this->unique ] : array();
|
329 |
-
|
330 |
-
if ( ! empty( $request ) ) {
|
331 |
-
|
332 |
-
foreach ( $this->sections as $section ) {
|
333 |
-
|
334 |
-
if ( ! empty( $section['fields'] ) ) {
|
335 |
-
|
336 |
-
foreach ( $section['fields'] as $field ) {
|
337 |
-
|
338 |
-
if ( ! empty( $field['id'] ) ) {
|
339 |
-
|
340 |
-
$field_id = $field['id'];
|
341 |
-
$field_value = isset( $request[$field_id] ) ? $request[$field_id] : '';
|
342 |
-
|
343 |
-
// Sanitize "post" request of field.
|
344 |
-
if ( ! isset( $field['sanitize'] ) ) {
|
345 |
-
|
346 |
-
if( is_array( $field_value ) ) {
|
347 |
-
$data[$field_id] = wp_kses_post_deep( $field_value );
|
348 |
-
} else {
|
349 |
-
$data[$field_id] = wp_kses_post( $field_value );
|
350 |
-
}
|
351 |
-
|
352 |
-
} else if( isset( $field['sanitize'] ) && is_callable( $field['sanitize'] ) ) {
|
353 |
-
|
354 |
-
$data[$field_id] = call_user_func( $field['sanitize'], $field_value );
|
355 |
-
|
356 |
-
} else {
|
357 |
-
|
358 |
-
$data[$field_id] = $field_value;
|
359 |
-
|
360 |
-
}
|
361 |
-
|
362 |
-
// Validate "post" request of field.
|
363 |
-
if ( isset( $field['validate'] ) && is_callable( $field['validate'] ) ) {
|
364 |
-
|
365 |
-
$has_validated = call_user_func( $field['validate'], $field_value );
|
366 |
-
|
367 |
-
if ( ! empty( $has_validated ) ) {
|
368 |
-
|
369 |
-
$errors['sections'][$count] = true;
|
370 |
-
$errors['fields'][$field_id] = $has_validated;
|
371 |
-
$data[$field_id] = $this->get_meta_value( $field );
|
372 |
-
|
373 |
-
}
|
374 |
-
|
375 |
-
}
|
376 |
-
|
377 |
-
}
|
378 |
-
|
379 |
-
}
|
380 |
-
|
381 |
-
}
|
382 |
-
|
383 |
-
$count++;
|
384 |
-
|
385 |
-
}
|
386 |
-
|
387 |
-
}
|
388 |
-
|
389 |
-
$data = apply_filters( "csf_{$this->unique}_save", $data, $post_id, $this );
|
390 |
-
|
391 |
-
do_action( "csf_{$this->unique}_save_before", $data, $post_id, $this );
|
392 |
-
|
393 |
-
if ( empty( $data ) || ! empty( $request['_reset'] ) ) {
|
394 |
-
|
395 |
-
if ( $this->args['data_type'] !== 'serialize' ) {
|
396 |
-
foreach ( $data as $key => $value ) {
|
397 |
-
delete_post_meta( $post_id, $key );
|
398 |
-
}
|
399 |
-
} else {
|
400 |
-
delete_post_meta( $post_id, $this->unique );
|
401 |
-
}
|
402 |
-
|
403 |
-
} else {
|
404 |
-
|
405 |
-
if ( $this->args['data_type'] !== 'serialize' ) {
|
406 |
-
foreach ( $data as $key => $value ) {
|
407 |
-
update_post_meta( $post_id, $key, $value );
|
408 |
-
}
|
409 |
-
} else {
|
410 |
-
update_post_meta( $post_id, $this->unique, $data );
|
411 |
-
}
|
412 |
-
|
413 |
-
if ( ! empty( $errors ) ) {
|
414 |
-
update_post_meta( $post_id, '_csf_errors_'. $this->unique, $errors );
|
415 |
-
}
|
416 |
-
|
417 |
-
}
|
418 |
-
|
419 |
-
do_action( "csf_{$this->unique}_saved", $data, $post_id, $this );
|
420 |
-
|
421 |
-
do_action( "csf_{$this->unique}_save_after", $data, $post_id, $this );
|
422 |
-
|
423 |
-
}
|
424 |
-
}
|
425 |
-
}
|
1 |
+
<?php if ( ! defined( 'ABSPATH' ) ) { die; } // Cannot access directly.
|
2 |
+
/**
|
3 |
+
*
|
4 |
+
* Metabox Class
|
5 |
+
*
|
6 |
+
* @since 1.0.0
|
7 |
+
* @version 1.0.0
|
8 |
+
*
|
9 |
+
*/
|
10 |
+
if ( ! class_exists( 'CSF_Metabox' ) ) {
|
11 |
+
class CSF_Metabox extends CSF_Abstract{
|
12 |
+
|
13 |
+
// constans
|
14 |
+
public $unique = '';
|
15 |
+
public $abstract = 'metabox';
|
16 |
+
public $pre_fields = array();
|
17 |
+
public $sections = array();
|
18 |
+
public $post_type = array();
|
19 |
+
public $args = array(
|
20 |
+
'title' => '',
|
21 |
+
'post_type' => 'post',
|
22 |
+
'data_type' => 'serialize',
|
23 |
+
'context' => 'advanced',
|
24 |
+
'priority' => 'default',
|
25 |
+
'exclude_post_types' => array(),
|
26 |
+
'page_templates' => '',
|
27 |
+
'post_formats' => '',
|
28 |
+
'show_reset' => false,
|
29 |
+
'show_restore' => false,
|
30 |
+
'enqueue_webfont' => true,
|
31 |
+
'async_webfont' => false,
|
32 |
+
'output_css' => true,
|
33 |
+
'nav' => 'normal',
|
34 |
+
'theme' => 'dark',
|
35 |
+
'class' => '',
|
36 |
+
'defaults' => array(),
|
37 |
+
);
|
38 |
+
|
39 |
+
// run metabox construct
|
40 |
+
public function __construct( $key, $params = array() ) {
|
41 |
+
|
42 |
+
$this->unique = $key;
|
43 |
+
$this->args = apply_filters( "csf_{$this->unique}_args", wp_parse_args( $params['args'], $this->args ), $this );
|
44 |
+
$this->sections = apply_filters( "csf_{$this->unique}_sections", $params['sections'], $this );
|
45 |
+
$this->post_type = ( is_array( $this->args['post_type'] ) ) ? $this->args['post_type'] : array_filter( (array) $this->args['post_type'] );
|
46 |
+
$this->post_formats = ( is_array( $this->args['post_formats'] ) ) ? $this->args['post_formats'] : array_filter( (array) $this->args['post_formats'] );
|
47 |
+
$this->page_templates = ( is_array( $this->args['page_templates'] ) ) ? $this->args['page_templates'] : array_filter( (array) $this->args['page_templates'] );
|
48 |
+
$this->pre_fields = $this->pre_fields( $this->sections );
|
49 |
+
|
50 |
+
add_action( 'add_meta_boxes', array( $this, 'add_meta_box' ) );
|
51 |
+
add_action( 'save_post', array( $this, 'save_meta_box' ) );
|
52 |
+
add_action( 'edit_attachment', array( $this, 'save_meta_box' ) );
|
53 |
+
|
54 |
+
if ( ! empty( $this->page_templates ) || ! empty( $this->post_formats ) || ! empty( $this->args['class'] ) ) {
|
55 |
+
foreach ( $this->post_type as $post_type ) {
|
56 |
+
add_filter( 'postbox_classes_'. $post_type .'_'. $this->unique, array( $this, 'add_metabox_classes' ) );
|
57 |
+
}
|
58 |
+
}
|
59 |
+
|
60 |
+
// wp enqeueu for typography and output css
|
61 |
+
parent::__construct();
|
62 |
+
|
63 |
+
}
|
64 |
+
|
65 |
+
// instance
|
66 |
+
public static function instance( $key, $params = array() ) {
|
67 |
+
return new self( $key, $params );
|
68 |
+
}
|
69 |
+
|
70 |
+
public function pre_fields( $sections ) {
|
71 |
+
|
72 |
+
$result = array();
|
73 |
+
|
74 |
+
foreach ( $sections as $key => $section ) {
|
75 |
+
if ( ! empty( $section['fields'] ) ) {
|
76 |
+
foreach ( $section['fields'] as $field ) {
|
77 |
+
$result[] = $field;
|
78 |
+
}
|
79 |
+
}
|
80 |
+
}
|
81 |
+
|
82 |
+
return $result;
|
83 |
+
|
84 |
+
}
|
85 |
+
|
86 |
+
public function add_metabox_classes( $classes ) {
|
87 |
+
|
88 |
+
global $post;
|
89 |
+
|
90 |
+
if ( ! empty( $this->post_formats ) ) {
|
91 |
+
|
92 |
+
$saved_post_format = ( is_object( $post ) ) ? get_post_format( $post ) : false;
|
93 |
+
$saved_post_format = ( ! empty( $saved_post_format ) ) ? $saved_post_format : 'default';
|
94 |
+
|
95 |
+
$classes[] = 'csf-post-formats';
|
96 |
+
|
97 |
+
// Sanitize post format for standard to default
|
98 |
+
if ( ( $key = array_search( 'standard', $this->post_formats ) ) !== false ) {
|
99 |
+
$this->post_formats[$key] = 'default';
|
100 |
+
}
|
101 |
+
|
102 |
+
foreach ( $this->post_formats as $format ) {
|
103 |
+
$classes[] = 'csf-post-format-'. $format;
|
104 |
+
}
|
105 |
+
|
106 |
+
if ( ! in_array( $saved_post_format, $this->post_formats ) ) {
|
107 |
+
$classes[] = 'csf-metabox-hide';
|
108 |
+
} else {
|
109 |
+
$classes[] = 'csf-metabox-show';
|
110 |
+
}
|
111 |
+
|
112 |
+
}
|
113 |
+
|
114 |
+
if ( ! empty( $this->page_templates ) ) {
|
115 |
+
|
116 |
+
$saved_template = ( is_object( $post ) && ! empty( $post->page_template ) ) ? $post->page_template : 'default';
|
117 |
+
|
118 |
+
$classes[] = 'csf-page-templates';
|
119 |
+
|
120 |
+
foreach ( $this->page_templates as $template ) {
|
121 |
+
$classes[] = 'csf-page-'. preg_replace( '/[^a-zA-Z0-9]+/', '-', strtolower( $template ) );
|
122 |
+
}
|
123 |
+
|
124 |
+
if ( ! in_array( $saved_template, $this->page_templates ) ) {
|
125 |
+
$classes[] = 'csf-metabox-hide';
|
126 |
+
} else {
|
127 |
+
$classes[] = 'csf-metabox-show';
|
128 |
+
}
|
129 |
+
|
130 |
+
}
|
131 |
+
|
132 |
+
if ( ! empty( $this->args['class'] ) ) {
|
133 |
+
$classes[] = $this->args['class'];
|
134 |
+
}
|
135 |
+
|
136 |
+
return $classes;
|
137 |
+
|
138 |
+
}
|
139 |
+
|
140 |
+
// add metabox
|
141 |
+
public function add_meta_box( $post_type ) {
|
142 |
+
|
143 |
+
if ( ! in_array( $post_type, $this->args['exclude_post_types'] ) ) {
|
144 |
+
add_meta_box( $this->unique, $this->args['title'], array( $this, 'add_meta_box_content' ), $this->post_type, $this->args['context'], $this->args['priority'], $this->args );
|
145 |
+
}
|
146 |
+
|
147 |
+
}
|
148 |
+
|
149 |
+
// get default value
|
150 |
+
public function get_default( $field ) {
|
151 |
+
|
152 |
+
$default = ( isset( $field['default'] ) ) ? $field['default'] : '';
|
153 |
+
$default = ( isset( $this->args['defaults'][$field['id']] ) ) ? $this->args['defaults'][$field['id']] : $default;
|
154 |
+
|
155 |
+
return $default;
|
156 |
+
|
157 |
+
}
|
158 |
+
|
159 |
+
// get meta value
|
160 |
+
public function get_meta_value( $field ) {
|
161 |
+
|
162 |
+
global $post;
|
163 |
+
|
164 |
+
$value = null;
|
165 |
+
|
166 |
+
if ( is_object( $post ) && ! empty( $field['id'] ) ) {
|
167 |
+
|
168 |
+
if ( $this->args['data_type'] !== 'serialize' ) {
|
169 |
+
$meta = get_post_meta( $post->ID, $field['id'] );
|
170 |
+
$value = ( isset( $meta[0] ) ) ? $meta[0] : null;
|
171 |
+
} else {
|
172 |
+
$meta = get_post_meta( $post->ID, $this->unique, true );
|
173 |
+
$value = ( isset( $meta[$field['id']] ) ) ? $meta[$field['id']] : null;
|
174 |
+
}
|
175 |
+
|
176 |
+
}
|
177 |
+
|
178 |
+
$default = ( isset( $field['id'] ) ) ? $this->get_default( $field ) : '';
|
179 |
+
$value = ( isset( $value ) ) ? $value : $default;
|
180 |
+
|
181 |
+
return $value;
|
182 |
+
|
183 |
+
}
|
184 |
+
|
185 |
+
// add metabox content
|
186 |
+
public function add_meta_box_content( $post, $callback ) {
|
187 |
+
|
188 |
+
global $post;
|
189 |
+
|
190 |
+
$has_nav = ( count( $this->sections ) > 1 && $this->args['context'] !== 'side' ) ? true : false;
|
191 |
+
$show_all = ( ! $has_nav ) ? ' csf-show-all' : '';
|
192 |
+
$post_type = ( is_object ( $post ) ) ? $post->post_type : '';
|
193 |
+
$errors = ( is_object ( $post ) ) ? get_post_meta( $post->ID, '_csf_errors_'. $this->unique, true ) : array();
|
194 |
+
$errors = ( ! empty( $errors ) ) ? $errors : array();
|
195 |
+
$theme = ( $this->args['theme'] ) ? ' csf-theme-'. $this->args['theme'] : '';
|
196 |
+
$nav_type = ( $this->args['nav'] === 'inline' ) ? 'inline' : 'normal';
|
197 |
+
|
198 |
+
if ( is_object ( $post ) && ! empty( $errors ) ) {
|
199 |
+
delete_post_meta( $post->ID, '_csf_errors_'. $this->unique );
|
200 |
+
}
|
201 |
+
|
202 |
+
wp_nonce_field( 'csf_metabox_nonce', 'csf_metabox_nonce'. $this->unique );
|
203 |
+
|
204 |
+
echo '<div class="csf csf-metabox'. esc_attr( $theme ) .'">';
|
205 |
+
|
206 |
+
echo '<div class="csf-wrapper'. esc_attr( $show_all ) .'">';
|
207 |
+
|
208 |
+
if ( $has_nav ) {
|
209 |
+
|
210 |
+
echo '<div class="csf-nav csf-nav-'. esc_attr( $nav_type ) .' csf-nav-metabox">';
|
211 |
+
|
212 |
+
echo '<ul>';
|
213 |
+
|
214 |
+
$tab_key = 0;
|
215 |
+
|
216 |
+
foreach ( $this->sections as $section ) {
|
217 |
+
|
218 |
+
if ( ! empty( $section['post_type'] ) && ! in_array( $post_type, array_filter( (array) $section['post_type'] ) ) ) {
|
219 |
+
continue;
|
220 |
+
}
|
221 |
+
|
222 |
+
$tab_error = ( ! empty( $errors['sections'][$tab_key] ) ) ? '<i class="csf-label-error csf-error">!</i>' : '';
|
223 |
+
$tab_icon = ( ! empty( $section['icon'] ) ) ? '<i class="csf-tab-icon '. esc_attr( $section['icon'] ) .'"></i>' : '';
|
224 |
+
|
225 |
+
echo '<li><a href="#">'. $tab_icon . $section['title'] . $tab_error .'</a></li>';
|
226 |
+
|
227 |
+
$tab_key++;
|
228 |
+
|
229 |
+
}
|
230 |
+
|
231 |
+
echo '</ul>';
|
232 |
+
|
233 |
+
echo '</div>';
|
234 |
+
|
235 |
+
}
|
236 |
+
|
237 |
+
echo '<div class="csf-content">';
|
238 |
+
|
239 |
+
echo '<div class="csf-sections">';
|
240 |
+
|
241 |
+
$section_key = 0;
|
242 |
+
|
243 |
+
foreach ( $this->sections as $section ) {
|
244 |
+
|
245 |
+
if ( ! empty( $section['post_type'] ) && ! in_array( $post_type, array_filter( (array) $section['post_type'] ) ) ) {
|
246 |
+
continue;
|
247 |
+
}
|
248 |
+
|
249 |
+
$section_onload = ( ! $has_nav ) ? ' csf-onload' : '';
|
250 |
+
$section_class = ( ! empty( $section['class'] ) ) ? ' '. $section['class'] : '';
|
251 |
+
$section_title = ( ! empty( $section['title'] ) ) ? $section['title'] : '';
|
252 |
+
$section_icon = ( ! empty( $section['icon'] ) ) ? '<i class="csf-section-icon '. esc_attr( $section['icon'] ) .'"></i>' : '';
|
253 |
+
|
254 |
+
echo '<div class="csf-section hidden'. esc_attr( $section_onload . $section_class ) .'">';
|
255 |
+
|
256 |
+
echo ( $section_title || $section_icon ) ? '<div class="csf-section-title"><h3>'. $section_icon . $section_title .'</h3></div>' : '';
|
257 |
+
echo ( ! empty( $section['description'] ) ) ? '<div class="csf-field csf-section-description">'. $section['description'] .'</div>' : '';
|
258 |
+
|
259 |
+
if ( ! empty( $section['fields'] ) ) {
|
260 |
+
|
261 |
+
foreach ( $section['fields'] as $field ) {
|
262 |
+
|
263 |
+
if ( ! empty( $field['id'] ) && ! empty( $errors['fields'][$field['id']] ) ) {
|
264 |
+
$field['_error'] = $errors['fields'][$field['id']];
|
265 |
+
}
|
266 |
+
|
267 |
+
if ( ! empty( $field['id'] ) ) {
|
268 |
+
$field['default'] = $this->get_default( $field );
|
269 |
+
}
|
270 |
+
|
271 |
+
CSF::field( $field, $this->get_meta_value( $field ), $this->unique, 'metabox' );
|
272 |
+
|
273 |
+
}
|
274 |
+
|
275 |
+
} else {
|
276 |
+
|
277 |
+
echo '<div class="csf-no-option">'. esc_html__( 'No data available.', 'csf' ) .'</div>';
|
278 |
+
|
279 |
+
}
|
280 |
+
|
281 |
+
echo '</div>';
|
282 |
+
|
283 |
+
$section_key++;
|
284 |
+
|
285 |
+
}
|
286 |
+
|
287 |
+
echo '</div>';
|
288 |
+
|
289 |
+
if ( ! empty( $this->args['show_restore'] ) || ! empty( $this->args['show_reset'] ) ) {
|
290 |
+
|
291 |
+
echo '<div class="csf-sections-reset">';
|
292 |
+
echo '<label>';
|
293 |
+
echo '<input type="checkbox" name="'. esc_attr( $this->unique ) .'[_reset]" />';
|
294 |
+
echo '<span class="button csf-button-reset">'. esc_html__( 'Reset', 'csf' ) .'</span>';
|
295 |
+
echo '<span class="button csf-button-cancel">'. sprintf( '<small>( %s )</small> %s', esc_html__( 'update post', 'csf' ), esc_html__( 'Cancel', 'csf' ) ) .'</span>';
|
296 |
+
echo '</label>';
|
297 |
+
echo '</div>';
|
298 |
+
|
299 |
+
}
|
300 |
+
|
301 |
+
echo '</div>';
|
302 |
+
|
303 |
+
echo ( $has_nav && $nav_type === 'normal' ) ? '<div class="csf-nav-background"></div>' : '';
|
304 |
+
|
305 |
+
echo '<div class="clear"></div>';
|
306 |
+
|
307 |
+
echo '</div>';
|
308 |
+
|
309 |
+
echo '</div>';
|
310 |
+
|
311 |
+
}
|
312 |
+
|
313 |
+
// save metabox
|
314 |
+
public function save_meta_box( $post_id ) {
|
315 |
+
|
316 |
+
$count = 1;
|
317 |
+
$data = array();
|
318 |
+
$errors = array();
|
319 |
+
$noncekey = 'csf_metabox_nonce'. $this->unique;
|
320 |
+
$nonce = ( ! empty( $_POST[ $noncekey ] ) ) ? sanitize_text_field( wp_unslash( $_POST[ $noncekey ] ) ) : '';
|
321 |
+
|
322 |
+
if ( ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) || ! wp_verify_nonce( $nonce, 'csf_metabox_nonce' ) ) {
|
323 |
+
return $post_id;
|
324 |
+
}
|
325 |
+
|
326 |
+
// XSS ok.
|
327 |
+
// No worries, This "POST" requests is sanitizing in the below foreach.
|
328 |
+
$request = ( ! empty( $_POST[ $this->unique ] ) ) ? $_POST[ $this->unique ] : array();
|
329 |
+
|
330 |
+
if ( ! empty( $request ) ) {
|
331 |
+
|
332 |
+
foreach ( $this->sections as $section ) {
|
333 |
+
|
334 |
+
if ( ! empty( $section['fields'] ) ) {
|
335 |
+
|
336 |
+
foreach ( $section['fields'] as $field ) {
|
337 |
+
|
338 |
+
if ( ! empty( $field['id'] ) ) {
|
339 |
+
|
340 |
+
$field_id = $field['id'];
|
341 |
+
$field_value = isset( $request[$field_id] ) ? $request[$field_id] : '';
|
342 |
+
|
343 |
+
// Sanitize "post" request of field.
|
344 |
+
if ( ! isset( $field['sanitize'] ) ) {
|
345 |
+
|
346 |
+
if( is_array( $field_value ) ) {
|
347 |
+
$data[$field_id] = wp_kses_post_deep( $field_value );
|
348 |
+
} else {
|
349 |
+
$data[$field_id] = wp_kses_post( $field_value );
|
350 |
+
}
|
351 |
+
|
352 |
+
} else if( isset( $field['sanitize'] ) && is_callable( $field['sanitize'] ) ) {
|
353 |
+
|
354 |
+
$data[$field_id] = call_user_func( $field['sanitize'], $field_value );
|
355 |
+
|
356 |
+
} else {
|
357 |
+
|
358 |
+
$data[$field_id] = $field_value;
|
359 |
+
|
360 |
+
}
|
361 |
+
|
362 |
+
// Validate "post" request of field.
|
363 |
+
if ( isset( $field['validate'] ) && is_callable( $field['validate'] ) ) {
|
364 |
+
|
365 |
+
$has_validated = call_user_func( $field['validate'], $field_value );
|
366 |
+
|
367 |
+
if ( ! empty( $has_validated ) ) {
|
368 |
+
|
369 |
+
$errors['sections'][$count] = true;
|
370 |
+
$errors['fields'][$field_id] = $has_validated;
|
371 |
+
$data[$field_id] = $this->get_meta_value( $field );
|
372 |
+
|
373 |
+
}
|
374 |
+
|
375 |
+
}
|
376 |
+
|
377 |
+
}
|
378 |
+
|
379 |
+
}
|
380 |
+
|
381 |
+
}
|
382 |
+
|
383 |
+
$count++;
|
384 |
+
|
385 |
+
}
|
386 |
+
|
387 |
+
}
|
388 |
+
|
389 |
+
$data = apply_filters( "csf_{$this->unique}_save", $data, $post_id, $this );
|
390 |
+
|
391 |
+
do_action( "csf_{$this->unique}_save_before", $data, $post_id, $this );
|
392 |
+
|
393 |
+
if ( empty( $data ) || ! empty( $request['_reset'] ) ) {
|
394 |
+
|
395 |
+
if ( $this->args['data_type'] !== 'serialize' ) {
|
396 |
+
foreach ( $data as $key => $value ) {
|
397 |
+
delete_post_meta( $post_id, $key );
|
398 |
+
}
|
399 |
+
} else {
|
400 |
+
delete_post_meta( $post_id, $this->unique );
|
401 |
+
}
|
402 |
+
|
403 |
+
} else {
|
404 |
+
|
405 |
+
if ( $this->args['data_type'] !== 'serialize' ) {
|
406 |
+
foreach ( $data as $key => $value ) {
|
407 |
+
update_post_meta( $post_id, $key, $value );
|
408 |
+
}
|
409 |
+
} else {
|
410 |
+
update_post_meta( $post_id, $this->unique, $data );
|
411 |
+
}
|
412 |
+
|
413 |
+
if ( ! empty( $errors ) ) {
|
414 |
+
update_post_meta( $post_id, '_csf_errors_'. $this->unique, $errors );
|
415 |
+
}
|
416 |
+
|
417 |
+
}
|
418 |
+
|
419 |
+
do_action( "csf_{$this->unique}_saved", $data, $post_id, $this );
|
420 |
+
|
421 |
+
do_action( "csf_{$this->unique}_save_after", $data, $post_id, $this );
|
422 |
+
|
423 |
+
}
|
424 |
+
}
|
425 |
+
}
|
vendor/codestar-framework/classes/nav-menu-options.class.php
CHANGED
@@ -1,255 +1,255 @@
|
|
1 |
-
<?php if ( ! defined( 'ABSPATH' ) ) { die; } // Cannot access directly.
|
2 |
-
/**
|
3 |
-
*
|
4 |
-
* Nav Menu Options Class
|
5 |
-
*
|
6 |
-
* @since 1.0.0
|
7 |
-
* @version 1.0.0
|
8 |
-
*
|
9 |
-
*/
|
10 |
-
if ( ! class_exists( 'CSF_Nav_Menu_Options' ) ) {
|
11 |
-
class CSF_Nav_Menu_Options extends CSF_Abstract{
|
12 |
-
|
13 |
-
// constans
|
14 |
-
public $unique = '';
|
15 |
-
public $abstract = 'menu';
|
16 |
-
public $sections = array();
|
17 |
-
public $args = array(
|
18 |
-
'data_type' => 'serialize',
|
19 |
-
'class' => '',
|
20 |
-
'defaults' => array(),
|
21 |
-
);
|
22 |
-
|
23 |
-
// run menu construct
|
24 |
-
public function __construct( $key, $params ) {
|
25 |
-
|
26 |
-
$this->unique = $key;
|
27 |
-
$this->args = apply_filters( "csf_{$this->unique}_args", wp_parse_args( $params['args'], $this->args ), $this );
|
28 |
-
$this->sections = apply_filters( "csf_{$this->unique}_sections", $params['sections'], $this );
|
29 |
-
|
30 |
-
add_action( 'wp_nav_menu_item_custom_fields', array( $this, 'wp_nav_menu_item_custom_fields' ), 10, 4 );
|
31 |
-
add_action( 'wp_update_nav_menu_item', array( $this, 'wp_update_nav_menu_item' ), 10, 3 );
|
32 |
-
|
33 |
-
add_filter( 'wp_edit_nav_menu_walker', array( $this, 'wp_edit_nav_menu_walker' ), 10, 2 );
|
34 |
-
|
35 |
-
}
|
36 |
-
|
37 |
-
// instance
|
38 |
-
public static function instance( $key, $params ) {
|
39 |
-
return new self( $key, $params );
|
40 |
-
}
|
41 |
-
|
42 |
-
public function wp_edit_nav_menu_walker( $class, $menu_id ) {
|
43 |
-
|
44 |
-
global $wp_version;
|
45 |
-
|
46 |
-
if( version_compare( $wp_version, '5.4.0', '<' ) ) {
|
47 |
-
|
48 |
-
if ( ! class_exists( 'CSF_Walker_Nav_Menu_Edit' ) ) {
|
49 |
-
CSF::include_plugin_file( 'functions/walker.php' );
|
50 |
-
}
|
51 |
-
|
52 |
-
return 'CSF_Walker_Nav_Menu_Edit';
|
53 |
-
|
54 |
-
}
|
55 |
-
|
56 |
-
return $class;
|
57 |
-
|
58 |
-
}
|
59 |
-
|
60 |
-
// get default value
|
61 |
-
public function get_default( $field ) {
|
62 |
-
|
63 |
-
$default = ( isset( $field['default'] ) ) ? $field['default'] : '';
|
64 |
-
$default = ( isset( $this->args['defaults'][$field['id']] ) ) ? $this->args['defaults'][$field['id']] : $default;
|
65 |
-
|
66 |
-
return $default;
|
67 |
-
|
68 |
-
}
|
69 |
-
|
70 |
-
// get meta value
|
71 |
-
public function get_meta_value( $menu_item_id, $field ) {
|
72 |
-
|
73 |
-
$value = null;
|
74 |
-
|
75 |
-
if ( ! empty( $menu_item_id ) && ! empty( $field['id'] ) ) {
|
76 |
-
|
77 |
-
if ( $this->args['data_type'] !== 'serialize' ) {
|
78 |
-
$meta = get_post_meta( $menu_item_id, $field['id'] );
|
79 |
-
$value = ( isset( $meta[0] ) ) ? $meta[0] : null;
|
80 |
-
} else {
|
81 |
-
$meta = get_post_meta( $menu_item_id, $this->unique, true );
|
82 |
-
$value = ( isset( $meta[$field['id']] ) ) ? $meta[$field['id']] : null;
|
83 |
-
}
|
84 |
-
|
85 |
-
}
|
86 |
-
|
87 |
-
$default = ( isset( $field['id'] ) ) ? $this->get_default( $field ) : '';
|
88 |
-
$value = ( isset( $value ) ) ? $value : $default;
|
89 |
-
|
90 |
-
return $value;
|
91 |
-
|
92 |
-
}
|
93 |
-
|
94 |
-
//
|
95 |
-
public function wp_nav_menu_item_custom_fields( $menu_item_id, $item, $depth, $args ) {
|
96 |
-
|
97 |
-
$errors = ( ! empty( $menu_item_id ) ) ? get_post_meta( $menu_item_id, '_csf_errors_'. $this->unique, true ) : array();
|
98 |
-
$errors = ( ! empty( $errors ) ) ? $errors : array();
|
99 |
-
$class = ( $this->args['class'] ) ? ' '. $this->args['class'] : '';
|
100 |
-
|
101 |
-
if ( ! empty( $errors ) ) {
|
102 |
-
delete_post_meta( $menu_item_id, '_csf_errors_'. $this->unique );
|
103 |
-
}
|
104 |
-
|
105 |
-
echo '<div class="csf csf-nav-menu-options'. esc_attr( $class ) .'">';
|
106 |
-
|
107 |
-
foreach ( $this->sections as $section ) {
|
108 |
-
|
109 |
-
$section_icon = ( ! empty( $section['icon'] ) ) ? '<i class="csf-nav-menu-icon '. esc_attr( $section['icon'] ) .'"></i>' : '';
|
110 |
-
$section_title = ( ! empty( $section['title'] ) ) ? $section['title'] : '';
|
111 |
-
|
112 |
-
echo '<div class="csf-fields">';
|
113 |
-
|
114 |
-
echo ( $section_title || $section_icon ) ? '<div class="csf-nav-menu-title"><h4>'. $section_icon . $section_title .'</h4></div>' : '';
|
115 |
-
echo ( ! empty( $section['description'] ) ) ? '<div class="csf-field csf-section-description">'. $section['description'] .'</div>' : '';
|
116 |
-
|
117 |
-
if ( ! empty( $section['fields'] ) ) {
|
118 |
-
|
119 |
-
foreach ( $section['fields'] as $field ) {
|
120 |
-
|
121 |
-
if ( ! empty( $field['id'] ) && ! empty( $errors['fields'][$field['id']] ) ) {
|
122 |
-
$field['_error'] = $errors['fields'][$field['id']];
|
123 |
-
}
|
124 |
-
|
125 |
-
if ( ! empty( $field['id'] ) ) {
|
126 |
-
$field['default'] = $this->get_default( $field );
|
127 |
-
}
|
128 |
-
|
129 |
-
CSF::field( $field, $this->get_meta_value( $menu_item_id, $field ), $this->unique .'['. $menu_item_id .']', 'menu' );
|
130 |
-
|
131 |
-
}
|
132 |
-
|
133 |
-
}
|
134 |
-
|
135 |
-
echo '</div>';
|
136 |
-
|
137 |
-
}
|
138 |
-
|
139 |
-
echo '</div>';
|
140 |
-
|
141 |
-
}
|
142 |
-
|
143 |
-
public function wp_update_nav_menu_item( $menu_id, $menu_item_db_id, $menu_item_args ) {
|
144 |
-
|
145 |
-
$count = 1;
|
146 |
-
$data = array();
|
147 |
-
$errors = array();
|
148 |
-
$noncekey = 'update-nav-menu-nonce';
|
149 |
-
$nonce = ( ! empty( $_POST[ $noncekey ] ) ) ? sanitize_text_field( wp_unslash( $_POST[ $noncekey ] ) ) : '';
|
150 |
-
|
151 |
-
if ( ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) || ! wp_verify_nonce( $nonce, 'update-nav_menu' ) ) {
|
152 |
-
return $menu_item_db_id;
|
153 |
-
}
|
154 |
-
|
155 |
-
// XSS ok.
|
156 |
-
// No worries, This "POST" requests is sanitizing in the below foreach.
|
157 |
-
$request = ( ! empty( $_POST[ $this->unique ][ $menu_item_db_id ] ) ) ? $_POST[ $this->unique ][ $menu_item_db_id ] : array();
|
158 |
-
|
159 |
-
if ( ! empty( $request ) ) {
|
160 |
-
|
161 |
-
foreach ( $this->sections as $section ) {
|
162 |
-
|
163 |
-
if ( ! empty( $section['fields'] ) ) {
|
164 |
-
|
165 |
-
foreach ( $section['fields'] as $field ) {
|
166 |
-
|
167 |
-
if ( ! empty( $field['id'] ) ) {
|
168 |
-
|
169 |
-
$field_id = $field['id'];
|
170 |
-
$field_value = isset( $request[$field_id] ) ? $request[$field_id] : '';
|
171 |
-
|
172 |
-
// Sanitize "post" request of field.
|
173 |
-
if ( ! isset( $field['sanitize'] ) ) {
|
174 |
-
|
175 |
-
if( is_array( $field_value ) ) {
|
176 |
-
$data[$field_id] = wp_kses_post_deep( $field_value );
|
177 |
-
} else {
|
178 |
-
$data[$field_id] = wp_kses_post( $field_value );
|
179 |
-
}
|
180 |
-
|
181 |
-
} else if( isset( $field['sanitize'] ) && is_callable( $field['sanitize'] ) ) {
|
182 |
-
|
183 |
-
$data[$field_id] = call_user_func( $field['sanitize'], $field_value );
|
184 |
-
|
185 |
-
} else {
|
186 |
-
|
187 |
-
$data[$field_id] = $field_value;
|
188 |
-
|
189 |
-
}
|
190 |
-
|
191 |
-
// Validate "post" request of field.
|
192 |
-
if ( isset( $field['validate'] ) && is_callable( $field['validate'] ) ) {
|
193 |
-
|
194 |
-
$has_validated = call_user_func( $field['validate'], $field_value );
|
195 |
-
|
196 |
-
if ( ! empty( $has_validated ) ) {
|
197 |
-
|
198 |
-
$errors['sections'][$count] = true;
|
199 |
-
$errors['fields'][$field_id] = $has_validated;
|
200 |
-
$data[$field_id] = $this->get_meta_value( $menu_item_db_id, $field );
|
201 |
-
|
202 |
-
}
|
203 |
-
|
204 |
-
}
|
205 |
-
|
206 |
-
}
|
207 |
-
|
208 |
-
}
|
209 |
-
|
210 |
-
}
|
211 |
-
|
212 |
-
$count++;
|
213 |
-
|
214 |
-
}
|
215 |
-
|
216 |
-
}
|
217 |
-
|
218 |
-
$data = apply_filters( "csf_{$this->unique}_save", $data, $menu_item_db_id, $this );
|
219 |
-
|
220 |
-
do_action( "csf_{$this->unique}_save_before", $data, $menu_item_db_id, $this );
|
221 |
-
|
222 |
-
if ( empty( $data ) ) {
|
223 |
-
|
224 |
-
if ( $this->args['data_type'] !== 'serialize' ) {
|
225 |
-
foreach ( $data as $key => $value ) {
|
226 |
-
delete_post_meta( $menu_item_db_id, $key );
|
227 |
-
}
|
228 |
-
} else {
|
229 |
-
delete_post_meta( $menu_item_db_id, $this->unique );
|
230 |
-
}
|
231 |
-
|
232 |
-
} else {
|
233 |
-
|
234 |
-
if ( $this->args['data_type'] !== 'serialize' ) {
|
235 |
-
foreach ( $data as $key => $value ) {
|
236 |
-
update_post_meta( $menu_item_db_id, $key, $value );
|
237 |
-
}
|
238 |
-
} else {
|
239 |
-
update_post_meta( $menu_item_db_id, $this->unique, $data );
|
240 |
-
}
|
241 |
-
|
242 |
-
if ( ! empty( $errors ) ) {
|
243 |
-
update_post_meta( $menu_item_db_id, '_csf_errors_'. $this->unique, $errors );
|
244 |
-
}
|
245 |
-
|
246 |
-
}
|
247 |
-
|
248 |
-
do_action( "csf_{$this->unique}_saved", $data, $menu_item_db_id, $this );
|
249 |
-
|
250 |
-
do_action( "csf_{$this->unique}_save_after", $data, $menu_item_db_id, $this );
|
251 |
-
|
252 |
-
}
|
253 |
-
|
254 |
-
}
|
255 |
-
}
|
1 |
+
<?php if ( ! defined( 'ABSPATH' ) ) { die; } // Cannot access directly.
|
2 |
+
/**
|
3 |
+
*
|
4 |
+
* Nav Menu Options Class
|
5 |
+
*
|
6 |
+
* @since 1.0.0
|
7 |
+
* @version 1.0.0
|
8 |
+
*
|
9 |
+
*/
|
10 |
+
if ( ! class_exists( 'CSF_Nav_Menu_Options' ) ) {
|
11 |
+
class CSF_Nav_Menu_Options extends CSF_Abstract{
|
12 |
+
|
13 |
+
// constans
|
14 |
+
public $unique = '';
|
15 |
+
public $abstract = 'menu';
|
16 |
+
public $sections = array();
|
17 |
+
public $args = array(
|
18 |
+
'data_type' => 'serialize',
|
19 |
+
'class' => '',
|
20 |
+
'defaults' => array(),
|
21 |
+
);
|
22 |
+
|
23 |
+
// run menu construct
|
24 |
+
public function __construct( $key, $params ) {
|
25 |
+
|
26 |
+
$this->unique = $key;
|
27 |
+
$this->args = apply_filters( "csf_{$this->unique}_args", wp_parse_args( $params['args'], $this->args ), $this );
|
28 |
+
$this->sections = apply_filters( "csf_{$this->unique}_sections", $params['sections'], $this );
|
29 |
+
|
30 |
+
add_action( 'wp_nav_menu_item_custom_fields', array( $this, 'wp_nav_menu_item_custom_fields' ), 10, 4 );
|
31 |
+
add_action( 'wp_update_nav_menu_item', array( $this, 'wp_update_nav_menu_item' ), 10, 3 );
|
32 |
+
|
33 |
+
add_filter( 'wp_edit_nav_menu_walker', array( $this, 'wp_edit_nav_menu_walker' ), 10, 2 );
|
34 |
+
|
35 |
+
}
|
36 |
+
|
37 |
+
// instance
|
38 |
+
public static function instance( $key, $params ) {
|
39 |
+
return new self( $key, $params );
|
40 |
+
}
|
41 |
+
|
42 |
+
public function wp_edit_nav_menu_walker( $class, $menu_id ) {
|
43 |
+
|
44 |
+
global $wp_version;
|
45 |
+
|
46 |
+
if( version_compare( $wp_version, '5.4.0', '<' ) ) {
|
47 |
+
|
48 |
+
if ( ! class_exists( 'CSF_Walker_Nav_Menu_Edit' ) ) {
|
49 |
+
CSF::include_plugin_file( 'functions/walker.php' );
|
50 |
+
}
|
51 |
+
|
52 |
+
return 'CSF_Walker_Nav_Menu_Edit';
|
53 |
+
|
54 |
+
}
|
55 |
+
|
56 |
+
return $class;
|
57 |
+
|
58 |
+
}
|
59 |
+
|
60 |
+
// get default value
|
61 |
+
public function get_default( $field ) {
|
62 |
+
|
63 |
+
$default = ( isset( $field['default'] ) ) ? $field['default'] : '';
|
64 |
+
$default = ( isset( $this->args['defaults'][$field['id']] ) ) ? $this->args['defaults'][$field['id']] : $default;
|
65 |
+
|
66 |
+
return $default;
|
67 |
+
|
68 |
+
}
|
69 |
+
|
70 |
+
// get meta value
|
71 |
+
public function get_meta_value( $menu_item_id, $field ) {
|
72 |
+
|
73 |
+
$value = null;
|
74 |
+
|
75 |
+
if ( ! empty( $menu_item_id ) && ! empty( $field['id'] ) ) {
|
76 |
+
|
77 |
+
if ( $this->args['data_type'] !== 'serialize' ) {
|
78 |
+
$meta = get_post_meta( $menu_item_id, $field['id'] );
|
79 |
+
$value = ( isset( $meta[0] ) ) ? $meta[0] : null;
|
80 |
+
} else {
|
81 |
+
$meta = get_post_meta( $menu_item_id, $this->unique, true );
|
82 |
+
$value = ( isset( $meta[$field['id']] ) ) ? $meta[$field['id']] : null;
|
83 |
+
}
|
84 |
+
|
85 |
+
}
|
86 |
+
|
87 |
+
$default = ( isset( $field['id'] ) ) ? $this->get_default( $field ) : '';
|
88 |
+
$value = ( isset( $value ) ) ? $value : $default;
|
89 |
+
|
90 |
+
return $value;
|
91 |
+
|
92 |
+
}
|
93 |
+
|
94 |
+
//
|
95 |
+
public function wp_nav_menu_item_custom_fields( $menu_item_id, $item, $depth, $args ) {
|
96 |
+
|
97 |
+
$errors = ( ! empty( $menu_item_id ) ) ? get_post_meta( $menu_item_id, '_csf_errors_'. $this->unique, true ) : array();
|
98 |
+
$errors = ( ! empty( $errors ) ) ? $errors : array();
|
99 |
+
$class = ( $this->args['class'] ) ? ' '. $this->args['class'] : '';
|
100 |
+
|
101 |
+
if ( ! empty( $errors ) ) {
|
102 |
+
delete_post_meta( $menu_item_id, '_csf_errors_'. $this->unique );
|
103 |
+
}
|
104 |
+
|
105 |
+
echo '<div class="csf csf-nav-menu-options'. esc_attr( $class ) .'">';
|
106 |
+
|
107 |
+
foreach ( $this->sections as $section ) {
|
108 |
+
|
109 |
+
$section_icon = ( ! empty( $section['icon'] ) ) ? '<i class="csf-nav-menu-icon '. esc_attr( $section['icon'] ) .'"></i>' : '';
|
110 |
+
$section_title = ( ! empty( $section['title'] ) ) ? $section['title'] : '';
|
111 |
+
|
112 |
+
echo '<div class="csf-fields">';
|
113 |
+
|
114 |
+
echo ( $section_title || $section_icon ) ? '<div class="csf-nav-menu-title"><h4>'. $section_icon . $section_title .'</h4></div>' : '';
|
115 |
+
echo ( ! empty( $section['description'] ) ) ? '<div class="csf-field csf-section-description">'. $section['description'] .'</div>' : '';
|
116 |
+
|
117 |
+
if ( ! empty( $section['fields'] ) ) {
|
118 |
+
|
119 |
+
foreach ( $section['fields'] as $field ) {
|
120 |
+
|
121 |
+
if ( ! empty( $field['id'] ) && ! empty( $errors['fields'][$field['id']] ) ) {
|
122 |
+
$field['_error'] = $errors['fields'][$field['id']];
|
123 |
+
}
|
124 |
+
|
125 |
+
if ( ! empty( $field['id'] ) ) {
|
126 |
+
$field['default'] = $this->get_default( $field );
|
127 |
+
}
|
128 |
+
|
129 |
+
CSF::field( $field, $this->get_meta_value( $menu_item_id, $field ), $this->unique .'['. $menu_item_id .']', 'menu' );
|
130 |
+
|
131 |
+
}
|
132 |
+
|
133 |
+
}
|
134 |
+
|
135 |
+
echo '</div>';
|
136 |
+
|
137 |
+
}
|
138 |
+
|
139 |
+
echo '</div>';
|
140 |
+
|
141 |
+
}
|
142 |
+
|
143 |
+
public function wp_update_nav_menu_item( $menu_id, $menu_item_db_id, $menu_item_args ) {
|
144 |
+
|
145 |
+
$count = 1;
|
146 |
+
$data = array();
|
147 |
+
$errors = array();
|
148 |
+
$noncekey = 'update-nav-menu-nonce';
|
149 |
+
$nonce = ( ! empty( $_POST[ $noncekey ] ) ) ? sanitize_text_field( wp_unslash( $_POST[ $noncekey ] ) ) : '';
|
150 |
+
|
151 |
+
if ( ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) || ! wp_verify_nonce( $nonce, 'update-nav_menu' ) ) {
|
152 |
+
return $menu_item_db_id;
|
153 |
+
}
|
154 |
+
|
155 |
+
// XSS ok.
|
156 |
+
// No worries, This "POST" requests is sanitizing in the below foreach.
|
157 |
+
$request = ( ! empty( $_POST[ $this->unique ][ $menu_item_db_id ] ) ) ? $_POST[ $this->unique ][ $menu_item_db_id ] : array();
|
158 |
+
|
159 |
+
if ( ! empty( $request ) ) {
|
160 |
+
|
161 |
+
foreach ( $this->sections as $section ) {
|
162 |
+
|
163 |
+
if ( ! empty( $section['fields'] ) ) {
|
164 |
+
|
165 |
+
foreach ( $section['fields'] as $field ) {
|
166 |
+
|
167 |
+
if ( ! empty( $field['id'] ) ) {
|
168 |
+
|
169 |
+
$field_id = $field['id'];
|
170 |
+
$field_value = isset( $request[$field_id] ) ? $request[$field_id] : '';
|
171 |
+
|
172 |
+
// Sanitize "post" request of field.
|
173 |
+
if ( ! isset( $field['sanitize'] ) ) {
|
174 |
+
|
175 |
+
if( is_array( $field_value ) ) {
|
176 |
+
$data[$field_id] = wp_kses_post_deep( $field_value );
|
177 |
+
} else {
|
178 |
+
$data[$field_id] = wp_kses_post( $field_value );
|
179 |
+
}
|
180 |
+
|
181 |
+
} else if( isset( $field['sanitize'] ) && is_callable( $field['sanitize'] ) ) {
|
182 |
+
|
183 |
+
$data[$field_id] = call_user_func( $field['sanitize'], $field_value );
|
184 |
+
|
185 |
+
} else {
|
186 |
+
|
187 |
+
$data[$field_id] = $field_value;
|
188 |
+
|
189 |
+
}
|
190 |
+
|
191 |
+
// Validate "post" request of field.
|
192 |
+
if ( isset( $field['validate'] ) && is_callable( $field['validate'] ) ) {
|
193 |
+
|
194 |
+
$has_validated = call_user_func( $field['validate'], $field_value );
|
195 |
+
|
196 |
+
if ( ! empty( $has_validated ) ) {
|
197 |
+
|
198 |
+
$errors['sections'][$count] = true;
|
199 |
+
$errors['fields'][$field_id] = $has_validated;
|
200 |
+
$data[$field_id] = $this->get_meta_value( $menu_item_db_id, $field );
|
201 |
+
|
202 |
+
}
|
203 |
+
|
204 |
+
}
|
205 |
+
|
206 |
+
}
|
207 |
+
|
208 |
+
}
|
209 |
+
|
210 |
+
}
|
211 |
+
|
212 |
+
$count++;
|
213 |
+
|
214 |
+
}
|
215 |
+
|
216 |
+
}
|
217 |
+
|
218 |
+
$data = apply_filters( "csf_{$this->unique}_save", $data, $menu_item_db_id, $this );
|
219 |
+
|
220 |
+
do_action( "csf_{$this->unique}_save_before", $data, $menu_item_db_id, $this );
|
221 |
+
|
222 |
+
if ( empty( $data ) ) {
|
223 |
+
|
224 |
+
if ( $this->args['data_type'] !== 'serialize' ) {
|
225 |
+
foreach ( $data as $key => $value ) {
|
226 |
+
delete_post_meta( $menu_item_db_id, $key );
|
227 |
+
}
|
228 |
+
} else {
|
229 |
+
delete_post_meta( $menu_item_db_id, $this->unique );
|
230 |
+
}
|
231 |
+
|
232 |
+
} else {
|
233 |
+
|
234 |
+
if ( $this->args['data_type'] !== 'serialize' ) {
|
235 |
+
foreach ( $data as $key => $value ) {
|
236 |
+
update_post_meta( $menu_item_db_id, $key, $value );
|
237 |
+
}
|
238 |
+
} else {
|
239 |
+
update_post_meta( $menu_item_db_id, $this->unique, $data );
|
240 |
+
}
|
241 |
+
|
242 |
+
if ( ! empty( $errors ) ) {
|
243 |
+
update_post_meta( $menu_item_db_id, '_csf_errors_'. $this->unique, $errors );
|
244 |
+
}
|
245 |
+
|
246 |
+
}
|
247 |
+
|
248 |
+
do_action( "csf_{$this->unique}_saved", $data, $menu_item_db_id, $this );
|
249 |
+
|
250 |
+
do_action( "csf_{$this->unique}_save_after", $data, $menu_item_db_id, $this );
|
251 |
+
|
252 |
+
}
|
253 |
+
|
254 |
+
}
|
255 |
+
}
|
vendor/codestar-framework/classes/profile-options.class.php
CHANGED
@@ -1,245 +1,245 @@
|
|
1 |
-
<?php if ( ! defined( 'ABSPATH' ) ) { die; } // Cannot access directly.
|
2 |
-
/**
|
3 |
-
*
|
4 |
-
* Profile Option Class
|
5 |
-
*
|
6 |
-
* @since 1.0.0
|
7 |
-
* @version 1.0.0
|
8 |
-
*
|
9 |
-
*/
|
10 |
-
if ( ! class_exists( 'CSF_Profile_Options' ) ) {
|
11 |
-
class CSF_Profile_Options extends CSF_Abstract{
|
12 |
-
|
13 |
-
// constans
|
14 |
-
public $unique = '';
|
15 |
-
public $abstract = 'profile';
|
16 |
-
public $sections = array();
|
17 |
-
public $args = array(
|
18 |
-
'data_type' => 'serialize',
|
19 |
-
'class' => '',
|
20 |
-
'defaults' => array(),
|
21 |
-
);
|
22 |
-
|
23 |
-
// run profile construct
|
24 |
-
public function __construct( $key, $params ) {
|
25 |
-
|
26 |
-
$this->unique = $key;
|
27 |
-
$this->args = apply_filters( "csf_{$this->unique}_args", wp_parse_args( $params['args'], $this->args ), $this );
|
28 |
-
$this->sections = apply_filters( "csf_{$this->unique}_sections", $params['sections'], $this );
|
29 |
-
|
30 |
-
add_action( 'admin_init', array( $this, 'add_profile_options' ) );
|
31 |
-
|
32 |
-
}
|
33 |
-
|
34 |
-
// instance
|
35 |
-
public static function instance( $key, $params ) {
|
36 |
-
return new self( $key, $params );
|
37 |
-
}
|
38 |
-
|
39 |
-
// add profile add/edit fields
|
40 |
-
public function add_profile_options() {
|
41 |
-
|
42 |
-
add_action( 'show_user_profile', array( $this, 'render_profile_form_fields' ) );
|
43 |
-
add_action( 'edit_user_profile', array( $this, 'render_profile_form_fields' ) );
|
44 |
-
|
45 |
-
add_action( 'personal_options_update', array( $this, 'save_profile' ) );
|
46 |
-
add_action( 'edit_user_profile_update', array( $this, 'save_profile' ) );
|
47 |
-
|
48 |
-
}
|
49 |
-
|
50 |
-
// get default value
|
51 |
-
public function get_default( $field ) {
|
52 |
-
|
53 |
-
$default = ( isset( $field['default'] ) ) ? $field['default'] : '';
|
54 |
-
$default = ( isset( $this->args['defaults'][$field['id']] ) ) ? $this->args['defaults'][$field['id']] : $default;
|
55 |
-
|
56 |
-
return $default;
|
57 |
-
|
58 |
-
}
|
59 |
-
|
60 |
-
// get meta value
|
61 |
-
public function get_meta_value( $user_id, $field ) {
|
62 |
-
|
63 |
-
$value = null;
|
64 |
-
|
65 |
-
if ( ! empty( $user_id ) && ! empty( $field['id'] ) ) {
|
66 |
-
|
67 |
-
if ( $this->args['data_type'] !== 'serialize' ) {
|
68 |
-
$meta = get_user_meta( $user_id, $field['id'] );
|
69 |
-
$value = ( isset( $meta[0] ) ) ? $meta[0] : null;
|
70 |
-
} else {
|
71 |
-
$meta = get_user_meta( $user_id, $this->unique, true );
|
72 |
-
$value = ( isset( $meta[$field['id']] ) ) ? $meta[$field['id']] : null;
|
73 |
-
}
|
74 |
-
|
75 |
-
}
|
76 |
-
|
77 |
-
$default = ( isset( $field['id'] ) ) ? $this->get_default( $field ) : '';
|
78 |
-
$value = ( isset( $value ) ) ? $value : $default;
|
79 |
-
|
80 |
-
return $value;
|
81 |
-
|
82 |
-
}
|
83 |
-
|
84 |
-
// render profile add/edit form fields
|
85 |
-
public function render_profile_form_fields( $profileuser ) {
|
86 |
-
|
87 |
-
$is_profile = ( is_object( $profileuser ) && isset( $profileuser->ID ) ) ? true : false;
|
88 |
-
$profile_id = ( $is_profile ) ? $profileuser->ID : 0;
|
89 |
-
$errors = ( ! empty( $profile_id ) ) ? get_user_meta( $profile_id, '_csf_errors_'. $this->unique, true ) : array();
|
90 |
-
$errors = ( ! empty( $errors ) ) ? $errors : array();
|
91 |
-
$class = ( $this->args['class'] ) ? ''. $this->args['class'] : '';
|
92 |
-
|
93 |
-
if ( ! empty( $errors ) ) {
|
94 |
-
delete_user_meta( $profile_id, '_csf_errors_'. $this->unique );
|
95 |
-
}
|
96 |
-
|
97 |
-
echo '<div class="csf csf-profile-options csf-onload'. esc_attr( $class ) .'">';
|
98 |
-
|
99 |
-
wp_nonce_field( 'csf_profile_nonce', 'csf_profile_nonce'. $this->unique );
|
100 |
-
|
101 |
-
foreach ( $this->sections as $section ) {
|
102 |
-
|
103 |
-
$section_icon = ( ! empty( $section['icon'] ) ) ? '<i class="csf-section-icon '. esc_attr( $section['icon'] ) .'"></i>' : '';
|
104 |
-
$section_title = ( ! empty( $section['title'] ) )
|
105 |
-
|
106 |
-
echo ( $section_title || $section_icon ) ? '<h2>'. $section_icon . $section_title .'</h2>' : '';
|
107 |
-
echo ( ! empty( $section['description'] ) ) ? '<div class="csf-field csf-section-description">'. $section['description'] .'</div>' : '';
|
108 |
-
|
109 |
-
if ( ! empty( $section['fields'] ) ) {
|
110 |
-
|
111 |
-
foreach ( $section['fields'] as $field ) {
|
112 |
-
|
113 |
-
if ( ! empty( $field['id'] ) && ! empty( $errors['fields'][$field['id']] ) ) {
|
114 |
-
$field['_error'] = $errors['fields'][$field['id']];
|
115 |
-
}
|
116 |
-
|
117 |
-
if ( ! empty( $field['id'] ) ) {
|
118 |
-
$field['default'] = $this->get_default( $field );
|
119 |
-
}
|
120 |
-
|
121 |
-
CSF::field( $field, $this->get_meta_value( $profile_id, $field ), $this->unique, 'profile' );
|
122 |
-
|
123 |
-
}
|
124 |
-
|
125 |
-
}
|
126 |
-
|
127 |
-
}
|
128 |
-
|
129 |
-
echo '</div>';
|
130 |
-
|
131 |
-
}
|
132 |
-
|
133 |
-
// save profile form fields
|
134 |
-
public function save_profile( $user_id ) {
|
135 |
-
|
136 |
-
$count = 1;
|
137 |
-
$data = array();
|
138 |
-
$errors = array();
|
139 |
-
$noncekey = 'csf_profile_nonce'. $this->unique;
|
140 |
-
$nonce = ( ! empty( $_POST[ $noncekey ] ) ) ? sanitize_text_field( wp_unslash( $_POST[ $noncekey ] ) ) : '';
|
141 |
-
|
142 |
-
if ( ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) || ! wp_verify_nonce( $nonce, 'csf_profile_nonce' ) ) {
|
143 |
-
return $user_id;
|
144 |
-
}
|
145 |
-
|
146 |
-
// XSS ok.
|
147 |
-
// No worries, This "POST" requests is sanitizing in the below foreach.
|
148 |
-
$request = ( ! empty( $_POST[ $this->unique ] ) ) ? $_POST[ $this->unique ] : array();
|
149 |
-
|
150 |
-
if ( ! empty( $request ) ) {
|
151 |
-
|
152 |
-
foreach ( $this->sections as $section ) {
|
153 |
-
|
154 |
-
if ( ! empty( $section['fields'] ) ) {
|
155 |
-
|
156 |
-
foreach ( $section['fields'] as $field ) {
|
157 |
-
|
158 |
-
if ( ! empty( $field['id'] ) ) {
|
159 |
-
|
160 |
-
$field_id = $field['id'];
|
161 |
-
$field_value = isset( $request[$field_id] ) ? $request[$field_id] : '';
|
162 |
-
|
163 |
-
// Sanitize "post" request of field.
|
164 |
-
if ( ! isset( $field['sanitize'] ) ) {
|
165 |
-
|
166 |
-
if( is_array( $field_value ) ) {
|
167 |
-
$data[$field_id] = wp_kses_post_deep( $field_value );
|
168 |
-
} else {
|
169 |
-
$data[$field_id] = wp_kses_post( $field_value );
|
170 |
-
}
|
171 |
-
|
172 |
-
} else if( isset( $field['sanitize'] ) && is_callable( $field['sanitize'] ) ) {
|
173 |
-
|
174 |
-
$data[$field_id] = call_user_func( $field['sanitize'], $field_value );
|
175 |
-
|
176 |
-
} else {
|
177 |
-
|
178 |
-
$data[$field_id] = $field_value;
|
179 |
-
|
180 |
-
}
|
181 |
-
|
182 |
-
// Validate "post" request of field.
|
183 |
-
if ( isset( $field['validate'] ) && is_callable( $field['validate'] ) ) {
|
184 |
-
|
185 |
-
$has_validated = call_user_func( $field['validate'], $field_value );
|
186 |
-
|
187 |
-
if ( ! empty( $has_validated ) ) {
|
188 |
-
|
189 |
-
$errors['sections'][$count] = true;
|
190 |
-
$errors['fields'][$field_id] = $has_validated;
|
191 |
-
$data[$field_id] = $this->get_meta_value( $user_id, $field );
|
192 |
-
|
193 |
-
}
|
194 |
-
|
195 |
-
}
|
196 |
-
|
197 |
-
}
|
198 |
-
|
199 |
-
}
|
200 |
-
|
201 |
-
}
|
202 |
-
|
203 |
-
$count++;
|
204 |
-
|
205 |
-
}
|
206 |
-
|
207 |
-
}
|
208 |
-
|
209 |
-
$data = apply_filters( "csf_{$this->unique}_save", $data, $user_id, $this );
|
210 |
-
|
211 |
-
do_action( "csf_{$this->unique}_save_before", $data, $user_id, $this );
|
212 |
-
|
213 |
-
if ( empty( $data ) ) {
|
214 |
-
|
215 |
-
if ( $this->args['data_type'] !== 'serialize' ) {
|
216 |
-
foreach ( $data as $key => $value ) {
|
217 |
-
delete_user_meta( $user_id, $key );
|
218 |
-
}
|
219 |
-
} else {
|
220 |
-
delete_user_meta( $user_id, $this->unique );
|
221 |
-
}
|
222 |
-
|
223 |
-
} else {
|
224 |
-
|
225 |
-
if ( $this->args['data_type'] !== 'serialize' ) {
|
226 |
-
foreach ( $data as $key => $value ) {
|
227 |
-
update_user_meta( $user_id, $key, $value );
|
228 |
-
}
|
229 |
-
} else {
|
230 |
-
update_user_meta( $user_id, $this->unique, $data );
|
231 |
-
}
|
232 |
-
|
233 |
-
if ( ! empty( $errors ) ) {
|
234 |
-
update_user_meta( $user_id, '_csf_errors_'. $this->unique, $errors );
|
235 |
-
}
|
236 |
-
|
237 |
-
}
|
238 |
-
|
239 |
-
do_action( "csf_{$this->unique}_saved", $data, $user_id, $this );
|
240 |
-
|
241 |
-
do_action( "csf_{$this->unique}_save_after", $data, $user_id, $this );
|
242 |
-
|
243 |
-
}
|
244 |
-
}
|
245 |
-
}
|
1 |
+
<?php if ( ! defined( 'ABSPATH' ) ) { die; } // Cannot access directly.
|
2 |
+
/**
|
3 |
+
*
|
4 |
+
* Profile Option Class
|
5 |
+
*
|
6 |
+
* @since 1.0.0
|
7 |
+
* @version 1.0.0
|
8 |
+
*
|
9 |
+
*/
|
10 |
+
if ( ! class_exists( 'CSF_Profile_Options' ) ) {
|
11 |
+
class CSF_Profile_Options extends CSF_Abstract{
|
12 |
+
|
13 |
+
// constans
|
14 |
+
public $unique = '';
|
15 |
+
public $abstract = 'profile';
|
16 |
+
public $sections = array();
|
17 |
+
public $args = array(
|
18 |
+
'data_type' => 'serialize',
|
19 |
+
'class' => '',
|
20 |
+
'defaults' => array(),
|
21 |
+
);
|
22 |
+
|
23 |
+
// run profile construct
|
24 |
+
public function __construct( $key, $params ) {
|
25 |
+
|
26 |
+
$this->unique = $key;
|
27 |
+
$this->args = apply_filters( "csf_{$this->unique}_args", wp_parse_args( $params['args'], $this->args ), $this );
|
28 |
+
$this->sections = apply_filters( "csf_{$this->unique}_sections", $params['sections'], $this );
|
29 |
+
|
30 |
+
add_action( 'admin_init', array( $this, 'add_profile_options' ) );
|
31 |
+
|
32 |
+
}
|
33 |
+
|
34 |
+
// instance
|
35 |
+
public static function instance( $key, $params ) {
|
36 |
+
return new self( $key, $params );
|
37 |
+
}
|
38 |
+
|
39 |
+
// add profile add/edit fields
|
40 |
+
public function add_profile_options() {
|
41 |
+
|
42 |
+
add_action( 'show_user_profile', array( $this, 'render_profile_form_fields' ) );
|
43 |
+
add_action( 'edit_user_profile', array( $this, 'render_profile_form_fields' ) );
|
44 |
+
|
45 |
+
add_action( 'personal_options_update', array( $this, 'save_profile' ) );
|
46 |
+
add_action( 'edit_user_profile_update', array( $this, 'save_profile' ) );
|
47 |
+
|
48 |
+
}
|
49 |
+
|
50 |
+
// get default value
|
51 |
+
public function get_default( $field ) {
|
52 |
+
|
53 |
+
$default = ( isset( $field['default'] ) ) ? $field['default'] : '';
|
54 |
+
$default = ( isset( $this->args['defaults'][$field['id']] ) ) ? $this->args['defaults'][$field['id']] : $default;
|
55 |
+
|
56 |
+
return $default;
|
57 |
+
|
58 |
+
}
|
59 |
+
|
60 |
+
// get meta value
|
61 |
+
public function get_meta_value( $user_id, $field ) {
|
62 |
+
|
63 |
+
$value = null;
|
64 |
+
|
65 |
+
if ( ! empty( $user_id ) && ! empty( $field['id'] ) ) {
|
66 |
+
|
67 |
+
if ( $this->args['data_type'] !== 'serialize' ) {
|
68 |
+
$meta = get_user_meta( $user_id, $field['id'] );
|
69 |
+
$value = ( isset( $meta[0] ) ) ? $meta[0] : null;
|
70 |
+
} else {
|
71 |
+
$meta = get_user_meta( $user_id, $this->unique, true );
|
72 |
+
$value = ( isset( $meta[$field['id']] ) ) ? $meta[$field['id']] : null;
|
73 |
+
}
|
74 |
+
|
75 |
+
}
|
76 |
+
|
77 |
+
$default = ( isset( $field['id'] ) ) ? $this->get_default( $field ) : '';
|
78 |
+
$value = ( isset( $value ) ) ? $value : $default;
|
79 |
+
|
80 |
+
return $value;
|
81 |
+
|
82 |
+
}
|
83 |
+
|
84 |
+
// render profile add/edit form fields
|
85 |
+
public function render_profile_form_fields( $profileuser ) {
|
86 |
+
|
87 |
+
$is_profile = ( is_object( $profileuser ) && isset( $profileuser->ID ) ) ? true : false;
|
88 |
+
$profile_id = ( $is_profile ) ? $profileuser->ID : 0;
|
89 |
+
$errors = ( ! empty( $profile_id ) ) ? get_user_meta( $profile_id, '_csf_errors_'. $this->unique, true ) : array();
|
90 |
+
$errors = ( ! empty( $errors ) ) ? $errors : array();
|
91 |
+
$class = ( $this->args['class'] ) ? ''. $this->args['class'] : '';
|
92 |
+
|
93 |
+
if ( ! empty( $errors ) ) {
|
94 |
+
delete_user_meta( $profile_id, '_csf_errors_'. $this->unique );
|
95 |
+
}
|
96 |
+
|
97 |
+
echo '<div class="csf csf-profile-options csf-onload'. esc_attr( $class ) .'">';
|
98 |
+
|
99 |
+
wp_nonce_field( 'csf_profile_nonce', 'csf_profile_nonce'. $this->unique );
|
100 |
+
|
101 |
+
foreach ( $this->sections as $section ) {
|
102 |
+
|
103 |
+
$section_icon = ( ! empty( $section['icon'] ) ) ? '<i class="csf-section-icon '. esc_attr( $section['icon'] ) .'"></i>' : '';
|
104 |
+
$section_title = ( ! empty( $section['title'] ) )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|