Add admin console for managing users; default account is admin
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
6f7cddd1e5
commit
f977f3294c
5 files changed
+222
-7
No files matched your search
+3
-1
@@ -89,6 +89,7 @@ input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;bac
|
||||
.ctl .pp{width:76px;height:76px;font-size:34px}
|
||||
.opts{display:flex;justify-content:center;gap:10px;margin:6px 0 14px}
|
||||
.pill{background:var(--surf);border:1px solid var(--bd);border-radius:99px;padding:8px 16px;font-weight:600;font-size:13.5px}
|
||||
a.pill{text-decoration:none;color:var(--fg);display:inline-block}
|
||||
.pill.on{border-color:var(--acc);color:var(--acc)}
|
||||
.chaps{background:var(--surf);border:1px solid var(--bd);border-radius:14px;overflow:hidden}
|
||||
.chaps h3{margin:0;padding:12px 16px;font-size:13px;color:var(--mut);text-transform:uppercase;letter-spacing:.06em}
|
||||
@@ -116,6 +117,7 @@ input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;bac
|
||||
<header><div class="hd">
|
||||
<div class="logo"><i><svg><use href="#i-book"/></svg></i><span>Audiobooks</span></div>
|
||||
<div class="search"><svg><use href="#i-search"/></svg><input id="q" type="search" placeholder="Search title, author, series"></div>
|
||||
<a class="pill hide" id="adminlink" href="/admin" style="padding:8px 12px">Admin</a>
|
||||
<button class="pill" id="who" title="Sign out" style="padding:8px 12px"></button>
|
||||
<select id="sort" aria-label="Sort"><option value="author">Group by author</option><option value="title">Sort by title</option><option value="recent">Recently played</option></select>
|
||||
</div></header>
|
||||
@@ -389,7 +391,7 @@ const unlock = () => {
|
||||
}
|
||||
};
|
||||
['touchend', 'click'].forEach(ev => document.addEventListener(ev, unlock, { once: true, passive: true }));
|
||||
fetch('/me').then(r => r.json()).then(m => { $('who').textContent = m.user + ' ⎋'; $('who').onclick = () => { if (confirm('Sign out ' + m.user + '?')) location.href = '/logout'; }; }).catch(() => {});
|
||||
fetch('/me').then(r => r.json()).then(m => { if (m.admin) $('adminlink').classList.remove('hide'); $('who').textContent = m.user + ' ⎋'; $('who').onclick = () => { if (confirm('Sign out ' + m.user + '?')) location.href = '/logout'; }; }).catch(() => {});
|
||||
load();
|
||||
</script>
|
||||
</body>
|
||||
|
||||
Reference in new issue
Block a user