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 /gaming/runescape/index.php | |
| download | www-main.tar.gz www-main.zip | |
Diffstat (limited to 'gaming/runescape/index.php')
| -rw-r--r-- | gaming/runescape/index.php | 139 |
1 files changed, 139 insertions, 0 deletions
diff --git a/gaming/runescape/index.php b/gaming/runescape/index.php new file mode 100644 index 0000000..e8aacfa --- /dev/null +++ b/gaming/runescape/index.php @@ -0,0 +1,139 @@ +<?php +require_once __DIR__ . '/_lib.php'; +$rsData = runescape_data(); +?> +<!doctype html> +<html lang="en"> +<head> + <meta charset="utf-8" /> + <meta name="viewport" content="width=device-width,initial-scale=1" /> + <meta name="description" content="RuneScape / OSRS fan page by SillyLaird." /> + <meta property="og:title" content="RuneScape — SillyLaird" /> + <meta property="og:description" content="RuneScape / OSRS fan page by SillyLaird." /> + <meta property="og:image" content="https://www.sillylaird.ca/assets/img/lain.png" /> + <meta property="og:type" content="website" /> + <meta property="og:url" content="https://www.sillylaird.ca/gaming/runescape/" /> + <meta property="og:locale" content="en_US" /> + <meta property="og:locale:alternate" content="ja_JP" /> + <meta property="og:locale:alternate" content="zh_CN" /> + <meta name="twitter:card" content="summary_large_image" /> + <meta name="twitter:title" content="RuneScape — SillyLaird" /> + <meta property="og:description" content="RuneScape / OSRS fan page by SillyLaird." /> + <meta name="twitter:image" content="https://www.sillylaird.ca/assets/img/lain.png" /> + <link rel="canonical" href="https://www.sillylaird.ca/gaming/runescape/" /> + <link rel="alternate" hreflang="x-default" href="https://www.sillylaird.ca/gaming/runescape/" /> + <link rel="alternate" hreflang="en" href="https://www.sillylaird.ca/gaming/runescape/" /> + <link rel="alternate" hreflang="zh" href="https://www.sillylaird.ca/gaming/runescape/index_zh.php" /> + <link rel="alternate" hreflang="ja" href="https://www.sillylaird.ca/gaming/runescape/index_jp.php" /> + <title>RuneScape — SillyLaird</title> + <link rel="icon" href="https://www.sillylaird.ca/assets/img/lain.png" /> + + <link rel="stylesheet" href="/assets/css/fonts.css" /> + <link rel="stylesheet" href="/assets/css/site.css" /> + <link rel="stylesheet" href="/assets/css/skeleton.css" /> + <link rel="stylesheet" href="/assets/css/pages/computers.css" /> +</head> + +<body> + <a class="skip-link" href="#main">Skip to content</a> + <?php include '../../partials/header.php'; ?> + + <main id="main" class="wrap"> + <section aria-labelledby="rs-title"> + <h1 id="rs-title">RuneScape (OSRS)</h1> + + <nav class="colon-nav" aria-label="RuneScape page sections"> + <strong>::Servers::</strong> + <?php foreach ($rsData['eras'] as $era): ?> + <a href="#era-<?= htmlspecialchars($era['id'], ENT_QUOTES, 'UTF-8') ?>-title"><?= htmlspecialchars($era['title'], ENT_QUOTES, 'UTF-8') ?></a> | + <?php endforeach; ?> + <a href="#servers-links-title">Links</a> + <strong>::Scrapbook::</strong> + <a href="#servers-bank-title">Bank Pics</a> + <strong>::Official::</strong> + <a href="https://oldschool.runescape.wiki/" target="_blank" rel="noopener noreferrer">OSRS Wiki</a> + </nav> + + <div class="machine"> + <div class="machine-row"> + <img class="machine-thumb" src="/assets/img/runescape.png" alt="RuneScape" loading="lazy" decoding="async"> + <div class="machine-facts"> + <div class="machine-info"> + <strong>Page added:</strong> 2026-07-25<br> + <strong>Last revised:</strong> 2026-07-25 + </div> + <?php if ($rsData['welcome']): ?> + <?php runescape_render_welcome($rsData['welcome']); ?> + <?php else: ?> + <div class="machine-title machine-title--sub">Welcome</div> + <ul class="contact-list"> + <li>A small fan page / launch pad — official OSRS plus private servers, grouped by era.</li> + <li>Servers listed below are unofficial preservation projects, not affiliated with Jagex Ltd.</li> + <li>Bookmark <a href="/gaming/runescape/">/gaming/runescape/</a> directly — server hosts change over time.</li> + </ul> + <?php endif; ?> + </div> + </div> + </div> + </section> + + <?php foreach ($rsData['eras'] as $era): ?> + <section aria-labelledby="era-<?= htmlspecialchars($era['id'], ENT_QUOTES, 'UTF-8') ?>-title"> + <h2 id="era-<?= htmlspecialchars($era['id'], ENT_QUOTES, 'UTF-8') ?>-title" class="section-accent-title"><?= htmlspecialchars($era['title'], ENT_QUOTES, 'UTF-8') ?></h2> + <?php if ($era['subtitle'] !== ''): ?><p class="muted"><?= htmlspecialchars($era['subtitle'], ENT_QUOTES, 'UTF-8') ?></p><?php endif; ?> + <?php $eraImgSrc = runescape_image_src($era['image']); ?> + <?php if ($eraImgSrc !== ''): ?> + <img class="rs-era-banner" src="<?= htmlspecialchars($eraImgSrc, ENT_QUOTES, 'UTF-8') ?>" alt="<?= htmlspecialchars($era['title'], ENT_QUOTES, 'UTF-8') ?>" loading="lazy" decoding="async"> + <?php endif; ?> + + <?php foreach ($era['servers'] as $srv): ?> + <?php runescape_render_server($srv); ?> + <?php endforeach; ?> + </section> + <?php endforeach; ?> + + <!-- Screenshots are managed at /admin.php?section=runescape — placeholder-box slots + show until real ones are uploaded there; no manual editing needed. --> + <section aria-labelledby="servers-bank-title"> + <h2 id="servers-bank-title" class="section-accent-title">My Bank / Screenshots</h2> + <?php if ($rsData['screenshots']): ?> + <div class="placeholder-grid"> + <?php foreach ($rsData['screenshots'] as $shot): ?> + <figure class="rs-shot"> + <img src="<?= htmlspecialchars(runescape_screenshot_src($shot['filename']), ENT_QUOTES, 'UTF-8') ?>" + alt="<?= htmlspecialchars($shot['caption'] !== '' ? $shot['caption'] : 'RuneScape screenshot', ENT_QUOTES, 'UTF-8') ?>" + loading="lazy" decoding="async"> + <?php if ($shot['caption'] !== ''): ?> + <figcaption class="muted"><?= htmlspecialchars($shot['caption'], ENT_QUOTES, 'UTF-8') ?></figcaption> + <?php endif; ?> + </figure> + <?php endforeach; ?> + </div> + <?php else: ?> + <p class="muted">Placeholder — swap these for real bank/inventory screenshots later.</p> + <div class="placeholder-grid"> + <div class="placeholder-box">Add screenshot 1</div> + <div class="placeholder-box">Add screenshot 2</div> + <div class="placeholder-box">Add screenshot 3</div> + </div> + <?php endif; ?> + </section> + + <section aria-labelledby="servers-links-title"> + <h2 id="servers-links-title" class="section-accent-title"><?= htmlspecialchars($rsData['links_section']['title'], ENT_QUOTES, 'UTF-8') ?></h2> + <?php if ($rsData['links_section']['items']): ?> + <ul class="contact-list"> + <?php foreach ($rsData['links_section']['items'] as $item): ?> + <li><a href="<?= htmlspecialchars($item['url'], ENT_QUOTES, 'UTF-8') ?>" target="_blank" rel="noopener noreferrer"><?= htmlspecialchars($item['label'], ENT_QUOTES, 'UTF-8') ?></a><?= $item['desc'] !== '' ? ' — ' . htmlspecialchars($item['desc'], ENT_QUOTES, 'UTF-8') : '' ?></li> + <?php endforeach; ?> + </ul> + <?php endif; ?> + <?php if ($rsData['links_section']['disclaimer'] !== ''): ?> + <p class="muted"><?= htmlspecialchars($rsData['links_section']['disclaimer'], ENT_QUOTES, 'UTF-8') ?></p> + <?php endif; ?> + </section> + </main> + + <?php include '../../partials/footer.php'; ?> +</body> +</html> |
