Add ranks and ACP user enhancements

This commit is contained in:
Micha
2026-01-14 00:15:56 +01:00
parent 98094459e3
commit fd29b928d8
21 changed files with 1272 additions and 26 deletions

View File

@@ -12,7 +12,9 @@ class PostController extends Controller
{
public function index(Request $request): JsonResponse
{
$query = Post::query()->withoutTrashed()->with('user');
$query = Post::query()->withoutTrashed()->with([
'user' => fn ($query) => $query->withCount('posts')->with('rank'),
]);
$threadParam = $request->query('thread');
if (is_string($threadParam)) {
@@ -46,7 +48,9 @@ class PostController extends Controller
'body' => $data['body'],
]);
$post->loadMissing('user');
$post->loadMissing([
'user' => fn ($query) => $query->withCount('posts')->with('rank'),
]);
return response()->json($this->serializePost($post), 201);
}
@@ -88,6 +92,14 @@ class PostController extends Controller
'user_avatar_url' => $post->user?->avatar_path
? Storage::url($post->user->avatar_path)
: null,
'user_posts_count' => $post->user?->posts_count,
'user_created_at' => $post->user?->created_at?->toIso8601String(),
'user_rank_name' => $post->user?->rank?->name,
'user_rank_badge_type' => $post->user?->rank?->badge_type,
'user_rank_badge_text' => $post->user?->rank?->badge_text,
'user_rank_badge_url' => $post->user?->rank?->badge_image_path
? Storage::url($post->user->rank->badge_image_path)
: null,
'created_at' => $post->created_at?->toIso8601String(),
'updated_at' => $post->updated_at?->toIso8601String(),
];