HomePhabricator

Add a trigger rule to reassign a task

Description

Add a trigger rule to reassign a task

Summary:
Ref T13269. Workboard triggers can now reassign tasks on column drop. Also sprinkles some setViewer() calls in places that needed them.

This mostly works, but a few issues:

  • To set the owner to unassigned, you must explicitly put the "No Owner" token in the typeahead. Maybe this should just figure out you've put nothing in that field and set it for you?
  • I'm pretty sure this was already broken, but if you change the rule type from a tokenizer to a different type, the default for the field doesn't populate correctly:
    Screen Shot 2019-03-26 at 3.29.49 PM.png (434×804 px, 27 KB)

Also adds a new hook for trigger rules: getValueForField($value) which allows you to transform a value stored in the DB into a form suitable for setting on a form control.

Test Plan: Dragged tasks between columns and observed new owners as expected. Didn't try to get fancy to assign tasks to deleted users, users that the viewer can't see, bot users, etc etc. I'm relying on the underlying transaction to hopefully do the right thing.

Reviewers: epriestley

Reviewed By: epriestley

Subscribers: Korvin

Maniphest Tasks: T13269

Differential Revision: https://secure.phabricator.com/D20329