update to web interface
Local Docker Build (Dev) / build-dev (push) Successful in 5s

This commit is contained in:
2025-11-03 19:05:43 -05:00
parent b0b2e87447
commit 1f20b4397d
3 changed files with 33 additions and 18 deletions
+1 -1
View File
@@ -1 +1 @@
2.10.0-skipped-tracking 2.10.0-skipped-tracking-fix
+3 -3
View File
@@ -4,7 +4,7 @@
<meta charset="UTF-8"> <meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>NFOGuard - Database Management</title> <title>NFOGuard - Database Management</title>
<link rel="stylesheet" href="/static/css/styles.css?v=2.10.0-skipped-tracking"> <link rel="stylesheet" href="/static/css/styles.css?v=2.10.0-skipped-tracking-fix">
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css" rel="stylesheet"> <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css" rel="stylesheet">
</head> </head>
<body> <body>
@@ -12,7 +12,7 @@
<!-- Header --> <!-- Header -->
<header class="app-header"> <header class="app-header">
<div class="header-content"> <div class="header-content">
<h1><i class="fas fa-shield-alt"></i> NFOGuard <span style="font-size: 0.5em; color: #888;">v2.10.0-skipped-tracking</span></h1> <h1><i class="fas fa-shield-alt"></i> NFOGuard <span style="font-size: 0.5em; color: #888;">v2.10.0-skipped-tracking-fix</span></h1>
<p>Database Management & Reporting</p> <p>Database Management & Reporting</p>
</div> </div>
<div class="auth-status" id="auth-status" style="display: none;"> <div class="auth-status" id="auth-status" style="display: none;">
@@ -723,6 +723,6 @@
<!-- Toast Notifications --> <!-- Toast Notifications -->
<div class="toast-container" id="toast-container"></div> <div class="toast-container" id="toast-container"></div>
<script src="/static/js/app.js?v=2.10.0-skipped-tracking"> <script src="/static/js/app.js?v=2.10.0-skipped-tracking-fix">
</body> </body>
</html> </html>
+27 -12
View File
@@ -62,22 +62,37 @@ function switchTab(tabName) {
// Event listeners // Event listeners
function initializeEventListeners() { function initializeEventListeners() {
// Search inputs // Search inputs
document.getElementById('movies-search').addEventListener('input', debounce(loadMovies, 500)); const moviesSearch = document.getElementById('movies-search');
document.getElementById('movies-imdb-search').addEventListener('input', debounce(loadMovies, 500)); const moviesImdbSearch = document.getElementById('movies-imdb-search');
document.getElementById('series-search').addEventListener('input', debounce(loadSeries, 500)); const seriesSearch = document.getElementById('series-search');
document.getElementById('series-imdb-search').addEventListener('input', debounce(loadSeries, 500)); const seriesImdbSearch = document.getElementById('series-imdb-search');
if (moviesSearch) moviesSearch.addEventListener('input', debounce(loadMovies, 500));
if (moviesImdbSearch) moviesImdbSearch.addEventListener('input', debounce(loadMovies, 500));
if (seriesSearch) seriesSearch.addEventListener('input', debounce(loadSeries, 500));
if (seriesImdbSearch) seriesImdbSearch.addEventListener('input', debounce(loadSeries, 500));
// Filter dropdowns // Filter dropdowns
document.getElementById('movies-filter-date').addEventListener('change', loadMovies); const moviesFilterDate = document.getElementById('movies-filter-date');
document.getElementById('movies-filter-source').addEventListener('change', loadMovies); const moviesFilterSource = document.getElementById('movies-filter-source');
document.getElementById('series-filter-date').addEventListener('change', loadSeries); const seriesFilterDate = document.getElementById('series-filter-date');
document.getElementById('series-filter-source').addEventListener('change', loadSeries); const seriesFilterSource = document.getElementById('series-filter-source');
if (moviesFilterDate) moviesFilterDate.addEventListener('change', loadMovies);
if (moviesFilterSource) moviesFilterSource.addEventListener('change', loadMovies);
if (seriesFilterDate) seriesFilterDate.addEventListener('change', loadSeries);
if (seriesFilterSource) seriesFilterSource.addEventListener('change', loadSeries);
// Forms // Forms
document.getElementById('edit-form').addEventListener('submit', handleEditSubmit); const editForm = document.getElementById('edit-form');
document.getElementById('bulk-update-form').addEventListener('submit', handleBulkUpdate); const bulkUpdateForm = document.getElementById('bulk-update-form');
document.getElementById('manual-scan-form').addEventListener('submit', handleManualScan); const manualScanForm = document.getElementById('manual-scan-form');
document.getElementById('populate-form').addEventListener('submit', handlePopulateDatabase); const populateForm = document.getElementById('populate-form');
if (editForm) editForm.addEventListener('submit', handleEditSubmit);
if (bulkUpdateForm) bulkUpdateForm.addEventListener('submit', handleBulkUpdate);
if (manualScanForm) manualScanForm.addEventListener('submit', handleManualScan);
if (populateForm) populateForm.addEventListener('submit', handlePopulateDatabase);
} }
// API calls // API calls