Сделать опцию «Ожидает» из меню действий темы (гаечный ключ)

Я хотел бы добавить дополнительную опцию в меню действий по теме (значок гаечного ключа). А именно: возможность изменить статус темы на «На рассмотрении» (назовём её, например, «Перевести в статус На рассмотрении»).Основной сценарий использования — когда тема содержит контент, вызывающий вопросы по той или иной причине, и требуется немного больше времени, чтобы решить, как лучше с ним поступить. Нажатие на гаечный ключ и перевод статуса в «На рассмотрении» кажется наиболее эффективным решением, но, конечно, я открыт для других предложений.

4 лайка

Я не совсем понимаю. Почему бы не установить таймер закладки на первом сообщении?

Его цель — скрыть некоторые темы/посты, как если бы они были перехвачены триггером отслеживаемых слов. Он хочет, чтобы посты не были видны пользователям, но попадали в очередь на проверку для дальнейшей обработки (например, для связи с пользователем по поводу поста и объяснения, почему он неуместен).

1 лайк

Погодите, речь идёт о постах, которые уже находятся в очереди на проверку? Или о том, чтобы принудительно поместить существующие посты в очередь на проверку?

Интересная идея…

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

@pfaffman Верно.

@codinghorror Что-то ещё, что я могу предложить?

Я думаю, это хорошая идея, хотя не представляю, насколько сложно это реализовать с технической точки зрения. Что ты думаешь, @sam?

Если ответов нет, думаю, это не составит большого труда… @eviltrout или @Roman, вероятно, точно знают, насколько это будет сложно.

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

1 лайк

Думаю, любой пост должен сработать, тема — это немного особый случай. Просто представьте, что в этом посте было нецензурное слово. Измените его и отправьте в очередь на модерацию?

1 лайк

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

Не уверен, насколько это востребовано? Судя по сообщению автора темы (OP), это актуально.

Джейн создаёт тему: «Мне нравится есть зефир»
Джим отвечает: «Разве вы не знаете… этот сайт посвящён „не зефиру“»

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

Нажимаем кнопку… и возвращаем тему Джейн в очередь на одобрение. Разберёмся с этим завтра.


Проблема в том… как нам с этим справиться? Что происходит с временными метками при повторной публикации и так далее. Очередь модерации не поддерживает обработку нескольких постов единым блоком.

Я бы сказал, что текущий «поддерживаемый способ» решения этой проблемы таков:

  • «Сделать скрытым»
  • Отметить для внимания модератора, чтобы никто не забыл об этом

Недостаток в том, что люди всё ещё могут увидеть пост, если у них есть ссылка.

Другой вариант: «удалить», затем пометить удалённый контент (не уверен, поддерживает ли очередь модерации это, но, возможно, разумно разрешить модераторам помечать удалённый контент).

2 лайка

Да, большая разница в том, что постановка темы в очередь до её создания гораздо проще, чем после.

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

1 лайк

@ked, это работает для тебя? Ты пробовал вышеуказанное? :backhand_index_pointing_up:

Да, я пробовал и понимаю. Это не идеально, но, полагаю, приемлемо, учитывая другие ограничения и связанные проблемы, обсуждаемые выше.

Мой основной сценарий использования — когда создаётся и отображается тема, которую я бы предпочёл отловить через функцию «Следящие слова». Чаще всего я замечаю их в течение, скажем, часа, и у них ещё часто нет первого ответа. Приемлемая идея могла бы заключаться в том, чтобы в меню гаечного ключа для тем, у которых ещё нет первого ответа, была доступна опция «Перевести в статус ожидающих»? Просто мысль.

В любом случае, если ничего нового по этому вопросу не появится, я буду использовать процедуру «Сделать невидимой».

Спасибо за внимание к этому вопросу.

3 лайка

Извините за задержку. Я довольно много об этом думал.

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

Реализация этого для темы без ответов или когда речь не идёт о первом посте потребует небольших или умеренных усилий. Вся логика постановки поста в очередь находится в методе NewPostManager#enqueue, поэтому нам нужно будет вынести её в отдельный класс и переиспользовать. Мы всегда добавляем ожидающие одобрения посты в конец темы после утверждения, поэтому добавление их в определённую позицию потребует немного больше работы.

Возврат темы с ответами в статус «на рассмотрении» с использованием этого подхода должен быть более сложным. Сериализация её в объект reviewable кажется излишней. Возможно, мы могли бы временно скрыть тему? Например, мы уже делаем это, когда пост помечается как спам доверенным пользователем.

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

2 лайка

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

1 лайк

Спасибо @Roman

2 лайка

Я думаю, нам стоит пересмотреть формулировку здесь:

Очень непонятно, что выбрать.

Может быть, заменить слова «Пометить пост» на «Добавить в очередь на проверку», возможно, с другим значком.

Наличие двух кнопок с названием «Пометить пост» очень запутывает.

4 лайка