Неанглийские автоматические группы не сохраняются при применении ограничений видимости/доступности к группам тегов

Если я установлю опцию: «Ключевые слова видны всем, но использовать их могут только следующие группы».
…выберу группы → сохраню → затем перезагружу страницу или позже вернусь в настройки, то две выбранные группы больше не отображаются. Однако функция работает: только эти две группы могут впоследствии назначать теги из группы.

Это может вызвать путаницу у нескольких администраторов. Так и должно быть? :slight_smile:

Заранее спасибо за обратную связь :slight_smile:

Я только что протестировал это в версии Discourse 2.9.0.beta3, однако мне не удалось воспроизвести проблему.

В частности, я создал группу тегов с настройками, аналогичными описанным вами, а именно: «Теги видны всем, но использовать их могут только следующие группы», затем выбрал две группы и нажал «Сохранить».

После перезагрузки обе группы были видны, и при нажатии на меню «Теги видны всем…» можно было снять выделение с обеих групп.

Я использовал Chrome версии 99.0.4844.84 для доступа к Discourse, а также протестировал ситуацию с другим администратором на сайте, используя Firefox 91.7.1esr, но всё равно не смог воспроизвести проблему.

Надеюсь, это поможет пролить свет на эту ошибку.

2 лайка

После дополнительных тестов я обнаружил, что если конкретная группа не видна модератору, редактирующему настройки группы тегов, то эта группа не будет отображаться на странице редактирования группы тегов.

Подробнее о процессе тестирования, который я провёл:

«Секретная» группа, видимая только владельцу группы.

Настройки группы тегов, как их видит владелец «секретной» группы, после добавления группы «секретная».

Вид от другого модератора, не входящего в «секретную» группу. Группа «секретная» не отображается.

Сказав всё это, я считаю, что система работает как задумано, поскольку рассматриваемая группа в любом случае была бы скрыта от этого модератора. Однако этот модератор не сможет добавить эту группу в настройки группы тегов, так как он вообще не видит ничего, связанного с этой группой.

Возможно, это не совсем та ситуация, которая была описана изначально, поскольку, судя по всему, две группы, добавленные в настройки группы тегов, были видны всем (или хотя бы модераторам, редактирующим настройки). Но это был единственный способ получить результаты, похожие на описанные.

1 лайк

Спасибо за ваш ответ и за попытку воспроизвести проблему.

Чтобы лучше понять проблему, я прикрепил здесь скриншоты. Вы можете увидеть, что я предоставил группам «Administrator» и «Moderator» право использовать эти теги.

После закрытия и повторного открытия страницы эти две группы больше не выбраны, что означало бы, что у этих двух «ролей» больше нет исключительного права использовать теги в группе тегов. Однако эти две группы по-прежнему имеют право использовать теги. Таким образом, проблема заключается в том, что настройки для этих двух ролей не сохраняются.

И

Надеюсь, теперь проблема стала понятнее.

Извините, небольшое дополнение: поскольку здесь по ошибке в скриншоте выше показана не та группа, речь, конечно же, идет об этой группе:

Настройки группы тегов:

Неважно, что я выбираю в настройке «Теги видны только в следующих группах» — они сразу исчезают оттуда после перезагрузки страницы, перехода на другую страницу и возврата или после выхода из системы и повторного входа.

Если я не возвращаюсь к настройкам группы тегов, то на странице тегов вижу ограниченный тег в своей группе. Однако это никак не ограничивает его видимость.

Здесь я могу ограничить видимость одного тега уровнем TL2, но пользователи с более низким уровнем TL всё равно его видят.

1 лайк

В данный момент мне не удаётся воспроизвести эту проблему. Возможно, проверьте видимость и другие настройки групп, для которых вы пытаетесь ограничить доступ. :thinking:

Не знаю, о том ли говорит Jakke, но у меня в dev-версии (последней) наблюдается странное поведение:

Пока что после сохранения проблем нет.

При перезагрузке имя группы не отображается

1 лайк

Я пытался воспроизвести это, но не смог. Я только что сделал свежий pull последней коммиты. :thinking:

Создать новую группу тегов:

Сохранено, и список отображает группу тегов, как ожидалось, даже после перезагрузки страницы.

При перезагрузке этой страницы я получаю тот же ожидаемый результат и могу снова редактировать эту группу тегов:

1 лайк

И что это за настройки? Я пытаюсь ограничить видимость с помощью уровня доверия. Но я не понимаю, почему даже это может играть какую-либо роль. Это группа тегов, и нет никаких других настроек, которые могли бы повлиять.

Так что вы можете ограничить видимость тега? Мне не так важно, что исчезла эта настройка — есть несколько похожих случаев, и я почти уверен, что это связано с iPadOS и/или DiscourseHub.

Я обновлял систему примерно 12 часов назад и, конечно, могу назвать точную сборку, но эта проблема существует уже довольно давно. Я должен был сообщить об этом раньше, но забыл, а теперь мне снова понадобилась эта функция.

Мне следовало отключить все компоненты перед этим сообщением, но это довольно затратно по времени на фоне остальных дел. Однако, если вы действительно можете ограничивать видимость, мне придётся это сделать (хотя группы тегов иногда всё же ломают историю :smirking_face:).

Да

Я ограничил эту группу тегов для сотрудников:

Попробуйте найти тег в этой группе тегов у пользователя, который не является сотрудником:

Черт. Когда я разрешаю TL2, мой тестовый пользователь TL1 видит тег, но анонимы — нет.

Спасибо. Мне нужно копнуть чуть глубже.

Это начинает становиться интересным. Неважно, пробовал ли я win-laptop, несколько браузеров, iPad/iPhone… ничего не вышло.

Но если использовать созданную вручную группу как ограничивающую, всё остаётся на месте. Немного покопавшись, я выяснил, что одна проблема связана с автоматическими группами, которые переводятся. Например, trustlevel_x против финского luottamustaso_x. Discourse просто не принимает переведённые варианты. По крайней мере, что касается групп тегов.

И всё же мои пользователи с уровнем TL1 видят теги, независимо от того, какую ограничивающую группу я использую.

Редактирование:

Я не могу изменить default locale с финского на английский (США). Это, видимо, сделано намеренно. Поэтому проверить, как это работает при использовании локалей по умолчанию, для меня практически невозможно.

Я тоже об этом подумал. В этой теме Non-english automatic groups don't stick when applied to Tag Group visibility/usability restrictions используется немецкая локаль.

2 лайка

Просто интересно, есть ли какой-то выход из ситуации, чтобы автоматически использовать переведённые названия уровней доверия? Конечно, я могу и уже сделал это для другой группы, назначив всех участников определённого уровня доверия в неё… но это немного скучное решение, особенно когда у нас уже есть группы для уровней доверия.

Я объединил эти два отчёта для лучшего отслеживания проблемы.

Кажется, мне удалось воспроизвести:

  • Установите default locale в значение ‘suomi’
  • Перейдите на страницу /sidekiq/scheduler и выполните Jobs::EnsureDbConsistency (чтобы убедиться, что имена групп обновлены)
  • Создайте группу тегов
  • Установите аналог ‘Теги видны только следующим группам’ в luottamustaso_2
  • Сохраните
  • Обновите страницу

  • Поле пустое
  • Ограничения для тегов, похоже, не применяются

Очевидно, что мой тестовый сайт на финском языке, поэтому я довольно уверен в результате, но не на 100%, так как не владею финским, и там может возникнуть небольшая путаница. :slight_smile: Если кто-то другой сможет воспроизвести проблему, это тоже было бы отлично.

3 лайка

Я думаю, что ваши шаги верны. (До этого мой язык по умолчанию был немецким, поэтому я пропустил шаги 1 и 2). Вы можете добавить шаг для смены языка пользователя на английский.

Также можно использовать опцию «Теги видны всем, но использовать их могут только следующие группы».

Хотя они не отображаются в настройках групп тегов, мой пользователь tl1test больше не может их использовать. Это также упоминалось в первом сообщении.

1 лайк

Вот этот момент вызвал у меня сомнения. У меня после установки настройки «видимо только для финских TL2» пользователь TL1 всё ещё мог их видеть.

2 лайка

Тег исчез после ограничения видимости.


1 лайк