Make WordPress Core


Ignore:
Timestamp:
10/08/2024 10:30:57 PM (16 months ago)
Author:
johnbillion
Message:

Role/Capability: Introduce the current_user_can_for_site() and user_can_for_site() functions.

The current_user_can_for_site() function is a replacement for current_user_can_for_blog() which is now deprecated. user_can_for_site() is a renaming of the user_can_for_blog() function which was introduced in [59123]. The intention of this change is to prevent the introduction of a new function which uses the old "blog" naming structure.

Props swissspidy, spacedmonkey, flixos90, johnjamesjacoby

Fixes #45197

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tests/phpunit/tests/user/capabilities.php

    r59123 r59198  
    16551655
    16561656    /**
    1657      * @group can_for_blog
    1658      */
    1659     public function test_current_user_can_for_blog() {
     1657     * @group can_for_site
     1658     */
     1659    public function test_current_user_can_for_site() {
    16601660        global $wpdb;
    16611661
     
    16641664        wp_set_current_user( $user->ID );
    16651665
    1666         $this->assertTrue( current_user_can_for_blog( get_current_blog_id(), 'edit_posts' ) );
    1667         $this->assertFalse( current_user_can_for_blog( get_current_blog_id(), 'foo_the_bar' ) );
     1666        $this->assertTrue( current_user_can_for_site( get_current_blog_id(), 'edit_posts' ) );
     1667        $this->assertFalse( current_user_can_for_site( get_current_blog_id(), 'foo_the_bar' ) );
    16681668
    16691669        if ( ! is_multisite() ) {
    1670             $this->assertTrue( current_user_can_for_blog( 12345, 'edit_posts' ) );
    1671             $this->assertFalse( current_user_can_for_blog( 12345, 'foo_the_bar' ) );
     1670            $this->assertTrue( current_user_can_for_site( 12345, 'edit_posts' ) );
     1671            $this->assertFalse( current_user_can_for_site( 12345, 'foo_the_bar' ) );
    16721672            return;
    16731673        }
    16741674
    16751675        $suppress = $wpdb->suppress_errors();
    1676         $this->assertFalse( current_user_can_for_blog( 12345, 'edit_posts' ) );
     1676        $this->assertFalse( current_user_can_for_site( 12345, 'edit_posts' ) );
    16771677        $wpdb->suppress_errors( $suppress );
    16781678
     
    16801680
    16811681        $this->assertNotWPError( $blog_id );
    1682         $this->assertTrue( current_user_can_for_blog( $blog_id, 'edit_posts' ) );
    1683         $this->assertFalse( current_user_can_for_blog( $blog_id, 'foo_the_bar' ) );
     1682        $this->assertTrue( current_user_can_for_site( $blog_id, 'edit_posts' ) );
     1683        $this->assertFalse( current_user_can_for_site( $blog_id, 'foo_the_bar' ) );
    16841684
    16851685        $another_blog_id = self::factory()->blog->create( array( 'user_id' => self::$users['author']->ID ) );
     
    16881688
    16891689        // Verify the user doesn't have a capability
    1690         $this->assertFalse( current_user_can_for_blog( $another_blog_id, 'edit_posts' ) );
     1690        $this->assertFalse( current_user_can_for_site( $another_blog_id, 'edit_posts' ) );
    16911691
    16921692        // Add the current user to the site
     
    16941694
    16951695        // Verify they now have the capability
    1696         $this->assertTrue( current_user_can_for_blog( $another_blog_id, 'edit_posts' ) );
     1696        $this->assertTrue( current_user_can_for_site( $another_blog_id, 'edit_posts' ) );
    16971697
    16981698        wp_set_current_user( $old_uid );
     
    17001700
    17011701    /**
    1702      * @group can_for_blog
    1703      */
    1704     public function test_user_can_for_blog() {
     1702     * @group can_for_site
     1703     */
     1704    public function test_user_can_for_site() {
    17051705        $user = self::$users['editor'];
    17061706
    1707         $this->assertTrue( user_can_for_blog( $user->ID, get_current_blog_id(), 'edit_posts' ) );
    1708         $this->assertFalse( user_can_for_blog( $user->ID, get_current_blog_id(), 'foo_the_bar' ) );
     1707        $this->assertTrue( user_can_for_site( $user->ID, get_current_blog_id(), 'edit_posts' ) );
     1708        $this->assertFalse( user_can_for_site( $user->ID, get_current_blog_id(), 'foo_the_bar' ) );
    17091709
    17101710        if ( ! is_multisite() ) {
    1711             $this->assertTrue( user_can_for_blog( $user->ID, 12345, 'edit_posts' ) );
    1712             $this->assertFalse( user_can_for_blog( $user->ID, 12345, 'foo_the_bar' ) );
     1711            $this->assertTrue( user_can_for_site( $user->ID, 12345, 'edit_posts' ) );
     1712            $this->assertFalse( user_can_for_site( $user->ID, 12345, 'foo_the_bar' ) );
    17131713            return;
    17141714        }
     
    17171717
    17181718        $this->assertNotWPError( $blog_id );
    1719         $this->assertTrue( user_can_for_blog( $user->ID, $blog_id, 'edit_posts' ) );
    1720         $this->assertFalse( user_can_for_blog( $user->ID, $blog_id, 'foo_the_bar' ) );
     1719        $this->assertTrue( user_can_for_site( $user->ID, $blog_id, 'edit_posts' ) );
     1720        $this->assertFalse( user_can_for_site( $user->ID, $blog_id, 'foo_the_bar' ) );
    17211721
    17221722        $author = self::$users['author'];
     
    17241724        // Verify another user doesn't have a capability
    17251725        $this->assertFalse( is_user_member_of_blog( $author->ID, $blog_id ) );
    1726         $this->assertFalse( user_can_for_blog( $author->ID, $blog_id, 'edit_posts' ) );
     1726        $this->assertFalse( user_can_for_site( $author->ID, $blog_id, 'edit_posts' ) );
    17271727
    17281728        // Add the author to the site
     
    17311731        // Verify they now have the capability
    17321732        $this->assertTrue( is_user_member_of_blog( $author->ID, $blog_id ) );
    1733         $this->assertTrue( user_can_for_blog( $author->ID, $blog_id, 'edit_posts' ) );
     1733        $this->assertTrue( user_can_for_site( $author->ID, $blog_id, 'edit_posts' ) );
    17341734
    17351735        // Verify the user doesn't have a capability for a non-existent site
    1736         $this->assertFalse( user_can_for_blog( $user->ID, -1, 'edit_posts' ) );
     1736        $this->assertFalse( user_can_for_site( $user->ID, -1, 'edit_posts' ) );
    17371737    }
    17381738
     
    17401740     * @group ms-required
    17411741     */
    1742     public function test_borked_current_user_can_for_blog() {
     1742    public function test_borked_current_user_can_for_site() {
    17431743        $orig_blog_id = get_current_blog_id();
    17441744        $blog_id      = self::factory()->blog->create();
     
    17481748        add_action( 'switch_blog', array( $this, 'nullify_current_user_and_keep_nullifying_user' ) );
    17491749
    1750         current_user_can_for_blog( $blog_id, 'edit_posts' );
     1750        current_user_can_for_site( $blog_id, 'edit_posts' );
    17511751
    17521752        $this->assertSame( $orig_blog_id, get_current_blog_id() );
Note: See TracChangeset for help on using the changeset viewer.