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:
		| @@ -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, | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Chad Little
					Chad Little