context.php: add SearchService

This commit is contained in:
Zankaria 2025-05-23 23:18:42 +02:00
parent 1ce79ec69f
commit 6723070847

View file

@ -1,8 +1,9 @@
<?php
namespace Vichan;
use Vichan\Data\{IpNoteQueries, ReportQueries, UserPostQueries};
use Vichan\Data\{IpNoteQueries, ReportQueries, UserPostQueries, Flags};
use Vichan\Data\Driver\{CacheDriver, ErrorLogLogDriver, FileLogDriver, LogDriver, StderrLogDriver, SyslogLogDriver};
use Vichan\Service\SearchService;
defined('TINYBOARD') or exit;
@ -69,6 +70,28 @@ function build_context(array $config): Context {
sql_open();
return $pdo;
},
SearchService::class => function($c) {
$config = $c->get('config');
if ($config['user_flag']) {
$flags = $config['user_flags'];
} elseif ($config['country_flags']) {
$flags = Flags::EMBEDDED_FLAGS;
} else {
$flags = null;
}
$board_uris = $config['search']['boards'] ?? null;
return new SearchService(
$c->get(LogDriver::class),
$c->get(UserPostQueries::class),
$flags,
$config['search']['max_weight'],
$config['search']['max_length'],
$config['search']['search_limit'],
$board_uris
);
},
ReportQueries::class => function($c) {
$auto_maintenance = (bool)$c->get('config')['auto_maintenance'];
$pdo = $c->get(\PDO::class);