76 lines
2.4 KiB
HTML
76 lines
2.4 KiB
HTML
<h1>System Configuration</h1>
|
|
<div class="panel-card split-grid">
|
|
<section>
|
|
<h2>Redis Stats</h2>
|
|
<dl class="kv-list">
|
|
<div>
|
|
<dt>Memory Used</dt>
|
|
<dd id="system-redis-memory">loading...</dd>
|
|
</div>
|
|
<div>
|
|
<dt>Connected Clients</dt>
|
|
<dd id="system-redis-clients">0</dd>
|
|
</div>
|
|
<div>
|
|
<dt>Redis Enabled</dt>
|
|
<dd id="system-redis-enabled">no</dd>
|
|
</div>
|
|
</dl>
|
|
</section>
|
|
<section>
|
|
<h2>Storage</h2>
|
|
<dl class="kv-list">
|
|
<div>
|
|
<dt>Database Driver</dt>
|
|
<dd id="system-db-driver">loading...</dd>
|
|
</div>
|
|
<div>
|
|
<dt>Stored Messages</dt>
|
|
<dd id="system-stored-messages">0</dd>
|
|
</div>
|
|
<div>
|
|
<dt>Last Refresh</dt>
|
|
<dd id="system-generated-at">loading...</dd>
|
|
</div>
|
|
<div>
|
|
<dt>Playlist Path</dt>
|
|
<dd id="system-playlist-path">loading...</dd>
|
|
</div>
|
|
<div>
|
|
<dt>Playlist Present</dt>
|
|
<dd id="system-playlist-present">no</dd>
|
|
</div>
|
|
</dl>
|
|
</section>
|
|
</div>
|
|
|
|
<div class="panel-card">
|
|
<div class="panel-header-row">
|
|
<h2>Service Health</h2>
|
|
<button id="reload-system-btn" type="button" class="btn btn-secondary">Reload health</button>
|
|
</div>
|
|
<div id="system-services" class="service-list"></div>
|
|
<p id="system-status" class="status-line" aria-live="polite">Loading system summary...</p>
|
|
</div>
|
|
|
|
<div class="panel-card">
|
|
<h2>Runtime Configuration</h2>
|
|
<form id="config-form" class="form-stack" style="max-width: 400px">
|
|
<label>Rate Limit Max <input id="config-rate-max" type="number" class="text-input" /></label>
|
|
<label>Rate Limit Window (seconds) <input id="config-rate-window" type="number" class="text-input" /></label>
|
|
<button type="submit" class="btn btn-primary">Save Config</button>
|
|
</form>
|
|
<p id="config-status" class="status-line" aria-live="polite"></p>
|
|
</div>
|
|
|
|
<div class="panel-card">
|
|
<h2>Service Control</h2>
|
|
<p class="small-muted">Restart individual services (manual — container restart commands returned by API).</p>
|
|
<div class="button-row">
|
|
<button class="btn btn-secondary restart-btn" data-service="playout">Restart Playout</button>
|
|
<button class="btn btn-secondary restart-btn" data-service="chat">Restart Chat</button>
|
|
<button class="btn btn-secondary restart-btn" data-service="nginx">Restart Nginx</button>
|
|
</div>
|
|
<p id="restart-status" class="status-line" aria-live="polite"></p>
|
|
</div>
|