Deprecated: Function get_magic_quotes_gpc() is deprecated in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/libraries/fof30/Input/Input.php on line 99

Deprecated: Function get_magic_quotes_gpc() is deprecated in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/libraries/fof30/Input/Input.php on line 99
Crikey! There was an error...
Twig_Error_Runtime
An exception has been thrown during the rendering of a template ("array_key_exists(): Using array_key_exists() on objects is deprecated. Use isset() or property_exists() instead"). Twig_Error_Runtime thrown with message "An exception has been thrown during the rendering of a template ("array_key_exists(): Using array_key_exists() on objects is deprecated. Use isset() or property_exists() instead")." Stacktrace: #22 Twig_Error_Runtime in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/media/gantry5/engines/nucleus/templates/page.html.twig:1 #21 Whoops\Exception\ErrorException in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/libraries/gantry5/vendor/twig/twig/lib/Twig/Template.php:582 #20 Gantry\Component\Whoops\SystemFacade:handleError in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/libraries/gantry5/vendor/twig/twig/lib/Twig/Template.php:582 #19 Twig_Template:getAttribute in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/cache/gantry5/rt_ethereal/twig/bc/bc63e3df45cb7e5e61b6d51b6647ab3c7b5c05ee976398a13264a3de6a5025be.php:30 #18 __TwigTemplate_419b3bbeb16ad71aab9a97c0d165451fa1b924bccdd3aaaea9b7b3406bb1d8b1:doDisplay in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/libraries/gantry5/vendor/twig/twig/lib/Twig/Template.php:432 #17 Twig_Template:displayWithErrorHandling in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/libraries/gantry5/vendor/twig/twig/lib/Twig/Template.php:403 #16 Twig_Template:display in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/cache/gantry5/rt_ethereal/twig/52/52b72b29040523530f8d2792e2abc4ca2dc20b1ca5fe72128f4141898eba7725.php:24 #15 __TwigTemplate_fd4610d5ee7b82ce73c066d370b1afdb016b4f31d5358fd9aa1d21a3de0b33e9:doDisplay in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/libraries/gantry5/vendor/twig/twig/lib/Twig/Template.php:432 #14 Twig_Template:displayWithErrorHandling in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/libraries/gantry5/vendor/twig/twig/lib/Twig/Template.php:403 #13 Twig_Template:display in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/cache/gantry5/rt_ethereal/twig/52/522ec158b00a82bd9e5ec9dde297ec57c90f0c90c7ac0f94a05c0892d8de522b.php:24 #12 __TwigTemplate_d55477c8db385f4731d30b9a2f8c324263f963ab3bd53319f14478d2dd57c946:doDisplay in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/libraries/gantry5/vendor/twig/twig/lib/Twig/Template.php:432 #11 Twig_Template:displayWithErrorHandling in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/libraries/gantry5/vendor/twig/twig/lib/Twig/Template.php:403 #10 Twig_Template:display in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/libraries/gantry5/vendor/twig/twig/lib/Twig/Template.php:411 #9 Twig_Template:render in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/libraries/gantry5/vendor/twig/twig/lib/Twig/Environment.php:363 #8 Twig_Environment:render in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/libraries/gantry5/classes/Gantry/Component/Theme/AbstractTheme.php:162 #7 Gantry\Component\Theme\AbstractTheme:render in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/templates/rt_ethereal/index.php:23 #6 require in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/libraries/src/Document/HtmlDocument.php:668 #5 Joomla\CMS\Document\HtmlDocument:_loadTemplate in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/libraries/src/Document/HtmlDocument.php:730 #4 Joomla\CMS\Document\HtmlDocument:_fetchTemplate in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/libraries/src/Document/HtmlDocument.php:545 #3 Joomla\CMS\Document\HtmlDocument:parse in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/libraries/src/Application/CMSApplication.php:1030 #2 Joomla\CMS\Application\CMSApplication:render in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/libraries/src/Application/SiteApplication.php:778 #1 Joomla\CMS\Application\SiteApplication:render in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/libraries/src/Application/CMSApplication.php:202 #0 Joomla\CMS\Application\CMSApplication:execute in /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/index.php:49
Stack frames (23)
22
Twig_Error_Runtime
/
home
/
ppaa369904
/
domains
/
cacaoimpro.nl
/
public_html
/
zaanstreek
/
media
/
gantry5
/
engines
/
nucleus
/
templates
/
page.html.twig
1
21
Whoops
\
Exception
\
ErrorException
/
vendor
/
twig
/
twig
/
lib
/
Twig
/
Template.php
582
20
Gantry
\
Component
\
Whoops
\
SystemFacade
handleError
/
vendor
/
twig
/
twig
/
lib
/
Twig
/
Template.php
582
19
Twig_Template
getAttribute
/
home
/
ppaa369904
/
domains
/
cacaoimpro.nl
/
public_html
/
zaanstreek
/
cache
/
gantry5
/
rt_ethereal
/
twig
/
bc
/
bc63e3df45cb7e5e61b6d51b6647ab3c7b5c05ee976398a13264a3de6a5025be.php
30
18
__TwigTemplate_419b3bbeb16ad71aab9a97c0d165451fa1b924bccdd3aaaea9b7b3406bb1d8b1
doDisplay
/
vendor
/
twig
/
twig
/
lib
/
Twig
/
Template.php
432
17
Twig_Template
displayWithErrorHandling
/
vendor
/
twig
/
twig
/
lib
/
Twig
/
Template.php
403
16
Twig_Template
display
/
home
/
ppaa369904
/
domains
/
cacaoimpro.nl
/
public_html
/
zaanstreek
/
cache
/
gantry5
/
rt_ethereal
/
twig
/
52
/
52b72b29040523530f8d2792e2abc4ca2dc20b1ca5fe72128f4141898eba7725.php
24
15
__TwigTemplate_fd4610d5ee7b82ce73c066d370b1afdb016b4f31d5358fd9aa1d21a3de0b33e9
doDisplay
/
vendor
/
twig
/
twig
/
lib
/
Twig
/
Template.php
432
14
Twig_Template
displayWithErrorHandling
/
vendor
/
twig
/
twig
/
lib
/
Twig
/
Template.php
403
13
Twig_Template
display
/
home
/
ppaa369904
/
domains
/
cacaoimpro.nl
/
public_html
/
zaanstreek
/
cache
/
gantry5
/
rt_ethereal
/
twig
/
52
/
522ec158b00a82bd9e5ec9dde297ec57c90f0c90c7ac0f94a05c0892d8de522b.php
24
12
__TwigTemplate_d55477c8db385f4731d30b9a2f8c324263f963ab3bd53319f14478d2dd57c946
doDisplay
/
vendor
/
twig
/
twig
/
lib
/
Twig
/
Template.php
432
11
Twig_Template
displayWithErrorHandling
/
vendor
/
twig
/
twig
/
lib
/
Twig
/
Template.php
403
10
Twig_Template
display
/
vendor
/
twig
/
twig
/
lib
/
Twig
/
Template.php
411
9
Twig_Template
render
/
vendor
/
twig
/
twig
/
lib
/
Twig
/
Environment.php
363
8
Twig_Environment
render
/
classes
/
Gantry
/
Component
/
Theme
/
AbstractTheme.php
162
7
Gantry
\
Component
\
Theme
\
AbstractTheme
render
/
home
/
ppaa369904
/
domains
/
cacaoimpro.nl
/
public_html
/
zaanstreek
/
templates
/
rt_ethereal
/
index.php
23
6
require
/
home
/
ppaa369904
/
domains
/
cacaoimpro.nl
/
public_html
/
zaanstreek
/
libraries
/
src
/
Document
/
HtmlDocument.php
668
5
Joomla
\
CMS
\
Document
\
HtmlDocument
_loadTemplate
/
home
/
ppaa369904
/
domains
/
cacaoimpro.nl
/
public_html
/
zaanstreek
/
libraries
/
src
/
Document
/
HtmlDocument.php
730
4
Joomla
\
CMS
\
Document
\
HtmlDocument
_fetchTemplate
/
home
/
ppaa369904
/
domains
/
cacaoimpro.nl
/
public_html
/
zaanstreek
/
libraries
/
src
/
Document
/
HtmlDocument.php
545
3
Joomla
\
CMS
\
Document
\
HtmlDocument
parse
/
home
/
ppaa369904
/
domains
/
cacaoimpro.nl
/
public_html
/
zaanstreek
/
libraries
/
src
/
Application
/
CMSApplication.php
1030
2
Joomla
\
CMS
\
Application
\
CMSApplication
render
/
home
/
ppaa369904
/
domains
/
cacaoimpro.nl
/
public_html
/
zaanstreek
/
libraries
/
src
/
Application
/
SiteApplication.php
778
1
Joomla
\
CMS
\
Application
\
SiteApplication
render
/
home
/
ppaa369904
/
domains
/
cacaoimpro.nl
/
public_html
/
zaanstreek
/
libraries
/
src
/
Application
/
CMSApplication.php
202
0
Joomla
\
CMS
\
Application
\
CMSApplication
execute
/
home
/
ppaa369904
/
domains
/
cacaoimpro.nl
/
public_html
/
zaanstreek
/
index.php
49
{%- do gantry.debugger.startTimer('render', 'Rendering page') %}
{%- do gantry.theme.setLayout() -%}
{%- do gantry.theme.loadAtoms() -%}
{%- set segments = gantry.theme.segments() -%}
 
{%- set content %}
    {% if gantry.theme.hasContent() %}
        {% block content %}
        {% endblock %}
    {% endif %}
{% endset -%}
 
{%- set offcanvas = null -%}
{%- for segment in segments if segment.type == 'offcanvas' %}
    {%- set offcanvas = segment -%}
{% endfor -%}
 
{%- set page_offcanvas %}
    {% block page_offcanvas %}
        {% if offcanvas %}
            {% include '@nucleus/layout/' ~ offcanvas.type ~ '.html.twig' with { 'segment': offcanvas } -%}
        {% endif %}
    {% endblock %}
{% endset -%}
 
{%- set page_offcanvas = page_offcanvas|trim ?: '' %}
{%- set offcanvas_position = page_offcanvas ? offcanvas.attributes.position|default('g-offcanvas-left') : '' -%}
 
{%- set page_layout %}
    {% block page_layout %}
    {% for segment in segments if segment.type != 'offcanvas' %}
        {% include '@nucleus/layout/' ~ segment.type ~ '.html.twig' with { 'segments': segment.children } %}
    {% endfor %}
    {% endblock %}
{% endset -%}
 
{%- set page_top %}
    {% block page_top %}
    {% endblock %}
    {{ gantry.document.getHtml('top')|join("\n    ")|raw }}
            }
 
            if ($ignoreStrictCheck || !$this->env->isStrictVariables()) {
                return;
            }
 
            if (null === $object) {
                $message = sprintf('Impossible to invoke a method ("%s") on a null variable.', $item);
            } elseif (is_array($object)) {
                $message = sprintf('Impossible to invoke a method ("%s") on an array.', $item);
            } else {
                $message = sprintf('Impossible to invoke a method ("%s") on a %s variable ("%s").', $item, gettype($object), $object);
            }
 
            throw new Twig_Error_Runtime($message, -1, $this->getSourceContext());
        }
 
        // object property
        if (self::METHOD_CALL !== $type && !$object instanceof self) { // Twig_Template does not have public properties, and we don't want to allow access to internal ones
            if (isset($object->$item) || array_key_exists((string) $item, $object)) {
                if ($isDefinedTest) {
                    return true;
                }
 
                if ($this->env->hasExtension('Twig_Extension_Sandbox')) {
                    $this->env->getExtension('Twig_Extension_Sandbox')->checkPropertyAllowed($object, $item);
                }
 
                return $object->$item;
            }
        }
 
        $class = get_class($object);
 
        // object method
        if (!isset(self::$cache[$class])) {
            // get_class_methods returns all methods accessible in the scope, but we only want public ones to be accessible in templates
            if ($object instanceof self) {
                $ref = new ReflectionClass($class);
                $methods = array();
Exception message: array_key_exists(): Using array_key_exists() on objects is deprecated. Use isset() or property_exists() instead
            }
 
            if ($ignoreStrictCheck || !$this->env->isStrictVariables()) {
                return;
            }
 
            if (null === $object) {
                $message = sprintf('Impossible to invoke a method ("%s") on a null variable.', $item);
            } elseif (is_array($object)) {
                $message = sprintf('Impossible to invoke a method ("%s") on an array.', $item);
            } else {
                $message = sprintf('Impossible to invoke a method ("%s") on a %s variable ("%s").', $item, gettype($object), $object);
            }
 
            throw new Twig_Error_Runtime($message, -1, $this->getSourceContext());
        }
 
        // object property
        if (self::METHOD_CALL !== $type && !$object instanceof self) { // Twig_Template does not have public properties, and we don't want to allow access to internal ones
            if (isset($object->$item) || array_key_exists((string) $item, $object)) {
                if ($isDefinedTest) {
                    return true;
                }
 
                if ($this->env->hasExtension('Twig_Extension_Sandbox')) {
                    $this->env->getExtension('Twig_Extension_Sandbox')->checkPropertyAllowed($object, $item);
                }
 
                return $object->$item;
            }
        }
 
        $class = get_class($object);
 
        // object method
        if (!isset(self::$cache[$class])) {
            // get_class_methods returns all methods accessible in the scope, but we only want public ones to be accessible in templates
            if ($object instanceof self) {
                $ref = new ReflectionClass($class);
                $methods = array();
 
        $this->blocks = array(
            'content' => array($this, 'block_content'),
            'page_offcanvas' => array($this, 'block_page_offcanvas'),
            'page_layout' => array($this, 'block_page_layout'),
            'page_top' => array($this, 'block_page_top'),
            'page_bottom' => array($this, 'block_page_bottom'),
            'body_top' => array($this, 'block_body_top'),
            'body_bottom' => array($this, 'block_body_bottom'),
            'page_head' => array($this, 'block_page_head'),
            'page_footer' => array($this, 'block_page_footer'),
            'page' => array($this, 'block_page'),
            'page_body' => array($this, 'block_page_body'),
        );
    }
 
    protected function doDisplay(array $context, array $blocks = array())
    {
        // line 1
        $this->getAttribute($this->getAttribute(($context["gantry"] ?? null), "debugger", array()), "startTimer", array(0 => "render", 1 => "Rendering page"), "method");
        // line 2
        $this->getAttribute($this->getAttribute(($context["gantry"] ?? null), "theme", array()), "setLayout", array(), "method");
        // line 3
        $this->getAttribute($this->getAttribute(($context["gantry"] ?? null), "theme", array()), "loadAtoms", array(), "method");
        // line 4
        $context["segments"] = $this->getAttribute($this->getAttribute(($context["gantry"] ?? null), "theme", array()), "segments", array(), "method");
        // line 6
        ob_start();
        // line 7
        if ($this->getAttribute($this->getAttribute(($context["gantry"] ?? null), "theme", array()), "hasContent", array(), "method")) {
            // line 8
            $this->displayBlock('content', $context, $blocks);
        }
        $context["content"] = ('' === $tmp = ob_get_clean()) ? '' : new Twig_Markup($tmp, $this->env->getCharset());
        // line 13
        $context["offcanvas"] = null;
        // line 14
        $context['_parent'] = $context;
        $context['_seq'] = twig_ensure_traversable(($context["segments"] ?? null));
        foreach ($context['_seq'] as $context["_key"] => $context["segment"]) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
        } catch (Throwable $e) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
        }
 
        return ob_get_clean();
    }
 
    protected function displayWithErrorHandling(array $context, array $blocks = array())
    {
        try {
            $this->doDisplay($context, $blocks);
        } catch (Twig_Error $e) {
            if (!$e->getSourceContext()) {
                $e->setSourceContext($this->getSourceContext());
            }
 
            // this is mostly useful for Twig_Error_Loader exceptions
            // see Twig_Error_Loader
            if (false === $e->getTemplateLine()) {
                $e->setTemplateLine(-1);
                $e->guess();
            }
 
            throw $e;
        } catch (Exception $e) {
            throw new Twig_Error_Runtime(sprintf('An exception has been thrown during the rendering of a template ("%s").', $e->getMessage()), -1, $this->getSourceContext(), $e);
        }
    }
 
    /**
     * Auto-generated method to display the template with the given context.
    }
 
    /**
     * Returns all blocks.
     *
     * This method is for internal use only and should never be called
     * directly.
     *
     * @return array An array of blocks
     *
     * @internal
     */
    public function getBlocks()
    {
        return $this->blocks;
    }
 
    public function display(array $context, array $blocks = array())
    {
        $this->displayWithErrorHandling($this->env->mergeGlobals($context), array_merge($this->blocks, $blocks));
    }
 
    public function render(array $context)
    {
        $level = ob_get_level();
        ob_start();
        try {
            $this->display($context);
        } catch (Exception $e) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
        } catch (Throwable $e) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
{
    public function __construct(Twig_Environment $env)
    {
        parent::__construct($env);
 
        // line 1
        $this->parent = $this->loadTemplate("@nucleus/page.html.twig", "partials/page.html.twig", 1);
        $this->blocks = array(
            'page_footer' => array($this, 'block_page_footer'),
        );
    }
 
    protected function doGetParent(array $context)
    {
        return "@nucleus/page.html.twig";
    }
 
    protected function doDisplay(array $context, array $blocks = array())
    {
        $this->parent->display($context, array_merge($this->blocks, $blocks));
    }
 
    // line 3
    public function block_page_footer($context, array $blocks = array())
    {
        // line 4
        $this->displayParentBlock("page_footer", $context, $blocks);
        echo "
    <jdoc:include type=\"modules\" name=\"debug\" />";
    }
 
    public function getTemplateName()
    {
        return "partials/page.html.twig";
    }
 
    public function isTraitable()
    {
        return false;
    }
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
        } catch (Throwable $e) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
        }
 
        return ob_get_clean();
    }
 
    protected function displayWithErrorHandling(array $context, array $blocks = array())
    {
        try {
            $this->doDisplay($context, $blocks);
        } catch (Twig_Error $e) {
            if (!$e->getSourceContext()) {
                $e->setSourceContext($this->getSourceContext());
            }
 
            // this is mostly useful for Twig_Error_Loader exceptions
            // see Twig_Error_Loader
            if (false === $e->getTemplateLine()) {
                $e->setTemplateLine(-1);
                $e->guess();
            }
 
            throw $e;
        } catch (Exception $e) {
            throw new Twig_Error_Runtime(sprintf('An exception has been thrown during the rendering of a template ("%s").', $e->getMessage()), -1, $this->getSourceContext(), $e);
        }
    }
 
    /**
     * Auto-generated method to display the template with the given context.
    }
 
    /**
     * Returns all blocks.
     *
     * This method is for internal use only and should never be called
     * directly.
     *
     * @return array An array of blocks
     *
     * @internal
     */
    public function getBlocks()
    {
        return $this->blocks;
    }
 
    public function display(array $context, array $blocks = array())
    {
        $this->displayWithErrorHandling($this->env->mergeGlobals($context), array_merge($this->blocks, $blocks));
    }
 
    public function render(array $context)
    {
        $level = ob_get_level();
        ob_start();
        try {
            $this->display($context);
        } catch (Exception $e) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
        } catch (Throwable $e) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
{
    public function __construct(Twig_Environment $env)
    {
        parent::__construct($env);
 
        // line 1
        $this->parent = $this->loadTemplate("partials/page.html.twig", "index.html.twig", 1);
        $this->blocks = array(
            'content' => array($this, 'block_content'),
        );
    }
 
    protected function doGetParent(array $context)
    {
        return "partials/page.html.twig";
    }
 
    protected function doDisplay(array $context, array $blocks = array())
    {
        $this->parent->display($context, array_merge($this->blocks, $blocks));
    }
 
    // line 3
    public function block_content($context, array $blocks = array())
    {
        // line 4
        echo $this->getAttribute($this->getAttribute(($context["gantry"] ?? null), "platform", array()), "displayContent", array(0 => ($context["content"] ?? null)), "method");
    }
 
    public function getTemplateName()
    {
        return "index.html.twig";
    }
 
    public function isTraitable()
    {
        return false;
    }
 
    public function getDebugInfo()
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
        } catch (Throwable $e) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
        }
 
        return ob_get_clean();
    }
 
    protected function displayWithErrorHandling(array $context, array $blocks = array())
    {
        try {
            $this->doDisplay($context, $blocks);
        } catch (Twig_Error $e) {
            if (!$e->getSourceContext()) {
                $e->setSourceContext($this->getSourceContext());
            }
 
            // this is mostly useful for Twig_Error_Loader exceptions
            // see Twig_Error_Loader
            if (false === $e->getTemplateLine()) {
                $e->setTemplateLine(-1);
                $e->guess();
            }
 
            throw $e;
        } catch (Exception $e) {
            throw new Twig_Error_Runtime(sprintf('An exception has been thrown during the rendering of a template ("%s").', $e->getMessage()), -1, $this->getSourceContext(), $e);
        }
    }
 
    /**
     * Auto-generated method to display the template with the given context.
    }
 
    /**
     * Returns all blocks.
     *
     * This method is for internal use only and should never be called
     * directly.
     *
     * @return array An array of blocks
     *
     * @internal
     */
    public function getBlocks()
    {
        return $this->blocks;
    }
 
    public function display(array $context, array $blocks = array())
    {
        $this->displayWithErrorHandling($this->env->mergeGlobals($context), array_merge($this->blocks, $blocks));
    }
 
    public function render(array $context)
    {
        $level = ob_get_level();
        ob_start();
        try {
            $this->display($context);
        } catch (Exception $e) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
        } catch (Throwable $e) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
     * @return array An array of blocks
     *
     * @internal
     */
    public function getBlocks()
    {
        return $this->blocks;
    }
 
    public function display(array $context, array $blocks = array())
    {
        $this->displayWithErrorHandling($this->env->mergeGlobals($context), array_merge($this->blocks, $blocks));
    }
 
    public function render(array $context)
    {
        $level = ob_get_level();
        ob_start();
        try {
            $this->display($context);
        } catch (Exception $e) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
        } catch (Throwable $e) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
        }
 
        return ob_get_clean();
    }
 
    protected function displayWithErrorHandling(array $context, array $blocks = array())
    {
        try {
        @trigger_error(sprintf('The %s method is deprecated since version 1.22 and will be removed in Twig 2.0.', __METHOD__), E_USER_DEPRECATED);
 
        return $this->templateClassPrefix;
    }
 
    /**
     * Renders a template.
     *
     * @param string $name    The template name
     * @param array  $context An array of parameters to pass to the template
     *
     * @return string The rendered template
     *
     * @throws Twig_Error_Loader  When the template cannot be found
     * @throws Twig_Error_Syntax  When an error occurred during compilation
     * @throws Twig_Error_Runtime When an error occurred during rendering
     */
    public function render($name, array $context = array())
    {
        return $this->loadTemplate($name)->render($context);
    }
 
    /**
     * Displays a template.
     *
     * @param string $name    The template name
     * @param array  $context An array of parameters to pass to the template
     *
     * @throws Twig_Error_Loader  When the template cannot be found
     * @throws Twig_Error_Syntax  When an error occurred during compilation
     * @throws Twig_Error_Runtime When an error occurred during rendering
     */
    public function display($name, array $context = array())
    {
        $this->loadTemplate($name)->display($context);
    }
 
    /**
     * Loads a template.
     *
 
            $this->renderer = $this->extendTwig($twig, $loader);
        }
 
        return $this->renderer;
    }
 
    /**
     * Render a template file by using given context.
     *
     * @param string $file
     * @param array $context
     * @return string
     */
    public function render($file, array $context = [])
    {
        // Include Gantry specific things to the context.
        $context = $this->getContext($context);
 
        return $this->renderer()->render($file, $context);
    }
 
    /**
     * Compile and render twig string.
     *
     * @param string $string
     * @param array $context
     * @return string
     */
    public function compile($string, array $context = [])
    {
        $renderer = $this->renderer();
        $template = $renderer->createTemplate($string);
 
        // Include Gantry specific things to the context.
        $context = $this->getContext($context);
 
        return $template->render($context);
    }
 
 * @author    RocketTheme http://www.rockettheme.com
 * @copyright Copyright (C) 2007 - 2015 RocketTheme, LLC
 * @license   GNU/GPLv2 and later
 *
 * http://www.gnu.org/licenses/gpl-2.0.html
 */
 
defined('_JEXEC') or die;
 
// Bootstrap Gantry framework or fail gracefully (inside included file).
$gantry = include __DIR__ . '/includes/gantry.php';
 
/** @var \Gantry\Framework\Theme $theme */
$theme = $gantry['theme'];
 
/** @var \Gantry\Framework\Configurations $configurations */
$configurations = $gantry['configurations'];
 
// Render the page.
echo $theme->render('index.html.twig');
 
     * @param   string  $directory  The name of the template
     * @param   string  $filename   The actual filename
     *
     * @return  string  The contents of the template
     *
     * @since   1.7.0
     */
    protected function _loadTemplate($directory, $filename)
    {
        $contents = '';
 
        // Check to see if we have a valid template file
        if (file_exists($directory . '/' . $filename))
        {
            // Store the file path
            $this->_file = $directory . '/' . $filename;
 
            // Get the file content
            ob_start();
            require $directory . '/' . $filename;
            $contents = ob_get_contents();
            ob_end_clean();
        }
 
        // Try to find a favicon by checking the template and root folder
        $icon = '/favicon.ico';
 
        foreach (array($directory, JPATH_BASE) as $dir)
        {
            if (file_exists($dir . $icon))
            {
                $path = str_replace(JPATH_BASE, '', $dir);
                $path = str_replace('\\', '/', $path);
                $this->addFavicon(Uri::base(true) . $path . $icon);
                break;
            }
        }
 
        return $contents;
    }
 
        if (!file_exists($directory . '/' . $template . '/' . $file))
        {
            $file = 'index.php';
        }
 
        // Load the language file for the template
        $lang = \JFactory::getLanguage();
 
        // 1.5 or core then 1.6
        $lang->load('tpl_' . $template, JPATH_BASE, null, false, true)
            || $lang->load('tpl_' . $template, $directory . '/' . $template, null, false, true);
 
        // Assign the variables
        $this->template = $template;
        $this->baseurl = Uri::base(true);
        $this->params = isset($params['params']) ? $params['params'] : new Registry;
 
        // Load
        $this->_template = $this->_loadTemplate($directory . '/' . $template, $file);
 
        return $this;
    }
 
    /**
     * Parse a document template
     *
     * @return  HtmlDocument  instance of $this to allow chaining
     *
     * @since   1.7.0
     */
    protected function _parseTemplate()
    {
        $matches = array();
 
        if (preg_match_all('#<jdoc:include\ type="([^"]+)"(.*)\/>#iU', $this->_template, $matches))
        {
            $template_tags_first = array();
            $template_tags_last = array();
 
            $options['title'] = (isset($args[3])) ? $args[3] : null;
        }
 
        parent::$_buffer[$options['type']][$options['name']][$options['title']] = $content;
 
        return $this;
    }
 
    /**
     * Parses the template and populates the buffer
     *
     * @param   array  $params  Parameters for fetching the template
     *
     * @return  HtmlDocument instance of $this to allow chaining
     *
     * @since   1.7.0
     */
    public function parse($params = array())
    {
        return $this->_fetchTemplate($params)->_parseTemplate();
    }
 
    /**
     * Outputs the template to the browser.
     *
     * @param   boolean  $caching  If true, cache the output
     * @param   array    $params   Associative array of attributes
     *
     * @return  string The rendered data
     *
     * @since   1.7.0
     */
    public function render($caching = false, $params = array())
    {
        $this->_caching = $caching;
 
        if (empty($this->_template))
        {
            $this->parse($params);
        }
     */
    protected function render()
    {
        // Setup the document options.
        $this->docOptions['template'] = $this->get('theme');
        $this->docOptions['file']     = $this->get('themeFile', 'index.php');
        $this->docOptions['params']   = $this->get('themeParams');
 
        if ($this->get('themes.base'))
        {
            $this->docOptions['directory'] = $this->get('themes.base');
        }
        // Fall back to constants.
        else
        {
            $this->docOptions['directory'] = defined('JPATH_THEMES') ? JPATH_THEMES : (defined('JPATH_BASE') ? JPATH_BASE : __DIR__) . '/themes';
        }
 
        // Parse the document.
        $this->document->parse($this->docOptions);
 
        // Trigger the onBeforeRender event.
        \JPluginHelper::importPlugin('system');
        $this->triggerEvent('onBeforeRender');
 
        $caching = false;
 
        if ($this->isClient('site') && $this->get('caching') && $this->get('caching', 2) == 2 && !\JFactory::getUser()->get('id'))
        {
            $caching = true;
        }
 
        // Render the document.
        $data = $this->document->render($caching, $this->docOptions);
 
        // Set the application output data.
        $this->setBody($data);
 
        // Trigger the onAfterRender event.
        $this->triggerEvent('onAfterRender');
                    $this->setUserState('users.login.form.data', array('return' => \JUri::getInstance()->toString()));
                    $this->set('themeFile', 'offline.php');
                    $this->setHeader('Status', '503 Service Temporarily Unavailable', 'true');
                }
 
                if (!is_dir(JPATH_THEMES . '/' . $template->template) && !$this->get('offline'))
                {
                    $this->set('themeFile', 'component.php');
                }
 
                // Ensure themeFile is set by now
                if ($this->get('themeFile') == '')
                {
                    $this->set('themeFile', $file . '.php');
                }
 
                break;
        }
 
        parent::render();
    }
 
    /**
     * Route the application.
     *
     * Routing is the process of examining the request environment to determine which
     * component should receive the request. The component optional parameters
     * are then set in the request object to be processed when the application is being
     * dispatched.
     *
     * @return  void
     *
     * @since   3.2
     */
    protected function route()
    {
        // Execute the parent method
        parent::route();
 
        $Itemid = $this->input->getInt('Itemid', null);
        }
    }
 
    /**
     * Execute the application.
     *
     * @return  void
     *
     * @since   3.2
     */
    public function execute()
    {
        // Perform application routines.
        $this->doExecute();
 
        // If we have an application document object, render it.
        if ($this->document instanceof \JDocument)
        {
            // Render the application output.
            $this->render();
        }
 
        // If gzip compression is enabled in configuration and the server is compliant, compress the output.
        if ($this->get('gzip') && !ini_get('zlib.output_compression') && ini_get('output_handler') !== 'ob_gzhandler')
        {
            $this->compress();
 
            // Trigger the onAfterCompress event.
            $this->triggerEvent('onAfterCompress');
        }
 
        // Send the application response.
        $this->respond();
 
        // Trigger the onAfterRespond event.
        $this->triggerEvent('onAfterRespond');
    }
 
    /**
     * Check if the user is required to reset their password.
{
    include_once __DIR__ . '/defines.php';
}
 
if (!defined('_JDEFINES'))
{
    define('JPATH_BASE', __DIR__);
    require_once JPATH_BASE . '/includes/defines.php';
}
 
require_once JPATH_BASE . '/includes/framework.php';
 
// Set profiler start time and memory usage and mark afterLoad in the profiler.
JDEBUG ? JProfiler::getInstance('Application')->setStart($startTime, $startMem)->mark('afterLoad') : null;
 
// Instantiate the application.
$app = JFactory::getApplication('site');
 
// Execute the application.
$app->execute();
 

Environment & details:

empty
empty
empty
empty
empty
Key Value
USER ppaa369904
HOME /home/ppaa369904
SCRIPT_NAME /zaanstreek/index.php
REQUEST_URI /zaanstreek/nieuws.html
QUERY_STRING
REQUEST_METHOD GET
SERVER_PROTOCOL HTTP/1.1
GATEWAY_INTERFACE CGI/1.1
REDIRECT_URL /zaanstreek/nieuws.html
REMOTE_PORT 56942
SCRIPT_FILENAME /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/index.php
SERVER_ADMIN webmaster@cacaoimpro.nl
CONTEXT_DOCUMENT_ROOT /home/ppaa369904/domains/cacaoimpro.nl/public_html
CONTEXT_PREFIX
REQUEST_SCHEME http
DOCUMENT_ROOT /home/ppaa369904/domains/cacaoimpro.nl/public_html
REMOTE_ADDR 34.200.218.187
SERVER_PORT 80
SERVER_ADDR 185.27.141.87
SERVER_NAME www.cacaoimpro.nl
SERVER_SOFTWARE Apache/2
SERVER_SIGNATURE
PATH /sbin:/usr/sbin:/bin:/usr/bin
HTTP_CONNECTION Keep-Alive
HTTP_HOST www.cacaoimpro.nl
HTTP_ACCEPT_ENCODING br,gzip
HTTP_IF_MODIFIED_SINCE Sat, 18 Jan 2020 18:58:15 GMT
HTTP_ACCEPT_LANGUAGE en-US,en;q=0.5
HTTP_ACCEPT text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
HTTP_USER_AGENT CCBot/2.0 (https://commoncrawl.org/faq/)
proxy-nokeepalive 1
LimitLogin_Remaining 0
LimitLogin_Counter 0
QS_ConnectionId 15971798172325415732414
QS_AllConn 5
QS_IPConn 1
QS_SrvConn 5
UNIQUE_ID XzMHqdXW2D-gE79i08ZpFQAAADk
REDIRECT_STATUS 200
REDIRECT_HTTP_AUTHORIZATION
REDIRECT_LimitLogin_Remaining 0
REDIRECT_LimitLogin_Counter 0
REDIRECT_QS_Limit_VAR_NAME_IDXLimitLogin LimitLogin
REDIRECT_QS_ConnectionId 15971798172325415732414
REDIRECT_QS_AllConn 5
REDIRECT_QS_IPConn 1
REDIRECT_QS_SrvConn 5
REDIRECT_UNIQUE_ID XzMHqdXW2D-gE79i08ZpFQAAADk
FCGI_ROLE RESPONDER
PHP_SELF /zaanstreek/index.php
REQUEST_TIME_FLOAT 1597179817.24
REQUEST_TIME 1597179817
argv Array ( )
argc 0
Key Value
USER ppaa369904
HOME /home/ppaa369904
SCRIPT_NAME /zaanstreek/index.php
REQUEST_URI /zaanstreek/nieuws.html
QUERY_STRING
REQUEST_METHOD GET
SERVER_PROTOCOL HTTP/1.1
GATEWAY_INTERFACE CGI/1.1
REDIRECT_URL /zaanstreek/nieuws.html
REMOTE_PORT 56942
SCRIPT_FILENAME /home/ppaa369904/domains/cacaoimpro.nl/public_html/zaanstreek/index.php
SERVER_ADMIN webmaster@cacaoimpro.nl
CONTEXT_DOCUMENT_ROOT /home/ppaa369904/domains/cacaoimpro.nl/public_html
CONTEXT_PREFIX
REQUEST_SCHEME http
DOCUMENT_ROOT /home/ppaa369904/domains/cacaoimpro.nl/public_html
REMOTE_ADDR 34.200.218.187
SERVER_PORT 80
SERVER_ADDR 185.27.141.87
SERVER_NAME www.cacaoimpro.nl
SERVER_SOFTWARE Apache/2
SERVER_SIGNATURE
PATH /sbin:/usr/sbin:/bin:/usr/bin
HTTP_CONNECTION Keep-Alive
HTTP_HOST www.cacaoimpro.nl
HTTP_ACCEPT_ENCODING br,gzip
HTTP_IF_MODIFIED_SINCE Sat, 18 Jan 2020 18:58:15 GMT
HTTP_ACCEPT_LANGUAGE en-US,en;q=0.5
HTTP_ACCEPT text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
HTTP_USER_AGENT CCBot/2.0 (https://commoncrawl.org/faq/)
proxy-nokeepalive 1
LimitLogin_Remaining 0
LimitLogin_Counter 0
QS_ConnectionId 15971798172325415732414
QS_AllConn 5
QS_IPConn 1
QS_SrvConn 5
UNIQUE_ID XzMHqdXW2D-gE79i08ZpFQAAADk
REDIRECT_STATUS 200
REDIRECT_HTTP_AUTHORIZATION
REDIRECT_LimitLogin_Remaining 0
REDIRECT_LimitLogin_Counter 0
REDIRECT_QS_Limit_VAR_NAME_IDXLimitLogin LimitLogin
REDIRECT_QS_ConnectionId 15971798172325415732414
REDIRECT_QS_AllConn 5
REDIRECT_QS_IPConn 1
REDIRECT_QS_SrvConn 5
REDIRECT_UNIQUE_ID XzMHqdXW2D-gE79i08ZpFQAAADk
FCGI_ROLE RESPONDER
PHP_SELF /zaanstreek/index.php
REQUEST_TIME_FLOAT 1597179817.24
REQUEST_TIME 1597179817
argv Array ( )
argc 0
0. Whoops\Handler\PrettyPageHandler