BootstrapSQLiteBlog/header.php

97 lines
3.4 KiB
PHP

<?php
global $c;
$varNavbarLinks = [
["Home", "/"],
["Sign in", "/user/signin"],
];
$varNavbarLinks = $c->query("SELECT * from links where position like 'navbar' order by sort");
$varSidebarLinks = $c->query("SELECT * from links where position like 'sidebar' order by sort");
$varFirstNavbarLink = array_shift($varNavbarLinks);
?>
<script>
// Make the page's theme dark:
$("body").first().attr("data-bs-theme", "dark");
</script>
<div class="offcanvas offcanvas-start" id="sidebar">
<div class="offcanvas-body">
<?php foreach ($varSidebarLinks as $varLink): ?>
<a class="btn btn-outline-secondary d-block w-100 mb-2" href="<?= $varLink["url"]; ?>"><i class="fa fa-fw fa-<?= $varLink["icon"]; ?> pe-2"></i> <?= $varLink["label"]; ?></a>
<?php endforeach; ?>
</div>
</div>
<div class="navbar navbar-expand bg-secondary d-flex px-3">
<div class="container justify-content-between">
<div class="navbar-nav d-inline-flex align-items-center">
<div class="navbar-nav d-inline-flex">
<a class="btn btn-secondary me-2" data-bs-toggle="offcanvas" data-bs-target="#sidebar"><i class="fa fa-fw fa-bars"></i></a>
</div>
<a class="navbar-brand" href="<?= $varFirstNavbarLink["url"]; ?>"><?= $varFirstNavbarLink["label"]; ?></a>
<div class="dropdown d-lg-none">
<a class="btn btn-secondary dropdown-toggle" data-bs-toggle="dropdown">...</a>
<div class="dropdown-menu">
<?php foreach ($varNavbarLinks as $varLink): ?>
<a class="dropdown-item" href="<?= $varLink["url"]; ?>"><i class="fa fa-fw fa-<?= $varLink["icon"]; ?> pe-2"></i> <?= $varLink["label"]; ?></a>
<?php endforeach; ?>
</div>
</div>
<?php foreach ($varNavbarLinks as $varLink): ?>
<a class="nav-link d-none d-lg-inline" href="<?= $varLink["url"]; ?>"><?= $varLink["label"]; ?></a>
<?php endforeach; ?>
</div>
<div class="navbar-nav d-inline-flex">
<div class="dropdown">
<?php
$varUser = UserAuth::getUser();
$strUserText = "User";
if ($varUser !== null)
$strUserText = $varUser["user_name"] ?? $varUser["email"] ?? "User";
?>
<a class="btn btn-secondary dropdown-toggle" data-bs-toggle="dropdown">User</a>
<div class="dropdown-menu dropdown-menu-end">
<?php if ($varUser !== null): ?>
<a class="dropdown-item" href="/user/info"><i class="fa fa-fw fa-user pe-2"></i> <?= $strUserText; ?></a>
<a class="dropdown-item" href="/user/signout"><i class="fa fa-fw fa-right-from-bracket pe-2"></i> Sign Out</a>
<!--
<a class="nav-link" href="/user/signin">Account</a>
-->
<?php else: ?>
<a class="dropdown-item" href="/user/signin"><i class="fa fa-fw fa-right-to-bracket pe-2"></i> Sign In</a>
<a class="dropdown-item" href="/user/register"><i class="fa fa-fw fa-user-plus pe-2"></i> Register</a>
<?php endif; ?>
</div>
</div>
</div>
</div>
</div>