•  
     
    story #11347 have a UI to access Move artifact
Summary
Empty
have a UI to access Move artifact
Empty

Functional overview

Access to the action

Mockup: 1-tracker-artifact-header.png shows the select box proposed to move artifacts on right hand side

  • The "Copy" link in the toolbar is removed and a new action menu is proposed on the top right with copy, move and disable notification.
  • same for "Display original mail"
  • same for graph dependencies (=> as we move graph dependencies button, we also remove the artifact links references block)

Move is displayed if user is admin of the tracker however the link is grayed if preconditions are not met (if there are artifact links or if the artifact is associated to a FRS release).

Tracker Selector

Mockup: 2-1-tracker-artifact-move-modal.png intermediate modal window to select target

The first select box list only projects where there are at least one tracker the user is admin of

The second select box list trackers the user is admin of.

The REST routes to list projects and users (already used in cross tracker search) must be updated with those new filters.

Confirmation modal

The confirmation modal shows 3 lists:

  • Fields that can be moved
  • Fields that can be moved but with loose of information (content of selectboxes that doesn't match for instance)
  • Fields that will be lost

Upon confirmation, the move is done, the user is redirected on the artifact page in new tracker/projects with information about the move.

Moved artifact

The moved artifact is updated with a new changeset that inform that artifact was moved and used to be in a "XXX" tracker of "YYY" project. This changeset is owned by the user who does the action at the time of the action.

Technical overview

The selection and the moves have several states and a lot of error handling. It will be done in Vue/Vuex.

Patricia Carrasco (pcar), Stephan Bill (stephanbill)
Status
Empty
Done
Development
  • [ ] Does it involves User Interface? 
  • [ ] Are there any mockups?
  • [ ] Are permissions checked?
  • [ ] Does it need Javascript development?
  • [ ] Does it need a forge upgrade bucket?
  • [ ] Does it need to execute things in system events?
  • [ ] Does it impact project creation (templates)?
  • [ ] Is it exploratory?
Empty
Details
#11347
Manuel Vacelet (vaceletm)
2018-08-20 08:50
2018-04-04 10:13
4355

References
Referencing story #11347

Git commit

tuleap/tuleap/stable

Create the action button with existing actions fd974cbd0c
Refactoring extract button builder presenter in dedicated builders 656754c93f
Fix display row mail 992610b294
Add "Move" option in actions button section 0399eb1af1
Add the graph dependencies in actions button section 7621c1d36c
Filter REST projects/:id with tracker admin permissions df728c1a1d
FRS error message is never translated 5ef619b188
Filter REST projects/:id/trackers with tracker admin permissions bdf1b353b8
Modal empty state 6538a41d5a
Fix Actions dropdown button style and placement dd013e7ff3
Fix artifact title style when it's wrapped. 3a9d91195c
Warning displayed while copying an artifact 831f94404f
Reuse existing webpack manisfest plugin in the tracker configuration e920b25782
Refactoring: Each button should have its own mustache file e51570fe56
divider is not displayed when artifact has all possible actions 0f274fcde2
Modal has now a project dropdown ea9eedd6db
Do not stop move action if a semantic field is not aligned with target fbef7f74d8
Display the trackers user can choose c94cea19b9
Use recursiveGet to load project and tracker lists b5d7fbdca5
Use recursiveGet to load project and tracker lists eee576089d
Create a dry-run mode form PATCH artifact/:id f383b5cff1
data toogle modal should not be possible when button is disabled 8aa8bd1311
Refactoring: FieldValueMatcher should return NULL if no value matches 5a5d151cd3
Move artifact should be disable when artifact has reverse link d6f2e09cba
Collect partially migrated fields aa2dbdc977
French translations are never loaded b8124462d2
Process the move 45045976df
Deal with artifact deletion limit in dry_run mode e619788673
project list should be sorted alphabetically a0df162ac1
Fix package.json scripts for unit tests f13b3a53b1
Return field representation 773f6b1801
When REST route have an error, the project/tracker should still be selected 1173026168
Do not display preview title when there is no preview 7e3eefecea
All headers must be sent in all cases f0b12afe11
Deal with all fields in move dry_run mode e16f6f403b
Success message d3e94c93b6
We can archive multiple time the same artifact if it was moved mutliple time 5f9260e913
REST tests contains all kind of fields for dry_run bb39f2acfc
Do not collect information while doing the move 096dc056f6
Disable the source tracker in the selectbox 22b9a42680
First step of dry run mode 283f11e715
Labels in move modal should be more specific 28baf30370
CSS improvement for field display ef5ad47607
Populate success feedback only when needed 9157c3348d
Import the Move artifact modal dynamically c2dceda5ba
Show more is displayed when multiples fields are in error 633844d888
Select current project by default 7fc64dabe1
Refactoring: Extract MoveArtifact modal presenter and template ad566e9733
Fix encoding issue with french feedback d326aa06f0
Design feedback 557988b589
Refactoring: snake_case and use "1" in singular translations b308bb9d07
Refactoring: Fix mutations and actions d945d7b465

Follow-ups

User avatar
  • Acceptance criteria
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes
User avatar

@pcar we'd like to get a double check by a native speaker about the message.

What do you think about the following sentence:

"Artifact was moved from 'Bug' tracker in 'Tuleap' project"

Is that correct ?

Is there a better sentence ?

User avatar
  • I want to
    -have a UI to accesss Move artifact 
    +have a UI to access Move artifact 
  • Acceptance criteria
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes
User avatar

After having investigated how to do that with the team, it turns out that the preview is way more complex to do than expected so we re-arrange the story for a more reachable goal.

Be the preview actually important for end users, it can come as an enhancement of what is proposed here (updated mock-ups will come soon).

We also limited the change of toolbar to minimum (no smart bread crumb for artifact creation) to limit the number of changes.

The estimations will be done next week.


  • Acceptance criteria
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes
User avatar

Hi Patricia,

1. Yes, the idea is to get rid of the toolbar where you can find Submit new artifact, Copy this artifact etc. Instead, we will move these links into the breadcrumb like we did for the Agile Dashboard breadcrumb.

2. The mockups was not really exact (see the updated version). The idea is to offer a preview of the copied artifact. The targeted tracker may not have some fields coming from the source tracker and in this case, a summary of these missing fields is displayed (when there're more than 5 fields, a "Show more" link is displayed that shows all fields on click). We also highlight these fields in the preview.

 

User avatar

Hi Manuel, looks good. Couple of questions:

  1. 1-tracker-artifact-header, there will be a new way to create an artifact (instead of "Submit new artifact" under the tracker name there will be "Add artifact"?) If so, that will be good as the UI will be more clean.
  2. 2-3-tracker-artifact-move-confirm-modal-show-more, since it is a mock up it is not clear to me which 2 fields do not match the targeted tracker.  Does the user have to click on the bolded 2 fields as depicted in the mock up?

Thanks

User avatar
  • Acceptance criteria
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes
  • CC list set to Stephan Bill (stephanbill), Patricia Carrasco (pcar)
User avatar
  • Acceptance criteria
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes