Content
View differences
Updated by Parimal Satyal over 4 years ago
**As a** project member,
**I want to** be able to visualise work packages in a weekly calendar view across multiple sub-projects, and order them by assignee
**so that** I have a clear vision of who does what and when, and have a clear view of resource availability.
**Note**
The Team planner planning calendar will extend the current calendar. This is an initial (first stage) implementation stage 1 of a larger evolution the planning that will be implemented in a multi-step process. At this stage, it will only display the planner in a weekly view.
_This work package is a work in progress, specification is not yet complete._
complete. It will be moved from the UX/UI team project to the overall OpenProject project, and attached to Version 12.1 once finalised._
####
#### **Acceptance Criteria**
**The module** sidebar**
There is a new module called "Team planner".
* This has to be enabled and has its own permissions.
* Is also based on fullcalendar.io but is separate from the Calendar module.
This new module, once enabled, is visible The "Calendar" item in the sidebar as "Team planner": sidebar:
* Now loads a table of team planners calendars (similar to boards) in the main view.
* Drills into the "Team planner" "Calendar" item in the sidebar with previously saved planners, calendars.
* In the main view, the table has these columns: "Name", "Created on", "Assignees":
* The assignees column will list the only have data (the number of assignees added to that planner. the view) if they have been added by the user. (If the user choses to use the calendar in month mode without adding assignees, then it will have no assignees).
* Each column has a "Delete" button as the last item of that row.
* There is a create button in the top right corner, with the title "Create new planner" calendar"
**Create new calendar**
Clicking on "Create new planner" calendar" loads an empty planner. calendar. The header of this calendar is different from the current version in certain ways:
* The top header is by default in edit mode, much like when the user creates a new board; the user is able to type a name for the calendar and click on the save icon to save the calendar.
* There The "Filter" action is no back button (as is the case when a new board is created; this should also be changed removed from here and now in the boards). secondary toolbar.
* The right side of the top header has two buttons:
* The standard "filter" action (with the "assignee" filter disabled)
* The "more" action with three vertically-stacked dots (contents to be determined)
* The secondary toolbar has these elements, and is common to new and existing calendars:
* On the left edge:
* Left/right buttons to go forwards and backwards in time (in increments of week or month, depending on the current view)
* A "today" button to return to today
* The standard filter button (that works like filters elsewhere, notably in work packages list view)
* Centered:
* The current date range visible, either the month ("August 2021") or a week ("6–10 August 2021")
* ~~On On the right edge:~~ edge:
* ~~A A switch to select between "Planning view" and "Month view" (please note that the planning view is limited to a weekly view for the moment)~~ moment)
~~**Changes to the existing calendar module**~~ **(to be migrated to another work package)** **Month view**
~~The The month calendar view is similar to the current view, with notably these differences:~~ differences:
* ~~The The work package "strips" have been upgraded with new functionalities and behaviour:~~ behaviour:
* ~~The The ability to drag them to change start/end dates (keeping the duration the same)~~ same)
* ~~Extend Extend left and right edges to change start/end dates~~ dates
* ~~A A hover displays work package information in an overlay (current behaviour)~~ behaviour)
* ~~A A click opens the work package in a split screen view~~ view
* ~~The The colour of the strip corresponds to... **FILL**~~ **FILL**
* ~~Each Each calendar date has four possible states, each visually distinct form one another:~~ another:
* ~~Inactive Inactive (not part of the current month), with a grey background, without day numbers~~ numbers
* ~~Active Active (part of the current month), with a light blue background, with day numbers~~ numbers
* ~~Today, Today, highlighted with a yellow background, with day number~~ number
* ~~Hover, Hover, with a light blue background, with day number~~ number
**Main view** **Planning view (week view)**
The calendar week view is the main view: now "Planning view" with these changes:
* There is an "Assignee" column on the left edge
* The other columns are dates, displayed as "{day name} - {date number}", as in "Monday - 9". This is shortened to "Mon - 9" in smaller windows when the cell is not wide enough to display the full version.
* The current date is highlighted also in the column header, with the same yellow highlight.
* Only work packages assigned to assignees that the user adds to the calendar will be visible. This means:
* By default, an empty calendar will have zero assignees
* There is an empty state that reminds the user to add assignees. ("Add assignees to set up your team planner.") planning calendar, or switch to month view for a regular calendar.")
* There is an "Add assignee" button at the bottom, to the left.
**Add assignee button (to be updated)** button**
Clicking the "Add assignee" button displays an overlay with:
* A title ("Add assignee")
* A close button on the top right edge
* A search bar
* As the user starts typing, a list of users who correspond to the search terms displayed as:
* An avatar and
* Their full name
* Clicking on a particular user adds a row to the Planning view for that assignee, in an alphabetical order **(or order of adding?)**
**Features specific to planning view (to be updated)** view**
Planning view, once assignees have been added, affords the users more functionalities than is available in month view:
* Hovering on the cell with the name and avatar of the assignee displays a "remove" icon, that allows users to remove that assignee from the current view.
* "Today" is no longer one cell, but an entire column, all of which is highlighted with a light yellow background.
* Work packages are arranged by assignees. They can be stacked, up to 5 per assignee. ("Error handling and exceptions" describes behaviour for when there are more than 5 work packages for any assignee).
* As in the month view, work package strips can be extended on either end (left or right) to change start/end dates but they can also
* Be dragged from one row to another to assign it to another user
**For individual day cells:** both month and planning views:**
* Right-clicking Clicking (or clicking) right-clicking -- **possible?**) on a date cell, which will be in its hover state, will load a "Quick add" overlay:
* A title ("Quick Add")
* A close button on the top right edge
* A search bar
* As the user starts typing, a list of work packages that correspond to the search terms displayed, one per row with:
* The avatar of the author
* Type
* Title/subject
* Project
* #ID
* Status
#### **Error handling and exceptions (to be completed)** exceptions**
**Exceptions**
* In both month and planning views, when any row has more than 5 work packages that need to be displayed, only those 5 are displayed initially.
* A "And {x} more..." strip communicates to the users that there are additional work packages that are hidden
* Clicking on this will expand the row and also display those additional work packages (so that that row now has than 5 maximum work packages)
* There is currently no defined upper limit to the number of work packages that can be displayed in one row with this mechanism.
**Error management** (to be completed)
* When adding new work packages
* Assignee already set
* Dates already set
* Assignee/dates already set
**Visuals**
_To be added after discussion/exchange within the product team_
**Out of scope**
* Views other than weekly (including the and monthly, including a "normal" week view (without assignees) and a two-week view) view
* The ability to identify assignees with overdue work packages (and view those in an overlay)
* More detailed work package strips that display important attributes without needing a hover
* Work package planning stages (done, planned, overdue)
* Altering the order of assignees by dragging-and-dropping entire assignees rows
* A shortlist of work packages form which the user can drag and drop work packages to the calendar (and a way to filter this shortlist)
* Any form of automation (associating certain work package status with certain planning stages)
**Mockups in Figma**
Figma link: https://www.figma.com/file/409d6qR685SzZLXez4TPl7/?node-id=614%3A26487
_(Please note that the relevant screens are on the "Team planner" page; "\_Intermediate" page and not "UI Mockups"; the above links takes you to the correct page)._
**I want to** be able to visualise work packages in a weekly calendar view across multiple sub-projects, and order them by assignee
**so that** I have a clear vision of who does what and when, and have a clear view of resource availability.
**Note**
The Team planner
_This work package is a work in progress, specification is not yet complete._
#### **Acceptance Criteria**
**The module**
There is a new module called "Team planner".
* This has to be enabled and has its own permissions.
* Is also based on fullcalendar.io but is separate from the Calendar module.
This new module, once enabled, is visible
* Now loads a table of team planners
* Drills into the "Team planner"
* In the main view, the table has these columns: "Name", "Created on", "Assignees":
* The assignees column will list the
* Each column has a "Delete" button as the last item of that row.
* There is a create button in the top right corner, with the title "Create new planner"
**Create new calendar**
Clicking on "Create new planner"
* The top header is by default in edit mode, much like when the user creates a new board; the user is able to type a name for the calendar and click on the save icon to save the calendar.
* There
* The right side of the top header has two buttons:
* The standard "filter" action (with the "assignee" filter disabled)
* The "more" action with three vertically-stacked dots (contents to be determined)
* The secondary toolbar has these elements, and is common to new and existing calendars:
* On the left edge:
* Left/right buttons to go forwards and backwards in time (in increments of week or month, depending on the current view)
* A "today" button to return to today
* The standard filter button (that works like filters elsewhere, notably in work packages list view)
* Centered:
* The current date range visible, either the month ("August 2021") or a week ("6–10 August 2021")
* ~~On
* ~~A
~~**Changes to the existing calendar module**~~ **(to be migrated to another work package)**
~~The
* ~~The
* ~~The
* ~~Extend
* ~~A
* ~~A
* ~~The
* ~~Each
* ~~Inactive
* ~~Active
* ~~Today,
* ~~Hover,
**Main view**
The calendar week view is the main view:
* There is an "Assignee" column on the left edge
* The other columns are dates, displayed as "{day name} - {date number}", as in "Monday - 9". This is shortened to "Mon - 9" in smaller windows when the cell is not wide enough to display the full version.
* The current date is highlighted also in the column header, with the same yellow highlight.
* Only work packages assigned to assignees that the user adds to the calendar will be visible. This means:
* By default, an empty calendar will have zero assignees
* There is an empty state that reminds the user to add assignees. ("Add assignees to set up your team planner.")
* There is an "Add assignee" button at the bottom, to the left.
**Add assignee button (to be updated)**
Clicking the "Add assignee" button displays an overlay with:
* A title ("Add assignee")
* A close button on the top right edge
* A search bar
* As the user starts typing, a list of users who correspond to the search terms displayed as:
* An avatar and
* Their full name
* Clicking on a particular user adds a row to the Planning view for that assignee, in an alphabetical order **(or order of adding?)**
**Features specific to planning view (to be updated)**
Planning view, once assignees have been added, affords the users more functionalities than is available in month view:
* Hovering on the cell with the name and avatar of the assignee displays a "remove" icon, that allows users to remove that assignee from the current view.
* "Today" is no longer one cell, but an entire column, all of which is highlighted with a light yellow background.
* Work packages are arranged by assignees. They can be stacked, up to 5 per assignee. ("Error handling and exceptions" describes behaviour for when there are more than 5 work packages for any assignee).
* As in the month view, work package strips can be extended on either end (left or right) to change start/end dates but they can also
* Be dragged from one row to another to assign it to another user
**For individual day cells:**
* Right-clicking
* A title ("Quick Add")
* A close button on the top right edge
* A search bar
* As the user starts typing, a list of work packages that correspond to the search terms displayed, one per row with:
* The avatar of the author
* Type
* Title/subject
* Project
* #ID
* Status
#### **Error handling and exceptions (to be completed)**
**Exceptions**
* In both month and planning views, when any row has more than 5 work packages that need to be displayed, only those 5 are displayed initially.
* A "And {x} more..." strip communicates to the users that there are additional work packages that are hidden
* Clicking on this will expand the row and also display those additional work packages (so that that row now has than 5 maximum work packages)
* There is currently no defined upper limit to the number of work packages that can be displayed in one row with this mechanism.
**Error management** (to be completed)
* When adding new work packages
* Assignee already set
* Dates already set
* Assignee/dates already set
**Visuals**
_To be added after discussion/exchange within the product team_
**Out of scope**
* Views other than weekly (including the
* The ability to identify assignees with overdue work packages (and view those in an overlay)
* More detailed work package strips that display important attributes without needing a hover
* Work package planning stages (done, planned, overdue)
* Altering the order of assignees by dragging-and-dropping entire assignees rows
* A shortlist of work packages form which the user can drag and drop work packages to the calendar (and a way to filter this shortlist)
* Any form of automation (associating certain work package status with certain planning stages)
**Mockups in Figma**
_(Please note that the relevant screens are on the "Team planner" page;