feat: add platform homepage and content management system with improved UI
Implemented a comprehensive CMS for managing platform homepage and content pages: - Platform homepage manager with template selection (default, minimal, modern) - Content pages CRUD with platform defaults and vendor overrides - Sidebar navigation for Content Management section - Dedicated API endpoints for creating, updating, deleting pages - Template support for customizable homepage layouts - Header/footer navigation integration for content pages - Comprehensive documentation for platform homepage setup - Migration script for creating initial platform pages UI improvements: - Fixed action buttons styling in content pages table to match design system - Added proper hover states, rounded corners, and better contrast - Increased button size and padding for better usability 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -176,6 +176,7 @@ class ContentPageService:
|
||||
content: str,
|
||||
vendor_id: Optional[int] = None,
|
||||
content_format: str = "html",
|
||||
template: str = "default",
|
||||
meta_description: Optional[str] = None,
|
||||
meta_keywords: Optional[str] = None,
|
||||
is_published: bool = False,
|
||||
@@ -194,6 +195,7 @@ class ContentPageService:
|
||||
content: HTML or Markdown content
|
||||
vendor_id: Vendor ID (None for platform default)
|
||||
content_format: "html" or "markdown"
|
||||
template: Template name for homepage/landing pages (default, minimal, modern, etc.)
|
||||
meta_description: SEO description
|
||||
meta_keywords: SEO keywords
|
||||
is_published: Publish immediately
|
||||
@@ -211,6 +213,7 @@ class ContentPageService:
|
||||
title=title,
|
||||
content=content,
|
||||
content_format=content_format,
|
||||
template=template,
|
||||
meta_description=meta_description,
|
||||
meta_keywords=meta_keywords,
|
||||
is_published=is_published,
|
||||
@@ -236,6 +239,7 @@ class ContentPageService:
|
||||
title: Optional[str] = None,
|
||||
content: Optional[str] = None,
|
||||
content_format: Optional[str] = None,
|
||||
template: Optional[str] = None,
|
||||
meta_description: Optional[str] = None,
|
||||
meta_keywords: Optional[str] = None,
|
||||
is_published: Optional[bool] = None,
|
||||
@@ -253,6 +257,7 @@ class ContentPageService:
|
||||
title: New title
|
||||
content: New content
|
||||
content_format: New format
|
||||
template: New template name
|
||||
meta_description: New SEO description
|
||||
meta_keywords: New SEO keywords
|
||||
is_published: New publish status
|
||||
@@ -277,6 +282,8 @@ class ContentPageService:
|
||||
page.content = content
|
||||
if content_format is not None:
|
||||
page.content_format = content_format
|
||||
if template is not None:
|
||||
page.template = template
|
||||
if meta_description is not None:
|
||||
page.meta_description = meta_description
|
||||
if meta_keywords is not None:
|
||||
|
||||
Reference in New Issue
Block a user