- 新增共享部分模板 templates/partials/article_attachments.html (附件区标记:文件名/大小/操作列 + 上传按钮) - 新增共享 static/js/article-attachments.js:上传(multipart→files 表 type=attachments)、编辑页回填、插入正文、图片一键设封面、删除; uploadURL/listURL/editor/i18n 文案均由页面注入 - 管理员页改用共享 partial+JS(行为不变);同时修复既有 bug: 表单提交闭包引用未声明的 articleID(作用域错误导致保存静默失败) - 普通用户页加入附件区,走 /api/my/articles/attachments(新建页 session_token / 编辑页 article_id),支持一键设封面/插入正文
28 lines
1.5 KiB
HTML
28 lines
1.5 KiB
HTML
{{define "article_attachments"}}
|
||
<!-- Attachments:全站统一上传(files 表,type=attachments)。
|
||
上传/删除/列表走当前页面所属的角色 API(/api/admin/... 或 /api/my/...),
|
||
行为与文案由 static/js/article-attachments.js 的 initArticleAttachments 提供。 -->
|
||
<div>
|
||
<label class="block text-sm font-medium text-gray-700 mb-1">{{index .Tr "article_attachments"}}</label>
|
||
<div class="flex items-center gap-3 mb-3">
|
||
<input type="file" id="attachmentInput" class="text-sm text-gray-600" disabled>
|
||
<button type="button" id="attachmentUploadBtn"
|
||
class="px-4 py-2 bg-gray-200 text-gray-700 rounded-lg font-medium hover:bg-gray-300 transition-colors cursor-pointer disabled:opacity-50"
|
||
disabled>
|
||
{{index .Tr "article_upload"}}
|
||
</button>
|
||
<span id="attachmentMsg" class="text-xs text-gray-400"></span>
|
||
</div>
|
||
<table class="w-full text-left border border-gray-200 rounded-lg overflow-hidden">
|
||
<thead class="bg-gray-50 border-b border-gray-200">
|
||
<tr>
|
||
<th class="px-3 py-2 text-xs font-semibold text-gray-600">{{index .Tr "article_att_name"}}</th>
|
||
<th class="px-3 py-2 text-xs font-semibold text-gray-600">{{index .Tr "article_att_size"}}</th>
|
||
<th class="px-3 py-2 text-xs font-semibold text-gray-600 text-right">{{index .Tr "settings_actions"}}</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody id="attachmentList" class="divide-y divide-gray-100"></tbody>
|
||
</table>
|
||
</div>
|
||
{{end}}
|