<?php
use Symfony\Component\Routing\Exception\MethodNotAllowedException;
use Symfony\Component\Routing\Exception\ResourceNotFoundException;
use Symfony\Component\Routing\RequestContext;
/**
* This class has been auto-generated
* by the Symfony Routing Component.
*/
class srcDevDebugProjectContainerUrlMatcher extends Symfony\Bundle\FrameworkBundle\Routing\RedirectableUrlMatcher
{
public function __construct(RequestContext $context)
{
$this->context = $context;
}
public function match($pathinfo)
{
$allow = $allowSchemes = [];
if ($ret = $this->doMatch($pathinfo, $allow, $allowSchemes)) {
return $ret;
}
if ($allow) {
throw new MethodNotAllowedException(array_keys($allow));
}
if (!in_array($this->context->getMethod(), ['HEAD', 'GET'], true)) {
// no-op
} elseif ($allowSchemes) {
redirect_scheme:
$scheme = $this->context->getScheme();
$this->context->setScheme(key($allowSchemes));
try {
if ($ret = $this->doMatch($pathinfo)) {
return $this->redirect($pathinfo, $ret['_route'], $this->context->getScheme()) + $ret;
}
} finally {
$this->context->setScheme($scheme);
}
} elseif ('/' !== $trimmedPathinfo = rtrim($pathinfo, '/') ?: '/') {
$pathinfo = $trimmedPathinfo === $pathinfo ? $pathinfo.'/' : $trimmedPathinfo;
if ($ret = $this->doMatch($pathinfo, $allow, $allowSchemes)) {
return $this->redirect($pathinfo, $ret['_route']) + $ret;
}
if ($allowSchemes) {
goto redirect_scheme;
}
}
throw new ResourceNotFoundException();
}
private function doMatch(string $pathinfo, array &$allow = [], array &$allowSchemes = []): array
{
$allow = $allowSchemes = [];
$pathinfo = rawurldecode($pathinfo) ?: '/';
$trimmedPathinfo = rtrim($pathinfo, '/') ?: '/';
$context = $this->context;
$requestMethod = $canonicalMethod = $context->getMethod();
if ('HEAD' === $requestMethod) {
$canonicalMethod = 'GET';
}
switch ($trimmedPathinfo) {
default:
$routes = [
'/admin/downloads' => [['_route' => 'downloads_index', '_controller' => 'App\\Controller\\DownloadsController::index'], null, ['GET' => 0], null, true],
'/admin/downloads/new' => [['_route' => 'downloads_new', '_controller' => 'App\\Controller\\DownloadsController::new'], null, ['GET' => 0, 'POST' => 1], null, false],
'/admin/kontakt' => [['_route' => 'kontakt_index', '_controller' => 'App\\Controller\\KontaktController::index'], null, ['GET' => 0], null, true],
'/admin/kontakt/new' => [['_route' => 'kontakt_new', '_controller' => 'App\\Controller\\KontaktController::new'], null, ['GET' => 0, 'POST' => 1], null, false],
'/admin/mitglieder' => [['_route' => 'mitglieder_index', '_controller' => 'App\\Controller\\MitgliederController::index'], null, ['GET' => 0], null, true],
'/admin/mitglieder/new' => [['_route' => 'mitglieder_new', '_controller' => 'App\\Controller\\MitgliederController::new'], null, ['GET' => 0, 'POST' => 1], null, false],
'/admin/playlist' => [['_route' => 'playlist_index', '_controller' => 'App\\Controller\\PlaylistController::index'], null, ['GET' => 0], null, true],
'/admin/playlist/new' => [['_route' => 'playlist_new', '_controller' => 'App\\Controller\\PlaylistController::new'], null, ['GET' => 0, 'POST' => 1], null, false],
'/admin/login_check' => [['_route' => 'login_check', '_controller' => 'App\\Controller\\SecurityController::loginCheckAction'], null, null, null, false],
'/admin/logout' => [['_route' => 'logout', '_controller' => 'App\\Controller\\SecurityController::logoutAction'], null, null, null, false],
'/admin/slider' => [['_route' => 'slider_index', '_controller' => 'App\\Controller\\SliderController::index'], null, ['GET' => 0], null, true],
'/admin/slider/new' => [['_route' => 'slider_new', '_controller' => 'App\\Controller\\SliderController::new'], null, ['GET' => 0, 'POST' => 1], null, false],
'/admin/termine' => [['_route' => 'termine_index', '_controller' => 'App\\Controller\\TermineController::index'], null, ['GET' => 0], null, true],
'/admin/termine/new' => [['_route' => 'termine_new', '_controller' => 'App\\Controller\\TermineController::new'], null, ['GET' => 0, 'POST' => 1], null, false],
'/_profiler' => [['_route' => '_profiler_home', '_controller' => 'web_profiler.controller.profiler::homeAction'], null, null, null, true],
'/_profiler/search' => [['_route' => '_profiler_search', '_controller' => 'web_profiler.controller.profiler::searchAction'], null, null, null, false],
'/_profiler/search_bar' => [['_route' => '_profiler_search_bar', '_controller' => 'web_profiler.controller.profiler::searchBarAction'], null, null, null, false],
'/_profiler/phpinfo' => [['_route' => '_profiler_phpinfo', '_controller' => 'web_profiler.controller.profiler::phpinfoAction'], null, null, null, false],
'/_profiler/open' => [['_route' => '_profiler_open_file', '_controller' => 'web_profiler.controller.profiler::openAction'], null, null, null, false],
'/' => [['_route' => 'home', '_controller' => 'App\\Controller\\HomeController:index'], null, null, null, false],
'/admin/login' => [['_route' => 'login', '_controller' => 'App\\Controller\\SecurityController:login'], null, null, null, false],
'/admin' => [['_route' => 'admin', '_controller' => 'App\\Controller\\AdminController:index'], null, null, null, false],
];
if (!isset($routes[$trimmedPathinfo])) {
break;
}
list($ret, $requiredHost, $requiredMethods, $requiredSchemes, $hasTrailingSlash) = $routes[$trimmedPathinfo];
if ('/' !== $pathinfo && $hasTrailingSlash === ($trimmedPathinfo === $pathinfo)) {
if ('GET' === $canonicalMethod && (!$requiredMethods || isset($requiredMethods['GET']))) {
return $allow = $allowSchemes = [];
}
break;
}
$hasRequiredScheme = !$requiredSchemes || isset($requiredSchemes[$context->getScheme()]);
if ($requiredMethods && !isset($requiredMethods[$canonicalMethod]) && !isset($requiredMethods[$requestMethod])) {
if ($hasRequiredScheme) {
$allow += $requiredMethods;
}
break;
}
if (!$hasRequiredScheme) {
$allowSchemes += $requiredSchemes;
break;
}
return $ret;
}
$matchedPathinfo = $pathinfo;
$regexList = [
0 => '{^(?'
.'|/admin/(?'
.'|downloads/([^/]++)(?'
.'|(*:38)'
.'|/edit(*:50)'
.'|(*:57)'
.')'
.'|kontakt/([^/]++)(?'
.'|(*:84)'
.'|/edit(*:96)'
.'|(*:103)'
.')'
.'|mitglieder/([^/]++)(?'
.'|(*:134)'
.'|/edit(*:147)'
.'|(*:155)'
.')'
.'|playlist/([^/]++)(?'
.'|(*:184)'
.'|/edit(*:197)'
.'|(*:205)'
.')'
.'|slider/([^/]++)(?'
.'|(*:232)'
.'|/edit(*:245)'
.'|(*:253)'
.')'
.'|termine/([^/]++)(?'
.'|(*:281)'
.'|/edit(*:294)'
.'|(*:302)'
.')'
.')'
.'|/_(?'
.'|error/(\\d+)(?:\\.([^/]++))?(*:343)'
.'|wdt/([^/]++)(*:363)'
.'|profiler/([^/]++)(?'
.'|/(?'
.'|search/results(*:409)'
.'|router(*:423)'
.'|exception(?'
.'|(*:443)'
.'|\\.css(*:456)'
.')'
.')'
.'|(*:466)'
.')'
.')'
.')/?$}sD',
];
foreach ($regexList as $offset => $regex) {
while (preg_match($regex, $matchedPathinfo, $matches)) {
switch ($m = (int) $matches['MARK']) {
default:
$routes = [
38 => [['_route' => 'downloads_show', '_controller' => 'App\\Controller\\DownloadsController::show'], ['id'], ['GET' => 0], null, false, true],
50 => [['_route' => 'downloads_edit', '_controller' => 'App\\Controller\\DownloadsController::edit'], ['id'], ['GET' => 0, 'POST' => 1], null, false, false],
57 => [['_route' => 'downloads_delete', '_controller' => 'App\\Controller\\DownloadsController::delete'], ['id'], ['DELETE' => 0], null, false, true],
84 => [['_route' => 'kontakt_show', '_controller' => 'App\\Controller\\KontaktController::show'], ['id'], ['GET' => 0], null, false, true],
96 => [['_route' => 'kontakt_edit', '_controller' => 'App\\Controller\\KontaktController::edit'], ['id'], ['GET' => 0, 'POST' => 1], null, false, false],
103 => [['_route' => 'kontakt_delete', '_controller' => 'App\\Controller\\KontaktController::delete'], ['id'], ['DELETE' => 0], null, false, true],
134 => [['_route' => 'mitglieder_show', '_controller' => 'App\\Controller\\MitgliederController::show'], ['id'], ['GET' => 0], null, false, true],
147 => [['_route' => 'mitglieder_edit', '_controller' => 'App\\Controller\\MitgliederController::edit'], ['id'], ['GET' => 0, 'POST' => 1], null, false, false],
155 => [['_route' => 'mitglieder_delete', '_controller' => 'App\\Controller\\MitgliederController::delete'], ['id'], ['DELETE' => 0], null, false, true],
184 => [['_route' => 'playlist_show', '_controller' => 'App\\Controller\\PlaylistController::show'], ['id'], ['GET' => 0], null, false, true],
197 => [['_route' => 'playlist_edit', '_controller' => 'App\\Controller\\PlaylistController::edit'], ['id'], ['GET' => 0, 'POST' => 1], null, false, false],
205 => [['_route' => 'playlist_delete', '_controller' => 'App\\Controller\\PlaylistController::delete'], ['id'], ['DELETE' => 0], null, false, true],
232 => [['_route' => 'slider_show', '_controller' => 'App\\Controller\\SliderController::show'], ['id'], ['GET' => 0], null, false, true],
245 => [['_route' => 'slider_edit', '_controller' => 'App\\Controller\\SliderController::edit'], ['id'], ['GET' => 0, 'POST' => 1], null, false, false],
253 => [['_route' => 'slider_delete', '_controller' => 'App\\Controller\\SliderController::delete'], ['id'], ['DELETE' => 0], null, false, true],
281 => [['_route' => 'termine_show', '_controller' => 'App\\Controller\\TermineController::show'], ['id'], ['GET' => 0], null, false, true],
294 => [['_route' => 'termine_edit', '_controller' => 'App\\Controller\\TermineController::edit'], ['id'], ['GET' => 0, 'POST' => 1], null, false, false],
302 => [['_route' => 'termine_delete', '_controller' => 'App\\Controller\\TermineController::delete'], ['id'], ['DELETE' => 0], null, false, true],
343 => [['_route' => '_twig_error_test', '_controller' => 'twig.controller.preview_error::previewErrorPageAction', '_format' => 'html'], ['code', '_format'], null, null, false, true],
363 => [['_route' => '_wdt', '_controller' => 'web_profiler.controller.profiler::toolbarAction'], ['token'], null, null, false, true],
409 => [['_route' => '_profiler_search_results', '_controller' => 'web_profiler.controller.profiler::searchResultsAction'], ['token'], null, null, false, false],
423 => [['_route' => '_profiler_router', '_controller' => 'web_profiler.controller.router::panelAction'], ['token'], null, null, false, false],
443 => [['_route' => '_profiler_exception', '_controller' => 'web_profiler.controller.exception::showAction'], ['token'], null, null, false, false],
456 => [['_route' => '_profiler_exception_css', '_controller' => 'web_profiler.controller.exception::cssAction'], ['token'], null, null, false, false],
466 => [['_route' => '_profiler', '_controller' => 'web_profiler.controller.profiler::panelAction'], ['token'], null, null, false, true],
];
list($ret, $vars, $requiredMethods, $requiredSchemes, $hasTrailingSlash, $hasTrailingVar) = $routes[$m];
$hasTrailingVar = $trimmedPathinfo !== $pathinfo && $hasTrailingVar;
if ('/' !== $pathinfo && !$hasTrailingVar && $hasTrailingSlash === ($trimmedPathinfo === $pathinfo)) {
if ('GET' === $canonicalMethod && (!$requiredMethods || isset($requiredMethods['GET']))) {
return $allow = $allowSchemes = [];
}
break;
}
if ($hasTrailingSlash && $hasTrailingVar && preg_match($regex, rtrim($matchedPathinfo, '/') ?: '/', $n) && $m === (int) $n['MARK']) {
$matches = $n;
}
foreach ($vars as $i => $v) {
if (isset($matches[1 + $i])) {
$ret[$v] = $matches[1 + $i];
}
}
$hasRequiredScheme = !$requiredSchemes || isset($requiredSchemes[$context->getScheme()]);
if ($requiredMethods && !isset($requiredMethods[$canonicalMethod]) && !isset($requiredMethods[$requestMethod])) {
if ($hasRequiredScheme) {
$allow += $requiredMethods;
}
break;
}
if (!$hasRequiredScheme) {
$allowSchemes += $requiredSchemes;
break;
}
return $ret;
}
if (466 === $m) {
break;
}
$regex = substr_replace($regex, 'F', $m - $offset, 1 + strlen($m));
$offset += strlen($m);
}
}
if ('/' === $pathinfo && !$allow && !$allowSchemes) {
throw new Symfony\Component\Routing\Exception\NoConfigurationException();
}
return [];
}
}