[3.2][3.3] Thanks for posts

Все расширения, созданные нашим сообществом для phpBB, как находящиеся в разработке, так и прошедшие валидацию на официальном сайте phpbb.com, будут анонсированы тут. Вся техническая поддержка по этим расширениям оказывается в этом форуме.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x/3.3.x | FAQ | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16865
Стаж: 18 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 543 раза
Поблагодарили: 1668 раз

[3.2][3.3] Thanks for posts

Сообщение rxu »

Обсуждаем портирование мода Thanks for post (Rating edition) Палыча в расширение для phpBB 3.2/3.3.
Копировать в папку: ext/gfksx/thanksforposts (все символы имени папки в нижнем регистре).

Страница на официальном сайте (версия 2.1.1, прошла валидацию): https://www.phpbb.com/customise/db/exte ... r_posts_2/
Версия для phpBB 3.3 в репозитории: https://github.com/rxu/thanks_for_posts ... elop-3.3.x

Внимание: начиная с версии 2.1.0, AJAX внедрен в ядро расширения, дополнение Addon for thanks for posts не требуется и может привести к его неработоспособности. При обновлении с предыдущих версий дополнение Addon for thanks for posts необходимо предварительно отключить.

Внимание: начиная с версии 2.0.4, имя расширения изменено на gfksx/thanksforposts (ранее - gfksx/ThanksForPosts).
Для обновления с более ранних версий необходимо: 
  • Отключить расширение gfksx/ThanksForPosts
  • Создать резервную копию таблицы базы данных phpbb_thanks (префикс phpbb_ дан для примера)
  • Удалить данные расширения gfksx/ThanksForPosts
  • Удалить папку ext/gfksx/ThanksForPosts с сервера
  • Восстановить таблицу базы данных phpbb_thanks из резервной копии (префикс phpbb_ дан для примера)
  • Загрузить файлы нового расширения версии 2.0.4+ в папку ext/gfksx/thanksforposts (все символы имени папки в нижнем регистре)
  • Включить расширение в администраторском разделе
Для версий Thanks for posts ниже, чем 2.1.0, AJAX дополнение: 
Позволяет выдавать благодарности без перезагрузки страницы: Addon for thanks for posts by Алг.
Исходный код: https://github.com/alg5/addonforthanksforposts
Копировать в папку: /ext/alg/addonforthanksforposts/
Внимание: вышеозначенное дополнение может не работать с основным расширением версии 2.0.4 без следующих правок: Re: [dev] Thanks for posts
Для совместимости с версией 2.0.7 требуются следующие правки:
https://github.com/alg5/addonforthanksf ... l/19/files
------------------------
Вопрос-ответ:
Q. Как сделать так чтобы гости видели список поблагодаривших за сообщение при просмотре темы?
W. Разрешить в форумных правах доступа(Или роль "Доступ только для чтения") гостям благодарить за сообщение. Благодарить не смогут, а видеть список поблагодаривших будут.

Q. Как сделать так чтобы гости смогли благодарить за сообщение?
W. В этом нет практического смысла. В phpBB гость - это один пользователь. Соответственно, если любой один гость поблагодарит, следующий только сможет отозвать благодарность, и так по кругу.

Последний раз редактировалось rxu 20.02.2025 16:29, всего редактировалось 2 раза.
Изображение
Перенесено из форума Бета-версии расширений для phpBB 3.1.x в форум Анонсы и поддержка расширений для phpBB 3.1.x 11.07.2015 12:49 модератором LavIgor

Аватара пользователя
Leo Angel
phpBB 2.0.7
Сообщения: 585
Стаж: 7 лет 1 месяц
Благодарил (а): 195 раз
Поблагодарили: 63 раза

Re: [3.2][3.3] Thanks for posts

Сообщение Leo Angel »

Прошу прощения, если где-то уже описано. Не нашёл.
А могут ли гости благодарить за сообщение?
И если да, то где эта опция включается?
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12722
Стаж: 13 лет 7 месяцев
Благодарил (а): 159 раз
Поблагодарили: 2265 раз

Re: [3.2][3.3] Thanks for posts

Сообщение Татьяна5 »

Leo Angel, не могут
Аватара пользователя
Leo Angel
phpBB 2.0.7
Сообщения: 585
Стаж: 7 лет 1 месяц
Благодарил (а): 195 раз
Поблагодарили: 63 раза

Re: [3.2][3.3] Thanks for posts

Сообщение Leo Angel »

Татьяна5, спасибо.
Жалко...

Отправлено спустя 2 минуты 50 секунд:
И через какое-другое расширение тоже?
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16865
Стаж: 18 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 543 раза
Поблагодарили: 1668 раз

Re: [3.2][3.3] Thanks for posts

Сообщение rxu »

Leo Angel, в этой нет практического смысла. В phpBB гость - это один пользователь. Соответственно, если любой один гость поблагодарит, следующий только сможет отозвать благодарность, и так по кругу.
Изображение
Аватара пользователя
aknctn
phpBB 1.4.0
Сообщения: 32
Стаж: 4 года 6 месяцев
Благодарил (а): 6 раз
Поблагодарили: 2 раза

Re: [3.2][3.3] Thanks for posts

Сообщение aknctn »

Можно ли отображать список благодарностей за темы на главной странице, а не на внешней странице? Как и 10 тем, которые получили наибольшее количество благодарностей.

Использовался яндекс-перевод.
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16865
Стаж: 18 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 543 раза
Поблагодарили: 1668 раз

Re: [3.2][3.3] Thanks for posts

Сообщение rxu »

Такой функции в данном расширении не предусмотрено.
Изображение
Аватара пользователя
romaamor
phpBB 3.0.6
Сообщения: 2329
Стаж: 12 лет 11 месяцев
Откуда: Одесса
Благодарил (а): 610 раз
Поблагодарили: 143 раза

Re: [3.2][3.3] Thanks for posts

Сообщение romaamor »

А какие для этого расширения должны быть включены модули на сервере ? А то перенёс один из форумов на другой хостинг и при нажатии на кнопку не какой реакции. Кнопка не активная.

Отправлено спустя 22 минуты 13 секунд:
Вопрос снимается. Это не работает Addon for Thanks for posts.
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16865
Стаж: 18 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 543 раза
Поблагодарили: 1668 раз

Re: [3.2][3.3] Thanks for posts

Сообщение rxu »

В этой ветке https://github.com/rxu/thanks_for_posts ... ify-thanks начато внедрение встроенной "аяксификации" в расширение. Продвинутые пользователи могут потестировать. [3.1][3.2] AddonForThanksForPosts надо предварительно отключать (при наличии).
Изображение
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16865
Стаж: 18 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 543 раза
Поблагодарили: 1668 раз

Re: [3.2][3.3] Thanks for posts

Сообщение rxu »

rxu писал(а): 06.04.2024 6:53 начато внедрение встроенной "аяксификации" в расширение
На данном этапе окончено и залито в основную ветку develop-3.2.x. Основной функционал реализован (добавление/удаление благодарностей с обработкой списков поблагодаривших и рейтинга в каждом сообщении на странице). Всплывашки (как в аддоне) нет.
Изображение
Аватара пользователя
romaamor
phpBB 3.0.6
Сообщения: 2329
Стаж: 12 лет 11 месяцев
Откуда: Одесса
Благодарил (а): 610 раз
Поблагодарили: 143 раза

Re: [3.2][3.3] Thanks for posts

Сообщение romaamor »

Добрый вечер.
А можно сделать так, что бы пока пользователь не нажал спасибо, то не смог скачать файл с поста ?
Последний раз редактировалось romaamor 13.07.2024 0:59, всего редактировалось 1 раз.
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16865
Стаж: 18 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 543 раза
Поблагодарили: 1668 раз

Re: [3.2][3.3] Thanks for posts

Сообщение rxu »

Отдельным расширением - в теории да.
Изображение
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12722
Стаж: 13 лет 7 месяцев
Благодарил (а): 159 раз
Поблагодарили: 2265 раз

Re: [3.2][3.3] Thanks for posts

Сообщение Татьяна5 »

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

<script src="./ext/phpbb/boardannouncements/styles/all/template/js/boardannouncements.js?assets_version=998"></script>
<script src="./ext/gfksx/thanksforposts/styles/prosilver/template/ajax.js?assets_version=998"></script>
<script src="./ext/gfksx/thanksforposts/styles/prosilver/template/ajax.js?assets_version=998"></script>
<script src="./ext/gfksx/thanksforposts/styles/prosilver/template/ajax.js?assets_version=998"></script>
<script src="./ext/gfksx/thanksforposts/styles/prosilver/template/ajax.js?assets_version=998"></script>
<script src="./ext/gfksx/thanksforposts/styles/prosilver/template/ajax.js?assets_version=998"></script>
<script src="./ext/gfksx/thanksforposts/styles/prosilver/template/ajax.js?assets_version=998"></script>
<script src="./ext/gfksx/thanksforposts/styles/prosilver/template/ajax.js?assets_version=998"></script>
<script src="./ext/gfksx/thanksforposts/styles/prosilver/template/ajax.js?assets_version=998"></script>
<script src="./ext/gfksx/thanksforposts/styles/prosilver/template/ajax.js?assets_version=998"></script>
<script src="./ext/gfksx/thanksforposts/styles/prosilver/template/ajax.js?assets_version=998"></script>
<script src="./ext/gfksx/thanksforposts/styles/prosilver/template/ajax.js?assets_version=998"></script>
<script src="./ext/gfksx/thanksforposts/styles/prosilver/template/ajax.js?assets_version=998"></script>
<script src="./ext/gfksx/thanksforposts/styles/prosilver/template/ajax.js?assets_version=998"></script>
<script src="./assets/javascript/editor.js?assets_version=998"></script>
Здесь, из исходного кода страницы. Закоммичено оказалось вот это...
Скрипт подключается в цикле. И похоже что ломает часть функционала QuickReply этим (удивительно что не большую)

Отправлено спустя 1 час 8 минут 48 секунд:
Вариант исправления (на гитхаб - некогда...):
gfksx\thanksforposts\styles\prosilver\template\event\viewtopic_body_post_buttons_after.html
3-я строка, заменить на

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

{% if S_AJAX_ENABLED %}{% if definition.S_THANKS_AJAX != '1' %}{% DEFINE S_THANKS_AJAX = '1' %}{% endif %}{% endif %}
overall_footer_after.html (новый файл)

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

{% if definition.S_THANKS_AJAX %}{% INCLUDEJS '@gfksx_thanksforposts/ajax.js' %}{% endif %}
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16865
Стаж: 18 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 543 раза
Поблагодарили: 1668 раз

Re: [3.2][3.3] Thanks for posts

Сообщение rxu »

Татьяна5 писал(а): 14.07.2024 21:08 Скрипт подключается в цикле
А почему? Не должно такого быть.

Отправлено спустя 4 минуты 30 секунд:
Понятно. Подключений столько, сколько постов.

Отправлено спустя 1 час 47 минут 28 секунд:
Исправлено, должно работать корректно.
Изображение
romeo_piter
phpBB 2.0.22
Сообщения: 1369
Стаж: 15 лет 11 месяцев
Благодарил (а): 168 раз
Поблагодарили: 19 раз

Re: [3.2][3.3] Thanks for posts

Сообщение romeo_piter »

Как изменить иконку при наличии лайка? Вместо пальца вниз (который вводит в заблуждение имитируя дизлайк) сделать просто изменение иконки цветом (как в соцсетях, давал лайк - окрашена, нет - серая)?

Судя по всему, события аякс навешаны непосредственно на класс.
Попытка изменить этот код:
<i class="icon {% if postrow.THANKED %}fa-thumbs-o-down{% else %}fa-thumbs-o-up{% endif %} fa-fw" aria-hidden="true"></i>

например на это:
<i class="icon {% if postrow.THANKED %}fa-thumbs-o-up{% else %}fa-thumbs-o-up{% endif %} fa-fw" aria-hidden="true"></i>

Приводит к неработоспособности отмены лайка.
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16865
Стаж: 18 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 543 раза
Поблагодарили: 1668 раз

Re: [3.2][3.3] Thanks for posts

Сообщение rxu »

romeo_piter писал(а): 09.08.2024 17:18 события аякс навешаны непосредственно на класс
Да.

Решение: переписать ajax. Например, в строке

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

$(thanksId + ' > i').removeClass(mode == 'insert' ? 'fa-thumbs-o-up' : 'fa-thumbs-o-down').addClass(mode == 'insert' ? "fa-thumbs-o-down" : 'fa-thumbs-o-up');

Вместо удаления/добавление класса сделать только добавление/удаление окраски цветом, например:

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

	$(thanksId + ' > i').css('color', mode == 'insert' ? 'red' : '');
Изображение

Вернуться в «Анонсы и поддержка расширений для phpBB»