249 Commits
Author SHA1 Message Date
09ffc21523 Added flow for staff members to create appointments (#204)
* Added flow for staff members to create appointments

* Add calendar page title

* Remove security check npm audit for pull-requests

* Fix docker build to be multi-platform

* Attempt to fix tests

* Remove obsolete test

* Refresh session every 3 minutes

---------

Co-authored-by: Karl Ludwig Weise <ludwig@ludwigweise.de>
2026-03-06 10:22:28 +01:00
HendrikandGitHub b3c4257ec4 214 calendar agents still appear in availableagents if they are unavailable (#220)
* Move schedule determination to full UTC. Adapt frontend to handle UTC input. Adapted tests.

* Type fix

* Respect all channels when checking whether an agent is booked.
2026-03-05 18:03:59 +01:00
HendrikandGitHub 7edd77ded0 214 calendar agents still appear in availableagents if they are unavailable (#219)
* Move schedule determination to full UTC. Adapt frontend to handle UTC input. Adapted tests.

* Type fix
2026-03-04 20:56:19 +01:00
HendrikandGitHub 9ac6ab81c6 213 calendar when staff creates appointment for a channel with reservation the email still should be for a successfull appointment booking (#218)
* If staff creates an appointment, treat it as being already confirmed

* Fixed tests
2026-03-04 20:46:12 +01:00
Karl Ludwig WeiseandGitHub 9d772a99d1 Merge pull request #217 from open-reception/210-invitation-e-mail-expires-earlier-than-copy-says-30-minutes
Refactored invitation logic to use 30 Minutes and pgsql timestamps co…
2026-03-04 20:43:59 +01:00
Hendrik Belitz d3dd3684e7 Refactored invitation logic to use 30 Minutes and pgsql timestamps consistently. 2026-03-03 15:26:08 +01:00
Hendrik Belitz 10656edf2f Immediate access granted if no appointments in system. 2026-03-03 14:56:17 +01:00
HendrikandGitHub 166373aa85 fixed error and failing unit tests (#203) 2026-02-26 17:29:49 +01:00
513b706877 Staff: Grant access to existing clients front-end implementation -wip (#201)
* Staff: Grant access to existing clients front-end implementation -wip

* WIP

* Use correct keyhsare when decrypting tunnels for new users.

* Set ACCESS_GRANTED even when all tunnel keys are already there

* Finalized granting access to staff members

* Fix lint

* Re-added logs

---------

Co-authored-by: Karl Ludwig Weise <ludwig@ludwigweise.de>
Co-authored-by: Hendrik Belitz <hendrik@innovation-through-understanding.de>
2026-02-26 17:29:27 +01:00
Karl Ludwig WeiseandGitHub 7b1a4da662 Added front-end for clients to cancel appointments (#196)
* Added front-end for clients to cancel appointments -wip

* Completed front-end implementation for cancelling an appointment

* Review changes
2026-02-18 16:23:10 +01:00
Karl Ludwig Weise 833e9a5792 Carify role permissions 2026-02-16 20:49:05 +01:00
Hendrik Belitz 3538d282ff Set preferred options so that yubikey works. 2026-02-16 10:43:40 +01:00
Karl Ludwig Weise 7fddfc721c Calendar BookAppointment: Preselect agent, when only one is available 2026-02-14 16:56:16 +01:00
Karl Ludwig Weise fe9ea0703c Added dummy flow to add appointments using the calendar 2026-02-12 22:04:03 +01:00
Karl Ludwig Weise 68bfcfb609 Added staff member form fields to channels 2026-02-10 15:01:05 +01:00
Karl Ludwig Weise c1af53dc5b Fix appointment denial incl. email 2026-02-10 12:20:39 +01:00
Karl Ludwig Weise 168e2d5a6c Merge remote-tracking branch 'origin/main' into 160-book-appointment-confirm-appointment-requests-front-end 2026-02-10 12:05:52 +01:00
Karl Ludwig Weise 86294d4bba Send proper email on appointment request 2026-02-10 12:05:43 +01:00
Karl Ludwig WeiseandGitHub 60844d6e40 Merge pull request #186 from open-reception/feat_add_channel_staff
Optionally set staff channel associations when creating or updating a…
2026-02-08 11:46:36 +01:00
Hendrik Belitz b387469f8d tenants GET should return the tenant of a staff member, should be callable by all registered users. 2026-02-07 16:51:33 +01:00
Hendrik Belitz a2fc4e4d34 Format und type fixes 2026-02-07 11:39:13 +01:00
Karl Ludwig WeiseandGitHub f34d24f7b6 Merge pull request #192 from open-reception/190-FIX-Add-locale-to-appointment-decryoted
Add locale to encrypted appointment data
2026-02-03 11:25:53 +01:00
Karl Ludwig WeiseandGitHub 13ef6624e7 Merge pull request #191 from open-reception/187-FIX-Deny-has-no-endpoint
187 fix deny has no endpoint
2026-02-03 11:00:26 +01:00
Karl Ludwig WeiseandGitHub bcc2d78cdc Merge pull request #193 from open-reception/FIX_first_user_should_be_access_granted
First user of tenant gets access granted, regardless of role.
2026-02-03 10:58:32 +01:00
Hendrik Belitz 7d38db1ce1 Getters should also return staff id relations 2026-02-02 14:37:03 +01:00
Hendrik Belitz 97332c617a Added Cancellation Email template 2026-02-02 14:21:07 +01:00
Hendrik Belitz 3dea6d3121 Permission check 2026-02-02 14:09:10 +01:00
Hendrik Belitz 4ffc86d25d Deny endpoint 2026-02-02 14:05:53 +01:00
Hendrik Belitz 1f34ea6f72 Add locale to encrypted appointment data 2026-02-02 13:50:33 +01:00
Hendrik Belitz 128ca9bfc7 First user of tenant gets access granted, regardless of role. 2026-02-02 13:44:24 +01:00
Karl Ludwig Weise 6124398696 Added appointment confirmation and prepared denial 2026-01-28 21:56:03 +01:00
Karl Ludwig WeiseandGitHub fe5309bfa0 Merge pull request #120 from open-reception/feat/custom-domains
Support Custom Domains
2026-01-28 21:38:06 +01:00
Karl Ludwig Weise 9a9abdcf46 Harden navigation for notifications on a all pages 2026-01-28 20:32:50 +01:00
Hendrik Belitz c5d8d174aa Optionally set staff channel associations when creating or updating a channel. 2026-01-28 17:23:46 +01:00
16eed3d03e Added missing files and notes to docker container. (#185)
* Added missing files and notes to docker container.

Dev compose adjusted accordingly (but untested, since it isn't used yet).

Checked release action

* Removed e2e tests from release (not used yet)

* Added missing env vars for unit test

* Missing env

* Display version number

---------

Co-authored-by: Karl Ludwig Weise <ludwig@ludwigweise.de>
2026-01-28 16:48:12 +01:00
Karl Ludwig Weise c5c86e6973 Notifications are closed initially 2026-01-27 22:12:30 +01:00
Karl Ludwig Weise bf9d642f0c Added notification front-end 2026-01-27 22:10:13 +01:00
Karl Ludwig Weise ffdd0ef20f Added automatic fallback link to emails 2026-01-27 17:17:45 +01:00
Karl Ludwig Weise 5c86a9907d Added ui for staff members to cancel appointments 2026-01-26 21:34:58 +01:00
Karl Ludwig Weise 56448d1c61 Disable changing agents for editing absences 2026-01-26 20:48:42 +01:00
Karl Ludwig Weise 992b62a865 Disable channel and agent routes for staff role 2026-01-26 20:47:52 +01:00
Karl Ludwig Weise b05330c0c8 Fix failed login with access_token. Remove access_token when loading login route 2026-01-26 20:46:42 +01:00
Karl Ludwig Weise cfff6f786c Fix expired access token: Do not check access token for public routes 2026-01-26 20:42:51 +01:00
Karl Ludwig Weise 3f550af281 Added custom domains for tenants 2026-01-23 21:38:06 +01:00
75cdccf5d0 149 allow creation of appointments through staff members (#174)
* Simplified locals.user
Checked routes for accessibilty

* Fixed tests

* Fixed import errors

* Fixed invite test

* PIN API implementation

* Tests for pin reset

* HOusekeeping

* Update src/routes/api/tenants/[id]/clients/pin-reset/request/+server.ts

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

* Fixes for id and housekeeping

* End routes for staff appointment bookings and check whether client exists.

* Merged main, fixed tests

* Linting errors

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-22 11:48:11 +01:00
a64afbd297 160 book appointment confirm appointment requests (#179)
* Extension of tenant schema

* Notification service

* Notification endpoints

* Format errors

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

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

* Update src/lib/server/services/notification-service.ts

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

* Explicit where clause in delete notification

* Update tenant-migrations/0008_neat_swarm.sql

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

* Sort notifivcations by creation date. Do not explicitly check for existance in mark as read.

* Fixed tests

* Mail templates appointment cancellation

* Appointment cancellation notification texts

* Delete appointment by staff

* Deletion endpoint for staff

* My Appointments endpoint for clients

* Delete appointment by client

* Copilot review fixes

* Fixes after notification changes and updates.

* Fixed limiting errors

* Rejection email template

* Send out request, confirmed notifications, send out confirmed, denied emails.

* Fix test

* MIgration files

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-22 11:39:12 +01:00
e9bd83bcd2 148 provide apis for cancelling appointments staff and client wise (#164)
* Extension of tenant schema

* Notification service

* Notification endpoints

* Format errors

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

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

* Update src/lib/server/services/notification-service.ts

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

* Explicit where clause in delete notification

* Update tenant-migrations/0008_neat_swarm.sql

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

* Sort notifivcations by creation date. Do not explicitly check for existance in mark as read.

* Fixed tests

* Mail templates appointment cancellation

* Appointment cancellation notification texts

* Delete appointment by staff

* Deletion endpoint for staff

* My Appointments endpoint for clients

* Delete appointment by client

* Copilot review fixes

* Fixes after notification changes and updates.

* Fixed limiting errors

* Fix

* Refix fix

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-22 11:28:35 +01:00
25f10462da Added salutation field (#183)
* Added salutation field

* Handle honeypot in backend

---------

Co-authored-by: Karl Ludwig Weise <ludwig@ludwigweise.de>
Co-authored-by: Hendrik Belitz <hendrik@innovation-through-understanding.de>
2026-01-22 11:28:17 +01:00
Karl Ludwig Weise e23817fa31 Fix tests 2026-01-21 22:17:47 +01:00
Karl Ludwig Weise 85a0fed42b Fix check 2026-01-21 22:04:17 +01:00