Changeset View
Changeset View
Standalone View
Standalone View
src/applications/phriction/controller/PhrictionEditController.php
Show First 20 Lines • Show All 91 Lines • ▼ Show 20 Lines | if ($is_new) { | ||||
$v_projects = array_reverse($v_projects); | $v_projects = array_reverse($v_projects); | ||||
} | } | ||||
$v_space = $document->getSpacePHID(); | $v_space = $document->getSpacePHID(); | ||||
$content_text = $content->getContent(); | $content_text = $content->getContent(); | ||||
$is_draft_mode = ($document->getContent()->getVersion() != $max_version); | $is_draft_mode = ($document->getContent()->getVersion() != $max_version); | ||||
$default_view = $document->getViewPolicy(); | |||||
$default_edit = $document->getEditPolicy(); | |||||
$default_space = $document->getSpacePHID(); | |||||
if ($request->isFormPost()) { | if ($request->isFormPost()) { | ||||
if ($is_new) { | if ($is_new) { | ||||
$save_as_draft = false; | $save_as_draft = false; | ||||
} else { | } else { | ||||
$save_as_draft = ($is_draft_mode || $request->getExists('draft')); | $save_as_draft = ($is_draft_mode || $request->getExists('draft')); | ||||
} | } | ||||
$title = $request->getStr('title'); | $title = $request->getStr('title'); | ||||
Show All 9 Lines | if ($request->isFormPost()) { | ||||
if ($save_as_draft) { | if ($save_as_draft) { | ||||
$edit_type = PhrictionDocumentDraftTransaction::TRANSACTIONTYPE; | $edit_type = PhrictionDocumentDraftTransaction::TRANSACTIONTYPE; | ||||
} else { | } else { | ||||
$edit_type = PhrictionDocumentContentTransaction::TRANSACTIONTYPE; | $edit_type = PhrictionDocumentContentTransaction::TRANSACTIONTYPE; | ||||
} | } | ||||
$xactions = array(); | $xactions = array(); | ||||
if ($is_new) { | |||||
$xactions[] = id(new PhrictionTransaction()) | |||||
->setTransactionType(PhabricatorTransactions::TYPE_CREATE); | |||||
} | |||||
$xactions[] = id(new PhrictionTransaction()) | $xactions[] = id(new PhrictionTransaction()) | ||||
->setTransactionType(PhrictionDocumentTitleTransaction::TRANSACTIONTYPE) | ->setTransactionType(PhrictionDocumentTitleTransaction::TRANSACTIONTYPE) | ||||
->setNewValue($title); | ->setNewValue($title); | ||||
$xactions[] = id(new PhrictionTransaction()) | $xactions[] = id(new PhrictionTransaction()) | ||||
->setTransactionType($edit_type) | ->setTransactionType($edit_type) | ||||
->setNewValue($content_text); | ->setNewValue($content_text); | ||||
$xactions[] = id(new PhrictionTransaction()) | $xactions[] = id(new PhrictionTransaction()) | ||||
->setTransactionType(PhabricatorTransactions::TYPE_VIEW_POLICY) | ->setTransactionType(PhabricatorTransactions::TYPE_VIEW_POLICY) | ||||
->setNewValue($v_view); | ->setNewValue($v_view) | ||||
->setIsDefaultTransaction($is_new && ($v_view === $default_view)); | |||||
$xactions[] = id(new PhrictionTransaction()) | $xactions[] = id(new PhrictionTransaction()) | ||||
->setTransactionType(PhabricatorTransactions::TYPE_EDIT_POLICY) | ->setTransactionType(PhabricatorTransactions::TYPE_EDIT_POLICY) | ||||
->setNewValue($v_edit); | ->setNewValue($v_edit) | ||||
->setIsDefaultTransaction($is_new && ($v_edit === $default_edit)); | |||||
$xactions[] = id(new PhrictionTransaction()) | $xactions[] = id(new PhrictionTransaction()) | ||||
->setTransactionType(PhabricatorTransactions::TYPE_SPACE) | ->setTransactionType(PhabricatorTransactions::TYPE_SPACE) | ||||
->setNewValue($v_space); | ->setNewValue($v_space) | ||||
->setIsDefaultTransaction($is_new && ($v_space === $default_space)); | |||||
$xactions[] = id(new PhrictionTransaction()) | $xactions[] = id(new PhrictionTransaction()) | ||||
->setTransactionType(PhabricatorTransactions::TYPE_SUBSCRIBERS) | ->setTransactionType(PhabricatorTransactions::TYPE_SUBSCRIBERS) | ||||
->setNewValue(array('=' => $v_cc)); | ->setNewValue(array('=' => $v_cc)); | ||||
$proj_edge_type = PhabricatorProjectObjectHasProjectEdgeType::EDGECONST; | $proj_edge_type = PhabricatorProjectObjectHasProjectEdgeType::EDGECONST; | ||||
$xactions[] = id(new PhrictionTransaction()) | $xactions[] = id(new PhrictionTransaction()) | ||||
->setTransactionType(PhabricatorTransactions::TYPE_EDGE) | ->setTransactionType(PhabricatorTransactions::TYPE_EDGE) | ||||
->setMetadataValue('edge:type', $proj_edge_type) | ->setMetadataValue('edge:type', $proj_edge_type) | ||||
▲ Show 20 Lines • Show All 190 Lines • Show Last 20 Lines |