<?php
/**
 * User Helper Functions
 *
 * @package WP_Ultimo\Functions
 * @since   2.0.0
 */

// Exit if accessed directly
defined('ABSPATH') || exit;

/**
 * Returns a list of valid selectable roles.
 *
 * @since 2.0.0
 * @param boolean $add_default_option Adds a new default option.
 * @return array
 */
function wu_get_roles_as_options($add_default_option = false) {

	if ( ! function_exists('get_editable_roles')) {
		require_once ABSPATH . 'wp-admin/includes/user.php';
	}

	$roles = [];

	if ($add_default_option) {
		$roles['default'] = __('Use WP Multisite WaaS default', 'wp-ultimo');
	}

	$editable_roles = get_editable_roles();

	foreach ($editable_roles as $role => $details) {
		$roles[ esc_attr($role) ] = translate_user_role($details['name']);
	}

	return $roles;
}