Add web UI for configuration and management
- Flask-based web interface on port 8080 - Dashboard with channel statistics and sync status - Channel management (add/remove channels via UI) - Settings page for all configuration options - Cookie file upload interface - Real-time log viewer - Manual sync trigger from web UI - Updated Dockerfile to include Flask and web assets - Updated Unraid template with WebUI port - Updated README with web UI documentation
This commit is contained in:
50
templates/logs.html
Normal file
50
templates/logs.html
Normal file
@@ -0,0 +1,50 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block title %}Logs{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<div class="page-header">
|
||||
<h2>Sync Logs</h2>
|
||||
<div class="header-actions">
|
||||
<button onclick="location.reload()" class="btn btn-secondary">Refresh</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card">
|
||||
<div class="logs-container">
|
||||
{% if logs %}
|
||||
<pre class="logs"><code>{% for line in logs %}{{ line }}
|
||||
{% endfor %}</code></pre>
|
||||
{% else %}
|
||||
<div class="empty-state">
|
||||
<p>No logs available yet. Run a sync to see output here.</p>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card info-card">
|
||||
<h3>About Logs</h3>
|
||||
<p>This page shows the last 200 lines of sync output. Logs include:</p>
|
||||
<ul>
|
||||
<li>Download progress for each video</li>
|
||||
<li>Errors and warnings</li>
|
||||
<li>Sync start/completion times</li>
|
||||
<li>Skipped videos (already downloaded)</li>
|
||||
</ul>
|
||||
<p><strong>Tip:</strong> Use the Refresh button to see the latest log output while a sync is running.</p>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
{% block scripts %}
|
||||
<script>
|
||||
// Auto-refresh logs every 5 seconds if sync is running
|
||||
fetch('/api/sync/status')
|
||||
.then(response => response.json())
|
||||
.then(data => {
|
||||
if (data.running) {
|
||||
setInterval(() => location.reload(), 5000);
|
||||
}
|
||||
});
|
||||
</script>
|
||||
{% endblock %}
|
||||
Reference in New Issue
Block a user