Page MenuHomePhabricator

D14057.id33986.diff
No OneTemporary

D14057.id33986.diff

diff --git a/resources/celerity/map.php b/resources/celerity/map.php
--- a/resources/celerity/map.php
+++ b/resources/celerity/map.php
@@ -7,7 +7,7 @@
*/
return array(
'names' => array(
- 'core.pkg.css' => '994de4ed',
+ 'core.pkg.css' => 'eb8c668d',
'core.pkg.js' => '47dc9ebb',
'darkconsole.pkg.js' => 'e7393ebb',
'differential.pkg.css' => '2de124c9',
@@ -93,7 +93,7 @@
'rsrc/css/application/policy/policy-edit.css' => '815c66f7',
'rsrc/css/application/policy/policy-transaction-detail.css' => '82100a43',
'rsrc/css/application/policy/policy.css' => '957ea14c',
- 'rsrc/css/application/ponder/ponder-view.css' => 'bef48f86',
+ 'rsrc/css/application/ponder/ponder-view.css' => '7b0df4da',
'rsrc/css/application/projects/project-icon.css' => '4e3eaa5a',
'rsrc/css/application/releeph/releeph-core.css' => '9b3c5733',
'rsrc/css/application/releeph/releeph-preview-branch.css' => 'b7a6f4a5',
@@ -104,7 +104,7 @@
'rsrc/css/application/tokens/tokens.css' => '3d0f239e',
'rsrc/css/application/uiexample/example.css' => '528b19de',
'rsrc/css/core/core.css' => 'a76cefc9',
- 'rsrc/css/core/remarkup.css' => '73fc4395',
+ 'rsrc/css/core/remarkup.css' => 'ef286a6e',
'rsrc/css/core/syntax.css' => '9fd11da8',
'rsrc/css/core/z-index.css' => '57ddcaa2',
'rsrc/css/diviner/diviner-shared.css' => '5a337049',
@@ -141,7 +141,7 @@
'rsrc/css/phui/phui-object-item-list-view.css' => 'ab1bf393',
'rsrc/css/phui/phui-pager.css' => 'bea33d23',
'rsrc/css/phui/phui-pinboard-view.css' => '2495140e',
- 'rsrc/css/phui/phui-property-list-view.css' => '318d4dea',
+ 'rsrc/css/phui/phui-property-list-view.css' => '03904f6b',
'rsrc/css/phui/phui-remarkup-preview.css' => '867f85b3',
'rsrc/css/phui/phui-spacing.css' => '042804d6',
'rsrc/css/phui/phui-status.css' => '888cedb8',
@@ -737,7 +737,7 @@
'phabricator-object-selector-css' => '85ee8ce6',
'phabricator-phtize' => 'd254d646',
'phabricator-prefab' => '6920d200',
- 'phabricator-remarkup-css' => '73fc4395',
+ 'phabricator-remarkup-css' => 'ef286a6e',
'phabricator-search-results-css' => '7dea472c',
'phabricator-shaped-request' => '7cbe244b',
'phabricator-side-menu-view-css' => 'bec2458e',
@@ -794,7 +794,7 @@
'phui-object-item-list-view-css' => 'ab1bf393',
'phui-pager-css' => 'bea33d23',
'phui-pinboard-view-css' => '2495140e',
- 'phui-property-list-view-css' => '318d4dea',
+ 'phui-property-list-view-css' => '03904f6b',
'phui-remarkup-preview-css' => '867f85b3',
'phui-spacing-css' => '042804d6',
'phui-status-list-view-css' => '888cedb8',
@@ -811,7 +811,7 @@
'policy-css' => '957ea14c',
'policy-edit-css' => '815c66f7',
'policy-transaction-detail-css' => '82100a43',
- 'ponder-view-css' => 'bef48f86',
+ 'ponder-view-css' => '7b0df4da',
'project-icon-css' => '4e3eaa5a',
'raphael-core' => '51ee6b43',
'raphael-g' => '40dde778',
diff --git a/src/__phutil_library_map__.php b/src/__phutil_library_map__.php
--- a/src/__phutil_library_map__.php
+++ b/src/__phutil_library_map__.php
@@ -1613,6 +1613,7 @@
'PhabricatorAuthLinkController' => 'applications/auth/controller/PhabricatorAuthLinkController.php',
'PhabricatorAuthListController' => 'applications/auth/controller/config/PhabricatorAuthListController.php',
'PhabricatorAuthLoginController' => 'applications/auth/controller/PhabricatorAuthLoginController.php',
+ 'PhabricatorAuthLoginHandler' => 'applications/auth/handler/PhabricatorAuthLoginHandler.php',
'PhabricatorAuthManagementCachePKCS8Workflow' => 'applications/auth/management/PhabricatorAuthManagementCachePKCS8Workflow.php',
'PhabricatorAuthManagementLDAPWorkflow' => 'applications/auth/management/PhabricatorAuthManagementLDAPWorkflow.php',
'PhabricatorAuthManagementListFactorsWorkflow' => 'applications/auth/management/PhabricatorAuthManagementListFactorsWorkflow.php',
@@ -5458,6 +5459,7 @@
'PhabricatorAuthLinkController' => 'PhabricatorAuthController',
'PhabricatorAuthListController' => 'PhabricatorAuthProviderConfigController',
'PhabricatorAuthLoginController' => 'PhabricatorAuthController',
+ 'PhabricatorAuthLoginHandler' => 'Phobject',
'PhabricatorAuthManagementCachePKCS8Workflow' => 'PhabricatorAuthManagementWorkflow',
'PhabricatorAuthManagementLDAPWorkflow' => 'PhabricatorAuthManagementWorkflow',
'PhabricatorAuthManagementListFactorsWorkflow' => 'PhabricatorAuthManagementWorkflow',
diff --git a/src/applications/auth/controller/PhabricatorAuthStartController.php b/src/applications/auth/controller/PhabricatorAuthStartController.php
--- a/src/applications/auth/controller/PhabricatorAuthStartController.php
+++ b/src/applications/auth/controller/PhabricatorAuthStartController.php
@@ -163,8 +163,22 @@
$button_columns);
}
- $login_message = PhabricatorEnv::getEnvConfig('auth.login-message');
- $login_message = phutil_safe_html($login_message);
+ $handlers = PhabricatorAuthLoginHandler::getAllHandlers();
+
+ $delegating_controller = $this->getDelegatingController();
+
+ $header = array();
+ foreach ($handlers as $handler) {
+ $handler = clone $handler;
+
+ $handler->setRequest($request);
+
+ if ($delegating_controller) {
+ $handler->setDelegatingController($delegating_controller);
+ }
+
+ $header[] = $handler->getAuthLoginHeaderContent();
+ }
$invite_message = null;
if ($invite) {
@@ -178,7 +192,7 @@
return $this->buildApplicationPage(
array(
$crumbs,
- $login_message,
+ $header,
$invite_message,
$out,
),
diff --git a/src/applications/auth/handler/PhabricatorAuthLoginHandler.php b/src/applications/auth/handler/PhabricatorAuthLoginHandler.php
new file mode 100644
--- /dev/null
+++ b/src/applications/auth/handler/PhabricatorAuthLoginHandler.php
@@ -0,0 +1,36 @@
+<?php
+
+abstract class PhabricatorAuthLoginHandler
+ extends Phobject {
+
+ private $request;
+ private $delegatingController;
+
+ public function getAuthLoginHeaderContent() {
+ return array();
+ }
+
+ final public function setDelegatingController(AphrontController $controller) {
+ $this->delegatingController = $controller;
+ return $this;
+ }
+
+ final public function getDelegatingController() {
+ return $this->delegatingController;
+ }
+
+ final public function setRequest(AphrontRequest $request) {
+ $this->request = $request;
+ return $this;
+ }
+
+ final public function getRequest() {
+ return $this->request;
+ }
+
+ final public static function getAllHandlers() {
+ return id(new PhutilClassMapQuery())
+ ->setAncestorClass(__CLASS__)
+ ->execute();
+ }
+}
diff --git a/src/applications/config/check/PhabricatorExtraConfigSetupCheck.php b/src/applications/config/check/PhabricatorExtraConfigSetupCheck.php
--- a/src/applications/config/check/PhabricatorExtraConfigSetupCheck.php
+++ b/src/applications/config/check/PhabricatorExtraConfigSetupCheck.php
@@ -276,6 +276,10 @@
'Impersonating users over the API is no longer supported.'),
'feed.public' => pht('The framable public feed is no longer supported.'),
+
+ 'auth.login-message' => pht(
+ 'This configuration option has been replaced with a modular '.
+ 'handler. See T9346.'),
);
return $ancient_config;
diff --git a/src/applications/config/option/PhabricatorAuthenticationConfigOptions.php b/src/applications/config/option/PhabricatorAuthenticationConfigOptions.php
--- a/src/applications/config/option/PhabricatorAuthenticationConfigOptions.php
+++ b/src/applications/config/option/PhabricatorAuthenticationConfigOptions.php
@@ -73,14 +73,6 @@
->addExample(
"yourcompany.com\nmail.yourcompany.com",
pht('Valid Setting')),
- $this->newOption('auth.login-message', 'string', null)
- ->setLocked(true)
- ->setSummary(pht('A block of HTML displayed on the login screen.'))
- ->setDescription(
- pht(
- "You can provide an arbitrary block of HTML here, which will ".
- "appear on the login screen. Normally, you'd use this to provide ".
- "login or registration instructions to users.")),
$this->newOption('account.editable', 'bool', true)
->setBoolOptions(
array(

File Metadata

Mime Type
text/plain
Expires
Fri, Apr 11, 6:52 AM (2 w, 10 h ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
7739560
Default Alt Text
D14057.id33986.diff (8 KB)

Event Timeline