Whoops \ Exception \ ErrorException (E_WARNING)
Trying to access array offset on value of type int Whoops\Exception\ErrorException thrown with message "Trying to access array offset on value of type int" Stacktrace: #27 Whoops\Exception\ErrorException in /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/rockettheme/toolbox/Blueprints/src/BlueprintForm.php:379 #26 Whoops\Run:handleError in /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/rockettheme/toolbox/Blueprints/src/BlueprintForm.php:379 #25 RocketTheme\Toolbox\Blueprints\BlueprintForm:deepInit in /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/rockettheme/toolbox/Blueprints/src/BlueprintForm.php:407 #24 RocketTheme\Toolbox\Blueprints\BlueprintForm:deepInit in /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/rockettheme/toolbox/Blueprints/src/BlueprintForm.php:407 #23 RocketTheme\Toolbox\Blueprints\BlueprintForm:deepInit in /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/rockettheme/toolbox/Blueprints/src/BlueprintForm.php:407 #22 RocketTheme\Toolbox\Blueprints\BlueprintForm:deepInit in /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/rockettheme/toolbox/Blueprints/src/BlueprintForm.php:407 #21 RocketTheme\Toolbox\Blueprints\BlueprintForm:deepInit in /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/rockettheme/toolbox/Blueprints/src/BlueprintForm.php:407 #20 RocketTheme\Toolbox\Blueprints\BlueprintForm:deepInit in /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/rockettheme/toolbox/Blueprints/src/BlueprintForm.php:407 #19 RocketTheme\Toolbox\Blueprints\BlueprintForm:deepInit in /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/rockettheme/toolbox/Blueprints/src/BlueprintForm.php:144 #18 RocketTheme\Toolbox\Blueprints\BlueprintForm:load in /home/httpd/vhosts/ogive.ch/dominikrohr/system/src/Grav/Common/Config/CompiledBlueprints.php:80 #17 Grav\Common\Config\CompiledBlueprints:loadFile in /home/httpd/vhosts/ogive.ch/dominikrohr/system/src/Grav/Common/Config/CompiledBlueprints.php:103 #16 Grav\Common\Config\CompiledBlueprints:loadFiles in /home/httpd/vhosts/ogive.ch/dominikrohr/system/src/Grav/Common/Config/CompiledBase.php:115 #15 Grav\Common\Config\CompiledBase:load in /home/httpd/vhosts/ogive.ch/dominikrohr/system/src/Grav/Common/Service/ConfigServiceProvider.php:65 #14 Grav\Common\Service\ConfigServiceProvider:blueprints in /home/httpd/vhosts/ogive.ch/dominikrohr/system/src/Grav/Common/Service/ConfigServiceProvider.php:30 #13 Grav\Common\Service\ConfigServiceProvider:Grav\Common\Service\{closure} in /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/pimple/pimple/src/Pimple/Container.php:113 #12 Pimple\Container:offsetGet in /home/httpd/vhosts/ogive.ch/dominikrohr/system/src/Grav/Common/Service/ConfigServiceProvider.php:86 #11 Grav\Common\Service\ConfigServiceProvider:Grav\Common\Service\{closure} in /home/httpd/vhosts/ogive.ch/dominikrohr/system/src/Grav/Common/Data/Data.php:229 #10 Grav\Common\Data\Data:blueprints in /home/httpd/vhosts/ogive.ch/dominikrohr/system/src/Grav/Common/Data/Data.php:116 #9 Grav\Common\Data\Data:joinDefaults in /home/httpd/vhosts/ogive.ch/dominikrohr/system/src/Grav/Common/Themes.php:278 #8 Grav\Common\Themes:loadConfiguration in /home/httpd/vhosts/ogive.ch/dominikrohr/system/src/Grav/Common/Themes.php:227 #7 Grav\Common\Themes:configure in /home/httpd/vhosts/ogive.ch/dominikrohr/system/src/Grav/Common/Themes.php:49 #6 Grav\Common\Themes:init in /home/httpd/vhosts/ogive.ch/dominikrohr/system/src/Grav/Common/Processors/ThemesProcessor.php:18 #5 Grav\Common\Processors\ThemesProcessor:process in /home/httpd/vhosts/ogive.ch/dominikrohr/system/src/Grav/Common/Grav.php:132 #4 Grav\Common\Grav:Grav\Common\{closure} in /home/httpd/vhosts/ogive.ch/dominikrohr/system/src/Grav/Common/Grav.php:370 #3 Grav\Common\Grav:Grav\Common\{closure} in /home/httpd/vhosts/ogive.ch/dominikrohr/system/src/Grav/Common/Grav.php:346 #2 call_user_func_array in /home/httpd/vhosts/ogive.ch/dominikrohr/system/src/Grav/Common/Grav.php:346 #1 Grav\Common\Grav:__call in /home/httpd/vhosts/ogive.ch/dominikrohr/system/src/Grav/Common/Grav.php:131 #0 Grav\Common\Grav:process in /home/httpd/vhosts/ogive.ch/dominikrohr/index.php:52
Stack frames (28)
27
Whoops
\
Exception
\
ErrorException
/
vendor
/
rockettheme
/
toolbox
/
Blueprints
/
src
/
BlueprintForm.php
379
26
Whoops
\
Run
handleError
/
vendor
/
rockettheme
/
toolbox
/
Blueprints
/
src
/
BlueprintForm.php
379
25
RocketTheme
\
Toolbox
\
Blueprints
\
BlueprintForm
deepInit
/
vendor
/
rockettheme
/
toolbox
/
Blueprints
/
src
/
BlueprintForm.php
407
24
RocketTheme
\
Toolbox
\
Blueprints
\
BlueprintForm
deepInit
/
vendor
/
rockettheme
/
toolbox
/
Blueprints
/
src
/
BlueprintForm.php
407
23
RocketTheme
\
Toolbox
\
Blueprints
\
BlueprintForm
deepInit
/
vendor
/
rockettheme
/
toolbox
/
Blueprints
/
src
/
BlueprintForm.php
407
22
RocketTheme
\
Toolbox
\
Blueprints
\
BlueprintForm
deepInit
/
vendor
/
rockettheme
/
toolbox
/
Blueprints
/
src
/
BlueprintForm.php
407
21
RocketTheme
\
Toolbox
\
Blueprints
\
BlueprintForm
deepInit
/
vendor
/
rockettheme
/
toolbox
/
Blueprints
/
src
/
BlueprintForm.php
407
20
RocketTheme
\
Toolbox
\
Blueprints
\
BlueprintForm
deepInit
/
vendor
/
rockettheme
/
toolbox
/
Blueprints
/
src
/
BlueprintForm.php
407
19
RocketTheme
\
Toolbox
\
Blueprints
\
BlueprintForm
deepInit
/
vendor
/
rockettheme
/
toolbox
/
Blueprints
/
src
/
BlueprintForm.php
144
18
RocketTheme
\
Toolbox
\
Blueprints
\
BlueprintForm
load
/
system
/
src
/
Grav
/
Common
/
Config
/
CompiledBlueprints.php
80
17
Grav
\
Common
\
Config
\
CompiledBlueprints
loadFile
/
system
/
src
/
Grav
/
Common
/
Config
/
CompiledBlueprints.php
103
16
Grav
\
Common
\
Config
\
CompiledBlueprints
loadFiles
/
system
/
src
/
Grav
/
Common
/
Config
/
CompiledBase.php
115
15
Grav
\
Common
\
Config
\
CompiledBase
load
/
system
/
src
/
Grav
/
Common
/
Service
/
ConfigServiceProvider.php
65
14
Grav
\
Common
\
Service
\
ConfigServiceProvider
blueprints
/
system
/
src
/
Grav
/
Common
/
Service
/
ConfigServiceProvider.php
30
13
Grav
\
Common
\
Service
\
ConfigServiceProvider
Grav
\
Common
\
Service
\
{closure}
/
vendor
/
pimple
/
pimple
/
src
/
Pimple
/
Container.php
113
12
Pimple
\
Container
offsetGet
/
system
/
src
/
Grav
/
Common
/
Service
/
ConfigServiceProvider.php
86
11
Grav
\
Common
\
Service
\
ConfigServiceProvider
Grav
\
Common
\
Service
\
{closure}
/
system
/
src
/
Grav
/
Common
/
Data
/
Data.php
229
10
Grav
\
Common
\
Data
\
Data
blueprints
/
system
/
src
/
Grav
/
Common
/
Data
/
Data.php
116
9
Grav
\
Common
\
Data
\
Data
joinDefaults
/
system
/
src
/
Grav
/
Common
/
Themes.php
278
8
Grav
\
Common
\
Themes
loadConfiguration
/
system
/
src
/
Grav
/
Common
/
Themes.php
227
7
Grav
\
Common
\
Themes
configure
/
system
/
src
/
Grav
/
Common
/
Themes.php
49
6
Grav
\
Common
\
Themes
init
/
system
/
src
/
Grav
/
Common
/
Processors
/
ThemesProcessor.php
18
5
Grav
\
Common
\
Processors
\
ThemesProcessor
process
/
system
/
src
/
Grav
/
Common
/
Grav.php
132
4
Grav
\
Common
\
Grav
Grav
\
Common
\
{closure}
/
system
/
src
/
Grav
/
Common
/
Grav.php
370
3
Grav
\
Common
\
Grav
Grav
\
Common
\
{closure}
/
system
/
src
/
Grav
/
Common
/
Grav.php
346
2
call_user_func_array
/
system
/
src
/
Grav
/
Common
/
Grav.php
346
1
Grav
\
Common
\
Grav
__call
/
system
/
src
/
Grav
/
Common
/
Grav.php
131
0
Grav
\
Common
\
Grav
process
/
index.php
52
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
vendor
/
rockettheme
/
toolbox
/
Blueprints
/
src
/
BlueprintForm.php
 
    /**
     * @param array $items
     * @param array $path
     * @return string
     */
    protected function deepInit(array &$items, $path = [])
    {
        $ordering = '';
        $order = [];
        $field = end($path) === 'fields';
 
        foreach ($items as $key => &$item) {
            // Set name for nested field.
            if ($field && isset($item['type'])) {
                $item['name'] = $key;
            }
 
            // Handle special instructions in the form.
            if (!empty($key) && ($key[0] === '@' || $key[strlen($key) - 1] === '@')) {
                $list = explode('-', trim($key, '@'), 2);
                $action = array_shift($list);
                $property = array_shift($list);
 
                switch ($action) {
                    case 'unset':
                        unset($items[$key]);
                        if (empty($items)) {
                            return null;
                        }
                        break;
                    case 'import':
                        $this->doImport($item, $path);
                        unset($items[$key]);
                        break;
                    case 'ordering':
                        $ordering = $item;
                        unset($items[$key]);
                        break;
                    default:
Arguments
  1. "Trying to access array offset on value of type int"
    
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
vendor
/
rockettheme
/
toolbox
/
Blueprints
/
src
/
BlueprintForm.php
 
    /**
     * @param array $items
     * @param array $path
     * @return string
     */
    protected function deepInit(array &$items, $path = [])
    {
        $ordering = '';
        $order = [];
        $field = end($path) === 'fields';
 
        foreach ($items as $key => &$item) {
            // Set name for nested field.
            if ($field && isset($item['type'])) {
                $item['name'] = $key;
            }
 
            // Handle special instructions in the form.
            if (!empty($key) && ($key[0] === '@' || $key[strlen($key) - 1] === '@')) {
                $list = explode('-', trim($key, '@'), 2);
                $action = array_shift($list);
                $property = array_shift($list);
 
                switch ($action) {
                    case 'unset':
                        unset($items[$key]);
                        if (empty($items)) {
                            return null;
                        }
                        break;
                    case 'import':
                        $this->doImport($item, $path);
                        unset($items[$key]);
                        break;
                    case 'ordering':
                        $ordering = $item;
                        unset($items[$key]);
                        break;
                    default:
Arguments
  1. 2
    
  2. "Trying to access array offset on value of type int"
    
  3. "/home/httpd/vhosts/ogive.ch/dominikrohr/vendor/rockettheme/toolbox/Blueprints/src/BlueprintForm.php"
    
  4. 379
    
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
vendor
/
rockettheme
/
toolbox
/
Blueprints
/
src
/
BlueprintForm.php
                            return null;
                        }
                        break;
                    case 'import':
                        $this->doImport($item, $path);
                        unset($items[$key]);
                        break;
                    case 'ordering':
                        $ordering = $item;
                        unset($items[$key]);
                        break;
                    default:
                        $this->dynamic[implode('/', $path)][$property] = ['action' => $action, 'params' => $item];
                }
 
            } elseif (is_array($item)) {
                // Recursively initialize form.
                $newPath = array_merge($path, [$key]);
 
                $location = $this->deepInit($item, $newPath);
                if ($location) {
                    $order[$key] = $location;
                } elseif ($location === null) {
                    unset($items[$key]);
                }
            }
        }
 
        if ($order) {
            // Reorder fields if needed.
            $items = $this->doReorder($items, $order);
        }
 
        return $ordering;
    }
 
    /**
     * @param array|string $value
     * @param array $path
     */
Arguments
  1. array:2 [
      1 => "PLUGIN_ADMIN.YES"
      0 => "PLUGIN_ADMIN.NO"
    ]
    
  2. array:6 [
      0 => "form"
      1 => "fields"
      2 => "summary"
      3 => "fields"
      4 => "summary.enabled"
      5 => "options"
    ]
    
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
vendor
/
rockettheme
/
toolbox
/
Blueprints
/
src
/
BlueprintForm.php
                            return null;
                        }
                        break;
                    case 'import':
                        $this->doImport($item, $path);
                        unset($items[$key]);
                        break;
                    case 'ordering':
                        $ordering = $item;
                        unset($items[$key]);
                        break;
                    default:
                        $this->dynamic[implode('/', $path)][$property] = ['action' => $action, 'params' => $item];
                }
 
            } elseif (is_array($item)) {
                // Recursively initialize form.
                $newPath = array_merge($path, [$key]);
 
                $location = $this->deepInit($item, $newPath);
                if ($location) {
                    $order[$key] = $location;
                } elseif ($location === null) {
                    unset($items[$key]);
                }
            }
        }
 
        if ($order) {
            // Reorder fields if needed.
            $items = $this->doReorder($items, $order);
        }
 
        return $ordering;
    }
 
    /**
     * @param array|string $value
     * @param array $path
     */
Arguments
  1. array:7 [
      "type" => "toggle"
      "label" => "PLUGIN_ADMIN.ENABLED"
      "highlight" => 1
      "help" => "PLUGIN_ADMIN.ENABLED_HELP"
      "options" => array:2 [
        1 => "PLUGIN_ADMIN.YES"
        0 => "PLUGIN_ADMIN.NO"
      ]
      "validate" => array:1 [
        "type" => "bool"
      ]
      "name" => "summary.enabled"
    ]
    
  2. array:5 [
      0 => "form"
      1 => "fields"
      2 => "summary"
      3 => "fields"
      4 => "summary.enabled"
    ]
    
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
vendor
/
rockettheme
/
toolbox
/
Blueprints
/
src
/
BlueprintForm.php
                            return null;
                        }
                        break;
                    case 'import':
                        $this->doImport($item, $path);
                        unset($items[$key]);
                        break;
                    case 'ordering':
                        $ordering = $item;
                        unset($items[$key]);
                        break;
                    default:
                        $this->dynamic[implode('/', $path)][$property] = ['action' => $action, 'params' => $item];
                }
 
            } elseif (is_array($item)) {
                // Recursively initialize form.
                $newPath = array_merge($path, [$key]);
 
                $location = $this->deepInit($item, $newPath);
                if ($location) {
                    $order[$key] = $location;
                } elseif ($location === null) {
                    unset($items[$key]);
                }
            }
        }
 
        if ($order) {
            // Reorder fields if needed.
            $items = $this->doReorder($items, $order);
        }
 
        return $ordering;
    }
 
    /**
     * @param array|string $value
     * @param array $path
     */
Arguments
  1. array:4 [
      "summary.enabled" => array:7 [
        "type" => "toggle"
        "label" => "PLUGIN_ADMIN.ENABLED"
        "highlight" => 1
        "help" => "PLUGIN_ADMIN.ENABLED_HELP"
        "options" => array:2 [
          1 => "PLUGIN_ADMIN.YES"
          0 => "PLUGIN_ADMIN.NO"
        ]
        "validate" => array:1 [
          "type" => "bool"
        ]
        "name" => "summary.enabled"
      ]
      "summary.size" => array:6 [
        "type" => "text"
        "size" => "x-small"
        "append" => "PLUGIN_ADMIN.CHARACTERS"
        "label" => "PLUGIN_ADMIN.SUMMARY_SIZE"
        "help" => "PLUGIN_ADMIN.SUMMARY_SIZE_HELP"
        "validate" => array:3 [
          "type" => "int"
          "min" => 0
          "max" => 65536
        ]
      ]
      "summary.format" => array:6 [
        "type" => "toggle"
        "label" => "PLUGIN_ADMIN.FORMAT"
        "classes" => "fancy"
        "help" => "PLUGIN_ADMIN.FORMAT_HELP"
        "highlight" => "short"
        "options" => array:2 [
          "short" => "PLUGIN_ADMIN.SHORT"
          "long" => "PLUGIN_ADMIN.LONG"
        ]
      ]
      "summary.delimiter" => array:4 [
        "type" => "text"
        "size" => "x-small"
        "label" => "PLUGIN_ADMIN.DELIMITER"
        "help" => "PLUGIN_ADMIN.DELIMITER_HELP"
      ]
    ]
    
  2. array:4 [
      0 => "form"
      1 => "fields"
      2 => "summary"
      3 => "fields"
    ]
    
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
vendor
/
rockettheme
/
toolbox
/
Blueprints
/
src
/
BlueprintForm.php
                            return null;
                        }
                        break;
                    case 'import':
                        $this->doImport($item, $path);
                        unset($items[$key]);
                        break;
                    case 'ordering':
                        $ordering = $item;
                        unset($items[$key]);
                        break;
                    default:
                        $this->dynamic[implode('/', $path)][$property] = ['action' => $action, 'params' => $item];
                }
 
            } elseif (is_array($item)) {
                // Recursively initialize form.
                $newPath = array_merge($path, [$key]);
 
                $location = $this->deepInit($item, $newPath);
                if ($location) {
                    $order[$key] = $location;
                } elseif ($location === null) {
                    unset($items[$key]);
                }
            }
        }
 
        if ($order) {
            // Reorder fields if needed.
            $items = $this->doReorder($items, $order);
        }
 
        return $ordering;
    }
 
    /**
     * @param array|string $value
     * @param array $path
     */
Arguments
  1. array:5 [
      "type" => "section"
      "title" => "PLUGIN_ADMIN.PAGE_SUMMARY"
      "underline" => true
      "fields" => array:4 [
        "summary.enabled" => array:7 [
          "type" => "toggle"
          "label" => "PLUGIN_ADMIN.ENABLED"
          "highlight" => 1
          "help" => "PLUGIN_ADMIN.ENABLED_HELP"
          "options" => array:2 [
            1 => "PLUGIN_ADMIN.YES"
            0 => "PLUGIN_ADMIN.NO"
          ]
          "validate" => array:1 [
            "type" => "bool"
          ]
          "name" => "summary.enabled"
        ]
        "summary.size" => array:6 [
          "type" => "text"
          "size" => "x-small"
          "append" => "PLUGIN_ADMIN.CHARACTERS"
          "label" => "PLUGIN_ADMIN.SUMMARY_SIZE"
          "help" => "PLUGIN_ADMIN.SUMMARY_SIZE_HELP"
          "validate" => array:3 [
            "type" => "int"
            "min" => 0
            "max" => 65536
          ]
        ]
        "summary.format" => array:6 [
          "type" => "toggle"
          "label" => "PLUGIN_ADMIN.FORMAT"
          "classes" => "fancy"
          "help" => "PLUGIN_ADMIN.FORMAT_HELP"
          "highlight" => "short"
          "options" => array:2 [
            "short" => "PLUGIN_ADMIN.SHORT"
            "long" => "PLUGIN_ADMIN.LONG"
          ]
        ]
        "summary.delimiter" => array:4 [
          "type" => "text"
          "size" => "x-small"
          "label" => "PLUGIN_ADMIN.DELIMITER"
          "help" => "PLUGIN_ADMIN.DELIMITER_HELP"
        ]
      ]
      "name" => "summary"
    ]
    
  2. array:3 [
      0 => "form"
      1 => "fields"
      2 => "summary"
    ]
    
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
vendor
/
rockettheme
/
toolbox
/
Blueprints
/
src
/
BlueprintForm.php
                            return null;
                        }
                        break;
                    case 'import':
                        $this->doImport($item, $path);
                        unset($items[$key]);
                        break;
                    case 'ordering':
                        $ordering = $item;
                        unset($items[$key]);
                        break;
                    default:
                        $this->dynamic[implode('/', $path)][$property] = ['action' => $action, 'params' => $item];
                }
 
            } elseif (is_array($item)) {
                // Recursively initialize form.
                $newPath = array_merge($path, [$key]);
 
                $location = $this->deepInit($item, $newPath);
                if ($location) {
                    $order[$key] = $location;
                } elseif ($location === null) {
                    unset($items[$key]);
                }
            }
        }
 
        if ($order) {
            // Reorder fields if needed.
            $items = $this->doReorder($items, $order);
        }
 
        return $ordering;
    }
 
    /**
     * @param array|string $value
     * @param array $path
     */
Arguments
  1. array:4 [
      "content" => array:5 [
        "type" => "section"
        "title" => "PLUGIN_ADMIN.DEFAULTS"
        "underline" => true
        "fields" => array:5 [
          "title" => array:6 [
            "type" => "text"
            "label" => "PLUGIN_ADMIN.SITE_TITLE"
            "size" => "large"
            "placeholder" => "PLUGIN_ADMIN.SITE_TITLE_PLACEHOLDER"
            "help" => "PLUGIN_ADMIN.SITE_TITLE_HELP"
            "name" => "title"
          ]
          "default_lang" => array:6 [
            "type" => "text"
            "label" => "PLUGIN_ADMIN.SITE_DEFAULT_LANG"
            "size" => "x-small"
            "placeholder" => "PLUGIN_ADMIN.SITE_DEFAULT_LANG_PLACEHOLDER"
            "help" => "PLUGIN_ADMIN.SITE_DEFAULT_LANG_HELP"
            "name" => "default_lang"
          ]
          "author.name" => array:5 [
            "type" => "text"
            "size" => "large"
            "label" => "PLUGIN_ADMIN.DEFAULT_AUTHOR"
            "help" => "PLUGIN_ADMIN.DEFAULT_AUTHOR_HELP"
            "name" => "author.name"
          ]
          "author.email" => array:6 [
            "type" => "text"
            "size" => "large"
            "label" => "PLUGIN_ADMIN.DEFAULT_EMAIL"
            "help" => "PLUGIN_ADMIN.DEFAULT_EMAIL_HELP"
            "validate" => array:1 [
              "type" => "email"
            ]
            "name" => "author.email"
          ]
          "taxonomies" => array:7 [
            "type" => "selectize"
            "size" => "large"
            "label" => "PLUGIN_ADMIN.TAXONOMY_TYPES"
            "classes" => "fancy"
            "help" => "PLUGIN_ADMIN.TAXONOMY_TYPES_HELP"
            "validate" => array:1 [
              "type" => "commalist"
            ]
            "name" => "taxonomies"
          ]
        ]
        "name" => "content"
      ]
      "summary" => array:5 [
        "type" => "section"
        "title" => "PLUGIN_ADMIN.PAGE_SUMMARY"
        "underline" => true
        "fields" => array:4 [
          "summary.enabled" => array:7 [
            "type" => "toggle"
            "label" => "PLUGIN_ADMIN.ENABLED"
            "highlight" => 1
            "help" => "PLUGIN_ADMIN.ENABLED_HELP"
            "options" => array:2 [
              1 => "PLUGIN_ADMIN.YES"
              0 => "PLUGIN_ADMIN.NO"
            ]
            "validate" => array:1 [
              "type" => "bool"
            ]
            "name" => "summary.enabled"
          ]
          "summary.size" => array:6 [
            "type" => "text"
            "size" => "x-small"
            "append" => "PLUGIN_ADMIN.CHARACTERS"
            "label" => "PLUGIN_ADMIN.SUMMARY_SIZE"
            "help" => "PLUGIN_ADMIN.SUMMARY_SIZE_HELP"
            "validate" => array:3 [
              "type" => "int"
              "min" => 0
              "max" => 65536
            ]
          ]
          "summary.format" => array:6 [
            "type" => "toggle"
            "label" => "PLUGIN_ADMIN.FORMAT"
            "classes" => "fancy"
            "help" => "PLUGIN_ADMIN.FORMAT_HELP"
            "highlight" => "short"
            "options" => array:2 [
              "short" => "PLUGIN_ADMIN.SHORT"
              "long" => "PLUGIN_ADMIN.LONG"
            ]
          ]
          "summary.delimiter" => array:4 [
            "type" => "text"
            "size" => "x-small"
            "label" => "PLUGIN_ADMIN.DELIMITER"
            "help" => "PLUGIN_ADMIN.DELIMITER_HELP"
          ]
        ]
        "name" => "summary"
      ]
      "metadata" => array:4 [
        "type" => "section"
        "title" => "PLUGIN_ADMIN.METADATA"
        "underline" => true
        "fields" => array:1 [
          "metadata" => array:5 [
            "type" => "array"
            "label" => "PLUGIN_ADMIN.METADATA"
            "help" => "PLUGIN_ADMIN.METADATA_HELP"
            "placeholder_key" => "PLUGIN_ADMIN.METADATA_KEY"
            "placeholder_value" => "PLUGIN_ADMIN.METADATA_VALUE"
          ]
        ]
      ]
      "routes" => array:4 [
        "type" => "section"
        "title" => "PLUGIN_ADMIN.REDIRECTS_AND_ROUTES"
        "underline" => true
        "fields" => array:2 [
          "redirects" => array:5 [
            "type" => "array"
            "label" => "PLUGIN_ADMIN.CUSTOM_REDIRECTS"
            "help" => "PLUGIN_ADMIN.CUSTOM_REDIRECTS_HELP"
            "placeholder_key" => "PLUGIN_ADMIN.CUSTOM_REDIRECTS_PLACEHOLDER_KEY"
            "placeholder_value" => "PLUGIN_ADMIN.CUSTOM_REDIRECTS_PLACEHOLDER_VALUE"
          ]
          "routes" => array:5 [
            "type" => "array"
            "label" => "PLUGIN_ADMIN.CUSTOM_ROUTES"
            "help" => "PLUGIN_ADMIN.CUSTOM_ROUTES_HELP"
            "placeholder_key" => "PLUGIN_ADMIN.CUSTOM_ROUTES_PLACEHOLDER_KEY"
            "placeholder_value" => "PLUGIN_ADMIN.CUSTOM_ROUTES_PLACEHOLDER_VALUE"
          ]
        ]
      ]
    ]
    
  2. array:2 [
      0 => "form"
      1 => "fields"
    ]
    
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
vendor
/
rockettheme
/
toolbox
/
Blueprints
/
src
/
BlueprintForm.php
                            return null;
                        }
                        break;
                    case 'import':
                        $this->doImport($item, $path);
                        unset($items[$key]);
                        break;
                    case 'ordering':
                        $ordering = $item;
                        unset($items[$key]);
                        break;
                    default:
                        $this->dynamic[implode('/', $path)][$property] = ['action' => $action, 'params' => $item];
                }
 
            } elseif (is_array($item)) {
                // Recursively initialize form.
                $newPath = array_merge($path, [$key]);
 
                $location = $this->deepInit($item, $newPath);
                if ($location) {
                    $order[$key] = $location;
                } elseif ($location === null) {
                    unset($items[$key]);
                }
            }
        }
 
        if ($order) {
            // Reorder fields if needed.
            $items = $this->doReorder($items, $order);
        }
 
        return $ordering;
    }
 
    /**
     * @param array|string $value
     * @param array $path
     */
Arguments
  1. array:2 [
      "validation" => "loose"
      "fields" => array:4 [
        "content" => array:5 [
          "type" => "section"
          "title" => "PLUGIN_ADMIN.DEFAULTS"
          "underline" => true
          "fields" => array:5 [
            "title" => array:6 [
              "type" => "text"
              "label" => "PLUGIN_ADMIN.SITE_TITLE"
              "size" => "large"
              "placeholder" => "PLUGIN_ADMIN.SITE_TITLE_PLACEHOLDER"
              "help" => "PLUGIN_ADMIN.SITE_TITLE_HELP"
              "name" => "title"
            ]
            "default_lang" => array:6 [
              "type" => "text"
              "label" => "PLUGIN_ADMIN.SITE_DEFAULT_LANG"
              "size" => "x-small"
              "placeholder" => "PLUGIN_ADMIN.SITE_DEFAULT_LANG_PLACEHOLDER"
              "help" => "PLUGIN_ADMIN.SITE_DEFAULT_LANG_HELP"
              "name" => "default_lang"
            ]
            "author.name" => array:5 [
              "type" => "text"
              "size" => "large"
              "label" => "PLUGIN_ADMIN.DEFAULT_AUTHOR"
              "help" => "PLUGIN_ADMIN.DEFAULT_AUTHOR_HELP"
              "name" => "author.name"
            ]
            "author.email" => array:6 [
              "type" => "text"
              "size" => "large"
              "label" => "PLUGIN_ADMIN.DEFAULT_EMAIL"
              "help" => "PLUGIN_ADMIN.DEFAULT_EMAIL_HELP"
              "validate" => array:1 [
                "type" => "email"
              ]
              "name" => "author.email"
            ]
            "taxonomies" => array:7 [
              "type" => "selectize"
              "size" => "large"
              "label" => "PLUGIN_ADMIN.TAXONOMY_TYPES"
              "classes" => "fancy"
              "help" => "PLUGIN_ADMIN.TAXONOMY_TYPES_HELP"
              "validate" => array:1 [
                "type" => "commalist"
              ]
              "name" => "taxonomies"
            ]
          ]
          "name" => "content"
        ]
        "summary" => array:5 [
          "type" => "section"
          "title" => "PLUGIN_ADMIN.PAGE_SUMMARY"
          "underline" => true
          "fields" => array:4 [
            "summary.enabled" => array:7 [
              "type" => "toggle"
              "label" => "PLUGIN_ADMIN.ENABLED"
              "highlight" => 1
              "help" => "PLUGIN_ADMIN.ENABLED_HELP"
              "options" => array:2 [
                1 => "PLUGIN_ADMIN.YES"
                0 => "PLUGIN_ADMIN.NO"
              ]
              "validate" => array:1 [
                "type" => "bool"
              ]
              "name" => "summary.enabled"
            ]
            "summary.size" => array:6 [
              "type" => "text"
              "size" => "x-small"
              "append" => "PLUGIN_ADMIN.CHARACTERS"
              "label" => "PLUGIN_ADMIN.SUMMARY_SIZE"
              "help" => "PLUGIN_ADMIN.SUMMARY_SIZE_HELP"
              "validate" => array:3 [
                "type" => "int"
                "min" => 0
                "max" => 65536
              ]
            ]
            "summary.format" => array:6 [
              "type" => "toggle"
              "label" => "PLUGIN_ADMIN.FORMAT"
              "classes" => "fancy"
              "help" => "PLUGIN_ADMIN.FORMAT_HELP"
              "highlight" => "short"
              "options" => array:2 [
                "short" => "PLUGIN_ADMIN.SHORT"
                "long" => "PLUGIN_ADMIN.LONG"
              ]
            ]
            "summary.delimiter" => array:4 [
              "type" => "text"
              "size" => "x-small"
              "label" => "PLUGIN_ADMIN.DELIMITER"
              "help" => "PLUGIN_ADMIN.DELIMITER_HELP"
            ]
          ]
          "name" => "summary"
        ]
        "metadata" => array:4 [
          "type" => "section"
          "title" => "PLUGIN_ADMIN.METADATA"
          "underline" => true
          "fields" => array:1 [
            "metadata" => array:5 [
              "type" => "array"
              "label" => "PLUGIN_ADMIN.METADATA"
              "help" => "PLUGIN_ADMIN.METADATA_HELP"
              "placeholder_key" => "PLUGIN_ADMIN.METADATA_KEY"
              "placeholder_value" => "PLUGIN_ADMIN.METADATA_VALUE"
            ]
          ]
        ]
        "routes" => array:4 [
          "type" => "section"
          "title" => "PLUGIN_ADMIN.REDIRECTS_AND_ROUTES"
          "underline" => true
          "fields" => array:2 [
            "redirects" => array:5 [
              "type" => "array"
              "label" => "PLUGIN_ADMIN.CUSTOM_REDIRECTS"
              "help" => "PLUGIN_ADMIN.CUSTOM_REDIRECTS_HELP"
              "placeholder_key" => "PLUGIN_ADMIN.CUSTOM_REDIRECTS_PLACEHOLDER_KEY"
              "placeholder_value" => "PLUGIN_ADMIN.CUSTOM_REDIRECTS_PLACEHOLDER_VALUE"
            ]
            "routes" => array:5 [
              "type" => "array"
              "label" => "PLUGIN_ADMIN.CUSTOM_ROUTES"
              "help" => "PLUGIN_ADMIN.CUSTOM_ROUTES_HELP"
              "placeholder_key" => "PLUGIN_ADMIN.CUSTOM_ROUTES_PLACEHOLDER_KEY"
              "placeholder_value" => "PLUGIN_ADMIN.CUSTOM_ROUTES_PLACEHOLDER_VALUE"
            ]
          ]
        ]
      ]
    ]
    
  2. array:1 [
      0 => "form"
    ]
    
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
vendor
/
rockettheme
/
toolbox
/
Blueprints
/
src
/
BlueprintForm.php
     */
    public function load()
    {
        // Only load and extend blueprint if it has not yet been loaded.
        if (empty($this->items) && $this->filename) {
            // Get list of files.
            $files = $this->getFiles($this->filename);
 
            // Load and extend blueprints.
            $data = $this->doLoad($files);
 
            $this->items = (array) array_shift($data);
 
            foreach ($data as $content) {
                $this->extend($content, true);
            }
        }
 
        // Import blueprints.
        $this->deepInit($this->items);
 
        return $this;
    }
 
    /**
     * Initialize blueprints with its dynamic fields.
     *
     * @return $this
     */
    public function init()
    {
        foreach ($this->dynamic as $key => $data) {
            // Locate field.
            $path = explode('/', $key);
            $current = &$this->items;
            foreach ($path as $field) {
                if (is_object($current)) {
                    // Handle objects.
                    if (!isset($current->{$field})) {
                        $current->{$field} = array();
Arguments
  1. array:2 [
      "title" => "PLUGIN_ADMIN.SITE"
      "form" => array:2 [
        "validation" => "loose"
        "fields" => array:4 [
          "content" => array:5 [
            "type" => "section"
            "title" => "PLUGIN_ADMIN.DEFAULTS"
            "underline" => true
            "fields" => array:5 [
              "title" => array:6 [
                "type" => "text"
                "label" => "PLUGIN_ADMIN.SITE_TITLE"
                "size" => "large"
                "placeholder" => "PLUGIN_ADMIN.SITE_TITLE_PLACEHOLDER"
                "help" => "PLUGIN_ADMIN.SITE_TITLE_HELP"
                "name" => "title"
              ]
              "default_lang" => array:6 [
                "type" => "text"
                "label" => "PLUGIN_ADMIN.SITE_DEFAULT_LANG"
                "size" => "x-small"
                "placeholder" => "PLUGIN_ADMIN.SITE_DEFAULT_LANG_PLACEHOLDER"
                "help" => "PLUGIN_ADMIN.SITE_DEFAULT_LANG_HELP"
                "name" => "default_lang"
              ]
              "author.name" => array:5 [
                "type" => "text"
                "size" => "large"
                "label" => "PLUGIN_ADMIN.DEFAULT_AUTHOR"
                "help" => "PLUGIN_ADMIN.DEFAULT_AUTHOR_HELP"
                "name" => "author.name"
              ]
              "author.email" => array:6 [
                "type" => "text"
                "size" => "large"
                "label" => "PLUGIN_ADMIN.DEFAULT_EMAIL"
                "help" => "PLUGIN_ADMIN.DEFAULT_EMAIL_HELP"
                "validate" => array:1 [
                  "type" => "email"
                ]
                "name" => "author.email"
              ]
              "taxonomies" => array:7 [
                "type" => "selectize"
                "size" => "large"
                "label" => "PLUGIN_ADMIN.TAXONOMY_TYPES"
                "classes" => "fancy"
                "help" => "PLUGIN_ADMIN.TAXONOMY_TYPES_HELP"
                "validate" => array:1 [
                  "type" => "commalist"
                ]
                "name" => "taxonomies"
              ]
            ]
            "name" => "content"
          ]
          "summary" => array:5 [
            "type" => "section"
            "title" => "PLUGIN_ADMIN.PAGE_SUMMARY"
            "underline" => true
            "fields" => array:4 [
              "summary.enabled" => array:7 [
                "type" => "toggle"
                "label" => "PLUGIN_ADMIN.ENABLED"
                "highlight" => 1
                "help" => "PLUGIN_ADMIN.ENABLED_HELP"
                "options" => array:2 [
                  1 => "PLUGIN_ADMIN.YES"
                  0 => "PLUGIN_ADMIN.NO"
                ]
                "validate" => array:1 [
                  "type" => "bool"
                ]
                "name" => "summary.enabled"
              ]
              "summary.size" => array:6 [
                "type" => "text"
                "size" => "x-small"
                "append" => "PLUGIN_ADMIN.CHARACTERS"
                "label" => "PLUGIN_ADMIN.SUMMARY_SIZE"
                "help" => "PLUGIN_ADMIN.SUMMARY_SIZE_HELP"
                "validate" => array:3 [
                  "type" => "int"
                  "min" => 0
                  "max" => 65536
                ]
              ]
              "summary.format" => array:6 [
                "type" => "toggle"
                "label" => "PLUGIN_ADMIN.FORMAT"
                "classes" => "fancy"
                "help" => "PLUGIN_ADMIN.FORMAT_HELP"
                "highlight" => "short"
                "options" => array:2 [
                  "short" => "PLUGIN_ADMIN.SHORT"
                  "long" => "PLUGIN_ADMIN.LONG"
                ]
              ]
              "summary.delimiter" => array:4 [
                "type" => "text"
                "size" => "x-small"
                "label" => "PLUGIN_ADMIN.DELIMITER"
                "help" => "PLUGIN_ADMIN.DELIMITER_HELP"
              ]
            ]
            "name" => "summary"
          ]
          "metadata" => array:4 [
            "type" => "section"
            "title" => "PLUGIN_ADMIN.METADATA"
            "underline" => true
            "fields" => array:1 [
              "metadata" => array:5 [
                "type" => "array"
                "label" => "PLUGIN_ADMIN.METADATA"
                "help" => "PLUGIN_ADMIN.METADATA_HELP"
                "placeholder_key" => "PLUGIN_ADMIN.METADATA_KEY"
                "placeholder_value" => "PLUGIN_ADMIN.METADATA_VALUE"
              ]
            ]
          ]
          "routes" => array:4 [
            "type" => "section"
            "title" => "PLUGIN_ADMIN.REDIRECTS_AND_ROUTES"
            "underline" => true
            "fields" => array:2 [
              "redirects" => array:5 [
                "type" => "array"
                "label" => "PLUGIN_ADMIN.CUSTOM_REDIRECTS"
                "help" => "PLUGIN_ADMIN.CUSTOM_REDIRECTS_HELP"
                "placeholder_key" => "PLUGIN_ADMIN.CUSTOM_REDIRECTS_PLACEHOLDER_KEY"
                "placeholder_value" => "PLUGIN_ADMIN.CUSTOM_REDIRECTS_PLACEHOLDER_VALUE"
              ]
              "routes" => array:5 [
                "type" => "array"
                "label" => "PLUGIN_ADMIN.CUSTOM_ROUTES"
                "help" => "PLUGIN_ADMIN.CUSTOM_ROUTES_HELP"
                "placeholder_key" => "PLUGIN_ADMIN.CUSTOM_ROUTES_PLACEHOLDER_KEY"
                "placeholder_value" => "PLUGIN_ADMIN.CUSTOM_ROUTES_PLACEHOLDER_VALUE"
              ]
            ]
          ]
        ]
      ]
    ]
    
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
system
/
src
/
Grav
/
Common
/
Config
/
CompiledBlueprints.php
 
    /**
     * Finalize configuration object.
     */
    protected function finalizeObject()
    {
    }
 
    /**
     * Load single configuration file and append it to the correct position.
     *
     * @param  string  $name  Name of the position.
     * @param  array   $files  Files to be loaded.
     */
    protected function loadFile($name, $files)
    {
        // Load blueprint file.
        $blueprint = new Blueprint($files);
 
        $this->object->embed($name, $blueprint->load()->toArray(), '/', true);
    }
 
    /**
     * Load and join all configuration files.
     *
     * @return bool
     * @internal
     */
    protected function loadFiles()
    {
        $this->createObject();
 
        // Convert file list into parent list.
        $list = [];
        foreach ($this->files as $files) {
            foreach ($files as $name => $item) {
                $list[$name][] = $this->path . $item['file'];
            }
        }
 
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
system
/
src
/
Grav
/
Common
/
Config
/
CompiledBlueprints.php
     * Load and join all configuration files.
     *
     * @return bool
     * @internal
     */
    protected function loadFiles()
    {
        $this->createObject();
 
        // Convert file list into parent list.
        $list = [];
        foreach ($this->files as $files) {
            foreach ($files as $name => $item) {
                $list[$name][] = $this->path . $item['file'];
            }
        }
 
        // Load files.
        foreach ($list as $name => $files) {
            $this->loadFile($name, $files);
        }
 
        $this->finalizeObject();
 
        return true;
    }
 
    protected function getState()
    {
        return $this->object->getState();
    }
}
 
Arguments
  1. "site"
    
  2. array:1 [
      0 => "/home/httpd/vhosts/ogive.ch/dominikrohr/system/blueprints/config/site.yaml"
    ]
    
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
system
/
src
/
Grav
/
Common
/
Config
/
CompiledBase.php
     * @return int Timestamp of compiled configuration
     */
    public function timestamp()
    {
        return $this->timestamp ?: time();
    }
 
    /**
     * Load the configuration.
     *
     * @return mixed
     */
    public function load()
    {
        if ($this->object) {
            return $this->object;
        }
 
        $filename = $this->createFilename();
        if (!$this->loadCompiledFile($filename) && $this->loadFiles()) {
            $this->saveCompiledFile($filename);
        }
 
        return $this->object;
    }
 
    /**
     * Returns checksum from the configuration files.
     *
     * You can set $this->checksum = false to disable this check.
     *
     * @return bool|string
     */
    public function checksum()
    {
        if (!isset($this->checksum)) {
            $this->checksum = md5(json_encode($this->files) . $this->version);
        }
 
        return $this->checksum;
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
system
/
src
/
Grav
/
Common
/
Service
/
ConfigServiceProvider.php
 
    public static function blueprints(Container $container)
    {
        /** Setup $setup */
        $setup = $container['setup'];
 
        /** @var UniformResourceLocator $locator */
        $locator = $container['locator'];
 
        $cache =  $locator->findResource('cache://compiled/blueprints', true, true);
 
        $files = [];
        $paths = $locator->findResources('blueprints://config');
        $files += (new ConfigFileFinder)->locateFiles($paths);
        $paths = $locator->findResources('plugins://');
        $files += (new ConfigFileFinder)->setBase('plugins')->locateInFolders($paths, 'blueprints');
 
        $blueprints = new CompiledBlueprints($cache, $files, GRAV_ROOT);
 
        return $blueprints->name("master-{$setup->environment}")->load();
    }
 
    public static function load(Container $container)
    {
        /** Setup $setup */
        $setup = $container['setup'];
 
        /** @var UniformResourceLocator $locator */
        $locator = $container['locator'];
 
        $cache =  $locator->findResource('cache://compiled/config', true, true);
 
        $files = [];
        $paths = $locator->findResources('config://');
        $files += (new ConfigFileFinder)->locateFiles($paths);
        $paths = $locator->findResources('plugins://');
        $files += (new ConfigFileFinder)->setBase('plugins')->locateInFolders($paths);
 
        $config = new CompiledConfig($cache, $files, GRAV_ROOT);
        $config->setBlueprints(function() use ($container) {
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
system
/
src
/
Grav
/
Common
/
Service
/
ConfigServiceProvider.php
use Grav\Common\Config\CompiledBlueprints;
use Grav\Common\Config\CompiledConfig;
use Grav\Common\Config\CompiledLanguages;
use Grav\Common\Config\Config;
use Grav\Common\Config\ConfigFileFinder;
use Grav\Common\Config\Setup;
use Pimple\Container;
use Pimple\ServiceProviderInterface;
use RocketTheme\Toolbox\ResourceLocator\UniformResourceLocator;
 
class ConfigServiceProvider implements ServiceProviderInterface
{
    public function register(Container $container)
    {
        $container['setup'] = function ($c) {
            return static::setup($c);
        };
 
        $container['blueprints'] = function ($c) {
            return static::blueprints($c);
        };
 
        $container['config'] = function ($c) {
            return static::load($c);
        };
 
        $container['languages'] = function ($c) {
            return static::languages($c);
        };
    }
 
    public static function setup(Container $container)
    {
        return new Setup($container);
    }
 
    public static function blueprints(Container $container)
    {
        /** Setup $setup */
        $setup = $container['setup'];
Arguments
  1. Grav {}
    
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
vendor
/
pimple
/
pimple
/
src
/
Pimple
/
Container.php
    {
        if (!isset($this->keys[$id])) {
            throw new \InvalidArgumentException(sprintf('Identifier "%s" is not defined.', $id));
        }
 
        if (
            isset($this->raw[$id])
            || !is_object($this->values[$id])
            || isset($this->protected[$this->values[$id]])
            || !method_exists($this->values[$id], '__invoke')
        ) {
            return $this->values[$id];
        }
 
        if (isset($this->factories[$this->values[$id]])) {
            return $this->values[$id]($this);
        }
 
        $raw = $this->values[$id];
        $val = $this->values[$id] = $raw($this);
        $this->raw[$id] = $raw;
 
        $this->frozen[$id] = true;
 
        return $val;
    }
 
    /**
     * Checks if a parameter or an object is set.
     *
     * @param string $id The unique identifier for the parameter or object
     *
     * @return bool
     */
    public function offsetExists($id)
    {
        return isset($this->keys[$id]);
    }
 
    /**
Arguments
  1. Grav {}
    
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
system
/
src
/
Grav
/
Common
/
Service
/
ConfigServiceProvider.php
 
    public static function load(Container $container)
    {
        /** Setup $setup */
        $setup = $container['setup'];
 
        /** @var UniformResourceLocator $locator */
        $locator = $container['locator'];
 
        $cache =  $locator->findResource('cache://compiled/config', true, true);
 
        $files = [];
        $paths = $locator->findResources('config://');
        $files += (new ConfigFileFinder)->locateFiles($paths);
        $paths = $locator->findResources('plugins://');
        $files += (new ConfigFileFinder)->setBase('plugins')->locateInFolders($paths);
 
        $config = new CompiledConfig($cache, $files, GRAV_ROOT);
        $config->setBlueprints(function() use ($container) {
            return $container['blueprints'];
        });
 
        return $config->name("master-{$setup->environment}")->load();
    }
 
    public static function languages(Container $container)
    {
        /** @var Setup $setup */
        $setup = $container['setup'];
 
        /** @var Config $config */
        $config = $container['config'];
 
        /** @var UniformResourceLocator $locator */
        $locator = $container['locator'];
 
        $cache = $locator->findResource('cache://compiled/languages', true, true);
        $files = [];
 
        // Process languages only if enabled in configuration.
Arguments
  1. "blueprints"
    
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
system
/
src
/
Grav
/
Common
/
Data
/
Data.php
     * @return array
     */
    public function extra()
    {
        return $this->blueprints()->extra($this->items);
    }
 
    /**
     * Return blueprints.
     *
     * @return Blueprint
     */
    public function blueprints()
    {
        if (!$this->blueprints){
            $this->blueprints = new Blueprint;
        } elseif (is_callable($this->blueprints)) {
            // Lazy load blueprints.
            $blueprints = $this->blueprints;
            $this->blueprints = $blueprints();
        }
        return $this->blueprints;
    }
 
    /**
     * Save data if storage has been defined.
     */
    public function save()
    {
        $file = $this->file();
        if ($file) {
            $file->save($this->items);
        }
    }
 
    /**
     * Returns whether the data already exists in the storage.
     *
     * NOTE: This method does not check if the data is current.
     *
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
system
/
src
/
Grav
/
Common
/
Data
/
Data.php
    {
        return $this->blueprints()->getDefaults();
    }
 
    /**
     * Set default values by using blueprints.
     *
     * @param string  $name       Dot separated path to the requested value.
     * @param mixed   $value      Value to be joined.
     * @param string  $separator  Separator, defaults to '.'
     * @return $this
     */
    public function joinDefaults($name, $value, $separator = '.')
    {
        if (is_object($value)) {
            $value = (array) $value;
        }
        $old = $this->get($name, null, $separator);
        if ($old !== null) {
            $value = $this->blueprints()->mergeData($value, $old, $name, $separator);
        }
 
        $this->set($name, $value, $separator);
 
        return $this;
    }
 
    /**
     * Get value from the configuration and join it with given data.
     *
     * @param string  $name       Dot separated path to the requested value.
     * @param array   $value      Value to be joined.
     * @param string  $separator  Separator, defaults to '.'
     * @return array
     * @throws \RuntimeException
     */
    public function getJoined($name, $value, $separator = '.')
    {
        if (is_object($value)) {
            $value = (array) $value;
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
system
/
src
/
Grav
/
Common
/
Themes.php
 
            if (!stream_wrapper_register($scheme, $type)) {
                throw new \InvalidArgumentException("Stream '{$type}' could not be initialized.");
            }
        }
 
        // Load languages after streams has been properly initialized
        $this->loadLanguages($this->config);
    }
 
    /**
     * Load theme configuration.
     *
     * @param string $name   Theme name
     * @param Config $config Configuration class
     */
    protected function loadConfiguration($name, Config $config)
    {
        $themeConfig = CompiledYamlFile::instance("themes://{$name}/{$name}" . YAML_EXT)->content();
        $config->joinDefaults("themes.{$name}", $themeConfig);
    }
 
    /**
     * Load theme languages.
     *
     * @param Config $config Configuration class
     */
    protected function loadLanguages(Config $config)
    {
        /** @var UniformResourceLocator $locator */
        $locator = $this->grav['locator'];
 
        if ($config->get('system.languages.translations', true)) {
            $language_file = $locator->findResource("theme://languages" . YAML_EXT);
            if ($language_file) {
                $language = CompiledYamlFile::instance($language_file)->content();
                $this->grav['languages']->mergeRecursive($language);
            }
            $languages_folder = $locator->findResource("theme://languages/");
            if (file_exists($languages_folder)) {
Arguments
  1. "themes.herrrohr"
    
  2. array:4 [
      "enabled" => true
      "default_lang" => "de"
      "dropdown" => array:1 [
        "enabled" => false
      ]
      "streams" => array:1 [
        "schemes" => array:1 [
          "theme" => array:2 [
            "type" => "ReadOnlyStream"
            "paths" => array:1 [
              0 => "user/themes/herrrohr"
            ]
          ]
        ]
      ]
    ]
    
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
system
/
src
/
Grav
/
Common
/
Themes.php
        $this->config->set('theme', $config->get('themes.' . $name));
 
        if (empty($class)) {
            $class = new Theme($grav, $config, $name);
        }
 
        return $class;
    }
 
    /**
     * Configure and prepare streams for current template.
     *
     * @throws \InvalidArgumentException
     */
    public function configure()
    {
        $name = $this->current();
        $config = $this->config;
 
        $this->loadConfiguration($name, $config);
 
        /** @var UniformResourceLocator $locator */
        $locator = $this->grav['locator'];
 
        $registered = stream_get_wrappers();
 
        $schemes = $config->get("themes.{$name}.streams.schemes", []);
        $schemes += [
            'theme' => [
                'type' => 'ReadOnlyStream',
                'paths' => $locator->findResources("themes://{$name}", false)
            ]
        ];
 
        foreach ($schemes as $scheme => $config) {
            if (isset($config['paths'])) {
                $locator->addPath($scheme, '', $config['paths']);
            }
            if (isset($config['prefixes'])) {
                foreach ($config['prefixes'] as $prefix => $paths) {
Arguments
  1. "herrrohr"
    
  2. Config {}
    
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
system
/
src
/
Grav
/
Common
/
Themes.php
     * Themes constructor.
     *
     * @param Grav $grav
     */
    public function __construct(Grav $grav)
    {
        parent::__construct();
 
        $this->grav = $grav;
        $this->config = $grav['config'];
 
        // Register instance as autoloader for theme inheritance
        spl_autoload_register([$this, 'autoloadTheme']);
    }
 
    public function init()
    {
        /** @var Themes $themes */
        $themes = $this->grav['themes'];
        $themes->configure();
 
        $this->initTheme();
    }
 
    public function initTheme()
    {
        if ($this->inited === false) {
            /** @var Themes $themes */
            $themes = $this->grav['themes'];
 
            try {
                $instance = $themes->load();
            } catch (\InvalidArgumentException $e) {
                throw new \RuntimeException($this->current() . ' theme could not be found');
            }
 
            if ($instance instanceof EventSubscriberInterface) {
                /** @var EventDispatcher $events */
                $events = $this->grav['events'];
 
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
system
/
src
/
Grav
/
Common
/
Processors
/
ThemesProcessor.php
<?php
/**
 * @package    Grav.Common.Processors
 *
 * @copyright  Copyright (C) 2014 - 2017 RocketTheme, LLC. All rights reserved.
 * @license    MIT License; see LICENSE file for details.
 */
 
namespace Grav\Common\Processors;
 
class ThemesProcessor extends ProcessorBase implements ProcessorInterface
{
    public $id = 'themes';
    public $title = 'Themes';
 
    public function process()
    {
        $this->container['themes']->init();
    }
}
 
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
system
/
src
/
Grav
/
Common
/
Grav.php
        } elseif ($values) {
            $instance = self::$instance;
            foreach ($values as $key => $value) {
                $instance->offsetSet($key, $value);
            }
        }
 
        return self::$instance;
    }
 
    /**
     * Process a request
     */
    public function process()
    {
        // process all processors (e.g. config, initialize, assets, ..., render)
        foreach ($this->processors as $processor) {
            $processor = $this[$processor];
            $this->measureTime($processor->id, $processor->title, function () use ($processor) {
                $processor->process();
            });
        }
 
        /** @var Debugger $debugger */
        $debugger = $this['debugger'];
        $debugger->render();
 
        register_shutdown_function([$this, 'shutdown']);
    }
 
    /**
     * Set the system locale based on the language and configuration
     */
    public function setLocale()
    {
        // Initialize Locale if set and configured.
        if ($this['language']->enabled() && $this['config']->get('system.languages.override_locale')) {
            $language = $this['language']->getLanguage();
            setlocale(LC_ALL, count($language < 3) ? ($language . '_' . strtoupper($language)) : $language);
        } elseif ($this['config']->get('system.default_locale')) {
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
system
/
src
/
Grav
/
Common
/
Grav.php
     *
     * @param  array $values
     *
     * @return static
     */
    protected static function load(array $values)
    {
        $container = new static($values);
 
        $container['grav'] = $container;
 
        $container['debugger'] = new Debugger();
        $debugger = $container['debugger'];
 
        // closure that measures time by wrapping a function into startTimer and stopTimer
        // The debugger can be passed to the closure. Should be more performant
        // then to get it from the container all time.
        $container->measureTime = function ($timerId, $timerTitle, $callback) use ($debugger) {
            $debugger->startTimer($timerId, $timerTitle);
            $callback();
            $debugger->stopTimer($timerId);
        };
 
        $container->measureTime('_services', 'Services', function () use ($container) {
            $container->registerServices($container);
        });
 
        return $container;
    }
 
    /**
     * Register all services
     * Services are defined in the diMap. They can either only the class
     * of a Service Provider or a pair of serviceKey => serviceClass that
     * gets directly mapped into the container.
     *
     * @return void
     */
    protected function registerServices()
    {
/
home
/
httpd
/
vhosts
/
ogive.ch
/
dominikrohr
/
system
/
src
/
Grav
/
Common
/
Grav.php
 
                ob_end_flush();
                @ob_flush();
                flush();
            }
        }
 
        // Run any time consuming tasks.
        $this->fireEvent('onShutdown');
    }
 
    /**
     * Magic Catch All Function
     * Used to call closures like measureTime on the instance.
     * Source: http://stackoverflow.com/questions/419804/closures-as-class-members
     */
    public function __call($method, $args)
    {
        $closure = $this->$method;
        call_user_func_array($closure, $args);
    }
 
    /**
     * Initialize and return a Grav instance
     *
     * @param  array $values
     *
     * @return static
     */
    protected static function load(array $values)
    {
        $container = new static($values);
 
        $container['grav'] = $container;
 
        $container['debugger'] = new Debugger();
        $debugger = $container['debugger'];
 
        // closure that measures time by wrapping a function into startTimer and stopTimer
        // The debugger can be passed to the closure. Should be more performant
Fatal error: Uncaught ArgumentCountError: Too few arguments to function Symfony\Component\VarDumper\Cloner\AbstractCloner::handleError(), 4 passed in /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/symfony/var-dumper/Caster/ReflectionCaster.php on line 331 and exactly 5 expected in /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/symfony/var-dumper/Cloner/AbstractCloner.php:308 Stack trace: #0 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/symfony/var-dumper/Caster/ReflectionCaster.php(331): Symfony\Component\VarDumper\Cloner\AbstractCloner->handleError(8192, 'Method Reflecti...', '/home/httpd/vho...', 331) #1 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/symfony/var-dumper/Caster/ReflectionCaster.php(321): Symfony\Component\VarDumper\Caster\ReflectionCaster::addMap(Array, Object(ReflectionFunction), Array, '') #2 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/symfony/var-dumper/Caster/ReflectionCaster.php(217): Symfony\Component\VarDumper\Caster\ReflectionCaster::addExtra(Array, Object(ReflectionFunction)) #3 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/symfony/var-dumper/Caster/ReflectionCaster.php(51): Symfony\Component\VarDumper\Caster\ReflectionCaster::castFunctionAbstract(Object(ReflectionFunction), Array, Object(Symfony\Component\VarDumper\Cloner\Stub), false) #4 [internal function]: Symfony\Component\VarDumper\Caster\ReflectionCaster::castClosure(Object(ReflectionFunction), Array, Object(Symfony\Component\VarDumper\Cloner\Stub), false, 1) #5 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/symfony/var-dumper/Cloner/AbstractCloner.php(291): call_user_func('Symfony\\Compone...', Object(Closure), Array, Object(Symfony\Component\VarDumper\Cloner\Stub), false, 1) #6 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/symfony/var-dumper/Cloner/AbstractCloner.php(246): Symfony\Component\VarDumper\Cloner\AbstractCloner->callCaster('Symfony\\Compone...', Object(Closure), Array, Object(Symfony\Component\VarDumper\Cloner\Stub), false) #7 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/symfony/var-dumper/Cloner/VarCloner.php(154): Symfony\Component\VarDumper\Cloner\AbstractCloner->castObject(Object(Symfony\Component\VarDumper\Cloner\Stub), false) #8 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/symfony/var-dumper/Cloner/AbstractCloner.php(192): Symfony\Component\VarDumper\Cloner\VarCloner->doClone(Object(Closure)) #9 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/filp/whoops/src/Whoops/Util/TemplateHelper.php(168): Symfony\Component\VarDumper\Cloner\AbstractCloner->cloneVar(Object(Closure), 1) #10 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/filp/whoops/src/Whoops/Util/TemplateHelper.php(207): Whoops\Util\TemplateHelper->dump(Object(Closure)) #11 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/filp/whoops/src/Whoops/Resources/views/frame_code.html.php(37): Whoops\Util\TemplateHelper->dumpArgs(Object(Whoops\Exception\Frame)) #12 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/filp/whoops/src/Whoops/Util/TemplateHelper.php(249): require('/home/httpd/vho...') #13 [internal function]: Whoops\Util\TemplateHelper->Whoops\Util\{closure}('/home/httpd/vho...', Array) #14 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/filp/whoops/src/Whoops/Util/TemplateHelper.php(247): call_user_func(Object(Closure), '/home/httpd/vho...', Array) #15 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/filp/whoops/src/Whoops/Resources/views/panel_details.html.php(1): Whoops\Util\TemplateHelper->render('/home/httpd/vho...') #16 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/filp/whoops/src/Whoops/Util/TemplateHelper.php(249): require('/home/httpd/vho...') #17 [internal function]: Whoops\Util\TemplateHelper->Whoops\Util\{closure}('/home/httpd/vho...', Array) #18 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/filp/whoops/src/Whoops/Util/TemplateHelper.php(247): call_user_func(Object(Closure), '/home/httpd/vho...', Array) #19 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/filp/whoops/src/Whoops/Resources/views/panel_details_outer.html.php(2): Whoops\Util\TemplateHelper->render('/home/httpd/vho...') #20 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/filp/whoops/src/Whoops/Util/TemplateHelper.php(249): require('/home/httpd/vho...') #21 [internal function]: Whoops\Util\TemplateHelper->Whoops\Util\{closure}('/home/httpd/vho...', Array) #22 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/filp/whoops/src/Whoops/Util/TemplateHelper.php(247): call_user_func(Object(Closure), '/home/httpd/vho...', Array) #23 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/filp/whoops/src/Whoops/Resources/views/layout.html.php(21): Whoops\Util\TemplateHelper->render('/home/httpd/vho...') #24 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/filp/whoops/src/Whoops/Util/TemplateHelper.php(249): require('/home/httpd/vho...') #25 [internal function]: Whoops\Util\TemplateHelper->Whoops\Util\{closure}('/home/httpd/vho...', Array) #26 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/filp/whoops/src/Whoops/Util/TemplateHelper.php(247): call_user_func(Object(Closure), '/home/httpd/vho...', Array) #27 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/filp/whoops/src/Whoops/Handler/PrettyPageHandler.php(264): Whoops\Util\TemplateHelper->render('/home/httpd/vho...') #28 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/filp/whoops/src/Whoops/Run.php(272): Whoops\Handler\PrettyPageHandler->handle(Object(Whoops\Exception\ErrorException)) #29 [internal function]: Whoops\Run->handleException(Object(Whoops\Exception\ErrorException)) #30 {main} thrown in /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/symfony/var-dumper/Cloner/AbstractCloner.php on line 308 Fatal error: Uncaught ArgumentCountError: Too few arguments to function Symfony\Component\VarDumper\Cloner\AbstractCloner::handleError(), 4 passed and exactly 5 expected in /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/symfony/var-dumper/Cloner/AbstractCloner.php:308 Stack trace: #0 [internal function]: Symfony\Component\VarDumper\Cloner\AbstractCloner->handleError(8192, 'DateTime::__con...', '/home/httpd/vho...', 318) #1 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/monolog/monolog/src/Monolog/Logger.php(318): DateTime->__construct(NULL, Object(DateTimeZone)) #2 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/monolog/monolog/src/Monolog/Logger.php(416): Monolog\Logger->addRecord(500, 'Uncaught Argume...', Array) #3 /home/httpd/vhosts/ogive.ch/dominikrohr/system/src/Grav/Common/Errors/Errors.php(69): Monolog\Logger->addCritical('Uncaught Argume...') #4 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/filp/whoops/src/Whoops/Handler/CallbackHandler.php(50): Grav\Common\Errors\Errors->Grav\Common\Errors\{closure}(Object(Whoops\Exception\ErrorException), Object(Whoops\Exception\Inspector), Object(Whoops\Run)) #5 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/filp/whoops/src/Whoops/Run.php(272): Whoops\Handler\CallbackHandler->handle(Object(Whoops\Exception\ErrorException)) #6 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/filp/whoops/src/Whoops/Run.php(353): Whoops\Run->handleException(Object(Whoops\Exception\ErrorException)) #7 /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/filp/whoops/src/Whoops/Run.php(378): Whoops\Run->handleError(1, 'Uncaught Argume...', '/home/httpd/vho...', 308) #8 /home/httpd/vhosts/ogive.ch/dominikrohr/system/src/Grav/Common/Errors/SystemFacade.php(36): Whoops\Run->handleShutdown() #9 [internal function]: Grav\Common\Errors\SystemFacade->handleShutdown() #10 {main} thrown in /home/httpd/vhosts/ogive.ch/dominikrohr/vendor/symfony/var-dumper/Cloner/AbstractCloner.php on line 308