Уважаемые пользователи, по техническим причинам загрузка файлов временно недоступна. Приносим извинения за временные неудобства.

Advanced Posts Merging

Все моды, созданные нашим сообществом для phpBB 2.0.x, анонсированы тут.
sigal
phpBB Plus
Сообщения: 442
Стаж: 22 года 4 месяца
Откуда: КПРФ ;)

Сообщение sigal »

мод логов это что? какая функция?
melnikaite
phpBB 1.4.2
Сообщения: 52
Стаж: 21 год 3 месяца

Сообщение melnikaite »

в админке видны все дейслвия модеров и админов - удаление топиков, закрытие и т.д.
melnikaite
phpBB 1.4.2
Сообщения: 52
Стаж: 21 год 3 месяца

Сообщение melnikaite »

3 раза ставил
ошибок не выдает и не склеивает ни под админом ни под юзером
время 1 час и 5 секунд
все поставили, а я не могу...
можно как-то упростить установку?
Последний раз редактировалось melnikaite 25.07.2005 22:26, всего редактировалось 1 раз.
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Стаж: 22 года 7 месяцев
Поблагодарили: 2 раза

Сообщение Xpert »

Вышлите измененные файлы. Почта в профиле.
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
hack
phpBB 1.4.0
Сообщения: 37
Стаж: 21 год 2 месяца

Сообщение hack »

Parse error: parse error, unexpected T_VARIABLE in /home/h/hack-phoenix.h15.ru/WWW/phpBB2/admin/admin_board.php on line 335

Вот такая ошибочка после этого мода в админке... В левом фрейме. Вроде файл перерыл, похоже, ошибка в другом, а где искать? Не понимаю...
Аватара пользователя
Гога
phpBB 2.0.0
Сообщения: 220
Стаж: 21 год 5 месяцев
Откуда: Архангельск

Сообщение Гога »

Я прикрутил No Flood Control For Mods And Admins:

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

--- functions_post.php.1        2005-08-12 13:09:13.000000000 +0400
+++ functions_post.php  2005-08-12 13:08:41.000000000 +0400
@@ -36,11 +36,18 @@
 function submit_merged_post($post_id, $forum_id, $subject, $message, &$return_message, &$return_meta)
 {
        global $board_config, $db, $lang, $phpEx, $phpbb_root_path;
+       global $userdata;

        include($phpbb_root_path . 'language/lang_' . $board_config['default_lang'] . '/lang_merge.' . $phpEx);
        include($phpbb_root_path . 'includes/functions_search.'.$phpEx);

        $current_time = time();
+       //
+       // MOD: No Flood Control For Mods And Admins by Berend Dekens
+       // Retreive authentication info to determine if this user has moderator status
+       //
+       $is_auth = auth(AUTH_ALL, $forum_id, $userdata);
+       $is_mod = $is_auth['auth_mod'];

        // Check message
        if ( empty($message) )
@@ -57,7 +64,7 @@
        $last_post_data = $db->sql_fetchrow($result);

        // Flood control
-       if ( ($current_time - intval($last_post_data['post_time'])) < intval($board_config['merge_flood_interval']) )
+       if (( ($current_time - intval($last_post_data['post_time'])) < intval($board_config['merge_flood_interval']) ) && (!$is_mod))
        {
                message_die(GENERAL_MESSAGE, $lang['Flood_Error']);
        }
@@ -316,8 +323,14 @@
        include($phpbb_root_path . 'includes/functions_search.'.$phpEx);

        $current_time = time();
+       //
+       // MOD: No Flood Control For Mods And Admins by Berend Dekens
+       // Retreive authentication info to determine if this user has moderator status
+       //
+       $is_auth = auth(AUTH_ALL, $forum_id, $userdata);
+       $is_mod = $is_auth['auth_mod'];

-       if ($mode == 'newtopic' || $mode == 'reply' || $mode == 'editpost')
+       if (($mode == 'newtopic' || $mode == 'reply' || $mode == 'editpost') && (!$is_mod))
        {
                //
                // Flood control
Гугл рулит. Я люблю ЛОР.
Интересно, они пришли с миром или им таки нужен наш моск?
Знания принадлежат всему человечеству.
Аватара пользователя
Гога
phpBB 2.0.0
Сообщения: 220
Стаж: 21 год 5 месяцев
Откуда: Архангельск

Сообщение Гога »

Есть вопрос. Advanced Posts Merging + File Attachment Mod.

Программа максимум: не терять вложения при слиянии.
Программа минимум: не сливать сообщение, если в нём есть вложение.

Надо где-то в этом месте проверить, есть ли вложение. Как проверить?

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

			$merge = false;
			$time2merge = intval($board_config['time_to_merge']) * 3600;

			if ( ($mode == 'reply') && ($userdata['user_id'] != ANONYMOUS) )
			{
Добавлено спустя 56 минут 28 секунд:

В общем, кое-что придумал. Не объединять с предыдущим постом, если в нём есть вложение. Для этого запросить ещё и поле post_attachment из таблицы постов и сравнить его с нулём.

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

--- posting.php (revision 85)
+++ posting.php (working copy)
@@ -602,15 +602,16 @@

                        if ( ($mode == 'reply') && ($userdata['user_id'] != ANONYMOUS) )
                        {
-                               $sql = "SELECT post_id, poster_id, post_created FROM " . POSTS_TABLE . " WHERE topic_id = $topic_id ORDER  BY post_time DESC LIMIT 1";
+                               $sql = "SELECT post_id, poster_id, post_created, post_attachment FROM " . POSTS_TABLE . " WHERE topic_id = $topic_id ORDER  BY post_time DESC LIMIT 1";
                                $result = $db->sql_query($sql) or message_die(GENERAL_ERROR, 'Could not obtain last post information', '', __LINE__, __FILE__, $sql);

                                $last_post_data = $db->sql_fetchrow($result);
                                $last_post_id = $last_post_data['post_id'];
                                $last_poster = $last_post_data['poster_id'];
                                $last_post_created = $last_post_data['post_created'];
+                               $last_post_attachment = $last_post_data['post_attachment'];

-                               if ( ($last_poster == $userdata['user_id']) && ((time() - $last_post_created) < $time2merge) )
+                               if ( ($last_poster == $userdata['user_id']) && ((time() - $last_post_created) < $time2merge) && ($last_post_attachment == 0) )
                                {
                                        $merge = true;
                                }
Добавлено спустя 8 минут 5 секунд:

Хех! А это программа максимум :) (addon из Advanced Posts Merging)

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

#
#-----[ OPEN ]------------------------------------------
#
posting.php

#
#-----[ FIND ]------------------------------------------
#
		$attachment_mod['posting']->insert_attachment($post_id);

#
#-----[ REPLACE WITH ]------------------------------------------
#
		$attachment_mod['posting']->insert_attachment( ($merge) ? $last_post_id : $post_id );

# 
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------ 
# 
Гугл рулит. Я люблю ЛОР.
Интересно, они пришли с миром или им таки нужен наш моск?
Знания принадлежат всему человечеству.
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Стаж: 22 года 7 месяцев
Поблагодарили: 2 раза

Сообщение Xpert »

Гога
И про флуд-контроль в теме есть, и про аттач. Вам свое милее? :)
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Аватара пользователя
Гога
phpBB 2.0.0
Сообщения: 220
Стаж: 21 год 5 месяцев
Откуда: Архангельск

Сообщение Гога »

Xpert писал(а):И про флуд-контроль в теме есть, и про аттач. Вам свое милее?
Не заметил :oops:
Гугл рулит. Я люблю ЛОР.
Интересно, они пришли с миром или им таки нужен наш моск?
Знания принадлежат всему человечеству.
Аватара пользователя
IGO
phpBB 2.0.1
Сообщения: 297
Стаж: 21 год 6 месяцев

Сообщение IGO »

У меня на форуме возникла подребность в склейке сообщений. Флудеры достали.

Так вот в чём вопрос:
В теме несколько постов одного пользователя идут с вложенными файлами.

Если я установлю мод склеивания. То как мод склеит посты с вложениями?
Терпение и труд - всё перетрут
Я на этом форуме уже чуть больше года.. спасибо вам за помощь!
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Стаж: 22 года 7 месяцев
Поблагодарили: 2 раза

Сообщение Xpert »

Обычно склеит. Аддон для Attachment mod прилагется к моду.
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Аватара пользователя
IGO
phpBB 2.0.1
Сообщения: 297
Стаж: 21 год 6 месяцев

Сообщение IGO »

А количество постов у пользователей измениться?
Ведь тогда те кто написали 2 поста подряд получили +2 к общему количеству. Мод сделает это в один пост, а одщее количество постов у пользователей? :?
Xpert, просто хотелось бы чтобы модификация прошла как можно безболезненно.
Терпение и труд - всё перетрут
Я на этом форуме уже чуть больше года.. спасибо вам за помощь!
Аватара пользователя
Гога
phpBB 2.0.0
Сообщения: 220
Стаж: 21 год 5 месяцев
Откуда: Архангельск

Сообщение Гога »

IGO писал(а):В теме несколько постов одного пользователя идут с вложенными файлами.
Xpert писал(а):Обычно склеит.
А как быть с ограничением числа вложений в одном сообщении?
Можно, конечно, исследовать этот вопрос, но это утомительно, поэтому-то я и сделал так, чтоб не приклеивать в предыдущему сообщению, если в нём есть вложение.
Гугл рулит. Я люблю ЛОР.
Интересно, они пришли с миром или им таки нужен наш моск?
Знания принадлежат всему человечеству.
Аватара пользователя
IGO
phpBB 2.0.1
Сообщения: 297
Стаж: 21 год 6 месяцев

Сообщение IGO »

Гога писал(а):Можно, конечно, исследовать этот вопрос, но это утомительно, поэтому-то я и сделал так, чтоб не приклеивать в предыдущему сообщению, если в нём есть вложение.
А как ты это сделал?
Терпение и труд - всё перетрут
Я на этом форуме уже чуть больше года.. спасибо вам за помощь!
Аватара пользователя
Гога
phpBB 2.0.0
Сообщения: 220
Стаж: 21 год 5 месяцев
Откуда: Архангельск

Сообщение Гога »

IGO писал(а):
Гога писал(а):Можно, конечно, исследовать этот вопрос, но это утомительно, поэтому-то я и сделал так, чтоб не приклеивать в предыдущему сообщению, если в нём есть вложение.
А как ты это сделал?
posting.php
FIND
$sql = "SELECT post_id, poster_id, post_created FROM " . POSTS_TABLE . " WHERE topic_id = $topic_id ORDER BY post_time DESC LIMIT 1";
REPLACE WITH
$sql = "SELECT post_id, poster_id, post_created, post_attachment FROM " . POSTS_TABLE . " WHERE topic_id = $topic_id ORDER BY post_time DESC LIMIT 1";
FIND
$last_post_created = $last_post_data['post_created'];
AFTER, ADD
$last_post_attachment = $last_post_data['post_attachment'];
FIND
if ( ($last_poster == $userdata['user_id']) && ((time() - $last_post_created) < $time2merge) )
REPLACE WITH
if ( ($last_poster == $userdata['user_id']) && ((time() - $last_post_created) < $time2merge) && ($last_post_attachment == 0) )
Гугл рулит. Я люблю ЛОР.
Интересно, они пришли с миром или им таки нужен наш моск?
Знания принадлежат всему человечеству.

Вернуться в «Анонсы и поддержка модов для phpBB 2.0.x»