Кнопка «Нравится» не работает в архивированных темах

Заголовок говорит сам за себя. Когда я нажимаю кнопку «Нравится», появляется анимация, но ничего больше.
Видео:


В /logs я ничего не вижу, связанного с этим, но вот ошибка из консоли.

Если вы попробуете в безопасном режиме, работает ли лайк постов?

1 лайк

Я вообще не вижу кнопку «Нравится».

Вы можете воспроизвести это в Meta? Какие у вас установлены плагины? Вы используете последнюю версию?

Я работаю на последней сборке, и вот список моих плагинов:

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

Возможно, вы ранее ставили и снимали лайк? Значит, это «старый» пост, и вам больше не разрешается менять своё решение?

Может быть, это побочный эффект проблем с редактированием постов?

1 лайк

Пост был довольно новым, когда я сделал видео, потому что я попытался поставить ему лайк. Я не снял лайк, а таймер снятия лайка на моём сайте составляет 48 часов.

Не могли бы вы попробовать воспроизвести это с тестового аккаунта? Возможно, дело в постах модераторов?

Превращаю это в пост модератора… (теперь у него цветной статус сотрудника, вы можете поставить лайк)

Как я вижу в видео, вы заархивировали тему, думаю, это и стало причиной.

1 лайк

Ох… да… в архивированных темах есть этот удивительный баг… точно.

2 лайка

Да, переместил это обратно в баг.

pr-welcome за добавление всплывающего окна (когда вы пытаетесь поставить лайк)

Эта тема заархивирована и больше не может быть отмечена лайком

1 лайк

Я бы хотел, мне просто нужно немного освежить знания по Ruby. Как создать всплывающие окна?

У нас есть для этого внутренний класс. Рекомендую посмотреть на другое всплывающее предупреждение в интерфейсе (например, «лимит лайков превышен»). Всё это, кстати, реализуется на JavaScript.

1 лайк

Я знаю JS, посмотрю и обновлю вас сегодня вечером. Спасибо :+1:

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

1 лайк

Странно, как это у меня осталось после нескольких обновлений страницы?

Вы пробовали как администратор? Как обычный пользователь? Возможно, дело в типе учётной записи. Я помню, что видел это в другой теме на нашем внутреннем экземпляре.

Также… это не первый пост?

2 лайка

Предыдущий вход был выполнен с учетной записи администратора, а сейчас я попробовал с учетной записью tl3, не являющейся учетной записью сотрудника.
Редактирование: Я проверил все типы учетных записей, и, похоже, модальное окно работает у меня.

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

Я также изменю текст в ядре Discourse, так как в текущем виде этот текст не имеет смысла.

1 лайк

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

В консоли появляется следующая ошибка:

Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'canToggle')

1 лайк