Привет.Время от времени в списке тем форума показываются старые вещи под видом обновлённых.
Например, на форуме "Маршрутизаторы CISCO и др. оборудование" сказанно что сообщение "Cisco 1841 и IPTV Ростелеком" было обновлено 10-Фев-20 13:59, а на самом деле самый свежий ответ там датирован "08:13 , 26-Июн-19".
Скриншот: https://imgur.com/a/42WIaGQ
Новых сообщений в таких ветках нет, так как они удалены модератором. Спамеры отправляют сообщения, их оперативно удаляет бот или модератор, но ветка остаётся формально обновлённой и её позиция в индексе меняется.
> Новых сообщений в таких ветках нет, так как они удалены модератором. Спамеры
> отправляют сообщения, их оперативно удаляет бот или модератор, но ветка остаётся
> формально обновлённой и её позиция в индексе меняется.Ясно, спасибо за ответ.
С моей колокольни, ожидаемым поведением был бы откат к старой дате (если она почему-то хранится отдельно а не определяется динамически на основе даты последнего валидного сообщения). Но, я готов допустить что такой расклад таит какие-то свои неочевидные заморочки, которыем мне не приходят в голову. В любом случае, ни на каких исправлениях я не настаиваю, ваш форум замечателен в том виде в котором он есть.
Список веток хранится в отсортированном виде, чтобы при любом обращении не сортировать каждый раз. При обновлении ветка перемещается вверх списка и дата заменяется. С возвращением после удаления слишком много неочевидных проблем, напрмер, просто откатить на прошлое состояние после удаление нельзя, так как нужно отслеживать то, что было удалено именно самое последнее сообщение или сразу несколько последних сообщений.
> С возвращением после удаления слишком много неочевидных проблем, напрмер,
> просто откатить на прошлое состояние после удаление нельзя, так как нужно
> отслеживать то, что было удалено именно самое последнее сообщение или сразу
> несколько последних сообщений.Посмотреть дату самого последнего неудалённого сообщения, этим значением обновить список веток, не?
Пример: Если удалено последнее сообщение, то ветка в списке будет помечена датой самого последнего сообщения из выживших.
Пример: Если удалено не последнее сообщение, то ничего не изменится.
Пример: Если удалено несколько сообшений, обновить список веток после каждого удаления.
Наверное, нечто похожее происходит и при добавлении сообщения...
Логично. Будет время попробую доработать код удаления.