diff options
| author | sillylaird <sillyfanboy@gmail.com> | 2026-09-03 00:33:59 +0000 |
|---|---|---|
| committer | sillylaird <sillyfanboy@gmail.com> | 2026-09-03 00:33:59 +0000 |
| commit | 898b52edcb47bcb3e9d6106e74ca73e74ea01e70 (patch) | |
| tree | 85c6ee5ad58b860144551184d4cf86b560c62b91 /partials/header.php | |
| download | www-898b52edcb47bcb3e9d6106e74ca73e74ea01e70.tar.gz www-898b52edcb47bcb3e9d6106e74ca73e74ea01e70.zip | |
Diffstat (limited to '')
| -rw-r--r-- | partials/header.php | 177 |
1 files changed, 177 insertions, 0 deletions
diff --git a/partials/header.php b/partials/header.php new file mode 100644 index 0000000..a9a8e88 --- /dev/null +++ b/partials/header.php @@ -0,0 +1,177 @@ +<?php +$_file = basename($_SERVER['PHP_SELF'] ?? 'index.php'); +if (str_ends_with($_file, '_zh.php')) { + $_cur_lang = 'ZH'; +} elseif (str_ends_with($_file, '_jp.php')) { + $_cur_lang = 'JP'; +} else { + $_cur_lang = 'EN'; +} +$_sjs = @filemtime(__DIR__ . '/../assets/js/site.js'); +$_is_startpage = str_contains($_SERVER['SCRIPT_NAME'] ?? '', '/startpage/'); +?> +<script defer src="/assets/js/site.js<?= $_sjs ? '?v=' . $_sjs : '' ?>"></script> +<span id="top"></span> +<header class="site-header"> + <div class="header-inner"> + <div class="brand"> + <a href="/" + class="logo" + aria-label="SillyLaird home"> + <img src="/assets/img/lain.png" + alt="SillyLaird logo" + width="48" + height="48" + decoding="async" /> + </a> + <div class="brand-text"> + <strong>SillyLaird</strong> + <span>personal hub: links, logs, and vibes</span> + </div> + </div> + + <div class="header-controls"> + <div class="protocol-pills" aria-label="Alternate network protocols"> + <a class="protocol-pill protocol-pill--gemini" + href="gemini://sillylaird.ca" + target="_blank" + rel="noopener noreferrer" + title="Open the Gemini capsule">Gemini</a> + <a class="protocol-pill protocol-pill--gopher" + href="gopher://sillylaird.ca" + target="_blank" + rel="noopener noreferrer" + title="Open the Gopher hole">Gopher</a> + <a class="protocol-pill protocol-pill--tor" + href="http://xyb4zkpbnssz2kgiklg5vfbepbnblykgfvemwadvufwzfcrjny46q6qd.onion/" + title="Open the Tor onion service">Tor</a> + <a class="protocol-pill protocol-pill--i2p" + href="http://sillylaird.i2p/" + title="Open the I2P site">I2P</a> + </div> + + <a href="/startpage/" class="header-button header-button--startpage" title="Open the power-user StartPage">StartPage</a> + + <a href="/" class="header-button" title="Go to the homepage">Home</a> + + <button class="header-button header-icon-button comfort-toggle" + id="comfort-toggle" + type="button" + title="Comfort spacing: OFF" + aria-pressed="false" + aria-label="Comfort spacing off">↕</button> + + <button class="header-button header-icon-button" + id="theme-toggle" + type="button" + title="Toggle light / dark colour theme" + aria-label="Switch to light theme">☀</button> + + <div class="lang"> + <div class="lang-toggle-wrapper"> + <button class="header-button header-icon-button" + id="lang-toggle" + type="button" + title="Choose language" + aria-haspopup="menu" + aria-expanded="false"> + 文<span class="visually-hidden">Language: <span id="current-lang"><?= $_cur_lang ?></span></span> + </button> + </div> + + <div class="lang-menu" + id="lang-options" + role="menu" + hidden> + <a role="menuitem" + href="?lang=en" + hreflang="en" + lang="en" + data-lang="en" + data-lang-href>English</a> + <a role="menuitem" + href="?lang=zh" + hreflang="zh" + lang="zh" + data-lang="zh" + data-lang-href>中文</a> + <a role="menuitem" + href="?lang=jp" + hreflang="ja" + lang="ja" + data-lang="jp" + data-lang-href>日本語</a> + </div> + </div> + + <div class="menu-wrapper"> + <button id="menu-toggle" + type="button" + aria-label="Menu" + aria-controls="site-nav" + aria-expanded="false">☰</button> + + <nav id="site-nav" + class="site-nav" + aria-label="Main navigation" + hidden> + <ul class="nav-section" aria-label="Main"> + <li class="nav-label">Main</li> + <li><a href="https://www.sillylaird.ca/">Home</a></li> + <li><a href="https://os.sillylaird.ca/" target="_blank" rel="noopener noreferrer">OS</a></li> + <li><a href="https://www.sillylaird.ca/now/">Now</a></li> + <li><a href="https://www.sillylaird.ca/motd/">MOTD</a></li> + <li><a href="https://www.sillylaird.ca/startpage/" class="nav-link--featured">StartPage ★</a></li> + <li><a href="https://www.sillylaird.ca/map/">Site Map</a></li> + </ul> + <ul class="nav-section" aria-label="Writing"> + <li class="nav-label">Writing</li> + <li><a href="https://blog.sillylaird.ca/" target="_blank" rel="noopener noreferrer">Blog</a></li> + <li><a href="https://www.sillylaird.ca/journal/">Journal</a></li> + <li><a href="https://www.sillylaird.ca/changelog/">Changelog</a></li> + <li><a href="https://diary.sillylaird.ca/bbs.php" target="_blank" rel="noopener noreferrer">Diary</a></li> + <li><a href="/guestbook.php" target="_blank" rel="noopener noreferrer">Guestbook</a></li> + </ul> + <ul class="nav-section" aria-label="Collections"> + <li class="nav-label">Collections</li> + <li><a href="https://www.sillylaird.ca/gaming/">Gaming</a></li> + <li><a href="https://www.sillylaird.ca/gaming/collection/">Game Collection</a></li> + <li><a href="https://www.sillylaird.ca/bookmarks/">Bookmarks</a></li> + <li><a href="https://www.sillylaird.ca/accounts/">Accounts</a></li> + <li><a href="https://www.sillylaird.ca/computers/">Computers</a></li> + </ul> + <ul class="nav-section" aria-label="Media"> + <li class="nav-label">Media</li> + <li><a href="https://radio.sillylaird.ca/" target="_blank" rel="noopener noreferrer">Radio</a></li> + <li><a href="https://live.sillylaird.ca/" target="_blank" rel="noopener noreferrer">Live</a></li> + </ul> + <ul class="nav-section" aria-label="Mail"> + <li class="nav-label">Mail</li> + <li><a href="https://mail.google.com/mail/u/0/#inbox">Gmail</a></li> + <li><a href="https://mail.sillylaird.ca/">Mail</a></li> + <li><a href="http://xyb4zkpbnssz2kgiklg5vfbepbnblykgfvemwadvufwzfcrjny46q6qd.onion:8025/src/login.php">Mail@Tor</a></li> + </ul> + <ul class="nav-section" aria-label="Networks"> + <li class="nav-label">Networks</li> + <li><a href="http://xyb4zkpbnssz2kgiklg5vfbepbnblykgfvemwadvufwzfcrjny46q6qd.onion/">Tor</a></li> + <li><a href="http://sillylaird.i2p/">I2P</a></li> + <li><a href="http://9p.sillylaird.ca" target="_blank" rel="noopener noreferrer">9p/9f</a></li> + <li><a href="http://xp.sillylaird.ca" target="_blank" rel="noopener noreferrer">xp</a></li> + <li><a href="gopher://sillylaird.ca" target="_blank" rel="noopener noreferrer">Gopher</a></li> + <li><a href="gemini://sillylaird.ca" target="_blank" rel="noopener noreferrer">Gemini</a></li> + </ul> + <ul class="nav-section" aria-label="External"> + <li class="nav-label">External</li> + <li><a href="https://www.heyaoi.net" target="_blank" rel="noopener noreferrer">Heyaoi</a></li> + <li><a href="https://micro.heyaoi.online/" target="_blank" rel="noopener noreferrer">Heyaoi Online</a></li> + <li><a href="https://git.sillylaird.ca/" target="_blank" rel="noopener noreferrer">Git</a></li> + <li><a href="https://cvs.sillylaird.ca/" target="_blank" rel="noopener noreferrer">CVS</a></li> + </ul> + </nav> + </div> + </div> + </div> + <?php if (!$_is_startpage) { + include __DIR__ . '/header_search.php'; + } ?> +</header> |
