/** * Test global gravityview_full_access permissions using the * We create a user with no caps, check * @covers GravityView_Roles_Capabilities::has_cap * @covers GVCommon::has_cap */ public function test_has_cap_gravityview_full_access() { // Create a user with no capabilities $zero = $this->factory->user->create_and_set(array('user_login' => 'zero', 'role' => 'zero')); $role_caps = GravityView_Roles_Capabilities::all_caps('all'); // Zero can't access anything by default foreach ($role_caps as $cap) { $this->assertFalse(GravityView_Roles_Capabilities::has_cap($cap)); } $zero->add_cap('gravityview_full_access'); // With GV full access, $zero is a $hero foreach ($role_caps as $cap) { $this->assertTrue(GravityView_Roles_Capabilities::has_cap($cap)); } }
/** * Add GravityView user caps based on role * @since 1.15 * @param WP_User $user */ function _add_gravityview_caps(WP_User $user) { foreach ($user->roles as $role) { $capabilities = GravityView_Roles_Capabilities::all_caps($role); foreach ($capabilities as $cap) { $user->add_cap($cap, true); } } }