Skip to content

feat: Availability slider for orgs#10740

Merged
sean-brydon merged 56 commits intomainfrom
feat/timezone-buddy
Aug 18, 2023
Merged

feat: Availability slider for orgs#10740
sean-brydon merged 56 commits intomainfrom
feat/timezone-buddy

Conversation

@sean-brydon
Copy link
Copy Markdown
Member

@sean-brydon sean-brydon commented Aug 14, 2023

Implements a WTB type of display for users availability and timezones for use in ORGS only

How to test:
Create a ORG
Invite a few users
go through onboarding with them and change the timezone of each user.
Visit /availability you should see a tab to switch to your team or visit /availability?type=team directly.
Compare generated hours with the worldtimebuddy equivalent.
Ensure availability matches up with the users default schedule

https://www.loom.com/share/e0508a3b048e4f4fb4a67682f4373ec1
CleanShot 2023-08-14 at 14 25 52@2x
CleanShot 2023-08-14 at 14 25 49@2x

sean-brydon and others added 30 commits August 10, 2023 23:56
Co-authored-by: Omar López <zomars@me.com>
… from our default label "Your Name" (#10618)

Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
…s/form/step (#10442)

Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* feat: mailhog fixture

* fix: nodemailer to dispatch emails with e2e env

* fix: remove space from email subject

* feat: fixture getFirstEventAsOwner

* feat: assert email subjects
* fix and enable dynamic booking test

* remove page pause

---------

Co-authored-by: Alex van Andel <me@alexvanandel.com>
* fix: Broken team events if a user with the same name exists

* Fix tests + fix usernameList optionality
Co-authored-by: Omar López <zomars@me.com>
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
Co-authored-by: Omar López <zomars@me.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Copy link
Copy Markdown
Contributor

@Udit-takkar Udit-takkar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Screenshot 2023-08-16 at 4 14 22 PM

No team availability and heading switch in mobile

Edit: This is intended behaviour

dateRanges: DateRange[];
}

export function AvailabilitySliderTable() {
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Screenshot 2023-08-16 at 4 36 27 PM

I had my availability set up between 9 - 4:30PM but i see 9 - 5PM

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wait this is right isnt it? Yes youre only available for 1/2 of 4:30 but your still available in the 4 slot? I wonder if we should display an amber cell here let me try

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Screenshot above appears to be right for 9-4:30?

Granted 4 shell should probably be amber. Will play around in figma to see if we can get something to show this.

Will tackle in a follow up if you believe this isnt a blocker @Udit-takkar

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sean-brydon this is a bit confusing because 9 - 5 also shows this same UI. the screenshot shows slots 9 - 10, 10- 11, 11-12, 12 - 13, 13- 14, 14-15, 15- 16, 16-17. the last slots should be 16:00 - 16:30. maybe because there isn't any clear boundary that help differentiate where does 4pm starts and ends. I expected 16:30 to be where "16" is displayed in the screenshot because 9:00 AM in the middle of 8 and 9 so middle of 16 and 17 would be 17:00 and not 16:30

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I understand - we need to make some compromises here. As we can't seperate into 30 min cells as we'd just get the same issue with 45 min offset timezones. @Jaibles has cleared this up in the designs for the selection hover
CleanShot 2023-08-17 at 09 19 10@2x

Copy link
Copy Markdown
Contributor

@Udit-takkar Udit-takkar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sean-brydon Great PR 🚀

Comment on lines +159 to +160
minuteOffsetApplied = true;
minuteOffsetStyles.marginLeft = `${DAY_CELL_WIDTH * (offset % 1)}px`;
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@emrysal X%1 is always 0 no?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes - that's intentional it should only shift for decimal places like 3.5 and 4.75

Copy link
Copy Markdown
Contributor

@emrysal emrysal left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested, works :)

@sean-brydon sean-brydon enabled auto-merge (squash) August 18, 2023 16:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

core area: core, team members only Medium priority Created by Linear-GitHub Sync

Projects

No open projects
Status: No status

Development

Successfully merging this pull request may close these issues.