feat(forum): add quick publish, captcha and hidden content
Port the reference inline quick-publish composer to the forum home: title/body inputs, image upload, plate/topic/access/hidden-content dropdowns and save/publish actions. Wire the site captcha into forum publishing through a new `forum_post` scene (admin + REST gate), and turn the hidden-content box into the theme's own visibility shortcodes (login/comment/vip/payshow) so the existing gate renderer unlocks them. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
5d3358d844
commit
7a59c65252
11 files changed
+204
-20
No files matched your search
@@ -134,6 +134,21 @@
|
||||
syncHidden('post_status', status.dataset.forumStatus)
|
||||
return
|
||||
}
|
||||
const hideType = event.target.closest('[data-forum-hide-type]')
|
||||
if (hideType) {
|
||||
root.querySelectorAll('[data-forum-hide-type]').forEach((item) => item.classList.toggle('active', item === hideType))
|
||||
syncHidden('hide_type', hideType.dataset.forumHideType)
|
||||
return
|
||||
}
|
||||
const topic = event.target.closest('[data-forum-topic],[data-forum-topic-none]')
|
||||
if (topic) {
|
||||
const name = topic.dataset.forumTopic || ''
|
||||
root.querySelectorAll('[data-forum-topic],[data-forum-topic-none]').forEach((item) => item.classList.toggle('active', item === topic))
|
||||
syncHidden('topics', name)
|
||||
const label = root.querySelector('[name="topics"]')
|
||||
if (label) label.lastChild.textContent = name || '话题'
|
||||
return
|
||||
}
|
||||
const pick = event.target.closest('[data-forum-cover-pick]')
|
||||
if (pick) {
|
||||
root.querySelector('[data-forum-cover-file]')?.click()
|
||||
|
||||
Reference in new issue
Block a user