42 lines
1.3 KiB
PHP
42 lines
1.3 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Web\Posts;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use App\Support\Seo\SeoFactory;
|
|
use Illuminate\Http\Request;
|
|
use Inertia\Inertia;
|
|
use Inertia\Response;
|
|
|
|
class FollowingFeedController extends Controller
|
|
{
|
|
public function __construct(private SeoFactory $seoFactory) {}
|
|
|
|
/**
|
|
* GET /feed/following
|
|
* Renders the Following Feed Inertia page.
|
|
* Actual data is loaded client-side via GET /api/posts/following
|
|
*/
|
|
public function index(Request $request): Response
|
|
{
|
|
$seo = $this->seoFactory->simplePage(
|
|
title: 'Following Feed — ' . config('seo.site_name', 'Skinbase'),
|
|
description: 'Posts from creators you follow on Skinbase.',
|
|
canonical: url('/feed/following'),
|
|
indexable: false,
|
|
);
|
|
|
|
return Inertia::render('Feed/FollowingFeed', [
|
|
'auth' => [
|
|
'user' => $request->user() ? [
|
|
'id' => $request->user()->id,
|
|
'username' => $request->user()->username,
|
|
'name' => $request->user()->name,
|
|
'avatar' => $request->user()->profile?->avatar_url ?? null,
|
|
] : null,
|
|
],
|
|
'seo' => $seo,
|
|
]);
|
|
}
|
|
}
|