Thanks for post (Rating edition)

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

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

Thanks for post (Rating edition)

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

Наименование модификации: Thanks for post
Описание::
Открыть 
Мод добавляет возможность поблагодарить автора сообщения (отменить благодарность).
  • Опции реализованы включением добавленного права доступа к форумам. При установке право добавлено в роли Стандартный доступ, Ограниченный доступ, Стандартный доступ с опросами, Ограниченный доступ с опросами и Полный доступ. (Если вы хотите установить другие настройки: перейдите в Администраторский раздел - Права доступа - Локальные права - Права доступа к форумам и выберите форумы, где вы хотите иметь функцию благодарностей за сообщения. Разрешите право "Может благодарить за сообщения" на вкладке Разное).
  • Переключатели выбора опций получения уведомлений о благодарностях (в ЛС и по email) в Личном разделе - Личные настройки.
  • Настройки опций, в том числе обновление счётчиков после массового удаления сообщений/тем/пользователей, слияния учетных записей, смены автора сообщения, разделения/слияния тем и т.п. - в Администраторском разделе - Модули - Благодарности - Обновление счётчиков.
  • Для просмотра списка благодарностей нужно разрешить глобальное пользовательское право - "Может просматривать лист благодарностей" на вкладке Разное. При установке право добавлено в роли Стандартные возможности, Ограниченные возможности, Все возможности, Без личных сообщений, Без аватары и членам группы Зарегистрированные пользователи.
  • Для просмотра топлиста нужно разрешить глобальное пользовательское право - "Может просматривать топлист" на вкладке Разное. При установке право добавлено в роли Стандартные возможности, Ограниченные возможности, Все возможности, Без личных сообщений, Без аватары и членам группы Зарегистрированные пользователи.
  • Для возможности очистки списков благодарностей нужно разрешить глобальное модераторское право - "Может очищать список благодарностей" на вкладке Разное. При установке право добавлено в роль Супермодератор и членам группы Супермодераторы.
  • В папке contrib вы можете найти файлы reput_star_.psd и thanks.psd для разработки собственных изображений под используемый вами стиль.
  • Система рейтинга для сообщений, тем и форумов, основанная на системе СПАСИБО.
    Каждый объект (сообщение, тема или форум), набравший максимальное число СПАСИБО, принимается за 100% рейтинга (лидер). Остальные - как % от рейтинга лидера.
    Например: Сообщение получило 10 СПАСИБО (100% or 10/10), другое сообщение 4 СПАСИБО (40% or 4 / 10), третье сообщение 1 СПАСИБО (10% or 1 / 10). Если первое сообщение получит ещё одно СПАСИБО (10 +1 = 11), рейтинг второго сообщения будет 36.36% или 4 / 11, у третьего сообщения - 9,09% или 1 / 11 и т.д.
    Позиция рейтинга определяется числом СПАСИБО.
    Рейтинг тем - суммой количества СПАСИБО у сообщений в теме.
    Рейтинг форума - суммой количества СПАСИБО у сообщений в форуме.
    Включение\выключение рейтинга для сообщений, тем и форумов - через административный раздел.
    Возможно только цифровое или цифровое + графическое отображение рейтинга.
    Есть топлист рейтинга. Число отображаемых позиций в топлисте устанавливается в административном разделе.
  • Важно! Для корректной работы системы рейтинга в базе данных не должно быть записей о благодарностях по отношению к удалённым, перемещённым сообщениям, или сообщениям от гостей (если ранее они были зарегистрированными пользователями). Вам необходимо использовать средство обновления счетчиков благодарностей после массового удаления постов, тем, пользователей или иных действий модераторов или администраторов (например, замена автора сообщения или объединение аккаунтов). Для корректной работы функции обновления счётчиков требуется MySQL версии 4.1 или выше.
Версия:: 1.3.5

Скриншоты: Можно посмотреть здесь

Скачать: http://www.phpbbguru.net/files/mods/spa ... -rejtinga/
Темы мода на оффсайте:
http://www.phpbb.com/community/viewtopic.php?t=1690905
http://www.phpbb.com/community/viewtopi ... &t=2093007

Fix для правильного склонения слов: раза/раз 
Примечания для более ранних версий МОДа: 
Внимание для версии 1.3.2! В связи с обнаружением некорректной работы функции пересчета счетчиков МОДа в административном разделе следует использовать файл includes/acp/acp_thanks_refresh.php от версии 1.3.1
acp_thanks_refresh 1.3.1.rar
Для устранения предупреждения (версия 1.3.2): 

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

[phpBB Debug] PHP Warning: in file /includes/db/dbal.php on line 223: Illegal offset type in isset or empty

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

== OPEN ==
includes/functions_thanks.php
== FIND (line 570) ==
    $allow_thanks_pm = (int) $db->sql_fetchfield($result);
== REPLACE ==
    $allow_thanks_pm = (int) $db->sql_fetchfield('user_allow_thanks_pm');
== FIND (line 613) ==
        $allow_thanks_email = (int) $db->sql_fetchfield($result);
== REPLACE ==
        $allow_thanks_email = (int) $db->sql_fetchfield('user_allow_thanks_email'); 
Для устранения ошибки при удалении сообщения из темы (версия 1.3.2): 

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

Call to undefined function delete_post_thanks()

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

== OPEN ==
posting.php
== FIND ==
if (!function_exists('get_max_forum_thanks'))
    {
        include($phpbb_root_path . 'includes/functions_thanks_forum.' . $phpEx);
    }
== REPLACE ==
if (!function_exists('get_thanks'))
    {
        include($phpbb_root_path . 'includes/functions_thanks.' . $phpEx);
    }  
FIX для исправления проблем с личными сообщениями в версии 1.3.1 
файл includes/functions_thanks.php

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

== НАЙТИ ==
	if (!isset($user_cache[$to_id]['allow_thanks_pm']))
== ЗАМЕНИТЬ ==
	if (!($user_cache[$to_id]['allow_thanks_pm']))
FIX для исправления проблем с отображением рейтинга при ограничении доступа к подфорумам в версии 1.2.9 

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

== open == 
includes/functions_display.php
== find ==
    get_max_forum_thanks();
== after-add ==
    $forum_thanks_rating = array();  
FIX для исправления проблем с большим количеством запросов на индексе в версии 1.2.8 
Фикс для версии 1.2.5 - устранение неправильного отображения числа благодарностей при удалении пользователя 
Замените три файла из архива (если необходимо, воспользуйтесь кнопкой Обновить в админке на вкладке Благодарности для пересчёта числа благодарностей)
fix_bug_thanks.zip
Если вы не видите кнопки "Спасибо"
Скрытый текст
  1. Убедитесь, что вы скопировали файлы-изображения в папку используемого вами стиля
  2. Убедитесь, что вы отредактировали файлы используемого вами стиля
  3. Обновите набор изображений вашего стиля (на вкладке Стили в админке)
  4. Обновите тему вашего стиля (на вкладке Стили в админке)
  5. Обновите кеш
  6. Установите опции мода (вкладка Модули - Спасибо за сообщение)
  7. Убедитесь, что правильно выставлены права доступа
    1. Установите права доступа к форуму в котором вы хотите иметь опцию благодарностей

      При установке право добавлено в роль Стандартный доступ. (Если вы хотите установить другие настройки: перейдите в Администраторский раздел - Права доступа - Локальные права - Права доступа к форумам и выберите форумы, где вы хотите иметь функцию благодарностей за сообщения. Разрешите право "Может благодарить за сообщения" на вкладке Разное).
    2. Установите права доступа к просмотру листа благодарностей

      Для просмотра списка благодарностей нужно разрешить глобальное пользовательское право - "Может просматривать лист благодарностей" на вкладке Разное. При установке право добавлено в роль Стандартные возможности и членам группы Зарегистрированные пользователи.

      Если вы хотите иметь другие настройки (у вас другая роль у зарегистрированных пользователей):
      Админка -> Права доступа -> Прав групп -> Выбор группы:Зарегистрированные пользователи -> Расширенные права -> Разное -> Может просматривать список благодарностей (Может видеть топлист) -> Применить все права
      Пошаговая инструкция в картинках (на английском)
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось Татьяна5 11.07.2014 8:16, всего редактировалось 12 раз.
Причина: Вынесла ссылки из-под спойлера
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 20 лет 4 месяца
Откуда: Питер
Благодарил (а): 3 раза
Поблагодарили: 454 раза

Re: Thanks for post (Rating edition)

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

deadromeo
Вы не умеете читать?
leshkakrash писал(а):После установки появляется такая ошибка:
Parse error: syntax error, unexpected '}' in ......./cache/tpl_art-deluxe_forumlist_body.html.php on line 92

Если поставить оригинальный файл forumlist_body.html, то этой ошибки нет, но и мод тогда не работает.
Кэш чистил...
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Alena71
phpBB 1.0.0
Сообщения: 1
Стаж: 13 лет 10 месяцев

Re: Thanks for post (Rating edition)

Сообщение Alena71 »

Учусь только работать с форумом и модами. Подскажите где ошибка и как лечить? (Если можно совсем для чайника)
Перенесла файлы, внесла исправления. При установке выдается
SQL ERROR [ mysql4 ]
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT forum_id FROM phpbb31_posts WHERE post_id = phpbb [1064]
SQL
UPDATE phpbb31_thanks SET forum_id = (SELECT forum_id FROM phpbb31_posts WHERE post_id = phpbb31_thanks.post_id)
BACKTRACE

FILE: (not given by php)
LINE: (not given by php)
CALL: msg_handler()

FILE: [ROOT]/includes/db/dbal.php
LINE: 757
CALL: trigger_error()

FILE: [ROOT]/includes/db/mysql.php
LINE: 175
CALL: dbal_mysql->sql_error()

FILE: [ROOT]/install_thanks_mod.php
LINE: 316
CALL: dbal_mysql->sql_query()

FILE: (not given by php)
LINE: (not given by php)
CALL: update_thanks_table()

FILE: [ROOT]/umil/umil.php
LINE: 494
CALL: call_user_func()

FILE: [ROOT]/umil/umil.php
LINE: 382
CALL: umil_frontend->_call_custom_function()

FILE: [ROOT]/umil/umil_auto.php
LINE: 179
CALL: umil_frontend->run_actions()

FILE: [ROOT]/install_thanks_mod.php
LINE: 296
CALL: include('[ROOT]/umil/umil_auto.php')

При попытке загрзить зайти на форум вместо гланой станицы выдает
Fatal error: Call to undefined function: get_thanks_forum_reput() in /home/3353/s3737/public_html/phpBB3/includes/functions_display.php on line 507

Спасибо.
Аватара пользователя
misterleks
phpBB 2.0.9
Сообщения: 715
Стаж: 16 лет 1 месяц
Откуда: Великий Новгород
Благодарил (а): 103 раза
Поблагодарили: 38 раз

Re: Thanks for post (Rating edition)

Сообщение misterleks »

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

Re: Thanks for post (Rating edition)

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

Alena71 писал(а): При установке выдается SQL ERROR [ mysql4 ]
Здесь возможно срабатывает старая версия mysql (ниже чем 4.1)
Если вы ставите МОД с нуля, то это не страшно. Это не сработала функция обновления таблицы спасибок от старой версии МОДа (если бы вы делали обновление версии)
Alena71 писал(а):Fatal error: Call to undefined function: get_thanks_forum_reput() in /home/3353/s3737/public_html/phpBB3/includes/functions_display.php on line 507
Похоже вы ошиблись при редактировании кода файла includes/functions_display.php
Во всяком случае, если у вас phpbb 3.0.11, то вызов функции get_thanks_forum_reput() осуществляется в районе строки 520 (а не 507). Проверьте установку.

Добавлено спустя 14 минут 58 секунд:
Вышла версия 1.3.5
  • Исправлена ошибка при постинге с неопределенными параметрами
  • Исправлена ошибка в коде файла ucp_prefs.php
  • Исправлена ошибка настроки только первого сообщения в теме
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Аватара пользователя
Djeday
phpBB 2.0.7a
Сообщения: 644
Стаж: 14 лет 8 месяцев
Благодарил (а): 108 раз
Поблагодарили: 68 раз

Re: Thanks for post (Rating edition)

Сообщение Djeday »

Палыч, спасибо, обновился. Полет нормальный (включая важные темы).
Я смею то, что можно человеку, кто смеет меньше - тот не человек.
sweetah
phpBB 2.0.6
Сообщения: 506
Стаж: 16 лет 7 месяцев
Благодарил (а): 108 раз
Поблагодарили: 26 раз

Re: Thanks for post (Rating edition)

Сообщение sweetah »

В thankslist.php ошибка!
Найти:

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

'mode=givens&author_id=$author_id&give=true'
Заменить на:

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

"mode=givens&author_id=$author_id&give=true"
Иначе не работает постраничная навигация вида thankslist.php?mode=givens&author_id=242&give=true&start=30
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 20 лет 4 месяца
Откуда: Питер
Благодарил (а): 3 раза
Поблагодарили: 454 раза

Re: Thanks for post (Rating edition)

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

sweetah
Спасибо! :)
Ошибка осталась с версии 133.
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Аватара пользователя
Alecto
phpBB 3.0.12
Сообщения: 2857
Стаж: 16 лет 9 месяцев
Откуда: Украина! Харьков
Благодарил (а): 80 раз
Поблагодарили: 292 раза

Re: Thanks for post (Rating edition)

Сообщение Alecto »

обновился с 1.3.4 до 1.3.5 практически без проблем (за исключением пары мест, где по какой-то причине уже были правки от 1.3.5 - вероятно из-за мониторинга данной темы и внесения изменений еще до выхода финалрелиза).
пока полет нормальный :)
спасибо
danilas
phpBB 1.2.0
Сообщения: 14
Стаж: 14 лет 2 месяца

Re: Thanks for post (Rating edition)

Сообщение danilas »

HAMMER663 писал(а):danilas скажите версию мода спасибок
Прошу прощения, не получил уведомления об ответе в теме. Версия мода: 1.2.5. Текущая 1.3.5, но судя по спискам изменений там не было чего-то кардинально снижающего нагрузку.
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 20 лет 4 месяца
Откуда: Питер
Благодарил (а): 3 раза
Поблагодарили: 454 раза

Re: Thanks for post (Rating edition)

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

danilas
Более чем. С версии 125 весь алгоритм переписывался дважды. Эта версия делалсь под phpbb 306, прошло уже три года, и запросы sql там весьма не оптимальны.

Оптимизация была начата с лета 2010 года Thanks for post (Rating edition) и ниже
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Alex1204
phpBB 1.4.4
Сообщения: 111
Стаж: 20 лет 6 месяцев
Благодарил (а): 12 раз
Поблагодарили: 2 раза

Re: Thanks for post (Rating edition)

Сообщение Alex1204 »

Палыч у меня создалось впечатление, что при массовом удалении пользователей мод создает большую нагрузку на сервер, что у меня вместо 50 пользователей, удаляется около 10, потом выходит ошибка таймаута. Кто-то может подтвердить опровергнуть?
danilas
phpBB 1.2.0
Сообщения: 14
Стаж: 14 лет 2 месяца

Re: Thanks for post (Rating edition)

Сообщение danilas »

Alex1204 писал(а):Палыч у меня создалось впечатление, что при массовом удалении пользователей мод создает большую нагрузку на сервер, что у меня вместо 50 пользователей, удаляется около 10, потом выходит ошибка таймаута. Кто-то может подтвердить опровергнуть?
Такая же ерунда. Выбираю на удаление человек 50 - таймаут. Но с модом не задумывался связать. Может, действительно, он.
Аватара пользователя
IgorOkCJ
phpBB 1.0.0
Сообщения: 9
Стаж: 16 лет 9 месяцев
Благодарил (а): 4 раза

Re: Thanks for post (Rating edition)

Сообщение IgorOkCJ »

Здравствуйте! Сегодня установил данный мод себе на форум! Версия форума 3.0.11! Все установилось нормально!
Вот только есть одна проблема: в админпанели не появилась вкладка для данного мода! Что это может быть?!
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 20 лет 4 месяца
Откуда: Питер
Благодарил (а): 3 раза
Поблагодарили: 454 раза

Re: Thanks for post (Rating edition)

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

Alex1204 писал(а):у меня создалось впечатление, что при массовом удалении пользователей мод создает большую нагрузку на сервер
Интересно, на основании чего?
danilas писал(а):Может, действительно, он.
Не может.
Инструмент очистки пользователей из ACP НИКАК не связан с МОДом.
Более того, после совершения массового администрирования или модерирования для правильного функционирования МОДа следует выполнить Обновление счетчиков благодарностей (специальная процедура в ACP), о чем прямо указано в описании.

Добавлено спустя 2 минуты 53 секунды:
IgorOkCJ писал(а):в админпанели не появилась вкладка для данного мода! Что это может быть?!
Что МОД не правильно или не до конца установлен
Как вариант - вы пропустили сообщения об ошибках при установке, например в случае, если ранее вы удаляли встроенный модуль .MODS
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Alex1204
phpBB 1.4.4
Сообщения: 111
Стаж: 20 лет 6 месяцев
Благодарил (а): 12 раз
Поблагодарили: 2 раза

Re: Thanks for post (Rating edition)

Сообщение Alex1204 »

Палыч писал(а):на основании чего?
Вот моды которые установлены:
NV "who was here?"
NV advanced last topic titles
NV recent topics
Thanks for posts

До установки пользователи удалялись за секунду, после установки с таймаутом... как можно вычислить кто создает "тяжелый запрос"?

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