From e187519f00a0f26f7b886f544c73c98e72d342b9 Mon Sep 17 00:00:00 2001 From: epriestley Date: Tue, 18 Apr 2017 09:05:00 -0700 Subject: [PATCH] When a transaction has no quote ref, render "@user wrote:" properly Summary: Fixes T12576. In Javascript, `data.ref` is null, which is getting turned into `/quote/?ref=null`. The code already handles this case, just not with `ref=null` happening in JS: https://secure.phabricator.com/source/phabricator/browse/master/src/applications/transactions/controller/PhabricatorApplicationTransactionCommentQuoteController.php;b54adc6161c205e146fabb801ca53a44d94da444$47-52 Test Plan: {F4913862} - Also quoted a normal comment on a normal object in a normal way. Reviewers: amckinley, chad Reviewed By: chad Maniphest Tasks: T12576 Differential Revision: https://secure.phabricator.com/D17720 --- resources/celerity/map.php | 22 +++++++++---------- .../transactions/behavior-transaction-list.js | 4 +++- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/resources/celerity/map.php b/resources/celerity/map.php index 4bf38f9e57..0c7c6f614b 100644 --- a/resources/celerity/map.php +++ b/resources/celerity/map.php @@ -10,7 +10,7 @@ return array( 'conpherence.pkg.css' => 'a34d59bd', 'conpherence.pkg.js' => '5f86c17d', 'core.pkg.css' => '959330a2', - 'core.pkg.js' => '4a83713e', + 'core.pkg.js' => 'e129dcd4', 'darkconsole.pkg.js' => '1f9a31bc', 'differential.pkg.css' => '90b30783', 'differential.pkg.js' => 'ddfeb49b', @@ -446,7 +446,7 @@ return array( 'rsrc/js/application/transactions/behavior-reorder-fields.js' => 'b59e1e96', 'rsrc/js/application/transactions/behavior-show-older-transactions.js' => '94c65b72', 'rsrc/js/application/transactions/behavior-transaction-comment-form.js' => 'b23b49e6', - 'rsrc/js/application/transactions/behavior-transaction-list.js' => '13c739ea', + 'rsrc/js/application/transactions/behavior-transaction-list.js' => '1f6794f6', 'rsrc/js/application/typeahead/behavior-typeahead-browse.js' => '635de1ec', 'rsrc/js/application/typeahead/behavior-typeahead-search.js' => '93d0c9e3', 'rsrc/js/application/uiexample/JavelinViewExample.js' => 'd4a14807', @@ -672,7 +672,7 @@ return array( 'javelin-behavior-phabricator-show-older-transactions' => '94c65b72', 'javelin-behavior-phabricator-tooltips' => 'c420b0b9', 'javelin-behavior-phabricator-transaction-comment-form' => 'b23b49e6', - 'javelin-behavior-phabricator-transaction-list' => '13c739ea', + 'javelin-behavior-phabricator-transaction-list' => '1f6794f6', 'javelin-behavior-phabricator-watch-anchor' => '9f36c42d', 'javelin-behavior-pholio-mock-edit' => 'bee502c8', 'javelin-behavior-pholio-mock-view' => 'fbe497e7', @@ -1016,14 +1016,6 @@ return array( 'javelin-dom', 'javelin-typeahead-normalizer', ), - '13c739ea' => array( - 'javelin-behavior', - 'javelin-stratcom', - 'javelin-workflow', - 'javelin-dom', - 'javelin-uri', - 'phabricator-textareautils', - ), '1499a8cb' => array( 'javelin-behavior', 'javelin-stratcom', @@ -1080,6 +1072,14 @@ return array( 'javelin-uri', 'javelin-routable', ), + '1f6794f6' => array( + 'javelin-behavior', + 'javelin-stratcom', + 'javelin-workflow', + 'javelin-dom', + 'javelin-uri', + 'phabricator-textareautils', + ), '1fe2510c' => array( 'javelin-install', 'javelin-dom', diff --git a/webroot/rsrc/js/application/transactions/behavior-transaction-list.js b/webroot/rsrc/js/application/transactions/behavior-transaction-list.js index 854d97635e..fdcb055872 100644 --- a/webroot/rsrc/js/application/transactions/behavior-transaction-list.js +++ b/webroot/rsrc/js/application/transactions/behavior-transaction-list.js @@ -43,8 +43,10 @@ JX.behavior('phabricator-transaction-list', function() { e.prevent(); var data = e.getNodeData('transaction-quote'); + var ref = data.ref || ''; + new JX.Workflow(data.uri) - .setData({ref: data.ref}) + .setData({ref: ref}) .setHandler(function(r) { var textarea = JX.$(data.targetID);