From 1a17095b24ffae324e6d895e9cfc8b75ccfa39a5 Mon Sep 17 00:00:00 2001 From: nikitozzzzzzz Date: Tue, 7 Aug 2018 12:38:19 +0300 Subject: [PATCH] - small fixes for file uploader; - added filter for include UM pages to conditional logic; --- assets/js/um-functions.js | 10 ++++---- includes/class-init.php | 4 ++-- includes/core/class-access.php | 9 +++++-- includes/core/class-enqueue.php | 6 ++--- includes/core/class-fields.php | 15 +++++++++--- includes/core/class-uploader.php | 37 +++++++++++++++++++---------- includes/core/um-filters-fields.php | 2 +- templates/members-grid.php | 4 ++-- 8 files changed, 58 insertions(+), 29 deletions(-) diff --git a/assets/js/um-functions.js b/assets/js/um-functions.js index 08d798d1..22d3bb24 100644 --- a/assets/js/um-functions.js +++ b/assets/js/um-functions.js @@ -241,12 +241,13 @@ function initImageUpload_UM( trigger ) { } trigger.uploadFile({ - url: um_scripts.imageupload, + url: wp.ajax.settings.url, method: "POST", multiple: false, formData: { - key: trigger.data('key'), - set_id: trigger.data('set_id'), + action: 'um_imageupload', + key: trigger.data('key'), + set_id: trigger.data('set_id'), set_mode: trigger.data('set_mode'), _wpnonce: trigger.data('nonce'), timestamp: trigger.data('timestamp'), @@ -339,10 +340,11 @@ function initFileUpload_UM( trigger ) { } trigger.uploadFile({ - url: um_scripts.fileupload, + url: wp.ajax.settings.url, method: "POST", multiple: false, formData: { + action: 'um_fileupload', key: trigger.data('key'), set_id: trigger.data('set_id'), set_mode: trigger.data('set_mode'), diff --git a/includes/class-init.php b/includes/class-init.php index a8f23b22..8f7d66dc 100644 --- a/includes/class-init.php +++ b/includes/class-init.php @@ -30,7 +30,7 @@ if ( ! class_exists( 'UM' ) ) { * @method UM_Terms_Conditions_API Terms_Conditions_API() * @method UM_Private_Content_API Private_Content_API() * @method UM_User_Location_API User_Location_API() - * @method UM_GDPR_API GDPR_API() + * @method UM_Photos_API Photos_API() * */ final class UM extends UM_Functions { @@ -1158,7 +1158,7 @@ if ( ! class_exists( 'UM' ) ) { /** * @since 2.0.21 * - * @return um\core\Files + * @return um\core\Uploader */ function uploader() { if ( empty( $this->classes['uploader'] ) ) { diff --git a/includes/core/class-access.php b/includes/core/class-access.php index 0f3d7f95..5e247351 100644 --- a/includes/core/class-access.php +++ b/includes/core/class-access.php @@ -533,12 +533,17 @@ if ( ! class_exists( 'um\core\Access' ) ) { return false; } - //exlude from privacy UM default pages (except Members list and User(Profile) page) + //exclude from privacy UM default pages (except Members list and User(Profile) page) + $exclude = false; if ( ! empty( $post->post_type ) && $post->post_type == 'page' ) { if ( um_is_core_post( $post, 'login' ) || um_is_core_post( $post, 'register' ) || um_is_core_post( $post, 'account' ) || um_is_core_post( $post, 'logout' ) || um_is_core_post( $post, 'password-reset' ) || ( is_user_logged_in() && um_is_core_post( $post, 'user' ) ) ) - return false; + $exclude = true; + } + $exclude = apply_filters( 'um_exclude_posts_from_privacy', $exclude, $post ); + if ( $exclude ) { + return false; } $restricted_posts = UM()->options()->get( 'restricted_access_post_metabox' ); diff --git a/includes/core/class-enqueue.php b/includes/core/class-enqueue.php index 7c53f542..82ad952e 100644 --- a/includes/core/class-enqueue.php +++ b/includes/core/class-enqueue.php @@ -137,8 +137,8 @@ if ( ! class_exists( 'um\core\Enqueue' ) ) { */ $localize_data = apply_filters( 'um_enqueue_localize_data', array( 'ajaxurl' => admin_url( 'admin-ajax.php' ), - 'fileupload' => UM()->get_ajax_route( 'um\core\Files', 'ajax_file_upload' ), - 'imageupload' => UM()->get_ajax_route( 'um\core\Files', 'ajax_image_upload' ), + //'fileupload' => UM()->get_ajax_route( 'um\core\Files', 'ajax_file_upload' ), + //'imageupload' => UM()->get_ajax_route( 'um\core\Files', 'ajax_image_upload' ), 'remove_file' => UM()->get_ajax_route( 'um\core\Files', 'ajax_remove_file' ), 'delete_profile_photo' => UM()->get_ajax_route( 'um\core\Profile', 'ajax_delete_profile_photo' ), 'delete_cover_photo' => UM()->get_ajax_route( 'um\core\Profile', 'ajax_delete_cover_photo' ), @@ -318,7 +318,7 @@ if ( ! class_exists( 'um\core\Enqueue' ) ) { */ function load_functions() { - wp_register_script('um_functions', um_url . 'assets/js/um-functions' . $this->suffix . '.js', array('jquery', 'jquery-masonry') ); + wp_register_script('um_functions', um_url . 'assets/js/um-functions' . $this->suffix . '.js', array('jquery', 'jquery-masonry', 'wp-util') ); wp_enqueue_script('um_functions'); wp_enqueue_script( 'um-gdpr', um_url . 'assets/js/um-gdpr' . $this->suffix . '.js', array( 'jquery' ), ultimatemember_version, false ); diff --git a/includes/core/class-fields.php b/includes/core/class-fields.php index 8833fa39..19905dbb 100644 --- a/includes/core/class-fields.php +++ b/includes/core/class-fields.php @@ -2303,15 +2303,24 @@ if ( ! class_exists( 'um\core\Fields' ) ) { }else{ $file_url = um_user_uploads_uri() . $this->field_value( $key, $default, $data ); } - $output .= "
+ + + + + if ( file_exists( um_user_uploads_dir() . $file_field_value ) ) { + $output .= "" . __( 'Change file', 'ultimate-member' ) . ""; +
"; + } else { + $output .= "
" . __('This file has been removed.','ultimate-member') . "
"; + } + + $output .= "" . __( 'Change file', 'ultimate-member' ) . ""; } else { $output .= '
{$button_text}'; diff --git a/includes/core/class-uploader.php b/includes/core/class-uploader.php index 977cc3ea..2032bd0c 100644 --- a/includes/core/class-uploader.php +++ b/includes/core/class-uploader.php @@ -232,7 +232,10 @@ if ( ! class_exists( 'um\core\Uploader' ) ) { /** * Set upload directory + * * @param array $args + * + * @return array */ public function set_upload_directory( $args ){ @@ -252,17 +255,20 @@ if ( ! class_exists( 'um\core\Uploader' ) ) { return $args; } - + /** * Upload Image files - * @param string $uploadedfile - * @param integer $user_id - * @param string $field_key - * @param string $upload_type * - * @since 2.0.22 + * @param $uploadedfile + * @param int|null $user_id + * @param string $field_key + * @param string $upload_type + * + * @since 2.0.22 + * + * @return array */ - public function upload_image( $uploadedfile, $user_id = null, $field_key = '', $upload_type = 'stream_photo' ){ + public function upload_image( $uploadedfile, $user_id = null, $field_key = '', $upload_type = 'stream_photo' ) { $response = array(); @@ -324,6 +330,8 @@ if ( ! class_exists( 'um\core\Uploader' ) ) { $response['error'] = $movefile['error']; }else{ + $movefile['url'] = set_url_scheme( $movefile['url'] ); + $movefile['file_info']['basename'] = wp_basename( $movefile['file'] ); $file_type = wp_check_filetype( $movefile['file_info']['basename'] ); @@ -336,7 +344,7 @@ if ( ! class_exists( 'um\core\Uploader' ) ) { $movefile['file_info']['size_format'] = size_format( $movefile['file_info']['size'] ); $movefile['file'] = $movefile['file_info']['basename']; - + /** * UM hook * @@ -438,11 +446,14 @@ if ( ! class_exists( 'um\core\Uploader' ) ) { /** * Upload Files - * @param string $uploadedfile - * @param integer $user_id - * @param string $field_key * - * @since 2.0.22 + * @param $uploadedfile + * @param int|null $user_id + * @param string $field_key + * + * @since 2.0.22 + * + * @return array */ public function upload_file( $uploadedfile, $user_id = null, $field_key = '' ){ @@ -492,6 +503,8 @@ if ( ! class_exists( 'um\core\Uploader' ) ) { $file_type = wp_check_filetype( $movefile['file'] ); + $movefile['url'] = set_url_scheme( $movefile['url'] ); + $movefile['file_info']['name'] = $movefile['url']; $movefile['file_info']['original_name'] = $uploadedfile['name']; $movefile['file_info']['basename'] = wp_basename( $movefile['file'] ); diff --git a/includes/core/um-filters-fields.php b/includes/core/um-filters-fields.php index 767dceb3..bbca9331 100644 --- a/includes/core/um-filters-fields.php +++ b/includes/core/um-filters-fields.php @@ -220,7 +220,7 @@ add_filter( 'um_profile_field_filter_hook__date', 'um_profile_field_filter_hook_ * @param $value * @param $data * - * @return string|void + * @return string */ function um_profile_field_filter_hook__file( $value, $data ) { $uri = um_user_uploads_uri() . $value; diff --git a/templates/members-grid.php b/templates/members-grid.php index efbccdd5..2b049ecd 100644 --- a/templates/members-grid.php +++ b/templates/members-grid.php @@ -100,7 +100,7 @@ continue; ?> -
+
-
fields()->get_label( $key ); ?>:
+
fields()->get_label( $key ); ?>: