flarum/index.php

45 lines
1.3 KiB
PHP
Raw Normal View History

<?php
use Flarum\Core;
use Zend\Diactoros\Server;
use Zend\Stratigility\MiddlewarePipe;
// Instantiate the application, register providers etc.
2015-08-13 00:43:08 +00:00
$app = require __DIR__.'/flarum/bootstrap.php';
2015-08-17 04:42:52 +00:00
if ($app->bound('flarum.config')) {
$app->register('Flarum\Forum\ForumServiceProvider');
// Build a middleware pipeline for Flarum
$flarum = new MiddlewarePipe();
$flarum->pipe($app->make('Flarum\Forum\Middleware\LoginWithCookie'));
$flarum->pipe($app->make('Flarum\Api\Middleware\ReadJsonParameters'));
$basePath = parse_url(Core::config('base_url'), PHP_URL_PATH);
$flarum->pipe($basePath, $app->make('Flarum\Http\RouterMiddleware', ['routes' => $app->make('flarum.forum.routes')]));
// Handle errors
if (Core::inDebugMode()) {
$flarum->pipe(new \Franzl\Middleware\Whoops\Middleware());
} else {
$flarum->pipe(new \Flarum\Forum\Middleware\HandleErrors(base_path('error')));
}
} else {
2015-08-17 04:42:52 +00:00
$app->register('Flarum\Install\InstallServiceProvider');
$flarum = new MiddlewarePipe();
$flarum->pipe('/', $app->make('Flarum\Http\RouterMiddleware', ['routes' => $app->make('flarum.install.routes')]));
$flarum->pipe(new \Franzl\Middleware\Whoops\Middleware());
}
$server = Server::createServer(
$flarum,
$_SERVER,
$_GET,
$_POST,
$_COOKIE,
$_FILES
);
$server->listen();