* migration and init to accept creationSource for new bookings
* V1 create booking
* V1 user creation
* webapp booking + V1 user
* user creation in V1, V2 and webapp
* booking source V2 and fix for v1 user
* fit type
* --fix type
* add test -- WIP
* fix type
* fix type
* ^
* Need more sleep zzz
* -_-
* bump libraries platform
* adds for v2 recurring booking
* fix lint
* instant meetings
* fix: api v2 creation source
* fixup! fix: api v2 creation source
* bump libraries
* add user
* fix test
* fixup! fix test
* add more source
* more source...
* fix type & test --1
* fix type & test --2
* typefix
* fixup test
---------
Co-authored-by: Morgan Vernay <morgan@cal.com>
* feat: Add rescheduledBy & canceledBy fields in the DB
* fix: type check
* fix: type check
* fix: use session user email for reschedule
* fix: unit test
* feat: db field email validation
* feat: rescheduledBy and cancelledBy in webhooks
* revert unrelated changes.
* make session user secondary, default to Anonymous
* if condition not required
* Make cancelledBy optional
Co-authored-by: Syed Ali Shahbaz <52925846+alishaz-polymath@users.noreply.github.com>
* update cancel booking type
* fix: update cancelledBy in db when requesting reschedule
* remove default value for fields
* fix: type check
* feat: manage fields via api v1
* fix: add fields in booking read api v1
* test: expand to cover new fields
* fix: use cancelledBy param on booking page
---------
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
Co-authored-by: Syed Ali Shahbaz <52925846+alishaz-polymath@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* fix booking via api not picking default location when unspecified
* test:add tests for default location of event for booking
* fix:failing tests
---------
Co-authored-by: Shaik-Sirajuddin <sirajudddinshaik30@gmail.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* wip
* wip
* wip
* Add tests
* Update getSchedule.test.ts
* Update types.ts
* Self review fixes
* Update text
* PR feedback from Carina
* Use utcoffset for range as well
* Remove logging from the function that runs on every timeslot
* Add one more test
* Show x days instead of x+1 days for both ROLLING and ROLLING_WINDOW
* refactor tests
* Move bookingScenario imports to the top as they import prismock mock that has to be imported very early
* More reordering of imports
* Fix accidental min update at wrong place
* Handle legacy value of zero for periodDays
* Range fix
* Fix isDateOutOfBound not being checked properly during booking. Also added a test for the case
* Fix duplicate element, how the hell it reached there
* Use today plus x days for ROLLING periodType
* Add disabled for Checkbox as well
* Revert logger.ts
* Formatting
Signed-off-by: zomars <zomars@me.com>
* Fix ordering of imports that is causing tests failure
---------
Signed-off-by: zomars <zomars@me.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: Omar López <zomars@me.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
* use same lucky user + check availability
* add tests for recurring round robin events
* only use luckyUsers for recurring bookings
* don't check availability for all recurring dates
* code clean up
* pass schedulingType
* fix type error
* add availability check for fixed hosts + test
* fix type error
* implement feedback
---------
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.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>