Twig_Error_Loader
There are no registered paths for namespace "error". Twig_Error_Loader thrown with message "There are no registered paths for namespace "error"." Stacktrace: #22 Twig_Error_Loader in /var/www/vhosts/kfagg.com/httpdocs/vendor/twig/twig/lib/Twig/Loader/Filesystem.php:203 #21 Twig_Loader_Filesystem:findTemplate in /var/www/vhosts/kfagg.com/httpdocs/vendor/twig/twig/lib/Twig/Loader/Filesystem.php:143 #20 Twig_Loader_Filesystem:getCacheKey in /var/www/vhosts/kfagg.com/httpdocs/vendor/twig/twig/lib/Twig/Environment.php:269 #19 Twig_Environment:getTemplateClass in /var/www/vhosts/kfagg.com/httpdocs/vendor/twig/twig/lib/Twig/Environment.php:345 #18 Twig_Environment:loadTemplate in /var/www/vhosts/kfagg.com/httpdocs/vendor/twig/twig/lib/Twig/Environment.php:288 #17 Twig_Environment:render in /var/www/vhosts/kfagg.com/httpdocs/vendor/zendframework/zend-expressive-twigrenderer/src/TwigRenderer.php:102 #16 Zend\Expressive\Twig\TwigRenderer:render in /var/www/vhosts/kfagg.com/httpdocs/vendor/zendframework/zend-expressive/src/Delegate/NotFoundDelegate.php:98 #15 Zend\Expressive\Delegate\NotFoundDelegate:generateTemplatedResponse in /var/www/vhosts/kfagg.com/httpdocs/vendor/zendframework/zend-expressive/src/Delegate/NotFoundDelegate.php:65 #14 Zend\Expressive\Delegate\NotFoundDelegate:process in /var/www/vhosts/kfagg.com/httpdocs/vendor/zendframework/zend-stratigility/src/Next.php:97 #13 Zend\Stratigility\Next:process in /var/www/vhosts/kfagg.com/httpdocs/vendor/zendframework/zend-stratigility/src/Next.php:113 #12 Zend\Stratigility\Next:process in /var/www/vhosts/kfagg.com/httpdocs/core/Middleware/Controller.php:62 #11 Core\Middleware\Controller:processController in /var/www/vhosts/kfagg.com/httpdocs/core/Middleware/Controller.php:54 #10 Core\Middleware\Controller:process in /var/www/vhosts/kfagg.com/httpdocs/core/Middleware/FindController.php:58 #9 Core\Middleware\FindController:process in /var/www/vhosts/kfagg.com/httpdocs/vendor/zendframework/zend-stratigility/src/Next.php:128 #8 Zend\Stratigility\Next:process in /var/www/vhosts/kfagg.com/httpdocs/core/Service/Locale.php:24 #7 Core\Service\Locale:process in /var/www/vhosts/kfagg.com/httpdocs/vendor/zendframework/zend-stratigility/src/Next.php:128 #6 Zend\Stratigility\Next:process in /var/www/vhosts/kfagg.com/httpdocs/vendor/zendframework/zend-stratigility/src/Middleware/ErrorHandler.php:157 #5 Zend\Stratigility\Middleware\ErrorHandler:process in /var/www/vhosts/kfagg.com/httpdocs/vendor/zendframework/zend-expressive/src/Middleware/LazyLoadingMiddleware.php:60 #4 Zend\Expressive\Middleware\LazyLoadingMiddleware:process in /var/www/vhosts/kfagg.com/httpdocs/vendor/zendframework/zend-stratigility/src/Next.php:128 #3 Zend\Stratigility\Next:process in /var/www/vhosts/kfagg.com/httpdocs/vendor/zendframework/zend-stratigility/src/MiddlewarePipe.php:102 #2 Zend\Stratigility\MiddlewarePipe:process in /var/www/vhosts/kfagg.com/httpdocs/vendor/zendframework/zend-expressive/src/Application.php:374 #1 Zend\Expressive\Application:run in /var/www/vhosts/kfagg.com/httpdocs/public/index.php:17 #0 {closure} in /var/www/vhosts/kfagg.com/httpdocs/public/index.php:18
Stack frames (23)
22
Twig_Error_Loader
/
vendor
/
twig
/
twig
/
lib
/
Twig
/
Loader
/
Filesystem.php
203
21
Twig_Loader_Filesystem
findTemplate
/
vendor
/
twig
/
twig
/
lib
/
Twig
/
Loader
/
Filesystem.php
143
20
Twig_Loader_Filesystem
getCacheKey
/
vendor
/
twig
/
twig
/
lib
/
Twig
/
Environment.php
269
19
Twig_Environment
getTemplateClass
/
vendor
/
twig
/
twig
/
lib
/
Twig
/
Environment.php
345
18
Twig_Environment
loadTemplate
/
vendor
/
twig
/
twig
/
lib
/
Twig
/
Environment.php
288
17
Twig_Environment
render
/
vendor
/
zendframework
/
zend-expressive-twigrenderer
/
src
/
TwigRenderer.php
102
16
Zend
\
Expressive
\
Twig
\
TwigRenderer
render
/
vendor
/
zendframework
/
zend-expressive
/
src
/
Delegate
/
NotFoundDelegate.php
98
15
Zend
\
Expressive
\
Delegate
\
NotFoundDelegate
generateTemplatedResponse
/
vendor
/
zendframework
/
zend-expressive
/
src
/
Delegate
/
NotFoundDelegate.php
65
14
Zend
\
Expressive
\
Delegate
\
NotFoundDelegate
process
/
vendor
/
zendframework
/
zend-stratigility
/
src
/
Next.php
97
13
Zend
\
Stratigility
\
Next
process
/
vendor
/
zendframework
/
zend-stratigility
/
src
/
Next.php
113
12
Zend
\
Stratigility
\
Next
process
/
core
/
Middleware
/
Controller.php
62
11
Core
\
Middleware
\
Controller
processController
/
core
/
Middleware
/
Controller.php
54
10
Core
\
Middleware
\
Controller
process
/
core
/
Middleware
/
FindController.php
58
9
Core
\
Middleware
\
FindController
process
/
vendor
/
zendframework
/
zend-stratigility
/
src
/
Next.php
128
8
Zend
\
Stratigility
\
Next
process
/
core
/
Service
/
Locale.php
24
7
Core
\
Service
\
Locale
process
/
vendor
/
zendframework
/
zend-stratigility
/
src
/
Next.php
128
6
Zend
\
Stratigility
\
Next
process
/
vendor
/
zendframework
/
zend-stratigility
/
src
/
Middleware
/
ErrorHandler.php
157
5
Zend
\
Stratigility
\
Middleware
\
ErrorHandler
process
/
vendor
/
zendframework
/
zend-expressive
/
src
/
Middleware
/
LazyLoadingMiddleware.php
60
4
Zend
\
Expressive
\
Middleware
\
LazyLoadingMiddleware
process
/
vendor
/
zendframework
/
zend-stratigility
/
src
/
Next.php
128
3
Zend
\
Stratigility
\
Next
process
/
vendor
/
zendframework
/
zend-stratigility
/
src
/
MiddlewarePipe.php
102
2
Zend
\
Stratigility
\
MiddlewarePipe
process
/
vendor
/
zendframework
/
zend-expressive
/
src
/
Application.php
374
1
Zend
\
Expressive
\
Application
run
/
public
/
index.php
17
0
{closure}
/
public
/
index.php
18
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
vendor
/
twig
/
twig
/
lib
/
Twig
/
Loader
/
Filesystem.php
        if (isset($this->errorCache[$name])) {
            if (!$throw) {
                return false;
            }

            throw new Twig_Error_Loader($this->errorCache[$name]);
        }

        $this->validateName($name);

        list($namespace, $shortname) = $this->parseName($name);

        if (!isset($this->paths[$namespace])) {
            $this->errorCache[$name] = sprintf('There are no registered paths for namespace "%s".', $namespace);

            if (!$throw) {
                return false;
            }

            throw new Twig_Error_Loader($this->errorCache[$name]);
        }

        foreach ($this->paths[$namespace] as $path) {
            if (!$this->isAbsolutePath($path)) {
                $path = $this->rootPath.'/'.$path;
            }

            if (is_file($path.'/'.$shortname)) {
                if (false !== $realpath = realpath($path.'/'.$shortname)) {
                    return $this->cache[$name] = $realpath;
                }

                return $this->cache[$name] = $path.'/'.$shortname;
            }
        }

        $this->errorCache[$name] = sprintf('Unable to find template "%s" (looked into: %s).', $name, implode(', ', $this->paths[$namespace]));

        if (!$throw) {
            return false;
Arguments
  1. "There are no registered paths for namespace "error"."
    
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
vendor
/
twig
/
twig
/
lib
/
Twig
/
Loader
/
Filesystem.php
        $path = rtrim($path, '/\\');

        if (!isset($this->paths[$namespace])) {
            $this->paths[$namespace][] = $path;
        } else {
            array_unshift($this->paths[$namespace], $path);
        }
    }

    public function getSourceContext($name)
    {
        $path = $this->findTemplate($name);

        return new Twig_Source(file_get_contents($path), $name, $path);
    }

    public function getCacheKey($name)
    {
        $path = $this->findTemplate($name);
        $len = strlen($this->rootPath);
        if (0 === strncmp($this->rootPath, $path, $len)) {
            return substr($path, $len);
        }

        return $path;
    }

    public function exists($name)
    {
        $name = $this->normalizeName($name);

        if (isset($this->cache[$name])) {
            return true;
        }

        return false !== $this->findTemplate($name, false);
    }

    public function isFresh($name, $time)
Arguments
  1. "@error/404.html.twig"
    
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
vendor
/
twig
/
twig
/
lib
/
Twig
/
Environment.php
    /**
     * Gets the template class associated with the given string.
     *
     * The generated template class is based on the following parameters:
     *
     *  * The cache key for the given template;
     *  * The currently enabled extensions;
     *  * Whether the Twig C extension is available or not;
     *  * PHP version;
     *  * Twig version;
     *  * Options with what environment was created.
     *
     * @param string   $name  The name for which to calculate the template class name
     * @param int|null $index The index if it is an embedded template
     *
     * @return string The template class name
     */
    public function getTemplateClass($name, $index = null)
    {
        $key = $this->getLoader()->getCacheKey($name).$this->optionsHash;

        return $this->templateClassPrefix.hash('sha256', $key).(null === $index ? '' : '_'.$index);
    }

    /**
     * Renders a template.
     *
     * @param string $name    The template name
     * @param array  $context An array of parameters to pass to the template
     *
     * @return string The rendered template
     *
     * @throws Twig_Error_Loader  When the template cannot be found
     * @throws Twig_Error_Syntax  When an error occurred during compilation
     * @throws Twig_Error_Runtime When an error occurred during rendering
     */
    public function render($name, array $context = array())
    {
        return $this->loadTemplate($name)->render($context);
    }
Arguments
  1. "@error/404.html.twig"
    
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
vendor
/
twig
/
twig
/
lib
/
Twig
/
Environment.php
    /**
     * Loads a template internal representation.
     *
     * This method is for internal use only and should never be called
     * directly.
     *
     * @param string $name  The template name
     * @param int    $index The index if it is an embedded template
     *
     * @return Twig_Template A template instance representing the given template name
     *
     * @throws Twig_Error_Loader  When the template cannot be found
     * @throws Twig_Error_Runtime When a previously generated cache is corrupted
     * @throws Twig_Error_Syntax  When an error occurred during compilation
     *
     * @internal
     */
    public function loadTemplate($name, $index = null)
    {
        $cls = $mainCls = $this->getTemplateClass($name);
        if (null !== $index) {
            $cls .= '_'.$index;
        }

        if (isset($this->loadedTemplates[$cls])) {
            return $this->loadedTemplates[$cls];
        }

        if (!class_exists($cls, false)) {
            $key = $this->cache->generateKey($name, $mainCls);

            if (!$this->isAutoReload() || $this->isTemplateFresh($name, $this->cache->getTimestamp($key))) {
                $this->cache->load($key);
            }

            if (!class_exists($cls, false)) {
                $source = $this->getLoader()->getSourceContext($name);
                $content = $this->compileSource($source);
                $this->cache->write($key, $content);
                $this->cache->load($key);
Arguments
  1. "@error/404.html.twig"
    
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
vendor
/
twig
/
twig
/
lib
/
Twig
/
Environment.php
        $key = $this->getLoader()->getCacheKey($name).$this->optionsHash;

        return $this->templateClassPrefix.hash('sha256', $key).(null === $index ? '' : '_'.$index);
    }

    /**
     * Renders a template.
     *
     * @param string $name    The template name
     * @param array  $context An array of parameters to pass to the template
     *
     * @return string The rendered template
     *
     * @throws Twig_Error_Loader  When the template cannot be found
     * @throws Twig_Error_Syntax  When an error occurred during compilation
     * @throws Twig_Error_Runtime When an error occurred during rendering
     */
    public function render($name, array $context = array())
    {
        return $this->loadTemplate($name)->render($context);
    }

    /**
     * Displays a template.
     *
     * @param string $name    The template name
     * @param array  $context An array of parameters to pass to the template
     *
     * @throws Twig_Error_Loader  When the template cannot be found
     * @throws Twig_Error_Syntax  When an error occurred during compilation
     * @throws Twig_Error_Runtime When an error occurred during rendering
     */
    public function display($name, array $context = array())
    {
        $this->loadTemplate($name)->display($context);
    }

    /**
     * Loads a template.
     *
Arguments
  1. "@error/404.html.twig"
    
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
vendor
/
zendframework
/
zend-expressive-twigrenderer
/
src
/
TwigRenderer.php
    /**
     * Render
     *
     * @param string $name
     * @param array|object $params
     * @return string
     * @throws \Zend\Expressive\Template\Exception\InvalidArgumentException for non-array, non-object parameters.
     */
    public function render($name, $params = [])
    {
        // Merge parameters based on requested template name
        $params = $this->mergeParams($name, $this->normalizeParams($params));

        $name   = $this->normalizeTemplate($name);

        // Merge parameters based on normalized template name
        $params = $this->mergeParams($name, $params);

        return $this->template->render($name, $params);
    }

    /**
     * Add a path for template
     *
     * @param string $path
     * @param null|string $namespace
     * @return void
     */
    public function addPath($path, $namespace = null)
    {
        $namespace = $namespace ?: TwigFilesystem::MAIN_NAMESPACE;
        $this->twigLoader->addPath($path, $namespace);
    }

    /**
     * Get the template directories
     *
     * @return TemplatePath[]
     */
Arguments
  1. "@error/404.html.twig"
    
  2. array:1 [
      "request" => ServerRequest {#6477}
    ]
    
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
vendor
/
zendframework
/
zend-expressive
/
src
/
Delegate
/
NotFoundDelegate.php
                'Cannot %s %s',
                $request->getMethod(),
                (string) $request->getUri()
            ));
        return $response;
    }

    /**
     * Generates a response using a template.
     *
     * Template will receive the current request via the "request" variable.
     *
     * @param ServerRequestInterface $request
     * @return ResponseInterface
     */
    private function generateTemplatedResponse(ServerRequestInterface $request)
    {
        $response = $this->responsePrototype->withStatus(StatusCodeInterface::STATUS_NOT_FOUND);
        $response->getBody()->write(
            $this->renderer->render($this->template, ['request' => $request])
        );

        return $response;
    }
}
 
Arguments
  1. "@error/404.html.twig"
    
  2. array:1 [
      "request" => ServerRequest {#6477}
    ]
    
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
vendor
/
zendframework
/
zend-expressive
/
src
/
Delegate
/
NotFoundDelegate.php
        $template = self::TEMPLATE_DEFAULT
    ) {
        $this->responsePrototype = $responsePrototype;
        $this->renderer          = $renderer;
        $this->template          = $template;
    }

    /**
     * Creates and returns a 404 response.
     *
     * @param ServerRequestInterface $request
     * @return ResponseInterface
     */
    public function process(ServerRequestInterface $request)
    {
        if (! $this->renderer) {
            return $this->generatePlainTextResponse($request);
        }

        return $this->generateTemplatedResponse($request);
    }

    /**
     * Generates a plain text response indicating the request method and URI.
     *
     * @param ServerRequestInterface $request
     * @return ResponseInterface
     */
    private function generatePlainTextResponse(ServerRequestInterface $request)
    {
        $response = $this->responsePrototype->withStatus(StatusCodeInterface::STATUS_NOT_FOUND);
        $response->getBody()
            ->write(sprintf(
                'Cannot %s %s',
                $request->getMethod(),
                (string) $request->getUri()
            ));
        return $response;
    }

Arguments
  1. ServerRequest {#6477}
    
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
vendor
/
zendframework
/
zend-stratigility
/
src
/
Next.php
    {
        return $this->process($request);
    }

    /**
     * @param ServerRequestInterface $request
     * @return ResponseInterface
     * @throws Exception\MissingResponseException If the queue is exhausted, and
     *     no "next delegate" is present.
     * @throws Exception\MissingResponseException If the middleware executed does
     *     not return a response.
     */
    public function process(ServerRequestInterface $request)
    {
        $request  = $this->resetPath($request);

        // No middleware remains; done
        if ($this->queue->isEmpty()) {
            if ($this->nextDelegate) {
                return $this->nextDelegate->process($request);
            }

            throw new Exception\MissingResponseException(sprintf(
                'Queue provided to %s was exhausted, with no response returned',
                get_class($this)
            ));
        }

        $layer           = $this->queue->dequeue();
        $path            = $request->getUri()->getPath() ?: '/';
        $route           = $layer->path;
        $normalizedRoute = (strlen($route) > 1) ? rtrim($route, '/') : $route;

        // Skip if layer path does not match current url
        if (substr(strtolower($path), 0, strlen($normalizedRoute)) !== strtolower($normalizedRoute)) {
            return $this->process($request);
        }

        // Skip if match is not at a border ('/', '.', or end)
        $border = $this->getBorder($path, $normalizedRoute);
Arguments
  1. ServerRequest {#6477}
    
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
vendor
/
zendframework
/
zend-stratigility
/
src
/
Next.php
        // No middleware remains; done
        if ($this->queue->isEmpty()) {
            if ($this->nextDelegate) {
                return $this->nextDelegate->process($request);
            }

            throw new Exception\MissingResponseException(sprintf(
                'Queue provided to %s was exhausted, with no response returned',
                get_class($this)
            ));
        }

        $layer           = $this->queue->dequeue();
        $path            = $request->getUri()->getPath() ?: '/';
        $route           = $layer->path;
        $normalizedRoute = (strlen($route) > 1) ? rtrim($route, '/') : $route;

        // Skip if layer path does not match current url
        if (substr(strtolower($path), 0, strlen($normalizedRoute)) !== strtolower($normalizedRoute)) {
            return $this->process($request);
        }

        // Skip if match is not at a border ('/', '.', or end)
        $border = $this->getBorder($path, $normalizedRoute);
        if ($border && '/' !== $border && '.' !== $border) {
            return $this->process($request);
        }

        // Trim off the part of the url that matches the layer route
        if (! empty($route) && $route !== '/') {
            $request = $this->stripRouteFromPath($request, $route);
        }

        $middleware = $layer->handler;
        $response = $middleware->process($request, $this);

        if (! $response instanceof ResponseInterface) {
            throw new Exception\MissingResponseException(sprintf(
                "Last middleware executed did not return a response.\nMethod: %s\nPath: %s\n.Handler: %s",
                $request->getMethod(),
Arguments
  1. ServerRequest {#6477}
    
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
core
/
Middleware
/
Controller.php
    public function process(ServerRequestInterface $request, DelegateInterface $delegate)
    {
        $this->boot('bootProcess');

        foreach($this->middlewares as $middleware) {
            if(($return = $middleware->process($request, $delegate)) !== null) {//if anything returned
                return $return;
            }
        }

        return $this->processController($request, $delegate);
    }

    private function processController(ServerRequestInterface $request, DelegateInterface $delegate)
    {
        $this->boot('bootRouting');

        if (!$this->router || ($result = $this->router->match($request))->isFailure()) {
            return $delegate->process($request);
        }

        $this->request = $request;
        $this->delegate = $delegate;

        Template::defaults([
            'this' => $this
        ]);

        Registry::set('http.controller.object', $this);
        Registry::set('http.request.attributes', $result->getMatchedParams());

        $this->boot('bootDispatch');
        return call_user_func($result->getMatchedMiddleware());
    }

    protected function path($route = null)
    {
        return Registry::get('http.controller.path').$route;
    }
Arguments
  1. ServerRequest {#6477}
    
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
core
/
Middleware
/
Controller.php
            }
        }
    }

    protected function middleware($middleware)
    {
        $this->middlewares[] = $middleware;
    }

    public function process(ServerRequestInterface $request, DelegateInterface $delegate)
    {
        $this->boot('bootProcess');

        foreach($this->middlewares as $middleware) {
            if(($return = $middleware->process($request, $delegate)) !== null) {//if anything returned
                return $return;
            }
        }

        return $this->processController($request, $delegate);
    }

    private function processController(ServerRequestInterface $request, DelegateInterface $delegate)
    {
        $this->boot('bootRouting');

        if (!$this->router || ($result = $this->router->match($request))->isFailure()) {
            return $delegate->process($request);
        }

        $this->request = $request;
        $this->delegate = $delegate;

        Template::defaults([
            'this' => $this
        ]);

        Registry::set('http.controller.object', $this);
        Registry::set('http.request.attributes', $result->getMatchedParams());

Arguments
  1. ServerRequest {#6477}
    
  2. Next {#6437}
    
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
core
/
Middleware
/
FindController.php
        $controllerClass = $controllerClassPath.$controllerClassName;

        if ($controllerPath != '/') {
            $request = App::stripRouteFromPath($request, $controllerPath);
        }

        Registry::set('http.request.method', $request->getMethod());
        Registry::set('http.request.path', $request->getUri()->getPath());
        Registry::set('http.request.headers', $request->getHeaders());
        Registry::set('http.request.cookies', $request->getCookieParams());
        Registry::set('http.request.query', $request->getQueryParams());
        Registry::set('http.request.body', $request->getParsedBody());
        Registry::set('http.request.files', $request->getUploadedFiles());
        Registry::set('http.request.server', $request->getServerParams());

        Registry::set('http.controller.path', Locale::getLocalePath().$controllerPath);
        Registry::set('http.controller.class', $controllerClass);

        return (new $controllerClass)->process($request, $delegate);
    }

    private function controllerClassName($name)
    {
        return str_replace('-', '', ucwords($name, '-'));
    }
}
Arguments
  1. ServerRequest {#6477}
    
  2. Next {#6437}
    
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
vendor
/
zendframework
/
zend-stratigility
/
src
/
Next.php
        $normalizedRoute = (strlen($route) > 1) ? rtrim($route, '/') : $route;

        // Skip if layer path does not match current url
        if (substr(strtolower($path), 0, strlen($normalizedRoute)) !== strtolower($normalizedRoute)) {
            return $this->process($request);
        }

        // Skip if match is not at a border ('/', '.', or end)
        $border = $this->getBorder($path, $normalizedRoute);
        if ($border && '/' !== $border && '.' !== $border) {
            return $this->process($request);
        }

        // Trim off the part of the url that matches the layer route
        if (! empty($route) && $route !== '/') {
            $request = $this->stripRouteFromPath($request, $route);
        }

        $middleware = $layer->handler;
        $response = $middleware->process($request, $this);

        if (! $response instanceof ResponseInterface) {
            throw new Exception\MissingResponseException(sprintf(
                "Last middleware executed did not return a response.\nMethod: %s\nPath: %s\n.Handler: %s",
                $request->getMethod(),
                $request->getUri()->getPath(),
                get_class($middleware)
            ));
        }

        return $response;
    }

    /**
     * Toggle the "raise throwables" flag on.
     *
     * @deprecated Since 2.0.0; this functionality is now a no-op.
     * @return void
     */
    public function raiseThrowables()
Arguments
  1. ServerRequest {#6477}
    
  2. Next {#6437}
    
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
core
/
Service
/
Locale.php
use Interop\Http\ServerMiddleware\MiddlewareInterface;
use Psr\Http\Message\ServerRequestInterface;
use Zend\Diactoros\Response\RedirectResponse;

class Locale implements MiddlewareInterface
{
    protected static $locales = [];
    protected static $locale;
    protected static $default;

    public function process(ServerRequestInterface $request, DelegateInterface $delegate)
    {
        if (($locale = substr($request->getUri()->getPath(), 1, 2)) && in_array($locale, static::getLocales()) && in_array(substr($request->getUri()->getPath(), 3, 1), ['/', false, ''])) {
            static::setLocale($locale);
            $request = App::stripRouteFromPath($request, '/'.$locale);
        } elseif (($localePath = static::getLocalePath())) {// to prevent doubled-content for google
            return new RedirectResponse($localePath.$request->getUri()->getPath());
        }

        return $delegate->process($request);
    }

    /**
     * @param string $locale
     * @throws \Exception
     */
    public static function setLocales(array $locales)
    {
        self::$locales = $locales;
        self::$default = current($locales);
    }

    /**
     * @return array
     */
    public static function getLocales()
    {
        return self::$locales;
    }

Arguments
  1. ServerRequest {#6475}
    
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
vendor
/
zendframework
/
zend-stratigility
/
src
/
Next.php
        $normalizedRoute = (strlen($route) > 1) ? rtrim($route, '/') : $route;

        // Skip if layer path does not match current url
        if (substr(strtolower($path), 0, strlen($normalizedRoute)) !== strtolower($normalizedRoute)) {
            return $this->process($request);
        }

        // Skip if match is not at a border ('/', '.', or end)
        $border = $this->getBorder($path, $normalizedRoute);
        if ($border && '/' !== $border && '.' !== $border) {
            return $this->process($request);
        }

        // Trim off the part of the url that matches the layer route
        if (! empty($route) && $route !== '/') {
            $request = $this->stripRouteFromPath($request, $route);
        }

        $middleware = $layer->handler;
        $response = $middleware->process($request, $this);

        if (! $response instanceof ResponseInterface) {
            throw new Exception\MissingResponseException(sprintf(
                "Last middleware executed did not return a response.\nMethod: %s\nPath: %s\n.Handler: %s",
                $request->getMethod(),
                $request->getUri()->getPath(),
                get_class($middleware)
            ));
        }

        return $response;
    }

    /**
     * Toggle the "raise throwables" flag on.
     *
     * @deprecated Since 2.0.0; this functionality is now a no-op.
     * @return void
     */
    public function raiseThrowables()
Arguments
  1. ServerRequest {#6475}
    
  2. Next {#6437}
    
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
vendor
/
zendframework
/
zend-stratigility
/
src
/
Middleware
/
ErrorHandler.php
     * Adds an error handler that will convert PHP errors to ErrorException
     * instances.
     *
     * Internally, wraps the call to $next() in a try/catch block, catching
     * all PHP Throwables (PHP 7) and Exceptions (PHP 5.6 and earlier).
     *
     * When an exception is caught, an appropriate error response is created
     * and returned instead; otherwise, the response returned by $next is
     * used.
     *
     * @param ServerRequestInterface $request
     * @param DelegateInterface $delegate
     * @return ResponseInterface
     */
    public function process(ServerRequestInterface $request, DelegateInterface $delegate)
    {
        set_error_handler($this->createErrorHandler());

        try {
            $response = $delegate->process($request);

            if (! $response instanceof ResponseInterface) {
                throw new MissingResponseException('Application did not return a response');
            }
        } catch (Throwable $e) {
            $response = $this->handleThrowable($e, $request);
        } catch (Exception $e) {
            $response = $this->handleThrowable($e, $request);
        }

        restore_error_handler();

        return $response;
    }

    /**
     * Handles all throwables/exceptions, generating and returning a response.
     *
     * Passes the error, request, and response prototype to createErrorResponse(),
     * triggers all listeners with the same arguments (but using the response
Arguments
  1. ServerRequest {#6442}
    
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
vendor
/
zendframework
/
zend-expressive
/
src
/
Middleware
/
LazyLoadingMiddleware.php
    ) {
        $this->container = $container;
        $this->responsePrototype = $responsePrototype;
        $this->middlewareName = $middlewareName;
    }

    /**
     * @param ServerRequestInterface $request
     * @param DelegateInterface $delegate
     * @return ResponseInterface
     * @throws InvalidMiddlewareException for invalid middleware types pulled
     *     from the container.
     */
    public function process(ServerRequestInterface $request, DelegateInterface $delegate)
    {
        $middleware = $this->container->get($this->middlewareName);

        // http-interop middleware
        if ($middleware instanceof ServerMiddlewareInterface) {
            return $middleware->process($request, $delegate);
        }

        // Unknown - invalid!
        if (! is_callable($middleware)) {
            throw new InvalidMiddlewareException(sprintf(
                'Lazy-loaded middleware "%s" is neither invokable nor implements %s',
                $this->middlewareName,
                ServerMiddlewareInterface::class
            ));
        }

        // Callable http-interop middleware
        if ($this->isCallableInteropMiddleware($middleware)) {
            return $middleware($request, $delegate);
        }

        // Legacy double-pass signature
        return $middleware($request, $this->responsePrototype, function ($request, $response) use ($delegate) {
            return $delegate->process($request);
        });
Arguments
  1. ServerRequest {#6442}
    
  2. Next {#6437}
    
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
vendor
/
zendframework
/
zend-stratigility
/
src
/
Next.php
        $normalizedRoute = (strlen($route) > 1) ? rtrim($route, '/') : $route;

        // Skip if layer path does not match current url
        if (substr(strtolower($path), 0, strlen($normalizedRoute)) !== strtolower($normalizedRoute)) {
            return $this->process($request);
        }

        // Skip if match is not at a border ('/', '.', or end)
        $border = $this->getBorder($path, $normalizedRoute);
        if ($border && '/' !== $border && '.' !== $border) {
            return $this->process($request);
        }

        // Trim off the part of the url that matches the layer route
        if (! empty($route) && $route !== '/') {
            $request = $this->stripRouteFromPath($request, $route);
        }

        $middleware = $layer->handler;
        $response = $middleware->process($request, $this);

        if (! $response instanceof ResponseInterface) {
            throw new Exception\MissingResponseException(sprintf(
                "Last middleware executed did not return a response.\nMethod: %s\nPath: %s\n.Handler: %s",
                $request->getMethod(),
                $request->getUri()->getPath(),
                get_class($middleware)
            ));
        }

        return $response;
    }

    /**
     * Toggle the "raise throwables" flag on.
     *
     * @deprecated Since 2.0.0; this functionality is now a no-op.
     * @return void
     */
    public function raiseThrowables()
Arguments
  1. ServerRequest {#6442}
    
  2. Next {#6437}
    
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
vendor
/
zendframework
/
zend-stratigility
/
src
/
MiddlewarePipe.php
            $delegate = new Delegate\CallableDelegateDecorator($delegate, $response);
        }

        return $this->process($request, $delegate);
    }

    /**
     * http-interop invocation: single-pass with delegate.
     *
     * Executes the internal pipeline, passing $delegate as the "final
     * handler" in cases when the pipeline exhausts itself.
     *
     * @param Request $request
     * @param DelegateInterface $delegate
     * @return Response
     */
    public function process(Request $request, DelegateInterface $delegate)
    {
        $next = new Next($this->pipeline, $delegate);
        return $next->process($request);
    }

    /**
     * Attach middleware to the pipeline.
     *
     * Each middleware can be associated with a particular path; if that
     * path is matched when that middleware is invoked, it will be processed;
     * otherwise it is skipped.
     *
     * No path means it should be executed every request cycle.
     *
     * A handler CAN implement MiddlewareInterface, but MUST be callable.
     *
     * @see MiddlewareInterface
     * @see Next
     * @param string|callable|object $path Either a URI path prefix, or middleware.
     * @param null|callable|object $middleware Middleware
     * @return self
     */
    public function pipe($path, $middleware = null)
Arguments
  1. ServerRequest {#6442}
    
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
vendor
/
zendframework
/
zend-expressive
/
src
/
Application.php
     */
    public function run(ServerRequestInterface $request = null, ResponseInterface $response = null)
    {
        try {
            $request  = $request ?: ServerRequestFactory::fromGlobals();
        } catch (InvalidArgumentException $e) {
            // Unable to parse uploaded files
            $this->emitMarshalServerRequestException($e);
            return;
        } catch (UnexpectedValueException $e) {
            // Invalid request method
            $this->emitMarshalServerRequestException($e);
            return;
        }

        $response = $response ?: new Response();
        $request  = $request->withAttribute('originalResponse', $response);
        $delegate = $this->getDefaultDelegate();

        $response = $this->process($request, $delegate);

        $emitter = $this->getEmitter();
        $emitter->emit($response);
    }

    /**
     * Retrieve the IoC container.
     *
     * If no IoC container is registered, we raise an exception.
     *
     * @return ContainerInterface
     * @throws Exception\ContainerNotRegisteredException
     */
    public function getContainer()
    {
        if (null === $this->container) {
            throw new Exception\ContainerNotRegisteredException();
        }
        return $this->container;
    }
Arguments
  1. ServerRequest {#6442}
    
  2. NotFoundDelegate {#6455}
    
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
public
/
index.php
<?php date_default_timezone_set('Asia/Almaty');

use Core\Facade\App;

chdir(dirname(__DIR__));
require 'vendor/autoload.php';

/**
 * Self-called anonymous function that creates its own scope and keep the global namespace clean.
 */
call_user_func(function () {

    App::init(require 'config/config.php');
    App::initSession();
    App::initPipeline();

    App::getInstance()->run();
});
 
/
var
/
www
/
vhosts
/
kfagg.com
/
httpdocs
/
public
/
index.php
<?php date_default_timezone_set('Asia/Almaty');

use Core\Facade\App;

chdir(dirname(__DIR__));
require 'vendor/autoload.php';

/**
 * Self-called anonymous function that creates its own scope and keep the global namespace clean.
 */
call_user_func(function () {

    App::init(require 'config/config.php');
    App::initSession();
    App::initPipeline();

    App::getInstance()->run();
});
 

Environment & details:

Key Value
HTTP Method
"GET"
URI
"https://www.kfagg.com/ru/index.php/ru/meropriyatiya/polozheniya-sorevnovaniya"
Script
"/public/index.php"
Headers
array:7 [
  "accept" => array:1 [
    0 => "*/*"
  ]
  "connection" => array:1 [
    0 => "close"
  ]
  "host" => array:1 [
    0 => "www.kfagg.com"
  ]
  "referer" => array:1 [
    0 => "https://www.kfagg.com/index.php/ru/meropriyatiya/polozheniya-sorevnovaniya"
  ]
  "user-agent" => array:1 [
    0 => "claudebot"
  ]
  "x-real-ip" => array:1 [
    0 => "3.235.75.229"
  ]
  "x-accel-internal" => array:1 [
    0 => "/internal-nginx-static-location"
  ]
]
Cookies
[]
Attributes
array:1 [
  "originalResponse" => Response {#6440}
]
Query String Arguments
[]
Body Params
[]
empty
empty
empty
empty
Key Value
__ZF
array:2 [
  "_REQUEST_ACCESS_TIME" => 1711640023.6074
  "_VALID" => array:1 [
    "Zend\Session\Validator\Id" => "f1a4dcaf5a0644896081d0e9c6c6981c"
  ]
]
Key Value
PHPRC
"/var/www/vhosts/system/kfagg.com/etc/php.ini"
PATH
"/usr/local/bin:/usr/bin:/bin"
TEMP
"/tmp"
TMP
"/tmp"
TMPDIR
"/tmp"
PWD
"/"
HTTP_ACCEPT
"*/*"
HTTP_CONNECTION
"close"
CONTENT_LENGTH
"0"
HTTP_HOST
"www.kfagg.com"
HTTP_REFERER
"https://www.kfagg.com/index.php/ru/meropriyatiya/polozheniya-sorevnovaniya"
HTTP_USER_AGENT
"claudebot"
HTTP_X_REAL_IP
"3.235.75.229"
HTTP_X_ACCEL_INTERNAL
"/internal-nginx-static-location"
REDIRECT_REDIRECT_UNIQUE_ID
"ZgWN1zZNJdGzJi2N6RH4BgAAABA"
REDIRECT_REDIRECT_PASSENGER_COMPILE_NATIVE_SUPPORT_BINARY
"0"
REDIRECT_REDIRECT_PASSENGER_DOWNLOAD_NATIVE_SUPPORT_BINARY
"0"
REDIRECT_REDIRECT_HTTPS
"on"
REDIRECT_REDIRECT_STATUS
"200"
REDIRECT_UNIQUE_ID
"ZgWN1zZNJdGzJi2N6RH4BgAAABA"
REDIRECT_BASE
"/public/"
REDIRECT_PASSENGER_COMPILE_NATIVE_SUPPORT_BINARY
"0"
REDIRECT_PASSENGER_DOWNLOAD_NATIVE_SUPPORT_BINARY
"0"
REDIRECT_HTTPS
"on"
REDIRECT_STATUS
"200"
UNIQUE_ID
"ZgWN1zZNJdGzJi2N6RH4BgAAABA"
PASSENGER_COMPILE_NATIVE_SUPPORT_BINARY
"0"
PASSENGER_DOWNLOAD_NATIVE_SUPPORT_BINARY
"0"
HTTPS
"on"
SERVER_SIGNATURE
""
SERVER_SOFTWARE
"Apache"
SERVER_NAME
"www.kfagg.com"
SERVER_ADDR
"185.98.5.170"
SERVER_PORT
"443"
REMOTE_ADDR
"3.235.75.229"
DOCUMENT_ROOT
"/var/www/vhosts/kfagg.com/httpdocs"
REQUEST_SCHEME
"https"
CONTEXT_PREFIX
""
CONTEXT_DOCUMENT_ROOT
"/var/www/vhosts/kfagg.com/httpdocs"
SERVER_ADMIN
"root@localhost"
SCRIPT_FILENAME
"/var/www/vhosts/kfagg.com/httpdocs/public/index.php"
REMOTE_PORT
"33812"
REDIRECT_URL
"/public/ru/index.php/ru/meropriyatiya/polozheniya-sorevnovaniya"
SERVER_PROTOCOL
"HTTP/1.0"
REQUEST_METHOD
"GET"
QUERY_STRING
""
REQUEST_URI
"/ru/index.php/ru/meropriyatiya/polozheniya-sorevnovaniya"
SCRIPT_NAME
"/public/index.php"
PHP_SELF
"/public/index.php"
REQUEST_TIME_FLOAT
1711640023.5972
REQUEST_TIME
1711640023
empty
0. Whoops\Handler\PrettyPageHandler