TL0 그룹을 볼 수 없는 사용자는 공개 이벤트를 생성할 수 없습니다

또한 이벤트를 생성할 수 없는 사용자가 있습니다. 이 사용자는 "An error occured: Invalid allowed groups."라는 오류 메시지를 받습니다. 이벤트에서 허용된 그룹은 기본값인 trust_level_0이며, 해당 사용자는 사이트 설정 discourse post event allowed on groups에서 허용된 그룹에 포함되어 있습니다. 혹시 해결책이 있을까요?

2개의 좋아요

문제는 해당 사이트의 trust_level_0 그룹이 사용자가 해당 그룹의 멤버임에도 불구하고 사용자에 의해 _확인_될 수 없다는 점이라고 생각합니다. 이를 확인하기 위해, 해당 사이트의 trust_level_0 그룹 관리 페이지의 상호작용(Interaction) 탭을 확인해 주실 수 있을까요?

제 추측에 따르면, “이 그룹을 볼 수 있는 사람” 설정의 값은 “그룹 소유자 및 модератор(모더레이터)” 또는 "그룹 소유자"일 것입니다. 플러그인 코드는 trust_level_0 그룹이 항상 "모두(Everyone)"가 볼 수 있도록 설정되어 있다고 가정하는 것 같습니다.

이것이 맞다면, 현재 문제를 해결하기 위해 그룹의 가시성 설정을 기본값인 "모두(Everyone)"로 되돌릴 수 있습니다.

이것은 플러그인의 버그로 간주될 수 있습니다. 공개 이벤트가 생성될 때, 이벤트를 생성하는 데 사용되는 코드는 다음과 유사합니다:

[event start="2023-10-05 16:00" status="public" timezone="America/Vancouver" end="2023-10-05 17:00" allowedGroups="trust_level_0"]
[/event]

allowedGroups의 값은 공개 이벤트의 경우 자동으로 trust_level_0으로 설정된다는 점에 유의하세요. 사용자가 TL0 그룹의 멤버이면서 동시에 해당 그룹을 “볼” 수 없는 경우가 있을 수 있습니다. 이 경우, 이러한 사용자는 공개 이벤트를 생성할 수 없습니다.

참고로, 관련 코드는 여기 있습니다: discourse-calendar/lib/discourse_post_event/event_validator.rb at main · discourse/discourse-calendar · GitHub

3개의 좋아요

그게 문제였어요. 시몬 씨, 감사합니다!

3개의 좋아요

추적을 쉽게 하기 위해 당분간 버그 카테고리로 이동하겠습니다. TL0 그룹을 볼 수 없는 사용자가 공개 이벤트를 생성하는 것을 방지하는 것이 의도된 동작이라면, 이 문제는 Contribute > UX 카테고리로 다시 분류될 수 있습니다.

4개의 좋아요

정말 훌륭한 추론입니다…
컨텍트에 따라 일부 오류 메시지에 더 자세한 정보를 포함할 수 있도록 하면, 문제가 어디서 발생하는지 더 쉽게 파악할 수 있을 것입니다.

3개의 좋아요

참고로 저도 비슷한 오류 메시지를 받았는데, 영어 이외의 언어를 사용했기 때문이었습니다. 여기에서 새 주제를 시작했습니다: Calendar plugin needs group visibility