Changeset View
Changeset View
Standalone View
Standalone View
src/applications/transactions/editengine/PhabricatorEditEngine.php
Show First 20 Lines • Show All 1,902 Lines • ▼ Show 20 Lines | private function buildCommentResponse($object) { | ||||
$is_preview = $request->isPreviewRequest(); | $is_preview = $request->isPreviewRequest(); | ||||
$view_uri = $this->getEffectiveObjectViewURI($object); | $view_uri = $this->getEffectiveObjectViewURI($object); | ||||
$template = $object->getApplicationTransactionTemplate(); | $template = $object->getApplicationTransactionTemplate(); | ||||
$comment_template = $template->getApplicationTransactionCommentObject(); | $comment_template = $template->getApplicationTransactionCommentObject(); | ||||
$comment_text = $request->getStr('comment'); | $comment_text = $request->getStr('comment'); | ||||
$comment_metadata = $request->getStr('comment_metadata'); | |||||
if (strlen($comment_metadata)) { | |||||
$comment_metadata = phutil_json_decode($comment_metadata); | |||||
} | |||||
$actions = $request->getStr('editengine.actions'); | $actions = $request->getStr('editengine.actions'); | ||||
if ($actions) { | if ($actions) { | ||||
$actions = phutil_json_decode($actions); | $actions = phutil_json_decode($actions); | ||||
} | } | ||||
if ($is_preview) { | if ($is_preview) { | ||||
$version_key = PhabricatorVersionedDraft::KEY_VERSION; | $version_key = PhabricatorVersionedDraft::KEY_VERSION; | ||||
$request_version = $request->getInt($version_key); | $request_version = $request->getInt($version_key); | ||||
$current_version = $this->loadDraftVersion($object); | $current_version = $this->loadDraftVersion($object); | ||||
if ($request_version >= $current_version) { | if ($request_version >= $current_version) { | ||||
$draft = PhabricatorVersionedDraft::loadOrCreateDraft( | $draft = PhabricatorVersionedDraft::loadOrCreateDraft( | ||||
$object->getPHID(), | $object->getPHID(), | ||||
$viewer->getPHID(), | $viewer->getPHID(), | ||||
$current_version); | $current_version); | ||||
$is_empty = (!strlen($comment_text) && !$actions); | |||||
$draft | $draft | ||||
->setProperty('comment', $comment_text) | ->setProperty('comment', $comment_text) | ||||
->setProperty('metadata', $comment_metadata) | |||||
->setProperty('actions', $actions) | ->setProperty('actions', $actions) | ||||
->save(); | ->save(); | ||||
$draft_engine = $this->newDraftEngine($object); | $draft_engine = $this->newDraftEngine($object); | ||||
if ($draft_engine) { | if ($draft_engine) { | ||||
$draft_engine | $draft_engine | ||||
->setVersionedDraft($draft) | ->setVersionedDraft($draft) | ||||
->synchronize(); | ->synchronize(); | ||||
▲ Show 20 Lines • Show All 811 Lines • Show Last 20 Lines |