Commit Graph
245 Commits
Author SHA1 Message Date
Mathieu MoranandClaude Opus 4.5 7a629b6c91 Fix cookie expiration, ranking by completion time, and checklist confirmation
Issues fixed:
- #87: Extend video session cookie to 24h and add keep-alive refresh every
  30 minutes during playback to prevent expiration while watching long movies
- #88: Rank checklist completers by completion datetime (earliest first)
  in both the 100% tab and main stats ranking as tiebreaker
- #89: Add confirmation modal when unchecking a movie from the checklist
  to prevent accidental removal

Co-Authored-By: Claude Opus 4.5 <[email protected]>
2026-01-31 22:42:13 -05:00
Mathieu Moran c81135a4c1 Polish admin and stats tab styling
Improve tab border handling and spacing for admin and stats views, plus minor copy spacing fixes.
2026-01-27 10:36:31 -05:00
Mathieu Moran 9868d2c39a Refine admin control layout and stats tabs
Tighten admin tab layout/styling and simplify control UI while aligning stats tab spacing and labels.
2026-01-27 02:45:49 -05:00
Mathieu Moran 0ae3af13f1 Adjust mobile navbar user layout
Center the username between the toggle and sign-out on mobile and remove hard name truncation.
2026-01-26 19:27:57 -05:00
Mathieu Moran cf57eee5a3 Trim long navbar usernames on mobile
Limit displayed user names to 15 characters with ellipsis to prevent layout wrap.
2026-01-26 19:00:27 -05:00
Mathieu Moran a17d548431 Fix README preview GIF path
Restore the relative image link so the README works across branches.
2026-01-26 18:48:42 -05:00
Mathieu Moran 341a5e6c61 Update README preview GIF 2026-01-26 18:41:37 -05:00
Mathieu Moran b75be09aec Merge pull request #81 from quoije/cursor/ui-nav-active-and-remove-titles
UI polish: remove page titles and highlight active nav
2026-01-26 18:15:58 -05:00
Mathieu Moran 36057d75df UI polish: remove page titles and highlight active nav 2026-01-26 18:15:30 -05:00
Mathieu Moran e8d838318e Merge pull request #80 from quoije/2026
Fix theme flash on player navigation
2026-01-26 02:48:34 -05:00
Mathieu Moran 1d41cd29d9 Fix theme flash on navigation
Persist last applied theme in session storage to avoid light-mode flash and toggle flicker when navigating between pages (notably player.html). Also revert README preview back to preview.png for now.
2026-01-26 02:46:35 -05:00
Mathieu Moran cde6971544 Merge pull request #79 from quoije/2026
theme rework
2026-01-26 02:07:41 -05:00
Mathieu Moran 8ee3c5aa5b Update README preview GIF
Switch README screenshot to animated GIF and replace static preview images with the animated asset.
2026-01-26 02:04:39 -05:00
Mathieu Moran 01c478aafe Theme rework: polish dark mode and previews
Refine mobile nav layout, improve dark theme UI polish, and update README previews with light/dark variants.
2026-01-26 01:47:17 -05:00
Mathieu Moran 67040095bc Merge pull request #78 from quoije/2026
Update README preview and features list
2026-01-25 18:46:47 -05:00
Mathieu Moran 6f66eef0d4 Update README preview and features list
Use a relative preview image path and align feature bullets with current app capabilities.
2026-01-25 18:44:56 -05:00
Mathieu Moran 6543ed172b Merge pull request #77 from quoije/2026
Add ratings and refine movies UI
2026-01-25 18:20:47 -05:00
Mathieu Moran c2f03230b2 Fix padding for 5 star rating
Keep rating layout stable when the average label is hidden.
2026-01-25 18:19:19 -05:00
Mathieu Moran 7ebd57931c Merge pull request #76 from quoije/2026
oops, fixed the embarrassing French label
2026-01-25 18:10:44 -05:00
Mathieu Moran a30bbcf514 oops, fixed the embarrassing French label
Corrected the movies page label to proper French.
2026-01-25 18:09:11 -05:00
Mathieu Moran 55a93a0ac5 Merge pull request #75 from quoije/2026
Allow clearing ratings and polish movies UI
2026-01-25 18:01:02 -05:00
Mathieu Moran 86a25b77e8 Allow clearing ratings and polish movies UI
Enable toggling ratings off by re-clicking the same star in the player and movie list, and tighten the movies card layout around rating and categories.
2026-01-25 17:58:50 -05:00
Mathieu Moran 8790f46a00 Merge pull request #74 from quoije/2026
Add user movie ratings and refresh movie cards
2026-01-25 17:14:07 -05:00
Mathieu Moran fe21a12c82 Add user movie ratings and refresh movie cards
Store per-user 5-star ratings with averages and surface them in the player. Refresh movie list layout to show ratings and details in a cleaner card layout.
2026-01-25 16:16:07 -05:00
Mathieu Moran 23ac8e07a3 Merge pull request #73 from quoije/2026
we subbing now bois
2026-01-25 02:02:20 -05:00
Mathieu Moran 406a4f0bb3 Support multiple subtitle tracks
Adds multi-language subtitle storage, upload/removal, and player/admin UI support, plus fixes subtitle metadata updates during upload.
2026-01-25 02:01:08 -05:00
Mathieu Moran 891eb67e2d Add subtitle UI badge and VTT positioning
Documents the disclaimer, shows subtitles in admin movie badges, and offsets VTT subtitles from the bottom.
2026-01-25 01:00:48 -05:00
Mathieu Moran a9592ece7a Add subtitle upload and streaming support
Adds movie subtitle metadata and admin upload flow with SRT to VTT conversion, plus player/control UI and API route updates for subtitle delivery.
2026-01-25 00:29:04 -05:00
Mathieu Moran 9076461c7e Ignore subtitles uploads directory
Prevents subtitle files from being added to the repository.
2026-01-25 00:27:46 -05:00
Mathieu Moran f9d8722b4e Add low-quality server video support
Include low-quality video file paths in movie settings, expose them through the admin UI, and add a player toggle that streams /api/video with quality=low when available. Extend both Node and Python video endpoints to serve the low-quality file.

Test: not run (mark for testing)
2026-01-24 09:26:23 -05:00
Mathieu Moran 1e16b964e6 Merge pull request #72 from quoije/2026
Promote 2026 updates to prod
2026-01-22 14:28:54 -05:00
Mathieu Moran b00280e9e4 Add CAM tagging to movies
Store a CAM flag in the movie model and expose it via the admin add/edit flow, then render a CAM badge on movie posters in the films page.
2026-01-22 14:26:43 -05:00
Mathieu Moran be47f3830d Merge pull request #71 from quoije/2026
Refactor control panel and add loading bar to Mes picks
2025-12-28 02:21:03 -05:00
Mathieu Moran d10164076c Refactor control panel: merge Lecteur tab into Visibilité and add loading bar to Mes picks
- Remove 'Lecteur' subtab from Réglages section
- Move player UI settings (show Source/Progress) into Visibilité tab
- Consolidate reload/save buttons to use single set for both visibility and player UI settings
- Simplify visibility tab formatting with minimalistic, consistent styling
- Add loading bar progress indicator to Mes picks tab matching movies/checklist/stats pages
- Update JavaScript to handle both visibility config and player UI settings together
- Improve code organization and user experience
2025-12-28 02:20:21 -05:00
Mathieu Moran b5827acfd1 Merge pull request #70 from quoije/2026
Remove unnecessary files and update .gitignore
2025-12-28 01:32:41 -05:00
Mathieu Moran 211c115d41 Remove unnecessary files and add OS/Python cache files to .gitignore
- Remove .DS_Store (macOS system file)
- Remove Python __pycache__ files (compiled bytecode)
- Add .DS_Store, Thumbs.db, desktop.ini to .gitignore
- Add Python cache patterns (__pycache__/, *.pyc, *.pyo, *.pyd) to .gitignore
2025-12-28 01:31:45 -05:00
Mathieu Moran 55fe658046 Merge pull request #69 from quoije/2026
Merge 2026 branch into prod
2025-12-28 01:09:12 -05:00
Mathieu Moran fb07c81a43 Add note that application interface is in French 2025-12-28 01:03:07 -05:00
Mathieu Moran b6df70864d Update README files with comprehensive feature documentation
- Main README.md:
  - Reorganized features into User Features and Admin Features sections
  - Added missing features: Oscar picks system, category management, winner management, view all picks, database backup/restore
  - Updated database models section to list all 6 models
  - Simplified Python video server section to reference detailed README
  - Kept preview image and existing structure

- python_video_server/README.md:
  - Enhanced Endpoints section with response codes and detailed descriptions
  - Added comprehensive Functions Reference section:
    - Public Endpoints: create_video_session, stream_video, healthz
    - Helper Functions: all 16 internal functions documented with descriptions
  - Verified all features, environment variables, and endpoints match actual code
  - No content removed, only additions for better documentation
2025-12-28 00:59:27 -05:00
Mathieu Moran ccf7340727 Remove unused uploads directory creation code 2025-12-28 00:50:14 -05:00
Mathieu Moran e8dabad3c2 Clean up: Add uploads, exemple, and OCR files to .gitignore and remove from repository 2025-12-28 00:50:04 -05:00
Mathieu Moran 6a2ec537e9 Fix category management and remove import feature
- Fix category editing: Added GET /api/categories/:categoryId endpoint to fetch single category by ID, fixing 'Category not found' error when editing categories for active year
- Fix picks handling: Filter out picks for deleted categories when submitting, loading, and calculating scores to prevent errors
- Fix scores display: Always calculate scores from pickDetails instead of stored score value to ensure accuracy when categories are removed
- Add picks cleanup: Automatically clean up picks for deleted categories in database when categories are deleted or scores are fetched
- Fix winner clearing: Allow clearing winners by accepting empty/null winnerName in PUT /api/categories/:categoryId/winner
- Enable category number editing: Made category number editable in edit modal with validation and conflict checking; automatically updates all related picks when category number changes
- Add bulk category management: Added bulk select and delete functionality in Liste tab with select all checkbox and bulk delete button
- Remove import feature: Completely removed PDF/image import functionality including OCR, file upload, and all related UI components
- Update dependencies: Removed unused packages (tesseract.js, sharp, pdfjs-dist, canvas) after removing import feature
- Improve file cleanup: Added retry logic for file deletion to handle Windows file locking issues
2025-12-28 00:48:48 -05:00
Mathieu Moran 7d8077774b Add unsaved changes tracking with banner and button state management in picks tab 2025-12-27 23:38:23 -05:00
Mathieu Moran dc726b9b71 Remove video files and update file structure 2025-12-27 23:22:55 -05:00
Mathieu Moran b39849f745 Filter out scores for removed users in Scores tab (prevent Unknown user display) 2025-12-27 23:21:32 -05:00
Mathieu Moran 9979682beb Add .gitignore rule to ignore files in public/video/ 2025-12-27 23:16:47 -05:00
Mathieu Moran bf45de3bbc Make header logo clickable to navigate to movies page on all pages 2025-12-27 23:07:05 -05:00
Mathieu Moran 70b309d1ae Add visibility toggle for picks features and rename Mes choix to Mes picks
- Renamed 'Mes choix' to 'Mes picks' across all pages and JavaScript files
- Added visibility toggle in control panel (Réglages > Visibilité) to control:
  - Display of 'Mes picks' button in navigation
  - Display of 'Bon picks' column in user statistics
- Combined both visibility options into single toggle for simplicity
- Added backend API endpoints for visibility configuration
- Implemented localStorage caching for instant visibility updates
- Fixed flash of content issues when navigating between pages
- Updated stats endpoint to calculate correct picks on-the-fly from current winners
- Renamed 'Bonnes réponses' to 'Bon picks' in user statistics table
2025-12-27 22:03:01 -05:00
quoije 1281d77c4e WIP: Add points system for movies and picks, admin configuration, and stats page updates 2025-12-26 12:37:30 -05:00
Mathieu Moran 38b4d03c4e Merge pull request #68 from quoije/2026
update preview and fix image url
2025-12-22 23:33:50 -05:00