From 21f266f407b1e30bcd01dd99e61a2a98c8369faf Mon Sep 17 00:00:00 2001 From: nikitasinelnikov Date: Fri, 8 Feb 2019 11:43:01 +0200 Subject: [PATCH] - fixed upload dir on UM upload process for avoid the conflicts; --- includes/core/class-files.php | 6 ++ includes/core/class-uploader.php | 12 ++- includes/core/um-actions-profile.php | 2 + includes/core/um-actions-register.php | 2 + languages/ultimate-member-en_US.po | 108 +++++++++++++------------- readme.txt | 1 + 6 files changed, 75 insertions(+), 56 deletions(-) diff --git a/includes/core/class-files.php b/includes/core/class-files.php index 06974e16..20aed865 100644 --- a/includes/core/class-files.php +++ b/includes/core/class-files.php @@ -281,7 +281,9 @@ if ( ! class_exists( 'um\core\Files' ) ) { wp_send_json_error( esc_js( __( 'Invalid file ownership', 'ultimate-member' ) ) ); } + UM()->uploader()->replace_upload_dir = true; $output = UM()->uploader()->resize_image( $image_path, $src, $key, $user_id, $coord ); + UM()->uploader()->replace_upload_dir = false; delete_option( "um_cache_userdata_{$user_id}" ); @@ -340,7 +342,9 @@ if ( ! class_exists( 'um\core\Files' ) ) { if ( ! is_array( $_FILES[ $id ]['name'] ) ) { + UM()->uploader()->replace_upload_dir = true; $uploaded = UM()->uploader()->upload_image( $_FILES[ $id ], $user_id, $id ); + UM()->uploader()->replace_upload_dir = false; if ( isset( $uploaded['error'] ) ){ $ret['error'] = $uploaded['error']; } else { @@ -416,7 +420,9 @@ if ( ! class_exists( 'um\core\Files' ) ) { $user_id = $_POST['user_id']; + UM()->uploader()->replace_upload_dir = true; $uploaded = UM()->uploader()->upload_file( $_FILES[ $id ], $user_id, $id ); + UM()->uploader()->replace_upload_dir = false; if ( isset( $uploaded['error'] ) ){ $ret['error'] = $uploaded['error']; diff --git a/includes/core/class-uploader.php b/includes/core/class-uploader.php index 11a37fcb..93e89a8e 100644 --- a/includes/core/class-uploader.php +++ b/includes/core/class-uploader.php @@ -22,6 +22,12 @@ if ( ! class_exists( 'um\core\Uploader' ) ) { var $user_id; + /** + * @var integer + */ + var $replace_upload_dir = false; + + /** * @var string */ @@ -270,8 +276,10 @@ if ( ! class_exists( 'um\core\Uploader' ) ) { list( $this->upload_user_baseurl, $this->upload_user_basedir ) = apply_filters( 'um_change_upload_user_path', array( $this->upload_user_baseurl, $this->upload_user_basedir ), $this->field_key, $this->upload_type ); - $args['path'] = $this->upload_user_basedir; - $args['url'] = $this->upload_user_baseurl; + if ( $this->replace_upload_dir ) { + $args['path'] = $this->upload_user_basedir; + $args['url'] = $this->upload_user_baseurl; + } return $args; } diff --git a/includes/core/um-actions-profile.php b/includes/core/um-actions-profile.php index 6bf5c79a..86d5358a 100644 --- a/includes/core/um-actions-profile.php +++ b/includes/core/um-actions-profile.php @@ -367,7 +367,9 @@ function um_user_edit_profile( $args ) { $files = apply_filters( 'um_user_pre_updating_files_array', $files ); if ( ! empty( $files ) && is_array( $files ) ) { + UM()->uploader()->replace_upload_dir = true; UM()->uploader()->move_temporary_files( um_user( 'ID' ), $files ); + UM()->uploader()->replace_upload_dir = false; } /** diff --git a/includes/core/um-actions-register.php b/includes/core/um-actions-register.php index afd946bd..334342ed 100644 --- a/includes/core/um-actions-register.php +++ b/includes/core/um-actions-register.php @@ -638,7 +638,9 @@ function um_registration_save_files( $user_id, $args ) { $files = apply_filters( 'um_user_pre_updating_files_array', $files ); if ( ! empty( $files ) ) { + UM()->uploader()->replace_upload_dir = true; UM()->uploader()->move_temporary_files( $user_id, $files ); + UM()->uploader()->replace_upload_dir = false; } } add_action( 'um_registration_set_extra_data', 'um_registration_save_files', 10, 2 ); diff --git a/languages/ultimate-member-en_US.po b/languages/ultimate-member-en_US.po index ed5c4555..64c00caf 100644 --- a/languages/ultimate-member-en_US.po +++ b/languages/ultimate-member-en_US.po @@ -1,8 +1,8 @@ msgid "" msgstr "" "Project-Id-Version: Ultimate Member\n" -"POT-Creation-Date: 2019-02-07 15:40+0200\n" -"PO-Revision-Date: 2019-02-07 15:40+0200\n" +"POT-Creation-Date: 2019-02-08 11:41+0200\n" +"PO-Revision-Date: 2019-02-08 11:41+0200\n" "Last-Translator: \n" "Language-Team: \n" "Language: en_US\n" @@ -103,7 +103,7 @@ msgstr "" #: includes/admin/core/class-admin-builder.php:767 #: includes/admin/core/class-admin-dragdrop.php:32 #: includes/admin/core/class-admin-menu.php:104 -#: includes/core/class-fields.php:4069 +#: includes/core/class-fields.php:4071 msgid "Please login as administrator" msgstr "" @@ -268,7 +268,7 @@ msgstr "" #: includes/admin/core/class-admin-forms.php:947 #: includes/admin/core/class-admin-forms.php:956 #: includes/admin/core/class-admin-notices.php:390 -#: includes/core/um-actions-profile.php:553 +#: includes/core/um-actions-profile.php:555 msgid "Remove" msgstr "" @@ -2550,7 +2550,7 @@ msgid "UM Action" msgstr "" #: includes/admin/core/class-admin-users.php:116 -#: includes/core/class-fields.php:2304 +#: includes/core/class-fields.php:2306 msgid "Apply" msgstr "" @@ -3524,12 +3524,12 @@ msgstr "" #: includes/admin/templates/modal/dynamic_new_group.php:15 #: includes/admin/templates/modal/fonticons.php:11 #: includes/admin/templates/role/publish.php:24 -#: includes/core/class-fields.php:2305 includes/core/class-fields.php:2402 -#: includes/core/um-actions-profile.php:554 -#: includes/core/um-actions-profile.php:693 -#: includes/core/um-actions-profile.php:726 -#: includes/core/um-actions-profile.php:1071 -#: includes/core/um-actions-profile.php:1078 +#: includes/core/class-fields.php:2307 includes/core/class-fields.php:2404 +#: includes/core/um-actions-profile.php:556 +#: includes/core/um-actions-profile.php:695 +#: includes/core/um-actions-profile.php:728 +#: includes/core/um-actions-profile.php:1073 +#: includes/core/um-actions-profile.php:1080 msgid "Cancel" msgstr "" @@ -3892,7 +3892,7 @@ msgid "Members" msgstr "" #: includes/class-config.php:133 includes/class-config.php:742 -#: includes/core/um-actions-profile.php:1077 +#: includes/core/um-actions-profile.php:1079 #: includes/core/um-actions-user.php:15 msgid "Logout" msgstr "" @@ -4322,7 +4322,7 @@ msgid "Cover Photo" msgstr "" #: includes/core/class-builtin.php:1080 -#: includes/core/um-actions-profile.php:516 +#: includes/core/um-actions-profile.php:518 msgid "Change your cover photo" msgstr "" @@ -6241,89 +6241,89 @@ msgstr "" msgid "Add translation to %s" msgstr "" -#: includes/core/class-fields.php:1169 templates/message.php:5 +#: includes/core/class-fields.php:1171 templates/message.php:5 #, php-format msgid "%s" msgstr "" -#: includes/core/class-fields.php:1188 +#: includes/core/class-fields.php:1190 msgid "Custom Field" msgstr "" -#: includes/core/class-fields.php:1485 +#: includes/core/class-fields.php:1487 msgid "Please upload a valid image!" msgstr "" -#: includes/core/class-fields.php:1492 includes/core/class-fields.php:1513 +#: includes/core/class-fields.php:1494 includes/core/class-fields.php:1515 msgid "Upload" msgstr "" -#: includes/core/class-fields.php:1493 +#: includes/core/class-fields.php:1495 msgid "Sorry this is not a valid image." msgstr "" -#: includes/core/class-fields.php:1494 +#: includes/core/class-fields.php:1496 msgid "This image is too large!" msgstr "" -#: includes/core/class-fields.php:1495 +#: includes/core/class-fields.php:1497 msgid "This image is too small!" msgstr "" -#: includes/core/class-fields.php:1496 +#: includes/core/class-fields.php:1498 msgid "You can only upload one image" msgstr "" -#: includes/core/class-fields.php:1963 +#: includes/core/class-fields.php:1965 msgid "Current Password" msgstr "" -#: includes/core/class-fields.php:1992 +#: includes/core/class-fields.php:1994 msgid "New Password" msgstr "" -#: includes/core/class-fields.php:2024 +#: includes/core/class-fields.php:2026 #, php-format msgid "Confirm %s" msgstr "" -#: includes/core/class-fields.php:2259 +#: includes/core/class-fields.php:2261 msgid "Upload Photo" msgstr "" -#: includes/core/class-fields.php:2280 includes/core/class-fields.php:2304 -#: includes/core/um-actions-profile.php:724 +#: includes/core/class-fields.php:2282 includes/core/class-fields.php:2306 +#: includes/core/um-actions-profile.php:726 msgid "Change photo" msgstr "" -#: includes/core/class-fields.php:2304 includes/core/class-fields.php:2401 +#: includes/core/class-fields.php:2306 includes/core/class-fields.php:2403 msgid "Processing..." msgstr "" -#: includes/core/class-fields.php:2326 +#: includes/core/class-fields.php:2328 msgid "Upload File" msgstr "" -#: includes/core/class-fields.php:2368 includes/core/um-filters-fields.php:243 +#: includes/core/class-fields.php:2370 includes/core/um-filters-fields.php:243 msgid "This file has been removed." msgstr "" -#: includes/core/class-fields.php:2371 includes/core/class-fields.php:2401 +#: includes/core/class-fields.php:2373 includes/core/class-fields.php:2403 msgid "Change file" msgstr "" -#: includes/core/class-fields.php:2401 +#: includes/core/class-fields.php:2403 msgid "Save" msgstr "" -#: includes/core/class-fields.php:3824 +#: includes/core/class-fields.php:3826 #, php-format msgid "" "Your profile is looking a little empty. Why not add some " "information!" msgstr "" -#: includes/core/class-fields.php:3826 +#: includes/core/class-fields.php:3828 msgid "This user has not added any information to their profile yet." msgstr "" @@ -6339,23 +6339,23 @@ msgstr "" msgid "Invalid file ownership" msgstr "" -#: includes/core/class-files.php:334 +#: includes/core/class-files.php:336 msgid "Invalid nonce" msgstr "" -#: includes/core/class-files.php:354 includes/core/class-files.php:439 +#: includes/core/class-files.php:358 includes/core/class-files.php:445 msgid "A theme or plugin compatibility issue" msgstr "" -#: includes/core/class-files.php:982 +#: includes/core/class-files.php:988 msgid "Ultimate Member: Not a valid temp file" msgstr "" -#: includes/core/class-files.php:1110 +#: includes/core/class-files.php:1116 msgid "Invalid user ID: " msgstr "" -#: includes/core/class-files.php:1119 includes/core/class-files.php:1147 +#: includes/core/class-files.php:1125 includes/core/class-files.php:1153 msgid "Unauthorized to do this attempt." msgstr "" @@ -6517,28 +6517,28 @@ msgstr "" msgid "Default Template" msgstr "" -#: includes/core/class-uploader.php:654 +#: includes/core/class-uploader.php:662 msgid "Your image is invalid!" msgstr "" -#: includes/core/class-uploader.php:696 +#: includes/core/class-uploader.php:704 msgid "This media type is not recognized." msgstr "" -#: includes/core/class-uploader.php:744 +#: includes/core/class-uploader.php:752 msgid "Your image is invalid or too large!" msgstr "" -#: includes/core/class-uploader.php:750 includes/core/class-uploader.php:752 +#: includes/core/class-uploader.php:758 includes/core/class-uploader.php:760 #, php-format msgid "Your photo is too small. It must be at least %spx wide." msgstr "" -#: includes/core/class-uploader.php:805 +#: includes/core/class-uploader.php:813 msgid "This file type is not recognized." msgstr "" -#: includes/core/class-uploader.php:1079 +#: includes/core/class-uploader.php:1087 #, php-format msgid "Maximum file size allowed: %s" msgstr "" @@ -6878,37 +6878,37 @@ msgstr "" msgid "Your choosed %s" msgstr "" -#: includes/core/um-actions-profile.php:552 +#: includes/core/um-actions-profile.php:554 msgid "Change cover photo" msgstr "" -#: includes/core/um-actions-profile.php:595 +#: includes/core/um-actions-profile.php:597 msgid "Upload a cover photo" msgstr "" -#: includes/core/um-actions-profile.php:692 +#: includes/core/um-actions-profile.php:694 msgid "Upload photo" msgstr "" -#: includes/core/um-actions-profile.php:725 +#: includes/core/um-actions-profile.php:727 msgid "Remove photo" msgstr "" -#: includes/core/um-actions-profile.php:889 +#: includes/core/um-actions-profile.php:891 msgid "Tell us a bit about yourself..." msgstr "" -#: includes/core/um-actions-profile.php:905 +#: includes/core/um-actions-profile.php:907 #, php-format msgid "This user account status is %s" msgstr "" -#: includes/core/um-actions-profile.php:1044 -#: includes/core/um-actions-profile.php:1075 +#: includes/core/um-actions-profile.php:1046 +#: includes/core/um-actions-profile.php:1077 msgid "Edit Profile" msgstr "" -#: includes/core/um-actions-profile.php:1076 +#: includes/core/um-actions-profile.php:1078 msgid "My Account" msgstr "" diff --git a/readme.txt b/readme.txt index a066bcda..40f27a3c 100644 --- a/readme.txt +++ b/readme.txt @@ -149,6 +149,7 @@ The plugin works with popular caching plugins by automatically excluding Ultimat - Fixed textarea profile field formatting - Fixed registration without username field - Fixed flush password reset limit after successfully login + - Fixed upload files handlers for avoid the conflicts with other plugins = 2.0.38: January 10, 2019 =