Магазин
Правила Ответы на вопросы Конфиденциальность
Магазин
Правила Ответы на вопросы Конфиденциальность
  • Быстрые действия Ярлыки
    Общие действия
    Связаться с администрацией
    • Бот

       

Минимоды и хаки для phpBB3

  • Список форумов
  • phpBB 3.0
  • Другие моды для phpBB3
  • Минимоды и хаки для phpBB3

Отображение личных сообщений от определённого пользователя

Небольшие моды и хаки для форума phpBB3
Правила форума
При размещении мода/статьи взятой с другого форума/сайта обязательно необходимо указывать первоисточник сообщения.

1 сообщение
 • Страница 1 из 1
Просмотры: 735 • 
Аватара пользователя
PPK
Администратор
Сообщения: 10514
Зарегистрирован: 21 мар 2009, 17:13
Сообщение 15 фев 2011, 14:09
Мод добавляет в личный раздел пользователя на страницу списка личных сообщений ссылку, которая позволяет отобразить личные сообщения только от определённого пользователя, так же указанная ссылка добавляется и в профиль каждого пользователя, скриншоты:

профиль пользователя

список личных сообщений

результат


/language/ru/common.php перед

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

));

?>
добавить

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

	//PPK UPM
	'SHOW_AUTHOR_MESSAGES' => 'все лс от пользователя',
	'SHOW_ALL_MESSAGES' => 'все лс',
	//PPK UPM
/includes/ucp/ucp_pm_viewfolder.php после

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

$submit_export = (isset($_POST['submit_export'])) ? true : false;
добавить

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

	//PPK UPM
	$from_u=request_var('from_u', 0);
	$from_u_array=array();
	//PPK UPM
после

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

				// Send vars to template
				$template->assign_block_vars('messagerow', array(
добавить

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

					//PPK UPM
					'AUTHOR_ALL_MESSAGE' => !isset($from_u_array[$row['author_id']]) ? append_sid("{$phpbb_root_path}ucp.$phpEx", "i=pm&mode=view&action=view_folder&f=$folder_id&from_u=".($from_u ? 0 : $row['author_id'])) : false,
					'S_AUTHOR_ALL' => $from_u ? true : false,
					//PPK UPM
перед

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

			}
			unset($folder_info['rowset']);
добавить

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

$from_u_array[$row['author_id']]=1;//PPK UPM
перед

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

// Additional vars later, pm ordering is mostly different from post ordering. :/
добавить

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

$from_u=request_var('from_u', 0);//PPK UPM
заменить

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

AND p.message_time >= $min_post_time";
на

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

AND p.message_time >= $min_post_time".($from_u ? " AND p.author_id='{$from_u}'" : '');//PPK UPM
после

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

		$pm_count = (!empty($folder[$folder_id]['num_messages'])) ? $folder[$folder_id]['num_messages'] : 0;
		$sql_limit_time = '';
добавить

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

		//PPK UPM
		if($from_u)
		{
			$sql = 'SELECT COUNT(t.msg_id) AS pm_count
				FROM ' . PRIVMSGS_TO_TABLE . ' t, ' . PRIVMSGS_TABLE . " p
				WHERE $folder_sql
					AND t.user_id = $user_id
					AND t.msg_id = p.msg_id
					AND p.author_id='{$from_u}'";
			$result = $db->sql_query_limit($sql, 1);
			$pm_count = (int) $db->sql_fetchfield('pm_count');
			$db->sql_freeresult($result);
		}
		//PPK UPM
заменить

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

'PAGINATION'		=> generate_pagination(append_sid("{$phpbb_root_path}ucp.$phpEx", "i=pm&mode=view&action=view_folder&f=$folder_id&$u_sort_param"), $pm_count, $config['topics_per_page'], $start),
на

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

'PAGINATION'		=> generate_pagination(append_sid("{$phpbb_root_path}ucp.$phpEx", "i=pm&mode=view&action=view_folder&f=$folder_id&$u_sort_param".($from_u ? "&from_u={$from_u}" : '')), $pm_count, $config['topics_per_page'], $start),//PPK UPM
заменить

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

'S_PM_ACTION'		=> append_sid("{$phpbb_root_path}ucp.$phpEx", "i=pm&mode=view&action=view_folder&f=$folder_id" . (($start !== 0) ? "&start=$start" : '')),
на

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

'S_PM_ACTION'		=> append_sid("{$phpbb_root_path}ucp.$phpEx", "i=pm&mode=view&action=view_folder&f=$folder_id" . (($start !== 0) ? "&start=$start" : '').($from_u ? "&from_u={$from_u}" : '')),//PPK UPM
заменить

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

AND t.msg_id = p.msg_id
на

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

AND t.msg_id = p.msg_id".($from_u ? " AND p.author_id='{$from_u}'" : '')."
/memberlist.php перед

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

'L_POSTS_IN_QUEUE'	=> $user->lang('NUM_POSTS_IN_QUEUE', $member['posts_in_queue']),
добавить

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

			'AUTHOR_ALL_MESSAGE' => append_sid("{$phpbb_root_path}ucp.$phpEx", "i=pm&mode=view&action=view_folder&f=0&from_u=".$member['user_id']),//PPK UPM
/styles/prosilver/template/ucp_pm_viewfolder.html после

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

<!-- IF S_SHOW_RECIPIENTS -->{L_MESSAGE_TO} {messagerow.RECIPIENTS}<!-- ELSE -->{L_MESSAGE_BY_AUTHOR} {messagerow.MESSAGE_AUTHOR_FULL}
добавить

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

<!-- IF messagerow.AUTHOR_ALL_MESSAGE --> (<a href="{messagerow.AUTHOR_ALL_MESSAGE}"><!-- IF messagerow.S_AUTHOR_ALL -->{L_SHOW_ALL_MESSAGES}<!-- ELSE -->{L_SHOW_AUTHOR_MESSAGES}<!-- ENDIF --></a>) <!-- ENDIF -->
/styles/prosilver/template/memberlist_view.html после

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

<a href="{U_PM}">{L_SEND_PRIVATE_MESSAGE}</a>
добавить

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

<!-- IF AUTHOR_ALL_MESSAGE --> (<a href="{AUTHOR_ALL_MESSAGE}">{L_SHOW_AUTHOR_MESSAGES}</a>)<!-- ENDIF -->
/styles/subsilver2/template/ucp_pm_viewfolder.html после

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

<!-- IF S_SHOW_RECIPIENTS -->{messagerow.RECIPIENTS}<!-- ELSE -->{messagerow.MESSAGE_AUTHOR_FULL}<!-- ENDIF -->
добавить

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

<!-- IF messagerow.AUTHOR_ALL_MESSAGE --><br />(<a href="{messagerow.AUTHOR_ALL_MESSAGE}"><!-- IF messagerow.S_AUTHOR_ALL -->{L_SHOW_ALL_MESSAGES}<!-- ELSE -->{L_SHOW_AUTHOR_MESSAGES}<!-- ENDIF --></a>) <!-- ENDIF -->
/styles/subsilver2/template/memberlist_view.html после

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

<a href="{U_PM}">{PM_IMG}</a>
добавить

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

<!-- IF AUTHOR_ALL_MESSAGE --> (<a href="{AUTHOR_ALL_MESSAGE}">{L_SHOW_AUTHOR_MESSAGES}</a>)<!-- ENDIF -->
Обновить переделанные стили, очистить кеш.
PPK
1 сообщение
 • Страница 1 из 1

Вернуться в «Минимоды и хаки для phpBB3»

Time: 0.000s | Queries: 0 | Peak Memory Usage: 0.00 МБ | GZIP: Unknown | SQL Explain
  • Список форумов
2018, made with by ThemeKita Создано на основе phpBB® Forum Software © phpBB Limited Русская поддержка phpBB (C) 2009-2025 @ PPK
  • Часовой пояс: UTC+04:00
Участники темы
Список форумов Участники темы
Перейти
Сайт ↳   Новости по сайту ↳   Новости обновлений ↳   Вопросы по сайту ↳   Non-russian speakers forum phpBB 3.1-3.3 ↳   Вопросы по phpBB 3.1-3.3 ↳   Расширения для phpBB 3.1-3.3 ↳   Условно-бесплатные расширения ↳   Платные расширения ↳   Расширения для подписчиков ↳   Расширения в разработке ↳   База расширений ↳   Стили для phpBB 3.1-3.3 ↳   Переводы расширений для phpBB3.1-3.3 ↳   Поиск и запросы расширений ↳   Запросы расширений, функционала и переводов для подписчиков ppkBB3cker ↳   Новости по трекеру и обновлениям ↳   Ошибки, проблемы, недочёты ↳   Предложения по новым функциям и возможностям ↳   Вопросы, ответы и примеры решений ↳   Моды и стили для трекера ↳   Готовые стили для трекера ↳   Запросы стилей для трекера ↳   Стили в разработке ↳   Готовые моды для трекера ↳   Запросы модов для трекера ↳   Моды в разработке ↳   Остальное ↳   F.A.Q. ↳   Ваши трекеры ↳   Оффтопик xbtBB3cker ↳   Новости по трекеру и обновлениям ↳   Вопросы, ответы, ошибки и обсуждение phpBB 3.0 ↳   Другие моды для phpBB3 ↳   Минимоды и хаки для phpBB3 ↳   Вопросы по phpBB3 ↳   phpBB3 ppkBB3cker Edition ↳   Платные услуги, моды, стили ↳   BB2Spoiler/BB3Spoiler ↳   BB3Topics ↳   BB3Sape ↳   BB3UserAgentInfo