ShiftScheduler/Server/appsettings.json
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

70 lines
1.4 KiB
JSON

{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"AllowedHosts": "*",
"Authentication": {
"Google": {
"ClientId": "YOUR_GOOGLE_CLIENT_ID",
"ClientSecret": "YOUR_GOOGLE_CLIENT_SECRET"
},
"AuthorizedEmails": [
"example1@gmail.com",
"example2@gmail.com"
]
},
"Transport": {
"StartStation": "Zurich",
"EndStation": "Basel",
"ApiBaseUrl": "http://transport.opendata.ch/v1",
"SafetyBufferMinutes": 30,
"MinBreakMinutes": 60,
"MaxEarlyArrivalMinutes": 60,
"MaxLateArrivalMinutes": 15,
"CacheDurationDays": 1
},
"Shifts": [
{
"Name": "Frei",
"Icon": "⚫",
"MorningTime": "",
"AfternoonTime": ""
},
{
"Name": "Urlaub",
"Icon": "🌴",
"MorningTime": "",
"AfternoonTime": ""
},
{
"Name": "Pause",
"Icon": "break-icon.png",
"MorningTime": "10:00-10:15",
"AfternoonTime": "15:00-15:15"
},
{
"Name": "Früh",
"Icon": "🌅",
"MorningTime": "06:00-14:00",
"AfternoonTime": ""
},
{
"Name": "Spät",
"Icon": "🌆",
"MorningTime": "",
"AfternoonTime": "14:00-22:00"
},
{
"Name": "Tag",
"Icon": "☀️",
"MorningTime": "08:00-12:00",
"AfternoonTime": "13:00-17:00"
}
]
}