Commit Graph

76 Commits

Author SHA1 Message Date
a3360f3a1b feat: add ESC key support to close event details modal and bump version to v0.6.0 v0.6.0 2025-11-11 08:51:58 +01:00
b74c820387 docs: improve AGENTS.md with better build/lint/test commands and code style guidelines 2025-11-11 08:46:13 +01:00
b5cc0f4888 chore(docker): use docker cache mount for pip install step 2025-10-15 16:03:01 +02:00
e85aaf143e feat: redesign UI with Tailwind CSS and improve event display 2025-10-15 15:59:57 +02:00
c21afdebc0 chore: use python image 3.13-slim instead of 3.13-alpine 2025-10-01 16:22:48 +02:00
11d9aa0290 feat: slim down Docker image size by 8x using Alpine Linux base and multi-stage build 2025-09-30 09:22:26 +02:00
33d3dee358 chore: update fastapi and dependencies to latest versions 2025-09-30 08:37:56 +02:00
8ae1c33b3a chore: migrate to python 3.13 and update dependencies
Migrate from Python 3.11 to 3.13 with updated dependencies. Switch from PyPDF2 to pypdf library for better PDF processing. Add new U14 age groups and extract-pdf utility script.
2025-09-29 23:05:48 +02:00
ce42f489bf refactor: migrate to distroless multi-stage Docker build 2025-09-29 22:07:11 +02:00
e7615de98b feat: display staff information and improve empty state handling in game details modal v0.5.8 2025-09-29 20:17:23 +02:00
394d71f59c doc: fix markdownlint issues in AGENTS.md 2025-09-23 09:33:44 +02:00
b016d58d84 chore: bump version to v0.5.7 v0.5.7 2025-08-20 11:10:20 +02:00
6232e91925 feat: layout filters horizontally 2025-08-20 11:10:06 +02:00
7ce4fbd756 chore: bump version to v0.5.6 v0.5.6 2025-08-20 10:17:08 +02:00
bb62acfc7f feat: add secondary agegroup selector for subgroup filtering
- Added subgroup dropdown selector to filter events by team within agegroup
- Implemented logic to populate subgroup options based on selected agegroup
- Updated event filtering to support both agegroup and subgroup criteria
- Added event listeners for real-time filtering when selectors change
2025-08-20 10:17:00 +02:00
5f6ae79bf0 chore: bump version to v0.5.5 v0.5.5 2025-08-19 19:22:21 +02:00
697788c20f feat: auto-load events on login and improve player display in event details
- Automatically load events when user logs in
- Rename updateAccountOptions to updateAccountOptionsAndLoadEvents
- Add auto-fetch of events after account selection
- Enhance event details modal with:
  * Player count summary
  * Position breakdown
  * Players sorted by position first, then by number
  * Position displayed in player list
2025-08-19 19:21:50 +02:00
5c5828cfc1 chore: add event title 2025-08-19 19:12:45 +02:00
0a88217443 chore: bump version to v0.5.4 v0.5.4 2025-08-19 19:06:47 +02:00
2d783778a7 feat: update agegroup filter to show only agegroup and filter accordingly 2025-08-19 19:06:24 +02:00
a3d4114044 chore: bump version to v0.5.3 v0.5.3 2025-08-19 18:50:12 +02:00
cec54a45d7 fix: improve UI layout and add loading indicator for events 2025-08-19 18:48:56 +02:00
3efa7101e1 fix: finalize UI improvements and ensure all functionality works
Final adjustments to UI layout and positioning. Ensured all JavaScript functions are properly connected and working. Verified event loading functionality is fully restored.
2025-08-19 16:12:51 +02:00
861ff0650f fix: restore event loading functionality and improve UI layout
Fixed incomplete fetchEvents function by adding missing data processing logic. Restored updateAgeGroupOptions, displayEvents, and fetchEventDetails functions. Moved connected user info to top-right corner. Hide title when logged in. Reduced vertical spacing for better layout. Made event filters more compact. All functionality restored and UI improved.
2025-08-19 16:09:57 +02:00
73f72d1bbe feat: enhance login button styling and fix JavaScript syntax errors
Centered the login button on the page with improved styling including padding and shadow effects. Fixed JavaScript syntax errors in the event handling code. Removed unmatched closing div tags to ensure valid HTML structure.
2025-08-19 15:49:28 +02:00
a407a108ed fix: improve user authentication and account handling
Fixed issues with user display by fetching user info from userinfo endpoint

Improved error handling for JSON responses in schedule endpoint

Fixed account selection to use available accounts from config instead of default

Enhanced frontend to properly handle API responses and errors
2025-08-19 15:17:45 +02:00
d6277d7766 fix: improve authentication handling and error management 2025-08-19 15:04:53 +02:00
5b1d741a16 feat: implement OpenID Connect authentication with Infomaniak 2025-08-19 11:16:07 +02:00
5957868e0f chore: bump version to v0.5.2 2025-08-19 10:48:55 +02:00
525d3bf326 fix: escape control characters in JSON output to make it jq compatible 2025-08-19 10:48:04 +02:00
0e1eb0da3f chore: bump version to v0.5.1 2025-08-19 09:41:57 +02:00
4b81cc7f9f fix: improve JSON response handling in API calls 2025-08-19 09:41:28 +02:00
c4d9236b16 feat: make config_section a global CLI option
Users can now specify --config-section once at the beginning of the command instead of repeating it for each subcommand. Also bumped version to v0.5.0 for this new feature.
2025-08-19 09:25:50 +02:00
2a5883375f chore: display userid after fetch 2025-08-19 09:10:04 +02:00
c4b6e39e9e fix: correct project scripts section name and bump version
- Changed [projectscripts] to [project.scripts] in pyproject.toml to properly register the myice command line tool
- Bump version to v0.4.3
2025-08-19 09:03:42 +02:00
d3b5b6b6fd fix: resolve typer/click compatibility issue with make_metavar error
Fixed TypeError: Parameter.make_metavar() missing 1 required positional argument: 'ctx'
by correcting typer.Option(...) usage for optional parameters with default None values.

Bump version to v0.4.2
2025-08-19 08:57:37 +02:00
bcde9fccf5 chore: bump version to v0.4.1 and update dependencies 2025-08-19 08:52:39 +02:00
c2ab852f3f docs: add web interface and mobile functions info to README
Add documentation about the web interface (index.html and webapi.py) including how to run it and available endpoints. Also document the mobile API functions (mobile-login, mobile, mobile-game) that can be used for debugging or when the web interface is not available.
2025-08-19 08:37:49 +02:00
6b5949b726 docs: translate README to English and add mobile-login info
Translate French content in README to English and add information about how to fetch club_id and token using the mobile-login command.
2025-08-19 08:34:02 +02:00
66b93af6b1 feat: add account selection support in web UI
Add support for multiple MyIce accounts in the web interface:

- Create /accounts endpoint to fetch available accounts from config files

- Update index.html to dynamically show available accounts

- Modify /schedule and /game endpoints to accept account parameter

- Store selected account in localStorage for persistence
2025-08-18 22:10:24 +02:00
6eb9598012 fix: disable SSL verification warnings by commenting out verify=False lines 2025-08-18 21:58:10 +02:00
e7b0fdec00 feat: add support for multiple config sections in INI file\n\n- Add --config-section CLI option to all commands to allow switching between different credential sets\n- Modify get_login() function to accept a config_section parameter\n- Update all functions that use credentials to pass through the config_section parameter\n- Update webapi.py to handle the additional return value from get_login()\n- Document the new feature in README.md with examples\n- Fix type issues and formatting to pass pre-commit checks 2025-08-18 18:28:53 +02:00
4c53d6ce08 feat: add club selection support and improve mobile API integration 2025-08-18 11:26:56 +02:00
3ce916f5c4 fix: update get_login return type to allow None values 2025-08-18 09:56:11 +02:00
ea696ed361 refactor: simplify AgeGroup enum and enhance normalization
Remove redundant ELIT variants from AgeGroup enum and implement case/spelling tolerant normalization function. The new normalize_age_group function handles case-insensitive matching and spelling variations (Elite/ELIT/Elit) while mapping to canonical enum values.

This reduces the enum from 15 to 13 entries while maintaining full backward compatibility.
2025-08-15 07:50:26 +02:00
6b09a95a45 docs: add and format AGENTS.md file
Adding documentation file for agentic coding agents with proper markdown formatting to pass linting checks.
2025-08-14 12:56:32 +02:00
b11f875756 feat: update AgeGroup class to include all age groups from schedule.json
Added missing age group enums based on the schedule.json file to ensure proper parsing of all scheduled events.
2025-08-14 12:54:29 +02:00
5b5b593a3b refactor: improve JSON handling and API reliability
- Add robust JSON sanitization function to handle malformed API responses
- Select club after login for proper session initialization
- Enhance API request headers for better compatibility
- Add JSON parsing fallback with sanitization for malformed files
- Add poetry plugin requirement for export functionality
2025-08-14 12:50:13 +02:00
03d33f2e03 feat: add healthcheck 2025-03-13 11:29:30 +01:00
2bd10409a1 chore: change title and aligment 2025-03-13 08:51:18 +01:00