Files
fastway-plugin-webui/web/wfc.html
Ken Johnson cdf5074214
All checks were successful
Build & Release Plugin / build (push) Successful in 12s
Add Wait For Call screen and local status proxy
New WFC dashboard page (wfc.html) showing real-time node status,
protocol listeners, plugin info, and primary server connection.
Auto-refreshes every 2 seconds via local status proxy endpoint.
Added /api/local/status route that proxies to the thin client's
built-in status HTTP server. Updated Makefile with FCL source paths.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 20:44:54 -07:00

106 lines
3.5 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Fastway BBS — Wait For Call</title>
<link rel="stylesheet" href="/css/webui.css?v=3">
<link rel="stylesheet" href="/css/wfc.css?v=1">
<script>document.documentElement.setAttribute('data-theme', localStorage.getItem('fw_theme') || 'dark');</script>
</head>
<body>
<!-- Navbar -->
<nav class="navbar">
<span class="navbar-brand">Fastway BBS <span class="version" id="wfc-version"></span></span>
<ul class="navbar-nav">
<li><a href="/wfc.html" class="active">WFC</a></li>
<li><a href="/messages.html">Messages</a></li>
<li><button class="theme-toggle" id="theme-toggle" onclick="FWUI.toggleTheme()"></button></li>
<li><button class="btn btn-sm btn-outline" onclick="FWUI.logout()">Logout</button></li>
</ul>
</nav>
<!-- WFC Header -->
<div class="wfc-header">
<div class="wfc-header-left">
<h1 class="wfc-bbs-name" id="wfc-bbs-name">Fastway BBS</h1>
<span class="wfc-node-label" id="wfc-node-name">Connecting...</span>
</div>
<div class="wfc-header-right">
<div class="wfc-date" id="wfc-date"></div>
<div class="wfc-time" id="wfc-time"></div>
</div>
</div>
<!-- Main Content -->
<div class="wfc-content">
<!-- Summary Bar -->
<div class="wfc-summary">
<div class="wfc-summary-item">
<span class="wfc-summary-value" id="wfc-active">0</span>
<span class="wfc-summary-label">Active</span>
</div>
<div class="wfc-summary-item">
<span class="wfc-summary-value" id="wfc-available">0</span>
<span class="wfc-summary-label">Available</span>
</div>
<div class="wfc-summary-item">
<span class="wfc-summary-value" id="wfc-uptime">0:00</span>
<span class="wfc-summary-label">Uptime</span>
</div>
<div class="wfc-summary-item" id="wfc-primary-summary">
<span class="wfc-summary-value"><span class="wfc-dot online" id="wfc-primary-dot"></span></span>
<span class="wfc-summary-label">Primary</span>
</div>
</div>
<!-- Node Grid -->
<div class="wfc-section">
<div class="wfc-section-header">
<h2 class="wfc-section-title">Nodes</h2>
<span class="wfc-section-badge" id="wfc-nodes-badge">0 / 0</span>
</div>
<div class="wfc-node-grid" id="wfc-nodes"></div>
</div>
<!-- Info Panels -->
<div class="wfc-panels">
<!-- Protocols -->
<div class="wfc-panel">
<div class="wfc-panel-header">
<h3 class="wfc-panel-title">Protocols</h3>
</div>
<div class="wfc-panel-body" id="wfc-protocols"></div>
</div>
<!-- Plugins -->
<div class="wfc-panel">
<div class="wfc-panel-header">
<h3 class="wfc-panel-title">Plugins</h3>
</div>
<div class="wfc-panel-body" id="wfc-plugins"></div>
</div>
<!-- Server Connection -->
<div class="wfc-panel">
<div class="wfc-panel-header">
<h3 class="wfc-panel-title">Primary Server</h3>
</div>
<div class="wfc-panel-body" id="wfc-primary"></div>
</div>
</div>
</div>
<!-- Status Bar -->
<div class="wfc-statusbar">
<span id="wfc-sb-left"></span>
<span id="wfc-sb-center"></span>
<span id="wfc-sb-right">Refresh: 2s</span>
</div>
<script src="/js/webui.js?v=3"></script>
<script src="/js/wfc.js?v=1"></script>
</body>
</html>