Changeset View
Changeset View
Standalone View
Standalone View
src/applications/audit/editor/PhabricatorAuditEditor.php
Show First 20 Lines • Show All 233 Lines • ▼ Show 20 Lines | protected function expandTransaction( | ||||
$xactions = parent::expandTransaction($object, $xaction); | $xactions = parent::expandTransaction($object, $xaction); | ||||
switch ($xaction->getTransactionType()) { | switch ($xaction->getTransactionType()) { | ||||
case PhabricatorAuditTransaction::TYPE_COMMIT: | case PhabricatorAuditTransaction::TYPE_COMMIT: | ||||
$request = $this->createAuditRequestTransactionFromCommitMessage( | $request = $this->createAuditRequestTransactionFromCommitMessage( | ||||
$object); | $object); | ||||
if ($request) { | if ($request) { | ||||
$xactions[] = $request; | $xactions[] = $request; | ||||
$this->setUnmentionablePHIDMap($request->getNewValue()); | $this->addUnmentionablePHIDs($request->getNewValue()); | ||||
} | } | ||||
break; | break; | ||||
default: | default: | ||||
break; | break; | ||||
} | } | ||||
if (!$this->didExpandInlineState) { | if (!$this->didExpandInlineState) { | ||||
switch ($xaction->getTransactionType()) { | switch ($xaction->getTransactionType()) { | ||||
▲ Show 20 Lines • Show All 104 Lines • ▼ Show 20 Lines | protected function expandCustomRemarkupBlockTransactions( | ||||
if (!$is_commit) { | if (!$is_commit) { | ||||
return $result; | return $result; | ||||
} | } | ||||
$flat_blocks = mpull($changes, 'getNewValue'); | $flat_blocks = mpull($changes, 'getNewValue'); | ||||
$huge_block = implode("\n\n", $flat_blocks); | $huge_block = implode("\n\n", $flat_blocks); | ||||
$phid_map = array(); | $phid_map = array(); | ||||
$phid_map[] = $this->getUnmentionablePHIDMap(); | |||||
$monograms = array(); | $monograms = array(); | ||||
$task_refs = id(new ManiphestCustomFieldStatusParser()) | $task_refs = id(new ManiphestCustomFieldStatusParser()) | ||||
->parseCorpus($huge_block); | ->parseCorpus($huge_block); | ||||
foreach ($task_refs as $match) { | foreach ($task_refs as $match) { | ||||
foreach ($match['monograms'] as $monogram) { | foreach ($match['monograms'] as $monogram) { | ||||
$monograms[] = $monogram; | $monograms[] = $monogram; | ||||
} | } | ||||
} | } | ||||
$rev_refs = id(new DifferentialCustomFieldDependsOnParser()) | $rev_refs = id(new DifferentialCustomFieldDependsOnParser()) | ||||
->parseCorpus($huge_block); | ->parseCorpus($huge_block); | ||||
foreach ($rev_refs as $match) { | foreach ($rev_refs as $match) { | ||||
foreach ($match['monograms'] as $monogram) { | foreach ($match['monograms'] as $monogram) { | ||||
$monograms[] = $monogram; | $monograms[] = $monogram; | ||||
} | } | ||||
} | } | ||||
$objects = id(new PhabricatorObjectQuery()) | $objects = id(new PhabricatorObjectQuery()) | ||||
->setViewer($this->getActor()) | ->setViewer($this->getActor()) | ||||
->withNames($monograms) | ->withNames($monograms) | ||||
->execute(); | ->execute(); | ||||
$phid_map[] = mpull($objects, 'getPHID', 'getPHID'); | $phid_map[] = mpull($objects, 'getPHID', 'getPHID'); | ||||
$reverts_refs = id(new DifferentialCustomFieldRevertsParser()) | $reverts_refs = id(new DifferentialCustomFieldRevertsParser()) | ||||
->parseCorpus($huge_block); | ->parseCorpus($huge_block); | ||||
$reverts = array_mergev(ipull($reverts_refs, 'monograms')); | $reverts = array_mergev(ipull($reverts_refs, 'monograms')); | ||||
if ($reverts) { | if ($reverts) { | ||||
$reverted_objects = DiffusionCommitRevisionQuery::loadRevertedObjects( | $reverted_objects = DiffusionCommitRevisionQuery::loadRevertedObjects( | ||||
$actor, | $actor, | ||||
$object, | $object, | ||||
$reverts, | $reverts, | ||||
$object->getRepository()); | $object->getRepository()); | ||||
$reverted_phids = mpull($reverted_objects, 'getPHID', 'getPHID'); | $reverted_phids = mpull($reverted_objects, 'getPHID', 'getPHID'); | ||||
$reverts_edge = DiffusionCommitRevertsCommitEdgeType::EDGECONST; | $reverts_edge = DiffusionCommitRevertsCommitEdgeType::EDGECONST; | ||||
$result[] = id(new PhabricatorAuditTransaction()) | $result[] = id(new PhabricatorAuditTransaction()) | ||||
->setTransactionType(PhabricatorTransactions::TYPE_EDGE) | ->setTransactionType(PhabricatorTransactions::TYPE_EDGE) | ||||
->setMetadataValue('edge:type', $reverts_edge) | ->setMetadataValue('edge:type', $reverts_edge) | ||||
->setNewValue(array('+' => $reverted_phids)); | ->setNewValue(array('+' => $reverted_phids)); | ||||
$phid_map[] = $reverted_phids; | $phid_map[] = $reverted_phids; | ||||
} | } | ||||
$phid_map = array_mergev($phid_map); | $phid_map = array_mergev($phid_map); | ||||
$this->setUnmentionablePHIDMap($phid_map); | $this->addUnmentionablePHIDs($phid_map); | ||||
return $result; | return $result; | ||||
} | } | ||||
protected function buildReplyHandler(PhabricatorLiskDAO $object) { | protected function buildReplyHandler(PhabricatorLiskDAO $object) { | ||||
$reply_handler = new PhabricatorAuditReplyHandler(); | $reply_handler = new PhabricatorAuditReplyHandler(); | ||||
$reply_handler->setMailReceiver($object); | $reply_handler->setMailReceiver($object); | ||||
return $reply_handler; | return $reply_handler; | ||||
▲ Show 20 Lines • Show All 424 Lines • Show Last 20 Lines |