Страница 4 из 13
UserTopics
Добавлено: 12 сен 2014, 15:48
Alecto
я думал, так можно ((((((
включил
Код: Выделить всё
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 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 добавил так
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
вот так никак не удастся вставить?
если нет, может тогда заморочиться и сделать по аналогии с сообщениями:
Всего тем: 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