| Server IP : 87.229.120.60 / Your IP : 216.73.216.86 Web Server : Apache System : Linux outside 5.4.8_Algonet_ZeroMAC_0.9.4.8 #6 SMP Mon Feb 3 20:36:07 CET 2020 x86_64 User : server ( 1002) PHP Version : 8.3.20 Disable Function : exec,passthru,shell_exec,system,proc_open,popen,curl_multi_exec,parse_ini_file,show_source MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /home/faktorteam/www/wp-content/plugins/wordpress-seo/admin/roles/ |
Upload File : |
<?php
/**
* WPSEO plugin file.
*
* @package WPSEO\Admin\Roles
*/
/**
* WordPress' default implementation of the Role Manager.
*/
final class WPSEO_Role_Manager_WP extends WPSEO_Abstract_Role_Manager {
/**
* Adds a role to the system.
*
* @param string $role Role to add.
* @param string $display_name Name to display for the role.
* @param array $capabilities Capabilities to add to the role.
*
* @return void
*/
protected function add_role( $role, $display_name, array $capabilities = [] ) {
$wp_role = get_role( $role );
if ( $wp_role ) {
foreach ( $capabilities as $capability => $grant ) {
$wp_role->add_cap( $capability, $grant );
}
return;
}
add_role( $role, $display_name, $capabilities );
}
/**
* Removes a role from the system.
*
* @param string $role Role to remove.
*
* @return void
*/
protected function remove_role( $role ) {
remove_role( $role );
}
/**
* Formats the capabilities to the required format.
*
* @param array $capabilities Capabilities to format.
* @param bool $enabled Whether these capabilities should be enabled or not.
*
* @return array Formatted capabilities.
*/
protected function format_capabilities( array $capabilities, $enabled = true ) {
// Flip keys and values.
$capabilities = array_flip( $capabilities );
// Set all values to $enabled.
return array_fill_keys( array_keys( $capabilities ), $enabled );
}
}