128 lines
3.0 KiB
HTML
128 lines
3.0 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<title>Home Server Control</title>
|
|
<link rel="stylesheet" href="style.css" />
|
|
</head>
|
|
<body>
|
|
|
|
<main class="container">
|
|
|
|
<h1>🏠 Home Server Control</h1>
|
|
<section class="card">
|
|
<section class="card">
|
|
<h2>💌 Daily Message</h2>
|
|
<p id="dailyMessage" class="daily-message"></p>
|
|
</section>
|
|
<section class="card">
|
|
<h2>⏳ Countdown</h2>
|
|
<p id="countdownText"></p>
|
|
</section>
|
|
|
|
<h2>🚀 Quick Links</h2>
|
|
|
|
<div class="quick-links">
|
|
<a href="https://notes.zainezq.com" target="_blank" class="link-card">
|
|
📚 Notes
|
|
</a>
|
|
|
|
<a href="https://zainezq.com" target="_blank" class="link-card">
|
|
🌍 Website
|
|
</a>
|
|
|
|
<a href="https://filebrowser.zainezq.com" target="_blank" class="link-card">
|
|
📂 Files
|
|
</a>
|
|
|
|
<a href="https://calibre.zainezq.com" target="_blank" class="link-card">
|
|
📖 Library
|
|
</a>
|
|
|
|
<a href="https://miniflux.zainezq.com" target="_blank" class="link-card">
|
|
📰 News
|
|
</a>
|
|
|
|
<a href="https://guac.zainezq.com" target="_blank" class="link-card">
|
|
🖥️ RDP
|
|
</a>
|
|
|
|
<a href="https://portainer.zainezq.com" target="_blank" class="link-card">
|
|
🐳 Portainer
|
|
</a>
|
|
|
|
<a href="https://nextcloud.zainezq.com" target="_blank" class="link-card">
|
|
☁️ Nextcloud
|
|
</a>
|
|
|
|
<a href="https://pgadmin.zainezq.com" target="_blank" class="link-card">
|
|
🗄️ Databases
|
|
</a>
|
|
|
|
</div>
|
|
</section>
|
|
<!-- Global Status -->
|
|
<div id="globalStatus" class="global-ok">
|
|
🟢 All Systems Running Normally
|
|
</div>
|
|
|
|
<!-- Overview -->
|
|
<div class="overview">
|
|
<div class="stat">
|
|
<span>Server</span>
|
|
<span id="serverDot" class="dot green"></span>
|
|
</div>
|
|
<div class="stat">
|
|
<span>Website</span>
|
|
<span id="webDot" class="dot green"></span>
|
|
</div>
|
|
<div class="stat">
|
|
<span>Org Notes</span>
|
|
<span id="roamDot" class="dot green"></span>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Health -->
|
|
<section class="card">
|
|
<h2>📡 Server Status</h2>
|
|
<p>
|
|
Health:
|
|
<span id="health" class="badge neutral">Checking...</span>
|
|
</p>
|
|
<p id="lastUpdated" class="muted"></p>
|
|
</section>
|
|
|
|
<!-- Website -->
|
|
<section class="card">
|
|
<h2>🌍 Website</h2>
|
|
|
|
<button id="buildBtn">🔄 Update Website</button>
|
|
<p id="buildResult" class="muted">💤 Waiting for action</p>
|
|
|
|
<button class="toggleLogs" data-target="logOutput">
|
|
Show technical details
|
|
</button>
|
|
|
|
<pre id="logOutput" class="log-box hidden"></pre>
|
|
</section>
|
|
|
|
<!-- Org Roam -->
|
|
<section class="card">
|
|
<h2>📚 Knowledge Base</h2>
|
|
|
|
<button id="orgRoamBtn">🔄 Refresh Notes</button>
|
|
<p id="orgRoamResult" class="muted">💤 Waiting for action</p>
|
|
|
|
<button class="toggleLogs" data-target="orgRoamLogs">
|
|
Show technical details
|
|
</button>
|
|
|
|
<pre id="orgRoamLogs" class="log-box hidden"></pre>
|
|
</section>
|
|
|
|
</main>
|
|
|
|
<script src="app.js"></script>
|
|
</body>
|
|
</html>
|