Changeset 3470603
- Timestamp:
- 02/26/2026 05:56:47 PM (13 days ago)
- Location:
- wp-user-manager
- Files:
-
- 2 deleted
- 10 edited
- 1 copied
-
tags/2.9.15 (copied) (copied from wp-user-manager/trunk)
-
tags/2.9.15/includes/actions.php (modified) (3 diffs)
-
tags/2.9.15/languages/wp-user-manager.pot (modified) (3 diffs)
-
tags/2.9.15/package-lock.json (deleted)
-
tags/2.9.15/readme.txt (modified) (2 diffs)
-
tags/2.9.15/vendor-dist/composer/installed.php (modified) (1 diff)
-
tags/2.9.15/wp-user-manager.php (modified) (2 diffs)
-
trunk/includes/actions.php (modified) (3 diffs)
-
trunk/languages/wp-user-manager.pot (modified) (3 diffs)
-
trunk/package-lock.json (deleted)
-
trunk/readme.txt (modified) (2 diffs)
-
trunk/vendor-dist/composer/installed.php (modified) (1 diff)
-
trunk/wp-user-manager.php (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
wp-user-manager/tags/2.9.15/includes/actions.php
r3468506 r3470603 489 489 */ 490 490 function wpum_register_profile_privacy_fields() { 491 Container::make( 'user_meta', esc_html__( 'Profile Privacy', 'wp-user-manager' ) ) 492 ->add_fields( array( 493 Field::make( 'checkbox', 'hide_profile_guests', esc_html__( 'Hide profile from guests', 'wp-user-manager' ) ) 494 ->set_help_text( esc_html__( 'Hide this profile from guests. Overrides the global profile options.', 'wp-user-manager' ) ), 495 Field::make( 'checkbox', 'hide_profile_members', esc_html__( 'Hide profile from members', 'wp-user-manager' ) ) 496 ->set_help_text( esc_html__( 'Hide this profile from members. Overrides the global profile options.', 'wp-user-manager' ) ), 497 ) ); 498 } 499 500 add_action( 'carbon_fields_register_fields', 'wpum_register_profile_privacy_fields' ); 501 502 /** 503 * Register the multiple user roles field in its own CF container. 504 * 505 * A dedicated container is required so that the entire React root can be 506 * relocated next to the WP role dropdown without breaking the component tree. 507 */ 508 function wpum_register_multiple_roles_field() { 491 509 global $pagenow; 492 510 511 $allow_multiple_roles = wpum_get_option( 'allow_multiple_user_roles' ); 512 if ( ! $allow_multiple_roles || is_network_admin() ) { 513 return; 514 } 515 516 $user_id = filter_input( INPUT_GET, 'user_id', FILTER_VALIDATE_INT ); 517 $profileuser = isset( $user_id ) ? get_user_by( 'id', $user_id ) : false; 518 519 if ( ! $profileuser && 'user-new.php' !== $pagenow ) { 520 return; 521 } 522 523 $existing_roles = $profileuser ? $profileuser->roles : array(); 524 493 525 $roles = array(); 494 495 526 foreach ( wpum_get_roles( true, true ) as $role ) { 496 527 $roles[ $role['value'] ] = $role['label']; 497 528 } 498 529 499 $allow_multiple_roles = wpum_get_option( 'allow_multiple_user_roles' ); 500 501 $user_id = filter_input( INPUT_GET, 'user_id', FILTER_VALIDATE_INT ); 502 503 $profileuser = isset( $user_id ) ? get_user_by( 'id', $user_id ) : false; 504 $existing_roles = ( $profileuser ) ? $profileuser->roles : array(); 505 506 $fields = array( 507 Field::make( 'checkbox', 'hide_profile_guests', esc_html__( 'Hide profile from guests', 'wp-user-manager' ) ) 508 ->set_help_text( esc_html__( 'Hide this profile from guests. Overrides the global profile options.', 'wp-user-manager' ) ), 509 Field::make( 'checkbox', 'hide_profile_members', esc_html__( 'Hide profile from members', 'wp-user-manager' ) ) 510 ->set_help_text( esc_html__( 'Hide this profile from members. Overrides the global profile options.', 'wp-user-manager' ) ), 511 ); 512 513 if ( $allow_multiple_roles && ( $profileuser || 'user-new.php' === $pagenow ) && ! is_network_admin() ) { 514 $fields[] = Field::make( 'multiselect', 'wpum_user_roles', '' ) 515 ->add_options( $roles ) 516 ->set_default_value( $existing_roles ) 517 ->set_classes( 'wpum-multiple-user-roles' ) 518 ->set_help_text( esc_html__( 'Select one or more roles for this user.', 'wp-user-manager' ) ); 519 } 520 521 Container::make( 'user_meta', esc_html__( 'Profile Privacy', 'wp-user-manager' ) ) 522 ->add_fields( $fields ); 523 } 524 525 add_action( 'carbon_fields_register_fields', 'wpum_register_profile_privacy_fields' ); 530 Container::make( 'user_meta', esc_html__( 'User Roles', 'wp-user-manager' ) ) 531 ->add_fields( array( 532 Field::make( 'multiselect', 'wpum_user_roles', '' ) 533 ->add_options( $roles ) 534 ->set_default_value( $existing_roles ) 535 ->set_classes( 'wpum-multiple-user-roles' ) 536 ->set_help_text( esc_html__( 'Select one or more roles for this user.', 'wp-user-manager' ) ), 537 ) ); 538 } 539 add_action( 'carbon_fields_register_fields', 'wpum_register_multiple_roles_field' ); 526 540 527 541 add_action( 'template_redirect', 'wpum_reset_password_redirect' ); … … 592 606 593 607 /** 608 * Relocate the CF "User Roles" multiselect row after the username field and 609 * hide the default WP role dropdown. Moving the <tr> (which wraps the React 610 * root <fieldset>) preserves the CF 3.x component tree. 611 * 594 612 * @param \WP_User $user 595 613 */ … … 599 617 return; 600 618 } 601 602 619 ?> 603 620 <script> 604 jQuery( function( $ ) { 605 if ( !$( '.user-role-wrap select#role, #createuser select#role' ).length ) { 606 return; 607 } 608 var el_userrole = $( '.user-role-wrap select#role, #createuser select#role' ); 609 $( $( '.wpum-multiple-user-roles' ) ).insertAfter( el_userrole ).css( 'padding', 0 ); 610 $( el_userrole ).hide(); 621 jQuery( function( $ ) { 622 function relocateRolesField() { 623 var $field = $( '.wpum-multiple-user-roles' ); 624 if ( ! $field.length ) return false; 625 626 var $row = $field.closest( 'tr' ); 627 if ( ! $row.length ) return false; 628 629 // CF user_meta template leaves the <th> empty — add the Role label. 630 var $th = $row.find( 'th' ); 631 if ( $th.length && ! $th.text().trim() ) { 632 $th.html( '<label for="role">Role</label>' ); 633 } 634 635 // Hide the now-empty CF container heading and table. 636 var $table = $field.closest( 'table.form-table' ); 637 if ( $table.length ) { 638 $table.prev( 'h2' ).hide(); 639 $table.hide(); 640 } 641 642 // user-edit.php: insert after the username row. 643 var $userLogin = $( '.user-user-login-wrap' ); 644 if ( $userLogin.length ) { 645 $row.insertAfter( $userLogin ); 646 $( '.user-role-wrap' ).hide(); 647 return true; 648 } 649 650 // user-new.php: replace the role select row. 651 var $newUserRole = $( '#createuser select#role' ); 652 if ( $newUserRole.length ) { 653 var $formField = $newUserRole.closest( '.form-field, tr' ).first(); 654 $row.insertAfter( $formField ); 655 $formField.hide(); 656 return true; 657 } 658 659 return false; 660 } 661 662 // Try immediately. 663 if ( relocateRolesField() ) return; 664 665 // Observe for CF React rendering. 666 var observer = new MutationObserver( function() { 667 if ( relocateRolesField() ) { 668 observer.disconnect(); 669 } 611 670 } ); 671 observer.observe( document.body, { childList: true, subtree: true } ); 672 673 // Safety timeout. 674 setTimeout( function() { observer.disconnect(); }, 10000 ); 675 } ); 612 676 </script> 613 677 <?php -
wp-user-manager/tags/2.9.15/languages/wp-user-manager.pot
r3468506 r3470603 3 3 msgid "" 4 4 msgstr "" 5 "Project-Id-Version: WP User Manager 2.9.1 4\n"5 "Project-Id-Version: WP User Manager 2.9.15\n" 6 6 "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-user-manager\n" 7 "POT-Creation-Date: 2026-02-2 4 09:43:09+00:00\n"7 "POT-Creation-Date: 2026-02-26 17:55:27+00:00\n" 8 8 "MIME-Version: 1.0\n" 9 9 "Content-Type: text/plain; charset=utf-8\n" … … 328 328 msgstr "" 329 329 330 #: includes/actions.php:507 331 msgid "Hide profile from guests" 332 msgstr "" 333 334 #: includes/actions.php:508 335 msgid "Hide this profile from guests. Overrides the global profile options." 336 msgstr "" 337 338 #: includes/actions.php:509 339 msgid "Hide profile from members" 340 msgstr "" 341 342 #: includes/actions.php:510 343 msgid "Hide this profile from members. Overrides the global profile options." 344 msgstr "" 345 346 #: includes/actions.php:518 347 msgid "Select one or more roles for this user." 348 msgstr "" 349 350 #: includes/actions.php:521 includes/forms/class-wpum-form-privacy.php:77 330 #: includes/actions.php:491 includes/forms/class-wpum-form-privacy.php:77 351 331 #: includes/functions.php:733 352 332 msgid "Profile Privacy" 353 333 msgstr "" 354 334 355 #: includes/actions.php:983 includes/shortcodes/shortcodes.php:199 335 #: includes/actions.php:493 336 msgid "Hide profile from guests" 337 msgstr "" 338 339 #: includes/actions.php:494 340 msgid "Hide this profile from guests. Overrides the global profile options." 341 msgstr "" 342 343 #: includes/actions.php:495 344 msgid "Hide profile from members" 345 msgstr "" 346 347 #: includes/actions.php:496 348 msgid "Hide this profile from members. Overrides the global profile options." 349 msgstr "" 350 351 #: includes/actions.php:530 352 #: includes/directories/class-wpum-directories-editor.php:291 353 #: includes/fields/types/class-wpum-field-userrole.php:72 354 msgid "User Roles" 355 msgstr "" 356 357 #: includes/actions.php:536 358 msgid "Select one or more roles for this user." 359 msgstr "" 360 361 #: includes/actions.php:1047 includes/shortcodes/shortcodes.php:199 356 362 msgid "" 357 363 "Registration complete. We have sent you a confirmation email with your " … … 1443 1449 #: includes/fields/class-wpum-field.php:385 1444 1450 msgid "Description" 1445 msgstr ""1446 1447 #: includes/directories/class-wpum-directories-editor.php:2911448 #: includes/fields/types/class-wpum-field-userrole.php:721449 msgid "User Roles"1450 1451 msgstr "" 1451 1452 -
wp-user-manager/tags/2.9.15/readme.txt
r3468506 r3470603 9 9 License: GPLv2 or later 10 10 License URI: http://www.gnu.org/licenses/gpl-2.0.html 11 Stable Tag: 2.9.1 411 Stable Tag: 2.9.15 12 12 13 13 The most customizable profiles & community builder WordPress plugin with front-end login, registration, profile customization and content restriction. … … 135 135 == Changelog == 136 136 137 = 2.9.15 (26th Feb 2026) = 138 139 - Fix: User role multiselect was disabled on the admin user profile after Carbon Fields upgrade 140 137 141 = 2.9.14 (24th Feb 2026) = 138 142 -
wp-user-manager/tags/2.9.15/vendor-dist/composer/installed.php
r3468506 r3470603 3 3 namespace WPUM; 4 4 5 return array('root' => array('name' => 'wp-user-manager/wp-user-manager', 'pretty_version' => 'v2.9.1 4', 'version' => '2.9.14.0', 'reference' => 'fd0cd44a183b436d61be19d1ca00386edef9b94a', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \false), 'versions' => array('brain/cortex' => array('pretty_version' => 'dev-refactoring-fastroute', 'version' => 'dev-refactoring-fastroute', 'reference' => '86bec053ec2c4d2e4c75af64e0cee951d9b0054b', 'type' => 'library', 'install_path' => __DIR__ . '/../brain/cortex', 'aliases' => array(0 => '9999999-dev'), 'dev_requirement' => \false), 'composer/installers' => array('pretty_version' => '1.x-dev', 'version' => '1.9999999.9999999.9999999-dev', 'reference' => 'd20a64ed3c94748397ff5973488761b22f6d3f19', 'type' => 'composer-plugin', 'install_path' => __DIR__ . '/./installers', 'aliases' => array(), 'dev_requirement' => \false), 'dompdf/dompdf' => array('pretty_version' => 'v2.0.2', 'version' => '2.0.2.0', 'reference' => 'ad4c631bf8897fc1ca7b566468a969cfd71a558a', 'type' => 'library', 'install_path' => __DIR__ . '/../dompdf/dompdf', 'aliases' => array(), 'dev_requirement' => \false), 'gamajo/template-loader' => array('pretty_version' => '1.3.1', 'version' => '1.3.1.0', 'reference' => 'fa92a37b780d945463f7fea328dce14933558752', 'type' => 'library', 'install_path' => __DIR__ . '/../gamajo/template-loader', 'aliases' => array(), 'dev_requirement' => \false), 'htmlburger/carbon-fields' => array('pretty_version' => 'v3.6.9', 'version' => '3.6.9.0', 'reference' => 'f82e80e3e3469d6e86cc17a8950b918ad448a059', 'type' => 'library', 'install_path' => __DIR__ . '/../htmlburger/carbon-fields', 'aliases' => array(), 'dev_requirement' => \false), 'masterminds/html5' => array('pretty_version' => '2.7.6', 'version' => '2.7.6.0', 'reference' => '897eb517a343a2281f11bc5556d6548db7d93947', 'type' => 'library', 'install_path' => __DIR__ . '/../masterminds/html5', 'aliases' => array(), 'dev_requirement' => \false), 'nesbot/carbon' => array('pretty_version' => '2.66.0', 'version' => '2.66.0.0', 'reference' => '496712849902241f04902033b0441b269effe001', 'type' => 'library', 'install_path' => __DIR__ . '/../nesbot/carbon', 'aliases' => array(), 'dev_requirement' => \false), 'nikic/fast-route' => array('pretty_version' => 'v0.7.0', 'version' => '0.7.0.0', 'reference' => '8164b4a0d8afde4eae5f1bfc39084972ba23ad36', 'type' => 'library', 'install_path' => __DIR__ . '/../nikic/fast-route', 'aliases' => array(), 'dev_requirement' => \false), 'phenx/php-font-lib' => array('pretty_version' => '0.5.4', 'version' => '0.5.4.0', 'reference' => 'dd448ad1ce34c63d09baccd05415e361300c35b4', 'type' => 'library', 'install_path' => __DIR__ . '/../phenx/php-font-lib', 'aliases' => array(), 'dev_requirement' => \false), 'phenx/php-svg-lib' => array('pretty_version' => '0.5.0', 'version' => '0.5.0.0', 'reference' => '76876c6cf3080bcb6f249d7d59705108166a6685', 'type' => 'library', 'install_path' => __DIR__ . '/../phenx/php-svg-lib', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-message' => array('pretty_version' => '1.0.1', 'version' => '1.0.1.0', 'reference' => 'f6561bf28d520154e4b0ec72be95418abe6d9363', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-message', 'aliases' => array(), 'dev_requirement' => \false), 'roundcube/plugin-installer' => array('dev_requirement' => \false, 'replaced' => array(0 => '*')), 'sabberworm/php-css-parser' => array('pretty_version' => '8.4.0', 'version' => '8.4.0.0', 'reference' => 'e41d2140031d533348b2192a83f02d8dd8a71d30', 'type' => 'library', 'install_path' => __DIR__ . '/../sabberworm/php-css-parser', 'aliases' => array(), 'dev_requirement' => \false), 'shama/baton' => array('dev_requirement' => \false, 'replaced' => array(0 => '*')), 'stripe/stripe-php' => array('pretty_version' => 'v10.5.0', 'version' => '10.5.0.0', 'reference' => '331415b232d60d7c0449de7bde4cb7d4fedf982e', 'type' => 'library', 'install_path' => __DIR__ . '/../stripe/stripe-php', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/deprecation-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => 'e8b495ea28c1d97b5e0c121748d6f9b53d075c66', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/deprecation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-mbstring' => array('pretty_version' => 'v1.26.0', 'version' => '1.26.0.0', 'reference' => '9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-mbstring', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-php80' => array('pretty_version' => 'v1.26.0', 'version' => '1.26.0.0', 'reference' => 'cfa0ae98841b9e461207c13ab093d76b0fa7bace', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-php80', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/translation' => array('pretty_version' => 'v5.4.11', 'version' => '5.4.11.0', 'reference' => '7a1a8f6bbff269f434a83343a0a5d36a4f8cfa21', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/translation', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/translation-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => '136b19dd05cdf0709db6537d058bcab6dd6e2dbe', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/translation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/translation-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '2.3')), 'wearerequired/wp-requirements-check' => array('pretty_version' => '1.1.0', 'version' => '1.1.0.0', 'reference' => '82b8a6c4b953f59e7e534df2d4287e34af950812', 'type' => 'library', 'install_path' => __DIR__ . '/../wearerequired/wp-requirements-check', 'aliases' => array(), 'dev_requirement' => \false), 'wp-user-manager/wp-notices' => array('pretty_version' => 'dev-master', 'version' => 'dev-master', 'reference' => '5498f209c6667e88e944194a93a50f9ffc25ea24', 'type' => 'library', 'install_path' => __DIR__ . '/../wp-user-manager/wp-notices', 'aliases' => array(0 => '9999999-dev'), 'dev_requirement' => \false), 'wp-user-manager/wp-optionskit' => array('pretty_version' => '1.1.2', 'version' => '1.1.2.0', 'reference' => '6253bda447991733bf8e19cb2123b41c666f3d62', 'type' => 'library', 'install_path' => __DIR__ . '/../wp-user-manager/wp-optionskit', 'aliases' => array(), 'dev_requirement' => \false), 'wp-user-manager/wp-user-manager' => array('pretty_version' => 'v2.9.14', 'version' => '2.9.14.0', 'reference' => 'fd0cd44a183b436d61be19d1ca00386edef9b94a', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false), 'wp-user-manager/wpum-blocks' => array('pretty_version' => '1.15', 'version' => '1.15.0.0', 'reference' => 'fc3d01fe0baa2fb0fdf6a0f4cff30fc40bb1dbba', 'type' => 'library', 'install_path' => __DIR__ . '/../wp-user-manager/wpum-blocks', 'aliases' => array(), 'dev_requirement' => \false), 'wpbp/widgets-helper' => array('pretty_version' => 'dev-master', 'version' => 'dev-master', 'reference' => '5547acaaf60b856b0025cdf44e3831e0f3202929', 'type' => 'library', 'install_path' => __DIR__ . '/../wpbp/widgets-helper', 'aliases' => array(), 'dev_requirement' => \false)));5 return array('root' => array('name' => 'wp-user-manager/wp-user-manager', 'pretty_version' => 'v2.9.15', 'version' => '2.9.15.0', 'reference' => '69eb07aa7ce9644dc1b2601dcfcf895ea01c748d', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \false), 'versions' => array('brain/cortex' => array('pretty_version' => 'dev-refactoring-fastroute', 'version' => 'dev-refactoring-fastroute', 'reference' => '86bec053ec2c4d2e4c75af64e0cee951d9b0054b', 'type' => 'library', 'install_path' => __DIR__ . '/../brain/cortex', 'aliases' => array(0 => '9999999-dev'), 'dev_requirement' => \false), 'composer/installers' => array('pretty_version' => '1.x-dev', 'version' => '1.9999999.9999999.9999999-dev', 'reference' => 'd20a64ed3c94748397ff5973488761b22f6d3f19', 'type' => 'composer-plugin', 'install_path' => __DIR__ . '/./installers', 'aliases' => array(), 'dev_requirement' => \false), 'dompdf/dompdf' => array('pretty_version' => 'v2.0.2', 'version' => '2.0.2.0', 'reference' => 'ad4c631bf8897fc1ca7b566468a969cfd71a558a', 'type' => 'library', 'install_path' => __DIR__ . '/../dompdf/dompdf', 'aliases' => array(), 'dev_requirement' => \false), 'gamajo/template-loader' => array('pretty_version' => '1.3.1', 'version' => '1.3.1.0', 'reference' => 'fa92a37b780d945463f7fea328dce14933558752', 'type' => 'library', 'install_path' => __DIR__ . '/../gamajo/template-loader', 'aliases' => array(), 'dev_requirement' => \false), 'htmlburger/carbon-fields' => array('pretty_version' => 'v3.6.9', 'version' => '3.6.9.0', 'reference' => 'f82e80e3e3469d6e86cc17a8950b918ad448a059', 'type' => 'library', 'install_path' => __DIR__ . '/../htmlburger/carbon-fields', 'aliases' => array(), 'dev_requirement' => \false), 'masterminds/html5' => array('pretty_version' => '2.7.6', 'version' => '2.7.6.0', 'reference' => '897eb517a343a2281f11bc5556d6548db7d93947', 'type' => 'library', 'install_path' => __DIR__ . '/../masterminds/html5', 'aliases' => array(), 'dev_requirement' => \false), 'nesbot/carbon' => array('pretty_version' => '2.66.0', 'version' => '2.66.0.0', 'reference' => '496712849902241f04902033b0441b269effe001', 'type' => 'library', 'install_path' => __DIR__ . '/../nesbot/carbon', 'aliases' => array(), 'dev_requirement' => \false), 'nikic/fast-route' => array('pretty_version' => 'v0.7.0', 'version' => '0.7.0.0', 'reference' => '8164b4a0d8afde4eae5f1bfc39084972ba23ad36', 'type' => 'library', 'install_path' => __DIR__ . '/../nikic/fast-route', 'aliases' => array(), 'dev_requirement' => \false), 'phenx/php-font-lib' => array('pretty_version' => '0.5.4', 'version' => '0.5.4.0', 'reference' => 'dd448ad1ce34c63d09baccd05415e361300c35b4', 'type' => 'library', 'install_path' => __DIR__ . '/../phenx/php-font-lib', 'aliases' => array(), 'dev_requirement' => \false), 'phenx/php-svg-lib' => array('pretty_version' => '0.5.0', 'version' => '0.5.0.0', 'reference' => '76876c6cf3080bcb6f249d7d59705108166a6685', 'type' => 'library', 'install_path' => __DIR__ . '/../phenx/php-svg-lib', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-message' => array('pretty_version' => '1.0.1', 'version' => '1.0.1.0', 'reference' => 'f6561bf28d520154e4b0ec72be95418abe6d9363', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-message', 'aliases' => array(), 'dev_requirement' => \false), 'roundcube/plugin-installer' => array('dev_requirement' => \false, 'replaced' => array(0 => '*')), 'sabberworm/php-css-parser' => array('pretty_version' => '8.4.0', 'version' => '8.4.0.0', 'reference' => 'e41d2140031d533348b2192a83f02d8dd8a71d30', 'type' => 'library', 'install_path' => __DIR__ . '/../sabberworm/php-css-parser', 'aliases' => array(), 'dev_requirement' => \false), 'shama/baton' => array('dev_requirement' => \false, 'replaced' => array(0 => '*')), 'stripe/stripe-php' => array('pretty_version' => 'v10.5.0', 'version' => '10.5.0.0', 'reference' => '331415b232d60d7c0449de7bde4cb7d4fedf982e', 'type' => 'library', 'install_path' => __DIR__ . '/../stripe/stripe-php', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/deprecation-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => 'e8b495ea28c1d97b5e0c121748d6f9b53d075c66', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/deprecation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-mbstring' => array('pretty_version' => 'v1.26.0', 'version' => '1.26.0.0', 'reference' => '9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-mbstring', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-php80' => array('pretty_version' => 'v1.26.0', 'version' => '1.26.0.0', 'reference' => 'cfa0ae98841b9e461207c13ab093d76b0fa7bace', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-php80', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/translation' => array('pretty_version' => 'v5.4.11', 'version' => '5.4.11.0', 'reference' => '7a1a8f6bbff269f434a83343a0a5d36a4f8cfa21', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/translation', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/translation-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => '136b19dd05cdf0709db6537d058bcab6dd6e2dbe', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/translation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/translation-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '2.3')), 'wearerequired/wp-requirements-check' => array('pretty_version' => '1.1.0', 'version' => '1.1.0.0', 'reference' => '82b8a6c4b953f59e7e534df2d4287e34af950812', 'type' => 'library', 'install_path' => __DIR__ . '/../wearerequired/wp-requirements-check', 'aliases' => array(), 'dev_requirement' => \false), 'wp-user-manager/wp-notices' => array('pretty_version' => 'dev-master', 'version' => 'dev-master', 'reference' => '5498f209c6667e88e944194a93a50f9ffc25ea24', 'type' => 'library', 'install_path' => __DIR__ . '/../wp-user-manager/wp-notices', 'aliases' => array(0 => '9999999-dev'), 'dev_requirement' => \false), 'wp-user-manager/wp-optionskit' => array('pretty_version' => '1.1.2', 'version' => '1.1.2.0', 'reference' => '6253bda447991733bf8e19cb2123b41c666f3d62', 'type' => 'library', 'install_path' => __DIR__ . '/../wp-user-manager/wp-optionskit', 'aliases' => array(), 'dev_requirement' => \false), 'wp-user-manager/wp-user-manager' => array('pretty_version' => 'v2.9.15', 'version' => '2.9.15.0', 'reference' => '69eb07aa7ce9644dc1b2601dcfcf895ea01c748d', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false), 'wp-user-manager/wpum-blocks' => array('pretty_version' => '1.15', 'version' => '1.15.0.0', 'reference' => 'fc3d01fe0baa2fb0fdf6a0f4cff30fc40bb1dbba', 'type' => 'library', 'install_path' => __DIR__ . '/../wp-user-manager/wpum-blocks', 'aliases' => array(), 'dev_requirement' => \false), 'wpbp/widgets-helper' => array('pretty_version' => 'dev-master', 'version' => 'dev-master', 'reference' => '5547acaaf60b856b0025cdf44e3831e0f3202929', 'type' => 'library', 'install_path' => __DIR__ . '/../wpbp/widgets-helper', 'aliases' => array(), 'dev_requirement' => \false))); -
wp-user-manager/tags/2.9.15/wp-user-manager.php
r3468506 r3470603 4 4 * Plugin URI: https://wpusermanager.com 5 5 * Description: Beautifully simple user profile directories with frontend login, registration and account customization. WP User Manager is the best solution to manage your community and your users for WordPress. 6 * Version: 2.9.1 46 * Version: 2.9.15 7 7 * Requires PHP: 7.4 8 8 * Author: WP User Manager … … 22 22 require_once __DIR__ . '/includes/class-wp-user-manager.php'; 23 23 24 return WP_User_Manager::instance( __FILE__, '2.9.1 4' );24 return WP_User_Manager::instance( __FILE__, '2.9.15' ); 25 25 } 26 26 -
wp-user-manager/trunk/includes/actions.php
r3468506 r3470603 489 489 */ 490 490 function wpum_register_profile_privacy_fields() { 491 Container::make( 'user_meta', esc_html__( 'Profile Privacy', 'wp-user-manager' ) ) 492 ->add_fields( array( 493 Field::make( 'checkbox', 'hide_profile_guests', esc_html__( 'Hide profile from guests', 'wp-user-manager' ) ) 494 ->set_help_text( esc_html__( 'Hide this profile from guests. Overrides the global profile options.', 'wp-user-manager' ) ), 495 Field::make( 'checkbox', 'hide_profile_members', esc_html__( 'Hide profile from members', 'wp-user-manager' ) ) 496 ->set_help_text( esc_html__( 'Hide this profile from members. Overrides the global profile options.', 'wp-user-manager' ) ), 497 ) ); 498 } 499 500 add_action( 'carbon_fields_register_fields', 'wpum_register_profile_privacy_fields' ); 501 502 /** 503 * Register the multiple user roles field in its own CF container. 504 * 505 * A dedicated container is required so that the entire React root can be 506 * relocated next to the WP role dropdown without breaking the component tree. 507 */ 508 function wpum_register_multiple_roles_field() { 491 509 global $pagenow; 492 510 511 $allow_multiple_roles = wpum_get_option( 'allow_multiple_user_roles' ); 512 if ( ! $allow_multiple_roles || is_network_admin() ) { 513 return; 514 } 515 516 $user_id = filter_input( INPUT_GET, 'user_id', FILTER_VALIDATE_INT ); 517 $profileuser = isset( $user_id ) ? get_user_by( 'id', $user_id ) : false; 518 519 if ( ! $profileuser && 'user-new.php' !== $pagenow ) { 520 return; 521 } 522 523 $existing_roles = $profileuser ? $profileuser->roles : array(); 524 493 525 $roles = array(); 494 495 526 foreach ( wpum_get_roles( true, true ) as $role ) { 496 527 $roles[ $role['value'] ] = $role['label']; 497 528 } 498 529 499 $allow_multiple_roles = wpum_get_option( 'allow_multiple_user_roles' ); 500 501 $user_id = filter_input( INPUT_GET, 'user_id', FILTER_VALIDATE_INT ); 502 503 $profileuser = isset( $user_id ) ? get_user_by( 'id', $user_id ) : false; 504 $existing_roles = ( $profileuser ) ? $profileuser->roles : array(); 505 506 $fields = array( 507 Field::make( 'checkbox', 'hide_profile_guests', esc_html__( 'Hide profile from guests', 'wp-user-manager' ) ) 508 ->set_help_text( esc_html__( 'Hide this profile from guests. Overrides the global profile options.', 'wp-user-manager' ) ), 509 Field::make( 'checkbox', 'hide_profile_members', esc_html__( 'Hide profile from members', 'wp-user-manager' ) ) 510 ->set_help_text( esc_html__( 'Hide this profile from members. Overrides the global profile options.', 'wp-user-manager' ) ), 511 ); 512 513 if ( $allow_multiple_roles && ( $profileuser || 'user-new.php' === $pagenow ) && ! is_network_admin() ) { 514 $fields[] = Field::make( 'multiselect', 'wpum_user_roles', '' ) 515 ->add_options( $roles ) 516 ->set_default_value( $existing_roles ) 517 ->set_classes( 'wpum-multiple-user-roles' ) 518 ->set_help_text( esc_html__( 'Select one or more roles for this user.', 'wp-user-manager' ) ); 519 } 520 521 Container::make( 'user_meta', esc_html__( 'Profile Privacy', 'wp-user-manager' ) ) 522 ->add_fields( $fields ); 523 } 524 525 add_action( 'carbon_fields_register_fields', 'wpum_register_profile_privacy_fields' ); 530 Container::make( 'user_meta', esc_html__( 'User Roles', 'wp-user-manager' ) ) 531 ->add_fields( array( 532 Field::make( 'multiselect', 'wpum_user_roles', '' ) 533 ->add_options( $roles ) 534 ->set_default_value( $existing_roles ) 535 ->set_classes( 'wpum-multiple-user-roles' ) 536 ->set_help_text( esc_html__( 'Select one or more roles for this user.', 'wp-user-manager' ) ), 537 ) ); 538 } 539 add_action( 'carbon_fields_register_fields', 'wpum_register_multiple_roles_field' ); 526 540 527 541 add_action( 'template_redirect', 'wpum_reset_password_redirect' ); … … 592 606 593 607 /** 608 * Relocate the CF "User Roles" multiselect row after the username field and 609 * hide the default WP role dropdown. Moving the <tr> (which wraps the React 610 * root <fieldset>) preserves the CF 3.x component tree. 611 * 594 612 * @param \WP_User $user 595 613 */ … … 599 617 return; 600 618 } 601 602 619 ?> 603 620 <script> 604 jQuery( function( $ ) { 605 if ( !$( '.user-role-wrap select#role, #createuser select#role' ).length ) { 606 return; 607 } 608 var el_userrole = $( '.user-role-wrap select#role, #createuser select#role' ); 609 $( $( '.wpum-multiple-user-roles' ) ).insertAfter( el_userrole ).css( 'padding', 0 ); 610 $( el_userrole ).hide(); 621 jQuery( function( $ ) { 622 function relocateRolesField() { 623 var $field = $( '.wpum-multiple-user-roles' ); 624 if ( ! $field.length ) return false; 625 626 var $row = $field.closest( 'tr' ); 627 if ( ! $row.length ) return false; 628 629 // CF user_meta template leaves the <th> empty — add the Role label. 630 var $th = $row.find( 'th' ); 631 if ( $th.length && ! $th.text().trim() ) { 632 $th.html( '<label for="role">Role</label>' ); 633 } 634 635 // Hide the now-empty CF container heading and table. 636 var $table = $field.closest( 'table.form-table' ); 637 if ( $table.length ) { 638 $table.prev( 'h2' ).hide(); 639 $table.hide(); 640 } 641 642 // user-edit.php: insert after the username row. 643 var $userLogin = $( '.user-user-login-wrap' ); 644 if ( $userLogin.length ) { 645 $row.insertAfter( $userLogin ); 646 $( '.user-role-wrap' ).hide(); 647 return true; 648 } 649 650 // user-new.php: replace the role select row. 651 var $newUserRole = $( '#createuser select#role' ); 652 if ( $newUserRole.length ) { 653 var $formField = $newUserRole.closest( '.form-field, tr' ).first(); 654 $row.insertAfter( $formField ); 655 $formField.hide(); 656 return true; 657 } 658 659 return false; 660 } 661 662 // Try immediately. 663 if ( relocateRolesField() ) return; 664 665 // Observe for CF React rendering. 666 var observer = new MutationObserver( function() { 667 if ( relocateRolesField() ) { 668 observer.disconnect(); 669 } 611 670 } ); 671 observer.observe( document.body, { childList: true, subtree: true } ); 672 673 // Safety timeout. 674 setTimeout( function() { observer.disconnect(); }, 10000 ); 675 } ); 612 676 </script> 613 677 <?php -
wp-user-manager/trunk/languages/wp-user-manager.pot
r3468506 r3470603 3 3 msgid "" 4 4 msgstr "" 5 "Project-Id-Version: WP User Manager 2.9.1 4\n"5 "Project-Id-Version: WP User Manager 2.9.15\n" 6 6 "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-user-manager\n" 7 "POT-Creation-Date: 2026-02-2 4 09:43:09+00:00\n"7 "POT-Creation-Date: 2026-02-26 17:55:27+00:00\n" 8 8 "MIME-Version: 1.0\n" 9 9 "Content-Type: text/plain; charset=utf-8\n" … … 328 328 msgstr "" 329 329 330 #: includes/actions.php:507 331 msgid "Hide profile from guests" 332 msgstr "" 333 334 #: includes/actions.php:508 335 msgid "Hide this profile from guests. Overrides the global profile options." 336 msgstr "" 337 338 #: includes/actions.php:509 339 msgid "Hide profile from members" 340 msgstr "" 341 342 #: includes/actions.php:510 343 msgid "Hide this profile from members. Overrides the global profile options." 344 msgstr "" 345 346 #: includes/actions.php:518 347 msgid "Select one or more roles for this user." 348 msgstr "" 349 350 #: includes/actions.php:521 includes/forms/class-wpum-form-privacy.php:77 330 #: includes/actions.php:491 includes/forms/class-wpum-form-privacy.php:77 351 331 #: includes/functions.php:733 352 332 msgid "Profile Privacy" 353 333 msgstr "" 354 334 355 #: includes/actions.php:983 includes/shortcodes/shortcodes.php:199 335 #: includes/actions.php:493 336 msgid "Hide profile from guests" 337 msgstr "" 338 339 #: includes/actions.php:494 340 msgid "Hide this profile from guests. Overrides the global profile options." 341 msgstr "" 342 343 #: includes/actions.php:495 344 msgid "Hide profile from members" 345 msgstr "" 346 347 #: includes/actions.php:496 348 msgid "Hide this profile from members. Overrides the global profile options." 349 msgstr "" 350 351 #: includes/actions.php:530 352 #: includes/directories/class-wpum-directories-editor.php:291 353 #: includes/fields/types/class-wpum-field-userrole.php:72 354 msgid "User Roles" 355 msgstr "" 356 357 #: includes/actions.php:536 358 msgid "Select one or more roles for this user." 359 msgstr "" 360 361 #: includes/actions.php:1047 includes/shortcodes/shortcodes.php:199 356 362 msgid "" 357 363 "Registration complete. We have sent you a confirmation email with your " … … 1443 1449 #: includes/fields/class-wpum-field.php:385 1444 1450 msgid "Description" 1445 msgstr ""1446 1447 #: includes/directories/class-wpum-directories-editor.php:2911448 #: includes/fields/types/class-wpum-field-userrole.php:721449 msgid "User Roles"1450 1451 msgstr "" 1451 1452 -
wp-user-manager/trunk/readme.txt
r3468506 r3470603 9 9 License: GPLv2 or later 10 10 License URI: http://www.gnu.org/licenses/gpl-2.0.html 11 Stable Tag: 2.9.1 411 Stable Tag: 2.9.15 12 12 13 13 The most customizable profiles & community builder WordPress plugin with front-end login, registration, profile customization and content restriction. … … 135 135 == Changelog == 136 136 137 = 2.9.15 (26th Feb 2026) = 138 139 - Fix: User role multiselect was disabled on the admin user profile after Carbon Fields upgrade 140 137 141 = 2.9.14 (24th Feb 2026) = 138 142 -
wp-user-manager/trunk/vendor-dist/composer/installed.php
r3468506 r3470603 3 3 namespace WPUM; 4 4 5 return array('root' => array('name' => 'wp-user-manager/wp-user-manager', 'pretty_version' => 'v2.9.1 4', 'version' => '2.9.14.0', 'reference' => 'fd0cd44a183b436d61be19d1ca00386edef9b94a', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \false), 'versions' => array('brain/cortex' => array('pretty_version' => 'dev-refactoring-fastroute', 'version' => 'dev-refactoring-fastroute', 'reference' => '86bec053ec2c4d2e4c75af64e0cee951d9b0054b', 'type' => 'library', 'install_path' => __DIR__ . '/../brain/cortex', 'aliases' => array(0 => '9999999-dev'), 'dev_requirement' => \false), 'composer/installers' => array('pretty_version' => '1.x-dev', 'version' => '1.9999999.9999999.9999999-dev', 'reference' => 'd20a64ed3c94748397ff5973488761b22f6d3f19', 'type' => 'composer-plugin', 'install_path' => __DIR__ . '/./installers', 'aliases' => array(), 'dev_requirement' => \false), 'dompdf/dompdf' => array('pretty_version' => 'v2.0.2', 'version' => '2.0.2.0', 'reference' => 'ad4c631bf8897fc1ca7b566468a969cfd71a558a', 'type' => 'library', 'install_path' => __DIR__ . '/../dompdf/dompdf', 'aliases' => array(), 'dev_requirement' => \false), 'gamajo/template-loader' => array('pretty_version' => '1.3.1', 'version' => '1.3.1.0', 'reference' => 'fa92a37b780d945463f7fea328dce14933558752', 'type' => 'library', 'install_path' => __DIR__ . '/../gamajo/template-loader', 'aliases' => array(), 'dev_requirement' => \false), 'htmlburger/carbon-fields' => array('pretty_version' => 'v3.6.9', 'version' => '3.6.9.0', 'reference' => 'f82e80e3e3469d6e86cc17a8950b918ad448a059', 'type' => 'library', 'install_path' => __DIR__ . '/../htmlburger/carbon-fields', 'aliases' => array(), 'dev_requirement' => \false), 'masterminds/html5' => array('pretty_version' => '2.7.6', 'version' => '2.7.6.0', 'reference' => '897eb517a343a2281f11bc5556d6548db7d93947', 'type' => 'library', 'install_path' => __DIR__ . '/../masterminds/html5', 'aliases' => array(), 'dev_requirement' => \false), 'nesbot/carbon' => array('pretty_version' => '2.66.0', 'version' => '2.66.0.0', 'reference' => '496712849902241f04902033b0441b269effe001', 'type' => 'library', 'install_path' => __DIR__ . '/../nesbot/carbon', 'aliases' => array(), 'dev_requirement' => \false), 'nikic/fast-route' => array('pretty_version' => 'v0.7.0', 'version' => '0.7.0.0', 'reference' => '8164b4a0d8afde4eae5f1bfc39084972ba23ad36', 'type' => 'library', 'install_path' => __DIR__ . '/../nikic/fast-route', 'aliases' => array(), 'dev_requirement' => \false), 'phenx/php-font-lib' => array('pretty_version' => '0.5.4', 'version' => '0.5.4.0', 'reference' => 'dd448ad1ce34c63d09baccd05415e361300c35b4', 'type' => 'library', 'install_path' => __DIR__ . '/../phenx/php-font-lib', 'aliases' => array(), 'dev_requirement' => \false), 'phenx/php-svg-lib' => array('pretty_version' => '0.5.0', 'version' => '0.5.0.0', 'reference' => '76876c6cf3080bcb6f249d7d59705108166a6685', 'type' => 'library', 'install_path' => __DIR__ . '/../phenx/php-svg-lib', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-message' => array('pretty_version' => '1.0.1', 'version' => '1.0.1.0', 'reference' => 'f6561bf28d520154e4b0ec72be95418abe6d9363', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-message', 'aliases' => array(), 'dev_requirement' => \false), 'roundcube/plugin-installer' => array('dev_requirement' => \false, 'replaced' => array(0 => '*')), 'sabberworm/php-css-parser' => array('pretty_version' => '8.4.0', 'version' => '8.4.0.0', 'reference' => 'e41d2140031d533348b2192a83f02d8dd8a71d30', 'type' => 'library', 'install_path' => __DIR__ . '/../sabberworm/php-css-parser', 'aliases' => array(), 'dev_requirement' => \false), 'shama/baton' => array('dev_requirement' => \false, 'replaced' => array(0 => '*')), 'stripe/stripe-php' => array('pretty_version' => 'v10.5.0', 'version' => '10.5.0.0', 'reference' => '331415b232d60d7c0449de7bde4cb7d4fedf982e', 'type' => 'library', 'install_path' => __DIR__ . '/../stripe/stripe-php', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/deprecation-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => 'e8b495ea28c1d97b5e0c121748d6f9b53d075c66', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/deprecation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-mbstring' => array('pretty_version' => 'v1.26.0', 'version' => '1.26.0.0', 'reference' => '9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-mbstring', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-php80' => array('pretty_version' => 'v1.26.0', 'version' => '1.26.0.0', 'reference' => 'cfa0ae98841b9e461207c13ab093d76b0fa7bace', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-php80', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/translation' => array('pretty_version' => 'v5.4.11', 'version' => '5.4.11.0', 'reference' => '7a1a8f6bbff269f434a83343a0a5d36a4f8cfa21', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/translation', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/translation-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => '136b19dd05cdf0709db6537d058bcab6dd6e2dbe', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/translation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/translation-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '2.3')), 'wearerequired/wp-requirements-check' => array('pretty_version' => '1.1.0', 'version' => '1.1.0.0', 'reference' => '82b8a6c4b953f59e7e534df2d4287e34af950812', 'type' => 'library', 'install_path' => __DIR__ . '/../wearerequired/wp-requirements-check', 'aliases' => array(), 'dev_requirement' => \false), 'wp-user-manager/wp-notices' => array('pretty_version' => 'dev-master', 'version' => 'dev-master', 'reference' => '5498f209c6667e88e944194a93a50f9ffc25ea24', 'type' => 'library', 'install_path' => __DIR__ . '/../wp-user-manager/wp-notices', 'aliases' => array(0 => '9999999-dev'), 'dev_requirement' => \false), 'wp-user-manager/wp-optionskit' => array('pretty_version' => '1.1.2', 'version' => '1.1.2.0', 'reference' => '6253bda447991733bf8e19cb2123b41c666f3d62', 'type' => 'library', 'install_path' => __DIR__ . '/../wp-user-manager/wp-optionskit', 'aliases' => array(), 'dev_requirement' => \false), 'wp-user-manager/wp-user-manager' => array('pretty_version' => 'v2.9.14', 'version' => '2.9.14.0', 'reference' => 'fd0cd44a183b436d61be19d1ca00386edef9b94a', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false), 'wp-user-manager/wpum-blocks' => array('pretty_version' => '1.15', 'version' => '1.15.0.0', 'reference' => 'fc3d01fe0baa2fb0fdf6a0f4cff30fc40bb1dbba', 'type' => 'library', 'install_path' => __DIR__ . '/../wp-user-manager/wpum-blocks', 'aliases' => array(), 'dev_requirement' => \false), 'wpbp/widgets-helper' => array('pretty_version' => 'dev-master', 'version' => 'dev-master', 'reference' => '5547acaaf60b856b0025cdf44e3831e0f3202929', 'type' => 'library', 'install_path' => __DIR__ . '/../wpbp/widgets-helper', 'aliases' => array(), 'dev_requirement' => \false)));5 return array('root' => array('name' => 'wp-user-manager/wp-user-manager', 'pretty_version' => 'v2.9.15', 'version' => '2.9.15.0', 'reference' => '69eb07aa7ce9644dc1b2601dcfcf895ea01c748d', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \false), 'versions' => array('brain/cortex' => array('pretty_version' => 'dev-refactoring-fastroute', 'version' => 'dev-refactoring-fastroute', 'reference' => '86bec053ec2c4d2e4c75af64e0cee951d9b0054b', 'type' => 'library', 'install_path' => __DIR__ . '/../brain/cortex', 'aliases' => array(0 => '9999999-dev'), 'dev_requirement' => \false), 'composer/installers' => array('pretty_version' => '1.x-dev', 'version' => '1.9999999.9999999.9999999-dev', 'reference' => 'd20a64ed3c94748397ff5973488761b22f6d3f19', 'type' => 'composer-plugin', 'install_path' => __DIR__ . '/./installers', 'aliases' => array(), 'dev_requirement' => \false), 'dompdf/dompdf' => array('pretty_version' => 'v2.0.2', 'version' => '2.0.2.0', 'reference' => 'ad4c631bf8897fc1ca7b566468a969cfd71a558a', 'type' => 'library', 'install_path' => __DIR__ . '/../dompdf/dompdf', 'aliases' => array(), 'dev_requirement' => \false), 'gamajo/template-loader' => array('pretty_version' => '1.3.1', 'version' => '1.3.1.0', 'reference' => 'fa92a37b780d945463f7fea328dce14933558752', 'type' => 'library', 'install_path' => __DIR__ . '/../gamajo/template-loader', 'aliases' => array(), 'dev_requirement' => \false), 'htmlburger/carbon-fields' => array('pretty_version' => 'v3.6.9', 'version' => '3.6.9.0', 'reference' => 'f82e80e3e3469d6e86cc17a8950b918ad448a059', 'type' => 'library', 'install_path' => __DIR__ . '/../htmlburger/carbon-fields', 'aliases' => array(), 'dev_requirement' => \false), 'masterminds/html5' => array('pretty_version' => '2.7.6', 'version' => '2.7.6.0', 'reference' => '897eb517a343a2281f11bc5556d6548db7d93947', 'type' => 'library', 'install_path' => __DIR__ . '/../masterminds/html5', 'aliases' => array(), 'dev_requirement' => \false), 'nesbot/carbon' => array('pretty_version' => '2.66.0', 'version' => '2.66.0.0', 'reference' => '496712849902241f04902033b0441b269effe001', 'type' => 'library', 'install_path' => __DIR__ . '/../nesbot/carbon', 'aliases' => array(), 'dev_requirement' => \false), 'nikic/fast-route' => array('pretty_version' => 'v0.7.0', 'version' => '0.7.0.0', 'reference' => '8164b4a0d8afde4eae5f1bfc39084972ba23ad36', 'type' => 'library', 'install_path' => __DIR__ . '/../nikic/fast-route', 'aliases' => array(), 'dev_requirement' => \false), 'phenx/php-font-lib' => array('pretty_version' => '0.5.4', 'version' => '0.5.4.0', 'reference' => 'dd448ad1ce34c63d09baccd05415e361300c35b4', 'type' => 'library', 'install_path' => __DIR__ . '/../phenx/php-font-lib', 'aliases' => array(), 'dev_requirement' => \false), 'phenx/php-svg-lib' => array('pretty_version' => '0.5.0', 'version' => '0.5.0.0', 'reference' => '76876c6cf3080bcb6f249d7d59705108166a6685', 'type' => 'library', 'install_path' => __DIR__ . '/../phenx/php-svg-lib', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-message' => array('pretty_version' => '1.0.1', 'version' => '1.0.1.0', 'reference' => 'f6561bf28d520154e4b0ec72be95418abe6d9363', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-message', 'aliases' => array(), 'dev_requirement' => \false), 'roundcube/plugin-installer' => array('dev_requirement' => \false, 'replaced' => array(0 => '*')), 'sabberworm/php-css-parser' => array('pretty_version' => '8.4.0', 'version' => '8.4.0.0', 'reference' => 'e41d2140031d533348b2192a83f02d8dd8a71d30', 'type' => 'library', 'install_path' => __DIR__ . '/../sabberworm/php-css-parser', 'aliases' => array(), 'dev_requirement' => \false), 'shama/baton' => array('dev_requirement' => \false, 'replaced' => array(0 => '*')), 'stripe/stripe-php' => array('pretty_version' => 'v10.5.0', 'version' => '10.5.0.0', 'reference' => '331415b232d60d7c0449de7bde4cb7d4fedf982e', 'type' => 'library', 'install_path' => __DIR__ . '/../stripe/stripe-php', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/deprecation-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => 'e8b495ea28c1d97b5e0c121748d6f9b53d075c66', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/deprecation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-mbstring' => array('pretty_version' => 'v1.26.0', 'version' => '1.26.0.0', 'reference' => '9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-mbstring', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-php80' => array('pretty_version' => 'v1.26.0', 'version' => '1.26.0.0', 'reference' => 'cfa0ae98841b9e461207c13ab093d76b0fa7bace', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-php80', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/translation' => array('pretty_version' => 'v5.4.11', 'version' => '5.4.11.0', 'reference' => '7a1a8f6bbff269f434a83343a0a5d36a4f8cfa21', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/translation', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/translation-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => '136b19dd05cdf0709db6537d058bcab6dd6e2dbe', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/translation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/translation-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '2.3')), 'wearerequired/wp-requirements-check' => array('pretty_version' => '1.1.0', 'version' => '1.1.0.0', 'reference' => '82b8a6c4b953f59e7e534df2d4287e34af950812', 'type' => 'library', 'install_path' => __DIR__ . '/../wearerequired/wp-requirements-check', 'aliases' => array(), 'dev_requirement' => \false), 'wp-user-manager/wp-notices' => array('pretty_version' => 'dev-master', 'version' => 'dev-master', 'reference' => '5498f209c6667e88e944194a93a50f9ffc25ea24', 'type' => 'library', 'install_path' => __DIR__ . '/../wp-user-manager/wp-notices', 'aliases' => array(0 => '9999999-dev'), 'dev_requirement' => \false), 'wp-user-manager/wp-optionskit' => array('pretty_version' => '1.1.2', 'version' => '1.1.2.0', 'reference' => '6253bda447991733bf8e19cb2123b41c666f3d62', 'type' => 'library', 'install_path' => __DIR__ . '/../wp-user-manager/wp-optionskit', 'aliases' => array(), 'dev_requirement' => \false), 'wp-user-manager/wp-user-manager' => array('pretty_version' => 'v2.9.15', 'version' => '2.9.15.0', 'reference' => '69eb07aa7ce9644dc1b2601dcfcf895ea01c748d', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false), 'wp-user-manager/wpum-blocks' => array('pretty_version' => '1.15', 'version' => '1.15.0.0', 'reference' => 'fc3d01fe0baa2fb0fdf6a0f4cff30fc40bb1dbba', 'type' => 'library', 'install_path' => __DIR__ . '/../wp-user-manager/wpum-blocks', 'aliases' => array(), 'dev_requirement' => \false), 'wpbp/widgets-helper' => array('pretty_version' => 'dev-master', 'version' => 'dev-master', 'reference' => '5547acaaf60b856b0025cdf44e3831e0f3202929', 'type' => 'library', 'install_path' => __DIR__ . '/../wpbp/widgets-helper', 'aliases' => array(), 'dev_requirement' => \false))); -
wp-user-manager/trunk/wp-user-manager.php
r3468506 r3470603 4 4 * Plugin URI: https://wpusermanager.com 5 5 * Description: Beautifully simple user profile directories with frontend login, registration and account customization. WP User Manager is the best solution to manage your community and your users for WordPress. 6 * Version: 2.9.1 46 * Version: 2.9.15 7 7 * Requires PHP: 7.4 8 8 * Author: WP User Manager … … 22 22 require_once __DIR__ . '/includes/class-wp-user-manager.php'; 23 23 24 return WP_User_Manager::instance( __FILE__, '2.9.1 4' );24 return WP_User_Manager::instance( __FILE__, '2.9.15' ); 25 25 } 26 26
Note: See TracChangeset
for help on using the changeset viewer.