forked from fa/breadcrumb-the-shire
instances added god may help
This commit is contained in:
@@ -6,7 +6,7 @@ use MintyPHP\DB;
|
||||
|
||||
class UserRoleRepository
|
||||
{
|
||||
public static function listRoleIdsByUserId(int $userId): array
|
||||
public function listRoleIdsByUserId(int $userId): array
|
||||
{
|
||||
$rows = DB::select('select role_id from user_roles where user_id = ?', (string) $userId);
|
||||
if (!is_array($rows)) {
|
||||
@@ -22,7 +22,7 @@ class UserRoleRepository
|
||||
return array_values(array_unique($ids));
|
||||
}
|
||||
|
||||
public static function replaceForUser(int $userId, array $roleIds): bool
|
||||
public function replaceForUser(int $userId, array $roleIds): bool
|
||||
{
|
||||
DB::delete('delete from user_roles where user_id = ?', (string) $userId);
|
||||
if (!$roleIds) {
|
||||
@@ -40,17 +40,17 @@ class UserRoleRepository
|
||||
return true;
|
||||
}
|
||||
|
||||
public static function countUsersByRoleIds(array $roleIds): array
|
||||
public function countUsersByRoleIds(array $roleIds): array
|
||||
{
|
||||
return self::countByRoleIds($roleIds, false);
|
||||
return $this->countByRoleIds($roleIds, false);
|
||||
}
|
||||
|
||||
public static function countActiveUsersByRoleIds(array $roleIds): array
|
||||
public function countActiveUsersByRoleIds(array $roleIds): array
|
||||
{
|
||||
return self::countByRoleIds($roleIds, true);
|
||||
return $this->countByRoleIds($roleIds, true);
|
||||
}
|
||||
|
||||
private static function countByRoleIds(array $roleIds, bool $activeOnly): array
|
||||
private function countByRoleIds(array $roleIds, bool $activeOnly): array
|
||||
{
|
||||
$roleIds = array_values(array_unique(array_map('intval', $roleIds)));
|
||||
$roleIds = array_values(array_filter($roleIds, static fn ($id) => $id > 0));
|
||||
@@ -73,17 +73,17 @@ class UserRoleRepository
|
||||
|
||||
$result = [];
|
||||
foreach ($rows as $row) {
|
||||
$roleId = self::extractIntField($row, 'role_id');
|
||||
$roleId = $this->extractIntField($row, 'role_id');
|
||||
if ($roleId <= 0) {
|
||||
continue;
|
||||
}
|
||||
$result[$roleId] = self::extractIntField($row, 'user_count');
|
||||
$result[$roleId] = $this->extractIntField($row, 'user_count');
|
||||
}
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
||||
private static function extractIntField(array $row, string $field): int
|
||||
private function extractIntField(array $row, string $field): int
|
||||
{
|
||||
foreach ($row as $value) {
|
||||
if (!is_array($value)) {
|
||||
|
||||
Reference in New Issue
Block a user