* Create confirmation dialog for attendees
* Add disabling host emails option
* Fix DOM issues
* Allow updating disabling emails on backend
* Pass metadata to sendEmails functions
* Clean up
* Type fixes
* Fix test
* Allow for enterprise only
* Type fix
* Test fix
* Check for parentId
* Disable emails for sendScheduledEmails and sendScheduledSeatsEmails
* Remove unused variable
* Only update disable all emails if event type belongs to an org
* Disable scheduling mandatory reminder workflow if attendee emails are disabled
* Refactor disable email UI
* Update copy
* Type fixes
* Fix missing params
Fixes: https://github.com/calcom/cal.com/issues/12297
Fixes https://github.com/calcom/cal.com/issues/11234
- Displaying error message and X-Vercel-Id( Unique Request Id ) to user on book event form
- Improve error logging
- Add Error codes
Few things to discuss
1) How to handle calendar integration failures ?
Currently if for example google integration is broken and someone is trying to book that person then we log the error but don't inform the user that the google calendar is broken and the meeting goes through.
Should I throw error when integration is broken ?
<img width="758" alt="Screenshot 2023-11-12 at 12 52 36 AM" src="https://github.com/calcom/cal.com/assets/53316345/c4d921c4-9c8a-4b9b-82a2-bbe0fdbcb3d4">
2) How to handle conferencing app failures?
We just default to Cal Video as location if we are unable to generated conferencing url and log the error and not inform the user(organizer).
* Add booker info, event type title, and organizer info into Stripe metadata
* Add back bookingTitle in addition to eventTitle
* Remove .tool-versions
* Fix typo
---------
Co-authored-by: alannnc <alannnc@gmail.com>
* [CAL-1517] fix all Typescript warnings
* solve conflicts
* Update stripeCheckoutSession.handler.ts
Parse is a guard, so even though the variable is unused the parse itself is needed.
* Update ToolbarPlugin.tsx
Don't change dependency tree
---------
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* trpc procedures an middleware refactor
* allow use sessionMiddleware without a req object
* sync with the new tRPC structure
* tRPC refactor on routing form app
* import Prisma from @prisma/client
* Lazy load apps from appstore
* remove unrelated changes
* Add types for PaymentService
* type fixes
* Merge branch 'main' into roae85/cal-1514-set-the-user-session-only-on-the
* fix typo
* remove console.log
* remove explicit types from apstore object
* linter fixes
---------
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
* Add payment option to schema
* Add payment option to Stripe zod
* Set payment option on event type
* Create manual payment intent in Stripe
* Set payment option from Stripe app
* Add payment option to DB
* Pass React.ReactNode to checkbox
* Create uncaptured payment intent
* WIP
* Capture card in setup intent
* Show charge card option
* Charge card from booking page
* Bug fixes
* Clean up
* Clean up app card
* Add no-show fee messaging on booking page
* Send payment email on payment & add price
* Fix messaging
* Create no show fee charged email
* Send charge fee collected email
* Disable submit on card failure
* Clean up
* Serverside prevent charging card again if already charged
* Only confirm booking if paid for
* Type fixes
* More type fixes
* More type fixes
* Type fix
* Type fixes
* UI changes
* Payment component rework
* Update apps/web/public/static/locales/en/common.json
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Update apps/web/public/static/locales/en/common.json
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Update apps/web/components/dialog/ChargeCardDialog.tsx
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Update packages/trpc/server/routers/viewer/payments.tsx
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Revert GTM config
* Adjust payment option dropdown
* Show alert when seats are set
* Small bug fixes
* Create collect card method
* clean up
* Prevent seats & charge no-show fee to be enabled together
* Do not charge no-show fee on unconfirmed bookings
* Add check to collect card method
* Webhook send request emails
* Fix some dark mode colours
* Change awaiting payment language
* Type fixes
* Set height of Select and TextField both to 38px to fix alignment
* Fix message seats & payment error message
* Type fix
---------
Co-authored-by: Alex van Andel <me@alexvanandel.com>