@recaptime-dev's working patches + fork for Phorge, a community fork of Phabricator. (Upstream dev and stable branches are at upstream/main and upstream/stable respectively.) hq.recaptime.dev/wiki/Phorge
phorge phabricator
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Add ApplicationTransactions to Herald

Summary: Ref T2769. I'm planning to keep this pretty simple, but we have this ad-hoc edit log for rules already and some other mess that we can clean up.

Test Plan: No effect yet; see future changes.

Reviewers: btrahan

Reviewed By: btrahan

CC: aran

Maniphest Tasks: T2769

Differential Revision: https://secure.phabricator.com/D6654

+84
+40
resources/sql/patches/20130802.heraldxactions.sql
··· 1 + CREATE TABLE {$NAMESPACE}_herald.herald_ruletransaction ( 2 + id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, 3 + phid VARCHAR(64) NOT NULL COLLATE utf8_bin, 4 + authorPHID VARCHAR(64) NOT NULL COLLATE utf8_bin, 5 + objectPHID VARCHAR(64) NOT NULL COLLATE utf8_bin, 6 + viewPolicy VARCHAR(64) NOT NULL COLLATE utf8_bin, 7 + editPolicy VARCHAR(64) NOT NULL COLLATE utf8_bin, 8 + commentPHID VARCHAR(64) COLLATE utf8_bin, 9 + commentVersion INT UNSIGNED NOT NULL, 10 + transactionType VARCHAR(32) NOT NULL COLLATE utf8_bin, 11 + oldValue LONGTEXT NOT NULL COLLATE utf8_bin, 12 + newValue LONGTEXT NOT NULL COLLATE utf8_bin, 13 + contentSource LONGTEXT NOT NULL COLLATE utf8_bin, 14 + metadata LONGTEXT NOT NULL COLLATE utf8_bin, 15 + dateCreated INT UNSIGNED NOT NULL, 16 + dateModified INT UNSIGNED NOT NULL, 17 + 18 + UNIQUE KEY `key_phid` (phid), 19 + KEY `key_object` (objectPHID) 20 + 21 + ) ENGINE=InnoDB, COLLATE utf8_general_ci; 22 + 23 + CREATE TABLE {$NAMESPACE}_herald.herald_ruletransaction_comment ( 24 + id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, 25 + phid VARCHAR(64) NOT NULL COLLATE utf8_bin, 26 + transactionPHID VARCHAR(64) COLLATE utf8_bin, 27 + authorPHID VARCHAR(64) NOT NULL COLLATE utf8_bin, 28 + viewPolicy VARCHAR(64) NOT NULL COLLATE utf8_bin, 29 + editPolicy VARCHAR(64) NOT NULL COLLATE utf8_bin, 30 + commentVersion INT UNSIGNED NOT NULL, 31 + content LONGTEXT NOT NULL COLLATE utf8_bin, 32 + contentSource LONGTEXT NOT NULL COLLATE utf8_bin, 33 + isDeleted BOOL NOT NULL, 34 + dateCreated INT UNSIGNED NOT NULL, 35 + dateModified INT UNSIGNED NOT NULL, 36 + 37 + UNIQUE KEY `key_phid` (phid), 38 + UNIQUE KEY `key_version` (transactionPHID, commentVersion) 39 + 40 + ) ENGINE=InnoDB, COLLATE utf8_general_ci;
+4
src/__phutil_library_map__.php
··· 627 627 'HeraldRuleListController' => 'applications/herald/controller/HeraldRuleListController.php', 628 628 'HeraldRuleQuery' => 'applications/herald/query/HeraldRuleQuery.php', 629 629 'HeraldRuleSearchEngine' => 'applications/herald/query/HeraldRuleSearchEngine.php', 630 + 'HeraldRuleTransaction' => 'applications/herald/storage/HeraldRuleTransaction.php', 631 + 'HeraldRuleTransactionComment' => 'applications/herald/storage/HeraldRuleTransactionComment.php', 630 632 'HeraldRuleTranscript' => 'applications/herald/storage/transcript/HeraldRuleTranscript.php', 631 633 'HeraldRuleTypeConfig' => 'applications/herald/config/HeraldRuleTypeConfig.php', 632 634 'HeraldTestConsoleController' => 'applications/herald/controller/HeraldTestConsoleController.php', ··· 2639 2641 ), 2640 2642 'HeraldRuleQuery' => 'PhabricatorCursorPagedPolicyAwareQuery', 2641 2643 'HeraldRuleSearchEngine' => 'PhabricatorApplicationSearchEngine', 2644 + 'HeraldRuleTransaction' => 'PhabricatorApplicationTransaction', 2645 + 'HeraldRuleTransactionComment' => 'PhabricatorApplicationTransactionComment', 2642 2646 'HeraldTestConsoleController' => 'HeraldController', 2643 2647 'HeraldTranscript' => 'HeraldDAO', 2644 2648 'HeraldTranscriptController' => 'HeraldController',
+25
src/applications/herald/storage/HeraldRuleTransaction.php
··· 1 + <?php 2 + 3 + final class HeraldRuleTransaction 4 + extends PhabricatorApplicationTransaction { 5 + 6 + const TYPE_EDIT = 'herald:edit'; 7 + 8 + public function getApplicationName() { 9 + return 'herald'; 10 + } 11 + 12 + public function getApplicationTransactionType() { 13 + return HeraldPHIDTypeRule::TYPECONST; 14 + } 15 + 16 + public function getApplicationTransactionCommentObject() { 17 + return new HeraldRuleTransactionComment(); 18 + } 19 + 20 + public function getApplicationObjectTypeName() { 21 + return pht('rule'); 22 + } 23 + 24 + } 25 +
+11
src/applications/herald/storage/HeraldRuleTransactionComment.php
··· 1 + <?php 2 + 3 + final class HeraldRuleTransactionComment 4 + extends PhabricatorApplicationTransactionComment { 5 + 6 + public function getApplicationTransactionObject() { 7 + return new HeraldRuleTransaction(); 8 + } 9 + 10 + } 11 +
+4
src/infrastructure/storage/patch/PhabricatorBuiltinPatchList.php
··· 1531 1531 'type' => 'sql', 1532 1532 'name' => $this->getPatchPath('20130802.heraldphidukey.sql'), 1533 1533 ), 1534 + '20130802.heraldxactions.sql' => array( 1535 + 'type' => 'sql', 1536 + 'name' => $this->getPatchPath('20130802.heraldxactions.sql'), 1537 + ), 1534 1538 ); 1535 1539 } 1536 1540 }