@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 PhabricatorMacroApplication extends PhabricatorApplication {
4
5 public function getBaseURI() {
6 return '/macro/';
7 }
8
9 public function getName() {
10 return pht('Macro');
11 }
12
13 public function getShortDescription() {
14 return pht('Image Macros and Memes');
15 }
16
17 public function getIcon() {
18 return 'fa-file-image-o';
19 }
20
21 public function getTitleGlyph() {
22 return "\xE2\x9A\x98";
23 }
24
25 public function getApplicationGroup() {
26 return self::GROUP_UTILITIES;
27 }
28
29 public function getRoutes() {
30 return array(
31 '/macro/' => array(
32 '(query/(?P<key>[^/]+)/)?' => 'PhabricatorMacroListController',
33 'create/' => 'PhabricatorMacroEditController',
34 'view/(?P<id>[1-9]\d*)/' => 'PhabricatorMacroViewController',
35 $this->getEditRoutePattern('edit/')
36 => 'PhabricatorMacroEditController',
37 'audio/(?P<id>[1-9]\d*)/' => 'PhabricatorMacroAudioController',
38 'disable/(?P<id>[1-9]\d*)/' => 'PhabricatorMacroDisableController',
39 'meme/' => 'PhabricatorMacroMemeController',
40 'meme/create/' => 'PhabricatorMacroMemeDialogController',
41 ),
42 );
43 }
44
45 protected function getCustomCapabilities() {
46 return array(
47 PhabricatorMacroManageCapability::CAPABILITY => array(
48 'caption' => pht('Allows creating and editing macros.'),
49 ),
50 );
51 }
52
53 public function getMailCommandObjects() {
54 return array(
55 'macro' => array(
56 'name' => pht('Email Commands: Macros'),
57 'header' => pht('Interacting with Macros'),
58 'object' => new PhabricatorFileImageMacro(),
59 'summary' => pht(
60 'This page documents the commands you can use to interact with '.
61 'image macros.'),
62 ),
63 );
64 }
65
66}