diff --git a/assets/js/select2/i18n/af.js b/assets/libs/select2/i18n/af.js similarity index 100% rename from assets/js/select2/i18n/af.js rename to assets/libs/select2/i18n/af.js diff --git a/assets/js/select2/i18n/ar.js b/assets/libs/select2/i18n/ar.js similarity index 100% rename from assets/js/select2/i18n/ar.js rename to assets/libs/select2/i18n/ar.js diff --git a/assets/js/select2/i18n/az.js b/assets/libs/select2/i18n/az.js similarity index 100% rename from assets/js/select2/i18n/az.js rename to assets/libs/select2/i18n/az.js diff --git a/assets/js/select2/i18n/bg.js b/assets/libs/select2/i18n/bg.js similarity index 100% rename from assets/js/select2/i18n/bg.js rename to assets/libs/select2/i18n/bg.js diff --git a/assets/js/select2/i18n/bn.js b/assets/libs/select2/i18n/bn.js similarity index 100% rename from assets/js/select2/i18n/bn.js rename to assets/libs/select2/i18n/bn.js diff --git a/assets/js/select2/i18n/bs.js b/assets/libs/select2/i18n/bs.js similarity index 100% rename from assets/js/select2/i18n/bs.js rename to assets/libs/select2/i18n/bs.js diff --git a/assets/js/select2/i18n/ca.js b/assets/libs/select2/i18n/ca.js similarity index 100% rename from assets/js/select2/i18n/ca.js rename to assets/libs/select2/i18n/ca.js diff --git a/assets/js/select2/i18n/cs.js b/assets/libs/select2/i18n/cs.js similarity index 100% rename from assets/js/select2/i18n/cs.js rename to assets/libs/select2/i18n/cs.js diff --git a/assets/js/select2/i18n/da.js b/assets/libs/select2/i18n/da.js similarity index 100% rename from assets/js/select2/i18n/da.js rename to assets/libs/select2/i18n/da.js diff --git a/assets/js/select2/i18n/de.js b/assets/libs/select2/i18n/de.js similarity index 100% rename from assets/js/select2/i18n/de.js rename to assets/libs/select2/i18n/de.js diff --git a/assets/js/select2/i18n/dsb.js b/assets/libs/select2/i18n/dsb.js similarity index 100% rename from assets/js/select2/i18n/dsb.js rename to assets/libs/select2/i18n/dsb.js diff --git a/assets/js/select2/i18n/el.js b/assets/libs/select2/i18n/el.js similarity index 100% rename from assets/js/select2/i18n/el.js rename to assets/libs/select2/i18n/el.js diff --git a/assets/js/select2/i18n/en.js b/assets/libs/select2/i18n/en.js similarity index 100% rename from assets/js/select2/i18n/en.js rename to assets/libs/select2/i18n/en.js diff --git a/assets/js/select2/i18n/es.js b/assets/libs/select2/i18n/es.js similarity index 100% rename from assets/js/select2/i18n/es.js rename to assets/libs/select2/i18n/es.js diff --git a/assets/js/select2/i18n/et.js b/assets/libs/select2/i18n/et.js similarity index 100% rename from assets/js/select2/i18n/et.js rename to assets/libs/select2/i18n/et.js diff --git a/assets/js/select2/i18n/eu.js b/assets/libs/select2/i18n/eu.js similarity index 100% rename from assets/js/select2/i18n/eu.js rename to assets/libs/select2/i18n/eu.js diff --git a/assets/js/select2/i18n/fa.js b/assets/libs/select2/i18n/fa.js similarity index 100% rename from assets/js/select2/i18n/fa.js rename to assets/libs/select2/i18n/fa.js diff --git a/assets/js/select2/i18n/fi.js b/assets/libs/select2/i18n/fi.js similarity index 100% rename from assets/js/select2/i18n/fi.js rename to assets/libs/select2/i18n/fi.js diff --git a/assets/js/select2/i18n/fr.js b/assets/libs/select2/i18n/fr.js similarity index 100% rename from assets/js/select2/i18n/fr.js rename to assets/libs/select2/i18n/fr.js diff --git a/assets/js/select2/i18n/gl.js b/assets/libs/select2/i18n/gl.js similarity index 100% rename from assets/js/select2/i18n/gl.js rename to assets/libs/select2/i18n/gl.js diff --git a/assets/js/select2/i18n/he.js b/assets/libs/select2/i18n/he.js similarity index 100% rename from assets/js/select2/i18n/he.js rename to assets/libs/select2/i18n/he.js diff --git a/assets/js/select2/i18n/hi.js b/assets/libs/select2/i18n/hi.js similarity index 100% rename from assets/js/select2/i18n/hi.js rename to assets/libs/select2/i18n/hi.js diff --git a/assets/js/select2/i18n/hr.js b/assets/libs/select2/i18n/hr.js similarity index 100% rename from assets/js/select2/i18n/hr.js rename to assets/libs/select2/i18n/hr.js diff --git a/assets/js/select2/i18n/hsb.js b/assets/libs/select2/i18n/hsb.js similarity index 100% rename from assets/js/select2/i18n/hsb.js rename to assets/libs/select2/i18n/hsb.js diff --git a/assets/js/select2/i18n/hu.js b/assets/libs/select2/i18n/hu.js similarity index 100% rename from assets/js/select2/i18n/hu.js rename to assets/libs/select2/i18n/hu.js diff --git a/assets/js/select2/i18n/hy.js b/assets/libs/select2/i18n/hy.js similarity index 100% rename from assets/js/select2/i18n/hy.js rename to assets/libs/select2/i18n/hy.js diff --git a/assets/js/select2/i18n/id.js b/assets/libs/select2/i18n/id.js similarity index 100% rename from assets/js/select2/i18n/id.js rename to assets/libs/select2/i18n/id.js diff --git a/assets/js/select2/i18n/is.js b/assets/libs/select2/i18n/is.js similarity index 100% rename from assets/js/select2/i18n/is.js rename to assets/libs/select2/i18n/is.js diff --git a/assets/js/select2/i18n/it.js b/assets/libs/select2/i18n/it.js similarity index 100% rename from assets/js/select2/i18n/it.js rename to assets/libs/select2/i18n/it.js diff --git a/assets/js/select2/i18n/ja.js b/assets/libs/select2/i18n/ja.js similarity index 100% rename from assets/js/select2/i18n/ja.js rename to assets/libs/select2/i18n/ja.js diff --git a/assets/js/select2/i18n/ka.js b/assets/libs/select2/i18n/ka.js similarity index 100% rename from assets/js/select2/i18n/ka.js rename to assets/libs/select2/i18n/ka.js diff --git a/assets/js/select2/i18n/km.js b/assets/libs/select2/i18n/km.js similarity index 100% rename from assets/js/select2/i18n/km.js rename to assets/libs/select2/i18n/km.js diff --git a/assets/js/select2/i18n/ko.js b/assets/libs/select2/i18n/ko.js similarity index 100% rename from assets/js/select2/i18n/ko.js rename to assets/libs/select2/i18n/ko.js diff --git a/assets/js/select2/i18n/lt.js b/assets/libs/select2/i18n/lt.js similarity index 100% rename from assets/js/select2/i18n/lt.js rename to assets/libs/select2/i18n/lt.js diff --git a/assets/js/select2/i18n/lv.js b/assets/libs/select2/i18n/lv.js similarity index 100% rename from assets/js/select2/i18n/lv.js rename to assets/libs/select2/i18n/lv.js diff --git a/assets/js/select2/i18n/mk.js b/assets/libs/select2/i18n/mk.js similarity index 100% rename from assets/js/select2/i18n/mk.js rename to assets/libs/select2/i18n/mk.js diff --git a/assets/js/select2/i18n/ms.js b/assets/libs/select2/i18n/ms.js similarity index 100% rename from assets/js/select2/i18n/ms.js rename to assets/libs/select2/i18n/ms.js diff --git a/assets/js/select2/i18n/nb.js b/assets/libs/select2/i18n/nb.js similarity index 100% rename from assets/js/select2/i18n/nb.js rename to assets/libs/select2/i18n/nb.js diff --git a/assets/js/select2/i18n/ne.js b/assets/libs/select2/i18n/ne.js similarity index 100% rename from assets/js/select2/i18n/ne.js rename to assets/libs/select2/i18n/ne.js diff --git a/assets/js/select2/i18n/nl.js b/assets/libs/select2/i18n/nl.js similarity index 100% rename from assets/js/select2/i18n/nl.js rename to assets/libs/select2/i18n/nl.js diff --git a/assets/js/select2/i18n/pl.js b/assets/libs/select2/i18n/pl.js similarity index 100% rename from assets/js/select2/i18n/pl.js rename to assets/libs/select2/i18n/pl.js diff --git a/assets/js/select2/i18n/ps.js b/assets/libs/select2/i18n/ps.js similarity index 100% rename from assets/js/select2/i18n/ps.js rename to assets/libs/select2/i18n/ps.js diff --git a/assets/js/select2/i18n/pt-BR.js b/assets/libs/select2/i18n/pt-BR.js similarity index 100% rename from assets/js/select2/i18n/pt-BR.js rename to assets/libs/select2/i18n/pt-BR.js diff --git a/assets/js/select2/i18n/pt.js b/assets/libs/select2/i18n/pt.js similarity index 100% rename from assets/js/select2/i18n/pt.js rename to assets/libs/select2/i18n/pt.js diff --git a/assets/js/select2/i18n/ro.js b/assets/libs/select2/i18n/ro.js similarity index 100% rename from assets/js/select2/i18n/ro.js rename to assets/libs/select2/i18n/ro.js diff --git a/assets/js/select2/i18n/ru.js b/assets/libs/select2/i18n/ru.js similarity index 100% rename from assets/js/select2/i18n/ru.js rename to assets/libs/select2/i18n/ru.js diff --git a/assets/js/select2/i18n/sk.js b/assets/libs/select2/i18n/sk.js similarity index 100% rename from assets/js/select2/i18n/sk.js rename to assets/libs/select2/i18n/sk.js diff --git a/assets/js/select2/i18n/sl.js b/assets/libs/select2/i18n/sl.js similarity index 100% rename from assets/js/select2/i18n/sl.js rename to assets/libs/select2/i18n/sl.js diff --git a/assets/js/select2/i18n/sq.js b/assets/libs/select2/i18n/sq.js similarity index 100% rename from assets/js/select2/i18n/sq.js rename to assets/libs/select2/i18n/sq.js diff --git a/assets/js/select2/i18n/sr-Cyrl.js b/assets/libs/select2/i18n/sr-Cyrl.js similarity index 100% rename from assets/js/select2/i18n/sr-Cyrl.js rename to assets/libs/select2/i18n/sr-Cyrl.js diff --git a/assets/js/select2/i18n/sr.js b/assets/libs/select2/i18n/sr.js similarity index 100% rename from assets/js/select2/i18n/sr.js rename to assets/libs/select2/i18n/sr.js diff --git a/assets/js/select2/i18n/sv.js b/assets/libs/select2/i18n/sv.js similarity index 100% rename from assets/js/select2/i18n/sv.js rename to assets/libs/select2/i18n/sv.js diff --git a/assets/js/select2/i18n/th.js b/assets/libs/select2/i18n/th.js similarity index 100% rename from assets/js/select2/i18n/th.js rename to assets/libs/select2/i18n/th.js diff --git a/assets/js/select2/i18n/tk.js b/assets/libs/select2/i18n/tk.js similarity index 100% rename from assets/js/select2/i18n/tk.js rename to assets/libs/select2/i18n/tk.js diff --git a/assets/js/select2/i18n/tr.js b/assets/libs/select2/i18n/tr.js similarity index 100% rename from assets/js/select2/i18n/tr.js rename to assets/libs/select2/i18n/tr.js diff --git a/assets/js/select2/i18n/uk.js b/assets/libs/select2/i18n/uk.js similarity index 100% rename from assets/js/select2/i18n/uk.js rename to assets/libs/select2/i18n/uk.js diff --git a/assets/js/select2/i18n/vi.js b/assets/libs/select2/i18n/vi.js similarity index 100% rename from assets/js/select2/i18n/vi.js rename to assets/libs/select2/i18n/vi.js diff --git a/assets/js/select2/i18n/zh-CN.js b/assets/libs/select2/i18n/zh-CN.js similarity index 100% rename from assets/js/select2/i18n/zh-CN.js rename to assets/libs/select2/i18n/zh-CN.js diff --git a/assets/js/select2/i18n/zh-TW.js b/assets/libs/select2/i18n/zh-TW.js similarity index 100% rename from assets/js/select2/i18n/zh-TW.js rename to assets/libs/select2/i18n/zh-TW.js diff --git a/assets/css/select2/select2.css b/assets/libs/select2/select2.css similarity index 100% rename from assets/css/select2/select2.css rename to assets/libs/select2/select2.css diff --git a/assets/js/select2/select2.full.js b/assets/libs/select2/select2.full.js similarity index 100% rename from assets/js/select2/select2.full.js rename to assets/libs/select2/select2.full.js diff --git a/assets/js/select2/select2.full.min.js b/assets/libs/select2/select2.full.min.js similarity index 100% rename from assets/js/select2/select2.full.min.js rename to assets/libs/select2/select2.full.min.js diff --git a/assets/css/select2/select2.min.css b/assets/libs/select2/select2.min.css similarity index 100% rename from assets/css/select2/select2.min.css rename to assets/libs/select2/select2.min.css diff --git a/includes/admin/class-enqueue.php b/includes/admin/class-enqueue.php index 9f2db15e..e5bc7bb6 100644 --- a/includes/admin/class-enqueue.php +++ b/includes/admin/class-enqueue.php @@ -95,13 +95,12 @@ final class Enqueue extends \um\common\Enqueue { if ( is_rtl() ) { wp_register_style( 'um_members_rtl', UM_URL . 'assets/css/um-members-rtl.css', array( 'um_members' ), UM_VERSION ); } - wp_register_style( 'um_styles', UM_URL . 'assets/css/um-styles.css', array( 'um_ui', 'um_tipsy', 'um_raty', 'um_fonticons_ii', 'um_fonticons_fa' ), UM_VERSION ); + wp_register_style( 'um_styles', UM_URL . 'assets/css/um-styles.css', array( 'um_ui', 'um_tipsy', 'um_raty', 'um_fonticons_ii', 'um_fonticons_fa', 'select2' ), UM_VERSION ); wp_register_style( 'um_profile', UM_URL . 'assets/css/um-profile.css', array(), UM_VERSION ); wp_register_style( 'um_crop', UM_URL . 'assets/css/um-crop.css', array(), UM_VERSION ); wp_register_style( 'um_responsive', UM_URL . 'assets/css/um-responsive.css', array( 'um_profile', 'um_crop' ), UM_VERSION ); wp_register_style( 'um_account', UM_URL . 'assets/css/um-account.css', array(), UM_VERSION ); wp_register_style( 'um_default_css', UM_URL . 'assets/css/um-old-default.css', array(), UM_VERSION ); - wp_register_style( 'select2', UM_URL . 'assets/css/select2/select2' . $suffix . '.css', array(), UM_VERSION ); wp_register_script( 'um_admin_blocks_shortcodes', UM_URL . 'assets/js/um-blocks' . $suffix . '.js', array( 'wp-i18n', 'wp-blocks', 'wp-components' ), UM_VERSION, true ); wp_set_script_translations( 'um_admin_blocks_shortcodes', 'ultimate-member' ); @@ -139,12 +138,11 @@ final class Enqueue extends \um\common\Enqueue { wp_enqueue_script( 'um_admin_blocks_shortcodes' ); - wp_register_script( 'select2', UM_URL . 'assets/js/select2/select2.full' . $suffix . '.js', array( 'jquery', 'jquery-masonry' ), UM_VERSION, true ); wp_register_script( 'um_datetime', UM_URL . 'assets/js/pickadate/picker.js', array( 'jquery' ), UM_VERSION, true ); wp_register_script( 'um_datetime_date', UM_URL . 'assets/js/pickadate/picker.date.js', array( 'jquery', 'um_datetime' ), UM_VERSION, true ); wp_register_script( 'um_datetime_time', UM_URL . 'assets/js/pickadate/picker.time.js', array( 'jquery', 'um_datetime' ), UM_VERSION, true ); wp_register_script( 'um_conditional', UM_URL . 'assets/js/um-conditional' . $suffix . '.js', array( 'jquery', 'wp-hooks' ), UM_VERSION, true ); - wp_register_script( 'um_scripts', UM_URL . 'assets/js/um-scripts' . $suffix . '.js', array( 'jquery', 'wp-util', 'um_conditional', 'um_datetime', 'um_datetime_date', 'um_datetime_time', 'select2' ), UM_VERSION, true ); + wp_register_script( 'um_scripts', UM_URL . 'assets/js/um-scripts' . $suffix . '.js', array( 'jquery', 'wp-util', 'um_conditional', 'um_datetime', 'um_datetime_date', 'um_datetime_time', self::$select2_handle ), UM_VERSION, true ); $max_upload_size = wp_max_upload_size(); if ( ! $max_upload_size ) { $max_upload_size = 0; @@ -181,7 +179,6 @@ final class Enqueue extends \um\common\Enqueue { wp_enqueue_script( 'um_functions' ); wp_enqueue_script( 'um_responsive' ); - wp_enqueue_style( 'select2' ); wp_enqueue_style( 'um_default_css' ); wp_enqueue_style( 'um_members' ); wp_enqueue_style( 'um_styles' ); @@ -220,15 +217,6 @@ final class Enqueue extends \um\common\Enqueue { $suffix = self::get_suffix(); //scripts for FRONTEND PREVIEW - if ( class_exists( 'WooCommerce' ) ) { - wp_dequeue_style( 'select2' ); - wp_deregister_style( 'select2' ); - - wp_dequeue_script( 'select2' ); - wp_deregister_script( 'select2' ); - } - - wp_register_script( 'select2', $this->front_js_baseurl . 'select2/select2.full' . $suffix . '.js', array( 'jquery', 'jquery-masonry' ), '4.0.13', true ); wp_register_script( 'um_jquery_form', $this->front_js_baseurl . 'um-jquery-form' . $suffix . '.js', array( 'jquery' ), UM_VERSION, true ); wp_register_script( 'um_fileupload', $this->front_js_baseurl . 'um-fileupload.js', array( 'jquery' ), UM_VERSION, true ); wp_register_script( 'um_crop', $this->front_js_baseurl . 'um-crop' . $suffix . '.js', array( 'jquery' ), UM_VERSION, true ); @@ -248,11 +236,10 @@ final class Enqueue extends \um\common\Enqueue { } } - wp_register_script( 'um_scripts', $this->front_js_baseurl . 'um-scripts' . $suffix . '.js', array( 'um_functions', 'um_crop', 'um_raty', 'select2', 'um_jquery_form', 'um_fileupload', 'um_datetime', 'um_datetime_date', 'um_datetime_time'/*, 'um_datetime_legacy'*/ ), UM_VERSION, true ); + wp_register_script( 'um_scripts', $this->front_js_baseurl . 'um-scripts' . $suffix . '.js', array( 'um_functions', 'um_crop', 'um_raty', self::$select2_handle, 'um_jquery_form', 'um_fileupload', 'um_datetime', 'um_datetime_date', 'um_datetime_time'/*, 'um_datetime_legacy'*/ ), UM_VERSION, true ); wp_register_script( 'um_responsive', $this->front_js_baseurl . 'um-responsive' . $suffix . '.js', array( 'um_scripts' ), UM_VERSION, true ); wp_register_script( 'um_modal', $this->front_js_baseurl . 'um-modal' . $suffix . '.js', array( 'um_responsive' ), UM_VERSION, true ); - wp_register_style( 'select2', $this->front_css_baseurl . 'select2/select2' . $suffix . '.css', array(), '4.0.13' ); wp_register_style( 'um_datetime', $this->front_css_baseurl . 'pickadate/default.css', array(), UM_VERSION ); wp_register_style( 'um_datetime_date', $this->front_css_baseurl . 'pickadate/default.date.css', array( 'um_datetime' ), UM_VERSION ); wp_register_style( 'um_datetime_time', $this->front_css_baseurl . 'pickadate/default.time.css', array( 'um_datetime' ), ultimatemember_version ); @@ -261,12 +248,12 @@ final class Enqueue extends \um\common\Enqueue { wp_register_style( 'um_crop', $this->front_css_baseurl . 'um-crop.css', array(), ultimatemember_version ); wp_register_style( 'um_responsive', $this->front_css_baseurl . 'um-responsive.css', array(), ultimatemember_version ); wp_register_style( 'um_modal', $this->front_css_baseurl . 'um-modal.css', array(), ultimatemember_version ); - wp_register_style( 'um_styles', $this->front_css_baseurl . 'um-styles.css', array( 'um_ui', 'um_tipsy', 'um_raty', 'um_fonticons_ii', 'um_fonticons_fa' ), ultimatemember_version ); + wp_register_style( 'um_styles', $this->front_css_baseurl . 'um-styles.css', array( 'um_ui', 'um_tipsy', 'um_raty', 'um_fonticons_ii', 'um_fonticons_fa', 'select2' ), ultimatemember_version ); wp_register_style( 'um_members', $this->front_css_baseurl . 'um-members.css', array(), ultimatemember_version ); wp_register_style( 'um_profile', $this->front_css_baseurl . 'um-profile.css', array(), ultimatemember_version ); wp_register_style( 'um_account', $this->front_css_baseurl . 'um-account.css', array(), ultimatemember_version ); wp_register_style( 'um_misc', $this->front_css_baseurl . 'um-misc.css', array(), ultimatemember_version ); - wp_register_style( 'um_default_css', $this->front_css_baseurl . 'um-old-default.css', array( 'um_crop', 'um_tipsy', 'um_raty', 'um_responsive', 'um_modal', 'um_styles', 'um_members', 'um_profile', 'um_account', 'um_misc', 'um_datetime_date', 'um_datetime_time', 'um_scrollbar', 'select2' ), ultimatemember_version ); + wp_register_style( 'um_default_css', $this->front_css_baseurl . 'um-old-default.css', array( 'um_crop', 'um_tipsy', 'um_raty', 'um_responsive', 'um_modal', 'um_styles', 'um_members', 'um_profile', 'um_account', 'um_misc', 'um_datetime_date', 'um_datetime_time', 'um_scrollbar', 'select2' ), UM_VERSION ); wp_enqueue_script( 'um_modal' ); wp_enqueue_style( 'um_default_css' ); @@ -335,21 +322,11 @@ final class Enqueue extends \um\common\Enqueue { */ public function load_forms() { $suffix = self::get_suffix(); - if ( class_exists( 'WooCommerce' ) ) { - wp_dequeue_style( 'select2' ); - wp_deregister_style( 'select2' ); - - wp_dequeue_script( 'select2' ); - wp_deregister_script( 'select2' ); - } - - wp_register_script( 'select2', $this->front_js_baseurl . 'select2/select2.full' . $suffix . '.js', array( 'jquery', 'jquery-masonry' ), '4.0.13', true ); - wp_register_style( 'select2', $this->front_css_baseurl . 'select2/select2' . $suffix . '.css', array(), '4.0.13' ); wp_register_style( 'um_admin_forms', $this->css_url . 'um-admin-forms.css', array( 'wp-color-picker', 'um_ui', 'select2' ), UM_VERSION ); wp_enqueue_style( 'um_admin_forms' ); - wp_register_script( 'um_admin_forms', $this->js_url . 'um-admin-forms.js', array( 'jquery', 'wp-i18n', 'select2' ), UM_VERSION, true ); + wp_register_script( 'um_admin_forms', $this->js_url . 'um-admin-forms.js', array( 'jquery', 'wp-i18n', self::$select2_handle ), UM_VERSION, true ); wp_localize_script( 'um_admin_forms', diff --git a/includes/common/class-enqueue.php b/includes/common/class-enqueue.php index a85d3bc0..319ad997 100644 --- a/includes/common/class-enqueue.php +++ b/includes/common/class-enqueue.php @@ -29,6 +29,13 @@ class Enqueue { 'libs' => UM_URL . 'assets/libs/', ); + /** + * @var string scripts' Standard or Minified versions. + * + * @since 2.6.12 + */ + public static $select2_handle = 'select2'; + /** * Enqueue constructor. * @@ -88,19 +95,37 @@ class Enqueue { // wp_register_script( 'um-helptip', $this->urls['libs'] . 'helptip/helptip' . $this->suffix . '.js', array( 'jquery', 'jquery-ui-tooltip' ), '1.0.0', true ); // wp_register_style( 'um-helptip', $this->urls['libs'] . 'helptip/helptip' . $this->suffix . '.css', array( 'dashicons', 'um_ui' ), '1.0.0' ); -// // Select2 -// $dequeue_select2 = apply_filters( 'um_dequeue_select2_scripts', false ); -// if ( class_exists( 'WooCommerce' ) || $dequeue_select2 ) { -// wp_dequeue_style( 'select2' ); -// wp_deregister_style( 'select2' ); -// -// wp_dequeue_script( 'select2' ); -// wp_deregister_script( 'select2' ); -// } -// wp_register_script( 'select2', $this->urls['libs'] . 'select2/select2.full' . $this->suffix . '.js', array( 'jquery' ), '4.0.13', true ); -// wp_register_style( 'select2', $this->urls['libs'] . 'select2/select2' . $this->suffix . '.css', array(), '4.0.13' ); -// + // Select2 JS. + $dequeue_select2 = apply_filters( 'um_dequeue_select2_scripts', false ); + if ( class_exists( 'WooCommerce' ) || $dequeue_select2 ) { + wp_dequeue_style( self::$select2_handle ); + wp_deregister_style( self::$select2_handle ); + wp_dequeue_script( self::$select2_handle ); + wp_deregister_script( self::$select2_handle ); + } + wp_register_script( self::$select2_handle, self::get_url( 'libs' ) . 'select2/select2.full' . $suffix . '.js', array( 'jquery' ), '4.0.13', true ); + // Load a localized version for Select2. + $locale = get_locale(); + $base_locale = get_locale(); + if ( $locale ) { + if ( ! file_exists( UM_PATH . 'assets/libs/select2/i18n/' . $locale . '.js' ) ) { + $locale = explode( '_', $base_locale ); + $locale = $locale[0]; + + if ( ! file_exists( UM_PATH . 'assets/libs/select2/i18n/' . $locale . '.js' ) ) { + $locale = explode( '_', $base_locale ); + $locale = implode( '-', $locale ); + } + } + + if ( file_exists( UM_PATH . 'assets/libs/select2/i18n/' . $locale . '.js' ) ) { + wp_register_script( 'um_select2_locale', self::get_url( 'libs' ) . 'select2/i18n/' . $locale . '.js', array( 'jquery', self::$select2_handle ), '4.0.13', true ); + self::$select2_handle = 'um_select2_locale'; + } + } + + wp_register_style( 'select2', self::get_url( 'libs' ) . 'select2/select2' . $suffix . '.css', array(), '4.0.13' ); // // // Modal // wp_register_script( 'um-modal', $this->urls['libs'] . 'modal/um-modal' . $this->suffix . '.js', array( 'jquery', 'wp-i18n', 'wp-hooks' ), UM_VERSION, true ); diff --git a/includes/frontend/class-enqueue.php b/includes/frontend/class-enqueue.php index 7f8976ac..0152cd3c 100644 --- a/includes/frontend/class-enqueue.php +++ b/includes/frontend/class-enqueue.php @@ -77,16 +77,7 @@ final class Enqueue extends \um\common\Enqueue { * */ function register_scripts() { - $suffix = self::get_suffix(); - $dequeue_select2 = apply_filters( 'um_dequeue_select2_scripts', false ); - if ( class_exists( 'WooCommerce' ) || $dequeue_select2 ) { - wp_dequeue_style( 'select2' ); - wp_deregister_style( 'select2' ); - - wp_dequeue_script( 'select2'); - wp_deregister_script('select2'); - } - wp_register_script( 'select2', $this->js_baseurl . 'select2/select2.full' . $suffix . '.js', array( 'jquery' ), '4.0.13', true ); + $suffix = self::get_suffix(); wp_register_script( 'um_scrollbar', $this->js_baseurl . 'simplebar' . $suffix . '.js', array( 'jquery' ), UM_VERSION, true ); @@ -118,7 +109,7 @@ final class Enqueue extends \um\common\Enqueue { wp_register_script( 'um-gdpr', $this->js_baseurl . 'um-gdpr' . $suffix . '.js', array( 'jquery' ), UM_VERSION, false ); wp_register_script('um_conditional', $this->js_baseurl . 'um-conditional' . $suffix . '.js', array( 'jquery', 'wp-hooks' ), UM_VERSION, true ); - wp_register_script('um_scripts', $this->js_baseurl . 'um-scripts' . $suffix . '.js', array( 'jquery', 'wp-util', 'um_conditional', 'um_datetime', 'um_datetime_date', 'um_datetime_time', /*'um_datetime_legacy',*/ 'select2', 'um_tipsy', 'um_raty' ), UM_VERSION, true ); + wp_register_script('um_scripts', $this->js_baseurl . 'um-scripts' . $suffix . '.js', array( 'jquery', 'wp-util', 'um_conditional', 'um_datetime', 'um_datetime_date', 'um_datetime_time', /*'um_datetime_legacy',*/ self::$select2_handle, 'um_tipsy', 'um_raty' ), UM_VERSION, true ); /** * UM hook * @@ -140,7 +131,6 @@ final class Enqueue extends \um\common\Enqueue { * ?> */ - $max_upload_size = wp_max_upload_size(); if ( ! $max_upload_size ) { $max_upload_size = 0; @@ -170,7 +160,6 @@ final class Enqueue extends \um\common\Enqueue { public function register_styles() { //FontAwesome and FontIcons styles wp_register_style( 'um_crop', $this->css_baseurl . 'um-crop.css', array(), UM_VERSION ); - wp_register_style( 'select2', $this->css_baseurl . 'select2/select2.min.css', array(), '4.0.13' ); wp_register_style( 'um_fileupload', $this->css_baseurl . 'um-fileupload.css', array(), UM_VERSION ); wp_register_style( 'um_datetime', $this->css_baseurl . 'pickadate/default.css', array(), UM_VERSION ); wp_register_style( 'um_datetime_date', $this->css_baseurl . 'pickadate/default.date.css', array( 'um_datetime' ), UM_VERSION ); @@ -182,7 +171,7 @@ final class Enqueue extends \um\common\Enqueue { wp_register_style( 'um_modal', $this->css_baseurl . 'um-modal.css', array( 'um_crop' ), UM_VERSION ); wp_register_style( 'um_responsive', $this->css_baseurl . 'um-responsive.css', array( 'um_profile', 'um_crop' ), UM_VERSION ); - wp_register_style( 'um_styles', $this->css_baseurl . 'um-styles.css', array( 'um_ui', 'um_tipsy', 'um_raty', 'um_fonticons_ii', 'um_fonticons_fa' ), UM_VERSION ); + wp_register_style( 'um_styles', $this->css_baseurl . 'um-styles.css', array( 'um_ui', 'um_tipsy', 'um_raty', 'um_fonticons_ii', 'um_fonticons_fa', 'select2' ), UM_VERSION ); wp_register_style( 'um_members', $this->css_baseurl . 'um-members.css', array( 'um_styles' ), UM_VERSION ); if ( is_rtl() ) { @@ -245,7 +234,7 @@ final class Enqueue extends \um\common\Enqueue { //$this->load_fonticons(); - $this->load_selectjs(); + // $this->load_selectjs(); $this->load_modal(); @@ -301,10 +290,9 @@ final class Enqueue extends \um\common\Enqueue { /** * Load select-dropdowns JS + * @depecated 2.6.12 */ function load_selectjs() { - wp_enqueue_script( 'select2' ); - wp_enqueue_style( 'select2' ); }