. // }}} namespace Plugin\Cover; use App\Core\DB\DB; use App\Core\Event; use App\Core\Module; use App\Core\Router\RouteLoader; use App\Util\Common; class Cover extends Module { /** * Map URLs to actions * * @param RouteLoader $r * * @return bool hook value; true means continue processing, false means stop. */ public function onAddRoute(RouteLoader $r): bool { $r->connect('settings_cover', 'settings/cover', [Controller\Cover::class, 'coversettings']); $r->connect('cover', '/cover', [Controller\Cover::class, 'cover']); return Event::next; } /** * Populate twig vars * * @param array $vars * * @return bool hook value; true means continue processing, false means stop. */ public function onStartTwigPopulateVars(array &$vars): bool { $vars['profile_tabs'] = [['title' => 'Cover', 'href' => 'settings_cover', ]]; if (Common::user() != null) { if (array_key_exists('profile_temp',$vars)) { $vars['profile_temp'] = []; } $cover = DB::find('cover', ['gsactor_id' => Common::user()->getId()]); if ($cover != null) { $vars['profile_temp'][] = ['name' => 'cover', 'vars' => ['img' => '/cover']]; } else { $vars['profile_temp'][] = ['name' => 'cover', 'vars' => []]; } } return Event::next; } /** * Output our dedicated stylesheet * * @param array $styles stylesheets path * * @return bool hook value; true means continue processing, false means stop. */ public function onStartShowStyles(array &$styles): bool { //$styles[] = 'voer/poll.css'; return Event::next; } }