Страница 4 из 13

UserTopics

Добавлено: 12 сен 2014, 15:48
Alecto
Татьяна5 писал(а):QR_BBPOST ;, - это как?
я думал, так можно ((((((

включил

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

Fatal error: Uncaught exception 'Symfony\Component\Yaml\Exception\ParseException' with message 'Indentation problem at line 7 (near " tags:").' in /home/motobra2/public_html/vendor/symfony/yaml/Symfony/Component/Yaml/Parser.php:342 Stack trace: #0 /home/motobra2/public_html/vendor/symfony/yaml/Symfony/Component/Yaml/Parser.php(186): Symfony\Component\Yaml\Parser->getNextEmbedBlock() #1 /home/motobra2/public_html/vendor/symfony/yaml/Symfony/Component/Yaml/Parser.php(186): Symfony\Component\Yaml\Parser->parse('class: alecto\\P...', false, false) #2 /home/motobra2/public_html/vendor/symfony/yaml/Symfony/Component/Yaml/Parser.php(186): Symfony\Component\Yaml\Parser->parse('alecto.PrimeUse...', false, false) #3 /home/motobra2/public_html/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Loader/YamlFileLoader.php(260): Symfony\Component\Yaml\Parser->parse('services:\n a...') #4 /home/motobra2/public_html/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Loader/YamlFileLoader.ph in /home/motobra2/public_html/vendor/symfony/yaml/Symfony/Component/Yaml/Parser.php on line 342

Ваши темы

Добавлено: 12 сен 2014, 16:00
Татьяна5
Alecto писал(а):QR_BBPOST я думал, так можно
Точка с запятой это конец строки. Конца строки в массиве быть не может.
Alecto писал(а):QR_BBPOST Indentation problem at line 7 (near " tags:").'
"Неправильный отступ на строке 7 (около tags:)"
tags: - это из services.yml. Скорей всего на 7 строке есть знаки табуляции (notepad++ ими всё выравнивает по-умолчанию), а в файлах .yml допускаются только пробелы

Ваши темы

Добавлено: 12 сен 2014, 16:08
Alecto
Татьяна5 писал(а):QR_BBPOST на 7 строке есть знаки табуляции
похоже так и было.
выровнял пробелами - ошибка исчезла.
Татьяна5 писал(а):QR_BBPOST Точка с запятой это конец строки.
поставил в конце запятую, правда айди в шаблоне не получил

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

<?php
/**
*
* @package myextension
* @copyright (c) 2014 Nickname
* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
*
*/

namespace alecto\PrimeUserTopics\event;

use Symfony\Component\EventDispatcher\EventSubscriberInterface;

class listener implements EventSubscriberInterface
{

	public function __construct(\phpbb\template\template $template, \phpbb\request\request $request)
	{
		$this->template = $template;
		$this->request = $request;
	}

	static public function getSubscribedEvents()
	{
		return array(
			'core.user_setup'					=>	'load_language_on_setup',
		);
	}

	public function page_header_after($event)
	{
		$this->template->assign_vars(array(
			'PROFILE_USER_ID'	=> $this->request->variable('u', 0),
			        ));	
	}

	public function load_language_on_setup($event)
	{
		$lang_set_ext = $event['lang_set_ext'];
		$lang_set_ext[] = array(
			'ext_name' => 'alecto/PrimeUserTopics',
			'lang_set' => 'PrimeUserTopics',
		);
		$event['lang_set_ext'] = $lang_set_ext;
	}
}
хотя бы ошибок никаких нет.

в html добавил так

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

{PROFILE_USER_ID}

PrimeUserTopics

Добавлено: 12 сен 2014, 16:14
Татьяна5

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

   static public function getSubscribedEvents()
   {
      return array(
         'core.user_setup'               =>   'load_language_on_setup',
      );
   }
На какое событие здесь подписан метод page_header_after?

PrimeUserTopics

Добавлено: 12 сен 2014, 16:20
Alecto

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

			'core.memberlist_view_profile'			=> 'page_header_after',
вот так сделал.
вытянул из спасибок.
правильно или нет - не знаю, но вроде как айди в шаблоне появился.

PrimeUserTopics

Добавлено: 12 сен 2014, 16:25
Татьяна5
Alecto писал(а):QR_BBPOST вытянул из спасибок
Есть https://wiki.phpbb.com/Event_List (похоже, core.memberlist_view_profile это единственное событие в memberlist.php)

PrimeUserTopics

Добавлено: 12 сен 2014, 16:29
Alecto
Untitled-1.jpg
вот так никак не удастся вставить?

если нет, может тогда заморочиться и сделать по аналогии с сообщениями:
Всего тем: XXX | Найти темы пользователя
тогда хоть логично выглядеть будет.

или так как сейчас - смотрится логично?

PrimeUserTopics

Добавлено: 12 сен 2014, 16:51
Татьяна5
Alecto писал(а):QR_BBPOST вот так никак не удастся вставить?
На jQuery возможно (по-моему, довольно запутанная конструкция там выходит)
Alecto писал(а):QR_BBPOST Всего тем: XXX | Найти темы пользователя
Выполнить sql-запрос подсчитывающий количество тем пользователя и вывести значение в шаблон

Отправлено спустя 11 минут 24 секунды:

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

<a href="./search.php?search_id=egosearch&sr=topics&sf=firstpost">
Это ошибка.
1. Если форум установлен в подпапке, ссылка работать не будет
2. Если на форуме неправильно настроены куки, то при переходе по такой ссылке пользователя разлогинит
(Про ошибку вёрстки,

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

& вместо &
, молчу)[/color]

Функция Append sid
И в конструктор надо будет ещё передать $phpbb_root_path и $php_ext ($php_ext в 3.1 = $phpEx в 3.0)

PrimeUserTopics

Добавлено: 12 сен 2014, 16:52
Alecto

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

SELECT * FROM `phpbb_posts` WHERE `poster_id`=3697 
вот так я выбираю все посты пользователя, но не могу найти по какому признаку проверять, что первый пост темы принадлежит пользователю?

PrimeUserTopics

Добавлено: 12 сен 2014, 16:55
Татьяна5
Есть ещё phpbb_topics (таблица по объёму всегда меньше phpbb_posts, значит и запрос будет легче)
Подсчитать в sql-запросе сколько строк соответствуют условию - COUNT