1<?php 2 3/** 4 * webtrees: online genealogy 5 * Copyright (C) 2019 webtrees development team 6 * This program is free software: you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License as published by 8 * the Free Software Foundation, either version 3 of the License, or 9 * (at your option) any later version. 10 * This program is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 * You should have received a copy of the GNU General Public License 15 * along with this program. If not, see <http://www.gnu.org/licenses/>. 16 */ 17declare(strict_types=1); 18 19namespace Fisharebest\Webtrees; 20 21use Middleland\Dispatcher; 22 23require __DIR__ . '/vendor/autoload.php'; 24 25// Create the application. 26$application = new Webtrees(); 27 28$application->bootstrap(); 29 30// Select a PSR message factory. 31$application->selectMessageFactory(); 32 33// Convert the GET, POST, COOKIE variables into a request. 34$request = $application->createServerRequest(); 35 36// Calculate the base URL, so we can generate absolute URLs. 37// Remove any PHP script name and parameters. 38define('WT_BASE_URL', preg_replace('/[^\/]+\.php(\?.*)?$/', '', (string) $request->getUri())); 39 40// The application is defined by a stack of middleware and a PSR-11 container. 41$middleware = $application->middleware(); 42$container = app(); 43$dispatcher = new Dispatcher($middleware, $container); 44$dispatcher->dispatch($request); 45