friendica/index.php

55 lines
2.0 KiB
PHP
Raw Normal View History

2010-07-01 19:48:07 -04:00
<?php
2010-12-09 02:08:59 -05:00
/**
2023-01-01 09:36:24 -05:00
* @copyright Copyright (C) 2010-2023, the Friendica project
*
* @license GNU AGPL version 3 or any later version
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
2010-12-09 02:08:59 -05:00
*/
2010-07-01 19:48:07 -04:00
2019-08-05 03:02:55 -04:00
use Dice\Dice;
2020-12-09 17:10:27 -05:00
$start_time = microtime(true);
if (!file_exists(__DIR__ . '/vendor/autoload.php')) {
die('Vendor path not found. Please execute "bin/composer.phar --no-dev install" on the command line in the web root.');
}
2018-12-27 12:17:02 -05:00
require __DIR__ . '/vendor/autoload.php';
2010-07-01 19:48:07 -04:00
2019-08-05 03:02:55 -04:00
$dice = (new Dice())->addRules(include __DIR__ . '/static/dependencies.config.php');
2019-09-17 10:47:00 -04:00
$dice = $dice->addRule(Friendica\App\Mode::class, ['call' => [['determineRunMode', [false, $_SERVER], Dice::CHAIN_CALL]]]);
\Friendica\DI::init($dice);
2021-10-23 14:46:17 -04:00
\Friendica\Core\Logger\Handler\ErrorHandler::register($dice->create(\Psr\Log\LoggerInterface::class));
// Check the database structure and possibly fixes it
\Friendica\Core\Update::check(\Friendica\DI::basePath(), true, \Friendica\DI::mode());
$a = \Friendica\DI::app();
2021-01-01 14:35:29 -05:00
\Friendica\DI::mode()->setExecutor(\Friendica\App\Mode::INDEX);
2019-08-12 12:13:58 -04:00
$a->runFrontend(
$dice->create(\Friendica\App\Router::class),
2021-10-26 15:44:29 -04:00
$dice->create(\Friendica\Core\PConfig\Capability\IManagePersonalConfigValues::class),
$dice->create(\Friendica\Security\Authentication::class),
2020-12-09 17:10:27 -05:00
$dice->create(\Friendica\App\Page::class),
2022-12-26 15:17:32 -05:00
$dice->create(Friendica\Module\Special\HTTPException::class),
new \Friendica\Util\HTTPInputData($_SERVER),
2020-12-09 17:10:27 -05:00
$start_time
2019-08-12 12:13:58 -04:00
);