$config * @param array $messages * @param 'de'|'en' $locale */ function render_header(array $config, array $messages, string $locale, string $title, string $description): void { $inviteUrl = bot_invite_url($config); $dashboardUrl = rtrim((string) $config['dashboard_url'], '/'); $loginUrl = $dashboardUrl . '/login'; $supportUrl = isset($config['support_url']) && $config['support_url'] !== '' ? (string) $config['support_url'] : null; $statusUrl = (string) $config['status_url']; ?> <?= h($title) ?>
$config * @param array $messages */ function render_footer(array $config, array $messages): void { $dashboardUrl = rtrim((string) $config['dashboard_url'], '/'); $year = (int) date('Y'); ?>

© Nexumi

> $sections */ function render_legal_sections(array $sections): void { foreach ($sections as $section) { $heading = (string) ($section['heading'] ?? ''); echo ''; } } /** * @param array $config * @param array $messages * @param 'de'|'en' $locale * @param 'impressum'|'privacy'|'terms' $pageKey */ function render_legal_page(array $config, array $messages, string $locale, string $pageKey): void { /** @var array $page */ $page = $messages['legal'][$pageKey]; $title = (string) $page['title']; $description = t($messages, 'meta.description'); render_header($config, $messages, $locale, $title . ' · Nexumi', $description); ?>