Problem/Motivation
Customers need one access-controlled page that explains their reservation, appointment timezone, payment state, and available actions. Meeting links should be accessible after provider synchronization.
Proposed resolution
Add a reservation summary with rescheduling and cancellation actions, Google Meet or Microsoft Teams join links when supplied by the provider, a meeting URL email token, and a private iCalendar download. Do not expose another customer's reservation or management credentials in the calendar file.
Remaining tasks
Implement for the next minor release, add automated coverage, and verify the workflow on a local Drupal site.
Test coverage
Cover customer and anonymous management-link access, unrelated-user denial, provider response parsing, missing and delayed meeting links, iCalendar escaping and line folding, timezone display, and payment states.
Comments
Comment #2
josh.fabeanImplemented and pushed to
3.2.x; available in3.2.x-dev.Verification: full module suite passes with 91 tests and 1,984 assertions. Coverage includes private-link access, unrelated-user denial, provider response parsing, meeting URL persistence, ICS output, timezones, and payment details. Drupal coding standards and static analysis pass. Run database updates and rebuild caches after updating.
Adding explicit links to the implementation commits and marking fixed.