mirror of
https://github.com/10h30/ultimatemember.git
synced 2026-07-11 18:56:10 +09:00
- updated enqueue classes;
- updated admin-navmenu class (removed support WordPress < 5.4);
This commit is contained in:
@@ -86,6 +86,7 @@ if ( ! class_exists( 'um\admin\Admin' ) ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function includes() {
|
public function includes() {
|
||||||
|
$this->enqueue();
|
||||||
$this->notices();
|
$this->notices();
|
||||||
$this->secure();
|
$this->secure();
|
||||||
}
|
}
|
||||||
@@ -2041,6 +2042,18 @@ if ( ! class_exists( 'um\admin\Admin' ) ) {
|
|||||||
return $parent_file;
|
return $parent_file;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @since 2.6.12
|
||||||
|
*
|
||||||
|
* @return Enqueue
|
||||||
|
*/
|
||||||
|
public function enqueue() {
|
||||||
|
if ( empty( UM()->classes['um\admin\enqueue'] ) ) {
|
||||||
|
UM()->classes['um\admin\enqueue'] = new Enqueue();
|
||||||
|
}
|
||||||
|
return UM()->classes['um\admin\enqueue'];
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @since 2.0
|
* @since 2.0
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -0,0 +1,748 @@
|
|||||||
|
<?php
|
||||||
|
namespace um\admin;
|
||||||
|
|
||||||
|
if ( ! defined( 'ABSPATH' ) ) {
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Class Enqueue
|
||||||
|
*
|
||||||
|
* @package um\admin
|
||||||
|
*/
|
||||||
|
final class Enqueue extends \um\common\Enqueue {
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
public $js_url;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
public $css_url;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
public $front_js_baseurl;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
public $front_css_baseurl;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
public $suffix;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var bool
|
||||||
|
*/
|
||||||
|
public $um_cpt_form_screen;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var bool
|
||||||
|
*/
|
||||||
|
public $post_page;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Admin_Enqueue constructor.
|
||||||
|
*/
|
||||||
|
public function __construct() {
|
||||||
|
parent::__construct();
|
||||||
|
|
||||||
|
$this->js_url = UM_URL . 'includes/admin/assets/js/';
|
||||||
|
$this->css_url = UM_URL . 'includes/admin/assets/css/';
|
||||||
|
|
||||||
|
$this->front_js_baseurl = UM_URL . 'assets/js/';
|
||||||
|
$this->front_css_baseurl = UM_URL . 'assets/css/';
|
||||||
|
|
||||||
|
$this->um_cpt_form_screen = false;
|
||||||
|
|
||||||
|
add_action( 'admin_head', array( &$this, 'admin_head' ), 9 );
|
||||||
|
|
||||||
|
add_action( 'admin_enqueue_scripts', array( &$this, 'admin_enqueue_scripts' ) );
|
||||||
|
|
||||||
|
add_filter( 'enter_title_here', array( &$this, 'enter_title_here' ) );
|
||||||
|
|
||||||
|
add_action( 'load-user-new.php', array( &$this, 'enqueue_role_wrapper' ) );
|
||||||
|
add_action( 'load-user-edit.php', array( &$this, 'enqueue_role_wrapper' ) );
|
||||||
|
|
||||||
|
add_action( 'load-post-new.php', array( &$this, 'enqueue_cpt_scripts' ) );
|
||||||
|
add_action( 'load-post.php', array( &$this, 'enqueue_cpt_scripts' ) );
|
||||||
|
|
||||||
|
global $wp_version;
|
||||||
|
if ( version_compare( $wp_version, '5.8', '>=' ) ) {
|
||||||
|
add_filter( 'block_categories_all', array( &$this, 'blocks_category' ), 10, 2 );
|
||||||
|
} else {
|
||||||
|
add_filter( 'block_categories', array( &$this, 'blocks_category' ), 10, 2 );
|
||||||
|
}
|
||||||
|
add_action( 'enqueue_block_assets', array( &$this, 'block_editor' ), 11 );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Enqueue Gutenberg Block Editor assets
|
||||||
|
*/
|
||||||
|
public function block_editor() {
|
||||||
|
$this->register_jquery_ui();
|
||||||
|
wp_register_style( 'um_members', UM_URL . 'assets/css/um-members.css', array( 'um_ui' ), UM_VERSION );
|
||||||
|
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_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( 'um_fonticons_fa', UM_URL . 'assets/css/um-fonticons-fa.css', array(), UM_VERSION );
|
||||||
|
wp_register_style( 'select2', UM_URL . 'assets/css/select2/select2' . $this->suffix . '.css', array(), UM_VERSION );
|
||||||
|
wp_register_style( 'um_fonticons_ii', UM_URL . 'assets/css/um-fonticons-ii.css', array(), UM_VERSION );
|
||||||
|
|
||||||
|
wp_register_script( 'um_admin_blocks_shortcodes', UM_URL . 'assets/js/um-blocks' . $this->suffix . '.js', array( 'wp-i18n', 'wp-blocks', 'wp-components' ), UM_VERSION, true );
|
||||||
|
wp_set_script_translations( 'um_admin_blocks_shortcodes', 'ultimate-member' );
|
||||||
|
|
||||||
|
if ( ! empty( UM()->account()->get_tab_fields( 'notifications', array() ) ) ) {
|
||||||
|
$notifications_enabled = 1;
|
||||||
|
} else {
|
||||||
|
$notifications_enabled = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
$um_account_settings = array(
|
||||||
|
'general' => array(
|
||||||
|
'label' => __( 'General', 'ultimate-member' ),
|
||||||
|
'enabled' => 1,
|
||||||
|
),
|
||||||
|
'password' => array(
|
||||||
|
'label' => __( 'Password', 'ultimate-member' ),
|
||||||
|
'enabled' => UM()->options()->get( 'account_tab_password' ),
|
||||||
|
),
|
||||||
|
'privacy' => array(
|
||||||
|
'label' => __( 'Privacy', 'ultimate-member' ),
|
||||||
|
'enabled' => UM()->options()->get( 'account_tab_privacy' ),
|
||||||
|
),
|
||||||
|
'notifications' => array(
|
||||||
|
'label' => __( 'Notifications', 'ultimate-member' ),
|
||||||
|
'enabled' => $notifications_enabled,
|
||||||
|
),
|
||||||
|
'delete' => array(
|
||||||
|
'label' => __( 'Delete', 'ultimate-member' ),
|
||||||
|
'enabled' => UM()->options()->get( 'account_tab_delete' ),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
$um_account_settings = apply_filters( 'um_extend_account_settings', $um_account_settings );
|
||||||
|
wp_localize_script( 'um_admin_blocks_shortcodes', 'um_account_settings', $um_account_settings );
|
||||||
|
|
||||||
|
wp_enqueue_script( 'um_admin_blocks_shortcodes' );
|
||||||
|
|
||||||
|
wp_register_script( 'select2', UM_URL . 'assets/js/select2/select2.full' . $this->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' . $this->suffix . '.js', array( 'jquery', 'wp-hooks' ), UM_VERSION, true );
|
||||||
|
wp_register_script( 'um_scripts', UM_URL . 'assets/js/um-scripts' . $this->suffix . '.js', array( 'jquery', 'wp-util', 'um_conditional', 'um_datetime', 'um_datetime_date', 'um_datetime_time', 'select2' ), UM_VERSION, true );
|
||||||
|
$max_upload_size = wp_max_upload_size();
|
||||||
|
if ( ! $max_upload_size ) {
|
||||||
|
$max_upload_size = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
$localize_data = apply_filters(
|
||||||
|
'um_enqueue_localize_data',
|
||||||
|
array(
|
||||||
|
'max_upload_size' => $max_upload_size,
|
||||||
|
'nonce' => wp_create_nonce( 'um-frontend-nonce' ),
|
||||||
|
)
|
||||||
|
);
|
||||||
|
wp_localize_script( 'um_scripts', 'um_scripts', $localize_data );
|
||||||
|
|
||||||
|
wp_register_script( 'um_dropdown', UM_URL . 'assets/js/dropdown' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, true );
|
||||||
|
wp_register_script( 'um_members', UM_URL . 'assets/js/um-members' . $this->suffix . '.js', array( 'jquery', 'wp-util', 'jquery-ui-slider', 'um_dropdown', 'wp-hooks', 'jquery-masonry', 'um_scripts' ), UM_VERSION, true );
|
||||||
|
|
||||||
|
wp_register_script( 'um_account', UM_URL . 'assets/js/um-account' . $this->suffix . '.js', array( 'jquery', 'wp-hooks' ), UM_VERSION, true );
|
||||||
|
wp_register_script( 'um_scrollbar', UM_URL . 'assets/js/simplebar' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, true );
|
||||||
|
wp_register_script( 'um_crop', UM_URL . 'assets/js/um-crop' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, true );
|
||||||
|
wp_register_script( 'um_functions', UM_URL . 'assets/js/um-functions' . $this->suffix . '.js', array( 'jquery', 'jquery-masonry', 'wp-util', 'um_scrollbar' ), UM_VERSION, true );
|
||||||
|
wp_register_script( 'um_responsive', UM_URL . 'assets/js/um-responsive' . $this->suffix . '.js', array( 'jquery', 'um_functions', 'um_crop' ), UM_VERSION, true );
|
||||||
|
|
||||||
|
// render blocks
|
||||||
|
wp_enqueue_script( 'um_datetime' );
|
||||||
|
wp_enqueue_script( 'um_datetime_date' );
|
||||||
|
wp_enqueue_script( 'um_datetime_time' );
|
||||||
|
wp_enqueue_script( 'um_conditional' );
|
||||||
|
wp_enqueue_script( 'um_dropdown' );
|
||||||
|
wp_enqueue_script( 'um_members' );
|
||||||
|
wp_enqueue_script( 'um_account' );
|
||||||
|
wp_enqueue_script( 'um_scrollbar' );
|
||||||
|
wp_enqueue_script( 'um_crop' );
|
||||||
|
wp_enqueue_script( 'um_functions' );
|
||||||
|
wp_enqueue_script( 'um_responsive' );
|
||||||
|
|
||||||
|
wp_enqueue_style( 'um_fonticons_ii' );
|
||||||
|
wp_enqueue_style( 'select2' );
|
||||||
|
wp_enqueue_style( 'um_default_css' );
|
||||||
|
wp_enqueue_style( 'um_fonticons_fa' );
|
||||||
|
wp_enqueue_style( 'um_members' );
|
||||||
|
wp_enqueue_style( 'um_styles' );
|
||||||
|
wp_enqueue_style( 'um_profile' );
|
||||||
|
wp_enqueue_style( 'um_crop' );
|
||||||
|
wp_enqueue_style( 'um_responsive' );
|
||||||
|
wp_enqueue_style( 'um_account' );
|
||||||
|
|
||||||
|
$custom_css = '.um{opacity: 1;}.um_request_name {display: none !important;}';
|
||||||
|
|
||||||
|
wp_add_inline_style( 'um_styles', $custom_css );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public function enqueue_role_wrapper() {
|
||||||
|
add_action( 'admin_enqueue_scripts', array( &$this, 'load_role_wrapper' ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public function enqueue_cpt_scripts() {
|
||||||
|
// phpcs:ignore WordPress.Security.NonceVerification
|
||||||
|
if ( ( isset( $_GET['post_type'] ) && 'um_form' === sanitize_key( $_GET['post_type'] ) ) || ( isset( $_GET['post'] ) && 'um_form' === get_post_type( absint( $_GET['post'] ) ) ) ) {
|
||||||
|
$this->um_cpt_form_screen = true;
|
||||||
|
add_action( 'admin_footer', array( $this, 'admin_footer_scripts' ), 20 );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public function enqueue_frontend_preview_assets() {
|
||||||
|
//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' . $this->suffix . '.js', array( 'jquery', 'jquery-masonry' ), '4.0.13', true );
|
||||||
|
wp_register_script( 'um_jquery_form', $this->front_js_baseurl . 'um-jquery-form' . $this->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' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, true );
|
||||||
|
wp_register_script( 'um_tipsy', $this->front_js_baseurl . 'um-tipsy' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, true );
|
||||||
|
wp_register_script( 'um_functions', $this->front_js_baseurl . 'um-functions' . $this->suffix . '.js', array( 'jquery', 'um_tipsy', 'um_scrollbar' ), UM_VERSION, true );
|
||||||
|
|
||||||
|
wp_register_script( 'um_datetime', $this->front_js_baseurl . 'pickadate/picker.js', array( 'jquery' ), UM_VERSION, true );
|
||||||
|
wp_register_script( 'um_datetime_date', $this->front_js_baseurl . 'pickadate/picker.date.js', array( 'jquery', 'um_datetime' ), UM_VERSION, true );
|
||||||
|
wp_register_script( 'um_datetime_time', $this->front_js_baseurl . 'pickadate/picker.time.js', array( 'jquery', 'um_datetime' ), UM_VERSION, true );
|
||||||
|
//wp_register_script( 'um_datetime_legacy', $this->front_js_baseurl . 'pickadate/legacy.js', array( 'jquery', 'um_datetime' ), UM_VERSION, true );
|
||||||
|
// load a localized version for date/time
|
||||||
|
$locale = get_locale();
|
||||||
|
if ( $locale ) {
|
||||||
|
if ( file_exists( WP_LANG_DIR . '/plugins/ultimate-member/assets/js/pickadate/' . $locale . '.js' ) ) {
|
||||||
|
wp_register_script( 'um_datetime_locale', content_url() . '/languages/plugins/ultimate-member/assets/js/pickadate/' . $locale . '.js', array( 'jquery', 'um_datetime' ), UM_VERSION, true );
|
||||||
|
} elseif ( file_exists( UM_PATH . 'assets/js/pickadate/translations/' . $locale . '.js' ) ) {
|
||||||
|
wp_register_script( 'um_datetime_locale', UM_URL . 'assets/js/pickadate/translations/' . $locale . '.js', array( 'jquery', 'um_datetime' ), UM_VERSION, true );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
wp_register_script( 'um_scripts', $this->front_js_baseurl . 'um-scripts' . $this->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_responsive', $this->front_js_baseurl . 'um-responsive' . $this->suffix . '.js', array( 'um_scripts' ), UM_VERSION, true );
|
||||||
|
wp_register_script( 'um_modal', $this->front_js_baseurl . 'um-modal' . $this->suffix . '.js', array( 'um_responsive' ), UM_VERSION, true );
|
||||||
|
|
||||||
|
wp_register_style( 'select2', $this->front_css_baseurl . 'select2/select2' . $this->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 );
|
||||||
|
|
||||||
|
wp_register_style( 'um_scrollbar', $this->front_css_baseurl . 'simplebar.css', array(), ultimatemember_version );
|
||||||
|
wp_register_style( 'um_crop', $this->front_css_baseurl . 'um-crop.css', array(), ultimatemember_version );
|
||||||
|
wp_register_style( 'um_tipsy', $this->front_css_baseurl . 'um-tipsy.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(), 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_enqueue_script( 'um_modal' );
|
||||||
|
wp_enqueue_style( 'um_default_css' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load js for Add/Edit User form
|
||||||
|
*/
|
||||||
|
public function load_role_wrapper() {
|
||||||
|
wp_register_script( 'um_admin_role_wrapper', $this->js_url . 'um-admin-role-wrapper.js', array( 'jquery' ), ultimatemember_version, true );
|
||||||
|
$localize_roles_data = get_option( 'um_roles', array() );
|
||||||
|
wp_localize_script( 'um_admin_role_wrapper', 'um_roles', (array) $localize_roles_data );
|
||||||
|
wp_enqueue_script( 'um_admin_role_wrapper' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Enter title placeholder
|
||||||
|
*
|
||||||
|
* @param $title
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function enter_title_here( $title ) {
|
||||||
|
$screen = get_current_screen();
|
||||||
|
if ( 'um_directory' === $screen->post_type ) {
|
||||||
|
$title = __( 'e.g. Member Directory', 'ultimate-member' );
|
||||||
|
} elseif ( 'um_form' === $screen->post_type ) {
|
||||||
|
$title = __( 'e.g. New Registration Form', 'ultimate-member' );
|
||||||
|
}
|
||||||
|
return $title;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Runs on admin head
|
||||||
|
*/
|
||||||
|
public function admin_head() {
|
||||||
|
if ( UM()->admin()->is_plugin_post_type() ) { ?>
|
||||||
|
<style type="text/css">
|
||||||
|
.um-admin.post-type-<?php echo esc_attr( get_post_type() ); ?> div#slugdiv,
|
||||||
|
.um-admin.post-type-<?php echo esc_attr( get_post_type() ); ?> div#minor-publishing,
|
||||||
|
.um-admin.post-type-<?php echo esc_attr( get_post_type() ); ?> div#screen-meta-links
|
||||||
|
{display:none}
|
||||||
|
</style>
|
||||||
|
<?php
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load Form
|
||||||
|
*/
|
||||||
|
public function load_form() {
|
||||||
|
wp_register_style( 'um_admin_form', $this->css_url . 'um-admin-form.css', array(), ultimatemember_version );
|
||||||
|
wp_enqueue_style( 'um_admin_form' );
|
||||||
|
|
||||||
|
wp_register_script( 'um_admin_form', $this->js_url . 'um-admin-form.js', array( 'jquery' ), ultimatemember_version, true );
|
||||||
|
wp_enqueue_script( 'um_admin_form' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load Forms
|
||||||
|
*/
|
||||||
|
public function load_forms() {
|
||||||
|
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' . $this->suffix . '.js', array( 'jquery', 'jquery-masonry' ), '4.0.13', true );
|
||||||
|
wp_register_style( 'select2', $this->front_css_baseurl . 'select2/select2' . $this->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_localize_script(
|
||||||
|
'um_admin_forms',
|
||||||
|
'um_forms_data',
|
||||||
|
array(
|
||||||
|
'successfully_redirect' => add_query_arg(
|
||||||
|
array(
|
||||||
|
'page' => 'um_options',
|
||||||
|
'tab' => 'misc',
|
||||||
|
'msg' => 'updated',
|
||||||
|
),
|
||||||
|
admin_url( 'admin.php' )
|
||||||
|
),
|
||||||
|
'md_sorting_data_types' => UM()->member_directory()->sort_data_types,
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
wp_enqueue_script( 'um_admin_forms' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load dashboard
|
||||||
|
*/
|
||||||
|
public function load_dashboard() {
|
||||||
|
wp_register_style( 'um_admin_dashboard', $this->css_url . 'um-admin-dashboard.css', array(), ultimatemember_version );
|
||||||
|
wp_enqueue_style( 'um_admin_dashboard' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load settings
|
||||||
|
*/
|
||||||
|
public function load_settings() {
|
||||||
|
wp_register_style( 'um_admin_settings', $this->css_url . 'um-admin-settings.css', array(), ultimatemember_version );
|
||||||
|
wp_enqueue_style( 'um_admin_settings' );
|
||||||
|
|
||||||
|
wp_register_script( 'um_admin_settings', $this->js_url . 'um-admin-settings.js', array( 'jquery', 'wp-i18n' ), ultimatemember_version, true );
|
||||||
|
wp_enqueue_script( 'um_admin_settings' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load modal
|
||||||
|
*/
|
||||||
|
public function load_modal() {
|
||||||
|
wp_register_style( 'um_admin_modal', $this->css_url . 'um-admin-modal.css', array( 'wp-color-picker' ), ultimatemember_version );
|
||||||
|
wp_enqueue_style( 'um_admin_modal' );
|
||||||
|
|
||||||
|
wp_register_script( 'um_admin_modal', $this->js_url . 'um-admin-modal.js', array( 'jquery', 'editor', 'wp-util', 'wp-color-picker', 'wp-tinymce', 'wp-i18n', 'jquery-ui-tooltip', 'um_admin_scripts' ), ultimatemember_version, true );
|
||||||
|
wp_enqueue_script( 'um_admin_modal' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Field Processing
|
||||||
|
*/
|
||||||
|
public function load_field() {
|
||||||
|
wp_register_script( 'um_admin_field', $this->js_url . 'um-admin-field.js', array( 'jquery', 'wp-util', 'wp-i18n' ), ultimatemember_version, true );
|
||||||
|
wp_enqueue_script( 'um_admin_field' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load Builder
|
||||||
|
*/
|
||||||
|
public function load_builder() {
|
||||||
|
wp_register_script( 'um_admin_builder', $this->js_url . 'um-admin-builder.js', array( 'jquery', 'wp-util' ), ultimatemember_version, true );
|
||||||
|
wp_enqueue_script( 'um_admin_builder' );
|
||||||
|
|
||||||
|
//hide footer text on add/edit UM Forms
|
||||||
|
//layouts crashed because we load and hide metaboxes
|
||||||
|
//and WP calculate page height
|
||||||
|
$hide_footer = false;
|
||||||
|
global $pagenow, $post;
|
||||||
|
// phpcs:ignore WordPress.Security.NonceVerification
|
||||||
|
if ( ( 'post.php' === $pagenow || 'post-new.php' === $pagenow ) && ( ( isset( $_GET['post_type'] ) && 'um_form' === sanitize_key( $_GET['post_type'] ) ) || ( isset( $post->post_type ) && 'um_form' === $post->post_type ) ) ) {
|
||||||
|
$hide_footer = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
$localize_data = array(
|
||||||
|
'hide_footer' => $hide_footer,
|
||||||
|
);
|
||||||
|
wp_localize_script( 'um_admin_builder', 'um_admin_builder_data', $localize_data );
|
||||||
|
|
||||||
|
wp_register_script( 'um_admin_dragdrop', $this->js_url . 'um-admin-dragdrop.js', array( 'jquery', 'wp-util' ), ultimatemember_version, true );
|
||||||
|
wp_enqueue_script( 'um_admin_dragdrop' );
|
||||||
|
|
||||||
|
wp_register_style( 'um_admin_builder', $this->css_url . 'um-admin-builder.css', array(), ultimatemember_version );
|
||||||
|
wp_enqueue_style( 'um_admin_builder' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load core WP styles/scripts
|
||||||
|
*/
|
||||||
|
public function load_core_wp() {
|
||||||
|
wp_enqueue_script( 'jquery-ui-draggable' );
|
||||||
|
wp_enqueue_script( 'jquery-ui-sortable' );
|
||||||
|
|
||||||
|
wp_enqueue_script( 'jquery-ui-tooltip' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load Admin Styles
|
||||||
|
*/
|
||||||
|
public function load_css() {
|
||||||
|
wp_register_style( 'um_admin_menu', $this->css_url . 'um-admin-menu.css', array(), ultimatemember_version );
|
||||||
|
wp_enqueue_style( 'um_admin_menu' );
|
||||||
|
|
||||||
|
wp_register_style( 'um_admin_columns', $this->css_url . 'um-admin-columns.css', array(), ultimatemember_version );
|
||||||
|
wp_enqueue_style( 'um_admin_columns' );
|
||||||
|
|
||||||
|
wp_register_style( 'um_admin_misc', $this->css_url . 'um-admin-misc.css', array(), ultimatemember_version );
|
||||||
|
wp_enqueue_style( 'um_admin_misc' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load functions js
|
||||||
|
*/
|
||||||
|
public function load_functions() {
|
||||||
|
wp_register_script( 'um_scrollbar', UM_URL . 'assets/js/simplebar.js', array( 'jquery' ), ultimatemember_version, true );
|
||||||
|
wp_register_script( 'um_functions', UM_URL . 'assets/js/um-functions.js', array( 'jquery', 'jquery-masonry', 'wp-util', 'um_scrollbar' ), ultimatemember_version, true );
|
||||||
|
wp_enqueue_script( 'um_functions' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load Fonticons
|
||||||
|
*/
|
||||||
|
public function load_fonticons() {
|
||||||
|
wp_register_style( 'um_fonticons_ii', UM_URL . 'assets/css/um-fonticons-ii.css', array(), ultimatemember_version );
|
||||||
|
wp_enqueue_style( 'um_fonticons_ii' );
|
||||||
|
|
||||||
|
wp_register_style( 'um_fonticons_fa', UM_URL . 'assets/css/um-fonticons-fa.css', array(), ultimatemember_version );
|
||||||
|
wp_enqueue_style( 'um_fonticons_fa' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load global css
|
||||||
|
*/
|
||||||
|
public function load_global_scripts() {
|
||||||
|
wp_register_script( 'um_admin_global', $this->js_url . 'um-admin-global.js', array( 'jquery' ), ultimatemember_version, true );
|
||||||
|
wp_enqueue_script( 'um_admin_global' );
|
||||||
|
|
||||||
|
wp_register_style( 'um_admin_global', $this->css_url . 'um-admin-global.css', array(), ultimatemember_version );
|
||||||
|
wp_enqueue_style( 'um_admin_global' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load jQuery custom code
|
||||||
|
*/
|
||||||
|
public function load_custom_scripts() {
|
||||||
|
wp_register_script( 'um_datetime', $this->front_js_baseurl . 'pickadate/picker.js', array( 'jquery' ), ultimatemember_version, true );
|
||||||
|
wp_register_script( 'um_datetime_date', $this->front_js_baseurl . 'pickadate/picker.date.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true );
|
||||||
|
wp_register_script( 'um_datetime_time', $this->front_js_baseurl . 'pickadate/picker.time.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true );
|
||||||
|
//wp_register_script( 'um_datetime_legacy', $this->front_js_baseurl . 'pickadate/legacy.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true );
|
||||||
|
// load a localized version for date/time
|
||||||
|
$locale = get_locale();
|
||||||
|
if ( $locale ) {
|
||||||
|
if ( file_exists( WP_LANG_DIR . '/plugins/ultimate-member/assets/js/pickadate/' . $locale . '.js' ) ) {
|
||||||
|
wp_register_script( 'um_datetime_locale', content_url() . '/languages/plugins/ultimate-member/assets/js/pickadate/' . $locale . '.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true );
|
||||||
|
} elseif ( file_exists( UM_PATH . 'assets/js/pickadate/translations/' . $locale . '.js' ) ) {
|
||||||
|
wp_register_script( 'um_datetime_locale', UM_URL . 'assets/js/pickadate/translations/' . $locale . '.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
wp_register_style( 'um_datetime', $this->front_css_baseurl . 'pickadate/default.css', array(), ultimatemember_version );
|
||||||
|
wp_register_style( 'um_datetime_date', $this->front_css_baseurl . 'pickadate/default.date.css', array( 'um_datetime' ), ultimatemember_version );
|
||||||
|
wp_register_style( 'um_datetime_time', $this->front_css_baseurl . 'pickadate/default.time.css', array( 'um_datetime' ), ultimatemember_version );
|
||||||
|
|
||||||
|
wp_enqueue_style( 'um_datetime_date' );
|
||||||
|
wp_enqueue_style( 'um_datetime_time' );
|
||||||
|
|
||||||
|
wp_register_script( 'um_admin_scripts', $this->js_url . 'um-admin-scripts.js', array( 'jquery', 'wp-util', 'wp-color-picker', 'um_datetime', 'um_datetime_date', 'um_datetime_time'/*, 'um_datetime_legacy'*/ ), ultimatemember_version, true );
|
||||||
|
wp_enqueue_script( 'um_admin_scripts' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load jQuery custom code
|
||||||
|
*/
|
||||||
|
public function load_nav_manus_scripts() {
|
||||||
|
wp_register_script( 'um_admin_nav_manus', $this->js_url . 'um-admin-nav-menu.js', array( 'jquery', 'wp-util' ), ultimatemember_version, true );
|
||||||
|
wp_enqueue_script( 'um_admin_nav_manus' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load AJAX
|
||||||
|
*/
|
||||||
|
public function load_ajax_js() {
|
||||||
|
wp_register_script( 'um_admin_ajax', $this->js_url . 'um-admin-ajax.js', array( 'jquery', 'wp-util' ), ultimatemember_version, true );
|
||||||
|
wp_enqueue_script( 'um_admin_ajax' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load Gutenberg scripts
|
||||||
|
*/
|
||||||
|
public function load_gutenberg_js() {
|
||||||
|
/** This filter is documented in includes/core/class-blocks.php */
|
||||||
|
$disable_script = apply_filters( 'um_disable_blocks_script', false );
|
||||||
|
if ( $disable_script ) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
$restricted_blocks = UM()->options()->get( 'restricted_blocks' );
|
||||||
|
if ( empty( $restricted_blocks ) ) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
wp_register_script( 'um_block_js', $this->js_url . 'um-admin-blocks.js', array( 'wp-i18n', 'wp-blocks', 'wp-components', 'wp-hooks' ), ultimatemember_version, true );
|
||||||
|
wp_set_script_translations( 'um_block_js', 'ultimate-member' );
|
||||||
|
|
||||||
|
$restrict_options = array();
|
||||||
|
$roles = UM()->roles()->get_roles( false );
|
||||||
|
if ( ! empty( $roles ) ) {
|
||||||
|
foreach ( $roles as $role_key => $title ) {
|
||||||
|
$restrict_options[] = array(
|
||||||
|
'label' => $title,
|
||||||
|
'value' => $role_key,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
wp_localize_script( 'um_block_js', 'um_restrict_roles', $restrict_options );
|
||||||
|
|
||||||
|
wp_enqueue_script( 'um_block_js' );
|
||||||
|
|
||||||
|
do_action( 'um_load_gutenberg_js' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add Gutenberg category for UM shortcodes
|
||||||
|
*
|
||||||
|
* @param array $categories
|
||||||
|
* @param \WP_Block_Editor_Context $context
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public function blocks_category( $categories, $context ) {
|
||||||
|
$enable_blocks = UM()->options()->get( 'enable_blocks' );
|
||||||
|
if ( empty( $enable_blocks ) ) {
|
||||||
|
return $categories;
|
||||||
|
}
|
||||||
|
|
||||||
|
return array_merge(
|
||||||
|
$categories,
|
||||||
|
array(
|
||||||
|
array(
|
||||||
|
'slug' => 'um-blocks',
|
||||||
|
'title' => __( 'Ultimate Member Blocks', 'ultimate-member' ),
|
||||||
|
),
|
||||||
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load localize scripts
|
||||||
|
*/
|
||||||
|
public function load_localize_scripts() {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* UM hook
|
||||||
|
*
|
||||||
|
* @type filter
|
||||||
|
* @title um_admin_enqueue_localize_data
|
||||||
|
* @description Extend localize data at wp-admin side
|
||||||
|
* @input_vars
|
||||||
|
* [{"var":"$localize_data","type":"array","desc":"Localize Data"}]
|
||||||
|
* @change_log
|
||||||
|
* ["Since: 2.0"]
|
||||||
|
* @usage add_filter( 'um_admin_enqueue_localize_data', 'function_name', 10, 1 );
|
||||||
|
* @example
|
||||||
|
* <?php
|
||||||
|
* add_filter( 'um_admin_enqueue_localize_data', 'my_admin_enqueue_localize_data', 10, 1 );
|
||||||
|
* function my_admin_enqueue_localize_data( $localize_data ) {
|
||||||
|
* // your code here
|
||||||
|
* return $localize_data;
|
||||||
|
* }
|
||||||
|
* ?>
|
||||||
|
*/
|
||||||
|
$localize_data = apply_filters( 'um_admin_enqueue_localize_data', array( 'nonce' => wp_create_nonce( 'um-admin-nonce' ) ) );
|
||||||
|
|
||||||
|
wp_localize_script( 'um_admin_global', 'um_admin_scripts', $localize_data );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Enqueue scripts and styles
|
||||||
|
*/
|
||||||
|
public function admin_enqueue_scripts() {
|
||||||
|
if ( UM()->admin()->is_um_screen() ) {
|
||||||
|
|
||||||
|
/*if ( get_post_type() != 'shop_order' ) {
|
||||||
|
UM()->enqueue()->wp_enqueue_scripts();
|
||||||
|
}*/
|
||||||
|
|
||||||
|
$modal_deps = array( 'um-admin-scripts' );
|
||||||
|
if ( $this->um_cpt_form_screen ) {
|
||||||
|
$this->enqueue_frontend_preview_assets();
|
||||||
|
$modal_deps[] = 'um-responsive';
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->load_functions();
|
||||||
|
$this->load_global_scripts();
|
||||||
|
$this->load_form();
|
||||||
|
$this->load_forms();
|
||||||
|
$this->load_custom_scripts();
|
||||||
|
$this->load_modal();
|
||||||
|
$this->load_dashboard();
|
||||||
|
$this->load_settings();
|
||||||
|
$this->load_field();
|
||||||
|
$this->load_builder();
|
||||||
|
$this->load_css();
|
||||||
|
$this->load_core_wp();
|
||||||
|
$this->load_ajax_js();
|
||||||
|
$this->load_fonticons();
|
||||||
|
$this->load_localize_scripts();
|
||||||
|
|
||||||
|
//scripts for frontend preview
|
||||||
|
UM()->enqueue()->load_imagecrop();
|
||||||
|
UM()->enqueue()->load_css();
|
||||||
|
UM()->enqueue()->load_tipsy();
|
||||||
|
UM()->enqueue()->load_modal();
|
||||||
|
UM()->enqueue()->load_responsive();
|
||||||
|
|
||||||
|
wp_register_script( 'um_raty', UM_URL . 'assets/js/um-raty' . UM()->enqueue()->suffix . '.js', array( 'jquery', 'wp-i18n' ), ultimatemember_version, true );
|
||||||
|
wp_register_style( 'um_raty', UM_URL . 'assets/css/um-raty.css', array(), ultimatemember_version );
|
||||||
|
|
||||||
|
wp_register_style( 'um_default_css', UM_URL . 'assets/css/um-old-default.css', '', ultimatemember_version, 'all' );
|
||||||
|
wp_enqueue_style( 'um_default_css' );
|
||||||
|
|
||||||
|
if ( is_rtl() ) {
|
||||||
|
wp_register_style( 'um_admin_rtl', $this->css_url . 'um-admin-rtl.css', array(), ultimatemember_version );
|
||||||
|
wp_enqueue_style( 'um_admin_rtl' );
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
|
||||||
|
$this->load_global_scripts();
|
||||||
|
$this->load_localize_scripts();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
global $wp_version, $current_screen;
|
||||||
|
|
||||||
|
if ( version_compare( $wp_version, '5.0', '>=' ) ) {
|
||||||
|
if ( isset( $current_screen ) && $current_screen->is_block_editor() ) {
|
||||||
|
$this->load_gutenberg_js();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Print editor scripts if they are not printed by default
|
||||||
|
*/
|
||||||
|
public function admin_footer_scripts() {
|
||||||
|
/**
|
||||||
|
* @var $class \_WP_Editors
|
||||||
|
*/
|
||||||
|
$class = '\_WP_Editors';
|
||||||
|
|
||||||
|
if ( did_action( 'print_default_editor_scripts' ) ) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if ( did_action( 'wp_tiny_mce_init' ) ) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if ( has_action( 'admin_print_footer_scripts', array( $class, 'editor_js' ) ) ) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( ! class_exists( $class, false ) ) {
|
||||||
|
require_once( ABSPATH . WPINC . '/class-wp-editor.php' );
|
||||||
|
}
|
||||||
|
|
||||||
|
$class::force_uncompressed_tinymce();
|
||||||
|
$class::enqueue_scripts();
|
||||||
|
$class::editor_js();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -61,7 +61,7 @@ if ( ! class_exists( 'um\admin\Secure' ) ) {
|
|||||||
}
|
}
|
||||||
// phpcs:enable WordPress.Security.NonceVerification
|
// phpcs:enable WordPress.Security.NonceVerification
|
||||||
|
|
||||||
wp_register_script( 'um_admin_secure', UM()->admin_enqueue()->js_url . 'um-admin-secure.js', array( 'jquery' ), UM_VERSION, true );
|
wp_register_script( 'um_admin_secure', UM()->admin()->enqueue()->js_url . 'um-admin-secure.js', array( 'jquery' ), UM_VERSION, true );
|
||||||
wp_enqueue_script( 'um_admin_secure' );
|
wp_enqueue_script( 'um_admin_secure' );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,753 +0,0 @@
|
|||||||
<?php
|
|
||||||
namespace um\admin\core;
|
|
||||||
|
|
||||||
if ( ! defined( 'ABSPATH' ) ) {
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
if ( ! class_exists( 'um\admin\core\Admin_Enqueue' ) ) {
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Class Admin_Enqueue
|
|
||||||
* @package um\admin\core
|
|
||||||
*/
|
|
||||||
class Admin_Enqueue {
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @var string
|
|
||||||
*/
|
|
||||||
public $js_url;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @var string
|
|
||||||
*/
|
|
||||||
public $css_url;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @var string
|
|
||||||
*/
|
|
||||||
public $front_js_baseurl;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @var string
|
|
||||||
*/
|
|
||||||
public $front_css_baseurl;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @var string
|
|
||||||
*/
|
|
||||||
public $suffix;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @var bool
|
|
||||||
*/
|
|
||||||
public $um_cpt_form_screen;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @var bool
|
|
||||||
*/
|
|
||||||
public $post_page;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Admin_Enqueue constructor.
|
|
||||||
*/
|
|
||||||
public function __construct() {
|
|
||||||
$this->js_url = UM_URL . 'includes/admin/assets/js/';
|
|
||||||
$this->css_url = UM_URL . 'includes/admin/assets/css/';
|
|
||||||
|
|
||||||
$this->front_js_baseurl = UM_URL . 'assets/js/';
|
|
||||||
$this->front_css_baseurl = UM_URL . 'assets/css/';
|
|
||||||
|
|
||||||
$this->suffix = ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG || defined( 'UM_SCRIPT_DEBUG' ) ) ? '' : '.min';
|
|
||||||
|
|
||||||
$this->um_cpt_form_screen = false;
|
|
||||||
|
|
||||||
add_action( 'admin_head', array( &$this, 'admin_head' ), 9 );
|
|
||||||
|
|
||||||
add_action( 'admin_enqueue_scripts', array( &$this, 'admin_enqueue_scripts' ) );
|
|
||||||
|
|
||||||
add_filter( 'enter_title_here', array( &$this, 'enter_title_here' ) );
|
|
||||||
|
|
||||||
add_action( 'load-user-new.php', array( &$this, 'enqueue_role_wrapper' ) );
|
|
||||||
add_action( 'load-user-edit.php', array( &$this, 'enqueue_role_wrapper' ) );
|
|
||||||
|
|
||||||
add_action( 'load-post-new.php', array( &$this, 'enqueue_cpt_scripts' ) );
|
|
||||||
add_action( 'load-post.php', array( &$this, 'enqueue_cpt_scripts' ) );
|
|
||||||
|
|
||||||
global $wp_version;
|
|
||||||
if ( version_compare( $wp_version, '5.8', '>=' ) ) {
|
|
||||||
add_filter( 'block_categories_all', array( &$this, 'blocks_category' ), 10, 2 );
|
|
||||||
} else {
|
|
||||||
add_filter( 'block_categories', array( &$this, 'blocks_category' ), 10, 2 );
|
|
||||||
}
|
|
||||||
add_action( 'enqueue_block_assets', array( &$this, 'block_editor' ), 11 );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Enqueue Gutenberg Block Editor assets
|
|
||||||
*/
|
|
||||||
public function block_editor() {
|
|
||||||
wp_register_style( 'um_ui', UM_URL . 'assets/libs/jquery-ui/jquery-ui' . $this->suffix . '.css', array(), '1.12.1' );
|
|
||||||
wp_register_style( 'um_members', UM_URL . 'assets/css/um-members.css', array( 'um_ui' ), UM_VERSION );
|
|
||||||
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_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( 'um_fonticons_fa', UM_URL . 'assets/css/um-fonticons-fa.css', array(), UM_VERSION );
|
|
||||||
wp_register_style( 'select2', UM_URL . 'assets/css/select2/select2' . $this->suffix . '.css', array(), UM_VERSION );
|
|
||||||
wp_register_style( 'um_fonticons_ii', UM_URL . 'assets/css/um-fonticons-ii.css', array(), UM_VERSION );
|
|
||||||
|
|
||||||
wp_register_script( 'um_admin_blocks_shortcodes', UM_URL . 'assets/js/um-blocks' . $this->suffix . '.js', array( 'wp-i18n', 'wp-blocks', 'wp-components' ), UM_VERSION, true );
|
|
||||||
wp_set_script_translations( 'um_admin_blocks_shortcodes', 'ultimate-member' );
|
|
||||||
|
|
||||||
if ( ! empty( UM()->account()->get_tab_fields( 'notifications', array() ) ) ) {
|
|
||||||
$notifications_enabled = 1;
|
|
||||||
} else {
|
|
||||||
$notifications_enabled = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
$um_account_settings = array(
|
|
||||||
'general' => array(
|
|
||||||
'label' => __( 'General', 'ultimate-member' ),
|
|
||||||
'enabled' => 1,
|
|
||||||
),
|
|
||||||
'password' => array(
|
|
||||||
'label' => __( 'Password', 'ultimate-member' ),
|
|
||||||
'enabled' => UM()->options()->get( 'account_tab_password' ),
|
|
||||||
),
|
|
||||||
'privacy' => array(
|
|
||||||
'label' => __( 'Privacy', 'ultimate-member' ),
|
|
||||||
'enabled' => UM()->options()->get( 'account_tab_privacy' ),
|
|
||||||
),
|
|
||||||
'notifications' => array(
|
|
||||||
'label' => __( 'Notifications', 'ultimate-member' ),
|
|
||||||
'enabled' => $notifications_enabled,
|
|
||||||
),
|
|
||||||
'delete' => array(
|
|
||||||
'label' => __( 'Delete', 'ultimate-member' ),
|
|
||||||
'enabled' => UM()->options()->get( 'account_tab_delete' ),
|
|
||||||
),
|
|
||||||
);
|
|
||||||
$um_account_settings = apply_filters( 'um_extend_account_settings', $um_account_settings );
|
|
||||||
wp_localize_script( 'um_admin_blocks_shortcodes', 'um_account_settings', $um_account_settings );
|
|
||||||
|
|
||||||
wp_enqueue_script( 'um_admin_blocks_shortcodes' );
|
|
||||||
|
|
||||||
wp_register_script( 'select2', UM_URL . 'assets/js/select2/select2.full' . $this->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' . $this->suffix . '.js', array( 'jquery', 'wp-hooks' ), UM_VERSION, true );
|
|
||||||
wp_register_script( 'um_scripts', UM_URL . 'assets/js/um-scripts' . $this->suffix . '.js', array( 'jquery', 'wp-util', 'um_conditional', 'um_datetime', 'um_datetime_date', 'um_datetime_time', 'select2' ), UM_VERSION, true );
|
|
||||||
$max_upload_size = wp_max_upload_size();
|
|
||||||
if ( ! $max_upload_size ) {
|
|
||||||
$max_upload_size = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
$localize_data = apply_filters(
|
|
||||||
'um_enqueue_localize_data',
|
|
||||||
array(
|
|
||||||
'max_upload_size' => $max_upload_size,
|
|
||||||
'nonce' => wp_create_nonce( 'um-frontend-nonce' ),
|
|
||||||
)
|
|
||||||
);
|
|
||||||
wp_localize_script( 'um_scripts', 'um_scripts', $localize_data );
|
|
||||||
|
|
||||||
wp_register_script( 'um_dropdown', UM_URL . 'assets/js/dropdown' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, true );
|
|
||||||
wp_register_script( 'um_members', UM_URL . 'assets/js/um-members' . $this->suffix . '.js', array( 'jquery', 'wp-util', 'jquery-ui-slider', 'um_dropdown', 'wp-hooks', 'jquery-masonry', 'um_scripts' ), UM_VERSION, true );
|
|
||||||
|
|
||||||
wp_register_script( 'um_account', UM_URL . 'assets/js/um-account' . $this->suffix . '.js', array( 'jquery', 'wp-hooks' ), UM_VERSION, true );
|
|
||||||
wp_register_script( 'um_scrollbar', UM_URL . 'assets/js/simplebar' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, true );
|
|
||||||
wp_register_script( 'um_crop', UM_URL . 'assets/js/um-crop' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, true );
|
|
||||||
wp_register_script( 'um_functions', UM_URL . 'assets/js/um-functions' . $this->suffix . '.js', array( 'jquery', 'jquery-masonry', 'wp-util', 'um_scrollbar' ), UM_VERSION, true );
|
|
||||||
wp_register_script( 'um_responsive', UM_URL . 'assets/js/um-responsive' . $this->suffix . '.js', array( 'jquery', 'um_functions', 'um_crop' ), UM_VERSION, true );
|
|
||||||
|
|
||||||
// render blocks
|
|
||||||
wp_enqueue_script( 'um_datetime' );
|
|
||||||
wp_enqueue_script( 'um_datetime_date' );
|
|
||||||
wp_enqueue_script( 'um_datetime_time' );
|
|
||||||
wp_enqueue_script( 'um_conditional' );
|
|
||||||
wp_enqueue_script( 'um_dropdown' );
|
|
||||||
wp_enqueue_script( 'um_members' );
|
|
||||||
wp_enqueue_script( 'um_account' );
|
|
||||||
wp_enqueue_script( 'um_scrollbar' );
|
|
||||||
wp_enqueue_script( 'um_crop' );
|
|
||||||
wp_enqueue_script( 'um_functions' );
|
|
||||||
wp_enqueue_script( 'um_responsive' );
|
|
||||||
|
|
||||||
wp_enqueue_style( 'um_fonticons_ii' );
|
|
||||||
wp_enqueue_style( 'select2' );
|
|
||||||
wp_enqueue_style( 'um_default_css' );
|
|
||||||
wp_enqueue_style( 'um_fonticons_fa' );
|
|
||||||
wp_enqueue_style( 'um_members' );
|
|
||||||
wp_enqueue_style( 'um_styles' );
|
|
||||||
wp_enqueue_style( 'um_profile' );
|
|
||||||
wp_enqueue_style( 'um_crop' );
|
|
||||||
wp_enqueue_style( 'um_responsive' );
|
|
||||||
wp_enqueue_style( 'um_account' );
|
|
||||||
|
|
||||||
$custom_css = '.um{opacity: 1;}.um_request_name {display: none !important;}';
|
|
||||||
|
|
||||||
wp_add_inline_style( 'um_styles', $custom_css );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function enqueue_role_wrapper() {
|
|
||||||
add_action( 'admin_enqueue_scripts', array( &$this, 'load_role_wrapper' ) );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
public function enqueue_cpt_scripts() {
|
|
||||||
// phpcs:ignore WordPress.Security.NonceVerification
|
|
||||||
if ( ( isset( $_GET['post_type'] ) && 'um_form' === sanitize_key( $_GET['post_type'] ) ) || ( isset( $_GET['post'] ) && 'um_form' === get_post_type( absint( $_GET['post'] ) ) ) ) {
|
|
||||||
$this->um_cpt_form_screen = true;
|
|
||||||
add_action( 'admin_footer', array( $this, 'admin_footer_scripts' ), 20 );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
public function enqueue_frontend_preview_assets() {
|
|
||||||
//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' . $this->suffix . '.js', array( 'jquery', 'jquery-masonry' ), '4.0.13', true );
|
|
||||||
wp_register_script( 'um_jquery_form', $this->front_js_baseurl . 'um-jquery-form' . $this->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' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, true );
|
|
||||||
wp_register_script( 'um_tipsy', $this->front_js_baseurl . 'um-tipsy' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, true );
|
|
||||||
wp_register_script( 'um_functions', $this->front_js_baseurl . 'um-functions' . $this->suffix . '.js', array( 'jquery', 'um_tipsy', 'um_scrollbar' ), UM_VERSION, true );
|
|
||||||
|
|
||||||
wp_register_script( 'um_datetime', $this->front_js_baseurl . 'pickadate/picker.js', array( 'jquery' ), UM_VERSION, true );
|
|
||||||
wp_register_script( 'um_datetime_date', $this->front_js_baseurl . 'pickadate/picker.date.js', array( 'jquery', 'um_datetime' ), UM_VERSION, true );
|
|
||||||
wp_register_script( 'um_datetime_time', $this->front_js_baseurl . 'pickadate/picker.time.js', array( 'jquery', 'um_datetime' ), UM_VERSION, true );
|
|
||||||
//wp_register_script( 'um_datetime_legacy', $this->front_js_baseurl . 'pickadate/legacy.js', array( 'jquery', 'um_datetime' ), UM_VERSION, true );
|
|
||||||
// load a localized version for date/time
|
|
||||||
$locale = get_locale();
|
|
||||||
if ( $locale ) {
|
|
||||||
if ( file_exists( WP_LANG_DIR . '/plugins/ultimate-member/assets/js/pickadate/' . $locale . '.js' ) ) {
|
|
||||||
wp_register_script( 'um_datetime_locale', content_url() . '/languages/plugins/ultimate-member/assets/js/pickadate/' . $locale . '.js', array( 'jquery', 'um_datetime' ), UM_VERSION, true );
|
|
||||||
} elseif ( file_exists( UM_PATH . 'assets/js/pickadate/translations/' . $locale . '.js' ) ) {
|
|
||||||
wp_register_script( 'um_datetime_locale', UM_URL . 'assets/js/pickadate/translations/' . $locale . '.js', array( 'jquery', 'um_datetime' ), UM_VERSION, true );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
wp_register_script( 'um_scripts', $this->front_js_baseurl . 'um-scripts' . $this->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_responsive', $this->front_js_baseurl . 'um-responsive' . $this->suffix . '.js', array( 'um_scripts' ), UM_VERSION, true );
|
|
||||||
wp_register_script( 'um_modal', $this->front_js_baseurl . 'um-modal' . $this->suffix . '.js', array( 'um_responsive' ), UM_VERSION, true );
|
|
||||||
|
|
||||||
wp_register_style( 'select2', $this->front_css_baseurl . 'select2/select2' . $this->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 );
|
|
||||||
|
|
||||||
wp_register_style( 'um_scrollbar', $this->front_css_baseurl . 'simplebar.css', array(), ultimatemember_version );
|
|
||||||
wp_register_style( 'um_crop', $this->front_css_baseurl . 'um-crop.css', array(), ultimatemember_version );
|
|
||||||
wp_register_style( 'um_tipsy', $this->front_css_baseurl . 'um-tipsy.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(), 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_enqueue_script( 'um_modal' );
|
|
||||||
wp_enqueue_style( 'um_default_css' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load js for Add/Edit User form
|
|
||||||
*/
|
|
||||||
public function load_role_wrapper() {
|
|
||||||
wp_register_script( 'um_admin_role_wrapper', $this->js_url . 'um-admin-role-wrapper.js', array( 'jquery' ), ultimatemember_version, true );
|
|
||||||
$localize_roles_data = get_option( 'um_roles', array() );
|
|
||||||
wp_localize_script( 'um_admin_role_wrapper', 'um_roles', (array) $localize_roles_data );
|
|
||||||
wp_enqueue_script( 'um_admin_role_wrapper' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Enter title placeholder
|
|
||||||
*
|
|
||||||
* @param $title
|
|
||||||
*
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function enter_title_here( $title ) {
|
|
||||||
$screen = get_current_screen();
|
|
||||||
if ( 'um_directory' === $screen->post_type ) {
|
|
||||||
$title = __( 'e.g. Member Directory', 'ultimate-member' );
|
|
||||||
} elseif ( 'um_form' === $screen->post_type ) {
|
|
||||||
$title = __( 'e.g. New Registration Form', 'ultimate-member' );
|
|
||||||
}
|
|
||||||
return $title;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Runs on admin head
|
|
||||||
*/
|
|
||||||
public function admin_head() {
|
|
||||||
if ( UM()->admin()->is_plugin_post_type() ) { ?>
|
|
||||||
<style type="text/css">
|
|
||||||
.um-admin.post-type-<?php echo esc_attr( get_post_type() ); ?> div#slugdiv,
|
|
||||||
.um-admin.post-type-<?php echo esc_attr( get_post_type() ); ?> div#minor-publishing,
|
|
||||||
.um-admin.post-type-<?php echo esc_attr( get_post_type() ); ?> div#screen-meta-links
|
|
||||||
{display:none}
|
|
||||||
</style>
|
|
||||||
<?php
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load Form
|
|
||||||
*/
|
|
||||||
public function load_form() {
|
|
||||||
wp_register_style( 'um_admin_form', $this->css_url . 'um-admin-form.css', array(), ultimatemember_version );
|
|
||||||
wp_enqueue_style( 'um_admin_form' );
|
|
||||||
|
|
||||||
wp_register_script( 'um_admin_form', $this->js_url . 'um-admin-form.js', array( 'jquery' ), ultimatemember_version, true );
|
|
||||||
wp_enqueue_script( 'um_admin_form' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load Forms
|
|
||||||
*/
|
|
||||||
public function load_forms() {
|
|
||||||
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' . $this->suffix . '.js', array( 'jquery', 'jquery-masonry' ), '4.0.13', true );
|
|
||||||
wp_register_style( 'select2', $this->front_css_baseurl . 'select2/select2' . $this->suffix . '.css', array(), '4.0.13' );
|
|
||||||
|
|
||||||
wp_register_style( 'um_ui', UM_URL . 'assets/libs/jquery-ui/jquery-ui' . $this->suffix . '.css', array(), '1.12.1' );
|
|
||||||
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_localize_script(
|
|
||||||
'um_admin_forms',
|
|
||||||
'um_forms_data',
|
|
||||||
array(
|
|
||||||
'successfully_redirect' => add_query_arg(
|
|
||||||
array(
|
|
||||||
'page' => 'um_options',
|
|
||||||
'tab' => 'misc',
|
|
||||||
'msg' => 'updated',
|
|
||||||
),
|
|
||||||
admin_url( 'admin.php' )
|
|
||||||
),
|
|
||||||
'md_sorting_data_types' => UM()->member_directory()->sort_data_types,
|
|
||||||
)
|
|
||||||
);
|
|
||||||
|
|
||||||
wp_enqueue_script( 'um_admin_forms' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load dashboard
|
|
||||||
*/
|
|
||||||
public function load_dashboard() {
|
|
||||||
wp_register_style( 'um_admin_dashboard', $this->css_url . 'um-admin-dashboard.css', array(), ultimatemember_version );
|
|
||||||
wp_enqueue_style( 'um_admin_dashboard' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load settings
|
|
||||||
*/
|
|
||||||
public function load_settings() {
|
|
||||||
wp_register_style( 'um_admin_settings', $this->css_url . 'um-admin-settings.css', array(), ultimatemember_version );
|
|
||||||
wp_enqueue_style( 'um_admin_settings' );
|
|
||||||
|
|
||||||
wp_register_script( 'um_admin_settings', $this->js_url . 'um-admin-settings.js', array( 'jquery', 'wp-i18n' ), ultimatemember_version, true );
|
|
||||||
wp_enqueue_script( 'um_admin_settings' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load modal
|
|
||||||
*/
|
|
||||||
public function load_modal() {
|
|
||||||
wp_register_style( 'um_admin_modal', $this->css_url . 'um-admin-modal.css', array( 'wp-color-picker' ), ultimatemember_version );
|
|
||||||
wp_enqueue_style( 'um_admin_modal' );
|
|
||||||
|
|
||||||
wp_register_script( 'um_admin_modal', $this->js_url . 'um-admin-modal.js', array( 'jquery', 'editor', 'wp-util', 'wp-color-picker', 'wp-tinymce', 'wp-i18n', 'jquery-ui-tooltip', 'um_admin_scripts' ), ultimatemember_version, true );
|
|
||||||
wp_enqueue_script( 'um_admin_modal' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Field Processing
|
|
||||||
*/
|
|
||||||
public function load_field() {
|
|
||||||
wp_register_script( 'um_admin_field', $this->js_url . 'um-admin-field.js', array( 'jquery', 'wp-util', 'wp-i18n' ), ultimatemember_version, true );
|
|
||||||
wp_enqueue_script( 'um_admin_field' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load Builder
|
|
||||||
*/
|
|
||||||
public function load_builder() {
|
|
||||||
wp_register_script( 'um_admin_builder', $this->js_url . 'um-admin-builder.js', array( 'jquery', 'wp-util' ), ultimatemember_version, true );
|
|
||||||
wp_enqueue_script( 'um_admin_builder' );
|
|
||||||
|
|
||||||
//hide footer text on add/edit UM Forms
|
|
||||||
//layouts crashed because we load and hide metaboxes
|
|
||||||
//and WP calculate page height
|
|
||||||
$hide_footer = false;
|
|
||||||
global $pagenow, $post;
|
|
||||||
// phpcs:ignore WordPress.Security.NonceVerification
|
|
||||||
if ( ( 'post.php' === $pagenow || 'post-new.php' === $pagenow ) && ( ( isset( $_GET['post_type'] ) && 'um_form' === sanitize_key( $_GET['post_type'] ) ) || ( isset( $post->post_type ) && 'um_form' === $post->post_type ) ) ) {
|
|
||||||
$hide_footer = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
$localize_data = array(
|
|
||||||
'hide_footer' => $hide_footer,
|
|
||||||
);
|
|
||||||
wp_localize_script( 'um_admin_builder', 'um_admin_builder_data', $localize_data );
|
|
||||||
|
|
||||||
wp_register_script( 'um_admin_dragdrop', $this->js_url . 'um-admin-dragdrop.js', array( 'jquery', 'wp-util' ), ultimatemember_version, true );
|
|
||||||
wp_enqueue_script( 'um_admin_dragdrop' );
|
|
||||||
|
|
||||||
wp_register_style( 'um_admin_builder', $this->css_url . 'um-admin-builder.css', array(), ultimatemember_version );
|
|
||||||
wp_enqueue_style( 'um_admin_builder' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load core WP styles/scripts
|
|
||||||
*/
|
|
||||||
public function load_core_wp() {
|
|
||||||
wp_enqueue_script( 'jquery-ui-draggable' );
|
|
||||||
wp_enqueue_script( 'jquery-ui-sortable' );
|
|
||||||
|
|
||||||
wp_enqueue_script( 'jquery-ui-tooltip' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load Admin Styles
|
|
||||||
*/
|
|
||||||
public function load_css() {
|
|
||||||
wp_register_style( 'um_admin_menu', $this->css_url . 'um-admin-menu.css', array(), ultimatemember_version );
|
|
||||||
wp_enqueue_style( 'um_admin_menu' );
|
|
||||||
|
|
||||||
wp_register_style( 'um_admin_columns', $this->css_url . 'um-admin-columns.css', array(), ultimatemember_version );
|
|
||||||
wp_enqueue_style( 'um_admin_columns' );
|
|
||||||
|
|
||||||
wp_register_style( 'um_admin_misc', $this->css_url . 'um-admin-misc.css', array(), ultimatemember_version );
|
|
||||||
wp_enqueue_style( 'um_admin_misc' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load functions js
|
|
||||||
*/
|
|
||||||
public function load_functions() {
|
|
||||||
wp_register_script( 'um_scrollbar', UM_URL . 'assets/js/simplebar.js', array( 'jquery' ), ultimatemember_version, true );
|
|
||||||
wp_register_script( 'um_functions', UM_URL . 'assets/js/um-functions.js', array( 'jquery', 'jquery-masonry', 'wp-util', 'um_scrollbar' ), ultimatemember_version, true );
|
|
||||||
wp_enqueue_script( 'um_functions' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load Fonticons
|
|
||||||
*/
|
|
||||||
public function load_fonticons() {
|
|
||||||
wp_register_style( 'um_fonticons_ii', UM_URL . 'assets/css/um-fonticons-ii.css', array(), ultimatemember_version );
|
|
||||||
wp_enqueue_style( 'um_fonticons_ii' );
|
|
||||||
|
|
||||||
wp_register_style( 'um_fonticons_fa', UM_URL . 'assets/css/um-fonticons-fa.css', array(), ultimatemember_version );
|
|
||||||
wp_enqueue_style( 'um_fonticons_fa' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load global css
|
|
||||||
*/
|
|
||||||
public function load_global_scripts() {
|
|
||||||
wp_register_script( 'um_admin_global', $this->js_url . 'um-admin-global.js', array( 'jquery' ), ultimatemember_version, true );
|
|
||||||
wp_enqueue_script( 'um_admin_global' );
|
|
||||||
|
|
||||||
wp_register_style( 'um_admin_global', $this->css_url . 'um-admin-global.css', array(), ultimatemember_version );
|
|
||||||
wp_enqueue_style( 'um_admin_global' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load jQuery custom code
|
|
||||||
*/
|
|
||||||
public function load_custom_scripts() {
|
|
||||||
wp_register_script( 'um_datetime', $this->front_js_baseurl . 'pickadate/picker.js', array( 'jquery' ), ultimatemember_version, true );
|
|
||||||
wp_register_script( 'um_datetime_date', $this->front_js_baseurl . 'pickadate/picker.date.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true );
|
|
||||||
wp_register_script( 'um_datetime_time', $this->front_js_baseurl . 'pickadate/picker.time.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true );
|
|
||||||
//wp_register_script( 'um_datetime_legacy', $this->front_js_baseurl . 'pickadate/legacy.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true );
|
|
||||||
// load a localized version for date/time
|
|
||||||
$locale = get_locale();
|
|
||||||
if ( $locale ) {
|
|
||||||
if ( file_exists( WP_LANG_DIR . '/plugins/ultimate-member/assets/js/pickadate/' . $locale . '.js' ) ) {
|
|
||||||
wp_register_script( 'um_datetime_locale', content_url() . '/languages/plugins/ultimate-member/assets/js/pickadate/' . $locale . '.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true );
|
|
||||||
} elseif ( file_exists( UM_PATH . 'assets/js/pickadate/translations/' . $locale . '.js' ) ) {
|
|
||||||
wp_register_script( 'um_datetime_locale', UM_URL . 'assets/js/pickadate/translations/' . $locale . '.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
wp_register_style( 'um_datetime', $this->front_css_baseurl . 'pickadate/default.css', array(), ultimatemember_version );
|
|
||||||
wp_register_style( 'um_datetime_date', $this->front_css_baseurl . 'pickadate/default.date.css', array( 'um_datetime' ), ultimatemember_version );
|
|
||||||
wp_register_style( 'um_datetime_time', $this->front_css_baseurl . 'pickadate/default.time.css', array( 'um_datetime' ), ultimatemember_version );
|
|
||||||
|
|
||||||
wp_enqueue_style( 'um_datetime_date' );
|
|
||||||
wp_enqueue_style( 'um_datetime_time' );
|
|
||||||
|
|
||||||
wp_register_script( 'um_admin_scripts', $this->js_url . 'um-admin-scripts.js', array( 'jquery', 'wp-util', 'wp-color-picker', 'um_datetime', 'um_datetime_date', 'um_datetime_time'/*, 'um_datetime_legacy'*/ ), ultimatemember_version, true );
|
|
||||||
wp_enqueue_script( 'um_admin_scripts' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load jQuery custom code
|
|
||||||
*/
|
|
||||||
public function load_nav_manus_scripts() {
|
|
||||||
wp_register_script( 'um_admin_nav_manus', $this->js_url . 'um-admin-nav-menu.js', array( 'jquery', 'wp-util' ), ultimatemember_version, true );
|
|
||||||
wp_enqueue_script( 'um_admin_nav_manus' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load AJAX
|
|
||||||
*/
|
|
||||||
public function load_ajax_js() {
|
|
||||||
wp_register_script( 'um_admin_ajax', $this->js_url . 'um-admin-ajax.js', array( 'jquery', 'wp-util' ), ultimatemember_version, true );
|
|
||||||
wp_enqueue_script( 'um_admin_ajax' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load Gutenberg scripts
|
|
||||||
*/
|
|
||||||
public function load_gutenberg_js() {
|
|
||||||
/** This filter is documented in includes/core/class-blocks.php */
|
|
||||||
$disable_script = apply_filters( 'um_disable_blocks_script', false );
|
|
||||||
if ( $disable_script ) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
$restricted_blocks = UM()->options()->get( 'restricted_blocks' );
|
|
||||||
if ( empty( $restricted_blocks ) ) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
wp_register_script( 'um_block_js', $this->js_url . 'um-admin-blocks.js', array( 'wp-i18n', 'wp-blocks', 'wp-components', 'wp-hooks' ), ultimatemember_version, true );
|
|
||||||
wp_set_script_translations( 'um_block_js', 'ultimate-member' );
|
|
||||||
|
|
||||||
$restrict_options = array();
|
|
||||||
$roles = UM()->roles()->get_roles( false );
|
|
||||||
if ( ! empty( $roles ) ) {
|
|
||||||
foreach ( $roles as $role_key => $title ) {
|
|
||||||
$restrict_options[] = array(
|
|
||||||
'label' => $title,
|
|
||||||
'value' => $role_key,
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
wp_localize_script( 'um_block_js', 'um_restrict_roles', $restrict_options );
|
|
||||||
|
|
||||||
wp_enqueue_script( 'um_block_js' );
|
|
||||||
|
|
||||||
do_action( 'um_load_gutenberg_js' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Add Gutenberg category for UM shortcodes
|
|
||||||
*
|
|
||||||
* @param array $categories
|
|
||||||
* @param \WP_Block_Editor_Context $context
|
|
||||||
*
|
|
||||||
* @return array
|
|
||||||
*/
|
|
||||||
public function blocks_category( $categories, $context ) {
|
|
||||||
$enable_blocks = UM()->options()->get( 'enable_blocks' );
|
|
||||||
if ( empty( $enable_blocks ) ) {
|
|
||||||
return $categories;
|
|
||||||
}
|
|
||||||
|
|
||||||
return array_merge(
|
|
||||||
$categories,
|
|
||||||
array(
|
|
||||||
array(
|
|
||||||
'slug' => 'um-blocks',
|
|
||||||
'title' => __( 'Ultimate Member Blocks', 'ultimate-member' ),
|
|
||||||
),
|
|
||||||
)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load localize scripts
|
|
||||||
*/
|
|
||||||
public function load_localize_scripts() {
|
|
||||||
|
|
||||||
/**
|
|
||||||
* UM hook
|
|
||||||
*
|
|
||||||
* @type filter
|
|
||||||
* @title um_admin_enqueue_localize_data
|
|
||||||
* @description Extend localize data at wp-admin side
|
|
||||||
* @input_vars
|
|
||||||
* [{"var":"$localize_data","type":"array","desc":"Localize Data"}]
|
|
||||||
* @change_log
|
|
||||||
* ["Since: 2.0"]
|
|
||||||
* @usage add_filter( 'um_admin_enqueue_localize_data', 'function_name', 10, 1 );
|
|
||||||
* @example
|
|
||||||
* <?php
|
|
||||||
* add_filter( 'um_admin_enqueue_localize_data', 'my_admin_enqueue_localize_data', 10, 1 );
|
|
||||||
* function my_admin_enqueue_localize_data( $localize_data ) {
|
|
||||||
* // your code here
|
|
||||||
* return $localize_data;
|
|
||||||
* }
|
|
||||||
* ?>
|
|
||||||
*/
|
|
||||||
$localize_data = apply_filters( 'um_admin_enqueue_localize_data', array( 'nonce' => wp_create_nonce( 'um-admin-nonce' ) ) );
|
|
||||||
|
|
||||||
wp_localize_script( 'um_admin_global', 'um_admin_scripts', $localize_data );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Enqueue scripts and styles
|
|
||||||
*/
|
|
||||||
public function admin_enqueue_scripts() {
|
|
||||||
if ( UM()->admin()->is_um_screen() ) {
|
|
||||||
|
|
||||||
/*if ( get_post_type() != 'shop_order' ) {
|
|
||||||
UM()->enqueue()->wp_enqueue_scripts();
|
|
||||||
}*/
|
|
||||||
|
|
||||||
$modal_deps = array( 'um-admin-scripts' );
|
|
||||||
if ( $this->um_cpt_form_screen ) {
|
|
||||||
$this->enqueue_frontend_preview_assets();
|
|
||||||
$modal_deps[] = 'um-responsive';
|
|
||||||
}
|
|
||||||
|
|
||||||
$this->load_functions();
|
|
||||||
$this->load_global_scripts();
|
|
||||||
$this->load_form();
|
|
||||||
$this->load_forms();
|
|
||||||
$this->load_custom_scripts();
|
|
||||||
$this->load_modal();
|
|
||||||
$this->load_dashboard();
|
|
||||||
$this->load_settings();
|
|
||||||
$this->load_field();
|
|
||||||
$this->load_builder();
|
|
||||||
$this->load_css();
|
|
||||||
$this->load_core_wp();
|
|
||||||
$this->load_ajax_js();
|
|
||||||
$this->load_fonticons();
|
|
||||||
$this->load_localize_scripts();
|
|
||||||
|
|
||||||
//scripts for frontend preview
|
|
||||||
UM()->enqueue()->load_imagecrop();
|
|
||||||
UM()->enqueue()->load_css();
|
|
||||||
UM()->enqueue()->load_tipsy();
|
|
||||||
UM()->enqueue()->load_modal();
|
|
||||||
UM()->enqueue()->load_responsive();
|
|
||||||
|
|
||||||
wp_register_script( 'um_raty', UM_URL . 'assets/js/um-raty' . UM()->enqueue()->suffix . '.js', array( 'jquery', 'wp-i18n' ), ultimatemember_version, true );
|
|
||||||
wp_register_style( 'um_raty', UM_URL . 'assets/css/um-raty.css', array(), ultimatemember_version );
|
|
||||||
|
|
||||||
wp_register_style( 'um_default_css', UM_URL . 'assets/css/um-old-default.css', '', ultimatemember_version, 'all' );
|
|
||||||
wp_enqueue_style( 'um_default_css' );
|
|
||||||
|
|
||||||
if ( is_rtl() ) {
|
|
||||||
wp_register_style( 'um_admin_rtl', $this->css_url . 'um-admin-rtl.css', array(), ultimatemember_version );
|
|
||||||
wp_enqueue_style( 'um_admin_rtl' );
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
|
|
||||||
$this->load_global_scripts();
|
|
||||||
$this->load_localize_scripts();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
global $wp_version, $current_screen;
|
|
||||||
|
|
||||||
if ( version_compare( $wp_version, '5.0', '>=' ) ) {
|
|
||||||
if ( isset( $current_screen ) && $current_screen->is_block_editor() ) {
|
|
||||||
$this->load_gutenberg_js();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Print editor scripts if they are not printed by default
|
|
||||||
*/
|
|
||||||
public function admin_footer_scripts() {
|
|
||||||
/**
|
|
||||||
* @var $class \_WP_Editors
|
|
||||||
*/
|
|
||||||
$class = '\_WP_Editors';
|
|
||||||
|
|
||||||
if ( did_action( 'print_default_editor_scripts' ) ) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if ( did_action( 'wp_tiny_mce_init' ) ) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if ( has_action( 'admin_print_footer_scripts', array( $class, 'editor_js' ) ) ) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( ! class_exists( $class, false ) ) {
|
|
||||||
require_once( ABSPATH . WPINC . '/class-wp-editor.php' );
|
|
||||||
}
|
|
||||||
|
|
||||||
$class::force_uncompressed_tinymce();
|
|
||||||
$class::enqueue_scripts();
|
|
||||||
$class::editor_js();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,17 +1,18 @@
|
|||||||
<?php
|
<?php
|
||||||
namespace um\admin\core;
|
namespace um\admin\core;
|
||||||
|
|
||||||
// Exit if accessed directly.
|
if ( ! defined( 'ABSPATH' ) ) {
|
||||||
if ( ! defined( 'ABSPATH' ) ) exit;
|
exit;
|
||||||
|
}
|
||||||
|
|
||||||
if ( ! class_exists( 'um\admin\core\Admin_Navmenu' ) ) {
|
if ( ! class_exists( 'um\admin\core\Admin_Navmenu' ) ) {
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class Admin_Navmenu
|
* Class Admin_Navmenu
|
||||||
* @package um\admin\core
|
* @package um\admin\core
|
||||||
*/
|
*/
|
||||||
class Admin_Navmenu {
|
class Admin_Navmenu {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @var array
|
* @var array
|
||||||
*/
|
*/
|
||||||
@@ -22,24 +23,17 @@ if ( ! class_exists( 'um\admin\core\Admin_Navmenu' ) ) {
|
|||||||
* Admin_Navmenu constructor.
|
* Admin_Navmenu constructor.
|
||||||
*/
|
*/
|
||||||
function __construct() {
|
function __construct() {
|
||||||
global $wp_version;
|
|
||||||
|
|
||||||
self::$fields = array(
|
self::$fields = array(
|
||||||
'um_nav_public' => __( 'Display Mode', 'ultimate-member' ),
|
'um_nav_public' => __( 'Display Mode', 'ultimate-member' ),
|
||||||
'um_nav_roles' => __( 'By Role', 'ultimate-member' )
|
'um_nav_roles' => __( 'By Role', 'ultimate-member' ),
|
||||||
);
|
);
|
||||||
|
|
||||||
if ( $wp_version < '5.4' ) {
|
add_action( 'customize_controls_print_footer_scripts', array( &$this, '_wp_template' ) );
|
||||||
add_action( 'admin_footer-nav-menus.php', array( &$this, '_wp_template' ) );
|
add_action( 'load-customize.php', array( &$this, 'enqueue_nav_menus_scripts' ) );
|
||||||
add_action( 'load-nav-menus.php', array( &$this, 'enqueue_nav_menus_scripts' ) );
|
|
||||||
} else {
|
|
||||||
add_action( 'load-customize.php', array( &$this, 'enqueue_nav_menus_scripts' ) );
|
|
||||||
}
|
|
||||||
|
|
||||||
add_action( 'wp_update_nav_menu_item', array( &$this, '_save' ), 10, 3 );
|
add_action( 'wp_update_nav_menu_item', array( &$this, '_save' ), 10, 3 );
|
||||||
|
|
||||||
add_action( 'wp_nav_menu_item_custom_fields', array( $this, 'wp_nav_menu_item_custom_fields' ), 20, 5 );
|
add_action( 'wp_nav_menu_item_custom_fields', array( $this, 'wp_nav_menu_item_custom_fields' ), 20, 5 );
|
||||||
//add_action( 'wp_nav_menu_item_custom_fields_customize_template', array( $this, 'wp_nav_menu_item_custom_fields_customize_template' ), 20 ); //waiting wp.org answer
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -112,29 +106,6 @@ if ( ! class_exists( 'um\admin\core\Admin_Navmenu' ) ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
function wp_nav_menu_item_custom_fields_customize_template() {
|
|
||||||
?>
|
|
||||||
<div class="um-nav-edit">
|
|
||||||
<div class="clear"></div>
|
|
||||||
<h4 style="margin-bottom: 0.6em;"><?php _e( 'Ultimate Member Menu Settings', 'ultimate-member' ) ?></h4>
|
|
||||||
|
|
||||||
<# console.log( data ); #>
|
|
||||||
|
|
||||||
<div class="clear"></div>
|
|
||||||
</div>
|
|
||||||
<?php
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* Backward compatibility with WP < 5.4
|
* Backward compatibility with WP < 5.4
|
||||||
@@ -191,7 +162,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Navmenu' ) ) {
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
function admin_enqueue_scripts() {
|
function admin_enqueue_scripts() {
|
||||||
UM()->admin_enqueue()->load_nav_manus_scripts();
|
UM()->admin()->enqueue()->load_nav_manus_scripts();
|
||||||
|
|
||||||
$menu_restriction_data = array();
|
$menu_restriction_data = array();
|
||||||
|
|
||||||
|
|||||||
+9
-17
@@ -574,7 +574,6 @@ if ( ! class_exists( 'UM' ) ) {
|
|||||||
$this->admin_upgrade();
|
$this->admin_upgrade();
|
||||||
$this->admin_settings();
|
$this->admin_settings();
|
||||||
$this->columns();
|
$this->columns();
|
||||||
$this->admin_enqueue();
|
|
||||||
$this->metabox();
|
$this->metabox();
|
||||||
$this->users();
|
$this->users();
|
||||||
$this->dragdrop();
|
$this->dragdrop();
|
||||||
@@ -584,7 +583,6 @@ if ( ! class_exists( 'UM' ) ) {
|
|||||||
$this->theme_updater();
|
$this->theme_updater();
|
||||||
} elseif ( $this->is_request( 'frontend' ) ) {
|
} elseif ( $this->is_request( 'frontend' ) ) {
|
||||||
$this->frontend()->includes();
|
$this->frontend()->includes();
|
||||||
$this->enqueue();
|
|
||||||
$this->account();
|
$this->account();
|
||||||
$this->password();
|
$this->password();
|
||||||
$this->login();
|
$this->login();
|
||||||
@@ -922,14 +920,13 @@ if ( ! class_exists( 'UM' ) ) {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @since 2.0
|
* @since 2.0
|
||||||
|
* @depecated 2.6.12
|
||||||
*
|
*
|
||||||
* @return um\admin\core\Admin_Enqueue()
|
* @return um\admin\Enqueue
|
||||||
*/
|
*/
|
||||||
function admin_enqueue() {
|
public function admin_enqueue() {
|
||||||
if ( empty( $this->classes['admin_enqueue'] ) ) {
|
_deprecated_function( __METHOD__, '2.6.12', 'UM()->admin()->enqueue()' );
|
||||||
$this->classes['admin_enqueue'] = new um\admin\core\Admin_Enqueue();
|
return $this->admin()->enqueue();
|
||||||
}
|
|
||||||
return $this->classes['admin_enqueue'];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -1147,21 +1144,16 @@ if ( ! class_exists( 'UM' ) ) {
|
|||||||
return $this->classes['register'];
|
return $this->classes['register'];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @since 2.0
|
* @since 2.0
|
||||||
|
* @todo Make it deprecated and review extensions.
|
||||||
*
|
*
|
||||||
* @return um\core\Enqueue
|
* @return um\frontend\Enqueue
|
||||||
*/
|
*/
|
||||||
function enqueue() {
|
public function enqueue() {
|
||||||
if ( empty( $this->classes['enqueue'] ) ) {
|
return $this->frontend()->enqueue();
|
||||||
$this->classes['enqueue'] = new um\core\Enqueue();
|
|
||||||
}
|
|
||||||
|
|
||||||
return $this->classes['enqueue'];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @since 2.0
|
* @since 2.0
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -43,59 +43,63 @@ class Enqueue {
|
|||||||
* @since 2.7.0
|
* @since 2.7.0
|
||||||
*/
|
*/
|
||||||
public function init_variables() {
|
public function init_variables() {
|
||||||
$this->suffix = ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ) ? '' : '.min';
|
$this->suffix = ( ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ) || ( defined( 'UM_SCRIPT_DEBUG' ) && UM_SCRIPT_DEBUG ) ) ? '' : '.min';
|
||||||
|
|
||||||
$this->urls['js'] = UM_URL . 'assets/js/';
|
$this->urls['js'] = UM_URL . 'assets/js/';
|
||||||
$this->urls['css'] = UM_URL . 'assets/css/';
|
$this->urls['css'] = UM_URL . 'assets/css/';
|
||||||
$this->urls['libs'] = UM_URL . 'assets/libs/';
|
$this->urls['libs'] = UM_URL . 'assets/libs/';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected function register_jquery_ui() {
|
||||||
|
wp_register_style( 'um_ui', $this->urls['libs'] . 'jquery-ui/jquery-ui' . $this->suffix . '.css', array(), '1.12.1' );
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Register common JS/CSS libraries.
|
* Register common JS/CSS libraries.
|
||||||
*
|
*
|
||||||
* @since 2.7.0
|
* @since 2.7.0
|
||||||
*/
|
*/
|
||||||
public function common_libs() {
|
public function common_libs() {
|
||||||
wp_register_style( 'um-jquery-ui', $this->urls['libs'] . 'jquery-ui/jquery-ui' . $this->suffix . '.css', array(), '1.12.1' );
|
$this->register_jquery_ui();
|
||||||
|
|
||||||
wp_register_script( 'um-tipsy', $this->urls['libs'] . 'tipsy/um-tipsy' . $this->suffix . '.js', array( 'jquery' ), '1.0.0a', true );
|
// wp_register_script( 'um-tipsy', $this->urls['libs'] . 'tipsy/um-tipsy' . $this->suffix . '.js', array( 'jquery' ), '1.0.0a', true );
|
||||||
wp_register_style( 'um-tipsy', $this->urls['libs'] . 'tipsy/um-tipsy' . $this->suffix . '.css', array(), '1.0.0a' );
|
// wp_register_style( 'um-tipsy', $this->urls['libs'] . 'tipsy/um-tipsy' . $this->suffix . '.css', array(), '1.0.0a' );
|
||||||
|
//
|
||||||
wp_register_script( 'um-helptip', $this->urls['libs'] . 'helptip/helptip' . $this->suffix . '.js', array( 'jquery', 'jquery-ui-tooltip' ), '1.0.0', true );
|
// 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-jquery-ui' ), '1.0.0' );
|
// wp_register_style( 'um-helptip', $this->urls['libs'] . 'helptip/helptip' . $this->suffix . '.css', array( 'dashicons', 'um_ui' ), '1.0.0' );
|
||||||
|
//
|
||||||
// Legacy Fonticons
|
// // Legacy Fonticons
|
||||||
wp_register_style( 'um-fonticons-ii', $this->urls['libs'] . 'fonticons/um-fonticons-ii' . $this->suffix . '.css', array(), UM_VERSION );
|
// wp_register_style( 'um-fonticons-ii', $this->urls['libs'] . 'fonticons/um-fonticons-ii' . $this->suffix . '.css', array(), UM_VERSION );
|
||||||
wp_register_style( 'um-fonticons-fa', $this->urls['libs'] . 'fonticons/um-fonticons-fa' . $this->suffix . '.css', array(), UM_VERSION );
|
// wp_register_style( 'um-fonticons-fa', $this->urls['libs'] . 'fonticons/um-fonticons-fa' . $this->suffix . '.css', array(), UM_VERSION );
|
||||||
|
//
|
||||||
// Select2
|
// // Select2
|
||||||
$dequeue_select2 = apply_filters( 'um_dequeue_select2_scripts', false );
|
// $dequeue_select2 = apply_filters( 'um_dequeue_select2_scripts', false );
|
||||||
if ( class_exists( 'WooCommerce' ) || $dequeue_select2 ) {
|
// if ( class_exists( 'WooCommerce' ) || $dequeue_select2 ) {
|
||||||
wp_dequeue_style( 'select2' );
|
// wp_dequeue_style( 'select2' );
|
||||||
wp_deregister_style( 'select2' );
|
// wp_deregister_style( 'select2' );
|
||||||
|
//
|
||||||
wp_dequeue_script( 'select2' );
|
// wp_dequeue_script( 'select2' );
|
||||||
wp_deregister_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_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' );
|
// wp_register_style( 'select2', $this->urls['libs'] . 'select2/select2' . $this->suffix . '.css', array(), '4.0.13' );
|
||||||
|
//
|
||||||
// Raty JS for rating field-type
|
// // Raty JS for rating field-type
|
||||||
wp_register_script( 'um-raty', $this->urls['libs'] . 'raty/um-raty' . $this->suffix . '.js', array( 'jquery', 'wp-i18n' ), '2.6.0', true );
|
// wp_register_script( 'um-raty', $this->urls['libs'] . 'raty/um-raty' . $this->suffix . '.js', array( 'jquery', 'wp-i18n' ), '2.6.0', true );
|
||||||
wp_register_style( 'um-raty', $this->urls['libs'] . 'raty/um-raty' . $this->suffix . '.css', array(), '2.6.0' );
|
// wp_register_style( 'um-raty', $this->urls['libs'] . 'raty/um-raty' . $this->suffix . '.css', array(), '2.6.0' );
|
||||||
|
//
|
||||||
// Modal
|
// // Modal
|
||||||
wp_register_script( 'um-modal', $this->urls['libs'] . 'modal/um-modal' . $this->suffix . '.js', array( 'jquery', 'wp-i18n', 'wp-hooks' ), UM_VERSION, true );
|
// wp_register_script( 'um-modal', $this->urls['libs'] . 'modal/um-modal' . $this->suffix . '.js', array( 'jquery', 'wp-i18n', 'wp-hooks' ), UM_VERSION, true );
|
||||||
wp_register_style( 'um-modal', $this->urls['libs'] . 'modal/um-modal' . $this->suffix . '.css', array(), UM_VERSION );
|
// wp_register_style( 'um-modal', $this->urls['libs'] . 'modal/um-modal' . $this->suffix . '.css', array(), UM_VERSION );
|
||||||
|
//
|
||||||
// Common JS scripts for wp-admin and frontend both
|
// // Common JS scripts for wp-admin and frontend both
|
||||||
wp_register_script( 'um-common', $this->urls['js'] . 'common' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, true );
|
// wp_register_script( 'um-common', $this->urls['js'] . 'common' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, true );
|
||||||
|
//
|
||||||
$um_common_variables = array(
|
// $um_common_variables = array(
|
||||||
'locale' => get_locale(),
|
// 'locale' => get_locale(),
|
||||||
);
|
// );
|
||||||
$um_common_variables = apply_filters( 'um_common_js_variables', $um_common_variables );
|
// $um_common_variables = apply_filters( 'um_common_js_variables', $um_common_variables );
|
||||||
wp_localize_script( 'um-common', 'um_common_variables', $um_common_variables );
|
// wp_localize_script( 'um-common', 'um_common_variables', $um_common_variables );
|
||||||
wp_enqueue_script( 'um-common' );
|
// wp_enqueue_script( 'um-common' );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,442 +0,0 @@
|
|||||||
<?php
|
|
||||||
namespace um\core;
|
|
||||||
|
|
||||||
|
|
||||||
// Exit if accessed directly
|
|
||||||
if ( ! defined( 'ABSPATH' ) ) exit;
|
|
||||||
|
|
||||||
|
|
||||||
if ( ! class_exists( 'um\core\Enqueue' ) ) {
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Class Enqueue
|
|
||||||
* @package um\core
|
|
||||||
*/
|
|
||||||
class Enqueue {
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @var string
|
|
||||||
*/
|
|
||||||
var $suffix = '';
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @var string
|
|
||||||
*/
|
|
||||||
var $js_baseurl = '';
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @var string
|
|
||||||
*/
|
|
||||||
var $css_baseurl = '';
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Enqueue constructor.
|
|
||||||
*/
|
|
||||||
function __construct() {
|
|
||||||
$this->suffix = ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG || defined( 'UM_SCRIPT_DEBUG' ) ) ? '' : '.min';
|
|
||||||
|
|
||||||
$this->js_baseurl = UM_URL . 'assets/js/';
|
|
||||||
$this->css_baseurl = UM_URL . 'assets/css/';
|
|
||||||
|
|
||||||
add_action( 'init', array( &$this, 'scripts_enqueue_priority' ) );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
function scripts_enqueue_priority() {
|
|
||||||
add_action( 'wp_enqueue_scripts', array( &$this, 'wp_enqueue_scripts' ), $this->get_priority() );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
function get_priority() {
|
|
||||||
/**
|
|
||||||
* UM hook
|
|
||||||
*
|
|
||||||
* @type filter
|
|
||||||
* @title um_core_enqueue_priority
|
|
||||||
* @description Change Enqueue scripts priority
|
|
||||||
* @input_vars
|
|
||||||
* [{"var":"$priority","type":"int","desc":"Priority"}]
|
|
||||||
* @change_log
|
|
||||||
* ["Since: 2.0"]
|
|
||||||
* @usage add_filter( 'um_core_enqueue_priority', 'function_name', 10, 1 );
|
|
||||||
* @example
|
|
||||||
* <?php
|
|
||||||
* add_filter( 'um_core_enqueue_priority', 'my_core_enqueue_priority', 10, 1 );
|
|
||||||
* function my_core_enqueue_priority( $priority ) {
|
|
||||||
* // your code here
|
|
||||||
* return $priority;
|
|
||||||
* }
|
|
||||||
* ?>
|
|
||||||
*/
|
|
||||||
return apply_filters( 'um_core_enqueue_priority', 100 );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
function register_scripts() {
|
|
||||||
$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' . $this->suffix . '.js', array( 'jquery' ), '4.0.13', true );
|
|
||||||
|
|
||||||
wp_register_script( 'um_scrollbar', $this->js_baseurl . 'simplebar' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, true );
|
|
||||||
|
|
||||||
wp_register_script( 'um_jquery_form', $this->js_baseurl . 'um-jquery-form' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, true );
|
|
||||||
wp_register_script( 'um_fileupload', $this->js_baseurl . 'um-fileupload.js', array( 'jquery', 'um_jquery_form' ), UM_VERSION, true );
|
|
||||||
|
|
||||||
|
|
||||||
wp_register_script( 'um_datetime', $this->js_baseurl . 'pickadate/picker.js', array( 'jquery' ), UM_VERSION, true );
|
|
||||||
wp_register_script( 'um_datetime_date', $this->js_baseurl . 'pickadate/picker.date.js', array( 'jquery', 'um_datetime' ), UM_VERSION, true );
|
|
||||||
wp_register_script( 'um_datetime_time', $this->js_baseurl . 'pickadate/picker.time.js', array( 'jquery', 'um_datetime' ), UM_VERSION, true );
|
|
||||||
// wp_register_script( 'um_datetime_legacy', $this->js_baseurl . 'pickadate/legacy.js', array( 'jquery', 'um_datetime' ), UM_VERSION, true );
|
|
||||||
// load a localized version for date/time
|
|
||||||
$locale = get_locale();
|
|
||||||
if ( $locale ) {
|
|
||||||
if ( file_exists( WP_LANG_DIR . '/plugins/ultimate-member/assets/js/pickadate/' . $locale . '.js' ) ) {
|
|
||||||
wp_register_script('um_datetime_locale', content_url() . '/languages/plugins/ultimate-member/assets/js/pickadate/' . $locale . '.js', array( 'jquery', 'um_datetime' ), UM_VERSION, true );
|
|
||||||
} elseif ( file_exists( UM_PATH . 'assets/js/pickadate/translations/' . $locale . '.js' ) ) {
|
|
||||||
wp_register_script('um_datetime_locale', UM_URL . 'assets/js/pickadate/translations/' . $locale . '.js', array( 'jquery', 'um_datetime' ), UM_VERSION, true );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
wp_register_script( 'um_tipsy', $this->js_baseurl . 'um-tipsy' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, true );
|
|
||||||
wp_register_script( 'um_raty', $this->js_baseurl . 'um-raty' . $this->suffix . '.js', array( 'jquery', 'wp-i18n' ), UM_VERSION, true );
|
|
||||||
wp_register_script( 'um_crop', $this->js_baseurl . 'um-crop' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, true );
|
|
||||||
|
|
||||||
wp_register_script( 'um_modal', $this->js_baseurl . 'um-modal' . $this->suffix . '.js', array( 'jquery', 'wp-util', 'um_crop' ), UM_VERSION, true );
|
|
||||||
|
|
||||||
wp_register_script('um_functions', $this->js_baseurl . 'um-functions' . $this->suffix . '.js', array( 'jquery', 'jquery-masonry', 'wp-util', 'um_scrollbar' ), UM_VERSION, true );
|
|
||||||
wp_register_script( 'um_responsive', $this->js_baseurl . 'um-responsive' . $this->suffix . '.js', array( 'jquery', 'um_functions', 'um_crop' ), UM_VERSION, true );
|
|
||||||
|
|
||||||
wp_register_script( 'um-gdpr', $this->js_baseurl . 'um-gdpr' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, false );
|
|
||||||
wp_register_script('um_conditional', $this->js_baseurl . 'um-conditional' . $this->suffix . '.js', array( 'jquery', 'wp-hooks' ), UM_VERSION, true );
|
|
||||||
wp_register_script('um_scripts', $this->js_baseurl . 'um-scripts' . $this->suffix . '.js', array( 'jquery', 'wp-util', 'um_conditional', 'um_datetime', 'um_datetime_date', 'um_datetime_time', /*'um_datetime_legacy',*/ 'select2' ), UM_VERSION, true );
|
|
||||||
/**
|
|
||||||
* UM hook
|
|
||||||
*
|
|
||||||
* @type filter
|
|
||||||
* @title um_enqueue_localize_data
|
|
||||||
* @description Extend UM localized data
|
|
||||||
* @input_vars
|
|
||||||
* [{"var":"$data","type":"array","desc":"Localize Array"}]
|
|
||||||
* @change_log
|
|
||||||
* ["Since: 2.0"]
|
|
||||||
* @usage add_filter( 'um_enqueue_localize_data', 'function_name', 10, 1 );
|
|
||||||
* @example
|
|
||||||
* <?php
|
|
||||||
* add_filter( 'um_enqueue_localize_data', 'my_enqueue_localize_data', 10, 1 );
|
|
||||||
* function my_enqueue_localize_data( $data ) {
|
|
||||||
* // your code here
|
|
||||||
* return $data;
|
|
||||||
* }
|
|
||||||
* ?>
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
$max_upload_size = wp_max_upload_size();
|
|
||||||
if ( ! $max_upload_size ) {
|
|
||||||
$max_upload_size = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
$localize_data = apply_filters( 'um_enqueue_localize_data', array(
|
|
||||||
'max_upload_size' => $max_upload_size,
|
|
||||||
'nonce' => wp_create_nonce( "um-frontend-nonce" ),
|
|
||||||
) );
|
|
||||||
wp_localize_script( 'um_scripts', 'um_scripts', $localize_data );
|
|
||||||
|
|
||||||
wp_register_script('um_dropdown', $this->js_baseurl . 'dropdown' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, true );
|
|
||||||
|
|
||||||
wp_register_script('um_members', $this->js_baseurl . 'um-members' . $this->suffix . '.js', array( 'jquery', 'wp-util', 'jquery-ui-slider', 'um_dropdown', 'wp-hooks', 'jquery-masonry', 'um_scripts' ), UM_VERSION, true );
|
|
||||||
wp_register_script('um_profile', $this->js_baseurl . 'um-profile' . $this->suffix . '.js', array( 'jquery', 'wp-util', 'wp-i18n' ), UM_VERSION, true );
|
|
||||||
|
|
||||||
$account_deps = apply_filters( 'um_account_scripts_dependencies', array( 'jquery', 'wp-hooks' ) );
|
|
||||||
wp_register_script('um_account', $this->js_baseurl . 'um-account' . $this->suffix . '.js', $account_deps, UM_VERSION, true );
|
|
||||||
|
|
||||||
wp_register_script( 'um_gchart', 'https://www.google.com/jsapi', array(), UM_VERSION, true );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Register styles
|
|
||||||
*/
|
|
||||||
function register_styles() {
|
|
||||||
|
|
||||||
//FontAwesome and FontIcons styles
|
|
||||||
wp_register_style( 'um_fonticons_ii', $this->css_baseurl . 'um-fonticons-ii.css', array(), UM_VERSION );
|
|
||||||
wp_register_style( 'um_fonticons_fa', $this->css_baseurl . 'um-fonticons-fa.css', array(), UM_VERSION );
|
|
||||||
wp_register_style( 'um_crop', $this->css_baseurl . 'um-crop.css', array(), UM_VERSION );
|
|
||||||
wp_register_style( 'um_tipsy', $this->css_baseurl . 'um-tipsy.css', array(), UM_VERSION );
|
|
||||||
wp_register_style( 'um_raty', $this->css_baseurl . 'um-raty.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 );
|
|
||||||
wp_register_style( 'um_datetime_time', $this->css_baseurl . 'pickadate/default.time.css', array( 'um_datetime' ), UM_VERSION );
|
|
||||||
wp_register_style( 'um_scrollbar', $this->css_baseurl . 'simplebar.css', array(), UM_VERSION );
|
|
||||||
|
|
||||||
wp_register_style( 'um_rtl', $this->css_baseurl . 'um.rtl.css', array(), UM_VERSION );
|
|
||||||
wp_register_style( 'um_default_css', $this->css_baseurl . 'um-old-default.css', array(), UM_VERSION );
|
|
||||||
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_VERSION );
|
|
||||||
|
|
||||||
wp_register_style( 'um_ui', UM_URL . 'assets/libs/jquery-ui/jquery-ui' . $this->suffix . '.css', array(), '1.12.1' );
|
|
||||||
|
|
||||||
wp_register_style( 'um_members', $this->css_baseurl . 'um-members.css', array( 'um_ui' ), UM_VERSION );
|
|
||||||
if ( is_rtl() ) {
|
|
||||||
wp_register_style( 'um_members_rtl', $this->css_baseurl . 'um-members-rtl.css', array( 'um_members' ), UM_VERSION );
|
|
||||||
}
|
|
||||||
|
|
||||||
wp_register_style( 'um_profile', $this->css_baseurl . 'um-profile.css', array(), UM_VERSION );
|
|
||||||
wp_register_style( 'um_account', $this->css_baseurl . 'um-account.css', array(), UM_VERSION );
|
|
||||||
wp_register_style( 'um_misc', $this->css_baseurl . 'um-misc.css', array(), UM_VERSION );
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Enqueue scripts and styles
|
|
||||||
*/
|
|
||||||
function wp_enqueue_scripts() {
|
|
||||||
|
|
||||||
$this->register_scripts();
|
|
||||||
$this->register_styles();
|
|
||||||
|
|
||||||
$this->load_original();
|
|
||||||
|
|
||||||
// rtl style
|
|
||||||
if ( is_rtl() ) {
|
|
||||||
wp_enqueue_style( 'um_rtl' );
|
|
||||||
}
|
|
||||||
|
|
||||||
global $post;
|
|
||||||
if ( is_object( $post ) && has_shortcode( $post->post_content,'ultimatemember' ) ) {
|
|
||||||
wp_dequeue_script( 'jquery-form' );
|
|
||||||
}
|
|
||||||
|
|
||||||
//old settings before UM 2.0 CSS
|
|
||||||
wp_enqueue_style( 'um_default_css' );
|
|
||||||
|
|
||||||
$this->old_css_settings();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
function old_css_settings() {
|
|
||||||
$uploads = wp_upload_dir();
|
|
||||||
$upload_dir = $uploads['basedir'] . DIRECTORY_SEPARATOR . 'ultimatemember' . DIRECTORY_SEPARATOR;
|
|
||||||
if ( file_exists( $upload_dir . 'um_old_settings.css' ) ) {
|
|
||||||
wp_register_style( 'um_old_css', UM_URL . '../../uploads/ultimatemember/um_old_settings.css' );
|
|
||||||
wp_enqueue_style( 'um_old_css' );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* This will load original files (not minified)
|
|
||||||
*/
|
|
||||||
function load_original() {
|
|
||||||
|
|
||||||
//maybe deprecated
|
|
||||||
//$this->load_google_charts();
|
|
||||||
|
|
||||||
$this->load_fonticons();
|
|
||||||
|
|
||||||
$this->load_selectjs();
|
|
||||||
|
|
||||||
$this->load_modal();
|
|
||||||
|
|
||||||
$this->load_css();
|
|
||||||
|
|
||||||
$this->load_fileupload();
|
|
||||||
|
|
||||||
$this->load_datetimepicker();
|
|
||||||
|
|
||||||
$this->load_raty();
|
|
||||||
|
|
||||||
//$this->load_scrollto();
|
|
||||||
|
|
||||||
$this->load_scrollbar();
|
|
||||||
|
|
||||||
$this->load_imagecrop();
|
|
||||||
|
|
||||||
$this->load_tipsy();
|
|
||||||
|
|
||||||
$this->load_functions();
|
|
||||||
|
|
||||||
$this->load_responsive();
|
|
||||||
|
|
||||||
$this->load_customjs();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Include Google charts
|
|
||||||
*/
|
|
||||||
function load_google_charts() {
|
|
||||||
wp_enqueue_script( 'um_gchart' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load plugin css
|
|
||||||
*/
|
|
||||||
function load_css() {
|
|
||||||
wp_enqueue_style( 'um_styles' );
|
|
||||||
/*if ( is_rtl() ) {
|
|
||||||
wp_enqueue_style( 'um_members_rtl' );
|
|
||||||
} else {
|
|
||||||
wp_enqueue_style( 'um_members' );
|
|
||||||
}*/
|
|
||||||
|
|
||||||
wp_enqueue_style( 'um_profile' );
|
|
||||||
wp_enqueue_style( 'um_account' );
|
|
||||||
wp_enqueue_style( 'um_misc' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load select-dropdowns JS
|
|
||||||
*/
|
|
||||||
function load_selectjs() {
|
|
||||||
wp_enqueue_script( 'select2' );
|
|
||||||
wp_enqueue_style( 'select2' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load Fonticons
|
|
||||||
*/
|
|
||||||
function load_fonticons() {
|
|
||||||
wp_enqueue_style( 'um_fonticons_ii' );
|
|
||||||
wp_enqueue_style( 'um_fonticons_fa' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load fileupload JS
|
|
||||||
*/
|
|
||||||
function load_fileupload() {
|
|
||||||
wp_enqueue_script( 'um_fileupload' );
|
|
||||||
wp_enqueue_style( 'um_fileupload' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load JS functions
|
|
||||||
*/
|
|
||||||
function load_functions() {
|
|
||||||
wp_enqueue_script('um_functions' );
|
|
||||||
wp_enqueue_script( 'um-gdpr' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load custom JS
|
|
||||||
*/
|
|
||||||
function load_customjs() {
|
|
||||||
wp_enqueue_script('um_conditional');
|
|
||||||
wp_enqueue_script('um_scripts');
|
|
||||||
//wp_enqueue_script('um_members');
|
|
||||||
wp_enqueue_script('um_profile');
|
|
||||||
wp_enqueue_script('um_account');
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load date & time picker
|
|
||||||
*/
|
|
||||||
function load_datetimepicker() {
|
|
||||||
wp_enqueue_script( 'um_datetime' );
|
|
||||||
wp_enqueue_script( 'um_datetime_date' );
|
|
||||||
wp_enqueue_script( 'um_datetime_time' );
|
|
||||||
//wp_enqueue_script( 'um_datetime_legacy' );
|
|
||||||
|
|
||||||
// load a localized version for date/time
|
|
||||||
$locale = get_locale();
|
|
||||||
if ( $locale && ( file_exists( WP_LANG_DIR . '/plugins/ultimate-member/assets/js/pickadate/' . $locale . '.js' ) || file_exists( UM_PATH . 'assets/js/pickadate/translations/' . $locale . '.js' ) ) ) {
|
|
||||||
wp_enqueue_script('um_datetime_locale' );
|
|
||||||
}
|
|
||||||
|
|
||||||
wp_enqueue_style( 'um_datetime' );
|
|
||||||
wp_enqueue_style( 'um_datetime_date' );
|
|
||||||
wp_enqueue_style( 'um_datetime_time' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load scrollbar
|
|
||||||
*/
|
|
||||||
function load_scrollbar(){
|
|
||||||
wp_enqueue_style('um_scrollbar');
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load rating
|
|
||||||
*/
|
|
||||||
function load_raty() {
|
|
||||||
wp_enqueue_script('um_raty');
|
|
||||||
wp_enqueue_style('um_raty');
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load crop script
|
|
||||||
*/
|
|
||||||
function load_imagecrop() {
|
|
||||||
wp_enqueue_script( 'um_crop' );
|
|
||||||
wp_enqueue_style( 'um_crop' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load tipsy
|
|
||||||
*/
|
|
||||||
function load_tipsy() {
|
|
||||||
wp_enqueue_script( 'um_tipsy' );
|
|
||||||
wp_enqueue_style( 'um_tipsy' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load modal
|
|
||||||
*/
|
|
||||||
function load_modal() {
|
|
||||||
wp_enqueue_script( 'um_modal' );
|
|
||||||
wp_enqueue_style( 'um_modal' );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Load responsive styles
|
|
||||||
*/
|
|
||||||
function load_responsive() {
|
|
||||||
wp_enqueue_script( 'um_responsive' );
|
|
||||||
wp_enqueue_style( 'um_responsive' );
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,427 @@
|
|||||||
|
<?php
|
||||||
|
namespace um\frontend;
|
||||||
|
|
||||||
|
if ( ! defined( 'ABSPATH' ) ) {
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Class Enqueue.
|
||||||
|
*
|
||||||
|
* @package um\frontend
|
||||||
|
*/
|
||||||
|
final class Enqueue extends \um\common\Enqueue {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
var $js_baseurl = '';
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
var $css_baseurl = '';
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Enqueue constructor.
|
||||||
|
*/
|
||||||
|
public function __construct() {
|
||||||
|
parent::__construct();
|
||||||
|
|
||||||
|
$this->js_baseurl = UM_URL . 'assets/js/';
|
||||||
|
$this->css_baseurl = UM_URL . 'assets/css/';
|
||||||
|
|
||||||
|
add_action( 'init', array( &$this, 'scripts_enqueue_priority' ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
function scripts_enqueue_priority() {
|
||||||
|
add_action( 'wp_enqueue_scripts', array( &$this, 'wp_enqueue_scripts' ), $this->get_priority() );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return int
|
||||||
|
*/
|
||||||
|
function get_priority() {
|
||||||
|
/**
|
||||||
|
* UM hook
|
||||||
|
*
|
||||||
|
* @type filter
|
||||||
|
* @title um_core_enqueue_priority
|
||||||
|
* @description Change Enqueue scripts priority
|
||||||
|
* @input_vars
|
||||||
|
* [{"var":"$priority","type":"int","desc":"Priority"}]
|
||||||
|
* @change_log
|
||||||
|
* ["Since: 2.0"]
|
||||||
|
* @usage add_filter( 'um_core_enqueue_priority', 'function_name', 10, 1 );
|
||||||
|
* @example
|
||||||
|
* <?php
|
||||||
|
* add_filter( 'um_core_enqueue_priority', 'my_core_enqueue_priority', 10, 1 );
|
||||||
|
* function my_core_enqueue_priority( $priority ) {
|
||||||
|
* // your code here
|
||||||
|
* return $priority;
|
||||||
|
* }
|
||||||
|
* ?>
|
||||||
|
*/
|
||||||
|
return apply_filters( 'um_core_enqueue_priority', 100 );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
function register_scripts() {
|
||||||
|
$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' . $this->suffix . '.js', array( 'jquery' ), '4.0.13', true );
|
||||||
|
|
||||||
|
wp_register_script( 'um_scrollbar', $this->js_baseurl . 'simplebar' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, true );
|
||||||
|
|
||||||
|
wp_register_script( 'um_jquery_form', $this->js_baseurl . 'um-jquery-form' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, true );
|
||||||
|
wp_register_script( 'um_fileupload', $this->js_baseurl . 'um-fileupload.js', array( 'jquery', 'um_jquery_form' ), UM_VERSION, true );
|
||||||
|
|
||||||
|
wp_register_script( 'um_datetime', $this->js_baseurl . 'pickadate/picker.js', array( 'jquery' ), UM_VERSION, true );
|
||||||
|
wp_register_script( 'um_datetime_date', $this->js_baseurl . 'pickadate/picker.date.js', array( 'jquery', 'um_datetime' ), UM_VERSION, true );
|
||||||
|
wp_register_script( 'um_datetime_time', $this->js_baseurl . 'pickadate/picker.time.js', array( 'jquery', 'um_datetime' ), UM_VERSION, true );
|
||||||
|
// wp_register_script( 'um_datetime_legacy', $this->js_baseurl . 'pickadate/legacy.js', array( 'jquery', 'um_datetime' ), UM_VERSION, true );
|
||||||
|
// load a localized version for date/time
|
||||||
|
$locale = get_locale();
|
||||||
|
if ( $locale ) {
|
||||||
|
if ( file_exists( WP_LANG_DIR . '/plugins/ultimate-member/assets/js/pickadate/' . $locale . '.js' ) ) {
|
||||||
|
wp_register_script('um_datetime_locale', content_url() . '/languages/plugins/ultimate-member/assets/js/pickadate/' . $locale . '.js', array( 'jquery', 'um_datetime' ), UM_VERSION, true );
|
||||||
|
} elseif ( file_exists( UM_PATH . 'assets/js/pickadate/translations/' . $locale . '.js' ) ) {
|
||||||
|
wp_register_script('um_datetime_locale', UM_URL . 'assets/js/pickadate/translations/' . $locale . '.js', array( 'jquery', 'um_datetime' ), UM_VERSION, true );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
wp_register_script( 'um_tipsy', $this->js_baseurl . 'um-tipsy' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, true );
|
||||||
|
wp_register_script( 'um_raty', $this->js_baseurl . 'um-raty' . $this->suffix . '.js', array( 'jquery', 'wp-i18n' ), UM_VERSION, true );
|
||||||
|
wp_register_script( 'um_crop', $this->js_baseurl . 'um-crop' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, true );
|
||||||
|
|
||||||
|
wp_register_script( 'um_modal', $this->js_baseurl . 'um-modal' . $this->suffix . '.js', array( 'jquery', 'wp-util', 'um_crop' ), UM_VERSION, true );
|
||||||
|
|
||||||
|
wp_register_script('um_functions', $this->js_baseurl . 'um-functions' . $this->suffix . '.js', array( 'jquery', 'jquery-masonry', 'wp-util', 'um_scrollbar' ), UM_VERSION, true );
|
||||||
|
wp_register_script( 'um_responsive', $this->js_baseurl . 'um-responsive' . $this->suffix . '.js', array( 'jquery', 'um_functions', 'um_crop' ), UM_VERSION, true );
|
||||||
|
|
||||||
|
wp_register_script( 'um-gdpr', $this->js_baseurl . 'um-gdpr' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, false );
|
||||||
|
wp_register_script('um_conditional', $this->js_baseurl . 'um-conditional' . $this->suffix . '.js', array( 'jquery', 'wp-hooks' ), UM_VERSION, true );
|
||||||
|
wp_register_script('um_scripts', $this->js_baseurl . 'um-scripts' . $this->suffix . '.js', array( 'jquery', 'wp-util', 'um_conditional', 'um_datetime', 'um_datetime_date', 'um_datetime_time', /*'um_datetime_legacy',*/ 'select2' ), UM_VERSION, true );
|
||||||
|
/**
|
||||||
|
* UM hook
|
||||||
|
*
|
||||||
|
* @type filter
|
||||||
|
* @title um_enqueue_localize_data
|
||||||
|
* @description Extend UM localized data
|
||||||
|
* @input_vars
|
||||||
|
* [{"var":"$data","type":"array","desc":"Localize Array"}]
|
||||||
|
* @change_log
|
||||||
|
* ["Since: 2.0"]
|
||||||
|
* @usage add_filter( 'um_enqueue_localize_data', 'function_name', 10, 1 );
|
||||||
|
* @example
|
||||||
|
* <?php
|
||||||
|
* add_filter( 'um_enqueue_localize_data', 'my_enqueue_localize_data', 10, 1 );
|
||||||
|
* function my_enqueue_localize_data( $data ) {
|
||||||
|
* // your code here
|
||||||
|
* return $data;
|
||||||
|
* }
|
||||||
|
* ?>
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
$max_upload_size = wp_max_upload_size();
|
||||||
|
if ( ! $max_upload_size ) {
|
||||||
|
$max_upload_size = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
$localize_data = apply_filters( 'um_enqueue_localize_data', array(
|
||||||
|
'max_upload_size' => $max_upload_size,
|
||||||
|
'nonce' => wp_create_nonce( "um-frontend-nonce" ),
|
||||||
|
) );
|
||||||
|
wp_localize_script( 'um_scripts', 'um_scripts', $localize_data );
|
||||||
|
|
||||||
|
wp_register_script('um_dropdown', $this->js_baseurl . 'dropdown' . $this->suffix . '.js', array( 'jquery' ), UM_VERSION, true );
|
||||||
|
|
||||||
|
wp_register_script('um_members', $this->js_baseurl . 'um-members' . $this->suffix . '.js', array( 'jquery', 'wp-util', 'jquery-ui-slider', 'um_dropdown', 'wp-hooks', 'jquery-masonry', 'um_scripts' ), UM_VERSION, true );
|
||||||
|
wp_register_script('um_profile', $this->js_baseurl . 'um-profile' . $this->suffix . '.js', array( 'jquery', 'wp-util', 'wp-i18n' ), UM_VERSION, true );
|
||||||
|
|
||||||
|
$account_deps = apply_filters( 'um_account_scripts_dependencies', array( 'jquery', 'wp-hooks' ) );
|
||||||
|
wp_register_script('um_account', $this->js_baseurl . 'um-account' . $this->suffix . '.js', $account_deps, UM_VERSION, true );
|
||||||
|
|
||||||
|
wp_register_script( 'um_gchart', 'https://www.google.com/jsapi', array(), UM_VERSION, true );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Register styles
|
||||||
|
*/
|
||||||
|
function register_styles() {
|
||||||
|
|
||||||
|
//FontAwesome and FontIcons styles
|
||||||
|
wp_register_style( 'um_fonticons_ii', $this->css_baseurl . 'um-fonticons-ii.css', array(), UM_VERSION );
|
||||||
|
wp_register_style( 'um_fonticons_fa', $this->css_baseurl . 'um-fonticons-fa.css', array(), UM_VERSION );
|
||||||
|
wp_register_style( 'um_crop', $this->css_baseurl . 'um-crop.css', array(), UM_VERSION );
|
||||||
|
wp_register_style( 'um_tipsy', $this->css_baseurl . 'um-tipsy.css', array(), UM_VERSION );
|
||||||
|
wp_register_style( 'um_raty', $this->css_baseurl . 'um-raty.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 );
|
||||||
|
wp_register_style( 'um_datetime_time', $this->css_baseurl . 'pickadate/default.time.css', array( 'um_datetime' ), UM_VERSION );
|
||||||
|
wp_register_style( 'um_scrollbar', $this->css_baseurl . 'simplebar.css', array(), UM_VERSION );
|
||||||
|
|
||||||
|
wp_register_style( 'um_rtl', $this->css_baseurl . 'um.rtl.css', array(), UM_VERSION );
|
||||||
|
wp_register_style( 'um_default_css', $this->css_baseurl . 'um-old-default.css', array(), UM_VERSION );
|
||||||
|
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_VERSION );
|
||||||
|
|
||||||
|
wp_register_style( 'um_members', $this->css_baseurl . 'um-members.css', array( 'um_ui' ), UM_VERSION );
|
||||||
|
if ( is_rtl() ) {
|
||||||
|
wp_register_style( 'um_members_rtl', $this->css_baseurl . 'um-members-rtl.css', array( 'um_members' ), UM_VERSION );
|
||||||
|
}
|
||||||
|
|
||||||
|
wp_register_style( 'um_profile', $this->css_baseurl . 'um-profile.css', array(), UM_VERSION );
|
||||||
|
wp_register_style( 'um_account', $this->css_baseurl . 'um-account.css', array(), UM_VERSION );
|
||||||
|
wp_register_style( 'um_misc', $this->css_baseurl . 'um-misc.css', array(), UM_VERSION );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Enqueue scripts and styles
|
||||||
|
*/
|
||||||
|
function wp_enqueue_scripts() {
|
||||||
|
|
||||||
|
$this->register_scripts();
|
||||||
|
$this->register_styles();
|
||||||
|
|
||||||
|
$this->load_original();
|
||||||
|
|
||||||
|
// rtl style
|
||||||
|
if ( is_rtl() ) {
|
||||||
|
wp_enqueue_style( 'um_rtl' );
|
||||||
|
}
|
||||||
|
|
||||||
|
global $post;
|
||||||
|
if ( is_object( $post ) && has_shortcode( $post->post_content,'ultimatemember' ) ) {
|
||||||
|
wp_dequeue_script( 'jquery-form' );
|
||||||
|
}
|
||||||
|
|
||||||
|
//old settings before UM 2.0 CSS
|
||||||
|
wp_enqueue_style( 'um_default_css' );
|
||||||
|
|
||||||
|
$this->old_css_settings();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
function old_css_settings() {
|
||||||
|
$uploads = wp_upload_dir();
|
||||||
|
$upload_dir = $uploads['basedir'] . DIRECTORY_SEPARATOR . 'ultimatemember' . DIRECTORY_SEPARATOR;
|
||||||
|
if ( file_exists( $upload_dir . 'um_old_settings.css' ) ) {
|
||||||
|
wp_register_style( 'um_old_css', UM_URL . '../../uploads/ultimatemember/um_old_settings.css' );
|
||||||
|
wp_enqueue_style( 'um_old_css' );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This will load original files (not minified)
|
||||||
|
*/
|
||||||
|
function load_original() {
|
||||||
|
|
||||||
|
//maybe deprecated
|
||||||
|
//$this->load_google_charts();
|
||||||
|
|
||||||
|
$this->load_fonticons();
|
||||||
|
|
||||||
|
$this->load_selectjs();
|
||||||
|
|
||||||
|
$this->load_modal();
|
||||||
|
|
||||||
|
$this->load_css();
|
||||||
|
|
||||||
|
$this->load_fileupload();
|
||||||
|
|
||||||
|
$this->load_datetimepicker();
|
||||||
|
|
||||||
|
$this->load_raty();
|
||||||
|
|
||||||
|
//$this->load_scrollto();
|
||||||
|
|
||||||
|
$this->load_scrollbar();
|
||||||
|
|
||||||
|
$this->load_imagecrop();
|
||||||
|
|
||||||
|
$this->load_tipsy();
|
||||||
|
|
||||||
|
$this->load_functions();
|
||||||
|
|
||||||
|
$this->load_responsive();
|
||||||
|
|
||||||
|
$this->load_customjs();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Include Google charts
|
||||||
|
*/
|
||||||
|
function load_google_charts() {
|
||||||
|
wp_enqueue_script( 'um_gchart' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load plugin css
|
||||||
|
*/
|
||||||
|
function load_css() {
|
||||||
|
wp_enqueue_style( 'um_styles' );
|
||||||
|
/*if ( is_rtl() ) {
|
||||||
|
wp_enqueue_style( 'um_members_rtl' );
|
||||||
|
} else {
|
||||||
|
wp_enqueue_style( 'um_members' );
|
||||||
|
}*/
|
||||||
|
|
||||||
|
wp_enqueue_style( 'um_profile' );
|
||||||
|
wp_enqueue_style( 'um_account' );
|
||||||
|
wp_enqueue_style( 'um_misc' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load select-dropdowns JS
|
||||||
|
*/
|
||||||
|
function load_selectjs() {
|
||||||
|
wp_enqueue_script( 'select2' );
|
||||||
|
wp_enqueue_style( 'select2' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load Fonticons
|
||||||
|
*/
|
||||||
|
function load_fonticons() {
|
||||||
|
wp_enqueue_style( 'um_fonticons_ii' );
|
||||||
|
wp_enqueue_style( 'um_fonticons_fa' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load fileupload JS
|
||||||
|
*/
|
||||||
|
function load_fileupload() {
|
||||||
|
wp_enqueue_script( 'um_fileupload' );
|
||||||
|
wp_enqueue_style( 'um_fileupload' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load JS functions
|
||||||
|
*/
|
||||||
|
function load_functions() {
|
||||||
|
wp_enqueue_script('um_functions' );
|
||||||
|
wp_enqueue_script( 'um-gdpr' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load custom JS
|
||||||
|
*/
|
||||||
|
function load_customjs() {
|
||||||
|
wp_enqueue_script('um_conditional');
|
||||||
|
wp_enqueue_script('um_scripts');
|
||||||
|
//wp_enqueue_script('um_members');
|
||||||
|
wp_enqueue_script('um_profile');
|
||||||
|
wp_enqueue_script('um_account');
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load date & time picker
|
||||||
|
*/
|
||||||
|
function load_datetimepicker() {
|
||||||
|
wp_enqueue_script( 'um_datetime' );
|
||||||
|
wp_enqueue_script( 'um_datetime_date' );
|
||||||
|
wp_enqueue_script( 'um_datetime_time' );
|
||||||
|
//wp_enqueue_script( 'um_datetime_legacy' );
|
||||||
|
|
||||||
|
// load a localized version for date/time
|
||||||
|
$locale = get_locale();
|
||||||
|
if ( $locale && ( file_exists( WP_LANG_DIR . '/plugins/ultimate-member/assets/js/pickadate/' . $locale . '.js' ) || file_exists( UM_PATH . 'assets/js/pickadate/translations/' . $locale . '.js' ) ) ) {
|
||||||
|
wp_enqueue_script('um_datetime_locale' );
|
||||||
|
}
|
||||||
|
|
||||||
|
wp_enqueue_style( 'um_datetime' );
|
||||||
|
wp_enqueue_style( 'um_datetime_date' );
|
||||||
|
wp_enqueue_style( 'um_datetime_time' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load scrollbar
|
||||||
|
*/
|
||||||
|
function load_scrollbar(){
|
||||||
|
wp_enqueue_style('um_scrollbar');
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load rating
|
||||||
|
*/
|
||||||
|
function load_raty() {
|
||||||
|
wp_enqueue_script('um_raty');
|
||||||
|
wp_enqueue_style('um_raty');
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load crop script
|
||||||
|
*/
|
||||||
|
function load_imagecrop() {
|
||||||
|
wp_enqueue_script( 'um_crop' );
|
||||||
|
wp_enqueue_style( 'um_crop' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load tipsy
|
||||||
|
*/
|
||||||
|
function load_tipsy() {
|
||||||
|
wp_enqueue_script( 'um_tipsy' );
|
||||||
|
wp_enqueue_style( 'um_tipsy' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load modal
|
||||||
|
*/
|
||||||
|
function load_modal() {
|
||||||
|
wp_enqueue_script( 'um_modal' );
|
||||||
|
wp_enqueue_style( 'um_modal' );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load responsive styles
|
||||||
|
*/
|
||||||
|
function load_responsive() {
|
||||||
|
wp_enqueue_script( 'um_responsive' );
|
||||||
|
wp_enqueue_style( 'um_responsive' );
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -20,9 +20,23 @@ if ( ! class_exists( 'um\frontend\Init' ) ) {
|
|||||||
* @used-by \UM::includes()
|
* @used-by \UM::includes()
|
||||||
*/
|
*/
|
||||||
public function includes() {
|
public function includes() {
|
||||||
|
$this->enqueue();
|
||||||
$this->secure();
|
$this->secure();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @since 2.6.12
|
||||||
|
*
|
||||||
|
* @return Enqueue
|
||||||
|
*/
|
||||||
|
public function enqueue() {
|
||||||
|
if ( empty( UM()->classes['um\frontend\enqueue'] ) ) {
|
||||||
|
UM()->classes['um\frontend\enqueue'] = new Enqueue();
|
||||||
|
}
|
||||||
|
|
||||||
|
return UM()->classes['um\frontend\enqueue'];
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @since 2.6.8
|
* @since 2.6.8
|
||||||
*
|
*
|
||||||
|
|||||||
Reference in New Issue
Block a user