Homec4science

Add ApplicationTransaction handling for transactions with no effect

Authored by epriestley <git@epriestley.com> on Dec 12 2012, 02:27.

Description

Add ApplicationTransaction handling for transactions with no effect

Summary:
When a user submits an action with no effect (like an empty comment, an "abandon" on an already-accepted revision, or a "close, resolved" on a closed task) we want to alert them that their action isn't effective. These warnings fall into two general buckets:

  • User is submitting two or more actions, and some aren't effective but some are. Prompt them to apply the effective actions only.
    • A special case of this is where the only effective action is a comment. We provide tailored text ("Post Comment") in this case.
  • User is submitting one action, which isn't effective. Tell them they're out of luck.
    • A special case of this is an empty comment. We provide tailored text in this case.

By default, the transaction editor throws when transactions have no effect. The caller can then deal with this, or use PhabricatorApplicationTransactionNoEffectResponse to provide a standard dialog that gives the user information as above. For cases where we expect transactions to have no effect (notably, "edit" forms) we just continue on no-effect unconditionally.

Also fix an issue where new, combined or filtered transactions would not be represented properly in the Ajax response (i.e., return final transactions from applyTransactions()), and translate some strings.

Test Plan:

  • Submitted empty and nonempy comments in Macro and Pholio.
  • Submitted comments with new and existing "@mentions".
  • Submitted edits in both applications.

Reviewers: btrahan, vrana

Reviewed By: btrahan

CC: aran

Maniphest Tasks: T912, T2104

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

Details

Committed
epriestley <git@epriestley.com>Dec 12 2012, 02:27
Pushed
aubortJan 31 2017, 17:16
Parents
rPHdd669c6d4eca: Make AphrontProxyResponse reduce to a real response instead of building a string
Branches
Unknown
Tags
Unknown

Event Timeline

epriestley <git@epriestley.com> committed rPH4041a7e0f664: Add ApplicationTransaction handling for transactions with no effect (authored by epriestley <git@epriestley.com>).Dec 12 2012, 02:27