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

Thanks for post (Rating edition)

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

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 14 лет 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
(2.15 КБ) 1642 скачивания
Для устранения предупреждения (версия 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
(8.34 КБ) 2011 скачиваний
Если вы не видите кнопки "Спасибо"
Скрытый текст
  1. Убедитесь, что вы скопировали файлы-изображения в папку используемого вами стиля
  2. Убедитесь, что вы отредактировали файлы используемого вами стиля
  3. Обновите набор изображений вашего стиля (на вкладке Стили в админке)
  4. Обновите тему вашего стиля (на вкладке Стили в админке)
  5. Обновите кеш
  6. Установите опции мода (вкладка Модули - Спасибо за сообщение)
  7. Убедитесь, что правильно выставлены права доступа
    1. Установите права доступа к форуму в котором вы хотите иметь опцию благодарностей

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

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

      Если вы хотите иметь другие настройки (у вас другая роль у зарегистрированных пользователей):
      Админка -> Права доступа -> Прав групп -> Выбор группы:Зарегистрированные пользователи -> Расширенные права -> Разное -> Может просматривать список благодарностей (Может видеть топлист) -> Применить все права
      Пошаговая инструкция в картинках (на английском)
Последний раз редактировалось Татьяна5 11.07.2014 12:16, всего редактировалось 12 раз.
Причина: Вынесла ссылки из-под спойлера
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Аватара пользователя
Di_Mok
Former team member
Сообщения: 814
Стаж: 10 лет 7 месяцев
Откуда: Родной Гондурас ;)
Благодарил (а): 146 раз
Поблагодарили: 118 раз

Re: Thanks for post (Rating edition)

Сообщение Di_Mok »

Палыч писал(а):Здесь и ниже ....
Какая то мистика... Выполнил эту инструкцию, и спасибы перестали работать (ни какой реакции на нажатие кнопки) Откатил (включая functions_thanks_forum.php и functions_thanks.php) - всё равно не работает.
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 14 лет 4 месяца
Откуда: Питер
Благодарил (а): 3 раза
Поблагодарили: 454 раза

Re: Thanks for post (Rating edition)

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

Di_Mok
Что-то где-то накосячил.
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Аватара пользователя
Di_Mok
Former team member
Сообщения: 814
Стаж: 10 лет 7 месяцев
Откуда: Родной Гондурас ;)
Благодарил (а): 146 раз
Поблагодарили: 118 раз

Re: Thanks for post (Rating edition)

Сообщение Di_Mok »

Нашёл. Затык был с Ajax Addon. После заливки нового functions_thanks.php, не сообразил сделать правку для аддона

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

Re: Thanks for post (Rating edition)

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

К сожалению уже после валидации в версии 1.2.8 обнаружился баг с большим числом запросов на индексе.
Временный фикс (повтор ранее уже выкладываемых в данной теме двух фиксов, объединены):
includes/functions_display.php

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

== FIND ==
    // Used to tell whatever we have to create a dummy category or not.
    $last_catless = true;
== ADD BEFORE ==
    
    if (!function_exists('get_max_forum_thanks'))
    {
        include($phpbb_root_path . 'includes/functions_thanks_forum.' . $phpEx);
    }
    get_max_forum_thanks();
    foreach ($forum_rows as $row)
    {
        $forum_thanks_rating [] = $row['forum_id'];
    }
    global $cache;
    $cache->put('_forum_thanks_rating', $forum_thanks_rating);
    get_thanks_forum_number();
    $cache->destroy('_forum_thanks_rating');    
== FIND ==
        if (!function_exists('get_max_forum_thanks'))
        {
            include($phpbb_root_path . 'includes/functions_thanks_forum.' . $phpEx);
        }
        get_max_forum_thanks();
        get_thanks_forum_reput($row['forum_id']);
 == REPLACE ==
    if ($config['thanks_forum_reput_view'])
    {
        get_thanks_forum_reput($row['forum_id']);
    } 
и заменить файл includes/functions_thanks_forum.php

файл viewforum.php

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

== FIND ==
get_max_topic_thanks();
== ADD AFTER ==
if ($topic_list)
{
get_thanks_topic_number();
}
== FIND ==
        get_thanks_topic_reput($topic_id);
== REPLACE ==
        if ($config['thanks_topic_reput_view'])
        {
            get_thanks_topic_reput($topic_id);
        } 
и заменить файл includes/functions_thanks.php
Вложения
functions_thanks_forum.zip
(1.03 КБ) 290 скачиваний
functions_thanks.zip
(4.75 КБ) 273 скачивания
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
gogogo
phpBB 1.2.0
Сообщения: 17
Стаж: 10 лет 2 месяца
Откуда: Раша, родина наша..
Благодарил (а): 8 раз

Re: Thanks for post (Rating edition)

Сообщение gogogo »

подскажите, пожалуйста, как сделать кол-во выданных и полученных благодарностей под аватаркой на странице темы, видимым для гостей?
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 10343
Стаж: 10 лет 9 месяцев
Откуда: От Москвы 9 часов на Боинге
Благодарил (а): 1386 раз
Поблагодарили: 1307 раз

Re: Thanks for post (Rating edition)

Сообщение Пчелкин »

Палыч ! Вставил спасибки и в категорию СТАТЬЯ...все пашет...Коды в viewarticle_body.html вставляются по аналогии ...
Даже в приватном форуме от Mit спасибки не касаются приватных юзеров и ставятся и появляются у тех, кто зарегенный...шикарно!
gogogo
phpBB 1.2.0
Сообщения: 17
Стаж: 10 лет 2 месяца
Откуда: Раша, родина наша..
Благодарил (а): 8 раз

Re: Thanks for post (Rating edition)

Сообщение gogogo »

gogogo писал(а):подскажите, пожалуйста, как сделать кол-во выданных и полученных благодарностей под аватаркой на странице темы, видимым для гостей?
помогите с этим, пожалуйста. убирал во viewtopic_body где необходимо
not postrow.S_POST_ANONYMOUS and
не помогает =(
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 14 лет 4 месяца
Откуда: Питер
Благодарил (а): 3 раза
Поблагодарили: 454 раза

Re: Thanks for post (Rating edition)

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

gogogo
Не понимаю, что вы хотите. Количество благодарностей в минипрофиле видны гостям по умолчанию.
gogogo писал(а):убирал во viewtopic_body где необходимо
Напрасно. Это условие закрывает вывод в посте, если автор поста - гость.
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Аватара пользователя
Garret_Dark
phpBB 2.0.16
Сообщения: 1096
Стаж: 11 лет 9 месяцев
Откуда: root/world/russia/
Благодарил (а): 126 раз
Поблагодарили: 204 раза

Re: Thanks for post (Rating edition)

Сообщение Garret_Dark »

Наконец и я обновился до Rating Edition...
Сразу захотелось добавить, что у некоторых (как у меня) каждому форуму присвоено изображение (Стандартными фозможностями форума) и рейтинг форумов не видно за этими изображениями. Правим так:
После установки мода
Файл styles/prosilver/template/forumlist_body.html
Найти:

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

<!-- IF forumrow.reput.S_THANKS_REPUT_GRAPHIC -->
						<span style="display: block;
И сразу на строке добавить после найденного

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

 margin-left: XXpx;
Где ХХ ширина изображения форумов или произвольный отступ по вкусу;)

Добавлю, что нифига у меня не работает))) Рейтинг сообщений отображается криво: Звездочки отображаются в полтора ряда (Тоесть второй ряд наполовину обрезан, хотя его вобще быть не должно), ОКи не ставятся (установлен Аякс адд-он его благородия).
Вобщем снесу старай мод полностью, переставлю, а там посмотрим. :)

Единственное что волнует, это вот эта ошибка при установке

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

Благодарность за сообщение
PHP Version: 5.2.12
DBMS: MySQL 5.0.91-community
phpBB3 Version: 3.0.7-PL1

Обновление данных в таблице _thanks
SQL ERROR Column 'topic_id' cannot be null
Последний раз редактировалось Garret_Dark 23.10.2010 16:40, всего редактировалось 1 раз.
Аватара пользователя
Di_Mok
Former team member
Сообщения: 814
Стаж: 10 лет 7 месяцев
Откуда: Родной Гондурас ;)
Благодарил (а): 146 раз
Поблагодарили: 118 раз

Re: Thanks for post (Rating edition)

Сообщение Di_Mok »

Garret_Dark писал(а):ОКи не ставятся (установлен Аякс адд-он его благородия).
Смотри на 7 постов выше Thanks for post (Rating edition)
gogogo
phpBB 1.2.0
Сообщения: 17
Стаж: 10 лет 2 месяца
Откуда: Раша, родина наша..
Благодарил (а): 8 раз

Re: Thanks for post (Rating edition)

Сообщение gogogo »

Палыч, спасибо, насчет этого
Палыч писал(а):Напрасно. Это условие закрывает вывод в посте, если автор поста - гость.
понял, переделаю обратно. а вот как сделать видимым гостям - так и не понял =( это в локальных правах выставляется?
Аватара пользователя
Garret_Dark
phpBB 2.0.16
Сообщения: 1096
Стаж: 11 лет 9 месяцев
Откуда: root/world/russia/
Благодарил (а): 126 раз
Поблагодарили: 204 раза

Re: Thanks for post (Rating edition)

Сообщение Garret_Dark »

Обновил основной форум до актуальной версии 1.2.8
Имеется два бага:
1. О котором я сообщал ранее, так и сохранился после обновления. При том на денвере в профиль зайти удается и пишет об использовании всего 5,68мб памяти, хотя в ошибки речь идет о 32мб...

2.
Скрин кусок второй строки рейтинга
Скрин кусок второй строки рейтинга
scr.gif (7.26 КБ) 966 просмотров
Как бы убрать эти лишние куски звездочек?... В админке высота графики стоит 15px - как положено
Последний раз редактировалось Garret_Dark 23.10.2010 20:11, всего редактировалось 1 раз.
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 10343
Стаж: 10 лет 9 месяцев
Откуда: От Москвы 9 часов на Боинге
Благодарил (а): 1386 раз
Поблагодарили: 1307 раз

Re: Thanks for post (Rating edition)

Сообщение Пчелкин »

Админка - опции рейтинга - высота графики - 15
Аватара пользователя
Garret_Dark
phpBB 2.0.16
Сообщения: 1096
Стаж: 11 лет 9 месяцев
Откуда: root/world/russia/
Благодарил (а): 126 раз
Поблагодарили: 204 раза

Re: Thanks for post (Rating edition)

Сообщение Garret_Dark »

Пчелкин, там и стоит 15... Если поставить 10, то в рейте тем/форумов (где отображается нормально) звездочки подрезаются, а в теме все остается по прежнему... Такое чувство, что эти 15 пикселей просто не "привязаны" к выводу графика, хотя установку мода я провел два раза (Сначала поверх 1,2,7) потом после того как удалил мод (кроме записей в БД).
Аватара пользователя
Garret_Dark
phpBB 2.0.16
Сообщения: 1096
Стаж: 11 лет 9 месяцев
Откуда: root/world/russia/
Благодарил (а): 126 раз
Поблагодарили: 204 раза

Re: Thanks for post (Rating edition)

Сообщение Garret_Dark »

Еще хочу добавить пожелание к следующей версии.
По правам доступа в топлисте. Сейчас если пользователь не имеет прав для просмотра форума он это видит в топе (Вы не имеете прав для просмотра данного форума), лучше бы для таких пользователей скрытые форумы "пропускались" и выдавался следующий по рейтингу форум.
Просто это может быть неприятно новичкам.

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