Придется еще раз полазить в коде
[MODDB] Advanced Posts Merging
-
Hellraiser
- phpBB 2.0.1
- Сообщения: 258
- Стаж: 21 год 5 месяцев
-
sigal
- phpBB Plus
- Сообщения: 442
- Стаж: 21 год 5 месяцев
- Откуда: КПРФ ;)
пардон, а что за жучек???Xpert писал(а):Готово. Жучок затесался в functions_post, вот что должно быть на самом деле:Код в архиве уже обновлен.Код: Выделить всё
if ( ($mode == 'editpost') && (isset($post_data['post_time'])) ) { $sql = 'UPDATE ' . POSTS_TABLE . ' SET post_time = ' . $post_data['post_time'] . ' WHERE post_id = ' . $post_id; $result = $db->sql_query($sql) or message_die(GENERAL_ERROR, 'Could not update last post time', '', __LINE__, __FILE__, $sql); $sql = 'UPDATE ' . FORUMS_TABLE . ' SET forum_last_post_id = ' . $post_id . ' WHERE forum_id = ' . $forum_id; $result = $db->sql_query($sql) or message_die(GENERAL_ERROR, 'Could not update last post id', '', __LINE__, __FILE__, $sql); }
мне тоже получается придется обновить!!!
-
Xpert
- phpBB Guru

- Сообщения: 5484
- Стаж: 21 год 7 месяцев
- Поблагодарили: 2 раза
sigal
Было
Было
$sql = 'UPDATE ' . FORUMS_TABLE . ' SET forum_last_post_id = ' . $post_data['post_time'] . ' WHERE forum_id = ' . $forum_id;
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
-
sigal
- phpBB Plus
- Сообщения: 442
- Стаж: 21 год 5 месяцев
- Откуда: КПРФ ;)
Xpert
я понимаю..
а на деле, что этот баг делал не так???
( просто хочется знать насколько он серьезен на деле, стоит ли обновлять мод из-за него)...
Добавлено спустя 2 минуты 21 секунду:
и еще: уже запутался с этими модами..
у меня их столько понаставлено на форум, что уже со счету сбиваюсь и не понимаю что есть что..
это что за мод: "склеивание сообщений направленных одним пользователем???"..
это то где я лимит склеивания в 3 часа выставлял???
не подскажите?
я понимаю..
а на деле, что этот баг делал не так???
( просто хочется знать насколько он серьезен на деле, стоит ли обновлять мод из-за него)...
Добавлено спустя 2 минуты 21 секунду:
и еще: уже запутался с этими модами..
у меня их столько понаставлено на форум, что уже со счету сбиваюсь и не понимаю что есть что..
это что за мод: "склеивание сообщений направленных одним пользователем???"..
это то где я лимит склеивания в 3 часа выставлял???
не подскажите?
-
Xpert
- phpBB Guru

- Сообщения: 5484
- Стаж: 21 год 7 месяцев
- Поблагодарили: 2 раза
-
Hellraiser
- phpBB 2.0.1
- Сообщения: 258
- Стаж: 21 год 5 месяцев
У меня возник следующий глюк этого с мода с модом "Глобальные обьявления".
Смотреть тут JPEG ~75 кб
C обычными, "НЕГЛОБАЛЬНЫМИ" все ок.
Завтра посмотрю код, может это моя повышеная криворукость сыграла роль.
Сегодня давно пора уже пиво пить
Смотреть тут JPEG ~75 кб
C обычными, "НЕГЛОБАЛЬНЫМИ" все ок.
Завтра посмотрю код, может это моя повышеная криворукость сыграла роль.
Сегодня давно пора уже пиво пить
-
ra
- phpBB 2.0.2
- Сообщения: 325
- Стаж: 21 год 5 месяцев
- Откуда: Беларусь
-
Hellraiser
- phpBB 2.0.1
- Сообщения: 258
- Стаж: 21 год 5 месяцев
Это появилось сразу после установки мода.
В если форуме сужествуют глобальные обьявления, и оно создано в данном разделе форума, то при "склеивании сообщения" оно переносится "наверх", но оно и отображается на "старом" месте что и показывает скриншот.
В других разделах форума, в котором это сообщение не создано, все с поднятием ок.
Если потом отвечает кто либо еще, (не происходит "склеивание") все возвращается в норму.
В если форуме сужествуют глобальные обьявления, и оно создано в данном разделе форума, то при "склеивании сообщения" оно переносится "наверх", но оно и отображается на "старом" месте что и показывает скриншот.
В других разделах форума, в котором это сообщение не создано, все с поднятием ок.
Если потом отвечает кто либо еще, (не происходит "склеивание") все возвращается в норму.
-
Xpert
- phpBB Guru

- Сообщения: 5484
- Стаж: 21 год 7 месяцев
- Поблагодарили: 2 раза
-
Hellraiser
- phpBB 2.0.1
- Сообщения: 258
- Стаж: 21 год 5 месяцев
Собственно мод
Обсуждение мода
Добавлено спустя 28 минут 8 секунд:
Дело в том что код изменяемый модом Advanced Posts Merging выглядел не так.
А немного иначе.
Мод "Глобальные обьявления уже внес в него посильную лепту
Всетаки это была моя криворукость.
Торопился и непосмотрев полностью заменил
Мод "Глобальные обьявления" добавил в код следующую строчку.
AND t.topic_type <> " . POST_GLOBAL_ANNOUNCE . "
А поскольку в замененном мною коде ее не было, то тема поднималась еще раз уже как обычная
Добавил, посмотрю, о результатах отпишу.
Пока все вроде заработало.
P.S. Всем улыбаЦЦа полчаса
Обсуждение мода
Добавлено спустя 28 минут 8 секунд:
Дело в том что код изменяемый модом Advanced Posts Merging выглядел не так.
Код: Выделить всё
//
// Grab all the basic data (all topics except announcements)
// for this forum
//
$sql = "SELECT t.*, u.username, u.user_id, u2.username as user2, u2.user_id as id2, p.post_username, p2.post_username AS post_username2, p2.post_time
FROM " . TOPICS_TABLE . " t, " . USERS_TABLE . " u, " . POSTS_TABLE . " p, " . POSTS_TABLE . " p2, " . USERS_TABLE . " u2
WHERE t.forum_id = $forum_id
AND t.topic_poster = u.user_id
AND p.post_id = t.topic_first_post_id
AND p2.post_id = t.topic_last_post_id
AND u2.user_id = p2.poster_id
AND t.topic_type <> " . POST_ANNOUNCE . "
$limit_topics_time
ORDER BY t.topic_type DESC, t.topic_last_post_id DESC
LIMIT $start, ".$board_config['topics_per_page'];
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not obtain topic information', '', __LINE__, __FILE__, $sql);
}Мод "Глобальные обьявления уже внес в него посильную лепту
Код: Выделить всё
//
// Grab all the basic data (all topics except announcements)
// for this forum
//
$sql = "SELECT t.*, u.username, u.user_id, u2.username as user2, u2.user_id as id2, p.post_username, p2.post_username AS post_username2, p2.post_time
FROM " . TOPICS_TABLE . " t, " . USERS_TABLE . " u, " . POSTS_TABLE . " p, " . POSTS_TABLE . " p2, " . USERS_TABLE . " u2
WHERE t.forum_id = $forum_id
AND t.topic_poster = u.user_id
AND p.post_id = t.topic_first_post_id
AND p2.post_id = t.topic_last_post_id
AND u2.user_id = p2.poster_id
AND t.topic_type <> " . POST_ANNOUNCE . "
-----AND t.topic_type <> " . POST_GLOBAL_ANNOUNCE . "---
$limit_topics_time
ORDER BY t.topic_type DESC, t.topic_last_post_id DESC
LIMIT $start, ".$board_config['topics_per_page'];
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not obtain topic information', '', __LINE__, __FILE__, $sql);
}Торопился и непосмотрев полностью заменил
Мод "Глобальные обьявления" добавил в код следующую строчку.
AND t.topic_type <> " . POST_GLOBAL_ANNOUNCE . "
А поскольку в замененном мною коде ее не было, то тема поднималась еще раз уже как обычная
Добавил, посмотрю, о результатах отпишу.
Пока все вроде заработало.
P.S. Всем улыбаЦЦа полчаса
-
ra
- phpBB 2.0.2
- Сообщения: 325
- Стаж: 21 год 5 месяцев
- Откуда: Беларусь
Вот не знаю баг или не баг. Но суть его вот в чём: интервал я ставлю 12 секунд. И сообщения соответсвенно должны склеиваться только в течении 12 секунд. НО! После склеивания сообщений, дата постинга первоначального сообщения обновляется. И уже от неё идёт отсчёт интервала. То есть если сообщения постить с переодичностью одно в 6 секунд, то интервал так и не подействует.
http://images.people.overclockers.ru/7331.jpg
http://images.people.overclockers.ru/7331.jpg
-
Xpert
- phpBB Guru

- Сообщения: 5484
- Стаж: 21 год 7 месяцев
- Поблагодарили: 2 раза
-
ra
- phpBB 2.0.2
- Сообщения: 325
- Стаж: 21 год 5 месяцев
- Откуда: Беларусь
Xpert

.
Добавлено спустя 1 минуту 9 секунд:
И оформлени мода тоже не мешало бы привести в более аккуратный вид.
Не забудьИнтервал поправлю
Почему нет? Отдельный интервал и всех делов. Я это сделал за час, а потом ещё за весь день пофиксил багиНасчет гостей надо подумать - идея конечно хорошая, но стоит ли это делать...
Добавлено спустя 1 минуту 9 секунд:
И оформлени мода тоже не мешало бы привести в более аккуратный вид.
-
ra
- phpBB 2.0.2
- Сообщения: 325
- Стаж: 21 год 5 месяцев
- Откуда: Беларусь
-
JozikLesnoi
Всем привет! У меня тут такая фишка странная выходит. Поставил себе этот мод, потестировал - работает без погрешностей. До этого поставил ещё два мода - ограничение количества смайликов (на 10 шт.) и символов в посте. Всё работаёт замечательно... Решил я ещё раз проверить Merge-мод кучкой периодически посылаемых смайликов (на всякий пожарный - вдруг какой-то из них не проявится, а будет только символ). Послал 5 штук - всё ок, послал ещё 4 шт. - опять всё ок, посылаю ещё 4 шт. и тут выходит сообщение, что у меня превышен лимит смайликов на 3 шт. (5+4+4), я удаляю эти лишние 3 смайлика (остаётся 1) и сообщение отсылается. И что я вижу - в сообщении остался только последний отосланный мною смайлик, а все прошлые стёрлись. Так же я проэксперементировал с текстами, пока общее количество символов посылаемого друг за другом и сливаемого в одно сообщение текста не превысило лимит и не вышло об этом предупреждение - в сообщении остался только последний отосланный кусок текста. Можно как-то от такой бяки избавиться не меняя конфигурации (лимитов) и не удаляя модов?

