0
0
Fork 0
mirror of https://github.com/discourse/discourse.git synced 2026-08-06 12:09:27 +08:00
discourse/config/locales
Régis Hanol beba9d0c11
FIX: Hide posts while media added by an edit awaits review
When an edit adds media that `skip_review_media_groups` requires staff to
approve, queueing a reviewable is not enough. At creation the check holds the
whole post back until it is approved, but on the edit path the media stayed
publicly visible until a moderator got to the queue, defeating the point of a
review meant to happen before publication.

The post is now hidden — and the topic unlisted when it is the first post —
under a dedicated hidden reason while the review is pending. Approving through
the existing approve-and-unhide action restores both. The author is told what
happened in a PM, and every placeholder (app, crawler view, RSS) explains the
post is awaiting media review instead of claiming it was flagged by the
community.

Reusing the hidden flag means the flag system could unhide the post while the
media review was still pending: a moderator disagreeing with an unrelated
flag, a user withdrawing one, or the author editing a flag-hidden post would
all have published the unreviewed media. Unhiding now refuses while a media
review is pending unless it is forced, which only the review's approval and a
staff member explicitly unhiding the post do.

Since this hide is not a flag:

- the flag cooldown no longer locks the author out of editing — editing a
  media-hidden post never unhides it, so there is nothing to game;
- hiding no longer overwrites the visibility reason of a topic that was
  already unlisted, so approving the media cannot silently relist a topic a
  moderator deliberately unlisted (which also fixes the same long-standing
  clobber on the flag path);
- the system message options only include a flag reason when there is an
  actual flag, since interpolating `flag_reasons.` with no type stuffed the
  entire translation subtree into the job arguments.

Hiding is only worth doing if the content is actually hidden, so the topic's
og:image and the RSS channel description — which rendered the first post's
raw — no longer advertise the content of a hidden first post.

System-driven revisions (`skip_validations`) are exempt from the check,
matching creation where programmatic post creation never goes through the
new-post checks; refreshing a topic embed should not unlist a blog topic.
2026-08-04 17:11:08 +02:00
..
client.ar.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.be.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.bg.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.bs_BA.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.ca.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.cs.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.da.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.de.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.el.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.en.yml FIX: Hide posts while media added by an edit awaits review 2026-08-04 17:11:08 +02:00
client.en_GB.yml I18N: Update translations (#40300) 2026-05-26 15:25:51 +02:00
client.es.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.et.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.fa_IR.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.fi.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.fr.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.gl.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.he.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.hr.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.hu.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.hy.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.id.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.it.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.ja.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.ko.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.lt.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.lv.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.nb_NO.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.nl.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.pl_PL.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.pt.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.pt_BR.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.ro.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.ru.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.sk.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.sl.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.sq.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.sr.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.sv.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.sw.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.te.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.th.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.tr_TR.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.ug.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.uk.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.ur.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.vi.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.zh_CN.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
client.zh_TW.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
names.yml UX: Use English as language label where appropriate (#36762) 2025-12-18 13:10:23 -05:00
plurals.rb DEV: Enable Style/RedundantParentheses rubocop rule (#40095) 2026-05-19 15:48:09 +02:00
server.ar.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.be.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.bg.yml I18N: Update translations (#42016) 2026-07-28 16:55:49 +02:00
server.bs_BA.yml I18N: Update translations (#42016) 2026-07-28 16:55:49 +02:00
server.ca.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.cs.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.da.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.de.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.el.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.en.yml FIX: Hide posts while media added by an edit awaits review 2026-08-04 17:11:08 +02:00
server.en_GB.yml I18N: Update translations (#40027) 2026-05-17 19:13:55 +02:00
server.es.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.et.yml I18N: Update translations (#42016) 2026-07-28 16:55:49 +02:00
server.fa_IR.yml I18N: Update translations (#42016) 2026-07-28 16:55:49 +02:00
server.fi.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.fr.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.gl.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.he.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.hr.yml I18N: Update translations (#42016) 2026-07-28 16:55:49 +02:00
server.hu.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.hy.yml I18N: Update translations (#42016) 2026-07-28 16:55:49 +02:00
server.id.yml I18N: Update translations (#42016) 2026-07-28 16:55:49 +02:00
server.it.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.ja.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.ko.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.lt.yml I18N: Update translations (#42016) 2026-07-28 16:55:49 +02:00
server.lv.yml I18N: Update translations (#41257) 2026-06-29 15:30:28 +02:00
server.nb_NO.yml I18N: Update translations (#42016) 2026-07-28 16:55:49 +02:00
server.nl.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.pl_PL.yml I18N: Update translations (#42308) 2026-08-04 15:58:41 +02:00
server.pt.yml I18N: Update translations (#42016) 2026-07-28 16:55:49 +02:00
server.pt_BR.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.ro.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.ru.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.sk.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.sl.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.sq.yml I18N: Update translations (#42016) 2026-07-28 16:55:49 +02:00
server.sr.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.sv.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.sw.yml I18N: Update translations (#42016) 2026-07-28 16:55:49 +02:00
server.te.yml I18N: Update translations (#42016) 2026-07-28 16:55:49 +02:00
server.th.yml I18N: Update translations (#42016) 2026-07-28 16:55:49 +02:00
server.tr_TR.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.ug.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.uk.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.ur.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.vi.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.zh_CN.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
server.zh_TW.yml I18N: Update translations (#42261) 2026-08-03 10:55:52 +02:00
transliterate.ar.yml
transliterate.bg.yml
transliterate.de.yml
transliterate.el.yml
transliterate.en.yml
transliterate.ru.yml
transliterate.ug.yml
transliterate.vi.yml