diff --git a/includes/core/class-enqueue.php b/includes/core/class-enqueue.php index d35eb286..e5102597 100644 --- a/includes/core/class-enqueue.php +++ b/includes/core/class-enqueue.php @@ -1,9 +1,11 @@ js_baseurl . 'select2/select2.full.min.js', array( 'jquery', 'jquery-masonry' ), ultimatemember_version, true ); - wp_register_script( 'um_scrollbar', $this->js_baseurl . 'um-scrollbar' . $this->suffix . '.js', array( 'jquery' ), ultimatemember_version, true ); wp_register_script( 'um_jquery_form', $this->js_baseurl . 'um-jquery-form' . $this->suffix . '.js', array( 'jquery' ), ultimatemember_version, true ); @@ -96,16 +96,56 @@ if ( ! class_exists( 'um\core\Enqueue' ) ) { $datetime_deps[] = 'um_datetime_locale'; } wp_register_script( 'um_datetime', $this->js_baseurl . 'pickadate/picker.js', $datetime_deps, ultimatemember_version, true ); - wp_register_script( 'um_datetime_date', $this->js_baseurl . 'pickadate/picker.date.js', array( 'jquery' ), ultimatemember_version, true ); - wp_register_script( 'um_datetime_time', $this->js_baseurl . 'pickadate/picker.time.js', array( 'jquery' ), ultimatemember_version, true ); - wp_register_script( 'um_datetime_legacy', $this->js_baseurl . 'pickadate/legacy.js', array( 'jquery' ), ultimatemember_version, true ); - + wp_register_script( 'um_datetime_date', $this->js_baseurl . 'pickadate/picker.date.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true ); + wp_register_script( 'um_datetime_time', $this->js_baseurl . 'pickadate/picker.time.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true ); + wp_register_script( 'um_datetime_legacy', $this->js_baseurl . 'pickadate/legacy.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true ); wp_register_script( 'um_tipsy', $this->js_baseurl . 'um-tipsy' . $this->suffix . '.js', array( 'jquery' ), ultimatemember_version, true ); wp_register_script( 'um_raty', $this->js_baseurl . 'um-raty' . $this->suffix . '.js', array( 'jquery' ), ultimatemember_version, true ); wp_register_script( 'um_crop', $this->js_baseurl . 'um-crop' . $this->suffix . '.js', array( 'jquery' ), ultimatemember_version, true ); + wp_register_script( 'um_modal', $this->js_baseurl . 'um-modal' . $this->suffix . '.js', array( 'jquery', 'wp-util', 'um_crop' ), ultimatemember_version, true ); + wp_register_script( 'um_responsive', $this->js_baseurl . 'um-responsive' . $this->suffix . '.js', array( 'jquery', 'um_functions', 'um_crop' ), ultimatemember_version, true ); + wp_register_script('um_functions', $this->js_baseurl . 'um-functions' . $this->suffix . '.js', array( 'jquery', 'jquery-masonry', 'wp-util', 'um_scrollbar' ), ultimatemember_version, true ); + wp_register_script( 'um-gdpr', $this->js_baseurl . 'um-gdpr' . $this->suffix . '.js', array( 'jquery' ), ultimatemember_version, false ); + wp_register_script('um_conditional', $this->js_baseurl . 'um-conditional' . $this->suffix . '.js', array( 'jquery' ), ultimatemember_version, true ); + wp_register_script('um_scripts', $this->js_baseurl . 'um-scripts' . $this->suffix . '.js', array( 'jquery', 'wp-util' ), ultimatemember_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 + * + */ + $localize_data = apply_filters( 'um_enqueue_localize_data', array() ); + wp_localize_script( 'um_scripts', 'um_scripts', $localize_data ); + + wp_register_script('um_members', $this->js_baseurl . 'um-members' . $this->suffix . '.js', array( 'jquery' ), ultimatemember_version, true ); + wp_register_script('um_profile', $this->js_baseurl . 'um-profile' . $this->suffix . '.js', array( 'jquery', 'wp-util' ), ultimatemember_version, true ); + wp_register_script('um_account', $this->js_baseurl . 'um-account' . $this->suffix . '.js', array( 'jquery' ), ultimatemember_version, true ); + + wp_register_script( 'um_gchart', 'https://www.google.com/jsapi', array(), ultimatemember_version, true ); + } + + + /** + * + */ + function register_styles() { //FontAwesome and FontIcons styles wp_register_style( 'um_fonticons_ii', $this->css_baseurl . 'um-fonticons-ii.css', array(), ultimatemember_version ); wp_register_style( 'um_fonticons_fa', $this->css_baseurl . 'um-fonticons-fa.css', array(), ultimatemember_version ); @@ -118,67 +158,42 @@ if ( ! class_exists( 'um\core\Enqueue' ) ) { wp_register_style( 'um_datetime_date', $this->css_baseurl . 'pickadate/default.date.css', array( 'um-datetime' ), ultimatemember_version ); wp_register_style( 'um_datetime_time', $this->css_baseurl . 'pickadate/default.time.css', array( 'um-datetime' ), ultimatemember_version ); wp_register_style( 'um_scrollbar', $this->css_baseurl . 'um-scrollbar.css', array(), ultimatemember_version ); - //ui slider for filters - //wp_enqueue_script( 'jquery-ui-slider' ); + + wp_register_style( 'um_rtl', $this->css_baseurl . 'um.rtl.css', array(), ultimatemember_version ); + wp_register_style( 'um_default_css', $this->css_baseurl . 'um-old-default.css', array(), ultimatemember_version ); + wp_register_style( 'um_modal', $this->css_baseurl . 'um-modal.css', array( 'um_crop' ), ultimatemember_version ); + wp_register_style( 'um_responsive', $this->css_baseurl . 'um-responsive.css', array( 'um_profile', 'um_crop' ), ultimatemember_version ); + + wp_register_style( 'um_styles', $this->css_baseurl . 'um-styles.css', array(), ultimatemember_version ); + wp_register_style( 'um_members', $this->css_baseurl . 'um-members.css', array(), ultimatemember_version ); + wp_register_style( 'um_profile', $this->css_baseurl . 'um-profile.css', array(), ultimatemember_version ); + wp_register_style( 'um_account', $this->css_baseurl . 'um-account.css', array(), ultimatemember_version ); + wp_register_style( 'um_misc', $this->css_baseurl . 'um-misc.css', array(), ultimatemember_version ); + } - global $post; + /** + * Enqueue scripts and styles + */ + function wp_enqueue_scripts() { - if ( ! is_admin() ) { - $c_url = UM()->permalinks()->get_current_url( get_option( 'permalink_structure' ) ); - - $exclude = UM()->options()->get( 'js_css_exclude' ); - if ( is_array( $exclude ) ) { - array_filter( $exclude ); - } - - if ( $exclude && is_array( $exclude ) ) { - foreach ( $exclude as $match ) { - $sub_match = untrailingslashit( $match ); - if ( ! empty( $c_url ) && ! empty( $sub_match ) && strstr( $c_url, $sub_match ) ) { - return; - } - } - } - - $include = UM()->options()->get( 'js_css_include' ); - if ( is_array( $include ) ) { - array_filter( $include ); - } - - if ( $include && is_array( $include ) ) { - foreach ( $include as $match ) { - $sub_match = untrailingslashit( $match ); - if ( ! empty( $c_url ) && ! empty( $sub_match ) && strstr( $c_url, $sub_match ) ) { - $force_load = true; - } else { - if ( ! isset( $force_load ) ) { - $force_load = false; - } - } - } - } - } - - if ( isset( $force_load ) && $force_load == false ) { - return; - } + $this->register_scripts(); + $this->register_styles(); $this->load_original(); // rtl style if ( is_rtl() ) { - wp_register_style('um_rtl', um_url . 'assets/css/um.rtl.css', array(), ultimatemember_version ); - wp_enqueue_style('um_rtl'); + wp_enqueue_style( 'um_rtl' ); } - if(is_object($post) && has_shortcode($post->post_content,'ultimate-member')) { - wp_dequeue_script('jquery-form'); + 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_register_style('um_default_css', um_url . 'assets/css/um-old-default.css', array(), ultimatemember_version ); - wp_enqueue_style('um_default_css'); + wp_enqueue_style( 'um_default_css' ); $this->old_css_settings(); } @@ -191,11 +206,8 @@ if ( ! class_exists( 'um\core\Enqueue' ) ) { $uploads = wp_upload_dir(); $upload_dir = $uploads['basedir'] . DIRECTORY_SEPARATOR . 'ultimatemember' . DIRECTORY_SEPARATOR; if ( file_exists( $upload_dir . 'um_old_settings.css' ) ) { - //was the issues with HTTPS - //wp_register_style('um_old_css', $uploads['baseurl'] . '/ultimatemember/um_old_settings.css' ); - //fixed using "../../" - wp_register_style('um_old_css', um_url . '../../uploads/ultimatemember/um_old_settings.css' ); - wp_enqueue_style('um_old_css'); + wp_register_style( 'um_old_css', um_url . '../../uploads/ultimatemember/um_old_settings.css' ); + wp_enqueue_style( 'um_old_css' ); } } @@ -243,10 +255,7 @@ if ( ! class_exists( 'um\core\Enqueue' ) ) { * Include Google charts */ function load_google_charts() { - - wp_register_script('um_gchart', 'https://www.google.com/jsapi' ); - wp_enqueue_script('um_gchart'); - + wp_enqueue_script( 'um_gchart' ); } @@ -254,22 +263,11 @@ if ( ! class_exists( 'um\core\Enqueue' ) ) { * Load plugin css */ function load_css() { - - wp_register_style('um_styles', um_url . 'assets/css/um-styles.css' ); - wp_enqueue_style('um_styles'); - - wp_register_style('um_members', um_url . 'assets/css/um-members.css' ); - wp_enqueue_style('um_members'); - - wp_register_style('um_profile', um_url . 'assets/css/um-profile.css' ); - wp_enqueue_style('um_profile'); - - wp_register_style('um_account', um_url . 'assets/css/um-account.css' ); - wp_enqueue_style('um_account'); - - wp_register_style('um_misc', um_url . 'assets/css/um-misc.css' ); - wp_enqueue_style('um_misc'); - + wp_enqueue_style( 'um_styles' ); + wp_enqueue_style( 'um_members' ); + wp_enqueue_style( 'um_profile' ); + wp_enqueue_style( 'um_account' ); + wp_enqueue_style( 'um_misc' ); } @@ -277,19 +275,17 @@ if ( ! class_exists( 'um\core\Enqueue' ) ) { * Load select-dropdowns JS */ function load_selectjs() { - - wp_enqueue_script('select2'); - wp_enqueue_style('select2'); - + 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'); + function load_fonticons() { + wp_enqueue_style( 'um_fonticons_ii' ); + wp_enqueue_style( 'um_fonticons_fa' ); } @@ -297,9 +293,8 @@ if ( ! class_exists( 'um\core\Enqueue' ) ) { * Load fileupload JS */ function load_fileupload() { - wp_enqueue_script('um_jquery_form'); - wp_enqueue_script('um_fileupload'); - wp_enqueue_style('um_fileupload'); + wp_enqueue_script( 'um_fileupload' ); + wp_enqueue_style( 'um_fileupload' ); } @@ -307,12 +302,8 @@ if ( ! class_exists( 'um\core\Enqueue' ) ) { * Load JS functions */ function load_functions() { - - wp_register_script('um_functions', um_url . 'assets/js/um-functions' . $this->suffix . '.js', array('jquery', 'jquery-masonry', 'wp-util', 'um_scrollbar') ); - wp_enqueue_script('um_functions'); - - wp_enqueue_script( 'um-gdpr', um_url . 'assets/js/um-gdpr' . $this->suffix . '.js', array( 'jquery' ), ultimatemember_version, false ); - + wp_enqueue_script('um_functions' ); + wp_enqueue_script( 'um-gdpr' ); } @@ -320,47 +311,11 @@ if ( ! class_exists( 'um\core\Enqueue' ) ) { * Load custom JS */ function load_customjs() { - - wp_register_script('um_conditional', um_url . 'assets/js/um-conditional' . $this->suffix . '.js' ); wp_enqueue_script('um_conditional'); - - wp_register_script('um_scripts', um_url . 'assets/js/um-scripts' . $this->suffix . '.js', array('jquery','wp-util') ); - - /** - * 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 - * - */ - $localize_data = apply_filters( 'um_enqueue_localize_data', array() ); - - wp_localize_script( 'um_scripts', 'um_scripts', $localize_data ); - wp_enqueue_script('um_scripts'); - - wp_register_script('um_members', um_url . 'assets/js/um-members' . $this->suffix . '.js' ); wp_enqueue_script('um_members'); - - wp_register_script('um_profile', um_url . 'assets/js/um-profile' . $this->suffix . '.js', array('jquery','wp-util') ); wp_enqueue_script('um_profile'); - - wp_register_script('um_account', um_url . 'assets/js/um-account' . $this->suffix . '.js' ); wp_enqueue_script('um_account'); - } @@ -398,46 +353,36 @@ if ( ! class_exists( 'um\core\Enqueue' ) ) { /** * Load crop script */ - function load_imagecrop(){ - wp_enqueue_script('um_crop'); - wp_enqueue_style('um_crop'); + 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'); + function load_tipsy() { + wp_enqueue_script( 'um_tipsy' ); + wp_enqueue_style( 'um_tipsy' ); } /** * Load modal */ - function load_modal(){ - - wp_register_style('um_modal', um_url . 'assets/css/um-modal.css' ); - wp_enqueue_style('um_modal'); - - wp_register_script('um_modal', um_url . 'assets/js/um-modal' . $this->suffix . '.js', array('jquery','wp-util') ); - wp_enqueue_script('um_modal'); - + function load_modal() { + wp_enqueue_script( 'um_modal' ); + wp_enqueue_style( 'um_modal' ); } /** * Load responsive styles */ - function load_responsive(){ - - wp_register_script('um_responsive', um_url . 'assets/js/um-responsive' . $this->suffix . '.js' ); - wp_enqueue_script('um_responsive'); - - wp_register_style('um_responsive', um_url . 'assets/css/um-responsive.css', array( 'um_profile' ) ); - wp_enqueue_style('um_responsive'); - + function load_responsive() { + wp_enqueue_script( 'um_responsive' ); + wp_enqueue_style( 'um_responsive' ); } }