* fix: Support adding an non-existent email as the owner of the organization
* Remove dead code
* fixes
* add test
* self review changes
* Update packages/trpc/server/routers/viewer/organizations/create.handler.ts
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
* Fix typo everywhere
---------
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* Install upstash redis again - base of noficationSender
* Setup email handler etc and use tasker
* Remove logs
* Sending emails and correct format and spacing in emails
* Update email styles
* Update email styles
* add switch to enable feature
* fix: reset tasker types - will fix in new PR
* WIP: test suite
* WIP: test suite
* Add redis service and add WIP mock test
* Add tests for redis service and fix lpush
* More working tests
* More working tests
* fix: type error + typo
* update export to match i18n next mock
* (debug) push for debug
* Fix: fixed hosting in mocks
* Add common.json i18n
* add better test descriptions
* reset mocks after each test to allow concurancy
* Remove redundant RedisService.test.ts
* Rename and remove redundant isAdmin check
* Rename to .d.ts
* Add key versioning to constructRedisKey
* Update packages/trpc/server/routers/viewer/slots/handleNotificationWhenNoSlots.ts
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
* Update packages/trpc/server/routers/viewer/slots/handleNotificationWhenNoSlots.ts
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
* Add try/catch
* fix breaking when option === undefined
* Add missing await to Promise.all
* Rename data stored in redis to save space
* Include thrown error in logs
---------
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
* Implement secondary email
* Fix already existing tests failing
* Added tests for secondary email feature
* Skip email verification if user is changing the primary email to a verified secondary email
* Fix type errors in tests
* Fix email becoming unverified when switched between primary and secondary email
* Added a check to prevent prisma error from throwing up due to duplicate records
* Improved error handling when adding a secondary email
* Add test for resend verification email flow for secondary emails and validation of invite link
* Add a new column to link secondary emails with verification tokens
* Fix failing to update email to an unverified secondary email of the same user
* Fix failing tests
* Change text of resend verification email
* Add ability to use the verified secondary emails to get the event details to
* Fix type errors
* Fix failing e2e tests
* Fix failing unit tests
* Fix failing type checks
* Fix secondary verification email subject
* Fix failing e2e tests
---------
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* Add profile table
Copy to profile table
Update schema
Migrations
* wip
* Get switcher working
* Add organization seeder
* wip
* Remove dead code
* Fix unit tests
* relevantProfile -> profile
* cache bust
* One more comment
* Squash migrations
* Copy to profile table
* Update schema
* Fix existing user invite flow
* Add profile table
* Copy to profile table
* Update schema
* Format
* Add profile table
Copy to profile table
Update schema
Migrations
* Format
* wip
Get switcher working
Add organization seeder
wip
Remove dead code
Fix unit tests
relevantProfile -> profile
cache bust
One more comment
Squash migrations
Copy to profile table
Update schema
Fix existing user invite flow
Add profile table
Copy to profile table
Update schema
chore: small improvements to signup (#13227)
* removed features on mobile, better background color
* nit
* dark mode nits
New Crowdin translations by Github Action
fix: event reschedule workflow trigger (#13122)
* fix event reschedule workflow trigger
* uncomment previously failed test
* review fix
---------
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
chore: added community support to help (#13213)
refactor: Abstract `handleSeats` from `handleNewBooking` (#12062)
* Refactor createBooking
* Type fix
* Abstract handleSeats
* Create Invitee type
* Create OrganizerUser type
* Abstract addVideoCallDataToEvt
* Abstract createLoggerWithEventDetails
* Abstract `handleAppStatus` from handler
* Create ReqAppsStatus type
* Move `deleteMeeting` and `getCalendar`
* Set parameters for `handleSeats`
* Typescript refactor
* Change function params from req
* Type fix
---------
Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com>
Co-authored-by: Erik <erik@erosemberg.com>
fix: Dynamic group booking org-migration redirect (#13223)
* fix: Dynamic group booking redirect
* Fix flaky private team test
test: Check availability tab and all your functions (teste2e-availability) (#12434)
* add changes
* add changes
* add changes
* add changes
* Requested changes
* Change way to grab element
---------
Co-authored-by: gitstart-calcom <gitstart-calcom@users.noreply.github.com>
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com>
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
fix: Reschedule a cancelled booking (#13170)
* fix: Reschedule a cancelled booking
* canceled instead of cancelled
---------
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
v3.7.0
test: In Team Event type when location is Organizer Default App and U… (#12939)
* test: In Team Event type when location is Organizer Default App and User Metadata is emoty
* chore: use variable
* fix: type error
test: add test for invalid cal video (#13103)
* test: add test for invalid cal video
* chore: add confirm
* chore: fix type error
* chore: update code
* test: add unit test
* chore: type error
* chore
* chore: type
* chore: fix test
* chore
---------
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
chore: add error message for no availability (#13230)
* chore: add error message for no default user availability
* chore: check only availability
* chore: change message
* chore: add eventType
fix: Team revert with members (#13228)
refactor: Refactor seats logic (#12905)
* Refactor createBooking
* Type fix
* Abstract handleSeats
* Create Invitee type
* Create OrganizerUser type
* Abstract addVideoCallDataToEvt
* Abstract createLoggerWithEventDetails
* Abstract `handleAppStatus` from handler
* Create ReqAppsStatus type
* Move `deleteMeeting` and `getCalendar`
* Set parameters for `handleSeats`
* Typescript refactor
* Change function params from req
* Type fix
* Move handleSeats
* Abstract lastAttendeeDeleteBooking
* Create function for rescheduling seated events
* Fix imports on reschedule seats function
* Fix imports
* Import handleSeats function
* Fix rescheduleUid type
* Refactor owner reschedule to new time slot
* Refactor combine two booking times together
* Reschedule as an attendee
* Refactor createNewSeat
* Remove old handleSeats
* Remove lastAttendeeDeleteBooking from handleNewBooking
* Test for new attendee right params are passed
* Unit test params for reschedule
* Typo fix
* Clean up
* Create new seat test
* Test when attendee already signs up for booking
* Type fix
* Test reschedule move attendee to existing booking
* On reschedule create new booking
* Test on last attendee cancel booking
* Owner reschedule to new time slot
* Owner rescheduling, merge two bookings together
* Test: when merging more than available seats, then fail
* Test: fail when event is full
* Remove duplicate E2E tests
* Clean up
* Rename `addVideoCallDataToEvt` to `addVideoCallDataToEvent`
* Refactor `calcAppsStatus`
* Assign `evt` to resutl of `addVideoCallDataToEvent`
* Use prisma.transaction when moving attendees
* Clean create seat call
* Use ErrorCode enum
* Use attendeeRescheduledSeatedBooking function
* Await function
* Prevent double triggering of workflows
* Use inviteeToAdd in createNewSeat
* Remove unused error code
* Remove old handleSeats file
* Type fix
* Type fix
* Type fix
* Type fix
* Type fix
* Type fix
* Type fix
* Type fix
---------
Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Erik <erik@erosemberg.com>
feat: Allow admins to filter bookings only by attendee emails (#13236)
* chore: Allow admins to filter bookings only by attendee emails
* Fix type error
Fixed [CAL-2930] Org branding isnt centered in shell #13225 (#13237)
Add profile table
Copy to profile table
Update schema
Migrations
Format
* wip
* Add profile relation everywhere
* Fix schema
* Fix invite handler
* Add profileId during eventTypec reation
* Get dashboard working with profile relatioon
* Add workflow create repository
* Add profileId to host
* Add profileId to credential table
* Add destinationCalendar repository
* Add profileId to membership
* Revert all profile related changes
* Add acme and dunder
* Fix membership profileId usgae
* Various fixes
* Some renaming
* Fix failing tests
* Debugging next-aut
* Consolidate migrations
* Testing fixes
* Fix unit tests
* Self review feedback
* PR feedback
* Fix orgMigration as well
* Add profile schema and copy users to it
* Remove migrations from here
* Fix type issues
* Fix type error after main merge
* Remove movedFromUserId
* Add missing migration file
* Self review addressed
* Joe's review addressed
* Fix profile switcher
---------
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
* feat-profile-forwarding
* fix for promises of handling
* fix badge success color
* clean up
* fix suggested changes
* Changed design on booking-forward pages and moar test
* taking care of suggested changes, trpc errors and code cleaning
* improve text
* fix conflicting data-testid
* fix unique data-testid
* fix error css-global, email button styles, error conditional
* rename files to match functionality, remove away ui
* Add translations and migration
* remove log
* small fixes + improvements
* fix styles to match new design
* merge fixes
* Fix styles dark mode
* Solving merge conflicts from earlier
* Fix/change test to match new elements
* use trash icon button insted of dots (design issues)
* only send email if toUserId is set
* Fix date picker dark mode
* merge with remote
* removed status field from table and email its now for notify
* small text improvement in email
* check for team plan not paid plan
* fixes and clean up due to removing status
* fix old send request name to new behaviour
* more naming improvements and text
* remove status from handle-type
* code clean up
* fix type error
---------
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* Initial commit
* Adding feature flag
* Desktop first banner, mobile pending
* Removing dead code and img
* AppInstallButtonBase
* WIP
* Adds Email verification template+translations for organizations (#9202)
* feat: Orgs Schema Changing `scopedMembers` to `orgUsers` (#9209)
* Change scopedMembers to orgMembers
* Change to orgUsers
* First step done
* Merge branch 'feat/organizations-onboarding' of github.com:calcom/cal.com into feat/organizations-onboarding
* Session logic to show org label
* Step 2 done, avatar not working
* List orgs and list teams specific if orgs exist
* Conditionally show org - fix settings layout - add labels for all pages
* Profile Page + update
* Org specific team creation
* appearance page
* Ensure members cant of org cant update settings in UI
* Fix update handler imports
* hide billing on sub teams
* Update profile slug page
* Letting duplicate slugs for teams to support orgs
* Add slug coliisions for org
* Covering null on unique clauses
* Covering null on unique clauses
* Extract to utils
* Update settings to use subdomain path in team url , team + org
* Supporting having the orgId in the session cookie
* Onboarding admins step
* Last step to create teams
* Update handler comments
* Upgrade ORG banner - disabled team banner for child teams
* Handle publishing ORGS
* Fix licenese issue
* Update packages/trpc/server/routers/viewer/teams/create.handler.ts
* Split into function calls to make this file more explisit
* Update parents stripe sub not teamID
* Moving change password handler, improving verifying code flow
* Clearing error before submitting
* Reverting email testing api changes
* Reverting having the banner for now
* Consistent exported components
* Remove unneeded files from banner
* Removing uneeded code
* Fixing avatar selector
* Using meta component for head/descr
* Missing i18n strings
* Create org membership also - billing portal page
* A11ly
* Hide create team if no valid permisisons
* Get Org members router
* Handle updating subscription if orgId
* Fix double upgrade banner
* Update constants
* Feedback
* Copy change
* Making an org avatar (temp)
* Add slug colission detection for user and team name
* Fix Import
* Remove update password func
* Fix module import over relative
* feat: organization event type filter (#9253)
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* Missing changes to support orgs schema changes
* Fix import again
* Throw no team found before auth error
* Check if invited found user is already in differnt org
* Move to for of loop to throw errors in usenamelist
* Remove app install button sa its in 9337
* Remove i18n key not being used
* feat: Onboarding process to create an organization (#9184)
* Desktop first banner, mobile pending
* Removing dead code and img
* WIP
* Adds Email verification template+translations for organizations (#9202)
* First step done
* Merge branch 'feat/organizations-onboarding' of github.com:calcom/cal.com into feat/organizations-onboarding
* Step 2 done, avatar not working
* Covering null on unique clauses
* Onboarding admins step
* Last step to create teams
* Moving change password handler, improving verifying code flow
* Clearing error before submitting
* Reverting email testing api changes
* Reverting having the banner for now
* Consistent exported components
* Remove unneeded files from banner
* Removing uneeded code
* Fixing avatar selector
* Using meta component for head/descr
* Missing i18n strings
* Feedback
* Making an org avatar (temp)
* Check for subteams slug clashes with usernames
* Fixing create teams onsuccess
* feedback
* Making sure we check requestedSlug now
---------
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
* feat: [CAL-1816] Organization subdomain support (#9345)
* Desktop first banner, mobile pending
* Removing dead code and img
* WIP
* Adds Email verification template+translations for organizations (#9202)
* First step done
* Merge branch 'feat/organizations-onboarding' of github.com:calcom/cal.com into feat/organizations-onboarding
* Step 2 done, avatar not working
* Covering null on unique clauses
* Onboarding admins step
* Last step to create teams
* Moving change password handler, improving verifying code flow
* Clearing error before submitting
* Reverting email testing api changes
* Reverting having the banner for now
* Consistent exported components
* Remove unneeded files from banner
* Removing uneeded code
* Fixing avatar selector
* Using meta component for head/descr
* Missing i18n strings
* Feedback
* Making an org avatar (temp)
* Check for subteams slug clashes with usernames
* Fixing create teams onsuccess
* Covering users and subteams, excluding non-org users
* Unpublished teams shows correctly
* Create subdomain in Vercel
* feedback
* Renaming Vercel env vars
* Vercel domain check before creation
* Supporting cal-staging.com
* Change to have vercel detect it
* vercel domain check data message error
* Remove check domain
* Making sure we check requestedSlug now
* Feedback and unneeded code
* Reverting unneeded changes
* Unneeded changes
---------
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
* Vercel subdomain creation in PROD only
* Fix router
* feat: organization settings general and members page (#9266)
* feat: organization settings general page
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* feat: add members page
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* chore: remove
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: use invalidate
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: delete mutation
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: remove organization id
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* chore
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* fix: use zod schema
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
---------
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* Type fixes
* Use org Stripe product when upgrading
* Removed unused code
* Reverting changes
* Update UsernameTextfield.tsx
* More reverts
* Update next-auth-options.ts
* Update common.json
* Type fixes
* Include invite token for orgs
* Update org schema
* Make token settings optional as it isnt used in orgs yet
* Reverts
* remove yarn.lock from commit
* Fix types
* feat: orgs unverified (#9415)
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
Co-authored-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
* Fix wrong banner being displayed
* Type fix
* Fix type issues
* Update packages/trpc/server/routers/viewer/teams/inviteMember.handler.ts
Co-authored-by: alannnc <alannnc@gmail.com>
* fix missing input on trpc query
* Fix for parentId value for createProvisionalMembership
---------
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Co-authored-by: Leo Giovanetti <hello@leog.me>
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: Joe Au-Yeung <j.auyeung419@gmail.com>
Co-authored-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
Co-authored-by: alannnc <alannnc@gmail.com>
* Initial commit
* Adding feature flag
* feat: Orgs Schema Changing `scopedMembers` to `orgUsers` (#9209)
* Change scopedMembers to orgMembers
* Change to orgUsers
* Letting duplicate slugs for teams to support orgs
* Covering null on unique clauses
* Supporting having the orgId in the session cookie
* feat: organization event type filter (#9253)
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
* Missing changes to support orgs schema changes
* feat: Onboarding process to create an organization (#9184)
* Desktop first banner, mobile pending
* Removing dead code and img
* WIP
* Adds Email verification template+translations for organizations (#9202)
* First step done
* Merge branch 'feat/organizations-onboarding' of github.com:calcom/cal.com into feat/organizations-onboarding
* Step 2 done, avatar not working
* Covering null on unique clauses
* Onboarding admins step
* Last step to create teams
* Moving change password handler, improving verifying code flow
* Clearing error before submitting
* Reverting email testing api changes
* Reverting having the banner for now
* Consistent exported components
* Remove unneeded files from banner
* Removing uneeded code
* Fixing avatar selector
* Using meta component for head/descr
* Missing i18n strings
* Feedback
* Making an org avatar (temp)
* Check for subteams slug clashes with usernames
* Fixing create teams onsuccess
* feedback
* Making sure we check requestedSlug now
---------
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
* feat: [CAL-1816] Organization subdomain support (#9345)
* Desktop first banner, mobile pending
* Removing dead code and img
* WIP
* Adds Email verification template+translations for organizations (#9202)
* First step done
* Merge branch 'feat/organizations-onboarding' of github.com:calcom/cal.com into feat/organizations-onboarding
* Step 2 done, avatar not working
* Covering null on unique clauses
* Onboarding admins step
* Last step to create teams
* Moving change password handler, improving verifying code flow
* Clearing error before submitting
* Reverting email testing api changes
* Reverting having the banner for now
* Consistent exported components
* Remove unneeded files from banner
* Removing uneeded code
* Fixing avatar selector
* Using meta component for head/descr
* Missing i18n strings
* Feedback
* Making an org avatar (temp)
* Check for subteams slug clashes with usernames
* Fixing create teams onsuccess
* Covering users and subteams, excluding non-org users
* Unpublished teams shows correctly
* Create subdomain in Vercel
* feedback
* Renaming Vercel env vars
* Vercel domain check before creation
* Supporting cal-staging.com
* Change to have vercel detect it
* vercel domain check data message error
* Remove check domain
* Making sure we check requestedSlug now
* Feedback and unneeded code
* Reverting unneeded changes
* Unneeded changes
---------
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
* Vercel subdomain creation in PROD only
* Making sure we let localhost still work
* Feedback
* Type check fixes
* feat: Organization branding in side menu (#9279)
* Desktop first banner, mobile pending
* Removing dead code and img
* WIP
* Adds Email verification template+translations for organizations (#9202)
* First step done
* Merge branch 'feat/organizations-onboarding' of github.com:calcom/cal.com into feat/organizations-onboarding
* Step 2 done, avatar not working
* Covering null on unique clauses
* Onboarding admins step
* Last step to create teams
* Moving change password handler, improving verifying code flow
* Clearing error before submitting
* Reverting email testing api changes
* Reverting having the banner for now
* Consistent exported components
* Remove unneeded files from banner
* Removing uneeded code
* Fixing avatar selector
* Org branding provider used in shell sidebar
* Using meta component for head/descr
* Missing i18n strings
* Feedback
* Making an org avatar (temp)
* Using org avatar (temp)
* Not showing org logo if not set
* User onboarding with org branding (slug)
* Check for subteams slug clashes with usernames
* Fixing create teams onsuccess
* feedback
* Feedback
* Org public profile
* Public profiles for team event types
* Added setup profile alert
* Using org avatar on subteams avatar
* Making sure we show the set up profile on org only
* Profile username availability rely on org hook
* Update apps/web/pages/team/[slug].tsx
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
* Update apps/web/pages/team/[slug].tsx
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
---------
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
* feat: Organization support for event types page (#9449)
* Desktop first banner, mobile pending
* Removing dead code and img
* WIP
* Adds Email verification template+translations for organizations (#9202)
* First step done
* Merge branch 'feat/organizations-onboarding' of github.com:calcom/cal.com into feat/organizations-onboarding
* Step 2 done, avatar not working
* Covering null on unique clauses
* Onboarding admins step
* Last step to create teams
* Moving change password handler, improving verifying code flow
* Clearing error before submitting
* Reverting email testing api changes
* Reverting having the banner for now
* Consistent exported components
* Remove unneeded files from banner
* Removing uneeded code
* Fixing avatar selector
* Org branding provider used in shell sidebar
* Using meta component for head/descr
* Missing i18n strings
* Feedback
* Making an org avatar (temp)
* Using org avatar (temp)
* Not showing org logo if not set
* User onboarding with org branding (slug)
* Check for subteams slug clashes with usernames
* Fixing create teams onsuccess
* feedback
* Feedback
* Org public profile
* Public profiles for team event types
* Added setup profile alert
* Using org avatar on subteams avatar
* Processing orgs and children as profile options
* Reverting change not belonging to this PR
* Making sure we show the set up profile on org only
* Removing console.log
* Comparing memberships to choose the highest one
---------
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
* Type errors
* Refactor and type fixes
* Update orgDomains.ts
* Feedback
* Reverting
* NIT
* fix issue getting org slug from domain
* Improving orgDomains util
* Host comes with port
* Update useRouterQuery.ts
* Feedback
* Feedback
* Feedback
* Feedback: SSR for user event-types to have org context
* chore: Cache node_modules (#9492)
* Adding check for cache hit
* Adding a separate install step first
* Put the restore cache steps back
* Revert the uses type for restoring cache
* Added step to restore nm cache
* Removed the cache-hit check
* Comments and naming
* Removed extra install command
* Updated the name of the linting step to be more clear
* Removes the need for useEffect here
* Feedback
* Feedback
* Cookie domain needs a dot
* Type fix
* Update apps/web/public/static/locales/en/common.json
Co-authored-by: Omar López <zomars@me.com>
* Update packages/emails/src/templates/OrganizationAccountVerifyEmail.tsx
* Feedback
---------
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: Efraín Rochín <roae.85@gmail.com>
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
* add switches to advanced even type settings
* only show switches when workflow is enabled
* check in event type update handler if user is allowed to disable standard emails
* don't send emails if disabled
* make sure emails can't be disabled if no workflow exist
* send workflow emails to all attendees
* code clean up
* add translations
* always send to all attendees when scheduling reminders
* change text
---------
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* use named imports instead to avoid polluting the global namespace. in nodemailer
* Update packages/emails/templates/_base-email.ts
Lint fix.
* Revert yarn.lock changes
---------
Co-authored-by: alannnc <alannnc@gmail.com>
Co-authored-by: Alex van Andel <me@alexvanandel.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>
* Add calendar UID to calendar event
* Add iCalUID to booking event
* On reschedule write to evt the iCalUID
* Add uid to ics file
* Remove console logs
* Pass iCalUID if available
* Remove generated app store files
* Rename product id to calcom
* Add UID to ics on reschedule
* Type fixes
* Type fixes
* Type fixes
* Remove comment
* Remove console.log
* Removed serverConfig block from this branch
---------
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* WIP-already-reschedule-success-emails-missing
* WIP now saving bookingSeatsReferences and identifyin on reschedule/book page
* Remove logs and created test
* WIP saving progress
* Select second slot to pass test
* Delete attendee from event
* Clean up
* Update with main changes
* Fix emails not being sent
* Changed test end url from success to booking
* Remove unused pkg
* Fix new booking reschedule
* remove log
* Renable test
* remove unused pkg
* rename table name
* review changes
* Fix and and other test to reschedule with seats
* Fix api for cancel booking
* Typings
* Update [uid].tsx
* Abstracted common pattern
into maybeGetBookingUidFromSeat
* Reverts
* Nitpicks
* Update handleCancelBooking.ts
* Adds missing cascades
* Improve booking seats changes (#6858)
* Create sendCancelledSeatEmails
* Draft attendee cancelled seat email
* Send no longer attendee email to attendee
* Send email to organizer when attendee cancels
* Pass cloned event data to emails
* Send booked email for first seat
* Add seat reference uid from email link
* Query for seatReferenceUId and add to cancel & reschedule links
* WIP
* Display proper attendee when rescheduling seats
* Remove console.logs
* Only check for already invited when not rescheduling
* WIP sending reschedule email to just single attendee and owner
* Merge branch 'main' into send-email-on-seats-attendee-changes
* Remove console.logs
* Add cloned event to seat emails
* Do not show manage link for calendar event
* First seat, have both attendees on calendar
* WIP refactor booking seats reschedule logic
* WIP Refactor handleSeats
* Change relation of attendee & seat reference to a one-to-one
* Migration with relationship change
* Booking page handling unique seat references
* Abstract to handleSeats
* Remove console.logs and clean up
* New migration file, delete on cascade
* Check if attendee is already a part of the booking
* Move deleting booking logic to `handleSeats`
* When owner reschedule, move whole booking
* Prevent owner from rescheduling if not enough seats
* Add owner reschedule
* Send reschedule email when moving to new timeslot
* Add event data to reschedule email for seats
* Remove DB changes from event manager
* When a booking has no attendees then delete
* Update calendar when merging bookings
* Move both attendees and seat references when merging
* Remove guest list from seats booking page
* Update original booking when moving an attendee
* Delete calendar and video events if no more attendees
* Update or delete integrations when attendees cancel
* Show no longer attendee if a single attendee cancels
* Change booking to accepted if an attendee books on an empty booking
* If booking in same slot then just return the booking
* Clean up
* Clean up
* Remove booking select
* Typos
---------
Co-authored-by: zomars <zomars@me.com>
* Fix migration table name
* Add missing trpc import
* Rename bookingSeatReferences to bookingSeat
* Change relationship between Attendee & BookingSeat to one to one
* Fix some merge conflicts
* Minor merge artifact fixup
* Add the right 'Person' type
* Check on email, less (although still) editable than name
* Removed calEvent.attendeeUniqueId
* rename referenceUId -> referenceUid
* Squashes migrations
* Run cached installs
Should still be faster. Ensures prisma client is up to date.
* Solve attendee form on booking page
* Remove unused code
* Some type fixes
* Squash migrations
* Type fixes
* Fix for reschedule/[uid] redirect
* Fix e2e test
* Solve double declaration of host
* Solve lint errors
* Drop constraint only if exists
* Renamed UId to Uid
* Explicit vs. implicit
* Attempt to work around text flakiness by adding a little break between animations
* Various bugfixes
* Persistently apply seatReferenceUid (#7545)
* Persistently apply seatReferenceUid
* Small ts fix
* Setup guards correctly
* Type fixes
* Fix render 0 in conditional
* Test refactoring
* Fix type on handleSeats
* Fix handle seats conditional
* Fix type inference
* Update packages/features/bookings/lib/handleNewBooking.ts
* Update apps/web/components/booking/pages/BookingPage.tsx
* Fix type and missing logic for reschedule
* Fix delete of calendar event and booking
* Add handleSeats return type
* Fix seats booking creation
* Fall through normal booking for initial booking, handleSeats for secondary/reschedule
* Simplification of fetching booking
* Enable seats for round-robin events
* A lot harder than I expected
* ignore-owner-if-seat-reference-given
* Return seatReferenceUid when second seat
* negate userIsOwner
* Fix booking seats with a link without bookingUid
* Needed a time check otherwise the attendee will be in the older booking
* Can't open dialog twice in test..
* Allow passing the booking ID from the server
* Fixed isCancelled check, fixed test
* Delete through cascade instead of multiple deletes
---------
Co-authored-by: Joe Au-Yeung <j.auyeung419@gmail.com>
Co-authored-by: Peer Richelsen <peer@cal.com>
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: Efraín Rochín <roae.85@gmail.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>