Whoops \ Exception \ ErrorException (E_DEPRECATED)
Optional parameter $method declared before required parameter $action is implicitly treated as a required parameter Whoops\Exception\ErrorException thrown with message "Optional parameter $method declared before required parameter $action is implicitly treated as a required parameter" Stacktrace: #8 Whoops\Exception\ErrorException in /home/sarahgar/site/aneat/kirby/src/Http/Route.php:96 #7 Whoops\Run:handleError in /home/sarahgar/site/aneat/kirby/vendor/composer/ClassLoader.php:444 #6 include in /home/sarahgar/site/aneat/kirby/vendor/composer/ClassLoader.php:444 #5 Composer\Autoload\includeFile in /home/sarahgar/site/aneat/kirby/vendor/composer/ClassLoader.php:322 #4 Composer\Autoload\ClassLoader:loadClass in /home/sarahgar/site/aneat/kirby/src/Http/Router.php:71 #3 Kirby\Http\Router:__construct in /home/sarahgar/site/aneat/kirby/src/Cms/App.php:1033 #2 Kirby\Cms\App:router in /home/sarahgar/site/aneat/kirby/src/Cms/App.php:278 #1 Kirby\Cms\App:call in /home/sarahgar/site/aneat/kirby/src/Cms/App.php:880 #0 Kirby\Cms\App:render in /home/sarahgar/site/aneat/index.php:5
Stack frames (9)
8
Whoops
\
Exception
\
ErrorException
/
src
/
Http
/
Route.php
96
7
Whoops
\
Run
handleError
/
vendor
/
composer
/
ClassLoader.php
444
6
include
/
vendor
/
composer
/
ClassLoader.php
444
5
Composer
\
Autoload
\
includeFile
/
vendor
/
composer
/
ClassLoader.php
322
4
Composer
\
Autoload
\
ClassLoader
loadClass
/
src
/
Http
/
Router.php
71
3
Kirby
\
Http
\
Router
__construct
/
src
/
Cms
/
App.php
1033
2
Kirby
\
Cms
\
App
router
/
src
/
Cms
/
App.php
278
1
Kirby
\
Cms
\
App
call
/
src
/
Cms
/
App.php
880
0
Kirby
\
Cms
\
App
render
/
home
/
sarahgar
/
site
/
aneat
/
index.php
5
/
home
/
sarahgar
/
site
/
aneat
/
kirby
/
src
/
Http
/
Route.php
     *
     * @param string $key
     * @param array $arguments
     * @return mixed
     */
    public function __call(string $key, array $arguments = null)
    {
        return $this->attributes[$key] ?? null;
    }
 
    /**
     * Creates a new Route object for the given
     * pattern(s), method(s) and the callback action
     *
     * @param string|array $pattern
     * @param string|array $method
     * @param Closure      $action
     * @param array $attributes
     */
    public function __construct($pattern, $method = 'GET', Closure $action, array $attributes = [])
    {
        $this->action     = $action;
        $this->attributes = $attributes;
        $this->method     = $method;
        $this->pattern    = $this->regex(ltrim($pattern, '/'));
    }
 
    /**
     * Getter for the action callback
     *
     * @return Closure
     */
    public function action()
    {
        return $this->action;
    }
 
    /**
     * Returns all parsed arguments
     *
/
home
/
sarahgar
/
site
/
aneat
/
kirby
/
vendor
/
composer
/
ClassLoader.php
            }
        }
 
        // PSR-0 include paths.
        if ($this->useIncludePath && $file = stream_resolve_include_path($logicalPathPsr0)) {
            return $file;
        }
 
        return false;
    }
}
 
/**
 * Scope isolated include.
 *
 * Prevents access to $this/self from included files.
 */
function includeFile($file)
{
    include $file;
}
 
/
home
/
sarahgar
/
site
/
aneat
/
kirby
/
vendor
/
composer
/
ClassLoader.php
            }
        }
 
        // PSR-0 include paths.
        if ($this->useIncludePath && $file = stream_resolve_include_path($logicalPathPsr0)) {
            return $file;
        }
 
        return false;
    }
}
 
/**
 * Scope isolated include.
 *
 * Prevents access to $this/self from included files.
 */
function includeFile($file)
{
    include $file;
}
 
/
home
/
sarahgar
/
site
/
aneat
/
kirby
/
vendor
/
composer
/
ClassLoader.php
    }
 
    /**
     * Unregisters this instance as an autoloader.
     */
    public function unregister()
    {
        spl_autoload_unregister(array($this, 'loadClass'));
    }
 
    /**
     * Loads the given class or interface.
     *
     * @param  string    $class The name of the class
     * @return bool|null True if loaded, null otherwise
     */
    public function loadClass($class)
    {
        if ($file = $this->findFile($class)) {
            includeFile($file);
 
            return true;
        }
    }
 
    /**
     * Finds the path to the file where the class is defined.
     *
     * @param string $class The name of the class
     *
     * @return string|false The path if found, false otherwise
     */
    public function findFile($class)
    {
        // class map lookup
        if (isset($this->classMap[$class])) {
            return $this->classMap[$class];
        }
        if ($this->classMapAuthoritative || isset($this->missingClasses[$class])) {
            return false;
/
home
/
sarahgar
/
site
/
aneat
/
kirby
/
src
/
Http
/
Router.php
     *
     * @param array $routes
     */
    public function __construct(array $routes = [])
    {
        foreach ($routes as $props) {
            if (isset($props['pattern'], $props['action']) === false) {
                throw new InvalidArgumentException('Invalid route parameters');
            }
 
            $methods  = array_map('trim', explode('|', strtoupper($props['method'] ?? 'GET')));
            $patterns = is_array($props['pattern']) === false ? [$props['pattern']] : $props['pattern'];
 
            if ($methods === ['ALL']) {
                $methods = array_keys($this->routes);
            }
 
            foreach ($methods as $method) {
                foreach ($patterns as $pattern) {
                    $this->routes[$method][] = new Route($pattern, $method, $props['action'], $props);
                }
            }
        }
    }
 
    /**
     * Calls the Router by path and method.
     * This will try to find a Route object
     * and then call the Route action with
     * the appropriate arguments and a Result
     * object.
     *
     * @param  string $path
     * @param  string $method
     * @param  Closure|null $callback
     * @return mixed
     */
    public function call(string $path = null, string $method = 'GET', Closure $callback = null)
    {
        $path   = $path ?? '';
/
home
/
sarahgar
/
site
/
aneat
/
kirby
/
src
/
Cms
/
App.php
 
    /**
     * Returns the Router singleton
     *
     * @internal
     * @return \Kirby\Http\Router
     */
    public function router()
    {
        $routes = $this->routes();
 
        if ($this->multilang() === true) {
            foreach ($routes as $index => $route) {
                if (empty($route['language']) === false) {
                    unset($routes[$index]);
                }
            }
        }
 
        return $this->router = $this->router ?? new Router($routes);
    }
 
    /**
     * Returns all defined routes
     *
     * @internal
     * @return array
     */
    public function routes(): array
    {
        if (is_array($this->routes) === true) {
            return $this->routes;
        }
 
        $registry = $this->extensions('routes');
        $system   = (include static::$root . '/config/routes.php')($this);
        $routes   = array_merge($system['before'], $registry, $system['after']);
 
        return $this->routes = $routes;
    }
/
home
/
sarahgar
/
site
/
aneat
/
kirby
/
src
/
Cms
/
App.php
        foreach (glob($this->root('blueprints') . '/' . $type . '/*.yml') as $blueprint) {
            $name = F::name($blueprint);
            $blueprints[$name] = $name;
        }
 
        ksort($blueprints);
 
        return array_values($blueprints);
    }
 
    /**
     * Calls any Kirby route
     *
     * @param string $path
     * @param string $method
     * @return mixed
     */
    public function call(string $path = null, string $method = null)
    {
        $router = $this->router();
 
        $router::$beforeEach = function ($route, $path, $method) {
            $this->trigger('route:before', $route, $path, $method);
        };
 
        $router::$afterEach = function ($route, $path, $method, $result) {
            return $this->apply('route:after', $route, $path, $method, $result);
        };
 
        return $router->call($path ?? $this->path(), $method ?? $this->request()->method());
    }
 
    /**
     * Returns a specific user-defined collection
     * by name. All relevant dependencies are
     * automatically injected
     *
     * @param string $name
     * @return \Kirby\Cms\Collection|null
     */
/
home
/
sarahgar
/
site
/
aneat
/
kirby
/
src
/
Cms
/
App.php
        $scriptName  = $_SERVER['SCRIPT_NAME'];
        $scriptFile  = basename($scriptName);
        $scriptDir   = dirname($scriptName);
        $scriptPath  = $scriptFile === 'index.php' ? $scriptDir : $scriptName;
        $requestPath = preg_replace('!^' . preg_quote($scriptPath) . '!', '', $requestUri);
 
        return $this->setPath($requestPath)->path;
    }
 
    /**
     * Returns the Response object for the
     * current request
     *
     * @param string|null $path
     * @param string|null $method
     * @return \Kirby\Http\Response
     */
    public function render(string $path = null, string $method = null)
    {
        return $this->io($this->call($path, $method));
    }
 
    /**
     * Returns the Request singleton
     *
     * @return \Kirby\Http\Request
     */
    public function request()
    {
        return $this->request = $this->request ?? new Request();
    }
 
    /**
     * Path resolver for the router
     *
     * @internal
     * @param string $path
     * @param string|null $language
     * @return mixed
     */
/
home
/
sarahgar
/
site
/
aneat
/
index.php
<?php
 
require __DIR__ . '/kirby/bootstrap.php';
 
echo (new Kirby)->render();
 

Environment & details:

empty
empty
empty
empty
empty
Key Value
PATH /usr/local/bin:/usr/bin:/bin
REDIRECT_STATUS 200
UNIQUE_ID ZgX6-Qg99KSEtQ67dk4T4AAAAFk
GEOIP_COUNTRY_CODE US
GEOIP_COUNTRY_NAME United States
GEOIP_REGION VA
GEOIP_CITY Ashburn
GEOIP_DMA_CODE 511
GEOIP_AREA_CODE 703
GEOIP_LATITUDE 39.046902
GEOIP_LONGITUDE -77.490303
SCRIPT_URL /aneat/ecoles/ecole-darts-plastiques-divry-sur-seine
SCRIPT_URI http://site.sarahgarcin.com/aneat/ecoles/ecole-darts-plastiques-divry-sur-seine
HTTP_AUTHORIZATION
CFG_CLUSTER cluster010
ENVIRONMENT production
APP_ENGINE_VERSION 8.2
APP_ENGINE phpcgi
HTTP_HOST site.sarahgarcin.com
HTTP_X_PREDICTOR 1
HTTP_X_FORWARDED_FOR 3.239.119.159
HTTP_X_FORWARDED_PROTO http
HTTP_X_OVHREQUEST_ID e73504788d0ed7b00c8364639b133253
HTTP_ACCEPT */*
HTTP_USER_AGENT claudebot
HTTP_X_FORWARDED_PORT 80
HTTP_X_REMOTE_PORT 58338
HTTP_X_REMOTE_IP 3.239.119.159
HTTP_X_REMOTE_PROTO http
HTTP_FORWARDED for=3.239.119.159; proto=http; host=site.sarahgarcin.com
HTTP_REMOTE_PORT 58338
HTTP_X_IPLB_UNIQUE_ID 03EF779F:E3E2_D5BA2113:0050_6605FAFD_2B5B4:05E8
HTTP_REMOTE_IP 3.239.119.159
SERVER_SIGNATURE
SERVER_SOFTWARE Apache
SERVER_NAME site.sarahgarcin.com
SERVER_ADDR 10.10.20.116
SERVER_PORT 80
REMOTE_ADDR 3.239.119.159
DOCUMENT_ROOT /home/sarahgar/site
SERVER_ADMIN postmaster@site.sarahgarcin.com
SCRIPT_FILENAME /home/sarahgar/site/aneat/index.php
REMOTE_PORT 28482
REDIRECT_URL /aneat/ecoles/ecole-darts-plastiques-divry-sur-seine
GATEWAY_INTERFACE CGI/1.1
SERVER_PROTOCOL HTTP/1.1
REQUEST_METHOD GET
QUERY_STRING
REQUEST_URI /aneat/ecoles/ecole-darts-plastiques-divry-sur-seine
SCRIPT_NAME /aneat/index.php
HOME /homez.638/sarahgar
PWD /homez.638/sarahgar/site/aneat
UID sarahgar
PHP_SELF /aneat/index.php
REQUEST_TIME_FLOAT 1711667965.9654
REQUEST_TIME 1711667965
argv Array ( [0] => index.php )
argc 1
Key Value
PATH /usr/local/bin:/usr/bin:/bin
REDIRECT_STATUS 200
UNIQUE_ID ZgX6-Qg99KSEtQ67dk4T4AAAAFk
GEOIP_COUNTRY_CODE US
GEOIP_COUNTRY_NAME United States
GEOIP_REGION VA
GEOIP_CITY Ashburn
GEOIP_DMA_CODE 511
GEOIP_AREA_CODE 703
GEOIP_LATITUDE 39.046902
GEOIP_LONGITUDE -77.490303
SCRIPT_URL /aneat/ecoles/ecole-darts-plastiques-divry-sur-seine
SCRIPT_URI http://site.sarahgarcin.com/aneat/ecoles/ecole-darts-plastiques-divry-sur-seine
HTTP_AUTHORIZATION
CFG_CLUSTER cluster010
ENVIRONMENT production
APP_ENGINE_VERSION 8.2
APP_ENGINE phpcgi
HTTP_HOST site.sarahgarcin.com
HTTP_X_PREDICTOR 1
HTTP_X_FORWARDED_FOR 3.239.119.159
HTTP_X_FORWARDED_PROTO http
HTTP_X_OVHREQUEST_ID e73504788d0ed7b00c8364639b133253
HTTP_ACCEPT */*
HTTP_USER_AGENT claudebot
HTTP_X_FORWARDED_PORT 80
HTTP_X_REMOTE_PORT 58338
HTTP_X_REMOTE_IP 3.239.119.159
HTTP_X_REMOTE_PROTO http
HTTP_FORWARDED for=3.239.119.159; proto=http; host=site.sarahgarcin.com
HTTP_REMOTE_PORT 58338
HTTP_X_IPLB_UNIQUE_ID 03EF779F:E3E2_D5BA2113:0050_6605FAFD_2B5B4:05E8
HTTP_REMOTE_IP 3.239.119.159
SERVER_SIGNATURE
SERVER_SOFTWARE Apache
SERVER_NAME site.sarahgarcin.com
SERVER_ADDR 10.10.20.116
SERVER_PORT 80
REMOTE_ADDR 3.239.119.159
DOCUMENT_ROOT /home/sarahgar/site
SERVER_ADMIN postmaster@site.sarahgarcin.com
SCRIPT_FILENAME /home/sarahgar/site/aneat/index.php
REMOTE_PORT 28482
REDIRECT_URL /aneat/ecoles/ecole-darts-plastiques-divry-sur-seine
GATEWAY_INTERFACE CGI/1.1
SERVER_PROTOCOL HTTP/1.1
REQUEST_METHOD GET
QUERY_STRING
REQUEST_URI /aneat/ecoles/ecole-darts-plastiques-divry-sur-seine
SCRIPT_NAME /aneat/index.php
HOME /homez.638/sarahgar
PWD /homez.638/sarahgar/site/aneat
UID sarahgar
0. Whoops\Handler\PrettyPageHandler