3 final class PhabricatorEmailVarySubjectsSetting
4 extends PhabricatorSelectSetting
{
6 const SETTINGKEY
= 'vary-subject';
8 const VALUE_VARY_SUBJECTS
= 'vary';
9 const VALUE_STATIC_SUBJECTS
= 'static';
11 public function getSettingName() {
12 return pht('Vary Subjects');
15 public function getSettingPanelKey() {
16 return PhabricatorEmailFormatSettingsPanel
::PANELKEY
;
19 protected function getSettingOrder() {
23 protected function getControlInstructions() {
25 'With **Vary Subjects** enabled, most mail subject lines will include '.
26 'a brief description of their content, like `[Closed]` for a '.
27 'notification about someone closing a task.'.
29 "| Setting | Example Mail Subject\n".
30 "|----------------------|----------------\n".
32 "`[Maniphest] [Closed] T123: Example Task`\n".
33 "| Do Not Vary Subjects | ".
34 "`[Maniphest] T123: Example Task`\n".
36 'This can make mail more useful, but some clients have difficulty '.
37 'threading these messages. Disabling this option may improve '.
38 'threading at the cost of making subject lines less useful.');
41 public function getSettingDefaultValue() {
42 return self
::VALUE_VARY_SUBJECTS
;
45 protected function getSelectOptions() {
47 self
::VALUE_VARY_SUBJECTS
=> pht('Enable Vary Subjects'),
48 self
::VALUE_STATIC_SUBJECTS
=> pht('Disable Vary Subjects'),