Implementation/62981 show and edit linked phases on work packages
Ticket
https://community.openproject.org/wp/62981
What are you trying to accomplish?
Screenshots
-
[x] Work pages receive a new attribute: The phase they belong to.
-
The name of the attribute is "Project phase".
-
A work package can be assigned to a single phase. There is no multi assignment.
-
-
[x] The attribute can be administrated same as every other attribute (e.g. status, assignee, version).
-
It can be moved in and out of an attribute group.
-
Existing installations are not migrated to have the attribute activated for their existing types.
-
-
[x] The attribute's value is displayed including the colored type indicator prefix in the split/full.
- [x] The autocompleter displays the colored icon as well
- [ ] Currently, the icon is only displayed shortly as first an HalResource is passed into the display field only for the field to be rerendered with a HalLink being passed in right afterwards. That HalLink does not have a reference to the phase definition so there is no means to get the color.
-
[x] The attribute can be changed via an ng-select.
-
[x] In case the associated phase is later disabled in the project administration, the value is no longer displayed
-
[ ] The API v3 has a dedicated resource for phases
-
GET endpoint for referencing a selected phase
-
GET endpoint for selecting all available (active) phases of the project when selecting the value of the attribute.
-
-
[ ] The new functionality is hidden behind the feature flag
Not part of the original scope
- [x] Fix permissions on copying work packages. Before, the user had to have the move_work_packages permission as well in order to access the form for duplicating work packages to a different project. The autocompleter for selecting target projects also relied on the move permission. Both are changed without checking if there are any other places the code relies only on the move permission.
Cases to consider:
- [x] Moving a work package between projects where
- [x] the currently linked phase is not active
- [x] the currently linked phase is active
- [x] Copying a work package to another project where
- [x] the currently linked phase is not active
- [x] the currently linked phase is active