Да, я думаю, вы хорошо описываете проблему.
@christo, я считаю, что нам нужно рассмотреть несколько различных комбинаций:
Поскольку мы объединяем тему A (один пост) с темой B, следует рассмотреть следующие случаи:
-
- Пост темы A новее последнего поста темы B
- a. опция «Сохранять хронологию» выбрана
- b. опция «Сохранять хронологию» не выбрана
-
- Пост темы A старше последнего поста темы B
- c. опция «Сохранять хронологию» выбрана
- d. опция «Сохранять хронологию» не выбрана
По-моему, ожидаемое поведение заключается в том, что тема должна подниматься во всех случаях, кроме 2(c).
Во всех случаях, кроме 2(c), пост из темы A будет добавлен в конец темы B, поэтому, на мой взгляд, при слиянии дата поднятия должна устанавливаться на момент выполнения операции слияния.
Однако я не совсем уверен, что должно происходить в случае 2(d), если администратор позже выполнит «Сброс даты поднятия». Думаю, в таком случае дата поднятия должна обновляться до даты самого последнего созданного поста в теме (например, предпоследнего поста).
@martin, мы с тобой уже обсуждали логику дат поднятия в других сценариях — имеет ли вышеизложенный смысл для тебя?