@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.

at recaptime-dev/main 105 lines 2.8 kB view raw
1<?php 2 3final class HeraldWebhookEditEngine 4 extends PhabricatorEditEngine { 5 6 const ENGINECONST = 'herald.webhook'; 7 8 public function isEngineConfigurable() { 9 return false; 10 } 11 12 public function getEngineName() { 13 return pht('Webhooks'); 14 } 15 16 public function getSummaryHeader() { 17 return pht('Edit Webhook Configurations'); 18 } 19 20 public function getSummaryText() { 21 return pht('This engine is used to edit webhooks.'); 22 } 23 24 public function getEngineApplicationClass() { 25 return PhabricatorHeraldApplication::class; 26 } 27 28 protected function newEditableObject() { 29 $viewer = $this->getViewer(); 30 return HeraldWebhook::initializeNewWebhook($viewer); 31 } 32 33 protected function newObjectQuery() { 34 return new HeraldWebhookQuery(); 35 } 36 37 protected function getObjectCreateTitleText($object) { 38 return pht('Create Webhook'); 39 } 40 41 protected function getObjectCreateButtonText($object) { 42 return pht('Create Webhook'); 43 } 44 45 protected function getObjectEditTitleText($object) { 46 return pht('Edit Webhook: %s', $object->getName()); 47 } 48 49 protected function getObjectEditShortText($object) { 50 return pht('Edit Webhook'); 51 } 52 53 protected function getObjectCreateShortText() { 54 return pht('Create Webhook'); 55 } 56 57 protected function getObjectName() { 58 return pht('Webhook'); 59 } 60 61 protected function getEditorURI() { 62 return '/herald/webhook/edit/'; 63 } 64 65 protected function getObjectCreateCancelURI($object) { 66 return '/herald/webhook/'; 67 } 68 69 protected function getObjectViewURI($object) { 70 return $object->getURI(); 71 } 72 73 protected function getCreateNewObjectPolicy() { 74 return $this->getApplication()->getPolicy( 75 HeraldCreateWebhooksCapability::CAPABILITY); 76 } 77 78 protected function buildCustomEditFields($object) { 79 return array( 80 id(new PhabricatorTextEditField()) 81 ->setKey('name') 82 ->setLabel(pht('Name')) 83 ->setDescription(pht('Name of the webhook.')) 84 ->setTransactionType(HeraldWebhookNameTransaction::TRANSACTIONTYPE) 85 ->setIsRequired(true) 86 ->setValue($object->getName()), 87 id(new PhabricatorTextEditField()) 88 ->setKey('uri') 89 ->setLabel(pht('URI')) 90 ->setDescription(pht('URI for the webhook.')) 91 ->setTransactionType(HeraldWebhookURITransaction::TRANSACTIONTYPE) 92 ->setIsRequired(true) 93 ->setValue($object->getWebhookURI()), 94 id(new PhabricatorSelectEditField()) 95 ->setKey('status') 96 ->setLabel(pht('Status')) 97 ->setDescription(pht('Status mode for the webhook.')) 98 ->setTransactionType(HeraldWebhookStatusTransaction::TRANSACTIONTYPE) 99 ->setOptions(HeraldWebhook::getStatusDisplayNameMap()) 100 ->setValue($object->getStatus()), 101 102 ); 103 } 104 105}