feat: add article management (list, edit, delete)

- Add admin article list page at /admin/articles with status badges,
  pin marker, publish time, and edit/delete actions
- Share the create/edit form: dynamic action URL, prefilled fields,
  is_top checkbox state, and create-vs-edit heading
- Add ArticleUpdate/ArticleDelete handlers (soft-delete via DeletedAt);
  stamp PublishedAt on first publish
- Add "Manage Articles" entry on the dashboard
- Hide home page sign-in/dashboard buttons
- Add EN/ZH i18n keys for the management UI

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-06-21 20:13:39 +08:00
co-authored by Claude Fable 5
parent 42516257e0
commit b474ee009a
7 changed files with 329 additions and 89 deletions
+30
View File
@@ -118,6 +118,21 @@ var translations = map[Lang]map[string]string{
"article_content_required": "Content is required.",
"article_back_home": "Back to Home",
"article_not_found": "Article not found.",
// Article management
"article_list_title": "Articles",
"article_edit_title": "Edit Article",
"article_manage": "Manage Articles",
"article_edit": "Edit",
"article_delete": "Delete",
"article_delete_confirm": "Delete this article?",
"article_updated": "Article updated.",
"article_deleted": "Article deleted.",
"article_archived": "Archived",
"article_col_title": "Title",
"article_col_status": "Status",
"article_col_published": "Published",
"article_col_actions": "Actions",
},
ZH: {
// 导航
@@ -221,6 +236,21 @@ var translations = map[Lang]map[string]string{
"article_content_required": "正文不能为空。",
"article_back_home": "返回首页",
"article_not_found": "文章不存在。",
// 文章管理
"article_list_title": "文章管理",
"article_edit_title": "编辑文章",
"article_manage": "文章管理",
"article_edit": "编辑",
"article_delete": "删除",
"article_delete_confirm": "确认删除这篇文章?",
"article_updated": "文章已更新。",
"article_deleted": "文章已删除。",
"article_archived": "已归档",
"article_col_title": "标题",
"article_col_status": "状态",
"article_col_published": "发布时间",
"article_col_actions": "操作",
},
}