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

This commit is contained in:
2025-11-03 16:37:42 -05:00
parent c9b099a218
commit 7932b9cfba
6 changed files with 209 additions and 54 deletions
+15 -3
View File
@@ -4,7 +4,7 @@
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>NFOGuard - Database Management</title>
<link rel="stylesheet" href="/static/css/styles.css?v=2.9.10-version-strings-fix">
<link rel="stylesheet" href="/static/css/styles.css?v=2.10.0-skipped-tracking">
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css" rel="stylesheet">
</head>
<body>
@@ -12,7 +12,7 @@
<!-- Header -->
<header class="app-header">
<div class="header-content">
<h1><i class="fas fa-shield-alt"></i> NFOGuard <span style="font-size: 0.5em; color: #888;">v2.9.10-version-strings-fix</span></h1>
<h1><i class="fas fa-shield-alt"></i> NFOGuard <span style="font-size: 0.5em; color: #888;">v2.10.0-skipped-tracking</span></h1>
<p>Database Management & Reporting</p>
</div>
<div class="auth-status" id="auth-status" style="display: none;">
@@ -93,6 +93,17 @@
<small>Last 7 days</small>
</div>
</div>
<div class="stat-card" style="cursor: pointer;" onclick="showSkippedItems()">
<div class="stat-icon" style="background: linear-gradient(135deg, #f39c12 0%, #e67e22 100%);">
<i class="fas fa-ban"></i>
</div>
<div class="stat-info">
<h3 id="skipped-total">-</h3>
<p>Skipped Items</p>
<small id="skipped-breakdown">- movies, - episodes</small>
</div>
</div>
</div>
<div class="dashboard-charts">
@@ -127,6 +138,7 @@
<option value="">All Movies</option>
<option value="true">With Dates</option>
<option value="false">Missing Dates</option>
<option value="skipped">Skipped</option>
</select>
<select id="movies-filter-source">
<option value="">All Sources</option>
@@ -711,6 +723,6 @@
<!-- Toast Notifications -->
<div class="toast-container" id="toast-container"></div>
<script src="/static/js/app.js?v=2.9.10-version-strings-fix"></script>
<script src="/static/js/app.js?v=2.10.0-skipped-tracking">
</body>
</html>
+30 -5
View File
@@ -141,6 +141,24 @@ function updateDashboardStats() {
document.getElementById('no-valid-source-total').textContent = `${moviesWithoutDates} movies, ${episodesWithoutDates} episodes without dates`;
document.getElementById('recent-activity').textContent = dashboardData.recent_activity_count || 0;
// Skipped items
const skippedMovies = dashboardData.movies_skipped || 0;
const skippedEpisodes = dashboardData.episodes_skipped || 0;
const skippedTotal = dashboardData.total_skipped || (skippedMovies + skippedEpisodes);
document.getElementById('skipped-total').textContent = skippedTotal;
document.getElementById('skipped-breakdown').textContent = `${skippedMovies} movies, ${skippedEpisodes} episodes`;
}
function showSkippedItems() {
// Switch to Movies tab and filter to show only skipped items
switchTab('movies');
// Set the filter dropdown to "skipped"
const moviesFilter = document.getElementById('movies-filter-date');
if (moviesFilter) {
moviesFilter.value = 'skipped';
refreshMovies();
}
}
function updateDashboardCharts() {
@@ -196,20 +214,27 @@ async function loadMovies(page = 1) {
const search = document.getElementById('movies-search').value;
const imdbSearch = document.getElementById('movies-imdb-search').value;
const hasDate = document.getElementById('movies-filter-date').value;
const dateFilter = document.getElementById('movies-filter-date').value;
const sourceFilter = document.getElementById('movies-filter-source').value;
const skip = (page - 1) * 100;
console.log(`DEBUG: loadMovies called with page=${page}, calculated skip=${skip}`);
const params = new URLSearchParams({
skip: skip,
limit: 100
});
if (search) params.append('search', search);
if (imdbSearch) params.append('imdb_search', imdbSearch);
if (hasDate) params.append('has_date', hasDate);
// Handle different filter values
if (dateFilter === 'skipped') {
params.append('skipped', 'true');
} else if (dateFilter) {
params.append('has_date', dateFilter);
}
if (sourceFilter) params.append('source_filter', sourceFilter);
try {