fix: refine site terminology, favicon and translations
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1.0">
|
||||
<meta charset="UTF-8"><link rel="icon" href="/static/favicon.svg?v=2" type="image/svg+xml"><meta name="viewport" content="width=device-width,initial-scale=1.0">
|
||||
<title>Overview - ToNav</title><link rel="stylesheet" href="/static/css/admin.css">
|
||||
<script>document.documentElement.classList.toggle('dark',localStorage.getItem('tonav-theme')==='dark');</script>
|
||||
</head>
|
||||
@@ -11,19 +11,19 @@
|
||||
<div class="admin-brand">ToNav</div>
|
||||
<div class="admin-label">OVERVIEW</div>
|
||||
<a class="admin-nav active" href="/admin/dashboard">Overview</a>
|
||||
<div class="admin-label" style="margin-top:22px">SERVICES</div>
|
||||
<a class="admin-nav" href="/admin/services">Services</a>
|
||||
<div class="admin-label" style="margin-top:22px">SITES</div>
|
||||
<a class="admin-nav" href="/admin/services">Sites</a>
|
||||
<a class="admin-nav" href="/admin/categories">Categories</a>
|
||||
<div class="admin-label" style="margin-top:22px">SYSTEM</div>
|
||||
<a class="admin-nav" href="#settings" onclick="showSettings();return false">Settings</a>
|
||||
<div class="admin-sidebar-foot"><a href="/">← Open navigation</a><br><a href="/admin/logout">Sign out</a></div>
|
||||
</aside>
|
||||
<main class="admin-content"><div class="admin-main">
|
||||
<header class="admin-topbar"><div><h1>Overview</h1><div class="admin-sub">Service directory and system status</div></div><div class="top-actions"><button class="icon-button" onclick="toggleTheme()" title="Toggle theme" aria-label="Toggle theme">◐</button><a class="btn" href="/">Open site</a></div></header>
|
||||
<header class="admin-topbar"><div><h1>Overview</h1><div class="admin-sub">Site directory and system status</div></div><div class="top-actions"><button class="icon-button" onclick="toggleTheme()" title="Toggle theme" aria-label="Toggle theme">◐</button><a class="btn" href="/">Open site</a></div></header>
|
||||
<section class="section"><div class="section-title">System status</div>
|
||||
<div class="metric-strip"><div class="metric"><div class="metric-value">{{ .service_count }}</div><div class="metric-label">Services</div></div><div class="metric"><div class="metric-value">{{ .category_count }}</div><div class="metric-label">Categories</div></div><div class="metric"><div class="metric-value green">{{ .online_count }}</div><div class="metric-label">Online</div></div><div class="metric"><div class="metric-value red">{{ .offline_count }}</div><div class="metric-label">Offline</div></div></div></section>
|
||||
<div class="metric-strip"><div class="metric"><div class="metric-value">{{ .service_count }}</div><div class="metric-label">Sites</div></div><div class="metric"><div class="metric-value">{{ .category_count }}</div><div class="metric-label">Categories</div></div><div class="metric"><div class="metric-value green">{{ .online_count }}</div><div class="metric-label">Online</div></div><div class="metric"><div class="metric-value red">{{ .offline_count }}</div><div class="metric-label">Offline</div></div></div></section>
|
||||
<section class="section"><div class="section-title">Quick actions</div><div class="panel action-list">
|
||||
<a class="action" href="/admin/services"><strong>Services</strong><span>Manage service entries</span></a>
|
||||
<a class="action" href="/admin/services"><strong>Sites</strong><span>Manage site entries</span></a>
|
||||
<a class="action" href="/admin/categories"><strong>Categories</strong><span>Organize your directory</span></a>
|
||||
<a class="action" href="#settings" onclick="showSettings();return false"><strong>Settings</strong><span>Site, backup and MCP</span></a>
|
||||
<div class="action" onclick="runBackup()"><strong>Backup</strong><span>Run cloud backup now</span></div>
|
||||
@@ -55,4 +55,4 @@ async function runBackup(){if(!confirm(t('Run cloud backup now?')))return;const
|
||||
async function restoreBackup(name){name=decodeURIComponent(name);if(!confirm(t('Restore ')+name+t('? Current database will be backed up first.')))return;const r=await fetch('/admin/api/backup/restore?name='+encodeURIComponent(name),{method:'POST'}),d=await r.json();alert(d.message||t('Done'));if(d.success)location.reload()}
|
||||
async function deleteBackup(name){name=decodeURIComponent(name);if(!confirm(t('Delete ')+name+t('?')))return;const r=await fetch('/admin/api/backup/delete?name='+encodeURIComponent(name),{method:'DELETE'}),d=await r.json();if(d.success)loadCloudBackups();else alert(d.message)}
|
||||
document.addEventListener('keydown',e=>{if(e.key==='Escape')closeSettings()});
|
||||
</script><script src="/static/js/i18n.js?v=2"></script></body></html>
|
||||
</script><script src="/static/js/i18n.js?v=3"></script></body></html>
|
||||
|
||||
Reference in New Issue
Block a user