61 lines
1.4 KiB
HTML
61 lines
1.4 KiB
HTML
{% extends "base.html" %}
|
|
|
|
{% block title %}System - MyWhoosh Garmin Sync{% endblock %}
|
|
|
|
{% block content %}
|
|
<h1>System</h1>
|
|
|
|
<div class="card">
|
|
<dl class="info-grid">
|
|
<dt>Application version</dt>
|
|
<dd>{{ app_version }}</dd>
|
|
|
|
<dt>Sync interval (minutes)</dt>
|
|
<dd>{{ sync_interval_minutes }}</dd>
|
|
|
|
<dt>Last scheduler tick</dt>
|
|
<dd>{{ last_tick or "-" }}</dd>
|
|
|
|
<dt>Next scheduler tick</dt>
|
|
<dd>{{ next_tick or "-" }}</dd>
|
|
|
|
<dt>User count</dt>
|
|
<dd>{{ user_count }}</dd>
|
|
|
|
<dt>Activity count</dt>
|
|
<dd>{{ activity_count }}</dd>
|
|
</dl>
|
|
</div>
|
|
|
|
<form method="post" action="/sync-all" class="inline-form">
|
|
<input type="hidden" name="csrf_token" value="{{ csrf_token }}">
|
|
<button type="submit">Sync all now</button>
|
|
</form>
|
|
|
|
<h2>System log</h2>
|
|
<div class="card">
|
|
{% if log_entries %}
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th>Time</th>
|
|
<th>Source</th>
|
|
<th>Message</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
{% for entry in log_entries %}
|
|
<tr>
|
|
<td>{{ entry.created_at }}</td>
|
|
<td>{{ entry.source }}</td>
|
|
<td>{{ entry.message }}</td>
|
|
</tr>
|
|
{% endfor %}
|
|
</tbody>
|
|
</table>
|
|
{% else %}
|
|
<p class="empty-state">No system log entries.</p>
|
|
{% endif %}
|
|
</div>
|
|
{% endblock %}
|