오늘 아침, 게시물에서 변경 사항을 적용하는 동안 여러 이벤트를 비공개 처리해야 했습니다. 그런데 일반 사용자에게는 이벤트가 비공개로 표시되던 반면, 같은 사용자에게는 예정된 이벤트 달력을 통해 이벤트가 표시되고 접근 가능한 상황이었습니다.
이것은 몇 주 전에 최신 업데이트를 적용한 셀프호스팅 인스턴스입니다.
1개의 좋아요
이것은 완전히 예상치 못한 일은 아닙니다(혼란스러울 수 있다는 점은 이해합니다). 토픽이 목록에서 제외되어도, 일반 사용자가 직접 URL을 방문하면 여전히 콘텐츠에 접근할 수 있습니다… 목록 제외는 단순히 해당 토픽을 토픽 목록에서 제거하는 것뿐입니다. 토픽이 목록에서 제외될 때 이벤트도 함께 목록에서 제외되도록 추가 로직을 구현해야 합니다.
그동안, 편집 중 일반 사용자에게 토픽과 이벤트를 숨기고 싶다면, 일반 사용자가 접근할 수 없는 카테고리로 이동시키면 됩니다.
1개의 좋아요
Moin
6월 25, 2026, 2:47오후
3
이 문제가 Events from unlisted topics show on calendar 에서 다시 보고된 것 같습니다.
수정 사항 링크도 여기에 함께 첨부합니다:
main ← fix-unlisted-topic-events-on-calendar
merged 03:07PM - 25 Jun 26 UTC
Previously, the calendar — along with the `/upcoming-events` page and the `.ics`… subscription feed — listed events from unlisted topics to everyone, because `EventFinder` scoped events with `Topic.listable_topics`, which only excludes private messages and never filters out unlisted (`visible: false`) topics. Unlisting a topic (manually, or as a side effect of spam flagging or a moderator action) therefore removed it from the topic list but left its event on the calendar for all users.
This change makes `EventFinder`'s `listable_topics` apply the `visible` scope unless the user can see unlisted topics (`Guardian#can_see_unlisted_topics?`), mirroring how `TopicQuery` filters topic listings: staff and TL4 users still see events from unlisted topics, while everyone else no longer does.
Meta: https://meta.discourse.org/t/events-from-unlisted-topics-show-on-calendar/406032
2개의 좋아요