Final adjustments to UI layout and positioning. Ensured all JavaScript functions are properly connected and working. Verified event loading functionality is fully restored.
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.
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.
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
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.
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
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.
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
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.
- 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
🛠️ myice.py -> Added new enum value 'u111' to AgeGroup, modified get_schedule function to accept num_days parameter, added num_days option to schedule function.
🛠️ myice.py -> Modified get_schedule function and updated AI system prompt
🛠️ poetry.lock -> Updated rich package version from 13.9.3 to 13.9.4 and rl-ai-tools package version from 1.9.0 to 1.10.0
🛠️ pyproject.toml -> Updated project version from v0.2.0 to v0.2.4
🛠️ myice.py -> changed login and get\_userid prints to write to stderr
🔴 pyproject.toml -> removed version v0.1.3
🟢 pyproject.toml -> added version v0.1.5
- Added `EventType` enum with two values: 'game' and 'practice'.
- Updated `parse_schedule` function to accept an optional `event_type_filter` argument which filters displayed events based on their type.
- Changed `age_group` parameter in `parse_schedule` to allow `None`.