Уважаемые пользователи!
Напоминаем, что с 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 только на форумах. По найму не работаю.
DennisVV
phpBB 1.4.4
Сообщения: 108
Стаж: 13 лет 1 месяц
Благодарил (а): 10 раз
Поблагодарили: 1 раз

Re: Thanks for post (Спасибо за пост)

Сообщение DennisVV »

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

Re: Thanks for post (Спасибо за пост)

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

DennisVV
Версия 1.2.0 от 1.1.4 отличается только тем, что инструкция приведена к стандарту MODX 1.2.2
Между ними не было других версий.
1.2.0 была первая, отправленная на валидацию (RC)
После неё - все здесь http://www.phpbbguru.net/node/13/release (кроме 1.2.5, она под 3.0.6)
Инструкции по апдейту в папке cоntrib

Как по мне, так я бы переименовал таблицу phpbb_thanks, грохнул бы всё и поставил 1.2.4 с нуля (меньше возни будет...)
Вновь созданную таблицу удалить, а старую переименовать взад.

При удалении в базе данных удалить:
из таблицы phpbb_acl_options поля f_thanks и u_viewthanks
из таблицы phpbb_modules модуль с именем ACP_THANKS
из таблицы phpbb_users поле user_allow_thanks_pm
про таблицу phpbb_thanks уже говорил (в ней хранится вся накопленная информация)

Все добавляемые файлы - просто переписать поверх существующих.
Ну, а редактированные файлы, придётся вернуть к первоначальному виду, а затем отредактировать путём установки 1.2.4.
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
DennisVV
phpBB 1.4.4
Сообщения: 108
Стаж: 13 лет 1 месяц
Благодарил (а): 10 раз
Поблагодарили: 1 раз

Re: Thanks for post (Спасибо за пост)

Сообщение DennisVV »

Палыч
думал про вариант с нуля, но смущало что вся инфа к праху пойдет из БД
но после Вашего описания этого процесса смущение исчезло... Спасибо! наверно так и сделаю
Аватара пользователя
GSC
phpBB 1.4.4
Сообщения: 116
Стаж: 11 лет 7 месяцев

Re: Thanks for post (Спасибо за пост)

Сообщение GSC »

Палыч
Всё сделал по инструкции. В админке всё появилось. Но когда хочешь создать тему или ответить в уже имеющейся вылезать ошибка:
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 '' at line 3 [1064]

An sql error occurred while fetching this page. Please contact an administrator if this problem persists.
Помогите пожалуйста.

Добавлено спустя 10 минут 8 секунд:
Проблема решена, извиняюсь.

Добавлено спустя 1 час 1 минуту 1 секунду:
Изображение
Как так сделать? Кнопка ниже подписи.
anonymouss

Re: Thanks for post (Спасибо за пост)

Сообщение anonymouss »

Палыч писал(а):DennisVV
После неё - все здесь http://www.phpbbguru.net/node/13/release (кроме 1.2.5, она под 3.0.6)
Я чего то туплю но скинте ссылку на Thanks for post 1.2.5, она под 3.0.6 просто там ее нет
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 14 лет 4 месяца
Откуда: Питер
Благодарил (а): 3 раза
Поблагодарили: 454 раза

Re: Thanks for post (Спасибо за пост)

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

anonymouss
Вы не тупите, она ещё не прошла валидацию (3.0.6 вышел официально только вчера).

Добавлено спустя 1 минуту 37 секунд:
GSC
Это из ранних версий. 1.2.0 по-моему.
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Аватара пользователя
GSC
phpBB 1.4.4
Сообщения: 116
Стаж: 11 лет 7 месяцев

Re: Thanks for post (Спасибо за пост)

Сообщение GSC »

Палыч
Спасибо, возьмём оттуда. Поставил мод, в админке настроил, права дал, как Вы писали в пред постах. Кнопка не в какую не появляется. Ставлю на уже давно работающий форум. На локалке всё прекрасно. Если убрать комментарии:
<!-- IF not postrow.S_FIRST_POST_ONLY or (not START and postrow.S_ROW_COUNT == 0) -->
<!-- IF postrow.S_FORUM_THANKS and S_USER_LOGGED_IN and not postrow.S_IS_OWN_POST and (not postrow.S_ALREADY_THANKED or postrow.S_REMOVE_THANKS) -->
....................................................
<!-- ENDIF -->
<!-- ENDIF -->
То всё работает. Помогите пожалуйста:(
P.S читал все страницы этой темы и на phpbb.com тоже прочел. Не работает.
DennisVV
phpBB 1.4.4
Сообщения: 108
Стаж: 13 лет 1 месяц
Благодарил (а): 10 раз
Поблагодарили: 1 раз

Re: Thanks for post (Спасибо за пост)

Сообщение DennisVV »

GSC
а кэш шаблонов чистили?
Аватара пользователя
GSC
phpBB 1.4.4
Сообщения: 116
Стаж: 11 лет 7 месяцев

Re: Thanks for post (Спасибо за пост)

Сообщение GSC »

DennisVV
Да конечно и не однократно. Опыт установки модов есть.

Добавлено спустя 6 минут 30 секунд:
Так же в правах разрешено смотреть список благодарностей (thankslist.php) - никому нету доступа...:(
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 14 лет 4 месяца
Откуда: Питер
Благодарил (а): 3 раза
Поблагодарили: 454 раза

Re: Thanks for post (Спасибо за пост)

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

GSC писал(а):Помогите пожалуйста:(
Ну и чем же?
GSC писал(а):На локалке всё прекрасно.
Значит проблема в том, что код форума изменён. Где? Как? - Вам виднее, я не телепат.
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
boldgambler
phpBB 1.0.0
Сообщения: 8
Стаж: 11 лет 11 месяцев

Re: Thanks for post (Спасибо за пост)

Сообщение boldgambler »

добрый день.
прочитал темы на phpbb.com и jfusion.org - но так как не знаток английского и там слишком много вариантов исправлений, то спрошу у создателя. У меня проблема в модом и JFusion. Кнопка Спасибо есть, но не отображается списки поблагодаривших в постах, и при нажатии на Спасибо выдает ошибку что такой темы не существует.
Удалось ли решить проблему стыковки мода с JF ? Если да, то изменений из какого поста достаточно чтобы заработало? ЭТОГО достаточно?
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 14 лет 4 месяца
Откуда: Питер
Благодарил (а): 3 раза
Поблагодарили: 454 раза

Re: Thanks for post (Спасибо за пост)

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

boldgambler писал(а):Удалось ли решить проблему стыковки мода с JF ?
Не имею понятия, ибо было одно обращение, но юзер сам всё порешал. Вы как раз даёте ссылку на этот пост.
Сам я не занимался этим.
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
!((( ALEX )))!
phpBB 1.4.4
Сообщения: 136
Стаж: 12 лет 5 месяцев
Поблагодарили: 2 раза

Re: Thanks for post (Спасибо за пост)

Сообщение !((( ALEX )))! »

решил обновиться с версии 0.4.0 на 1.2.4

1) еще при установке при выполнении SQL запроса

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

ALTER TABLE `phpbb_thanks` ADD PRIMARY KEY ( `post_id` , `user_id` );
выдало ошибку не знаю должно ли так быть, остальные запросы выполнились без ошибок, насколько это критично?

2) после всех махинаций выдало ошибку:
[phpBB Debug] PHP Notice: in file /includes/functions_thanks.php on line 423: Missing argument 1 for array_all_thanks(), called in /viewtopic.php on line 1371 and defined

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

1370 include($phpbb_root_path . 'includes/functions_thanks.' . $phpEx);
1371 array_all_thanks();
Начал сравнивать инструкцию установки с нуля и обновления с 0.4.0 вот что нашел:
в руководстве по обновлению файла viewtopic.php нету:

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

Найти
	'PAGE_NUMBER' 	=> on_page($total_posts, $config['posts_per_page'], $start),
Добавить после
	'START'         => $start,
и так же есть ошибка:

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

include($phpbb_root_path . 'includes/functions_thanks.' . $phpEx);
array_all_thanks();
вот как в установке с нуля:

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

include($phpbb_root_path . 'includes/functions_thanks.' . $phpEx);
array_all_thanks($post_list);
P.S. могли ли часть спасибо потеряться после апдейта?
Еще не понятно почему разнятся данные:
под аваторой
Благодарил (а): 317 раз.
Поблагодарили: 938 раз.
на странице профиля
Благодарил (а): 267 раз.
Поблагодарили: 938 раз.

Палыч и еще огромная просьба помочь:
мне нравится когда кнопка спасибо находится под сообщением (скрин)
thanks.PNG
но если вставить ее кодом как идет у Вас то она у меня заполняет повторяясь все нижнее пространство под сообщением.

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

<li class="{postrow.THANKS_IMG}"><a href="{postrow.THANKS_LINK}" title="{postrow.THANK_ALT}{postrow.POST_AUTHOR}"></a></li>
а если пробую вариант из 0.4.0 то она не отображается вообще

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

<a href="{postrow.THANKS_LINK}" title="{postrow.THANK_ALT}{postrow.POST_AUTHOR}"><img src="{T_IMAGESET_PATH}{postrow.THANKS_IMG}"  /></a>
в общем как правильно ее прописать чтоб она нормально отображалась?
Спасибо
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 14 лет 4 месяца
Откуда: Питер
Благодарил (а): 3 раза
Поблагодарили: 454 раза

Re: Thanks for post (Спасибо за пост)

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

!((( ALEX )))! писал(а):решил обновиться с версии 0.4.0 на 1.2.4
Версии 040 не было. Первая версия была 1.0.0
А Thank Post MOD ver 040 - это совсем другой МОД, который давно заброшен автором Geoffrey Craft. http://www.phpbb.com/community/viewtopi ... 0&t=543797

Собственно, мой мод родился, когда по просьбам трудящихся попытался доработать этот мод, поэтому и были инструкции с установкой "поверх" мода 040. Но чем дальше в лес, тем толще партизаны... С версии 1.2.5 поддержка установки поверх 040 прекращена. (судя по вашему опыту, нужно было прекратить ещё раньше).
!((( ALEX )))! писал(а):выдало ошибку не знаю должно ли так быть, остальные запросы выполнились без ошибок, насколько это критично?
Этот запрос создаёт первичный ключ в таблице, который не даёт создаваться дублирующим записям. В МОДе 040 это не было учтено.
!((( ALEX )))! писал(а):в руководстве по обновлению файла viewtopic.php нету:
Руководствуйтесь установкой с нуля. Этот фрагмент добавляет возможность благодорить только за первый пост темы.
!((( ALEX )))! писал(а):вот как в установке с нуля:
Руководствуйтесь установкой с нуля.
!((( ALEX )))! писал(а):могли ли часть спасибо потеряться после апдейта?
Всё хранится в таблице phpbb_thanks, теряться нечему.
!((( ALEX )))! писал(а):Еще не понятно почему разнятся данные:
Последствия МОДа 040, когда за один и тот же пост, один и тот же пользователь мог благодарить неоднократно.
!((( ALEX )))! писал(а):в общем как правильно ее прописать чтоб она нормально отображалась?
У вас на скрине кнопка вообще не от версии 1.2.4
Попробуйте так

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

<ul class="profile-icons"><li class="{postrow.THANKS_IMG}"><a href="{postrow.THANKS_LINK}" title="{postrow.THANK_ALT}{postrow.POST_AUTHOR}"></a></li></ul>
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
!((( ALEX )))!
phpBB 1.4.4
Сообщения: 136
Стаж: 12 лет 5 месяцев
Поблагодарили: 2 раза

Re: Thanks for post (Спасибо за пост)

Сообщение !((( ALEX )))! »

Палыч писал(а):А Thank Post MOD ver 040 - это совсем другой МОД,
Знаю но так как была инструкция по обновлению решил обновиться)
Палыч писал(а):Этот запрос создаёт первичный ключ в таблице, который не даёт создаваться дублирующим записям. В МОДе 040 это не было учтено.
Можно уточнить, нужно ли мне принимать какие-то меры? например вручную проставить первичный ключ? если да то как? (просто не очень разбираюсь в БД)
Палыч писал(а):Попробуйте так
Да спасибо, все получилось)

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