Commit Graph
110 Commits
Author SHA1 Message Date
Karl Ludwig Weise db67350f2d Move significant config to base tenant config 2025-10-13 15:25:28 +02:00
Karl Ludwig Weise ce0ac25b82 Use actual data 2025-10-12 21:11:39 +02:00
Karl Ludwig Weise 436dadc903 Merge remote-tracking branch 'origin/feat/absences' into feat/settings 2025-10-12 20:32:18 +02:00
Karl Ludwig WeiseandGitHub 6b94c2d2f6 Merge branch 'main' into feat/absences 2025-10-12 20:29:54 +02:00
Karl Ludwig Weise fd3230fece Added settings form -wip 2025-10-12 20:28:28 +02:00
Karl Ludwig Weise 6dcb32ff85 Merge remote-tracking branch 'origin/main' into feat/absences 2025-10-12 15:09:11 +02:00
6c63ac3c80 Fetch tenant (#101)
* Fetch tenant

* Update src/routes/api/tenants/[id]/+server.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/routes/api/tenants/[id]/+server.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Column rename

* Fixed tests

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-10-12 15:08:32 +02:00
d69d0a5b73 Fix editing channels with slot templates (#97)
Co-authored-by: Karl Ludwig Weise <ludwig@ludwigweise.de>
2025-10-11 13:12:33 +02:00
Karl Ludwig Weise c4075cef71 Merge remote-tracking branch 'origin/main' into feat/absences 2025-10-10 15:37:39 +02:00
Hendrik Belitz 7f1fee52d0 Removed default value (not needed, breaks typings) 2025-10-09 10:18:59 +02:00
Karl Ludwig Weise 06161d434f Added ui to manage absences 2025-10-08 21:47:59 +02:00
Hendrik Belitz b739fa0d2b Fixed db schema, removed constraints that referenced a table in another db 2025-10-07 19:43:25 +02:00
Hendrik Belitz 988707fc78 DO not reset global admin to confirmed. 2025-10-07 19:25:56 +02:00
Hendrik Belitz 179f6d2808 Added missing existance check 2025-10-07 18:37:30 +02:00
Hendrik Belitz 8ae28d283c Merge branch 'main' of github.com:open-reception/appointment-booking-software 2025-10-07 18:32:21 +02:00
Hendrik Belitz bdc157bda6 Set access-granted for global admin. 2025-10-07 18:32:13 +02:00
c292538dc2 Feat/channels (#94)
* Added channels dashboard ui

* Fix lint

* Fix tests

---------

Co-authored-by: Karl Ludwig Weise <ludwig@ludwigweise.de>
2025-10-06 13:40:24 +02:00
86b2b0f869 Added error page (#96)
Co-authored-by: Karl Ludwig Weise <ludwig@ludwigweise.de>
2025-10-06 11:52:11 +02:00
4572352341 Client and staff access to appointments and schedules (#90)
* Web workers for crypto functions. Crypto key storage in db.

* First prototype appointment service and api

* Basic flows für clients.

* Staff crypto

* Browser crypto functions

* Get appointments from a date range

* API docs

* Schedule API, fixed schedule errors

* Tests and bugfixes

* Formatting

* enhanced and unified Browser-Crypto-Utilities
trying to create a new tunnel when tenant has no users now results in an error.
user creation now has a confirmation state.

* Staff API, getting and updating tunnel data.

* Tests for staff endpoints
Fixed for confirmationState
Fixed tests

* Moved logic to staff service

* Moved logic to appoointment service

* calendar route for staff members. schedule route for clients.

* Fix client access to certain routes

* Update src/routes/api/tenants/[id]/staff/__tests__/staff-api.test.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/routes/api/tenants/[id]/staff/[staffId]/public-key/__tests__/public-key.test.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/routes/api/tenants/[id]/appointments/tunnels/add-staff-key-shares/+server.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Security fixes for staff-crypto key retrieval.

* LInting errors

* DB Migrations

* Removed isEncrypted property

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-10-05 15:49:11 +02:00
HendrikandGitHub 636ff6dd0b Fix/channel is public api (#93)
* Channel pause

* Fix tenant config GET

* Fixed test
2025-10-05 15:42:43 +02:00
5965fada38 Make descriptions multilingual (#89)
* Make descriptions multilingual

* Format and test fixes

* Update src/lib/server/db/tenant-schema.ts

* Fix tenant-switcher to update instantly

* Fix sql migrations for description

* Add languages to tenant table

* Fix tenant schema

* Use objects for translated fields

* Fix format

* Fix lint

* Allow longer descriptions for channels

* Field Localizations are based on tenant locales not supportedLocales

* Fix agent image list preview

* Improve language tab keyboard navigation

* Fix falsy redirect after store init

---------

Co-authored-by: Karl Ludwig Weise <office@ludwigweise.de>
Co-authored-by: Karl Ludwig Weise <ludwig@ludwigweise.de>
2025-10-01 18:43:01 +02:00
HendrikandGitHub c2e662cc15 Update new access token in session table after switching tenants. (#87)
* Update new access token in session table after switching tenants.

* Fixed session might be undefined

* Image should be nullable when creating or updating an agent or uploading tenant logos.
2025-09-26 10:57:41 +02:00
Karl Ludwig WeiseandGitHub 838e724351 Feat/agents (#83) 2025-09-25 17:10:44 +02:00
HendrikandGitHub b1a045c7f5 Bugfix/drizzle no longer uses migration hashes (#84)
* Let drizzle handle migration decisions.

* Make sure initial admin is a global admin

* Formatting
2025-09-22 15:45:14 +02:00
e486072ffa Refactor/error and api handling (#82)
* DB migrations

* Format errors in migrations

* Implemented new error and permission handling.

* Updated and fixed tests

* Update src/routes/api/tenants/[id]/appointments/[appointmentId]/cancel/+server.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/routes/api/tenants/[id]/agents/[agentId]/absences/[absenceId]/+server.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/routes/api/tenants/[id]/channels/+server.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Fixed test

* Added error constants

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-09-18 15:04:06 +02:00
HendrikandGitHub 629351d6fa Scheduling api (#68)
* Additions for agent absencies and appointments. Schedule determination.

* Scheduling tests. Agent and appointment tests.

* Absence and Agent APIs

* Linting

* Appointment API (staffing side)

* LInting and fixed tests

* Centralised permission check

* Permission refactorings, session bugfixes

* Test fixes (first part)

* Test fixes

* Fixed type

* Linting fixes

* Fixed tests

* Formatting

* Data schema changes

* Adaptions to last merges and changes

* Incorporated changes as discussed in weekly

* Test fix
2025-09-15 16:22:41 +02:00
Karl Ludwig WeiseandGitHub 9e6dfe7b5e Feat/tenants (#74) 2025-09-12 16:20:02 +02:00
dc598a5146 Autosubmit login form on adding passkey (#78)
Co-authored-by: Karl Ludwig Weise <ludwig@ludwigweise.de>
2025-09-11 12:18:37 +02:00
Hendrik Belitz c1e1e5b681 Check tenant shortname according to valid input pattern on creation and edit. 2025-09-08 16:32:50 +02:00
Hendrik Belitz eaaa590748 60 - Generate and migrate central database on startup if needed. Added informational logging to the migration services. 2025-09-08 16:16:39 +02:00
HendrikandGitHub 94e20ca9aa BUG fix. Refresh route should properly refresh the token and be calla… (#69)
* BUG fix. Refresh route should properly refresh the token and be callable when cookie token is no longer valid.

* Use old session id from old token for refresh. Refresh offset set to ten minutes.
2025-09-08 11:36:11 +02:00
HendrikandGitHub 22dc3e71d6 71 implemented delete tenant route (#73)
* 71 implemented delete tenant route

* Fixed test
2025-09-08 10:35:47 +02:00
Hendrik Belitz ea5a7e50ce 67 - Refactored backend errors, added additional guards for tenant creation 2025-09-07 15:51:54 +02:00
1d4d8b888e Fix/auth fixes (#66)
* Fix session refresh

* Hardened passkey implementation

* Go to logout if session cannot be retrieved

---------

Co-authored-by: Karl Ludwig Weise <ludwig@ludwigweise.de>
2025-09-02 15:54:48 +02:00
bf610cac2b Change prettier settings (#65)
Co-authored-by: Karl Ludwig Weise <ludwig@ludwigweise.de>
2025-09-01 17:47:46 +02:00
Karl Ludwig Weise 5d73b02ac2 Fix list style in dashboard nav in chrome 2025-09-01 17:31:28 +02:00
6fd217b4e3 Feat/dashboard setup (#63)
* Added dashboard screens

* Fix lint

* Fix lint

* Fixed fetching user data on reload

---------

Co-authored-by: Karl Ludwig Weise <ludwig@ludwigweise.de>
2025-09-01 16:26:27 +02:00
Hendrik Belitz 8796782d1d Fix session expiration and tests 2025-09-01 15:47:51 +02:00
Karl Ludwig Weise 16dd7205ef Fix lint 2025-08-27 12:02:57 +02:00
Hendrik Belitz 8cd59ad9b5 Linting and formatting errors 2025-08-27 11:16:01 +02:00
Hendrik Belitz 7f71d5d83f Fixed challenge string (needs to be base64url)
Fixed logout (needs credentials)
Fixed passkey counter (does not neccesarly work for browser/os based passkeys)
2025-08-27 10:16:11 +02:00
Hendrik Belitz 821b6cc5d2 Type corrections in unit test 2025-08-27 09:11:18 +02:00
Karl Ludwig Weise 5c1b365265 Made Passkey.State a Button to improve usability 2025-08-26 21:11:44 +02:00
Karl Ludwig Weise 93d6b00d94 Added login with passkey 2025-08-26 21:04:36 +02:00
Karl Ludwig Weise fd3b657443 Cleanup and debugging, but no fix for form sending 2025-08-26 14:51:14 +02:00
Hendrik Belitz 9abea04803 Fix user service test 2025-08-22 18:08:56 +02:00
Hendrik Belitz 1b0ed692bd Fixed passkey structure on creation 2025-08-22 17:54:56 +02:00
Hendrik Belitz 6f3fa786b9 Merge branch 'feat/admin-setup' of github.com:open-reception/appointment-booking-software into feat/admin-setup 2025-08-22 16:07:25 +02:00
Hendrik Belitz 3c206fcba7 Extract Counter against replay attacks 2025-08-22 16:07:20 +02:00
Karl Ludwig Weise f76e9c9418 Cleanup 2025-08-22 16:05:45 +02:00