diff --git a/src/applications/phriction/controller/PhrictionEditController.php b/src/applications/phriction/controller/PhrictionEditController.php --- a/src/applications/phriction/controller/PhrictionEditController.php +++ b/src/applications/phriction/controller/PhrictionEditController.php @@ -117,6 +117,7 @@ $v_cc = $request->getArr('cc'); $v_projects = $request->getArr('projects'); $v_space = $request->getStr('spacePHID'); + $file_phids_to_attach = []; if ($save_as_draft) { $edit_type = PhrictionDocumentDraftTransaction::TRANSACTIONTYPE; @@ -134,9 +135,29 @@ $xactions[] = id(new PhrictionTransaction()) ->setTransactionType(PhrictionDocumentTitleTransaction::TRANSACTIONTYPE) ->setNewValue($title); - $xactions[] = id(new PhrictionTransaction()) + $content_xaction = id(new PhrictionTransaction()) ->setTransactionType($edit_type) ->setNewValue($content_text); + + $content_metadata = $request->getStr('content_metadata'); + $content_metadata = phutil_json_decode($content_metadata); + $attached_file_phids = idx( + $content_metadata, + 'attachedFilePHIDs', + array()); + + if ($attached_file_phids) { + $metadata_object = array( + 'remarkup.control' => array( + 'attachedFilePHIDs' => $attached_file_phids, + ), + ); + + $content_xaction->setMetadata($metadata_object); + } + + $xactions[] = $content_xaction; + $xactions[] = id(new PhrictionTransaction()) ->setTransactionType(PhabricatorTransactions::TYPE_VIEW_POLICY) ->setNewValue($v_view)