mirror of
https://github.com/lkddi/nexusphp.git
synced 2026-04-24 03:57:22 +08:00
separate route permission + token manage
This commit is contained in:
@@ -1,22 +1,22 @@
|
||||
<?php
|
||||
namespace App\Repositories;
|
||||
|
||||
use App\Enums\Permission\PermissionEnum;
|
||||
use App\Enums\Permission\RoutePermissionEnum;
|
||||
|
||||
class TokenRepository extends BaseRepository
|
||||
{
|
||||
private static array $userTokenPermissions = [
|
||||
PermissionEnum::TORRENT_LIST,
|
||||
PermissionEnum::TORRENT_VIEW,
|
||||
PermissionEnum::UPLOAD,
|
||||
PermissionEnum::USER_VIEW,
|
||||
RoutePermissionEnum::TORRENT_LIST,
|
||||
RoutePermissionEnum::TORRENT_VIEW,
|
||||
RoutePermissionEnum::TORRENT_UPLOAD,
|
||||
RoutePermissionEnum::USER_VIEW,
|
||||
];
|
||||
|
||||
public function listUserTokenPermissions(): array
|
||||
{
|
||||
$result = [];
|
||||
foreach (self::$userTokenPermissions as $permission) {
|
||||
$result[$permission->value] = nexus_trans("permission.{$permission->value}.text");
|
||||
$result[$permission->value] = nexus_trans("route-permission.{$permission->value}.text");
|
||||
}
|
||||
return $result;
|
||||
}
|
||||
|
||||
@@ -26,6 +26,7 @@ use Illuminate\Support\Arr;
|
||||
use Illuminate\Support\Collection;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Illuminate\Support\Facades\Gate;
|
||||
use Illuminate\Support\Str;
|
||||
use Nexus\Database\NexusDB;
|
||||
|
||||
@@ -69,7 +70,9 @@ class UserRepository extends BaseRepository
|
||||
->allowIncludeCounts($allowIncludeCounts)
|
||||
->allowIncludeFields($allowIncludeFields)
|
||||
;
|
||||
$user = $apiQueryBuilder->build()->findOrFail($id);
|
||||
$query = $apiQueryBuilder->build();
|
||||
$user = $query->findOrFail($id);
|
||||
Gate::authorize('view', $user);
|
||||
return $this->appendIncludeFields($apiQueryBuilder, $currentUser, $user);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user