Commit Graph
109 Commits
Author SHA1 Message Date
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 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 b2da6de9b3 fix logo 2025-12-22 21:22:05 -05:00
Mathieu MoranandCursor Agent e0d5531041 Movie watch progression tracking (#63)
* feat: Add movie playback progress display and API

Co-authored-by: mathieumoran1 <[email protected]>

* Add padding to bottom of movies page

Co-authored-by: mathieumoran1 <[email protected]>

* Fix: Hide resume/progress bar when near end of video

Co-authored-by: mathieumoran1 <[email protected]>

---------

Co-authored-by: Cursor Agent <[email protected]>
2025-12-22 19:58:37 -05:00
Mathieu MoranandCursor Agent 79b9f4a5a3 Statistics page redesign (#60)
* feat: Add modal to display watched movies with details

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor movie modal: remove search, improve category display

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor movie category display to use details element

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor movie playback and add clickability to stats

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor: Improve movie linking and player logic

Co-authored-by: mathieumoran1 <[email protected]>

* Prevent caching of sensitive and dynamic API data

Co-authored-by: mathieumoran1 <[email protected]>

* feat: Prevent caching of sensitive admin data

Co-authored-by: mathieumoran1 <[email protected]>

* feat: Add no-cache headers to API requests

Co-authored-by: mathieumoran1 <[email protected]>

* Remove unused movie sorting functionality

The movie sorting dropdown and its associated logic were removed as they are no longer needed.

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor admin settings to use tabs instead of accordion

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor: Adjust button layout for active year selection

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor active year selection UI

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor: Improve admin settings layout for better responsiveness

Co-authored-by: mathieumoran1 <[email protected]>

* Remove redundant completion explanation from user-stat.html

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor user stats page to display year in ranking tab badge

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor: Rename 'Finisseur(s)' column to 'Nombre'

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor: Remove redundant completer count column

Co-authored-by: mathieumoran1 <[email protected]>

---------

Co-authored-by: Cursor Agent <[email protected]>
2025-12-22 18:16:37 -05:00
Mathieu MoranandCursor Agent 82f9462dda Admin movies tab redesign (#59)
* Refactor admin movie tab into sub-tabs for manage, add, and help

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor admin version management UI and styling

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor: Adjust footer padding and border-radius

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor: Improve admin subtab styling

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor admin backup tab into subtabs for backup, restore, and help

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor admin winners tab UI and functionality

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor: Display all winners by year, not just current year

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor winners tab to simplify management

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor control.html layout for winner section

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor 100% completion modal UI with tabs and preview

Co-authored-by: mathieumoran1 <[email protected]>

* Remove redundant 'Preview' and 'Modal' badges

Co-authored-by: mathieumoran1 <[email protected]>

---------

Co-authored-by: Cursor Agent <[email protected]>
2025-12-22 17:15:46 -05:00
Mathieu MoranandCursor Agent 59eb70dea9 Player text visibility option (#55)
* feat: Add player admin UI settings

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor player UI settings to combine source and progress

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor admin settings to use accordion layout

Co-authored-by: mathieumoran1 <[email protected]>

---------

Co-authored-by: Cursor Agent <[email protected]>
2025-12-22 16:17:31 -05:00
Mathieu MoranandCursor Agent 421206d280 Checklist styling update (#53)
* Refactor checklist styling and structure

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor movie display and styling for better UI

Co-authored-by: mathieumoran1 <[email protected]>

* feat: Add page loader component and integrate into player

Co-authored-by: mathieumoran1 <[email protected]>

* Refactor: Adjust IMDB icon size and alignment

Co-authored-by: mathieumoran1 <[email protected]>

* Feat: Show admin status on player page

Co-authored-by: mathieumoran1 <[email protected]>

---------

Co-authored-by: Cursor Agent <[email protected]>
2025-12-22 05:36:33 -05:00
Mathieu MoranandCursor Agent 1a460ca06c Fix: Prevent early client progress saves from overwriting server progress (#52)
Co-authored-by: Cursor Agent <[email protected]>
2025-12-22 05:08:53 -05:00
Mathieu MoranandCursor Agent a75a024249 Fix: Improve playback progress saving and retrieval (#51)
Co-authored-by: Cursor Agent <[email protected]>
2025-12-22 04:54:03 -05:00
Mathieu MoranandCursor Agent d933d69b5f feat: Add IMDb ID to playback progress and auto-mark as watched (#50)
Co-authored-by: Cursor Agent <[email protected]>
2025-12-22 04:39:52 -05:00
Cursor Agentandmathieumoran1 20d0a52f78 Refactor: Organize movie edit form into tabs
Separate movie info and video player settings into distinct tabs for better organization and user experience.

Co-authored-by: mathieumoran1 <[email protected]>
2025-12-22 07:40:03 +00:00
Cursor Agentandmathieumoran1 dfd8e9b4fd Fix: Adjust log off button size
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-22 07:37:42 +00:00
Cursor Agentandmathieumoran1 0c488319f6 Refactor: Rename "Oscar Pool" to "Pool Oscars" in titles
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-22 07:33:32 +00:00
Cursor Agentandmathieumoran1 76e9a934d6 Refactor: Update brand name and dynamic titles
Consistently use "Oscar Pool" as the brand name. Dynamically update page titles to include the active Oscar year.

Co-authored-by: mathieumoran1 <[email protected]>
2025-12-22 07:31:26 +00:00
Cursor Agentandmathieumoran1 e91c919b46 Refactor: Use query token for API video playback
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-22 07:11:03 +00:00
Cursor Agentandmathieumoran1 fd881399cd Add caching and token fallback for /api/video streams
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-22 07:02:32 +00:00
Cursor Agentandmathieumoran1 8d93c31df8 Refactor video progress tracking UI and logic
Improve progress UI, handle token expiration, and fix restore logic.

Co-authored-by: mathieumoran1 <[email protected]>
2025-12-22 06:57:58 +00:00
Cursor Agentandmathieumoran1 1cda3c23e1 Refactor video progress saving logic
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-22 06:43:29 +00:00
Cursor Agentandmathieumoran1 ce234d0fac feat: Add video playback progress display and saving
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-22 06:40:18 +00:00
Cursor Agentandmathieumoran1 8590c30596 Add support for App/Python protected video streams
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-22 06:33:45 +00:00
Cursor Agentandmathieumoran1 2025f0231c Add movie ID display and copy functionality
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-22 05:38:42 +00:00
Cursor Agentandmathieumoran1 ea37bf95ef Refactor video session handling and CORS configuration
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-22 05:35:50 +00:00
Cursor Agentandmathieumoran1 e6537884a3 feat: Add Python video server and improve playback
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-22 05:25:19 +00:00
Cursor Agentandmathieumoran1 2f767e15a6 feat: Add server-hosted video streaming support
Introduces a new /api/video route for streaming video files stored on the server. This allows for direct playback of local video files with seeking capabilities. The Movie model and UI have been updated to support this new feature.

Co-authored-by: mathieumoran1 <[email protected]>
2025-12-22 05:12:06 +00:00
Cursor Agentandmathieumoran1 e6f3b02830 Refactor: Improve header loading and image rendering
Add early JS to populate header elements and optimize image loading.

Co-authored-by: mathieumoran1 <[email protected]>
2025-12-21 23:02:22 +00:00
Cursor Agentandmathieumoran1 1f3511b455 Refactor version history display and styling
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-21 22:21:03 +00:00
Cursor Agentandmathieumoran1 f5bd8709a0 feat: Manage app version from admin panel
Removes GitHub dependency for app version display.

Co-authored-by: mathieumoran1 <[email protected]>
2025-12-21 22:15:15 +00:00
Cursor Agentandmathieumoran1 1bc65ebd77 Refactor page loader to use a dedicated JS class
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-21 22:04:58 +00:00
Cursor Agentandmathieumoran1 d9ed2cdc92 Refactor: Preload page loader and use DOMContentLoaded
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-21 21:59:02 +00:00
Cursor Agentandmathieumoran1 00f5328c75 Refactor: Simplify page loader UI and error handling
Remove subtitle and retry button from page loader. Update CSS for new loader style.

Co-authored-by: mathieumoran1 <[email protected]>
2025-12-21 21:54:59 +00:00
Cursor Agentandmathieumoran1 d683f04305 Fix page loader alignment with dynamic navbar
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-21 21:53:19 +00:00
Cursor Agentandmathieumoran1 fa0ba74682 feat: Implement full-page loader with progress bar
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-21 21:50:24 +00:00
Cursor Agentandmathieumoran1 377c5a828e Refactor loading indicators to use CSS dots
This change replaces inline spinners with a more subtle CSS-based loading indicator. It also cleans up the inline loading text to be more concise.

Co-authored-by: mathieumoran1 <[email protected]>
2025-12-21 21:44:49 +00:00
Cursor Agentandmathieumoran1 34852ce931 Refactor: Fetch movie summary data separately
This change fetches movie counts and watched status in a separate, faster API call. This allows the UI to update header information (like movie counts and last updated time) much sooner, improving perceived performance. The `watchedMovies` array is now fetched as part of this summary endpoint.

Co-authored-by: mathieumoran1 <[email protected]>
2025-12-21 21:40:16 +00:00
Cursor Agentandmathieumoran1 762f75ad62 Add loading indicators to user statistics page
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-21 21:30:29 +00:00
Cursor Agentandmathieumoran1 e318e25ed1 Add loading and error states for movie lists
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-21 21:29:21 +00:00
Cursor Agentandmathieumoran1 3884ce6492 feat: Add compression and caching to movie routes
Adds gzip compression middleware and an in-memory cache for movie data to improve performance. Also adds database indexes for common query patterns.

Co-authored-by: mathieumoran1 <[email protected]>
2025-12-21 21:24:27 +00:00
Cursor Agentandmathieumoran1 e326ead817 feat: Allow configuring Oscar date per year
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-21 21:03:55 +00:00
Cursor Agentandmathieumoran1 05a4b9a673 Refactor user stats display to use tables
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-21 20:53:52 +00:00
Cursor Agentandmathieumoran1 122c7ee8d3 Feat: Add tie indicator to user stats and app control
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-21 20:49:16 +00:00
Cursor Agentandmathieumoran1 52eaee65f6 Refactor: Support multiple winners per year and improve UI
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-21 20:48:29 +00:00
Cursor Agentandmathieumoran1 e6f3998d88 Refactor user stats page to use tabs and cache data
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-21 20:44:14 +00:00
Cursor Agentandmathieumoran1 9a7063b9dc feat: Add winners tab and 100% completion stats
Adds a new section to the admin control panel for managing yearly winners.
Also includes a new section on the user statistics page to display users
who have completed 100% of movies for each year.

Co-authored-by: mathieumoran1 <[email protected]>
2025-12-21 20:38:01 +00:00
Cursor Agentandmathieumoran1 58d5c3bd40 Refactor: Swap tab IDs and labels for clarity
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-21 20:26:30 +00:00
Cursor Agentandmathieumoran1 448c28caee feat: Add admin DB backup and restore functionality
Co-authored-by: mathieumoran1 <[email protected]>
2025-12-21 20:08:58 +00:00