@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<?php
2
3final class FundInitiativeTransaction
4 extends PhabricatorModularTransaction {
5
6 const MAILTAG_BACKER = 'fund.backer';
7 const MAILTAG_STATUS = 'fund.status';
8 const MAILTAG_OTHER = 'fund.other';
9
10 const PROPERTY_AMOUNT = 'fund.amount';
11 const PROPERTY_BACKER = 'fund.backer';
12
13 public function getApplicationName() {
14 return 'fund';
15 }
16
17 public function getApplicationTransactionType() {
18 return FundInitiativePHIDType::TYPECONST;
19 }
20
21 public function getApplicationTransactionCommentObject() {
22 return new FundInitiativeTransactionComment();
23 }
24
25 public function getBaseTransactionClass() {
26 return 'FundInitiativeTransactionType';
27 }
28
29 protected function shouldPublishFeedStory(
30 PhabricatorLiskDAO $object,
31 array $xactions) {
32 return true;
33 }
34
35 public function getMailTags() {
36 $tags = parent::getMailTags();
37
38 switch ($this->getTransactionType()) {
39 case FundInitiativeStatusTransaction::TRANSACTIONTYPE:
40 $tags[] = self::MAILTAG_STATUS;
41 break;
42 case FundInitiativeBackerTransaction::TRANSACTIONTYPE:
43 case FundInitiativeRefundTransaction::TRANSACTIONTYPE:
44 $tags[] = self::MAILTAG_BACKER;
45 break;
46 default:
47 $tags[] = self::MAILTAG_OTHER;
48 break;
49 }
50
51 return $tags;
52 }
53
54}