Commit Graph

159 Commits

Author SHA1 Message Date
Mykyta Synelnikov bcfdbb954d Refactor email placeholders and deprecate obsolete methods
Streamline placeholder handling for emails by introducing universal patterns and replacements, and update email dispatch functions for efficiency. Deprecated various redundant user and password-related methods, consolidating logic into common utility classes for better maintainability.
2025-05-19 14:26:39 +03:00
Mykyta Synelnikov db0da58351 Refactor password reset URL handling and email dispatch.
Added optional parameter to `reset_url` for user-specific handling. Updated email dispatch logic to include dynamic generation of the password reset link with proper placeholder replacements.
2025-04-23 14:35:38 +03:00
Mykyta Synelnikov 54deffd244 Enhance password reset logic and add Action Scheduler filter
Ensure proper handling of user data in password reset functions by adding checks and updating parameter handling. Introduce a new filter to extend site health information and include a setting for enabling email sending via Action Scheduler. Improve code clarity with updated comments and function annotations.
2025-04-22 17:16:55 +03:00
Mykyta Synelnikov 5356148cc4 Implement batch processing for users with empty account statuses
Introduced a new batch process to handle users lacking an `account_status` meta efficiently. Refactored legacy methods, added async scheduling, and created helper functions to manage and track progress. These changes improve performance and reliability for large user bases.
2025-04-15 14:27:59 +03:00
Mykyta Synelnikov 823f98906f * sorted deprecated function; 2024-11-29 14:24:35 +02:00
Mykyta Synelnikov 8d33c43130 Fixes 'um_dispatch_email' action #1589
* Sending email notifications directly (without Action Scheduler) on user delete action;
* Changed activation handler priority for integration with Action Scheduler
* Added 'fetch_user_id' argument for fetching the necessary user before email sending when Action Scheduler is active.
2024-11-19 17:48:10 +02:00
Mykyta Synelnikov 34ee3d5ebc * reviewed and updated docs; 2024-11-06 17:13:38 +02:00
Mykyta Synelnikov 91a0c13399 Merge branch 'development/2.8.x' into feature/action-schedule-integration 2024-10-21 17:45:42 +03:00
Mykyta Synelnikov f27dcd6e41 * manually reviewed https://github.com/ultimatemember/ultimatemember/tree/fix/um_member_directory_data; 2024-10-14 17:14:56 +03:00
Mykyta Synelnikov 1cbbb70a03 * added security condition to check that one logged-in user cannot activate another one user via email activation link;
* fixed double handler of email activation link (wp_die doesn't stop the script for some reason);
* added redirects to login page with error notices instead of wp_die text;
2024-10-11 18:47:40 +03:00
Mykyta Synelnikov 62cc39e2ef * updated single compare status to using has_status function; 2024-10-11 17:21:24 +03:00
Mykyta Synelnikov 7f7820e67c * fixed sending emails upon registration;
* fixed using `um_user( 'status' )` and `um_user( 'account_status' )` functions;
* fixed using `set_status()` function;
* based on https://github.com/ultimatemember/ultimatemember/pull/1564
2024-10-10 18:18:56 +03:00
Mykyta Synelnikov d0aafed9a2 * prepared to release; 2024-09-27 17:16:33 +03:00
Mykyta Synelnikov 35e3727bca * added force attribute to change user status actions for ignore current user condition in some cases; 2024-09-27 15:41:01 +03:00
Yurii Nalivaiko b1d2f20d84 Renamed action to be more clear 2024-09-26 15:35:25 +02:00
Yurii Nalivaiko 045ef6875b Fixed action scheduler hook names 2024-09-26 15:30:05 +02:00
Mykyta Synelnikov 33bc484629 * Admin Users bulk-actions
* Admin single user actions
* Frontend single user action
2024-09-24 13:18:48 +03:00
Mykyta Synelnikov 512dc53a18 - changed wp-admin > Users page;
* updated filters by status, avoid slow queries for getting users count;
* updated bulk-actions for changing statuses (moved to WP native dropdown)
* separate handlers for changing user statuses on wp-admin and frontend (partially implemented);
* created class UM()->common()->users() to handle user statuses in more clear format;
* deprecated old hooks and old functions
2024-09-20 18:41:08 +03:00
Yurii Nalivaiko 275ba09188 Changed actions to use maybe action scheduler 2024-09-10 13:17:31 +02:00
Mykyta Synelnikov 6df83f4f09 - updated structure for action scheduler; 2024-09-06 15:03:50 +03:00
Yurii Nalivaiko b9772a06c5 Removed unused call 2024-09-05 10:58:43 +02:00
Yurii Nalivaiko ec18f52dd9 Added Action Scheduler 2024-09-04 18:03:22 +02:00
Mykyta Synelnikov 7d53d2e113 - fixed #1466 issue; 2024-02-29 15:11:01 +02:00
Mykyta Synelnikov e1f550afb5 - changed "e-mail" to "email";
- changed texts for admin notices;
- added a few links to docs;
2024-02-16 15:12:21 +02:00
ashubawork d9021373ce - add meta to user 2024-01-16 14:00:22 +02:00
ashubawork 2107336cf9 - change placeholders for set password 2023-12-07 13:36:51 +02:00
Mykyta Synelnikov 2c5f396795 - partially reviewed #1361; 2023-12-01 00:30:37 +02:00
Mykyta Synelnikov b40edd26e6 - wp-admin assets refactoring (in process); 2023-11-03 17:31:18 +02:00
Mykyta Synelnikov df47e006d7 - changed version to 2.7.0;
- updated dependencies to 2.7.0;
2023-10-10 18:20:15 +03:00
Mykyta Synelnikov 57ef818cec - use user_login by default while generating slug if custom user meta is empty; 2023-10-09 19:50:44 +03:00
ashubawork 30c4ba215b - delete comments after user deleting 2023-10-03 14:34:59 +03:00
Mykyta Synelnikov e971d1e6b3 - updated dependencies versions;
- fixed permalinks generate function for getting raw base permalink from the user meta;
2023-09-25 21:08:35 +03:00
Mykyta Synelnikov 01ee8305a2 - reduced using get_the_time( 'U', $post_id ); and current_time( 'timestamp' ); 2023-09-22 20:29:40 +03:00
Champ Camba 7ba73aaf35 Avoid regenerating hash for profile URL on profile update 2023-09-14 19:54:58 +08:00
Mykyta Synelnikov c144eefe6a - added um_custom_meta_permalink_base_generate_user_slug hook docs; 2023-09-11 16:18:56 +03:00
Mykyta Synelnikov 0149605a36 - added ability to use custom metakey as profile slug;
- important: use for this case required usermeta which cannot be empty
2023-09-11 15:41:29 +03:00
Mykyta Synelnikov 77d3ad9b56 - added hash type for the user permalink like: http://localhost:8000/user/~b866ebabacc30f06c1/;
- wpcs + documented new hooks;
2023-09-09 02:21:15 +03:00
Mykyta Synelnikov 4e1e577a21 - fixed PHP notice for $cached_user variable; 2023-09-04 13:24:28 +03:00
Mykyta Synelnikov 7cc78e042d - added $form_data attribute to 'um_before_save_registration_details' hook; 2023-07-02 20:17:18 +03:00
Mykyta Synelnikov 755ff6a790 - fixed account form; 2023-07-01 12:46:43 +03:00
Mykyta Synelnikov dad4c8017c - fix for profile form; 2023-07-01 01:52:43 +03:00
Mykyta Synelnikov 7fafa3a4b3 - fix for registration form; 2023-06-30 21:55:59 +03:00
Mykyta Synelnikov fae47c6065 - fixed vulnerability if wp_capabilities has accent characters; 2023-06-29 19:56:54 +03:00
Mykyta Synelnikov fc07de48b7 - fixed vulnerability with banned keys (made them not case-sensitive); 2023-06-28 11:17:28 +03:00
Mykyta Synelnikov f68c1549a0 - updated hookdoc; 2023-06-27 10:25:39 +03:00
Mykyta Synelnikov fb37b1cfc7 - fixed vulnerability with banned keys in usermeta; 2023-06-27 10:24:54 +03:00
Mykyta Synelnikov 034d9e8b43 - fixed dynamically declared variables inside the classes; 2023-04-17 20:16:15 +03:00
Nikita Sinelnikov aa8000bde9 - added filter for making 3rd-party roles editable through Ultimate Member interfaces. Use 'um_extend_editable_roles' and pass there an array of role keys( e.g. 'editor', 'administrator', etc. );
- reviewed and closed #1151;
2023-03-28 01:53:50 +03:00
yuriinalivaiko 2a184cbe68 - fixed role setting "Avoid indexing profile by search engines" 2023-02-24 16:08:16 +02:00
Nikita Sinelnikov 8b2770b12e - deprecated: UM()->user()->password_reset_key variable;
- fixed: #1083, #991
2022-12-13 23:16:33 +02:00