Данные с форума, где с этой проблемой сталкиваются постоянно.
Я администрирую небольшой форум с разделом объявлений. Во всех категориях — «продам», «куплю» и «обмен» — насчитывается 12 343 темы. Из них 5 669 (46%) не получили ни одного ответа. Лишь 2 609 (21%) получили ответ в первые 24 часа.
Думаю, это подтверждает более узкую версию, предложенную @Ethsim2. Два условия в функции can_delete_own_topic? проверяют разные вещи, и только одно из них проверяет то, что нас действительно интересует. posts_count <= 1 спрашивает, существует ли диалог. Таймер на 24 часа ничего не спрашивает: к моменту его истечения 79% наших объявлений не имеют ответов, а 46% так и останутся без ответов спустя годы. Практический эффект этого таймера — лишать авторов права на свои темы, на которые никто никогда не отвечал.
Типичный случай — объявление, в котором товар уже продан. Автор хочет его убрать. Он может отредактировать заголовок на «Продано» или пометить тему и ждать модератора. Наши модераторы делают второе вручную, что создаёт лишнюю работу для обеих сторон.
Одна странность, редкая, но любопытная. На прошлой неделе модератор ответил на объявление, попросив автора уточнить заголовок. Этот ответ увеличил posts_count до 2, и автор навсегда потерял возможность снять своё объявление, вынуждённый просить об этом сотрудников. Из 6 674 тем в разделе объявлений с ответами лишь в 26 есть ответы только от сотрудников, так что это крайний случай, а не реальная проблема, но всё же странно, что замечание модератора лишает автора его права.