feat: fix sites, posts, pages, content blocks pages

This commit is contained in:
cawcenter
2025-12-14 23:06:55 -05:00
parent 2a0674e04f
commit 5063cfbc1b
5 changed files with 59 additions and 36 deletions

View File

@@ -1,20 +1,13 @@
--- ---
import Layout from '@/layouts/AdminLayout.astro'; import AdminLayout from '../../../layouts/AdminLayout.astro';
import GenericCollectionManager from '@/components/admin/collections/GenericCollectionManager'; import CollectionTable from '../../../components/admin/CollectionTable';
--- ---
<Layout title="Content Fragments | Spark Intelligence"> <AdminLayout title="Content Blocks">
<div class="p-8"> <CollectionTable
<GenericCollectionManager endpoint="/api/collections/content_blocks"
client:only="react" columns={['name', 'block_type', 'created_at']}
collection="content_fragments" title="Content Fragments"
title="Content Fragments" client:load
displayField="key" />
fields={[ </AdminLayout>
{ key: 'key', label: 'Fragment Key', type: 'text' },
{ key: 'content', label: 'Content', type: 'textarea' },
{ key: 'tags', label: 'Tags (JSON)', type: 'json' }
]}
/>
</div>
</Layout>

View File

@@ -0,0 +1,13 @@
---
import AdminLayout from '../../../layouts/AdminLayout.astro';
import CollectionTable from '../../../components/admin/CollectionTable';
---
<AdminLayout title="Pages">
<CollectionTable
endpoint="/api/collections/pages"
columns={['name', 'route', 'status', 'created_at']}
title="Static Pages"
client:load
/>
</AdminLayout>

View File

@@ -0,0 +1,13 @@
---
import AdminLayout from '../../../layouts/AdminLayout.astro';
import CollectionTable from '../../../components/admin/CollectionTable';
---
<AdminLayout title="Blog Posts">
<CollectionTable
endpoint="/api/collections/posts"
columns={['title', 'slug', 'status', 'published_at']}
title="Posts"
client:load
/>
</AdminLayout>

View File

@@ -1,22 +1,13 @@
--- ---
import Layout from '@/layouts/AdminLayout.astro'; import AdminLayout from '../../../layouts/AdminLayout.astro';
import ArticleList from '@/components/admin/seo/ArticleList'; import CollectionTable from '../../../components/admin/CollectionTable';
import { getDirectusClient, readItems } from '@/lib/directus/client';
const directus = getDirectusClient();
const articles = await directus.request(readItems('generated_articles', {
fields: ['*'],
limit: 50,
sort: ['-date_created']
})).catch(() => []);
--- ---
<Layout title="Generated Articles"> <AdminLayout title="Generated Articles">
<div class="p-8"> <CollectionTable
<div class="mb-6"> endpoint="/api/collections/posts"
<h1 class="text-3xl font-bold text-white mb-2">Generated Articles</h1> columns={['title', 'status', 'target_city', 'published_at', 'created_at']}
<p class="text-gray-400">Review and manage AI-generated SEO content.</p> title="Articles"
</div> client:load
<ArticleList client:load initialArticles={articles} /> />
</div> </AdminLayout>
</Layout>

View File

@@ -0,0 +1,13 @@
---
import AdminLayout from '../../layouts/AdminLayout.astro';
import CollectionTable from '../../components/admin/CollectionTable';
---
<AdminLayout title="Sites & Deployments">
<CollectionTable
endpoint="/api/collections/sites"
columns={['name', 'domain', 'status', 'created_at']}
title="Sites"
client:load
/>
</AdminLayout>