Commit Graph
100 Commits
Author SHA1 Message Date
Mathieu Moran d8330579ec Merge pull request #91 from quoije/2026
Fix form-switch toggle visibility in dark mode
2026-01-31 22:55:27 -05:00
Mathieu MoranandClaude Opus 4.5 087f4f4023 Fix form-switch toggle visibility in dark mode
The toggle button for "Films non regardés seulement" was invisible
in dark mode. Added specific styles for the form-switch component
with proper background colors and slider visibility.

Co-Authored-By: Claude Opus 4.5 <[email protected]>
2026-01-31 22:54:39 -05:00
Mathieu Moran cc729de70e Merge pull request #90 from quoije/2026
Fix cookie expiration, ranking by completion time, and checklist confirmation
2026-01-31 22:43:59 -05:00
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 ab67206c71 Merge pull request #86 from quoije/2026
Polish admin and stats tab styling
2026-01-27 10:36:58 -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 12d9d641eb Merge pull request #85 from quoije/2026
Refine admin control layout and stats tabs
2026-01-27 02:46:58 -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 b0ff5e598e Merge pull request #84 from quoije/2026
Adjust mobile navbar user layout
2026-01-26 19:29:36 -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 1492e5e568 Merge pull request #83 from quoije/2026
Trim long navbar usernames on mobile
2026-01-26 19:01:17 -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 792f2350ad Merge pull request #82 from quoije/2026
Update README preview GIF
2026-01-26 18:49:34 -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
Mathieu Moran 38b4d03c4e Merge pull request #68 from quoije/2026
update preview and fix image url
2025-12-22 23:33:50 -05:00
Mathieu Moran 7722ac89c3 update preview and fix image url 2025-12-22 23:33:00 -05:00
Mathieu Moran 1c4b18f8aa fix logo (#65) 2025-12-22 21:22:28 -05:00
Mathieu Moran b2da6de9b3 fix logo 2025-12-22 21:22:05 -05:00
Mathieu Moran ae5a5ee073 Merge pull request #64 from quoije/2026
Movie watch progression tracking (#63)
2025-12-22 19:59:07 -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 Moran 0089d2f376 Merge pull request #61 from quoije/2026
v2.3 - redesign admin panel, redesign stats, fix cache and more
2025-12-22 18:17:47 -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 Moran 0b1709c2ed Merge pull request #58 from quoije/2026
v2.2 - redesign admin panel, fix readme.md
2025-12-22 16:36:48 -05:00
Mathieu MoranandCursor Agent 647a0b6a47 Readme file updates (#57)
* Refactor READMEs and clarify optional features

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

* Add video auth details and Let's Encrypt helper

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

---------

Co-authored-by: Cursor Agent <[email protected]>
2025-12-22 16:32:17 -05:00
Mathieu MoranandCursor Agent eeaf2592ea Docs: Add more .env options and python server details (#56)
Co-authored-by: Cursor Agent <[email protected]>
2025-12-22 16:23:28 -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 Moran 57918f8b88 Fix image link in README.md
Updated image link in README for Oscars Pool 2026.
2025-12-22 05:43:02 -05:00
Mathieu Moran 2da9e44105 Merge pull request #54 from quoije/2026-video.backend
add video backend server, fix styling and more
2025-12-22 05:42:04 -05:00
Mathieu Moran 8c4941b0a2 Update README.md 2025-12-22 05:40:50 -05:00
Mathieu Moran 9d3376bbb0 update preview v2.1 2025-12-22 05:39:25 -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
Mathieu MoranandCursor Agent 5325576dc4 Dns validation for https (#49)
* Add DNS-01 challenge support for Let's Encrypt

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

* Refactor letsencrypt script to use /dev/tty for interactive prompts

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

* feat: Add optional DNS hook mode for certonly

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

* Refactor: Improve MongoDB connection and add certifi

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

* Checkpoint before follow-up message

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

---------

Co-authored-by: Cursor Agent <[email protected]>
2025-12-22 04:16:45 -05:00
Mathieu MoranandCursor Agent 812590d262 Add Python-only Let's Encrypt certificate management (#48)
Co-authored-by: Cursor Agent <[email protected]>
2025-12-22 03:20:41 -05:00
Mathieu Moran 1b27b378ec Merge pull request #47 from quoije/cursor/page-title-and-player-ui-a564
Page title and player UI
2025-12-22 03:06:19 -05:00
Mathieu Moran 88129ca5ac Merge pull request #46 from quoije/cursor/webplayer-bug-fixes-aea1
Webplayer bug fixes
2025-12-22 02:20:31 -05:00
Mathieu Moran f65d92743e Merge pull request #45 from quoije/cursor/video-server-and-timestamp-fc01
Video server and timestamp
2025-12-22 01:50:21 -05:00
Mathieu Moran 837e02ef4c Merge pull request #44 from quoije/cursor/video-server-and-embed-7ca8
Video server and embed
2025-12-22 00:13:52 -05:00
Mathieu Moran f54b1d91c5 Merge pull request #43 from quoije/cursor/header-loading-optimization-321c
Header loading optimization
2025-12-21 18:03:00 -05:00
Mathieu Moran 3b055bfdeb Merge pull request #42 from quoije/cursor/admin-panel-version-styling-4134
Admin panel version styling
2025-12-21 17:21:25 -05:00
Mathieu Moran c79b3f1e16 Merge pull request #41 from quoije/cursor/admin-panel-version-control-67d5
Admin panel version control
2025-12-21 17:16:01 -05:00
Mathieu Moran ad211b11bb Merge pull request #40 from quoije/cursor/blur-below-header-b6ef
Blur below header
2025-12-21 17:05:37 -05:00
Mathieu Moran 6d7269f331 Merge pull request #39 from quoije/cursor/blur-effect-timing-6b09
Blur effect timing
2025-12-21 16:59:25 -05:00
Mathieu Moran 282bc1750c Merge pull request #38 from quoije/cursor/content-blur-loading-scope-8828
Content blur loading scope
2025-12-21 16:55:12 -05:00
Mathieu Moran 74c833b62c Merge pull request #37 from quoije/cursor/page-load-indicators-ea0b
Page load indicators
2025-12-21 16:50:46 -05:00
Mathieu Moran c7de8b8db0 Merge pull request #36 from quoije/cursor/films-checklist-loading-indicator-fa57
Films checklist loading indicator
2025-12-21 16:45:26 -05:00
Mathieu Moran 4809c8ad85 Merge pull request #35 from quoije/cursor/films-and-checklist-loading-4f51
Films and checklist loading
2025-12-21 16:40:55 -05:00
Mathieu Moran b764d26ad0 Merge pull request #34 from quoije/cursor/loading-spinner-implementation-907f
Loading spinner implementation
2025-12-21 16:30:54 -05:00
Mathieu Moran aeff3504f0 Merge pull request #33 from quoije/cursor/films-checklist-page-performance-ddde
Films checklist page performance
2025-12-21 16:25:07 -05:00
Mathieu Moran 1e7ab962d6 Merge pull request #32 from quoije/cursor/oscar-date-configuration-cef0
Oscar date configuration
2025-12-21 16:04:33 -05:00
Mathieu Moran d732e1a013 Merge pull request #31 from quoije/cursor/statistique-page-cleanup-3226
Statistique page cleanup
2025-12-21 15:54:16 -05:00
Mathieu Moran 3c2ddf66ff Merge pull request #30 from quoije/cursor/statistics-page-tabs-4b57
Statistics page tabs
2025-12-21 15:49:43 -05:00
Mathieu Moran a7b7df8689 Merge pull request #29 from quoije/cursor/yearly-completion-and-winner-stats-2e76
Yearly completion and winner stats
2025-12-21 15:41:04 -05:00
Mathieu Moran 5a2b40357e Merge pull request #28 from quoije/cursor/admin-control-tab-order-0fa0
Admin control tab order
2025-12-21 15:27:01 -05:00
Mathieu Moran 595319945d Merge pull request #27 from quoije/cursor/security-audit-and-readme-0bd2
Security audit and readme
2025-12-21 15:21:12 -05:00