feat: add custom publish time and last updated time display

- Add custom publish time field to article create/edit forms
  - Support datetime-local input for manual time setting
  - Auto-set on first publish if left blank
  - Works for both admin and user article forms

- Display last updated time on article detail page
  - Show both published time and last updated time
  - Auto-maintained by GORM on each update
  - Format: YYYY-MM-DD HH:MM

- Add i18n support for new fields
  - article_published_at: Published Time / 发布时间
  - article_published_at_hint: Leave blank to auto-set on publish / 留空则在发布时自动设置
  - article_last_updated: Last Updated / 最后更新

- Update handlers and templates
  - handlers/article.go: Add parsePublishedAt/formatPublishedAt functions
  - handlers/home.go: Add formatUpdateTime function
  - handlers/my_articles.go: Support custom publish time in user articles
  - templates: Add datetime-local inputs and time display

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-06-22 20:20:19 +08:00
co-authored by Claude Fable 5
parent b600eac21c
commit b0ca76e8dc
9 changed files with 315 additions and 52 deletions
+8 -1
View File
@@ -28,7 +28,14 @@
<img src="/uploads/avatars/{{.Article.Author.Avatar}}" alt="avatar" class="w-7 h-7 rounded-full object-cover">
{{end}}
<span class="font-medium text-gray-700">{{.AuthorName}}</span>
{{if .PublishedAt}}<span>·</span><span>{{.PublishedAt}}</span>{{end}}
{{if .PublishedAt}}
<span>·</span>
<span>{{index .Tr "article_col_published"}}: {{.PublishedAt}}</span>
{{end}}
{{if .UpdatedAt}}
<span>·</span>
<span>{{index .Tr "article_last_updated"}}: {{.UpdatedAt}}</span>
{{end}}
</div>
{{if .Article.Cover}}