mirror of
https://we.phorge.it/source/phorge.git
synced 2025-02-01 09:28:22 +01:00
b701313e0e
Summary: Groups setup issues into Important, PHP, MySQL, and Base for easier parsing on initial installations. Test Plan: Test my internal server and various issues. {F289699} Reviewers: btrahan, epriestley Reviewed By: epriestley Subscribers: Korvin, epriestley Maniphest Tasks: T7207 Differential Revision: https://secure.phabricator.com/D11726
55 lines
1.6 KiB
PHP
55 lines
1.6 KiB
PHP
<?php
|
|
|
|
final class PhabricatorTimezoneSetupCheck extends PhabricatorSetupCheck {
|
|
|
|
public function getDefaultGroup() {
|
|
return self::GROUP_OTHER;
|
|
}
|
|
|
|
protected function executeChecks() {
|
|
$php_value = ini_get('date.timezone');
|
|
if ($php_value) {
|
|
$old = date_default_timezone_get();
|
|
$ok = @date_default_timezone_set($php_value);
|
|
date_default_timezone_set($old);
|
|
|
|
if (!$ok) {
|
|
$message = pht(
|
|
'Your PHP configuration configuration selects an invalid timezone. '.
|
|
'Select a valid timezone.');
|
|
|
|
$this
|
|
->newIssue('php.date.timezone')
|
|
->setShortName(pht('PHP Timezone'))
|
|
->setName(pht('PHP Timezone Invalid'))
|
|
->setMessage($message)
|
|
->addPHPConfig('date.timezone');
|
|
}
|
|
}
|
|
|
|
$timezone = nonempty(
|
|
PhabricatorEnv::getEnvConfig('phabricator.timezone'),
|
|
ini_get('date.timezone'));
|
|
if ($timezone) {
|
|
return;
|
|
}
|
|
|
|
$summary = pht(
|
|
'Without a configured timezone, PHP will emit warnings when working '.
|
|
'with dates, and dates and times may not display correctly.');
|
|
|
|
$message = pht(
|
|
"Your configuration fails to specify a server timezone. You can either ".
|
|
"set the PHP configuration value 'date.timezone' or the Phabricator ".
|
|
"configuration value 'phabricator.timezone' to specify one.");
|
|
|
|
$this
|
|
->newIssue('config.timezone')
|
|
->setShortName(pht('Timezone'))
|
|
->setName(pht('Server Timezone Not Configured'))
|
|
->setSummary($summary)
|
|
->setMessage($message)
|
|
->addPHPConfig('date.timezone')
|
|
->addPhabricatorConfig('phabricator.timezone');
|
|
}
|
|
}
|