@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 upstream/main 107 lines 3.0 kB view raw
1<?php 2 3final class PhabricatorMacroEditEngine 4 extends PhabricatorEditEngine { 5 6 const ENGINECONST = 'macro.image'; 7 8 public function getEngineName() { 9 return pht('Macro Image'); 10 } 11 12 public function getSummaryHeader() { 13 return pht('Configure Macro Image Forms'); 14 } 15 16 public function getSummaryText() { 17 return pht('Configure creation and editing of Macro images.'); 18 } 19 20 public function getEngineApplicationClass() { 21 return PhabricatorMacroApplication::class; 22 } 23 24 public function isEngineConfigurable() { 25 return false; 26 } 27 28 protected function newEditableObject() { 29 $viewer = $this->getViewer(); 30 return PhabricatorFileImageMacro::initializeNewFileImageMacro($viewer); 31 } 32 33 protected function newObjectQuery() { 34 return new PhabricatorMacroQuery(); 35 } 36 37 protected function getObjectCreateTitleText($object) { 38 return pht('Create New Macro'); 39 } 40 41 protected function getObjectEditTitleText($object) { 42 return pht('Edit Macro %s', $object->getName()); 43 } 44 45 protected function getObjectEditShortText($object) { 46 return $object->getName(); 47 } 48 49 protected function getObjectCreateShortText() { 50 return pht('Create Macro'); 51 } 52 53 protected function getObjectName() { 54 return pht('Macro'); 55 } 56 57 protected function getObjectViewURI($object) { 58 return $object->getViewURI(); 59 } 60 61 protected function getEditorURI() { 62 return $this->getApplication()->getApplicationURI('edit/'); 63 } 64 65 protected function getCreateNewObjectPolicy() { 66 return $this->getApplication()->getPolicy( 67 PhabricatorMacroManageCapability::CAPABILITY); 68 } 69 70 protected function willConfigureFields($object, array $fields) { 71 if ($this->getIsCreate()) { 72 $subscribers_field = idx($fields, 73 PhabricatorSubscriptionsEditEngineExtension::FIELDKEY); 74 if ($subscribers_field) { 75 // By default, hide the subscribers field when creating a macro 76 // because it makes the workflow SO HARD and wastes SO MUCH TIME. 77 $subscribers_field->setIsHidden(true); 78 } 79 } 80 return $fields; 81 } 82 83 protected function buildCustomEditFields($object) { 84 85 return array( 86 id(new PhabricatorTextEditField()) 87 ->setKey('name') 88 ->setLabel(pht('Name')) 89 ->setDescription(pht('Macro name.')) 90 ->setConduitDescription(pht('Name of the macro.')) 91 ->setConduitTypeDescription(pht('New macro name.')) 92 ->setTransactionType(PhabricatorMacroNameTransaction::TRANSACTIONTYPE) 93 ->setIsRequired(true) 94 ->setValue($object->getName()), 95 id(new PhabricatorFileEditField()) 96 ->setKey('filePHID') 97 ->setLabel(pht('Image File')) 98 ->setDescription(pht('Image file to import.')) 99 ->setTransactionType(PhabricatorMacroFileTransaction::TRANSACTIONTYPE) 100 ->setConduitDescription(pht('File PHID to import.')) 101 ->setConduitTypeDescription(pht('File PHID.')) 102 ->setValue($object->getFilePHID()), 103 ); 104 105 } 106 107}