[MODDB] Advanced Posts Merging
-
- phpBB Guru
- Сообщения: 5484
- Стаж: 21 год 1 месяц
- Поблагодарили: 2 раза
[MODDB] Advanced Posts Merging
Наконец-то дошли руки до дописывания мода, склеивающего последние сообщения от одного пользователя в темах. Уже почти релиз, блох и жучков выловили еще достаточно давно, однако кое-что еще не ясно. Поэтому параллельно с обсуждением самого мода есть еще несколько вопросов по общей концепции.
Из-за необходимости отображения различного времени последнего поста в теме для просмотра форума и просмотра темы мод требует одно дополнительное числовое поле на каждое сообщение. Добавка порядка 20 байт, но оправдано ли это?
Скачать можно здесь.
Порядок действий такой - ставим мод, обновляем базу при помощи advanced_posts_merging_db_ins.php - и можно работать! Особенно интересует парсинг BBCode в том случае, когда пост заканчивается BB-кодом.
Ждем пожеланий и предложений.
Из-за необходимости отображения различного времени последнего поста в теме для просмотра форума и просмотра темы мод требует одно дополнительное числовое поле на каждое сообщение. Добавка порядка 20 байт, но оправдано ли это?
Скачать можно здесь.
Порядок действий такой - ставим мод, обновляем базу при помощи advanced_posts_merging_db_ins.php - и можно работать! Особенно интересует парсинг BBCode в том случае, когда пост заканчивается BB-кодом.
Ждем пожеланий и предложений.
Последний раз редактировалось Xpert 31.10.2004 10:51, всего редактировалось 2 раза.
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
-
- phpBB 2.0.2
- Сообщения: 325
- Стаж: 21 год
- Откуда: Беларусь
Xpert предложение насчёт русского языка: Может лучше сделать что-то типа
(взято из Double post Merge)?
Код: Выделить всё
function seconds_st($nm)
{
if ( $nm > 10 && $nm < 15 ) $st = 'секунд';
else if (($nm%10) == 1 ) $st = 'секунду';
else if (($nm%10) > 1 && ($nm%10) < 5 ) $st = 'секунды';
else $st = 'секунд';
return ' ' . $nm . ' ' . $st;
}
-
- phpBB Guru
- Сообщения: 5484
- Стаж: 21 год 1 месяц
- Поблагодарили: 2 раза
R@
Можно в принципе, хотя это и не так критично. Кстати, мой вариант хоть и потребовал больше кода, но работает быстрее.
Тут предусмотрены не все варианты...
Можно в принципе, хотя это и не так критично. Кстати, мой вариант хоть и потребовал больше кода, но работает быстрее.
Код: Выделить всё
if ( $nm > 10 && $nm < 15 ) $st = 'секунд';
else if (($nm%10) == 1 ) $st = 'секунду';
else if (($nm%10) > 1 && ($nm%10) < 5 ) $st = 'секунды';
else $st = 'секунд';
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
-
- phpBB Guru
- Сообщения: 5484
- Стаж: 21 год 1 месяц
- Поблагодарили: 2 раза
Jovani
Хм, никогда не слышал о таком баге, в чем он заключается? Если сможешь, протестируй на его отсутствие. Но вроде со временем багов никогла не было.
Хм, никогда не слышал о таком баге, в чем он заключается? Если сможешь, протестируй на его отсутствие. Но вроде со временем багов никогла не было.
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
-
- phpBB 2.0.1
- Сообщения: 258
- Стаж: 21 год
-
- phpBB 2.0.5
- Сообщения: 477
- Стаж: 21 год
Вот тут я пытался обсудить эту проблему, безуспешно ...
http://forum.ru-board.com/topic.cgi?for ... start=1640
Самое интересное, что этот баг может проявиться не сразу.
Что там происходит я даже не пытался разобраться, просто снес этот мод ...
http://forum.ru-board.com/topic.cgi?for ... start=1640
Самое интересное, что этот баг может проявиться не сразу.
Что там происходит я даже не пытался разобраться, просто снес этот мод ...
-
- phpBB Guru
- Сообщения: 5484
- Стаж: 21 год 1 месяц
- Поблагодарили: 2 раза
Hellraiser
Вот именно, что с помощью этого дополнительного поля обеспечивается и нормальное поднятие темы и нормальное сохранение времени поста. Однако, за все надо платить... В данном случае дата поста хранится в новом поле (назвал post_created). И именно его значение, а не post_time надо ставить как время поста во viewtopic - в post_time теперь хранится время последнего изменения поста. Поэтому может возникнуть недоразумение с хаками вроде "версия для печати", когда вы увидите, что к посту было что-то добавленно спустя два дня, но даты двух соседних постов различаются в минуту.
Замена кода копеечная, но... В общем, жду ваших мнений.
А создание нового поста спустя энное время оставил пока чисто автоматически, думаешь, стоит убрать?
Jovani
Мод у того автора слегка кривоват, я бы сказал, хотя задумка неплохая. Насчет бага... Хм... не встречался. Сегодня вечером еще конечно потестирую. Но его по сути быть не должно.
Вот именно, что с помощью этого дополнительного поля обеспечивается и нормальное поднятие темы и нормальное сохранение времени поста. Однако, за все надо платить... В данном случае дата поста хранится в новом поле (назвал post_created). И именно его значение, а не post_time надо ставить как время поста во viewtopic - в post_time теперь хранится время последнего изменения поста. Поэтому может возникнуть недоразумение с хаками вроде "версия для печати", когда вы увидите, что к посту было что-то добавленно спустя два дня, но даты двух соседних постов различаются в минуту.

А создание нового поста спустя энное время оставил пока чисто автоматически, думаешь, стоит убрать?
Jovani
Мод у того автора слегка кривоват, я бы сказал, хотя задумка неплохая. Насчет бага... Хм... не встречался. Сегодня вечером еще конечно потестирую. Но его по сути быть не должно.
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
-
- phpBB Guru
- Сообщения: 7522
- Стаж: 21 год 1 месяц
- Откуда: СССР
- Благодарил (а): 4 раза
- Поблагодарили: 94 раза
Xpert
Моё мнение ты знаешь, но я его озвучу ещё раз.
Моё мнение ты знаешь, но я его озвучу ещё раз.
IMHO, это достаточно полезно и добавка не настолько критична в большинстве случаев ("небольшие" форумы).Добавка порядка 20 байт, но оправдано ли это?
И "проблемы" с форумами, где много [постится] сообщений. IMHO, явственно запахло 2-мя вариантами. Один из них менее "совершенен", но...Поэтому может возникнуть недоразумение с хаками
Правила конференции (30.05.2011) | Общие ошибки новичков (07.11.2005) | Шаблон запроса | FAQ (phpBB 3.0.x) / Мини [FAQ] по phpBB 3.1.x
Последние и единственно актуальные на сегодня версии - 3.1.12 и 3.2.2!
Небесплатно накачаю ваш VPS/VDS/DS стероидами и заставлю ваши CMS летать =)
phpBB Guru blog | Тестируем phpBB 3.3 здесь! |
Последние и единственно актуальные на сегодня версии - 3.1.12 и 3.2.2!
Небесплатно накачаю ваш VPS/VDS/DS стероидами и заставлю ваши CMS летать =)
phpBB Guru blog | Тестируем phpBB 3.3 здесь! |
-
- phpBB Guru
- Сообщения: 5484
- Стаж: 21 год 1 месяц
- Поблагодарили: 2 раза
Есть ли еще какие-то предложения/пожелания или можно выпускать мод "в свет"? Что скажете по поводу флудконтроля при склейке - использовать значение для всего форума? Или нет?
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
-
- phpBB Guru
- Сообщения: 7522
- Стаж: 21 год 1 месяц
- Откуда: СССР
- Благодарил (а): 4 раза
- Поблагодарили: 94 раза
Xpert
Технически проще использовать "стандартный" антифлудовый интервал, но, IMHO, сделать его отдельно настраиваемым - было бы лучше... особенно для форумов с 1 и более минутой антифлуда...
Технически проще использовать "стандартный" антифлудовый интервал, но, IMHO, сделать его отдельно настраиваемым - было бы лучше... особенно для форумов с 1 и более минутой антифлуда...
Правила конференции (30.05.2011) | Общие ошибки новичков (07.11.2005) | Шаблон запроса | FAQ (phpBB 3.0.x) / Мини [FAQ] по phpBB 3.1.x
Последние и единственно актуальные на сегодня версии - 3.1.12 и 3.2.2!
Небесплатно накачаю ваш VPS/VDS/DS стероидами и заставлю ваши CMS летать =)
phpBB Guru blog | Тестируем phpBB 3.3 здесь! |
Последние и единственно актуальные на сегодня версии - 3.1.12 и 3.2.2!
Небесплатно накачаю ваш VPS/VDS/DS стероидами и заставлю ваши CMS летать =)
phpBB Guru blog | Тестируем phpBB 3.3 здесь! |
-
- phpBB Guru
- Сообщения: 5484
- Стаж: 21 год 1 месяц
- Поблагодарили: 2 раза
Mr. Anderson
На самом деле при использовании мерга стандартный флудовый интервал вообще теряет всякий смысл...
На самом деле при использовании мерга стандартный флудовый интервал вообще теряет всякий смысл...
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
-
- phpBB Guru
- Сообщения: 7522
- Стаж: 21 год 1 месяц
- Откуда: СССР
- Благодарил (а): 4 раза
- Поблагодарили: 94 раза
Xpert
Вот и я о том же!!! Поэтому полезно сделать отдельный настраиваемый интервал...
Вот и я о том же!!! Поэтому полезно сделать отдельный настраиваемый интервал...
Правила конференции (30.05.2011) | Общие ошибки новичков (07.11.2005) | Шаблон запроса | FAQ (phpBB 3.0.x) / Мини [FAQ] по phpBB 3.1.x
Последние и единственно актуальные на сегодня версии - 3.1.12 и 3.2.2!
Небесплатно накачаю ваш VPS/VDS/DS стероидами и заставлю ваши CMS летать =)
phpBB Guru blog | Тестируем phpBB 3.3 здесь! |
Последние и единственно актуальные на сегодня версии - 3.1.12 и 3.2.2!
Небесплатно накачаю ваш VPS/VDS/DS стероидами и заставлю ваши CMS летать =)
phpBB Guru blog | Тестируем phpBB 3.3 здесь! |
-
- phpBB 2.0.2
- Сообщения: 325
- Стаж: 21 год
- Откуда: Беларусь
Не cказалбы. На форуме(вы его все заетеXpert писал(а):Mr. Anderson
На самом деле при использовании мерга стандартный флудовый интервал вообще теряет всякий смысл...

-
- phpBB Guru
- Сообщения: 7522
- Стаж: 21 год 1 месяц
- Откуда: СССР
- Благодарил (а): 4 раза
- Поблагодарили: 94 раза
R@
И что произошло, пардон?
И что произошло, пардон?
Правила конференции (30.05.2011) | Общие ошибки новичков (07.11.2005) | Шаблон запроса | FAQ (phpBB 3.0.x) / Мини [FAQ] по phpBB 3.1.x
Последние и единственно актуальные на сегодня версии - 3.1.12 и 3.2.2!
Небесплатно накачаю ваш VPS/VDS/DS стероидами и заставлю ваши CMS летать =)
phpBB Guru blog | Тестируем phpBB 3.3 здесь! |
Последние и единственно актуальные на сегодня версии - 3.1.12 и 3.2.2!
Небесплатно накачаю ваш VPS/VDS/DS стероидами и заставлю ваши CMS летать =)
phpBB Guru blog | Тестируем phpBB 3.3 здесь! |