Задать в качестве одного из параметров функции
constructor
в перехватчике.Задать в качестве одного из параметров функции
constructor
в перехватчике.core.viewforum_get_topic_ids_data
Ну ё-моё. По-моему, тут уже ссылки давали на мануалы по расширениям.
В конец - это куда? Файлы движка не правят. Совсем.
fighting.php
Вы можете залезть в код ядра, какие проблемы. Но к поддержке phpBB это не относится.
И поддержки потом тоже не будет.
Код: Выделить всё
services:
forbiddentopic.listener:
class: forbiddentopic\event\listener
arguments:
- @user
tags:
- { name: event.listener }
Код: Выделить всё
<?php
class listener implements EventSubscriberInterface
{
/**
* Constructor
*
* @param \phpbb\config\config $config Config object
*/
public function __construct( \phpbb\user $user )
{
$this->user = $user;
}
static public function getSubscribedEvents()
{
if (!$this->user->data['is_registered'])
{
$sql_ary = $event['sql_ary'];
$sql_ary['WHERE'] .= ' AND t.topic_id <> 49';
$event['sql_ary'] = $sql_ary;
}
}
}
/>
Существенно.
Есть немного. У расширения должна быть вполне конкретная структура папок, и namespace в скриптах. А вот это
/>
вообще не в тему.И вот тут совсем не так всё.pantheonptz писал(а): 29.10.2017 18:01static public function getSubscribedEvents()
{
if (!$this->user->data['is_registered'])
getSubscribedEvents
надо "подписаться" на событие движка и назначить на него какую-нибудь функцию (по факту - одна строчка), а саму функцию с этим кодом разместить ниже