3 namespace Friendica\Module;
5 use Friendica\BaseModule;
6 use Friendica\Core\L10n;
7 use Friendica\Core\System;
9 use Friendica\Network\HTTPException;
10 use Friendica\Util\Strings;
13 * Shows the maintenance reason
14 * or redirects to the alternate location
16 class Maintenance extends BaseModule
18 public static function content(array $parameters = [])
20 $config = DI::app()->getConfig();
22 $reason = $config->get('system', 'maintenance_reason');
24 if ((substr(Strings::normaliseLink($reason), 0, 7) === 'http://') ||
25 (substr(Strings::normaliseLink($reason), 0, 8) === 'https://')) {
26 System::externalRedirect($reason, 307);
29 $exception = new HTTPException\ServiceUnavailableException($reason);
30 $exception->httpdesc = L10n::t('System down for maintenance');