Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

[MODDB] Advanced Posts Merging

Здесь авторы постили бета-версии своих модификаций для phpBB 2.0.x. Внимание! Не устанавливайте бета-версии модов на работающие форумы!
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Стаж: 20 лет 1 месяц
Поблагодарили: 2 раза

[MODDB] Advanced Posts Merging

Сообщение Xpert »

Наконец-то дошли руки до дописывания мода, склеивающего последние сообщения от одного пользователя в темах. Уже почти релиз, блох и жучков выловили еще достаточно давно, однако кое-что еще не ясно. Поэтому параллельно с обсуждением самого мода есть еще несколько вопросов по общей концепции.

Из-за необходимости отображения различного времени последнего поста в теме для просмотра форума и просмотра темы мод требует одно дополнительное числовое поле на каждое сообщение. Добавка порядка 20 байт, но оправдано ли это?

Скачать можно здесь.

Порядок действий такой - ставим мод, обновляем базу при помощи advanced_posts_merging_db_ins.php - и можно работать! Особенно интересует парсинг BBCode в том случае, когда пост заканчивается BB-кодом.

Ждем пожеланий и предложений.
Последний раз редактировалось Xpert 31.10.2004 10:51, всего редактировалось 2 раза.
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
ra
phpBB 2.0.2
Сообщения: 325
Стаж: 19 лет 11 месяцев
Откуда: Беларусь

Сообщение ra »

Xpert предложение насчёт русского языка: Может лучше сделать что-то типа

Код: Выделить всё

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; 
} 
(взято из Double post Merge)?
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Стаж: 20 лет 1 месяц
Поблагодарили: 2 раза

Сообщение Xpert »

R@
Можно в принципе, хотя это и не так критично. Кстати, мой вариант хоть и потребовал больше кода, но работает быстрее.

Код: Выделить всё

if ( $nm > 10 && $nm < 15 ) $st = 'секунд';
else if (($nm%10) == 1 ) $st = 'секунду';
else if (($nm%10) > 1 && ($nm%10) < 5 ) $st = 'секунды';
else $st = 'секунд';
Тут предусмотрены не все варианты...
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Jovani
phpBB 2.0.5
Сообщения: 477
Стаж: 19 лет 11 месяцев

Сообщение Jovani »

Xpert в этом моде, устранен баг со временем?
Имеется в виду добавление лишнего времени ...
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Стаж: 20 лет 1 месяц
Поблагодарили: 2 раза

Сообщение Xpert »

Jovani
Хм, никогда не слышал о таком баге, в чем он заключается? Если сможешь, протестируй на его отсутствие. Но вроде со временем багов никогла не было.
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Hellraiser
phpBB 2.0.1
Сообщения: 258
Стаж: 19 лет 11 месяцев

Сообщение Hellraiser »

Вопрос.
Проверку времени делается?
Если пишется допустим через одни сутки, тогда пост не скреивается?.
Я поставил подобный, но тут же возникло неудобство.
При обновлении FAQ и Обьявлений пользователи не видят "новые" сообщения, для них они остаются от "старой" даты.
Jovani
phpBB 2.0.5
Сообщения: 477
Стаж: 19 лет 11 месяцев

Сообщение Jovani »

Вот тут я пытался обсудить эту проблему, безуспешно ...
http://forum.ru-board.com/topic.cgi?for ... start=1640

Самое интересное, что этот баг может проявиться не сразу.
Что там происходит я даже не пытался разобраться, просто снес этот мод ...
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Стаж: 20 лет 1 месяц
Поблагодарили: 2 раза

Сообщение Xpert »

Hellraiser
Вот именно, что с помощью этого дополнительного поля обеспечивается и нормальное поднятие темы и нормальное сохранение времени поста. Однако, за все надо платить... В данном случае дата поста хранится в новом поле (назвал post_created). И именно его значение, а не post_time надо ставить как время поста во viewtopic - в post_time теперь хранится время последнего изменения поста. Поэтому может возникнуть недоразумение с хаками вроде "версия для печати", когда вы увидите, что к посту было что-то добавленно спустя два дня, но даты двух соседних постов различаются в минуту. :) Замена кода копеечная, но... В общем, жду ваших мнений.

А создание нового поста спустя энное время оставил пока чисто автоматически, думаешь, стоит убрать?

Jovani
Мод у того автора слегка кривоват, я бы сказал, хотя задумка неплохая. Насчет бага... Хм... не встречался. Сегодня вечером еще конечно потестирую. Но его по сути быть не должно.
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Аватара пользователя
Mr. Anderson
phpBB Guru
phpBB Guru
Сообщения: 7522
Стаж: 20 лет 1 месяц
Откуда: СССР
Благодарил (а): 5 раз
Поблагодарили: 105 раз

Сообщение Mr. Anderson »

Xpert
Моё мнение ты знаешь, но я его озвучу ещё раз.
Добавка порядка 20 байт, но оправдано ли это?
IMHO, это достаточно полезно и добавка не настолько критична в большинстве случаев ("небольшие" форумы).
Поэтому может возникнуть недоразумение с хаками
И "проблемы" с форумами, где много [постится] сообщений. IMHO, явственно запахло 2-мя вариантами. Один из них менее "совершенен", но...
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Стаж: 20 лет 1 месяц
Поблагодарили: 2 раза

Сообщение Xpert »

Есть ли еще какие-то предложения/пожелания или можно выпускать мод "в свет"? Что скажете по поводу флудконтроля при склейке - использовать значение для всего форума? Или нет?
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Аватара пользователя
Mr. Anderson
phpBB Guru
phpBB Guru
Сообщения: 7522
Стаж: 20 лет 1 месяц
Откуда: СССР
Благодарил (а): 5 раз
Поблагодарили: 105 раз

Сообщение Mr. Anderson »

Xpert
Технически проще использовать "стандартный" антифлудовый интервал, но, IMHO, сделать его отдельно настраиваемым - было бы лучше... особенно для форумов с 1 и более минутой антифлуда...
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Стаж: 20 лет 1 месяц
Поблагодарили: 2 раза

Сообщение Xpert »

Mr. Anderson
На самом деле при использовании мерга стандартный флудовый интервал вообще теряет всякий смысл...
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Аватара пользователя
Mr. Anderson
phpBB Guru
phpBB Guru
Сообщения: 7522
Стаж: 20 лет 1 месяц
Откуда: СССР
Благодарил (а): 5 раз
Поблагодарили: 105 раз

Сообщение Mr. Anderson »

Xpert
Вот и я о том же!!! Поэтому полезно сделать отдельный настраиваемый интервал...
ra
phpBB 2.0.2
Сообщения: 325
Стаж: 19 лет 11 месяцев
Откуда: Беларусь

Сообщение ra »

Xpert писал(а):Mr. Anderson
На самом деле при использовании мерга стандартный флудовый интервал вообще теряет всякий смысл...
Не cказалбы. На форуме(вы его все заете :)), где я был раньше админом кое-кто очень разозлился на админов и стал создавать кучи тем с просьбой забанить его. Вот тогда мне пришлось поставить флуд-контроль на 20 секунд.
Аватара пользователя
Mr. Anderson
phpBB Guru
phpBB Guru
Сообщения: 7522
Стаж: 20 лет 1 месяц
Откуда: СССР
Благодарил (а): 5 раз
Поблагодарили: 105 раз

Сообщение Mr. Anderson »

R@
И что произошло, пардон?

Вернуться в «Бета-версии модов для phpBB 2.0.x»