access.php
2 years ago
behavior.php
5 months ago
bootstrap.php
5 months ago
contentlanguage.php
2 years ago
date.php
1 month ago
form.php
2 years ago
formbehavior.php
5 months ago
grid.php
2 years ago
jquery.php
2 years ago
list.php
2 years ago
number.php
2 years ago
select.php
2 years ago
user.php
2 years ago
user.php
54 lines
| 1 | <?php |
| 2 | /** |
| 3 | * @package VikWP - Libraries |
| 4 | * @subpackage adapter.html |
| 5 | * @author E4J s.r.l. |
| 6 | * @copyright Copyright (C) 2023 E4J s.r.l. All Rights Reserved. |
| 7 | * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL |
| 8 | * @link https://vikwp.com |
| 9 | */ |
| 10 | |
| 11 | // No direct access |
| 12 | defined('ABSPATH') or die('No script kiddies please!'); |
| 13 | |
| 14 | /** |
| 15 | * Utility class working with users. |
| 16 | * |
| 17 | * @since 10.1.16 |
| 18 | */ |
| 19 | abstract class JHtmlUser |
| 20 | { |
| 21 | /** |
| 22 | * Displays a list of user groups. |
| 23 | * |
| 24 | * @param boolean $includeSuperAdmin True to include super admin groups, false to exclude them. |
| 25 | * |
| 26 | * @return array An array containing a list of user groups. |
| 27 | */ |
| 28 | public static function groups($includeSuperAdmin = false) |
| 29 | { |
| 30 | JLoader::import('adapter.acl.access'); |
| 31 | |
| 32 | $groups = array(); |
| 33 | |
| 34 | foreach (wp_roles()->roles as $slug => $role) |
| 35 | { |
| 36 | // make sure Super Admin usergroup should be included or |
| 37 | // whether the current group DOES NOT support super admin caps |
| 38 | if ($includeSuperAdmin || !JAccess::checkGroup($slug, 'core.admin')) |
| 39 | { |
| 40 | $groups[] = JHtml::fetch('select.option', $slug, $role['name']); |
| 41 | } |
| 42 | } |
| 43 | |
| 44 | /** |
| 45 | * @todo should we push also a record to support "Guest" users? |
| 46 | */ |
| 47 | |
| 48 | // reverse the roles (from the lowest to the highest) |
| 49 | $groups = array_reverse($groups); |
| 50 | |
| 51 | return $groups; |
| 52 | } |
| 53 | } |
| 54 |