Whoops \ Exception \ ErrorException (E_WARNING)
Trying to access array offset on value of type null Whoops\Exception\ErrorException thrown with message "Trying to access array offset on value of type null" Stacktrace: #43 Whoops\Exception\ErrorException in /var/www/html/conch.fyi/system/src/Grav/Common/Page/Pages.php:1752 #42 Grav\Common\Debugger:deprecatedErrorHandler in /var/www/html/conch.fyi/system/src/Grav/Common/Page/Pages.php:1752 #41 Grav\Common\Page\Pages:buildSort in /var/www/html/conch.fyi/system/src/Grav/Common/Page/Pages.php:648 #40 Grav\Common\Page\Pages:sort in /var/www/html/conch.fyi/system/src/Grav/Common/Page/Pages.php:1629 #39 Grav\Common\Page\Pages:recurse in /var/www/html/conch.fyi/system/src/Grav/Common/Page/Pages.php:1590 #38 Grav\Common\Page\Pages:recurse in /var/www/html/conch.fyi/system/src/Grav/Common/Page/Pages.php:1590 #37 Grav\Common\Page\Pages:recurse in /var/www/html/conch.fyi/system/src/Grav/Common/Page/Pages.php:1449 #36 Grav\Common\Page\Pages:resetPages in /var/www/html/conch.fyi/system/src/Grav/Common/Page/Pages.php:1438 #35 Grav\Common\Page\Pages:buildRegularPages in /var/www/html/conch.fyi/system/src/Grav/Common/Page/Pages.php:1273 #34 Grav\Common\Page\Pages:buildPages in /var/www/html/conch.fyi/system/src/Grav/Common/Page/Pages.php:268 #33 Grav\Common\Page\Pages:init in /var/www/html/conch.fyi/system/src/Grav/Common/Processors/PagesProcessor.php:30 #32 Grav\Common\Processors\PagesProcessor:process in /var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #31 Grav\Framework\RequestHandler\RequestHandler:handle in /var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #30 Grav\Framework\RequestHandler\RequestHandler:handle in /var/www/html/conch.fyi/system/src/Grav/Common/Processors/TwigProcessor.php:27 #29 Grav\Common\Processors\TwigProcessor:process in /var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #28 Grav\Framework\RequestHandler\RequestHandler:handle in /var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #27 Grav\Framework\RequestHandler\RequestHandler:handle in /var/www/html/conch.fyi/system/src/Grav/Common/Processors/AssetsProcessor.php:28 #26 Grav\Common\Processors\AssetsProcessor:process in /var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #25 Grav\Framework\RequestHandler\RequestHandler:handle in /var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #24 Grav\Framework\RequestHandler\RequestHandler:handle in /var/www/html/conch.fyi/system/src/Grav/Common/Processors/SchedulerProcessor.php:29 #23 Grav\Common\Processors\SchedulerProcessor:process in /var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #22 Grav\Framework\RequestHandler\RequestHandler:handle in /var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #21 Grav\Framework\RequestHandler\RequestHandler:handle in /var/www/html/conch.fyi/system/src/Grav/Common/Processors/BackupsProcessor.php:28 #20 Grav\Common\Processors\BackupsProcessor:process in /var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #19 Grav\Framework\RequestHandler\RequestHandler:handle in /var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #18 Grav\Framework\RequestHandler\RequestHandler:handle in /var/www/html/conch.fyi/system/src/Grav/Common/Processors/TasksProcessor.php:59 #17 Grav\Common\Processors\TasksProcessor:process in /var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #16 Grav\Framework\RequestHandler\RequestHandler:handle in /var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #15 Grav\Framework\RequestHandler\RequestHandler:handle in /var/www/html/conch.fyi/system/src/Grav/Common/Processors/RequestProcessor.php:52 #14 Grav\Common\Processors\RequestProcessor:process in /var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #13 Grav\Framework\RequestHandler\RequestHandler:handle in /var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #12 Grav\Framework\RequestHandler\RequestHandler:handle in /var/www/html/conch.fyi/system/src/Grav/Common/Processors/ThemesProcessor.php:27 #11 Grav\Common\Processors\ThemesProcessor:process in /var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #10 Grav\Framework\RequestHandler\RequestHandler:handle in /var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #9 Grav\Framework\RequestHandler\RequestHandler:handle in /var/www/html/conch.fyi/system/src/Grav/Common/Processors/PluginsProcessor.php:30 #8 Grav\Common\Processors\PluginsProcessor:process in /var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #7 Grav\Framework\RequestHandler\RequestHandler:handle in /var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #6 Grav\Framework\RequestHandler\RequestHandler:handle in /var/www/html/conch.fyi/system/src/Grav/Common/Processors/InitializeProcessor.php:66 #5 Grav\Common\Processors\InitializeProcessor:Grav\Common\Processors\{closure} in /var/www/html/conch.fyi/system/src/Grav/Common/Debugger.php:533 #4 Grav\Common\Debugger:profile in /var/www/html/conch.fyi/system/src/Grav/Common/Processors/InitializeProcessor.php:67 #3 Grav\Common\Processors\InitializeProcessor:process in /var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #2 Grav\Framework\RequestHandler\RequestHandler:handle in /var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #1 Grav\Framework\RequestHandler\RequestHandler:handle in /var/www/html/conch.fyi/system/src/Grav/Common/Grav.php:224 #0 Grav\Common\Grav:process in /var/www/html/conch.fyi/index.php:56
Stack frames (44)
43
Whoops\Exception\ErrorException
/system/src/Grav/Common/Page/Pages.php1752
42
Grav\Common\Debugger deprecatedErrorHandler
/system/src/Grav/Common/Page/Pages.php1752
41
Grav\Common\Page\Pages buildSort
/system/src/Grav/Common/Page/Pages.php648
40
Grav\Common\Page\Pages sort
/system/src/Grav/Common/Page/Pages.php1629
39
Grav\Common\Page\Pages recurse
/system/src/Grav/Common/Page/Pages.php1590
38
Grav\Common\Page\Pages recurse
/system/src/Grav/Common/Page/Pages.php1590
37
Grav\Common\Page\Pages recurse
/system/src/Grav/Common/Page/Pages.php1449
36
Grav\Common\Page\Pages resetPages
/system/src/Grav/Common/Page/Pages.php1438
35
Grav\Common\Page\Pages buildRegularPages
/system/src/Grav/Common/Page/Pages.php1273
34
Grav\Common\Page\Pages buildPages
/system/src/Grav/Common/Page/Pages.php268
33
Grav\Common\Page\Pages init
/system/src/Grav/Common/Processors/PagesProcessor.php30
32
Grav\Common\Processors\PagesProcessor process
/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php45
31
Grav\Framework\RequestHandler\RequestHandler handle
/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php57
30
Grav\Framework\RequestHandler\RequestHandler handle
/system/src/Grav/Common/Processors/TwigProcessor.php27
29
Grav\Common\Processors\TwigProcessor process
/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php45
28
Grav\Framework\RequestHandler\RequestHandler handle
/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php57
27
Grav\Framework\RequestHandler\RequestHandler handle
/system/src/Grav/Common/Processors/AssetsProcessor.php28
26
Grav\Common\Processors\AssetsProcessor process
/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php45
25
Grav\Framework\RequestHandler\RequestHandler handle
/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php57
24
Grav\Framework\RequestHandler\RequestHandler handle
/system/src/Grav/Common/Processors/SchedulerProcessor.php29
23
Grav\Common\Processors\SchedulerProcessor process
/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php45
22
Grav\Framework\RequestHandler\RequestHandler handle
/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php57
21
Grav\Framework\RequestHandler\RequestHandler handle
/system/src/Grav/Common/Processors/BackupsProcessor.php28
20
Grav\Common\Processors\BackupsProcessor process
/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php45
19
Grav\Framework\RequestHandler\RequestHandler handle
/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php57
18
Grav\Framework\RequestHandler\RequestHandler handle
/system/src/Grav/Common/Processors/TasksProcessor.php59
17
Grav\Common\Processors\TasksProcessor process
/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php45
16
Grav\Framework\RequestHandler\RequestHandler handle
/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php57
15
Grav\Framework\RequestHandler\RequestHandler handle
/system/src/Grav/Common/Processors/RequestProcessor.php52
14
Grav\Common\Processors\RequestProcessor process
/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php45
13
Grav\Framework\RequestHandler\RequestHandler handle
/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php57
12
Grav\Framework\RequestHandler\RequestHandler handle
/system/src/Grav/Common/Processors/ThemesProcessor.php27
11
Grav\Common\Processors\ThemesProcessor process
/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php45
10
Grav\Framework\RequestHandler\RequestHandler handle
/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php57
9
Grav\Framework\RequestHandler\RequestHandler handle
/system/src/Grav/Common/Processors/PluginsProcessor.php30
8
Grav\Common\Processors\PluginsProcessor process
/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php45
7
Grav\Framework\RequestHandler\RequestHandler handle
/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php57
6
Grav\Framework\RequestHandler\RequestHandler handle
/system/src/Grav/Common/Processors/InitializeProcessor.php66
5
Grav\Common\Processors\InitializeProcessor Grav\Common\Processors\{closure}
/system/src/Grav/Common/Debugger.php533
4
Grav\Common\Debugger profile
/system/src/Grav/Common/Processors/InitializeProcessor.php67
3
Grav\Common\Processors\InitializeProcessor process
/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php45
2
Grav\Framework\RequestHandler\RequestHandler handle
/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php57
1
Grav\Framework\RequestHandler\RequestHandler handle
/system/src/Grav/Common/Grav.php224
0
Grav\Common\Grav process
/index.php56
/var/www/html/conch.fyi/system/src/Grav/Common/Page/Pages.php
                    $sort_flags = SORT_REGULAR;
                    break;
                case 'publish_date':
                    $list[$key] = $child->publishDate();
                    $sort_flags = SORT_REGULAR;
                    break;
                case 'unpublish_date':
                    $list[$key] = $child->unpublishDate();
                    $sort_flags = SORT_REGULAR;
                    break;
                case 'slug':
                    $list[$key] = $child->slug();
                    break;
                case 'basename':
                    $list[$key] = basename($key);
                    break;
                case 'folder':
                    $list[$key] = $child->folder();
                    break;
                case (is_string($header_query[0])):
                    $child_header = $child->header();
                    if (!$child_header instanceof Header) {
                        $child_header = new Header((array)$child_header);
                    }
                    $header_value = $child_header->get($header_query[0]);
                    if (is_array($header_value)) {
                        $list[$key] = implode(',',$header_value);
                    } elseif ($header_value) {
                        $list[$key] = $header_value;
                    } else {
                        $list[$key] = $header_default ?: $key;
                    }
                    $sort_flags = $sort_flags ?: SORT_REGULAR;
                    break;
                case 'manual':
                case 'default':
                default:
                    $list[$key] = $key;
                    $sort_flags = $sort_flags ?: SORT_REGULAR;
            }
Arguments
  1. "Trying to access array offset on value of type null"
    
/var/www/html/conch.fyi/system/src/Grav/Common/Page/Pages.php
                    $sort_flags = SORT_REGULAR;
                    break;
                case 'publish_date':
                    $list[$key] = $child->publishDate();
                    $sort_flags = SORT_REGULAR;
                    break;
                case 'unpublish_date':
                    $list[$key] = $child->unpublishDate();
                    $sort_flags = SORT_REGULAR;
                    break;
                case 'slug':
                    $list[$key] = $child->slug();
                    break;
                case 'basename':
                    $list[$key] = basename($key);
                    break;
                case 'folder':
                    $list[$key] = $child->folder();
                    break;
                case (is_string($header_query[0])):
                    $child_header = $child->header();
                    if (!$child_header instanceof Header) {
                        $child_header = new Header((array)$child_header);
                    }
                    $header_value = $child_header->get($header_query[0]);
                    if (is_array($header_value)) {
                        $list[$key] = implode(',',$header_value);
                    } elseif ($header_value) {
                        $list[$key] = $header_value;
                    } else {
                        $list[$key] = $header_default ?: $key;
                    }
                    $sort_flags = $sort_flags ?: SORT_REGULAR;
                    break;
                case 'manual':
                case 'default':
                default:
                    $list[$key] = $key;
                    $sort_flags = $sort_flags ?: SORT_REGULAR;
            }
/var/www/html/conch.fyi/system/src/Grav/Common/Page/Pages.php
     * @return array
     */
    public function sort(PageInterface $page, $order_by = null, $order_dir = null, $sort_flags = null)
    {
        if ($order_by === null) {
            $order_by = $page->orderBy();
        }
        if ($order_dir === null) {
            $order_dir = $page->orderDir();
        }
 
        $path = $page->path();
        $children = $this->children[$path] ?? [];
 
        if (!$children) {
            return $children;
        }
 
        if (!isset($this->sort[$path][$order_by])) {
            $this->buildSort($path, $children, $order_by, $page->orderManual(), $sort_flags);
        }
 
        $sort = $this->sort[$path][$order_by];
 
        if ($order_dir !== 'asc') {
            $sort = array_reverse($sort);
        }
 
        return $sort;
    }
 
    /**
     * @param Collection $collection
     * @param string|int $orderBy
     * @param string     $orderDir
     * @param array|null $orderManual
     * @param int|null   $sort_flags
     *
     * @return array
     * @internal
/var/www/html/conch.fyi/system/src/Grav/Common/Page/Pages.php
            }
        }
 
        // Override the modified time if modular
        if ($page->template() === 'modular') {
            foreach ($page->collection() as $child) {
                $modified = $child->modified();
 
                if ($modified > $last_modified) {
                    $last_modified = $modified;
                }
            }
        }
 
        // Override the modified and ID so that it takes the latest change into account
        $page->modified($last_modified);
        $page->id($last_modified . md5($page->filePath()));
 
        // Sort based on Defaults or Page Overridden sort order
        $this->children[$page->path()] = $this->sort($page);
 
        return $page;
    }
 
    /**
     * @internal
     */
    protected function buildRoutes()
    {
        /** @var Taxonomy $taxonomy */
        $taxonomy = $this->grav['taxonomy'];
 
        // Get the home route
        $home = self::resetHomeRoute();
        // Build routes and taxonomy map.
        /** @var PageInterface $page */
        foreach ($this->instances as $path => $page) {
            if (\is_string($page)) {
                $page = $this->get($path);
            }
/var/www/html/conch.fyi/system/src/Grav/Common/Page/Pages.php
                $this->grav->fireEvent('onPageProcessed', new Event(['page' => $page]));
            }
        }
 
        // Now handle all the folders under the page.
        /** @var \FilesystemIterator $file */
        foreach ($folders as $file) {
            $filename = $file->getFilename();
 
            // if folder contains separator, continue
            if (Utils::contains($file->getFilename(), $config->get('system.param_sep', ':'))) {
                continue;
            }
 
            if (!$page->path()) {
                $page->path($file->getPath());
            }
 
            $path = $directory . DS . $filename;
            $child = $this->recurse($path, $page);
 
            if (Utils::startsWith($filename, '_')) {
                $child->routable(false);
            }
 
            $this->children[$page->path()][$child->path()] = ['slug' => $child->slug()];
 
            if ($config->get('system.pages.events.page')) {
                $this->grav->fireEvent('onFolderProcessed', new Event(['page' => $page]));
            }
        }
 
        if (!$content_exists) {
            // Set routability to false if no page found
            $page->routable(false);
 
            // Hide empty folders if option set
            if ($config->get('system.pages.hide_empty_folders')) {
                $page->visible(false);
            }
/var/www/html/conch.fyi/system/src/Grav/Common/Page/Pages.php
                $this->grav->fireEvent('onPageProcessed', new Event(['page' => $page]));
            }
        }
 
        // Now handle all the folders under the page.
        /** @var \FilesystemIterator $file */
        foreach ($folders as $file) {
            $filename = $file->getFilename();
 
            // if folder contains separator, continue
            if (Utils::contains($file->getFilename(), $config->get('system.param_sep', ':'))) {
                continue;
            }
 
            if (!$page->path()) {
                $page->path($file->getPath());
            }
 
            $path = $directory . DS . $filename;
            $child = $this->recurse($path, $page);
 
            if (Utils::startsWith($filename, '_')) {
                $child->routable(false);
            }
 
            $this->children[$page->path()][$child->path()] = ['slug' => $child->slug()];
 
            if ($config->get('system.pages.events.page')) {
                $this->grav->fireEvent('onFolderProcessed', new Event(['page' => $page]));
            }
        }
 
        if (!$content_exists) {
            // Set routability to false if no page found
            $page->routable(false);
 
            // Hide empty folders if option set
            if ($config->get('system.pages.hide_empty_folders')) {
                $page->visible(false);
            }
/var/www/html/conch.fyi/system/src/Grav/Common/Page/Pages.php
                return;
            }
 
            $this->grav['debugger']->addMessage('Page cache missed, rebuilding pages..');
        } else {
            $this->grav['debugger']->addMessage('Page cache disabled, rebuilding pages..');
        }
 
        $this->resetPages($pages_dir);
    }
 
    /**
     * Accessible method to manually reset the pages cache
     *
     * @param string $pages_dir
     */
    public function resetPages($pages_dir)
    {
        $this->sort = [];
        $this->recurse($pages_dir);
        $this->buildRoutes();
 
        // cache if needed
        if ($this->grav['config']->get('system.cache.enabled')) {
            /** @var Cache $cache */
            $cache = $this->grav['cache'];
            /** @var Taxonomy $taxonomy */
            $taxonomy = $this->grav['taxonomy'];
 
            // save pages, routes, taxonomy, and sort to cache
            $cache->save($this->pages_cache_id, [$this->getVersion(), $this->instances, $this->routes, $this->children, $taxonomy->taxonomy(), $this->sort]);
        }
    }
 
    /**
     * Recursive function to load & build page relationships.
     *
     * @param string    $directory
     * @param PageInterface|null $parent
     *
/var/www/html/conch.fyi/system/src/Grav/Common/Page/Pages.php
 
            /** @var Cache $cache */
            $cache = $this->grav['cache'];
            $cached = $cache->fetch($this->pages_cache_id);
            if ($cached && $this->getVersion() === $cached[0]) {
                [, $this->instances, $this->routes, $this->children, $taxonomy_map, $this->sort] = $cached;
 
                /** @var Taxonomy $taxonomy */
                $taxonomy = $this->grav['taxonomy'];
                $taxonomy->taxonomy($taxonomy_map);
 
                return;
            }
 
            $this->grav['debugger']->addMessage('Page cache missed, rebuilding pages..');
        } else {
            $this->grav['debugger']->addMessage('Page cache disabled, rebuilding pages..');
        }
 
        $this->resetPages($pages_dir);
    }
 
    /**
     * Accessible method to manually reset the pages cache
     *
     * @param string $pages_dir
     */
    public function resetPages($pages_dir)
    {
        $this->sort = [];
        $this->recurse($pages_dir);
        $this->buildRoutes();
 
        // cache if needed
        if ($this->grav['config']->get('system.cache.enabled')) {
            /** @var Cache $cache */
            $cache = $this->grav['cache'];
            /** @var Taxonomy $taxonomy */
            $taxonomy = $this->grav['taxonomy'];
 
/var/www/html/conch.fyi/system/src/Grav/Common/Page/Pages.php
     */
    protected function buildPages(): void
    {
        if ($this->enable_pages === false) {
            $page = $this->buildRootPage();
            $this->instances[$page->path()] = $page;
 
            return;
        }
 
        /** @var Debugger $debugger */
        $debugger = $this->grav['debugger'];
        $debugger->startTimer('build-pages', 'Init frontend routes');
 
        $directory = $this->flex ? $this->flex->getDirectory('grav-pages') : null;
 
        if ($directory) {
            $this->buildFlexPages($directory);
        } else {
            $this->buildRegularPages();
        }
        $debugger->stopTimer('build-pages');
    }
 
    protected function buildFlexPages(FlexDirectory $directory)
    {
        /** @var Config $config */
        $config = $this->grav['config'];
 
        // TODO: right now we are just emulating normal pages, it is inefficient and bad... but works!
        $collection = $directory->getIndex();
        $cache = $directory->getCache('index');
 
        /** @var Language $language */
        $language = $this->grav['language'];
 
        $this->pages_cache_id = 'pages-' . md5($collection->getCacheChecksum() . $language->getActive() . $config->checksum());
 
        $cached = $cache->get($this->pages_cache_id);
 
/var/www/html/conch.fyi/system/src/Grav/Common/Page/Pages.php
            return;
        }
 
        $config = $this->grav['config'];
        $this->ignore_files = $config->get('system.pages.ignore_files');
        $this->ignore_folders = $config->get('system.pages.ignore_folders');
        $this->ignore_hidden = $config->get('system.pages.ignore_hidden');
        if ($config->get('system.pages.type') === 'flex') {
            $this->flex = $this->grav['flex_objects'] ?? null;
        }
 
        $this->instances = [];
        $this->children = [];
        $this->routes = [];
 
        if (!$this->check_method) {
            $this->setCheckMethod($config->get('system.cache.check.method', 'file'));
        }
 
        $this->buildPages();
    }
 
    /**
     * Get or set last modification time.
     *
     * @param int $modified
     *
     * @return int|null
     */
    public function lastModified($modified = null)
    {
        if ($modified && $modified > $this->last_modified) {
            $this->last_modified = $modified;
        }
 
        return $this->last_modified;
    }
 
    /**
     * Returns a list of all pages.
/var/www/html/conch.fyi/system/src/Grav/Common/Processors/PagesProcessor.php
 
use Grav\Common\Page\Interfaces\PageInterface;
use RocketTheme\Toolbox\Event\Event;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
 
class PagesProcessor extends ProcessorBase
{
    public $id = 'pages';
    public $title = 'Pages';
 
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
    {
        $this->startTimer();
 
        // Dump Cache state
        $this->container['debugger']->addMessage($this->container['cache']->getCacheStatus());
 
        $this->container['pages']->init();
        $this->container->fireEvent('onPagesInitialized', new Event(['pages' => $this->container['pages']]));
        $this->container->fireEvent('onPageInitialized', new Event(['page' => $this->container['page']]));
 
        /** @var PageInterface $page */
        $page = $this->container['page'];
 
        if (!$page->routable()) {
            // If no page found, fire event
            $event = new Event(['page' => $page]);
            $event->page = null;
            $event = $this->container->fireEvent('onPageNotFound', $event);
 
            if (isset($event->page)) {
                unset ($this->container['page']);
                $this->container['page'] = $page = $event->page;
            } else {
                throw new \RuntimeException('Page Not Found', 404);
            }
 
            $this->addMessage("Routed to page {$page->rawRoute()} (type: {$page->template()}) [Not Found fallback]");
/var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
/var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
/var/www/html/conch.fyi/system/src/Grav/Common/Processors/TwigProcessor.php
 */
 
namespace Grav\Common\Processors;
 
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
 
class TwigProcessor extends ProcessorBase
{
    public $id = 'twig';
    public $title = 'Twig';
 
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
    {
        $this->startTimer();
        $this->container['twig']->init();
        $this->stopTimer();
 
        return $handler->handle($request);
    }
}
 
/var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
/var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
/var/www/html/conch.fyi/system/src/Grav/Common/Processors/AssetsProcessor.php
 
namespace Grav\Common\Processors;
 
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
 
class AssetsProcessor extends ProcessorBase
{
    public $id = '_assets';
    public $title = 'Assets';
 
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
    {
        $this->startTimer();
        $this->container['assets']->init();
        $this->container->fireEvent('onAssetsInitialized');
        $this->stopTimer();
 
        return $handler->handle($request);
    }
}
 
/var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
/var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
/var/www/html/conch.fyi/system/src/Grav/Common/Processors/SchedulerProcessor.php
namespace Grav\Common\Processors;
 
use RocketTheme\Toolbox\Event\Event;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
 
class SchedulerProcessor extends ProcessorBase
{
    public $id = '_scheduler';
    public $title = 'Scheduler';
 
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
    {
        $this->startTimer();
        $scheduler = $this->container['scheduler'];
        $this->container->fireEvent('onSchedulerInitialized', new Event(['scheduler' => $scheduler]));
        $this->stopTimer();
 
        return $handler->handle($request);
    }
}
 
/var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
/var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
/var/www/html/conch.fyi/system/src/Grav/Common/Processors/BackupsProcessor.php
 
namespace Grav\Common\Processors;
 
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
 
class BackupsProcessor extends ProcessorBase
{
    public $id = '_backups';
    public $title = 'Backups';
 
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
    {
        $this->startTimer();
        $backups = $this->container['backups'];
        $backups->init();
        $this->stopTimer();
 
        return $handler->handle($request);
    }
}
 
/var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
/var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
/var/www/html/conch.fyi/system/src/Grav/Common/Processors/TasksProcessor.php
                    }
 
                    $this->stopTimer();
 
                    return $response;
 
                } catch (NotFoundException $e) {
                    // Task not found: Let it pass through.
                }
            }
 
            if ($task) {
                $this->container->fireEvent('onTask.' . $task);
            } elseif ($action) {
                $this->container->fireEvent('onAction.' . $action);
            }
        }
        $this->stopTimer();
 
        return $handler->handle($request);
    }
}
 
/var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
/var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
/var/www/html/conch.fyi/system/src/Grav/Common/Processors/RequestProcessor.php
        $uri = $request->getUri();
        $ext = mb_strtolower(pathinfo($uri->getPath(), PATHINFO_EXTENSION));
 
        $request = $request
            ->withAttribute('grav', $this->container)
            ->withAttribute('time', $_SERVER['REQUEST_TIME_FLOAT'] ?? GRAV_REQUEST_TIME)
            ->withAttribute('route', Uri::getCurrentRoute()->withExtension($ext))
            ->withAttribute('referrer', $this->container['uri']->referrer());
 
        $event = new RequestHandlerEvent(['request' => $request, 'handler' => $handler]);
        /** @var RequestHandlerEvent $event */
        $event = $this->container->fireEvent('onRequestHandlerInit', $event);
        $response = $event->getResponse();
        $this->stopTimer();
 
        if ($response) {
            return $response;
        }
 
        return $handler->handle($request);
    }
}
 
/var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
/var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
/var/www/html/conch.fyi/system/src/Grav/Common/Processors/ThemesProcessor.php
 */
 
namespace Grav\Common\Processors;
 
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
 
class ThemesProcessor extends ProcessorBase
{
    public $id = 'themes';
    public $title = 'Themes';
 
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
    {
        $this->startTimer();
        $this->container['themes']->init();
        $this->stopTimer();
 
        return $handler->handle($request);
    }
}
 
/var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
/var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
/var/www/html/conch.fyi/system/src/Grav/Common/Processors/PluginsProcessor.php
 
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
 
class PluginsProcessor extends ProcessorBase
{
    public $id = 'plugins';
    public $title = 'Plugins';
 
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
    {
        $this->startTimer();
        // TODO: remove in 2.0.
        $this->container['accounts'];
        $this->container['plugins']->init();
        $this->container->fireEvent('onPluginsInitialized');
        $this->stopTimer();
 
        return $handler->handle($request);
    }
}
 
/var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
/var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
/var/www/html/conch.fyi/system/src/Grav/Common/Processors/InitializeProcessor.php
 
            $request = $request->withAttribute('request_time', $requestTime);
 
            // Handle clockwork API calls.
            $uri = $request->getUri();
            if (Utils::contains($uri->getPath(), '/__clockwork/')) {
                return $debugger->debuggerRequest($request);
            }
 
            $this->container['clockwork'] = $clockwork;
        }
        $this->stopTimer('_debugger');
 
        $this->initialize($config);
        $this->initializeSession($config);
 
        // Wrap call to next handler so that debugger can profile it.
        /** @var Response $response */
        $response = $debugger->profile(function () use ($handler, $request) {
            return $handler->handle($request);
        });
 
        // Log both request and response and return the response.
        return $debugger->logRequest($request, $response);
    }
 
    protected function initializeConfig(): Config
    {
        $this->startTimer('_config', 'Configuration');
 
        // Initialize Configuration
        $grav = $this->container;
        /** @var Config $config */
        $config = $grav['config'];
        $config->init();
        $grav['plugins']->setup();
 
        $this->stopTimer('_config');
 
        return $config;
/var/www/html/conch.fyi/system/src/Grav/Common/Debugger.php
        }
 
        $this->addMeasures();
        $this->addDeprecations();
        $this->timers = [];
 
        return $this->debugbar->getData();
    }
 
    /**
     * Hierarchical Profiler support.
     *
     * @param callable $callable
     * @param string $message
     * @return mixed
     */
    public function profile(callable $callable, string $message = null)
    {
        $this->startProfiling();
        $response = $callable();
        $this->stopProfiling($message);
 
        return $response;
    }
 
    /**
     * Start profiling code.
     */
    public function startProfiling(): void
    {
        if ($this->enabled && extension_loaded('tideways_xhprof')) {
            $this->profiling++;
            if ($this->profiling === 1) {
                \tideways_xhprof_enable(TIDEWAYS_XHPROF_FLAGS_NO_BUILTINS);
            }
        }
    }
 
    /**
     * Stop profiling code. Returns profiling array or null if profiling couldn't be done.
/var/www/html/conch.fyi/system/src/Grav/Common/Processors/InitializeProcessor.php
            $request = $request->withAttribute('request_time', $requestTime);
 
            // Handle clockwork API calls.
            $uri = $request->getUri();
            if (Utils::contains($uri->getPath(), '/__clockwork/')) {
                return $debugger->debuggerRequest($request);
            }
 
            $this->container['clockwork'] = $clockwork;
        }
        $this->stopTimer('_debugger');
 
        $this->initialize($config);
        $this->initializeSession($config);
 
        // Wrap call to next handler so that debugger can profile it.
        /** @var Response $response */
        $response = $debugger->profile(function () use ($handler, $request) {
            return $handler->handle($request);
        });
 
        // Log both request and response and return the response.
        return $debugger->logRequest($request, $response);
    }
 
    protected function initializeConfig(): Config
    {
        $this->startTimer('_config', 'Configuration');
 
        // Initialize Configuration
        $grav = $this->container;
        /** @var Config $config */
        $config = $grav['config'];
        $config->init();
        $grav['plugins']->setup();
 
        $this->stopTimer('_config');
 
        return $config;
    }
/var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
/var/www/html/conch.fyi/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
/var/www/html/conch.fyi/system/src/Grav/Common/Grav.php
                },
                'pagesProcessor' => function () {
                    return new PagesProcessor($this);
                },
                'debuggerAssetsProcessor' => function () {
                    return new DebuggerAssetsProcessor($this);
                },
                'renderProcessor' => function () {
                    return new RenderProcessor($this);
                },
            ]
        );
 
        $default = static function () {
            return new Response(404);
        };
 
        $collection = new RequestHandler($this->middleware, $default, $container);
 
        $response = $collection->handle($this['request']);
 
        $this->header($response);
        echo $response->getBody();
 
        $this['debugger']->render();
 
        // Response object can turn off all shutdown processing. This can be used for example to speed up AJAX responses.
        // Note that using this feature will also turn off response compression.
        if ($response->getHeaderLine('Grav-Internal-SkipShutdown') !== '1') {
            register_shutdown_function([$this, 'shutdown']);
        }
    }
 
    /**
     * Terminates Grav request with a response.
     *
     * Please use this method instead of calling `die();` or `exit();`. Note that you need to create a response object.
     *
     * @param ResponseInterface $response
     */
/var/www/html/conch.fyi/index.php
 
// Set timezone to default, falls back to system if php.ini not set
date_default_timezone_set(@date_default_timezone_get());
 
// Set internal encoding if mbstring loaded
if (!\extension_loaded('mbstring')) {
    die("'mbstring' extension is not loaded.  This is required for Grav to run correctly");
}
mb_internal_encoding('UTF-8');
 
// Get the Grav instance
$grav = Grav::instance(
    array(
        'loader' => $loader
    )
);
 
// Process the page
try {
    $grav->process();
} catch (\Error $e) {
    $grav->fireEvent('onFatalException', new Event(array('exception' => $e)));
    throw $e;
} catch (\Exception $e) {
    $grav->fireEvent('onFatalException', new Event(array('exception' => $e)));
    throw $e;
}
 

Environment & details:

empty
empty
empty
empty
Key Value
user
User {#146}
Key Value
REDIRECT_SCRIPT_URL
"/_/glasgow/aled"
REDIRECT_SCRIPT_URI
"https://conch.fyi/_/glasgow/aled"
REDIRECT_HTTPS
"on"
REDIRECT_SSL_TLS_SNI
"conch.fyi"
REDIRECT_STATUS
"200"
SCRIPT_URL
"/_/glasgow/aled"
SCRIPT_URI
"https://conch.fyi/_/glasgow/aled"
HTTPS
"on"
SSL_TLS_SNI
"conch.fyi"
HTTP_ACCEPT
"*/*"
HTTP_USER_AGENT
"claudebot"
HTTP_HOST
"conch.fyi"
PATH
"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"
SERVER_SIGNATURE
"<address>Apache/2.4.29 (Ubuntu) Server at conch.fyi Port 443</address>\n"
SERVER_SOFTWARE
"Apache/2.4.29 (Ubuntu)"
SERVER_NAME
"conch.fyi"
SERVER_ADDR
"46.101.28.4"
SERVER_PORT
"443"
REMOTE_ADDR
"3.239.214.173"
DOCUMENT_ROOT
"/var/www/html/conch.fyi"
REQUEST_SCHEME
"https"
CONTEXT_PREFIX
""
CONTEXT_DOCUMENT_ROOT
"/var/www/html/conch.fyi"
SERVER_ADMIN
"benccallaghan@gmail.com"
SCRIPT_FILENAME
"/var/www/html/conch.fyi/index.php"
REMOTE_PORT
"57708"
REDIRECT_URL
"/_/glasgow/aled"
GATEWAY_INTERFACE
"CGI/1.1"
SERVER_PROTOCOL
"HTTP/1.1"
REQUEST_METHOD
"GET"
QUERY_STRING
""
REQUEST_URI
"/_/glasgow/aled"
SCRIPT_NAME
"/index.php"
PHP_SELF
"/index.php"
REQUEST_TIME_FLOAT
1710827270.5415
REQUEST_TIME
1710827270
empty
0. Whoops\Handler\CallbackHandler
1. Whoops\Handler\PrettyPageHandler