Commit graph

29 commits

Author SHA1 Message Date
copilot-swe-agent[bot]
e11a95efa7 Initial plan 2025-08-28 18:15:58 +00:00
a9c5937ce4 Cleanup selection of month/year 2025-08-28 20:15:07 +02:00
Copilot
7f8b2c4b8c
Enhance shift handling: Move storage to file system and add month selection (#36)
* Initial plan

* Initial setup: Downgrade .NET version to 8.0 for compatibility

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Implement enhanced shift handling with file system storage and month selection

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Move component styles from global app.css to Index.razor.css for proper component isolation

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>
2025-08-28 19:47:12 +02:00
Copilot
497379f62b
Save shifts and transport configurations in external files for Docker persistence (#31)
* Initial plan

* Implement external configuration file persistence for Docker containers

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Add Docker documentation and finalize external config implementation

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Delete the files

* Adapt gitignore

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>
Co-authored-by: Claudio Schaad <c.schaad@pog.ch>
2025-08-28 18:57:15 +02:00
Copilot
1f7df973c1
Fix invalid ICS and PDF export returning validation errors as file content (#33)
* Initial plan

* Fix client-side export error handling and identify validation root cause

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Complete fix for invalid ICS and PDF export issue

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>
2025-08-28 18:48:00 +02:00
Copilot
e8db13191e
Add Google OAuth authentication with configurable authorized emails (#29)
* Initial plan

* Add Google authentication with authorized email configuration

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Complete Google authentication implementation with documentation

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Fix CORS error by removing [Authorize] from auth user endpoint

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Add authorization attribute to ConfigurationController for security

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Fix JavaScript error in login button by correcting window.location.href usage

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Fix Google OAuth redirect URI configuration to resolve authentication error

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Fix OAuth state validation error by specifying authentication scheme in callback

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Fix OAuth state validation error by improving authentication configuration

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Fix authentication setup documentation with correct redirect URI

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Fix navigation buttons overlapping with authentication header

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Remove unused unsing

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>
Co-authored-by: Claudio Schaad <clayschaad@users.noreply.github.com>
Co-authored-by: Claudio Schaad <c.schaad@pog.ch>
2025-08-27 21:18:50 +02:00
Claudio Schaad
d5b123bbd9
Expand coding standards and guidelines section 2025-08-27 15:00:36 +02:00
Copilot
7d8e40b9cf
Add Configuration UI for Transport and Shift Settings with Import/Export (#27)
* Initial plan

* Complete configuration UI implementation with working dialog, API endpoints, and file import/export

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Refactor to inject IConfigurationService directly instead of using factory singletons

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Remove redundant ShiftService and use IConfigurationService directly

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>
2025-08-26 17:17:09 +02:00
Copilot
73abfac988
Implement caching for transport connection results with IMemoryCache (#26)
* Initial plan

* Implement caching for transport connection results with IMemoryCache

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Change cache duration from minutes to days

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Implement CachedTransportService design with interface separation

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Implement persistent file-based cache to survive application restarts

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Revert persistent file-based cache implementation, restore IMemoryCache usage

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Code cleanup

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>
Co-authored-by: Claudio Schaad <c.schaad@pog.ch>
2025-08-25 21:15:13 +02:00
Copilot
68e2fa4927
Optimize Transport Connection Selection with Enhanced Timing Logic (#24)
* Initial plan

* Implement enhanced transport connection optimization logic

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Add configuration for new transport optimization parameters and complete implementation

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Address PR feedback: remove comments, old logic, and unnecessary tests

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Fix looking for connection

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>
Co-authored-by: clayschaad <c.schaad@pog.ch>
2025-08-23 20:16:04 +02:00
Claudio Schaad
f5387e7b41
Cleanup transport service (#22) 2025-08-23 19:16:40 +02:00
Copilot
991dd5f623
Add comprehensive unit tests for TransportService with xUnit and Shouldly, plus CI/CD automation (#21)
* Initial plan

* Add comprehensive TransportService unit tests with xUnit and Shouldly

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Add comprehensive edge case tests for TransportService

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Add GitHub Actions CI workflow for automated testing

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>
2025-08-23 15:37:08 +02:00
Copilot
a25d8f1cc2
Add PNG icon support for shift types (#18)
* Initial plan

* Add PNG icon support for shifts with sample coffee cup icon

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Add more icons

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>
Co-authored-by: Claudio Schaad <c.schaad@pog.ch>
2025-08-21 23:09:45 +02:00
d26b3319b9 UI Improvements 2025-08-21 20:44:56 +02:00
Copilot
2530e729ce
Implement transport time improvements: departure station display and break time logic (#17)
* Initial plan

* Implement transport time improvements: departure station display and break time logic

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Enhance code

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>
Co-authored-by: Claudio Schaad <c.schaad@pog.ch>
2025-08-21 20:04:53 +02:00
Copilot
45fa364368
UI improvements: Add month to title, remove sidebar, move buttons to top navigation, show shift times (#14)
* Initial plan

* Complete UI improvements: add month to title, remove sidebar, move buttons to top, show shift times, add loading spinner

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Move action buttons to top navigation level as requested

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Some ui changes

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>
Co-authored-by: Claudio Schaad <c.schaad@pog.ch>
2025-08-21 17:38:07 +02:00
Copilot
b41d8d6b36
Fix PDF export filename: Add .pdf extension to downloaded files (#13)
* Initial plan

* Fix PDF export filename: use JavaScript download with proper .pdf extension

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Remove test PDF file from repository

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Add year and month

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>
Co-authored-by: Claudio Schaad <c.schaad@pog.ch>
2025-08-21 16:41:14 +02:00
Copilot
2dc437ac9c
Add real-time SBB transport integration with enhanced UI feedback and improved timing logic (#2)
* Initial plan

* Initial project setup - update to .NET 8.0 for compatibility

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Complete SBB transport integration implementation

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Revert to .NET 9 and separate transport info into ShiftTransport class

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Make safety buffer minutes configurable via appsettings

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Migrade pdf export service

* Update gitignore

* Implement new approach: real-time transport data per shift selection with ShiftWithTransport view model

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Refactor export methods to directly use ShiftWithTransport instead of converting to separate parameters

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Move ShiftWithTransport class to its own file

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Code cleanup

* Fix transport timing logic to respect safety buffer and find best available connections

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>
Co-authored-by: clayschaad <c.schaad@pog.ch>
Co-authored-by: Claudio Schaad <clayschaad@users.noreply.github.com>
2025-08-19 22:08:59 +02:00
Copilot
e275cbd240
Add reset button with proper styling and improve export button appearance (#8)
* Initial plan

* Initial plan for reset button implementation

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Implement reset button with styling and export button improvements

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Remove code comments and clean up .deb file

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>
2025-08-19 06:34:29 +02:00
Claudio Schaad
ac6f471511
Update copilot-instructions.md
fix formatting
2025-08-19 06:28:00 +02:00
Claudio Schaad
6267c01fc8
Update copilot-instructions.md
common instructions
2025-08-19 06:27:21 +02:00
Copilot
76a1531729
Implement localStorage persistence for shift selections (#6)
* Initial plan

* Fix .NET framework version compatibility from 9.0 to 8.0

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Implement localStorage persistence for shift selections

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Restore .NET 9.0 version and update Index.razor.cs per feedback

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Fix compilation error by making EditMonth and EditYear instance variables

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>

* Minor changes

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>
Co-authored-by: Claudio Schaad <c.schaad@pog.ch>
2025-08-18 19:40:52 +02:00
Claudio Schaad
0aebab3d38
Add comprehensive GitHub Copilot instructions for ShiftScheduler development
Add comprehensive GitHub Copilot instructions for ShiftScheduler development
2025-08-18 17:52:18 +02:00
78678033f9 Enhance PDF 2025-08-18 17:35:31 +02:00
copilot-swe-agent[bot]
c8b9fd320c Create comprehensive .github/copilot-instructions.md with validated build and run instructions
Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>
2025-08-17 18:42:47 +00:00
copilot-swe-agent[bot]
0b04c89a9a Initial exploration and project setup validation
Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>
2025-08-17 18:33:22 +00:00
copilot-swe-agent[bot]
c285007788 Initial plan 2025-08-17 18:24:49 +00:00
88b3237c6c Initial Version 2025-08-17 20:15:45 +02:00
Claudio Schaad
d040ee58b8
Initial commit 2025-08-17 19:47:42 +02:00