2013-01-14 23:35:41 +00:00
|
|
|
<?php
|
2018-01-21 16:38:01 +00:00
|
|
|
/**
|
|
|
|
* @file util/maintenance.php
|
|
|
|
*/
|
2018-03-07 17:34:47 +00:00
|
|
|
|
2017-04-30 04:07:00 +00:00
|
|
|
use Friendica\App;
|
2018-03-07 17:34:47 +00:00
|
|
|
use Friendica\BaseObject;
|
2017-04-30 04:01:26 +00:00
|
|
|
use Friendica\Core\Config;
|
2018-01-21 16:38:01 +00:00
|
|
|
use Friendica\Core\L10n;
|
2017-01-18 21:45:32 +00:00
|
|
|
|
2018-01-21 16:38:01 +00:00
|
|
|
require_once 'boot.php';
|
|
|
|
require_once 'include/dba.php';
|
2013-01-14 23:35:41 +00:00
|
|
|
|
2018-03-07 17:34:47 +00:00
|
|
|
$a = new App(dirname(__DIR__));
|
|
|
|
BaseObject::setApp($a);
|
2017-10-11 14:52:08 +00:00
|
|
|
|
2013-01-14 23:35:41 +00:00
|
|
|
@include(".htconfig.php");
|
|
|
|
|
2018-01-21 16:38:01 +00:00
|
|
|
$lang = L10n::getBrowserLanguage();
|
|
|
|
L10n::loadTranslationTable($lang);
|
2013-01-14 23:35:41 +00:00
|
|
|
|
2017-10-11 12:56:36 +00:00
|
|
|
dba::connect($db_host, $db_user, $db_pass, $db_data, false);
|
2017-01-18 21:45:32 +00:00
|
|
|
unset($db_host, $db_user, $db_pass, $db_data);
|
|
|
|
|
|
|
|
Config::load();
|
2013-01-14 23:35:41 +00:00
|
|
|
|
|
|
|
$maint_mode = 1;
|
2017-03-19 14:57:36 +00:00
|
|
|
if ($argc > 1) {
|
2013-01-14 23:35:41 +00:00
|
|
|
$maint_mode = intval($argv[1]);
|
2017-03-19 13:24:07 +00:00
|
|
|
}
|
2013-01-14 23:35:41 +00:00
|
|
|
|
2017-03-20 04:37:59 +00:00
|
|
|
Config::set('system', 'maintenance', $maint_mode);
|
2017-03-19 13:24:07 +00:00
|
|
|
|
2017-06-08 02:00:59 +00:00
|
|
|
if ($maint_mode && ($argc > 2)) {
|
2017-03-19 13:24:07 +00:00
|
|
|
$reason_arr = $argv;
|
|
|
|
array_shift($reason_arr);
|
|
|
|
array_shift($reason_arr);
|
|
|
|
|
|
|
|
$reason = implode(' ', $reason_arr);
|
|
|
|
Config::set('system', 'maintenance_reason', $reason);
|
|
|
|
} else {
|
|
|
|
Config::set('system', 'maintenance_reason', '');
|
|
|
|
}
|
|
|
|
|
2017-03-19 14:57:36 +00:00
|
|
|
if ($maint_mode) {
|
2013-01-14 23:35:41 +00:00
|
|
|
$mode_str = "maintenance mode";
|
2017-03-19 13:24:07 +00:00
|
|
|
} else {
|
2013-01-14 23:35:41 +00:00
|
|
|
$mode_str = "normal mode";
|
2017-03-19 13:24:07 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
echo "\n\tSystem set in $mode_str\n";
|
|
|
|
|
|
|
|
if ($reason != '') {
|
|
|
|
echo "\tMaintenance reason: $reason\n\n";
|
|
|
|
} else {
|
|
|
|
echo "\n";
|
|
|
|
}
|
2013-01-14 23:35:41 +00:00
|
|
|
|
|
|
|
echo "Usage:\n\n";
|
2017-03-20 04:37:13 +00:00
|
|
|
echo "\tphp {$argv[0]} [1] [Maintenance reason|redirection url]\n";
|
|
|
|
echo "\t\tSet the system in maintenance mode\n\n";
|
|
|
|
echo "\t\tIf the optionally entered maintenance reason is an url\n";
|
|
|
|
echo "\t\tthe visitor is redirected to that page.\n";
|
|
|
|
echo "\n";
|
|
|
|
echo "\t\tExamples:\n";
|
|
|
|
echo "\t\t\tphp {$argv[0]} 1 System upgrade\n";
|
|
|
|
echo "\t\t\tphp {$argv[0]} 1 http://domain.tld/downtime\n";
|
|
|
|
echo "\n";
|
|
|
|
echo "\tphp {$argv[0]} 0\n";
|
|
|
|
echo "\t\tSet the system in normal mode\n\n";
|