UI and a few server.js changes

This commit is contained in:
Isaac 2026-07-27 13:13:43 -04:00
parent 716a8d2a27
commit d15838d970
2 changed files with 24 additions and 19 deletions

View File

@ -8,18 +8,22 @@
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=IBM+Plex+Sans:wght@400;500;600&display=swap" rel="stylesheet">
<style>
:root {
--ground: #E9EBEC;
--card: #FFFFFF;
--ink: #14181A;
--muted: #6C767C;
--rule: #D3D8DA;
--signal: #14684C;
--signal-soft: #E2F0EA;
--alert: #9B3520;
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700&display=swap');
--sans: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
:root {
--ground: hsl(210, 18%, 8%);
--card: hsl(210, 16%, 13%);
--ink: hsl(30, 30%, 96%);
--muted: hsl(215, 12%, 68%);
--rule: hsl(210, 12%, 24%);
--signal: hsl(28, 95%, 58%);
--signal-soft: hsl(28, 70%, 22%);
--alert: hsl(14, 90%, 58%);
--font-ui: 'Outfit', system-ui, -apple-system, 'Segoe UI', sans-serif;
--mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
}
* { box-sizing: border-box; }
@ -29,9 +33,9 @@ body {
min-height: 100vh;
display: flex;
flex-direction: column;
font-family: var(--font-ui);
background: var(--ground);
color: var(--ink);
font-family: var(--sans);
font-size: 15px;
line-height: 1.5;
-webkit-font-smoothing: antialiased;
@ -140,7 +144,7 @@ button, .button {
border: none;
background: var(--ink);
color: var(--ground);
font-family: var(--sans);
font-family: var(--font-ui);
font-size: 14px;
font-weight: 500;
text-decoration: none;
@ -271,9 +275,9 @@ button.quiet:hover { background: none; color: var(--ink); }
footer {
margin-top: 28px;
font-family: var(--mono);
font-family: var(--font-ui);
font-size: 11px;
color: var(--muted);
color: var(--ink);
}
body > footer {
@ -413,7 +417,7 @@ function render() {
}
if (!data.tickets.length) {
html += `<div class="empty"><p>Nothing closed yet. Tickets appear here within a minute of being closed.</p></div>`;
html += `<div class="empty"><p>Nothing closed yet.</p></div>`;
} else {
html += '<div class="feed">' + data.tickets.map(renderTicket).join('') + '</div>';
}
@ -469,8 +473,9 @@ setInterval(load, 5000); // pull fresh state from the server
setInterval(render, 20000); // re-age the rails between pulls
</script>
<footer>
<p>© 2026 Isaac Godin. All rights reserved.</p>
<p>Design and Credits: <a href="https://www.mccs.me.edu/">Isaac Godin</a></p>
<p>© 2026 <span style="color: hsl(28, 95%, 58%);">Isaac Godin</span>. All rights reserved.</p>
<p>Design and Credits: <span style="color: hsl(28, 95%, 58%);">Isaac Godin</span></p>
</footer>
</body>
</html>

View File

@ -58,7 +58,7 @@ function pollForToken(deviceCode, interval, expiresIn) {
const timer = setInterval(async () => {
if (Date.now() > deadline) {
clearInterval(timer);
reject(new Error('The authorization code expired. Connect again.'));
reject(new Error('Expired try again.'));
return;
}
@ -239,4 +239,4 @@ app.post('/api/check', async (req, res) => {
app.listen(PORT, () => {
console.log(`Open http://localhost:${PORT}`);
});
});