Update oncall grid UX
What does this MR do?
A small MVC for a set of issues:
Another related issue that I can raise separately if that's easier - when you edit the timezone of a schedule, it updates the top of the card body, but doesn't update the timeline or tooltips.
To handle this we:
- Update the weekly grid current time indication to track hours as well as days i.e. it moves through the day based on the user's time.
- Give the smaller elements some love by hiding the rotation assignee avatar for smaller shift sizes allowing for information to be viewed.
- Allow the page to reload when a user changes a schedule timezone.
Note
This merge also contains changes from:
These merges were reviewed and approved separately to this merge.
How/What to test
This feature is behind the feature flag oncall_schedules_mvc
and the minimal license is GitLab Premium
To check Enable the feature flag:
- Navigate to Operations => On-call Schedules or direct link is
your_project/-/oncall_schedules
e.g. http://127.0.0.1:3000/gitlab-org/gitlab-shell/-/oncall_schedules. - Click "Add schedule on empty state"
- Add a base schedule
- You will see an empty grid with no rotations
- Click add a rotation
- Add a rotation with a handful of members that have access to the current project and pick a start date/time
- A rotation will be added
- Each rotation will have a selection of assignee's drawn against the schedule/rotation data
- Each rotation assignee can be hovered over to confirm their start/end time
- These rotation items will dynamically resize depending on the screen size
- Verify the rotation start/end times for the week view
Screenshots (strongly suggested)
Before | After |
---|---|
Does this MR meet the acceptance criteria?
Conformity
-
📋 Does this MR need a changelog?-
I have included a changelog entry. -
I have not included a changelog entry because this feature sits behind a feature flag .
-
- [-] Documentation (if required)
- [-] Code review guidelines
- [-] Merge request performance guidelines
- [-] Style guides
- [-] Database guides
- [-] Separation of EE specific content
Availability and Testing
-
Review and add/update tests for this feature/bug. Consider all test levels. See the Test Planning Process. -
Tested in all supported browsers - [-] Informed Infrastructure department of a default or new setting change, if applicable per definition of done
Security
If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:
- [-] Label as security and @ mention
@gitlab-com/gl-security/appsec
- [-] The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
- [-] Security reports checked/validated by a reviewer from the AppSec team
Related to #322137
Edited by David O'Regan