Wire admin studio SSR and search infrastructure
This commit is contained in:
@@ -26,6 +26,9 @@ final class AiBiographyAdminController extends Controller
|
||||
|
||||
public function index(Request $request): Response
|
||||
{
|
||||
$isAdminSurface = $request->routeIs('admin.cp.ai-biography.*');
|
||||
$routePrefix = $isAdminSurface ? 'admin.cp.ai-biography.' : 'cp.ai-biography.';
|
||||
|
||||
$filters = $this->filters($request);
|
||||
|
||||
$records = $this->recordsQuery($filters)
|
||||
@@ -33,7 +36,7 @@ final class AiBiographyAdminController extends Controller
|
||||
->withQueryString()
|
||||
->through(fn (CreatorAiBiography $record): array => $this->mapRecord($record));
|
||||
|
||||
return Inertia::render('Moderation/AiBiographyAdmin', [
|
||||
return Inertia::render($isAdminSurface ? 'Admin/AiBiography' : 'Moderation/AiBiographyAdmin', [
|
||||
'title' => 'AI Biography Review',
|
||||
'records' => $records,
|
||||
'filters' => $filters,
|
||||
@@ -72,14 +75,14 @@ final class AiBiographyAdminController extends Controller
|
||||
],
|
||||
],
|
||||
'endpoints' => [
|
||||
'index' => route('cp.ai-biography.index'),
|
||||
'rebuildPattern' => route('cp.ai-biography.rebuild', ['user' => '__USER__']),
|
||||
'approvePattern' => route('cp.ai-biography.approve', ['biography' => '__BIOGRAPHY__']),
|
||||
'flagPattern' => route('cp.ai-biography.flag', ['biography' => '__BIOGRAPHY__']),
|
||||
'hidePattern' => route('cp.ai-biography.hide', ['biography' => '__BIOGRAPHY__']),
|
||||
'showPattern' => route('cp.ai-biography.show', ['biography' => '__BIOGRAPHY__']),
|
||||
'index' => route($routePrefix . 'index'),
|
||||
'rebuildPattern' => route($routePrefix . 'rebuild', ['user' => '__USER__']),
|
||||
'approvePattern' => route($routePrefix . 'approve', ['biography' => '__BIOGRAPHY__']),
|
||||
'flagPattern' => route($routePrefix . 'flag', ['biography' => '__BIOGRAPHY__']),
|
||||
'hidePattern' => route($routePrefix . 'hide', ['biography' => '__BIOGRAPHY__']),
|
||||
'showPattern' => route($routePrefix . 'show', ['biography' => '__BIOGRAPHY__']),
|
||||
],
|
||||
])->rootView('moderation');
|
||||
])->rootView($isAdminSurface ? 'admin' : 'moderation');
|
||||
}
|
||||
|
||||
public function rebuild(User $user): JsonResponse
|
||||
|
||||
@@ -23,18 +23,21 @@ class FeaturedArtworkAdminController extends Controller
|
||||
{
|
||||
}
|
||||
|
||||
public function index(): Response
|
||||
public function index(Request $request): Response
|
||||
{
|
||||
return Inertia::render('Collection/FeaturedArtworksAdmin', array_merge(
|
||||
$isAdminSurface = $request->routeIs('admin.artworks.featured.*');
|
||||
$routePrefix = $isAdminSurface ? 'admin.artworks.featured.' : 'admin.cp.artworks.featured.';
|
||||
|
||||
return Inertia::render($isAdminSurface ? 'Admin/FeaturedArtworks' : 'Collection/FeaturedArtworksAdmin', array_merge(
|
||||
$this->featuredArtworks->pageProps(),
|
||||
[
|
||||
'endpoints' => [
|
||||
'search' => route('admin.cp.artworks.featured.search'),
|
||||
'store' => route('admin.cp.artworks.featured.store'),
|
||||
'updatePattern' => route('admin.cp.artworks.featured.update', ['feature' => '__FEATURE__']),
|
||||
'togglePattern' => route('admin.cp.artworks.featured.toggle', ['feature' => '__FEATURE__']),
|
||||
'forceHeroPattern' => route('admin.cp.artworks.featured.force-hero', ['feature' => '__FEATURE__']),
|
||||
'destroyPattern' => route('admin.cp.artworks.featured.delete', ['feature' => '__FEATURE__']),
|
||||
'search' => route($routePrefix . 'search'),
|
||||
'store' => route($routePrefix . 'store'),
|
||||
'updatePattern' => route($routePrefix . 'update', ['feature' => '__FEATURE__']),
|
||||
'togglePattern' => route($routePrefix . 'toggle', ['feature' => '__FEATURE__']),
|
||||
'forceHeroPattern' => route($routePrefix . 'force-hero', ['feature' => '__FEATURE__']),
|
||||
'destroyPattern' => route($routePrefix . 'delete', ['feature' => '__FEATURE__']),
|
||||
],
|
||||
'capabilities' => [
|
||||
'forceHeroEnabled' => $this->hasForceHeroColumn(),
|
||||
@@ -42,11 +45,11 @@ class FeaturedArtworkAdminController extends Controller
|
||||
'seo' => [
|
||||
'title' => 'Featured Artworks — Skinbase Nova',
|
||||
'description' => 'Editorial controls for homepage featured artworks and the current hero winner.',
|
||||
'canonical' => route('admin.cp.artworks.featured.main'),
|
||||
'canonical' => route($routePrefix . 'main'),
|
||||
'robots' => 'noindex,follow',
|
||||
],
|
||||
],
|
||||
))->rootView('collections');
|
||||
))->rootView($isAdminSurface ? 'admin' : 'collections');
|
||||
}
|
||||
|
||||
public function search(Request $request): JsonResponse
|
||||
|
||||
Reference in New Issue
Block a user