[RC] Thanks_mod (Спасибо за сообщение)

Здесь авторы могут постить бета-версии своих модификаций для phpBB 3.0.x. Внимание! Не устанавливайте бета-версии модов на работающие форумы!
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
Warlock75
Former team member
Сообщения: 1429
Стаж: 18 лет 7 месяцев
Откуда: Москва
Благодарил (а): 50 раз
Поблагодарили: 95 раз

Re: Мод спасиб за сообщения

Сообщение Warlock75 »

Палыч
Без этого мода около 15, с ним 50-55.
Внимательно изучаем форум и чиаем FAQ. 95% всех ответов на возможные вопросы там уже есть!

Правила
Мини FAQ по phpBB 3.1.x/3.2.x/3.3.x
Как устанавливать расширения
Аватара пользователя
Warlock75
Former team member
Сообщения: 1429
Стаж: 18 лет 7 месяцев
Откуда: Москва
Благодарил (а): 50 раз
Поблагодарили: 95 раз

Re: Мод спасиб за сообщения

Сообщение Warlock75 »

DeathMan писал(а):мод даёт большую нагрузку на сервер ?
При нажатии на кнопку "Спасибо" 50 запросов. В фоновом режиме разницы особой нет.

Добавлено спустя 1 минуту 31 секунду:
NazGuLL писал(а):на оффе (phpbb.com) его закрыли, и скачать нельзя...
Тут уже разговор идет о моде написанном Палычем, а не о версии 0.4.0.
Внимательно изучаем форум и чиаем FAQ. 95% всех ответов на возможные вопросы там уже есть!

Правила
Мини FAQ по phpBB 3.1.x/3.2.x/3.3.x
Как устанавливать расширения
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 20 лет 4 месяца
Откуда: Питер
Благодарил (а): 3 раза
Поблагодарили: 454 раза

Re: Мод спасиб за сообщения

Сообщение Палыч »

Gisher писал(а):перенос данных со старых таблиц возможен?
Да, но не торопитесь пока, пусть старый стоит (работает и работает, кушать не просит).
Warlock75 писал(а):При нажатии на кнопку "Спасибо" 50 запросов. В фоновом режиме разницы особой нет.
Ну, главное в фоне, чтобы не зашкаливало. Сегодня попробую какую-нибудь большую базу на локаль перетащить и потестить. Возможно алгоритм бум менять...
Warlock75 писал(а):Тут уже разговор идет о моде написанном Палычем, а не о версии 0.4.0.
Отрезать тему надо.
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 20 лет 4 месяца
Откуда: Питер
Благодарил (а): 3 раза
Поблагодарили: 454 раза

Re: [DEV] Thanks_mod (Спасибо за сообщение)

Сообщение Палыч »

Gisher писал(а):как правильно обновиться до Вашего мода, чтобы не потерять данные
Реализовано
Gisher писал(а):возможно сделать классы для кнопок, анологично всем остальным кнопкам?
Реализовано
mars1an писал(а):информацию о поблагодаривших выводить не в отдельном блоке а в этом же посте?
Реализовано

Новая версия в первом посте. Инструкция по установке поверх Thank Post MOD с сохранением данных в папке contrib
Инструкцию по update с версии 1.0.0 до 1.0.1 делать не стал (лениво...) :(
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2229
Стаж: 18 лет 9 месяцев
Откуда: Астана
Благодарил (а): 7 раз
Поблагодарили: 344 раза

Re: [DEV] Thanks_mod (Спасибо за сообщение)

Сообщение nissin »

Warlock75 писал(а):Без этого мода около 15, с ним 50-55.
Многовато будет, нужно алгоритм организации запросов менять.
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 20 лет 4 месяца
Откуда: Питер
Благодарил (а): 3 раза
Поблагодарили: 454 раза

Re: [DEV] Thanks_mod (Спасибо за сообщение)

Сообщение Палыч »

nissin
Запросы очень "легкие".
Палыч писал(а):МОД добавляет на viewtopic по 2 SQL-запроса на пост (при стандартной установке 15 сообщений на страницу + 30 запросов с суммарным временем +0.05~0.08s) Запросы добавляются только при разрешённом праве доступа к форуму "Может благодарить за сообщение"
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2229
Стаж: 18 лет 9 месяцев
Откуда: Астана
Благодарил (а): 7 раз
Поблагодарили: 344 раза

Re: [DEV] Thanks_mod (Спасибо за сообщение)

Сообщение nissin »

Но всё же будет правильней будет одним/двумя запросами получить данные, поскольку список сообщений на странице уже есть в переменной $post_list. В качестве заготовки можно взять формирование запроса к зебре в том-же viewtopic.php.
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 20 лет 4 месяца
Откуда: Питер
Благодарил (а): 3 раза
Поблагодарили: 454 раза

Re: [DEV] Thanks_mod (Спасибо за сообщение)

Сообщение Палыч »

nissin
Спасибо за идею. Подумаем 8-)
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Аватара пользователя
Warlock75
Former team member
Сообщения: 1429
Стаж: 18 лет 7 месяцев
Откуда: Москва
Благодарил (а): 50 раз
Поблагодарили: 95 раз

Re: [DEV] Thanks_mod (Спасибо за сообщение)

Сообщение Warlock75 »

Палыч, ставлю эту версию.
О результатах отпишусь.
Только viewtopic.php и viewtopic_body.html изменю под себя...
Внимательно изучаем форум и чиаем FAQ. 95% всех ответов на возможные вопросы там уже есть!

Правила
Мини FAQ по phpBB 3.1.x/3.2.x/3.3.x
Как устанавливать расширения
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 20 лет 4 месяца
Откуда: Питер
Благодарил (а): 3 раза
Поблагодарили: 454 раза

Re: [DEV] Thanks_mod (Спасибо за сообщение)

Сообщение Палыч »

Warlock75
Только что заменил архив версии 1.0.1b
Изменил алгоритм, добавляется в фоне только 1 запрос на страницу.
При использовании + и - благодарностей ещё 1 запрос.

Добавлено спустя 59 секунд:
nissin
Идея не понадобилась, реализовал через массив мода, но всё равно спасибо! 8-)
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Аватара пользователя
Warlock75
Former team member
Сообщения: 1429
Стаж: 18 лет 7 месяцев
Откуда: Москва
Благодарил (а): 50 раз
Поблагодарили: 95 раз

Re: [DEV] Thanks_mod (Спасибо за сообщение)

Сообщение Warlock75 »

Дополнение к моду (для prosilver):
Вывод информации в memberlist_view.html

memberlist.php
Найти:

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

$auth->acl($user->data);
Добавить после:

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

// thanks mod
include($phpbb_root_path . 'thanks.' . $phpEx);
// end thanks mod
Найти:

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

			'SEARCH_IMG'	=> $user->img('icon_user_search', $user->lang['SEARCH']),
Добавить после:

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

// thanks mod
			'POSTER_RECEIVE_COUNT'	=> get_user_count($user_id, true),
			'POSTER_GIVE_COUNT'		=> get_user_count($user_id, false),
// end thanks mod
Открыть: memberlist_view.html
Найти:

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

			<dt>{L_TOTAL_POSTS}:</dt>
				<dd>{POSTS} | <strong><a href="{U_SEARCH_USER}">{L_SEARCH_USER_POSTS}</a></strong>
					<!-- IF POSTS_PCT --><br />({POSTS_PCT} / {POSTS_DAY})<!-- ENDIF -->
					<!-- IF POSTS_IN_QUEUE and U_MCP_QUEUE --><br />(<a href="{U_MCP_QUEUE}">{L_POSTS_IN_QUEUE}</a>)<!-- ELSEIF POSTS_IN_QUEUE --><br />({L_POSTS_IN_QUEUE})<!-- ENDIF -->
				</dd>
Добавить после:

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

			<dt>{L_GIVEN}:</dt> <dd>{POSTER_GIVE_COUNT} {L_THANKS}</dd>
			<dt>{L_RECEIVED}:</dt> <dd>{POSTER_RECEIVE_COUNT} {L_THANKS}</dd>
Очистить кэш.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Внимательно изучаем форум и чиаем FAQ. 95% всех ответов на возможные вопросы там уже есть!

Правила
Мини FAQ по phpBB 3.1.x/3.2.x/3.3.x
Как устанавливать расширения
Gisher
phpBB 2.0.12
Сообщения: 857
Стаж: 19 лет 11 месяцев
Благодарил (а): 11 раз
Поблагодарили: 13 раз

Re: [DEV] Thanks_mod (Спасибо за сообщение)

Сообщение Gisher »

Палыч писал(а):Изменил алгоритм, добавляется в фоне только 1 запрос на страницу.
уже вне зависмости от количество сообщений на страницу?
Насколько я понял по коду, включение благодарностей производиться через форумские права групп
Какой запрос нужно сделать, чтобы включить "благодарности" во всех форумах для группы "Зарегистрированные пользователи"?
Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2229
Стаж: 18 лет 9 месяцев
Откуда: Астана
Благодарил (а): 7 раз
Поблагодарили: 344 раза

Re: [DEV] Thanks_mod (Спасибо за сообщение)

Сообщение nissin »

Палыч
Посмотрел. Да запрос один, но он просто загоняет всю таблицу thanks в память, что не является оптимальным решением.
Предлагаю всё же ограничить запрос только постами, которые есть в $post_list.

thanks.php

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

// create an array of thanks info
$sql_where = $db->sql_in_set('t.post_id', $post_list);
$sql = 'SELECT t.*, u.username, u.user_colour
	FROM ' . THANKS_TABLE .' t  
        LEFT JOIN ' . USERS_TABLE .' u 
		ON t.user_id = u.user_id
	WHERE ' . $sql_where;
При этом вставку thanks.php в viewtopic.php опустить пониже (после формирования $post_list).

Ещё желательно сделать массивы $thankers ассоциативными, тогда можно будет ограничить перебор значений, достаточно обратиться по ключу.
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 20 лет 4 месяца
Откуда: Питер
Благодарил (а): 3 раза
Поблагодарили: 454 раза

Re: [DEV] Thanks_mod (Спасибо за сообщение)

Сообщение Палыч »

nissin писал(а):Предлагаю всё же ограничить запрос только постами, которые есть в $post_list.
Не катит. Массив, получаемый из запроса используется потом во всех случаях, в том числе для подсчёта полученных\данных благодарностях по каждому юзеру (а они могут быть не только за посты на странице), получения списка "благодаривших", передаче в memberlist и т.д.
Это тогда нужно просто заново сочинять весь алгоритм
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2229
Стаж: 18 лет 9 месяцев
Откуда: Астана
Благодарил (а): 7 раз
Поблагодарили: 344 раза

Re: [DEV] Thanks_mod (Спасибо за сообщение)

Сообщение nissin »

Понятно. Просто когда БД вырастет, возможны проблемы с нехваткой памяти.

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