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

[3.2][3.3] Thanks for posts

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

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

[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 11.12.2024 10:54, всего редактировалось 2 раза.
Изображение
Перенесено из форума Бета-версии расширений для phpBB 3.1.x в форум Анонсы и поддержка расширений для phpBB 3.1.x 11.07.2015 12:49 модератором LavIgor

Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16756
Стаж: 18 лет 7 месяцев
Откуда: Красноярск
Благодарил (а): 563 раза
Поблагодарили: 1867 раз

Re: [dev] Thanks for posts

Сообщение rxu »

Тогда обновите расширение из дефолтной ветки репозитория (просто перейдите в него и скачайте архив).

Отправлено спустя 19 секунд:
На всякий случай: https://github.com/rxu/thanks_for_posts ... elop-3.2.x
Изображение
Аватара пользователя
KRAT
phpBB 1.4.2
Сообщения: 63
Стаж: 7 лет 8 месяцев
Благодарил (а): 56 раз
Поблагодарили: 4 раза

Re: [dev] Thanks for posts

Сообщение KRAT »

Подскажите пожалуйста. После того как я скопировал файлы Версии для phpBB 3.2 в папку
public_html/ext/gfksx/ThanksForPosts/language/ru
у меня там остался старый файл back, вот его содержание:
 

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

<?php
/**
*
* Thanks For Posts extension for the phpBB Forum Software package.
*
* @copyright (c) 2013 phpBB Limited <https://www.phpbb.com>
* @license GNU General Public License, version 2 (GPL-2.0)
*
*/

/**
* DO NOT CHANGE
*/
if (!defined('IN_PHPBB'))
{
	exit;
}

if (empty($lang) || !is_array($lang))
{
	$lang = array();
}

// DEVELOPERS PLEASE NOTE
//
// All language files should use UTF-8 as their encoding and the files must not contain a BOM.
//
// Placeholders can now contain order information, e.g. instead of
// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows
// translators to re-order the output of data while ensuring it remains correct
//
// You do not need this where single placeholders are used, e.g. 'Message %d' is fine
// equally where a string contains only two placeholders which are used to wrap text
// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine
//
// Some characters you may want to copy&paste:
// ’ » “ ” …
//

$lang = array_merge($lang, array(
	'CLEAR_LIST_THANKS'			=> 'Очистить список благодарностей',
	'CLEAR_LIST_THANKS_CONFIRM'	=> 'Вы действительно хотите очистить список благодарностей пользователя?',
	'CLEAR_LIST_THANKS_GIVE'	=> 'Cписок благодарностей, выданных пользователем, очищен.',
	'CLEAR_LIST_THANKS_POST'	=> 'Список благодарностей в сообщении очищен.',
	'CLEAR_LIST_THANKS_RECEIVE'	=> 'Список благодарностей, полученных пользователем, очищен.',

	'DISABLE_REMOVE_THANKS'		=> 'Удаление благодарностей отключено администратором.',

	'GIVEN'						=> 'Благодарил&nbsp;(а)',
	'GLOBAL_INCORRECT_THANKS'	=> 'Вы не можете благодарить в важных темах, не имеющих привязки к конкретному форуму.',
	'GRATITUDES'				=> 'Благодарности',

	'INCORRECT_THANKS'			=> 'Некорректные параметры запрошенного действия',

	'JUMP_TO_FORUM'				=> 'Перейти в форум',
	'JUMP_TO_TOPIC'				=> 'Перейти в тему',

	'FOR_MESSAGE'				=> ' за сообщение',
	'FURTHER_THANKS'     	    => ' и ещё один',
	'FURTHER_THANKS_PL'         => ' и ещё %d',

	'NO_VIEW_USERS_THANKS'		=> 'У вас нет доступа к просмотру списка благодарностей.',

	'NOTIFICATION_TYPE_THANKS'	=> 'Вас поблагодарили за сообщение',

	'NOTIFICATION_THANKS_GIVE'	=> array(
		1 => '<strong>Получена благодарность</strong> от пользователя %1$s за сообщение:',
		2 => '<strong>Получены благодарности</strong> от пользователей %1$s за сообщение:',
	),
	'NOTIFICATION_THANKS_REMOVE'=> array(
		1 => '<strong>Удалена благодарность</strong> от пользователя %1$s за сообщение:',
		2 => '<strong>Удалены благодарности</strong> от пользователей %1$s за сообщение:',
	),
	'NOTIFICATION_TYPE_THANKS_GIVE'		=> 'Вас поблагодарили за сообщение',
	'NOTIFICATION_TYPE_THANKS_REMOVE'	=> 'Удалена благодарность за ваше сообщение',

	'RECEIVED'					=> 'Поблагодарили',
	'REMOVE_THANKS'				=> 'Отменить благодарность автору: ',
	'REMOVE_THANKS_CONFIRM'		=> 'Вы действительно хотите удалить благодарность?',
	'REMOVE_THANKS_SHORT'		=> 'Отменить благодарность',
	'REPUT'						=> 'Рейтинг',
	'REPUT_TOPLIST'				=> 'Топлист — %d благодарностей',
	'RATING_LOGIN_EXPLAIN'		=> 'Для просмотра топлиста вы должны быть авторизованы',
	'RATING_NO_VIEW_TOPLIST'	=> 'Вы не авторизованы для просмотра топлиста',
	'RATING_VIEW_TOPLIST_NO'	=> 'Топлист пуст или отключен администратором',
	'RATING_FORUM'				=> 'Форум',
	'RATING_POST'				=> 'Сообщение',
	'RATING_TOP_FORUM'			=> 'Рейтинг форумов',
	'RATING_TOP_POST'			=> 'Рейтинг сообщений',
	'RATING_TOP_TOPIC'			=> 'Рейтинг тем',
	'RATING_TOPIC'				=> 'Тема',
//	'RETURN_POST'				=> 'Вернуться к сообщению',

	'THANK'						=> 'раз.',
	'THANK_POST'				=> 'Поблагодарить за сообщение автора: ',
	'THANK_POST_SHORT'			=> 'Поблагодарить',
	'THANK_FROM'				=> 'от',
	'THANK_TEXT_1'				=> 'За это сообщение автора ',
	'THANK_TEXT_2'				=> ' поблагодарил:',
	'THANK_TEXT_2PL'			=> ' поблагодарили (всего %d):',
	'THANKS'					=> array(
		1	=> '%d раз',
		2	=> '%d раза',
		3	=> '%d раз',
	),
	'THANKS_BACK'				=> 'Вернуться к листу благодарностей',
	'THANKS_INFO_GIVE'			=> 'Вы поблагодарили автора сообщения',
	'THANKS_INFO_REMOVE'		=> 'Вы отменили благодарность автору',
	'THANKS_LIST'				=> 'Показать/Скрыть список',
	'THANKS_PM_MES_GIVE'		=> 'поблагодарил вас за сообщение',
	'THANKS_PM_MES_REMOVE'		=> 'отменил благодарность за сообщение',
	'THANKS_PM_SUBJECT_GIVE'	=> 'Благодарность за сообщение',
	'THANKS_PM_SUBJECT_REMOVE'	=> 'Благодарность за сообщение отменена',
	'THANKS_USER'				=> 'Лист благодарностей',

	'THANKS_INSTALLED'			=> 'Благодарность за сообщение',
	'THANKS_INSTALLED_EXPLAIN' 	=> '<strong>ВНИМАНИЕ!<br />Рекомендуется запускать данную установку только после выполнения инструкции по внесению изменений в код файлов конференции (или выполнения установки с помощью AutoMod)!<br />Также настоятельно рекомендуется включить опцию Отображать все результаты (ниже)!</strong>',
	'THANKS_CUSTOM0_FUNCTION'	=> 'Обновление данных в таблице _thanks',
	'THANKS_CUSTOM1_FUNCTION'	=> 'Проверка удаления модуля',
	'THANKS_CUSTOM2_FUNCTION'	=> 'Проверка обновления кеша',
	'TOPLIST'					=> 'Топлист сообщений',
));
Мне этот файл back надо удалить ?
уровень знаний - начинающий. phpBB 3.2.0, Black-Silver-Slim 1.1.0
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12629
Стаж: 13 лет 4 месяца
Благодарил (а): 170 раз
Поблагодарили: 2540 раз

Re: [dev] Thanks for posts

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

KRAT, как хотите. Это бекап файла, создаваемый хостингом
Аватара пользователя
KRAT
phpBB 1.4.2
Сообщения: 63
Стаж: 7 лет 8 месяцев
Благодарил (а): 56 раз
Поблагодарили: 4 раза

Re: [dev] Thanks for posts

Сообщение KRAT »

То есть его удаление ни на что не повлияет ?
уровень знаний - начинающий. phpBB 3.2.0, Black-Silver-Slim 1.1.0
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12629
Стаж: 13 лет 4 месяца
Благодарил (а): 170 раз
Поблагодарили: 2540 раз

Re: [dev] Thanks for posts

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

Да
ciiz1
phpBB 2.0.4
Сообщения: 444
Стаж: 7 лет 4 месяца
Благодарил (а): 100 раз
Поблагодарили: 31 раз

Re: [dev] Thanks for posts

Сообщение ciiz1 »

Помогите пожалуйста, на форуме установлено данное расширение, на форуме в темах отображаются звёздочки в зависимости от количества благодарностей, и максимального количества благодарностей в отдельной теме (ну стандартно как у всех).
Проблема: одна тема была популярно но и все натыкали благодарностей там, теперь всё выглядит некрасиво, у каждой темы количество звёздочек редко переваливает за половину звезды (ну конечно кроме той единственной). Я как только не мудрил нечего не получилось,
Алгоритм хочу вот такой прописать Чтобы считалось не от максимального количества а от медианы умноженной на 2, или среднего умноженного на два. Отображение благодарностей если больше чем от медианы умноженной на 2, или среднего умноженного на два то от медианы умноженной на 2, или среднего умноженного на два, а так всё по умолчанию.

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

// max topic thanks
	public function get_max_topic_thanks()
	{
		if ($this->config['thanks_topic_reput_view'])
		{
			$sql = 'SELECT MAX(tally) AS max_topic_thanks
				FROM (SELECT topic_id, COUNT(*) AS tally FROM ' . $this->thanks_table . ' GROUP BY topic_id) t';
			$result = $this->db->sql_query($sql);
			$this->max_topic_thanks = (int) $this->db->sql_fetchfield('max_topic_thanks');
			$this->db->sql_freeresult($result);
			return $this->max_topic_thanks;
		}
	}

	// max post thanks for toplist
	public function get_max_post_thanks()
	{
		$sql = 'SELECT MAX(tally) AS max_post_thanks
			FROM (SELECT post_id, COUNT(*) AS tally FROM ' . $this->thanks_table . ' GROUP BY post_id) t';
		$result = $this->db->sql_query($sql);
		$this->max_post_thanks = (int) $this->db->sql_fetchfield('max_post_thanks');
		$this->db->sql_freeresult($result);
		return $this->max_post_thanks;
	}
Последний раз редактировалось Sheer 02.11.2017 19:37, всего редактировалось 1 раз.
Причина: bb-код. Когда же вы наконец научтесь пользоваться bb-кодами!!!
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16756
Стаж: 18 лет 7 месяцев
Откуда: Красноярск
Благодарил (а): 563 раза
Поблагодарили: 1867 раз

Re: [dev] Thanks for posts

Сообщение rxu »

Изображение
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12629
Стаж: 13 лет 4 месяца
Благодарил (а): 170 раз
Поблагодарили: 2540 раз

Re: [dev] Thanks for posts

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

rxu, от максимума медиану не посчитать. Там запрос менять надо
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16756
Стаж: 18 лет 7 месяцев
Откуда: Красноярск
Благодарил (а): 563 раза
Поблагодарили: 1867 раз

Re: [dev] Thanks for posts

Сообщение rxu »

От медианы чего?
Изображение
ciiz1
phpBB 2.0.4
Сообщения: 444
Стаж: 7 лет 4 месяца
Благодарил (а): 100 раз
Поблагодарили: 31 раз

Re: [dev] Thanks for posts

Сообщение ciiz1 »

Я с кодами вообще беда 1 класс в первый раз. Но предполагаю в каждой теме считается количество спасибо, находится максимум (почему медиана не найдётся?) Я с Acsses(ом) немного знаком, проблемы вроде медианы найти нет и умножить на два. Я это вроде почти осилил. Но проблема когда количество спасибо больше чем медиана умноженная на 2 звёздочек то больше становится чем установлено в расширении.

Отправлено спустя 3 минуты 13 секунд:
количество спасибо - номер топика
100 - 1
22 - 2
21 - 3
1 - 4
10 - 5
Медиана = 21 как не кстати, в статистке немного разбираюсь
Последний раз редактировалось ciiz1 02.11.2017 20:27, всего редактировалось 1 раз.
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16756
Стаж: 18 лет 7 месяцев
Откуда: Красноярск
Благодарил (а): 563 раза
Поблагодарили: 1867 раз

Re: [dev] Thanks for posts

Сообщение rxu »

Какая такая медиана, тудыть ее через коромысло?
Отбирается максимальное число благодарностей для тем и постов, которое потом используется для расчета репутации каждой темы/поста. Формулу я выше указал по ссылке.
ciiz1 писал(а): 02.11.2017 20:23когда количество спасибо больше чем медиана умноженная на 2 звёздочек то больше становится чем установлено в расширении
Это что за сферический конь в вакууме? Благодарностей не может быть больше максимального, следовательно, звездочек- не больше установленного числа в любой теме. НЕ МОЖЕТ.
Изображение
ciiz1
phpBB 2.0.4
Сообщения: 444
Стаж: 7 лет 4 месяца
Благодарил (а): 100 раз
Поблагодарили: 31 раз

Re: [dev] Thanks for posts

Сообщение ciiz1 »

у меня в одной теме 100 благодарностей, а в среднем 3-10, и соответственно не фига не видно рейтинг тем
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16756
Стаж: 18 лет 7 месяцев
Откуда: Красноярск
Благодарил (а): 563 раза
Поблагодарили: 1867 раз

Re: [dev] Thanks for posts

Сообщение rxu »

Это другое дело совсем.
Можно попробовать в настройках расширения "Опции рейтинга" сделать больше Количество изображений в графической шкале, например.
Изображение
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12629
Стаж: 13 лет 4 месяца
Благодарил (а): 170 раз
Поблагодарили: 2540 раз

Re: [dev] Thanks for posts

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

rxu писал(а): 02.11.2017 20:15От медианы чего?
Медиана ряда количества спасибок за сообщения (и за темы отдельно)
Если навскидку, запрос выходит тяжеленный (с подсчётом количеств всех спасибок при разделении по сообщениям или темам), как упростить не представляю
ciiz1
phpBB 2.0.4
Сообщения: 444
Стаж: 7 лет 4 месяца
Благодарил (а): 100 раз
Поблагодарили: 31 раз

Re: [dev] Thanks for posts

Сообщение ciiz1 »

количество спасибо - номер топика (опечатка, номер темы)
rxu писал(а): 02.11.2017 20:38"Опции рейтинга" сделать больше К
Увеличить количество изображений в графической шкале - помогает, но у меня там ещё и теги не хочется что бы увеличивался размер из-за переноса строки.
Медиану я вроде смогу получить, уже раза четыре начинал делать, с условием что когда больше чем медиана*2 проблема.
У вас нет необходимых прав для просмотра вложений в этом сообщении.

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