Update Fund for EditEngine commenting
Summary: Ref T12685. Moves Fund to EditEngine commenting. Test Plan: View an old Fund, leave a comment, add a subscriber. Reviewers: epriestley Reviewed By: epriestley Subscribers: Korvin Maniphest Tasks: T12685 Differential Revision: https://secure.phabricator.com/D17857
This commit is contained in:
parent
86f9318052
commit
b2cbb8f2ee
|
@ -1138,7 +1138,6 @@ phutil_register_library_map(array(
|
||||||
'FundInitiativeBackController' => 'applications/fund/controller/FundInitiativeBackController.php',
|
'FundInitiativeBackController' => 'applications/fund/controller/FundInitiativeBackController.php',
|
||||||
'FundInitiativeBackerTransaction' => 'applications/fund/xaction/FundInitiativeBackerTransaction.php',
|
'FundInitiativeBackerTransaction' => 'applications/fund/xaction/FundInitiativeBackerTransaction.php',
|
||||||
'FundInitiativeCloseController' => 'applications/fund/controller/FundInitiativeCloseController.php',
|
'FundInitiativeCloseController' => 'applications/fund/controller/FundInitiativeCloseController.php',
|
||||||
'FundInitiativeCommentController' => 'applications/fund/controller/FundInitiativeCommentController.php',
|
|
||||||
'FundInitiativeDescriptionTransaction' => 'applications/fund/xaction/FundInitiativeDescriptionTransaction.php',
|
'FundInitiativeDescriptionTransaction' => 'applications/fund/xaction/FundInitiativeDescriptionTransaction.php',
|
||||||
'FundInitiativeEditController' => 'applications/fund/controller/FundInitiativeEditController.php',
|
'FundInitiativeEditController' => 'applications/fund/controller/FundInitiativeEditController.php',
|
||||||
'FundInitiativeEditEngine' => 'applications/fund/editor/FundInitiativeEditEngine.php',
|
'FundInitiativeEditEngine' => 'applications/fund/editor/FundInitiativeEditEngine.php',
|
||||||
|
@ -6103,7 +6102,6 @@ phutil_register_library_map(array(
|
||||||
'FundInitiativeBackController' => 'FundController',
|
'FundInitiativeBackController' => 'FundController',
|
||||||
'FundInitiativeBackerTransaction' => 'FundInitiativeTransactionType',
|
'FundInitiativeBackerTransaction' => 'FundInitiativeTransactionType',
|
||||||
'FundInitiativeCloseController' => 'FundController',
|
'FundInitiativeCloseController' => 'FundController',
|
||||||
'FundInitiativeCommentController' => 'FundController',
|
|
||||||
'FundInitiativeDescriptionTransaction' => 'FundInitiativeTransactionType',
|
'FundInitiativeDescriptionTransaction' => 'FundInitiativeTransactionType',
|
||||||
'FundInitiativeEditController' => 'FundController',
|
'FundInitiativeEditController' => 'FundController',
|
||||||
'FundInitiativeEditEngine' => 'PhabricatorEditEngine',
|
'FundInitiativeEditEngine' => 'PhabricatorEditEngine',
|
||||||
|
|
|
@ -42,7 +42,6 @@ final class PhabricatorFundApplication extends PhabricatorApplication {
|
||||||
'/fund/' => array(
|
'/fund/' => array(
|
||||||
'(?:query/(?P<queryKey>[^/]+)/)?' => 'FundInitiativeListController',
|
'(?:query/(?P<queryKey>[^/]+)/)?' => 'FundInitiativeListController',
|
||||||
'create/' => 'FundInitiativeEditController',
|
'create/' => 'FundInitiativeEditController',
|
||||||
'comment/(?P<id>[1-9]\d*)/' => 'FundInitiativeCommentController',
|
|
||||||
$this->getEditRoutePattern('edit/')
|
$this->getEditRoutePattern('edit/')
|
||||||
=> 'FundInitiativeEditController',
|
=> 'FundInitiativeEditController',
|
||||||
'close/(?P<id>\d+)/' => 'FundInitiativeCloseController',
|
'close/(?P<id>\d+)/' => 'FundInitiativeCloseController',
|
||||||
|
|
|
@ -1,63 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
final class FundInitiativeCommentController
|
|
||||||
extends FundController {
|
|
||||||
|
|
||||||
public function handleRequest(AphrontRequest $request) {
|
|
||||||
$viewer = $request->getViewer();
|
|
||||||
$id = $request->getURIData('id');
|
|
||||||
|
|
||||||
if (!$request->isFormPost()) {
|
|
||||||
return new Aphront400Response();
|
|
||||||
}
|
|
||||||
|
|
||||||
$initiative = id(new FundInitiativeQuery())
|
|
||||||
->setViewer($viewer)
|
|
||||||
->withIDs(array($id))
|
|
||||||
->executeOne();
|
|
||||||
if (!$initiative) {
|
|
||||||
return new Aphront404Response();
|
|
||||||
}
|
|
||||||
|
|
||||||
$is_preview = $request->isPreviewRequest();
|
|
||||||
$draft = PhabricatorDraft::buildFromRequest($request);
|
|
||||||
|
|
||||||
$view_uri = '/'.$initiative->getMonogram();
|
|
||||||
|
|
||||||
$xactions = array();
|
|
||||||
$xactions[] = id(new FundInitiativeTransaction())
|
|
||||||
->setTransactionType(PhabricatorTransactions::TYPE_COMMENT)
|
|
||||||
->attachComment(
|
|
||||||
id(new FundInitiativeTransactionComment())
|
|
||||||
->setContent($request->getStr('comment')));
|
|
||||||
|
|
||||||
$editor = id(new FundInitiativeEditor())
|
|
||||||
->setActor($viewer)
|
|
||||||
->setContinueOnNoEffect($request->isContinueRequest())
|
|
||||||
->setContentSourceFromRequest($request)
|
|
||||||
->setIsPreview($is_preview);
|
|
||||||
|
|
||||||
try {
|
|
||||||
$xactions = $editor->applyTransactions($initiative, $xactions);
|
|
||||||
} catch (PhabricatorApplicationTransactionNoEffectException $ex) {
|
|
||||||
return id(new PhabricatorApplicationTransactionNoEffectResponse())
|
|
||||||
->setCancelURI($view_uri)
|
|
||||||
->setException($ex);
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($draft) {
|
|
||||||
$draft->replaceOrDelete();
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($request->isAjax() && $is_preview) {
|
|
||||||
return id(new PhabricatorApplicationTransactionResponse())
|
|
||||||
->setViewer($viewer)
|
|
||||||
->setTransactions($xactions)
|
|
||||||
->setIsPreview($is_preview);
|
|
||||||
} else {
|
|
||||||
return id(new AphrontRedirectResponse())
|
|
||||||
->setURI($view_uri);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -52,15 +52,16 @@ final class FundInitiativeViewController
|
||||||
$timeline = $this->buildTransactionTimeline(
|
$timeline = $this->buildTransactionTimeline(
|
||||||
$initiative,
|
$initiative,
|
||||||
new FundInitiativeTransactionQuery());
|
new FundInitiativeTransactionQuery());
|
||||||
|
$timeline->setQuoteRef($initiative->getMonogram());
|
||||||
|
|
||||||
$add_comment = $this->buildCommentForm($initiative);
|
$comment_view = $this->buildCommentForm($initiative, $timeline);
|
||||||
|
|
||||||
$view = id(new PHUITwoColumnView())
|
$view = id(new PHUITwoColumnView())
|
||||||
->setHeader($header)
|
->setHeader($header)
|
||||||
->setCurtain($curtain)
|
->setCurtain($curtain)
|
||||||
->setMainColumn(array(
|
->setMainColumn(array(
|
||||||
$timeline,
|
$timeline,
|
||||||
$add_comment,
|
$comment_view,
|
||||||
))
|
))
|
||||||
->addPropertySection(pht('Details'), $details);
|
->addPropertySection(pht('Details'), $details);
|
||||||
|
|
||||||
|
@ -164,26 +165,14 @@ final class FundInitiativeViewController
|
||||||
return $curtain;
|
return $curtain;
|
||||||
}
|
}
|
||||||
|
|
||||||
private function buildCommentForm(FundInitiative $initiative) {
|
private function buildCommentForm(FundInitiative $initiative, $timeline) {
|
||||||
$viewer = $this->getViewer();
|
$viewer = $this->getViewer();
|
||||||
|
$box = id(new FundInitiativeEditEngine())
|
||||||
|
->setViewer($viewer)
|
||||||
|
->buildEditEngineCommentView($initiative)
|
||||||
|
->setTransactionTimeline($timeline);
|
||||||
|
|
||||||
$is_serious = PhabricatorEnv::getEnvConfig('phabricator.serious-business');
|
return $box;
|
||||||
|
|
||||||
$add_comment_header = $is_serious
|
|
||||||
? pht('Add Comment')
|
|
||||||
: pht('Add Liquidity');
|
|
||||||
|
|
||||||
$draft = PhabricatorDraft::newFromUserAndKey(
|
|
||||||
$viewer, $initiative->getPHID());
|
|
||||||
|
|
||||||
return id(new PhabricatorApplicationTransactionCommentView())
|
|
||||||
->setUser($viewer)
|
|
||||||
->setObjectPHID($initiative->getPHID())
|
|
||||||
->setDraft($draft)
|
|
||||||
->setHeaderText($add_comment_header)
|
|
||||||
->setAction(
|
|
||||||
$this->getApplicationURI('/comment/'.$initiative->getID().'/'))
|
|
||||||
->setSubmitButtonName(pht('Add Comment'));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -45,7 +45,7 @@ final class FundInitiativeMerchantTransaction
|
||||||
|
|
||||||
return pht(
|
return pht(
|
||||||
'%s changed the merchant receiving funds from %s '.
|
'%s changed the merchant receiving funds from %s '.
|
||||||
'initiative from %s to %s.',
|
'from %s to %s.',
|
||||||
$this->renderAuthor(),
|
$this->renderAuthor(),
|
||||||
$this->renderObject(),
|
$this->renderObject(),
|
||||||
$old_merchant,
|
$old_merchant,
|
||||||
|
|
Loading…
Reference in a new issue