Moin
11월 11, 2024, 2:29오후
1
실수로 포럼의 기본 언어를 영어로 꽤 오랫동안 설정해 두었다가, 기본 그룹 이름이 바뀌면서 카테고리 권한과 “everyone” 그룹과 관련된 몇 가지 기능을 발견하게 되었습니다.
가장 먼저 눈에 띈 차이는 하단의 배너였습니다.
그다음, 독일어 "jeder"는
/g/jeder로 링크되어 있지만(해당 그룹이 없어 작동하지 않음), 영어 "everyone"은 링크가 아님을 확인했습니다.
세 번째로, 영어로 “moderators” 같은 다른 그룹을 추가하면 모든 권한이 기본적으로 추가되고 이를 제거할 수 없으나, "everyone"은 제거할 수 있습니다. 독일어에서는 이 추가 도움말이 작동하지 않으며, "everyone"이 제거를 허용하는 상황에서도 권한을 쉽게 제거할 수 있습니다.
스태프 작업 로그도 다소 혼란스럽습니다. 그룹을 변경한 것처럼 보이지만 실제로는 변경하지 않았고, 단순히 “저장” 버튼을 클릭했을 뿐인데, 로그에 “everyone” 그룹이 두 언어로 표시되기 때문입니다:
8개의 좋아요
I’m 95% sure (meaning I haven’t tested ) this will be fixed by
committed 10:29AM - 13 Jan 25 UTC
The "Tag Groups Form" component was using group names to handle
permissions. Thi… s works just fine when the default locale is "English"
but breaks as soon as it's changed to a different locale.
The fix is to use the group id's for handling the permissions instead of
the group name.
Reported in https://meta.discourse.org/t/221849
3개의 좋아요
This topic was automatically closed after 20 hours. New replies are no longer allowed.
Re-opening because, of course, I was wrong
Thanks @Moin for doing the testing. I’ll fix it.
2개의 좋아요
Moin
12월 11, 2025, 11:02오후
11
이제 pr-welcome 태그가 붙었으니, 제가 수정이 제대로 작동하지 않는다고 zogstrip에게 알렸을 때 보낸 내용을 공유하는 것이 좋을 것 같습니다.
“everyone” 링크처럼 “jeder” 링크가 억제되지 않는 문제의 원인은 "everyone"이 체크 로직에 하드코딩되어 있다는 점이라고 생각합니다:
마찬가지로, 아래에 표시되는 경고와 체크박스 비활성화에도 "everyone"이 하드코딩되어 있습니다:
가장 안전한 방법은 ID를 확인하는 것이라고 생각합니다. 포럼의 기본 언어에 기반한 everyone 그룹의 이름을 사용하면, 포럼 언어가 변경된 후 DBConsistency 작업이 실행될 때 이름이 일치하지 않는 문제가 발생할 수 있습니다.
1개의 좋아요
Moin
12월 13, 2025, 9:56오후
14
부분적으로
배너, 비활성화된 체크박스, 그리고 everyone 그룹의 링크는 수정되었습니다.
하지만 스태프 작업 로그는 여전히 권한이 변경된 것처럼 작동합니다.
로케일이 독일어인 경우, 그룹 이름은 "jeder"가 됩니다. 이때 아무것도 변경하지 않고 카테고리를 저장하면 스태프 작업 로그에 다음 내용이 표시됩니다.
로케일이 영어이고 그룹 이름이 "everyone"인 경우, 카테고리를 저장해도 권한 변경이 기록되지 않습니다.
이전 저장 시점의 이름이 달랐기 때문이 아닙니다. “저장” 버튼을 여러 번 눌러도, 매번 로그에 권한이 "everyone"에서 "jeder"로 변경되었다고 표시됩니다.
이 주제는 14시간 후 자동으로 닫혔습니다. 더 이상 새 답글을 작성할 수 없습니다.