/var
/app
/current
/vendor
/twig
/twig
/src
/ExpressionParser.php
$args[$name] = $value;
} else {
if (null === $name) {
$args[] = $value;
} else {
$args[$name] = $value;
}
}
}
$stream->expect(Token::PUNCTUATION_TYPE, ')', 'A list of arguments must be closed by a parenthesis');
return new Node($args);
}
public function parseAssignmentExpression()
{
$stream = $this->parser->getStream();
$targets = [];
while (true) {
$token = $stream->expect(Token::NAME_TYPE, null, 'Only variables can be assigned to');
$value = $token->getValue();
if (\in_array(strtolower($value), ['true', 'false', 'none', 'null'])) {
throw new SyntaxError(sprintf('You cannot assign a value to "%s".', $value), $token->getLine(), $stream->getSourceContext());
}
$targets[] = new AssignNameExpression($value, $token->getLine());
if (!$stream->nextIf(Token::PUNCTUATION_TYPE, ',')) {
break;
}
}
return new Node($targets);
}
public function parseMultitargetExpression()
{
$targets = [];
while (true) {
$targets[] = $this->parseExpression();
if (!$this->parser->getStream()->nextIf(Token::PUNCTUATION_TYPE, ',')) {
Arguments
"Call to a member function expect() on null"
/var
/app
/current
/vendor
/twig
/twig
/src
/TokenParser
/SetTokenParser.php
/**
* Defines a variable.
*
* {% set foo = 'foo' %}
* {% set foo = [1, 2] %}
* {% set foo = {'foo': 'bar'} %}
* {% set foo = 'foo' ~ 'bar' %}
* {% set foo, bar = 'foo', 'bar' %}
* {% set foo %}Some content{% endset %}
*
* @final
*/
class SetTokenParser extends AbstractTokenParser
{
public function parse(Token $token)
{
$lineno = $token->getLine();
$stream = $this->parser->getStream();
$names = $this->parser->getExpressionParser()->parseAssignmentExpression();
$capture = false;
if ($stream->nextIf(Token::OPERATOR_TYPE, '=')) {
$values = $this->parser->getExpressionParser()->parseMultitargetExpression();
$stream->expect(Token::BLOCK_END_TYPE);
if (\count($names) !== \count($values)) {
throw new SyntaxError('When using set, you must have the same number of variables and assignments.', $stream->getCurrent()->getLine(), $stream->getSourceContext());
}
} else {
$capture = true;
if (\count($names) > 1) {
throw new SyntaxError('When using set with a block, you cannot have a multi-target.', $stream->getCurrent()->getLine(), $stream->getSourceContext());
}
$stream->expect(Token::BLOCK_END_TYPE);
$values = $this->parser->subparse([$this, 'decideBlockEnd'], true);
/var
/app
/current
/vendor
/twig
/twig
/src
/Parser.php
$subparser = $this->handlers->getTokenParser($token->getValue());
if (null === $subparser) {
if (null !== $test) {
$e = new SyntaxError(sprintf('Unexpected "%s" tag', $token->getValue()), $token->getLine(), $this->stream->getSourceContext());
if (\is_array($test) && isset($test[0]) && $test[0] instanceof TokenParserInterface) {
$e->appendMessage(sprintf(' (expecting closing tag for the "%s" tag defined near line %s).', $test[0]->getTag(), $lineno));
}
} else {
$e = new SyntaxError(sprintf('Unknown "%s" tag.', $token->getValue()), $token->getLine(), $this->stream->getSourceContext());
$e->addSuggestions($token->getValue(), array_keys($this->env->getTags()));
}
throw $e;
}
$this->stream->next();
$node = $subparser->parse($token);
if (null !== $node) {
$rv[] = $node;
}
break;
default:
throw new SyntaxError('Lexer or parser ended up in unsupported state.', $this->getCurrentToken()->getLine(), $this->stream->getSourceContext());
}
}
if (1 === \count($rv)) {
return $rv[0];
}
return new Node($rv, [], $lineno);
}
/**
* @deprecated since 1.27 (to be removed in 2.0)
*/
Arguments
/var
/app
/current
/vendor
/twig
/twig
/src
/Parser.php
if (null === $this->visitors) {
$this->visitors = $this->env->getNodeVisitors();
}
if (null === $this->expressionParser) {
$this->expressionParser = new ExpressionParser($this, $this->env);
}
$this->stream = $stream;
$this->parent = null;
$this->blocks = [];
$this->macros = [];
$this->traits = [];
$this->blockStack = [];
$this->importedSymbols = [[]];
$this->embeddedTemplates = [];
$this->varNameSalt = 0;
try {
$body = $this->subparse($test, $dropNeedle);
if (null !== $this->parent && null === $body = $this->filterBodyNodes($body)) {
$body = new Node();
}
} catch (SyntaxError $e) {
if (!$e->getSourceContext()) {
$e->setSourceContext($this->stream->getSourceContext());
}
if (!$e->getTemplateLine()) {
$e->setTemplateLine($this->stream->getCurrent()->getLine());
}
throw $e;
}
$node = new ModuleNode(new BodyNode([$body]), $this->parent, new Node($this->blocks), new Node($this->macros), new Node($this->traits), $this->embeddedTemplates, $stream->getSourceContext());
$traverser = new NodeTraverser($this->env, $this->visitors);
Arguments
/var
/app
/current
/vendor
/twig
/twig
/src
/Environment.php
public function setParser(\Twig_ParserInterface $parser)
{
$this->parser = $parser;
}
/**
* Converts a token stream to a node tree.
*
* @return ModuleNode
*
* @throws SyntaxError When the token stream is syntactically or semantically wrong
*/
public function parse(TokenStream $stream)
{
if (null === $this->parser) {
$this->parser = new Parser($this);
}
return $this->parser->parse($stream);
}
/**
* Gets the Compiler instance.
*
* @return \Twig_CompilerInterface
*
* @deprecated since 1.25 (to be removed in 2.0)
*/
public function getCompiler()
{
@trigger_error(sprintf('The %s() method is deprecated since version 1.25 and will be removed in 2.0.', __FUNCTION__), E_USER_DEPRECATED);
if (null === $this->compiler) {
$this->compiler = new Compiler($this);
}
return $this->compiler;
}
Arguments
/var
/app
/current
/vendor
/twig
/twig
/src
/Environment.php
/**
* Compiles a template source code.
*
* @param string|Source $source The template source code
* @param string $name The template name (deprecated)
*
* @return string The compiled PHP source code
*
* @throws SyntaxError When there was an error during tokenizing, parsing or compiling
*/
public function compileSource($source, $name = null)
{
if (!$source instanceof Source) {
@trigger_error(sprintf('Passing a string as the $source argument of %s() is deprecated since version 1.27. Pass a Twig\Source instance instead.', __METHOD__), E_USER_DEPRECATED);
$source = new Source($source, $name);
}
try {
return $this->compile($this->parse($this->tokenize($source)));
} catch (Error $e) {
$e->setSourceContext($source);
throw $e;
} catch (\Exception $e) {
throw new SyntaxError(sprintf('An exception has been thrown during the compilation of a template ("%s").', $e->getMessage()), -1, $source, $e);
}
}
public function setLoader(LoaderInterface $loader)
{
if (!$loader instanceof SourceContextLoaderInterface && 0 !== strpos(\get_class($loader), 'Mock_')) {
@trigger_error(sprintf('Twig loader "%s" should implement Twig\Loader\SourceContextLoaderInterface since version 1.27.', \get_class($loader)), E_USER_DEPRECATED);
}
$this->loader = $loader;
}
/**
* Gets the Loader instance.
*
Arguments
/var
/app
/current
/vendor
/twig
/twig
/src
/Environment.php
if ($this->bcGetCacheFilename) {
$key = $this->getCacheFilename($name);
} else {
$key = $this->cache->generateKey($name, $mainCls);
}
if (!$this->isAutoReload() || $this->isTemplateFresh($name, $this->cache->getTimestamp($key))) {
$this->cache->load($key);
}
$source = null;
if (!class_exists($cls, false)) {
$loader = $this->getLoader();
if (!$loader instanceof SourceContextLoaderInterface) {
$source = new Source($loader->getSource($name), $name);
} else {
$source = $loader->getSourceContext($name);
}
$content = $this->compileSource($source);
if ($this->bcWriteCacheFile) {
$this->writeCacheFile($key, $content);
} else {
$this->cache->write($key, $content);
$this->cache->load($key);
}
if (!class_exists($mainCls, false)) {
/* Last line of defense if either $this->bcWriteCacheFile was used,
* $this->cache is implemented as a no-op or we have a race condition
* where the cache was cleared between the above calls to write to and load from
* the cache.
*/
eval('?>'.$content);
}
}
if (!class_exists($cls, false)) {
throw new RuntimeError(sprintf('Failed to load Twig template "%s", index "%s": cache might be corrupted.', $name, $index), -1, $source);
Arguments
/var
/app
/current
/vendor
/twig
/twig
/src
/Environment.php
/**
* Loads a template internal representation.
*
* This method is for internal use only and should never be called
* directly.
*
* @param string $name The template name
* @param int $index The index if it is an embedded template
*
* @return \Twig_TemplateInterface A template instance representing the given template name
*
* @throws LoaderError When the template cannot be found
* @throws RuntimeError When a previously generated cache is corrupted
* @throws SyntaxError When an error occurred during compilation
*
* @internal
*/
public function loadTemplate($name, $index = null)
{
return $this->loadClass($this->getTemplateClass($name), $name, $index);
}
/**
* @internal
*/
public function loadClass($cls, $name, $index = null)
{
$mainCls = $cls;
if (null !== $index) {
$cls .= '___'.$index;
}
if (isset($this->loadedTemplates[$cls])) {
return $this->loadedTemplates[$cls];
}
if (!class_exists($cls, false)) {
if ($this->bcGetCacheFilename) {
$key = $this->getCacheFilename($name);
} else {
Arguments
"__TwigTemplate_e38b389dab96eab59ea8c2103739db7dfc2347224403da2d653afadfb940c580"
"partials/pagination.html.twig"
null
/var
/app
/current
/vendor
/twig
/twig
/src
/Template.php
{
try {
if (\is_array($template)) {
return $this->env->resolveTemplate($template);
}
if ($template instanceof self || $template instanceof TemplateWrapper) {
return $template;
}
if ($template === $this->getTemplateName()) {
$class = \get_class($this);
if (false !== $pos = strrpos($class, '___', -1)) {
$class = substr($class, 0, $pos);
}
return $this->env->loadClass($class, $template, $index);
}
return $this->env->loadTemplate($template, $index);
} catch (Error $e) {
if (!$e->getSourceContext()) {
$e->setSourceContext($templateName ? new Source('', $templateName) : $this->getSourceContext());
}
if ($e->getTemplateLine() > 0) {
throw $e;
}
if (!$line) {
$e->guess();
} else {
$e->setTemplateLine($line);
}
throw $e;
}
}
/**
Arguments
"partials/pagination.html.twig"
null
/var
/app
/current
/cache
/twig
/c9
/c961003d6e5283c5b7a9adf1efd826b33b21c4ac0a2b757e0d9bd4d75ea190b9.php
++$context['loop']['index'];
$context['loop']['first'] = false;
if (isset($context['loop']['length'])) {
--$context['loop']['revindex0'];
--$context['loop']['revindex'];
$context['loop']['last'] = 0 === $context['loop']['revindex0'];
}
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['p'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 19
echo " </div>
<div class=\"row justify-content-center\">
";
// line 21
if (($this->getAttribute($this->getAttribute($this->getAttribute(($context["config"] ?? null), "plugins", []), "pagination", []), "enabled", []) && $this->getAttribute($this->getAttribute(($context["collection"] ?? null), "params", []), "pagination", []))) {
// line 22
echo " ";
$this->loadTemplate("partials/pagination.html.twig", "@Page:/var/app/current/user/pages/14.actualites", 22)->display(twig_array_merge($context, ["base_url" => $this->getAttribute(($context["page"] ?? null), "url", []), "pagination" => $this->getAttribute($this->getAttribute(($context["collection"] ?? null), "params", []), "pagination", [])]));
// line 23
echo " ";
}
// line 24
echo " </div>
</div>
</section>";
}
public function getTemplateName()
{
return "@Page:/var/app/current/user/pages/14.actualites";
}
public function isTraitable()
{
return false;
}
public function getDebugInfo()
Arguments
"partials/pagination.html.twig"
"@Page:/var/app/current/user/pages/14.actualites"
22
/var
/app
/current
/vendor
/twig
/twig
/src
/Template.php
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 = [])
{
try {
$this->doDisplay($context, $blocks);
} catch (Error $e) {
if (!$e->getSourceContext()) {
$e->setSourceContext($this->getSourceContext());
}
// this is mostly useful for \Twig\Error\LoaderError exceptions
// see \Twig\Error\LoaderError
if (-1 === $e->getTemplateLine()) {
$e->guess();
}
throw $e;
} catch (\Exception $e) {
$e = new RuntimeError(sprintf('An exception has been thrown during the rendering of a template ("%s").', $e->getMessage()), -1, $this->getSourceContext(), $e);
$e->guess();
throw $e;
}
}
Arguments
array:27 [
"config" => Config {#96}
"system" => array:30 [
"absolute_urls" => false
"timezone" => ""
"default_locale" => null
"param_sep" => ":"
"wrapped_site" => false
"reverse_proxy_setup" => false
"force_ssl" => false
"force_lowercase_urls" => true
"custom_base_url" => ""
"username_regex" => "^[a-z0-9_@\.-]{3,50}$"
"pwd_regex" => "(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}"
"intl_enabled" => true
"languages" => array:9 [
"supported" => array:2 [
0 => "fr"
1 => "de"
]
"default_lang" => null
"include_default_lang" => false
"pages_fallback_only" => false
"translations" => true
"translations_fallback" => true
"session_store_active" => false
"http_accept_language" => false
"override_locale" => false
]
"home" => array:2 [
"alias" => "/home"
"hide_in_urls" => true
]
"pages" => array:26 [
"theme" => "optimhome"
"order" => array:2 [
"by" => "default"
"dir" => "asc"
]
"list" => array:1 [
"count" => 20
]
"dateformat" => array:3 [
"default" => null
"short" => "jS M Y"
"long" => "F jS \a\t g:ia"
]
"publish_dates" => true
"process" => array:2 [
"markdown" => false
"twig" => true
]
"twig_first" => false
"never_cache_twig" => false
"events" => array:2 [
"page" => true
"twig" => true
]
"markdown" => array:5 [
"extra" => false
"auto_line_breaks" => false
"auto_url_links" => false
"escape_markup" => false
"special_chars" => array:2 [
">" => "gt"
"<" => "lt"
]
]
"types" => array:7 [
0 => "html"
1 => "htm"
2 => "xml"
3 => "txt"
4 => "json"
5 => "rss"
6 => "atom"
]
"append_url_extension" => ""
"expires" => 604800
"cache_control" => null
"last_modified" => false
"etag" => false
"vary_accept_encoding" => false
"redirect_default_route" => false
"redirect_default_code" => "301"
"redirect_trailing_slash" => false
"ignore_files" => array:1 [
0 => ".DS_Store"
]
"ignore_folders" => array:2 [
0 => ".git"
1 => ".idea"
]
"ignore_hidden" => true
"hide_empty_folders" => false
"url_taxonomy_filters" => true
"frontmatter" => array:2 [
"process_twig" => true
"ignore_fields" => array:2 [
0 => "form"
1 => "forms"
]
]
]
"cache" => array:13 [
"enabled" => true
"check" => array:1 [
"method" => "file"
]
"driver" => "file"
"prefix" => "g"
"purge_at" => "0 4 * * *"
"clear_at" => "0 3 * * *"
"clear_job_type" => "standard"
"clear_images_by_default" => true
"cli_compatibility" => false
"lifetime" => 3600
"gzip" => false
"allow_webserver_gzip" => false
"redis" => array:1 [
"socket" => false
]
]
"twig" => array:7 [
"cache" => true
"debug" => true
"auto_reload" => true
"autoescape" => false
"undefined_functions" => true
"undefined_filters" => true
"umask_fix" => false
]
"assets" => array:12 [
"css_pipeline" => false
"css_pipeline_include_externals" => true
"css_pipeline_before_excludes" => true
"css_minify" => true
"css_minify_windows" => false
"css_rewrite" => true
"js_pipeline" => false
"js_pipeline_include_externals" => true
"js_pipeline_before_excludes" => true
"js_minify" => true
"enable_asset_timestamp" => false
"collections" => array:1 [
"jquery" => "system://assets/jquery/jquery-2.x.min.js"
]
]
"errors" => array:2 [
"display" => true
"log" => true
]
"log" => array:2 [
"handler" => "file"
"syslog" => array:1 [
"facility" => "local6"
]
]
"debugger" => array:3 [
"enabled" => false
"shutdown" => array:1 [
"close_connection" => true
]
"twig" => true
]
"images" => array:6 [
"default_image_quality" => 85
"cache_all" => false
"cache_perms" => "0755"
"debug" => false
"auto_fix_orientation" => false
"seofriendly" => false
]
"media" => array:5 [
"enable_media_timestamp" => false
"unsupported_inline_types" => []
"allowed_fallback_types" => []
"auto_metadata_exif" => false
"upload_limit" => 15728640
]
"session" => array:9 [
"enabled" => true
"initialize" => true
"timeout" => 1800
"name" => "grav-site"
"uniqueness" => "path"
"secure" => false
"httponly" => true
"split" => true
"path" => null
]
"gpm" => array:5 [
"releases" => "stable"
"proxy_url" => null
"method" => "auto"
"verify_peer" => true
"official_gpm_only" => true
]
"accounts" => array:2 [
"type" => "data"
"storage" => "file"
]
"strict_mode" => array:2 [
"yaml_compat" => true
"twig_compat" => true
]
"gtm_stage_enabled" => false
"matomo_prod_enabled" => true
"seo-factory" => array:1 [
"bu" => "OPTIMHOME"
]
]
"theme" => array:2 [
"streams" => array:1 [
"schemes" => array:1 [
"theme" => array:2 [
"type" => "ReadOnlyStream"
"prefixes" => array:1 [
"" => array:2 [
0 => "user/themes/optimhome"
1 => "user/themes/digit-website"
]
]
]
]
]
"marketing-operations" => array:3 [
"saison-estimation-2019" => array:3 [
"startDate" => "2019-03-20"
"endDate" => "2019-04-30"
"body_class" => "op_estim"
]
"ope-neuf-2019" => array:3 [
"startDate" => "2019-06-01"
"endDate" => "2019-06-30"
"body_class" => "op_neuf"
]
"op-optimust-2019" => array:3 [
"startDate" => "2019-09-11"
"endDate" => "2019-11-01"
"body_class" => "op_optimust"
]
]
]
"site" => array:28 [
"title" => "Optimhome Immobilier"
"default_lang" => "fr"
"author" => array:2 [
"name" => "DigitRE"
"email" => "[email protected]"
]
"taxonomies" => array:2 [
0 => "category"
1 => "tag"
]
"metadata" => array:2 [
"generator" => ""
"description" => ""
]
"summary" => array:4 [
"enabled" => true
"format" => "short"
"size" => 300
"delimiter" => "==="
]
"redirects" => array:40 [
"/combien-pour-mon-bien$" => "/"
"/annonces$" => "/annonces/achat"
"/conseillers/market$" => "/maintenance"
"/verlautbarungen$" => "/annonces/achat"
"/adverts$" => "/annonces/achat"
"/anuncios$" => "/annonces/achat"
"/neuf$" => "/annonces/achat?affichage=grid-view&category[]=isNew"
"/commerces$" => "/annonces/achat?affichage=grid-view&propertyTypes[]=BUSINESS_CAPITAL"
"/ville_bien/(.*)_(.*)_(.*)__(.*)/(.*)" => "/annonces/achat?affichage=grid-view&adresse=$1"
"/ville_bien/(.*)_/(.*).html" => "/annonces/achat?affichage=grid-view&adresse=$1"
"/news/(.*)" => "/actualites"
"/content/6/estimation-immobiliere-en-ligne-1.html" => "/estimer-mon-bien"
"/content/5/mentions-legales.html?language=fr" => "/mentions-legales"
"/agence/(.*)" => "/nos-conseillers"
"/ville_bien/(.*)_(.*)_(.*)__Vente" => "/annonces/achat?affichage=grid-view&adresse=$1"
"/catalog/estimation.php" => "/estimer-mon-bien"
"/fiches/(.*)" => "/annonces/achat"
"(.*)PRODUCT_LIST_(.*)" => "/annonces/achat"
"(.*)_Vente/vente-(.*)" => "/annonces/achat"
"/annonces/(.*)____Vente_/vente.html" => "/annonces/achat"
"/type_bien/(.*)" => "/annonces/achat"
"/annonces/_____(.*)/immobilier.html" => "/annonces/achat"
"/annonces/(.*)_____2/.html" => "/annonces/achat"
"/conseillers/(.*)-recrutement-immobilier" => "/nos-conseillers"
"/annonces/exclusivites" => "/annonces/achat?affichage=grid-view&exclusif=true"
"/de-(.*).html" => "/de"
"/fr-(.*).html" => "/annonces/achat"
"/es-(.*).html" => "/"
"/nl-(.*).html" => "/"
"/pt-(.*).html" => "/pt"
"/ville_bien/(.*).html" => "/annonces/achat"
"/catalog/news.php" => "/actualites"
"/it-(.*).html" => "/en"
"/en-(.*).html" => "/en"
"(.*)/(region|bezirk)(?(?=\?)(.+)|)$" => "/[301]"
"(.*)/(regions|regionen)(?(?=\?)(.+)|)$" => "/[301]"
"/de/betreuer/steinseufzer-robert" => "/betreuer/robert-steinseufzer"
"(.*)/estimer/appartement" => "/estimer-appartement"
"(.*)/estimer/maison" => "/estimer-maison"
"/conseillers/casseleux" => "/conseillers/aurelie.casseleux"
]
"routes" => array:88 [
"(.*)/(actualites|neuigkeit|news|noticias)(?(?=\?)(.+)|)$" => "/actualites"
"(.*)/(conseillers|agents|betreuer|agentes|conselheiros)/page:(\d+)$" => "/nos-conseillers"
"(.*)/(conseillers|agents|betreuer|agentes|conselheiros)(?(?=\?)(.+)|)$" => "/nos-conseillers"
"(.*)/(commerces|shops|neuf)/nos-conseillers(?(?=\?)(.+)|)$" => "/nos-conseillers"
"(.*)/(new/agents)(?(?=\?)(.+)|)$" => "/nos-conseillers"
"(.*)/(conseillers|agents|betreuer|agentes|conselheiros)/(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche"
"(.*)/(annonces|commerces)/(fiche|vente|achat|location|reprendre)/([\w-]+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(annonces|commerces)/(vente|achat|location|reprendre)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(adverts|shops)/(sale|buy|rental|resume)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(verlautbarungen|geschafte|shops)/(verkauf|mieten|einkaufen|verlieh|zusammenfassung)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(anuncios|lojas)/(compra|venda|aluguel|retomar)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(annonces|commerces)/(vente|achat|location)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(adverts|shops)/(sale|buy|rental)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(verlautbarungen|geschafte)/(verkauf|mieten|einkaufen|verlieh)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(anuncios|lojas)/(compra|venda|aluguel)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(annonces/villes|verlautbarungen/ortschaften|adverts/cities|anuncios/cidades)(?(?=\?)(.+)|)$" => "/annonces/villes"
"(.*)/(commerces|shops|lojas)(?(?=\?)(.+)|)$" => "/commerces"
"(.*)/(immobilier/avis-clients|immobilien/kundenrezensionen|real-estate/customer-reviews|imoveis/opinioes-clientes)(?(?=\?)(.+)|)$" => "/immobilier/avis-clients"
"(.*)/(immobilien|imobiliaria)/(konzept|o-conceito)(?(?=\?)(.+)|)$" => "/immobilier/concept"
"(.*)/(immobilier|immobilien|real-estate|imoveis|imobiliaria)/international(?(?=\?)(.+)|)$" => "/immobilier/international"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(investir-dans-le-neuf|investieren-in-die-neue|invest-in-the-new)(?(?=\?)(.+)|)$" => "/immobilier/investir-dans-le-neuf"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(nos-valeurs|unsere-werte|our-values)(?(?=\?)(.+)|)$" => "/immobilier/nos-valeurs"
"(.*)/(immobilier|immobilien|real-estate|imoveis|imoveis)/(pourquoi|warum|why|por-que)(?(?=\?)(.+)|)$" => "/immobilier/pourquoi-choisir-optimhome"
"(.*)/(immobilier|immobilien|real-estate|imoveis|imobiliaria)/(qui-sommes-nous|wer-sind-wir|who-we-are|quem-somos-nos)(?(?=\?)(.+)|)$" => "/immobilier/qui-sommes-nous"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/pass-vip(?(?=\?)(.+)|)$" => "/immobilier/pass-vip"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(primo-accession|erstbeitritt|first-accession)(?(?=\?)(.+)|)$" => "/immobilier/immobilier/primo-accession"
"(.*)/(immobilier/visite-live-a-distance|immobilien/besichtigung-live-a-distance|real-estate/visit-live-a-distance)(?(?=\?)(.+)|)$" => "/immobilier/visite-live-a-distance"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(vivre-dans-le-neuf|leben-in-einer-neuen-umgebung|living-in-a-new-environment)(?(?=\?)(.+)|)$" => "/immobilier/vivre-dans-le-neuf"
"(.*)/(mentions-legales|rechtliche-hinweise|legal-notices|mencao-legal)(?(?=\?)(.+)|)$" => "/mentions-legales"
"(.*)/(mon-compte|mein-konto|my-account)(?(?=\?)(.+)|)$" => "/mon-compte"
"(.*)/(mon-compte/home|mein-konto/home|my-account/home)(?(?=\?)(.+)|)$" => "/mon-compte/home"
"(.*)/(mon-compte/espace-proprietaire|mein-konto/primar-raum|my-account/private-area)(?(?=\?)(.+)|)$" => "/mon-compte/espace-proprietaire"
"(.*)/(mandat-optimust)(?(?=\?)(.+)|)$" => "/mandat-optimust"
"(.*)/(neuf|neu|new|novo)(?(?=\?)(.+)|)$" => "/neuf"
"(.*)/(nous-contacter|kontakt-uns|contact-us|contacte-nos)(?(?=\?)(.+)|)$" => "/nous-contacter"
"(.*)/(politique-generale-confidentialite|allgemeine-politik-vertraulichkeit|general-policy-confidentiality|politica-geral-privacidade)(?(?=\?)(.+)|)$" => "/politique-generale-confidentialite"
"(.*)/(rekrutierung)(?(?=\?)(.+)|)$" => "/recrutement"
"(.*)/(vendre|verkaufen|sell|vender)(?(?=\?)(.+)|)$" => "/vendre"
"(.*)/(annonces|commerces|neuf)/(vente|achat|louer|fonds)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(adverts|shops)/(sale|buy|rental|business)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(verlautbarungen|shops)/(mieten|einkaufen|verlieh|gewerbe)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(anuncios|comerciais|novo)/(venda|comprar|aluguer|fundos|aluguer)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(annonces|verlautbarungen)/(achat|einkaufen|mieten|louer)(/page:\d+)?(\?.*)?$" => "/annonces/transaction"
"(.*)/region/(\w+)(?(?=\?)(.+)|)$" => "/annonces/region"
"(.*)/bezirk/(\w+)(?(?=\?)(.+)|)$" => "/annonces/region"
"(.*)/estimer-mon-bien(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/estimate-my-property(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/schatzen-meine-eigenschaft(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/schatzen-meine-eigenschaft?(.*)" => "/estimer-mon-bien"
"(.*)/immobilienbewertung(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/immobilienbewertung?(.*)" => "/estimer-mon-bien"
"(.*)/apreciar-meu-propriedade(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/conseillers/estimation(?(?=/)(.+)|)$" => "/estimer"
"(.*)/conseillers/estimation/etapes(?(?=/)(.+)|)$" => "/estimer/etapes"
"(.*)/conseillers/estimation/etapes/.*/resultat/(.*)" => "/estimer/resultat-agent"
"(.*)/conseillers/apporteur-affaires/suivi/([\w\-.]+)(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche/apporteur-affaires/suivi"
"(.*)/conseillers/apporteur-affaires/etapes/([\w\-.]+)/merci(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche/apporteur-affaires/etapes/merci"
"(.*)/conseillers/apporteur-affaires/([\w\-.]+)(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche/apporteur-affaires"
"(.*)/conseillers/apporteur-affaires/etapes/([\w\-.]+)$" => "/nos-conseillers/fiche/apporteur-affaires/etapes"
"(.*)/estimer-appartement$" => "/estimer"
"(.*)/estimer-maison$" => "/estimer"
"(.*)/estimer-appartement?(.*)$" => "/estimer"
"(.*)/estimer-maison?(.*)$" => "/estimer"
"(.*)/estimer-appartement/etapes$" => "/estimer/etapes"
"(.*)/estimer-maison/etapes$" => "/estimer/etapes"
"(.*)/estimer-appartement/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer-maison/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/combien-pour-mon-bien/resultat/(.*)" => "/combien-pour-mon-bien/resultat"
"(.*)/combien-pour-mon-bien-estimation/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer-mon-bien/resultat/(.*)" => "/estimer-mon-bien/resultat"
"/estimate" => "/estimer-mon-bien"
"/estimate/result" => "/estimer-mon-bien/resultat"
"(.*)/vendre(?(?=/)(.+)|)$" => "/vendre"
"(.*)/sell(?(?=/)(.+)|)$" => "/vendre"
"(.*)/verkaufen(?(?=/)(.+)|)$" => "/vendre"
"(.*)/vender(?(?=/)(.+)|)$" => "/vendre"
"(.*)/(favoris|favorites|favoriten|os-meus-favoritos)(?(?=\?)(.+)|)$" => "/favoris"
"(.*)/(commerces/vendre|shops/sell|shops/verkaufen|vender/lojas)(?(?=/)(.+)|)$" => "/vendre-commerces"
"(.*)/nos-conseillers/fiche/vendre/(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche/vendre"
"(.*)/nos-conseillers/fiche/estimation-rdv/(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche/estimation-rdv"
"(.*)/nos-conseillers/fiche/estimation-rdv/merci(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche/estimation-rdv/merci"
"/annonces/villes(?(?=\?)(.+)|)$" => "/annonces/villes"
"/annonces/villes/[a-z](?(?=\?)(.+)|)$" => "/annonces/villes-lettre"
"/annonces/achat/\w+(?(?=\?)(.+)|)$" => "/seo/city"
"/annonces/achat/\w+/\w+(?(?=\?)(.+)|)$" => "/seo/city-type"
"/([\w*-._]*)(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche"
]
"blog" => array:1 [
"route" => "/blog"
]
"env" => "prod"
"exclude_cafpi_agent" => array:1 [
0 => "2018"
]
"emails" => array:1 [
"regex" => "/([a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+)/"
]
"activityStatus" => "SELLER"
"partnerId" => "optimhome"
"domain" => "optimhome"
"show_login_form" => true
"mapping_url_subdomain" => array:28 [
"alsace" => "annonces/achat?adresse=Grand%20Est"
"auvergne" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
"bourgogne" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
"bretagne" => "annonces/achat?adresse=Bretagne"
"centre" => "annonces/achat?adresse=Centre-Val%20de%20Loire"
"champagne-ardenne" => "annonces/achat?adresse=Grand%20Est"
"corse" => "annonces/achat?adresse=Corse"
"franche-comte" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
"guadeloupe" => "annonces/achat?affichage=grid-view&adresse=Guadeloupe"
"guyane" => "annonces/achat?affichage=grid-view&adresse=Guyane%20française"
"ile-de-france" => "annonces/achat?adresse=Île-de-France"
"languedoc-roussillon" => "annonces/achat?adresse=Occitanie"
"limousin" => "annonces/achat?adresse=Nouvelle-Aquitaine"
"lorraine" => "annonces/achat?adresse=Grand%20Est"
"martinique" => "annonces/achat?affichage=grid-view&adresse=Martinique"
"midi-pyrenees" => "annonces/achat?adresse=Occitanie"
"nord-pas-de-calais" => "annonces/achat?adresse=Hauts-de-France"
"basse-normandie" => "annonces/achat?adresse=Normandie"
"haute-normandie" => "annonces/achat?adresse=Normandie"
"pays-de-la-loire" => "annonces/achat?adresse=Pays%20de%20la%20Loire"
"picardie" => "annonces/achat?adresse=Hauts-de-France"
"poitou-charentes" => "annonces/achat?adresse=Nouvelle-Aquitaine"
"paca" => "annonces/achat?adresse=PACA"
"reunion" => "annonces/achat?adresse=La%20Réunion"
"rhone-alpes" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
"exclusif" => "annonces/achat?exclusif=true"
"medoc" => "annonces/achat?adresse=Nouvelle-Aquitaine"
"commerce" => "commerces"
]
"background-regions" => array:18 [
"Hauts-de-France, France" => "bgmoteur_annonces-hautsdefrance.jpg"
"Normandie, France" => "bgmoteur_annonces-normandie.jpg"
"Île-de-France, France" => "bgmoteur_annonces-iledefrance.jpg"
"Bretagne, France" => "bgmoteur_annonces-bretagne.jpg"
"Auvergne-Rhône-Alpes, France" => "bgmoteur_annonces-auvergnerhonealpes.jpg"
"Bourgogne Franche-Comté, France" => "bgmoteur_annonces-bourgognefranchecompte.jpg"
"Centre-Val de Loire, France" => "bgmoteur_annonces-centrevaldeloire.jpg"
"Pays de la Loire, France" => "bgmoteur_annonces-valdeloire.jpg"
"Nouvelle-Aquitaine, France" => "bgmoteur_annonces-nouvelleaquitaine.jpg"
"Occitanie, France" => "bgmoteur_annonces-occitanie.jpg"
"PACA, France" => "bgmoteur_annonces-paca.jpg"
"Corse, France" => "bgmoteur_annonces-corse.jpg"
"Grand Est, France" => "bgmoteur_annonces-grandest.jpg"
"Guadeloupe" => "bgmoteur_annonces-guadeloupe.jpg"
"Arrondissement de Cayenne, France" => "bgmoteur_annonces-guyane.jpg"
"La Réunion" => "bgmoteur_annonces-lareunion.jpg"
"Martinique" => "bgmoteur_annonces-martinique.jpg"
"Mayotte" => "bgmoteur_annonces-mayotte.jpg"
]
"site_de" => "https://www.optimhome.com/de"
"site_pt" => "https://www.optimhome.com/pt"
"site_en" => "https://www.optimhome.com/en"
"site_fr" => "https://www.optimhome.com"
"property_pdf" => array:1 [
"file_name" => "Fiche_bien_"
]
"reference_length" => array:2 [
"fr" => 12
"pt" => 4
]
"geolocation" => array:1 [
"city" => "Paris"
]
"acxtest" => "TEST"
"intranet-url" => "https://intranet.digitregroup.io"
"graphql" => array:2 [
"endpoint" => "https://intranet.digitregroup.io/graphql/"
"token" => "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjowLCJlbWFpbCI6ImFkbWluQGRpZ2l0cmVncm91cC5jb20iLCJyb2xlIjpbIkFETUlOIl0sInJ1bGVzIjpbeyJhY3Rpb25zIjpbInJlYWQiLCJ3cml0ZSIsImRlbGV0ZSJdLCJzdWJqZWN0IjoiYW55In1dfSwiaWF0IjoxNTUyNTgwNDI4fQ.SQdTRJQEUlvHMTn6_3pNwYDCM3aj2Taw-_bNjK3NBhM"
]
]
"uri" => Uri {#138}
"assets" => Assets {#251}
"taxonomy" => Taxonomy {#423}
"browser" => Browser {#458}
"base_dir" => "/var/app/current"
"home_url" => "/"
"base_url" => ""
"base_url_absolute" => "https://www.optimhome.com"
"base_url_relative" => ""
"base_url_simple" => ""
"theme_dir" => "/var/app/current/user/themes/optimhome"
"theme_url" => "/user/themes/optimhome"
"html_lang" => "fr"
"language_codes" => LanguageCodes {#459}
"breadcrumbs" => Breadcrumbs {#196}
"form" => null
"form_max_filesize" => 15
"form_json_response" => []
"page" => Page {#519}
"media" => Media {#1159}
"header" => {#520}
"grav" => Grav {#3}
"collection" => Collection {#1486}
]
[]
/var
/app
/current
/vendor
/twig
/twig
/src
/Template.php
{
return $this;
}
/**
* Returns all blocks.
*
* This method is for internal use only and should never be called
* directly.
*
* @return array An array of blocks
*/
public function getBlocks()
{
return $this->blocks;
}
public function display(array $context, array $blocks = [])
{
$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;
Arguments
array:26 [
"config" => Config {#96}
"system" => array:30 [
"absolute_urls" => false
"timezone" => ""
"default_locale" => null
"param_sep" => ":"
"wrapped_site" => false
"reverse_proxy_setup" => false
"force_ssl" => false
"force_lowercase_urls" => true
"custom_base_url" => ""
"username_regex" => "^[a-z0-9_@\.-]{3,50}$"
"pwd_regex" => "(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}"
"intl_enabled" => true
"languages" => array:9 [
"supported" => array:2 [
0 => "fr"
1 => "de"
]
"default_lang" => null
"include_default_lang" => false
"pages_fallback_only" => false
"translations" => true
"translations_fallback" => true
"session_store_active" => false
"http_accept_language" => false
"override_locale" => false
]
"home" => array:2 [
"alias" => "/home"
"hide_in_urls" => true
]
"pages" => array:26 [
"theme" => "optimhome"
"order" => array:2 [
"by" => "default"
"dir" => "asc"
]
"list" => array:1 [
"count" => 20
]
"dateformat" => array:3 [
"default" => null
"short" => "jS M Y"
"long" => "F jS \a\t g:ia"
]
"publish_dates" => true
"process" => array:2 [
"markdown" => false
"twig" => true
]
"twig_first" => false
"never_cache_twig" => false
"events" => array:2 [
"page" => true
"twig" => true
]
"markdown" => array:5 [
"extra" => false
"auto_line_breaks" => false
"auto_url_links" => false
"escape_markup" => false
"special_chars" => array:2 [
">" => "gt"
"<" => "lt"
]
]
"types" => array:7 [
0 => "html"
1 => "htm"
2 => "xml"
3 => "txt"
4 => "json"
5 => "rss"
6 => "atom"
]
"append_url_extension" => ""
"expires" => 604800
"cache_control" => null
"last_modified" => false
"etag" => false
"vary_accept_encoding" => false
"redirect_default_route" => false
"redirect_default_code" => "301"
"redirect_trailing_slash" => false
"ignore_files" => array:1 [
0 => ".DS_Store"
]
"ignore_folders" => array:2 [
0 => ".git"
1 => ".idea"
]
"ignore_hidden" => true
"hide_empty_folders" => false
"url_taxonomy_filters" => true
"frontmatter" => array:2 [
"process_twig" => true
"ignore_fields" => array:2 [
0 => "form"
1 => "forms"
]
]
]
"cache" => array:13 [
"enabled" => true
"check" => array:1 [
"method" => "file"
]
"driver" => "file"
"prefix" => "g"
"purge_at" => "0 4 * * *"
"clear_at" => "0 3 * * *"
"clear_job_type" => "standard"
"clear_images_by_default" => true
"cli_compatibility" => false
"lifetime" => 3600
"gzip" => false
"allow_webserver_gzip" => false
"redis" => array:1 [
"socket" => false
]
]
"twig" => array:7 [
"cache" => true
"debug" => true
"auto_reload" => true
"autoescape" => false
"undefined_functions" => true
"undefined_filters" => true
"umask_fix" => false
]
"assets" => array:12 [
"css_pipeline" => false
"css_pipeline_include_externals" => true
"css_pipeline_before_excludes" => true
"css_minify" => true
"css_minify_windows" => false
"css_rewrite" => true
"js_pipeline" => false
"js_pipeline_include_externals" => true
"js_pipeline_before_excludes" => true
"js_minify" => true
"enable_asset_timestamp" => false
"collections" => array:1 [
"jquery" => "system://assets/jquery/jquery-2.x.min.js"
]
]
"errors" => array:2 [
"display" => true
"log" => true
]
"log" => array:2 [
"handler" => "file"
"syslog" => array:1 [
"facility" => "local6"
]
]
"debugger" => array:3 [
"enabled" => false
"shutdown" => array:1 [
"close_connection" => true
]
"twig" => true
]
"images" => array:6 [
"default_image_quality" => 85
"cache_all" => false
"cache_perms" => "0755"
"debug" => false
"auto_fix_orientation" => false
"seofriendly" => false
]
"media" => array:5 [
"enable_media_timestamp" => false
"unsupported_inline_types" => []
"allowed_fallback_types" => []
"auto_metadata_exif" => false
"upload_limit" => 15728640
]
"session" => array:9 [
"enabled" => true
"initialize" => true
"timeout" => 1800
"name" => "grav-site"
"uniqueness" => "path"
"secure" => false
"httponly" => true
"split" => true
"path" => null
]
"gpm" => array:5 [
"releases" => "stable"
"proxy_url" => null
"method" => "auto"
"verify_peer" => true
"official_gpm_only" => true
]
"accounts" => array:2 [
"type" => "data"
"storage" => "file"
]
"strict_mode" => array:2 [
"yaml_compat" => true
"twig_compat" => true
]
"gtm_stage_enabled" => false
"matomo_prod_enabled" => true
"seo-factory" => array:1 [
"bu" => "OPTIMHOME"
]
]
"theme" => array:2 [
"streams" => array:1 [
"schemes" => array:1 [
"theme" => array:2 [
"type" => "ReadOnlyStream"
"prefixes" => array:1 [
"" => array:2 [
0 => "user/themes/optimhome"
1 => "user/themes/digit-website"
]
]
]
]
]
"marketing-operations" => array:3 [
"saison-estimation-2019" => array:3 [
"startDate" => "2019-03-20"
"endDate" => "2019-04-30"
"body_class" => "op_estim"
]
"ope-neuf-2019" => array:3 [
"startDate" => "2019-06-01"
"endDate" => "2019-06-30"
"body_class" => "op_neuf"
]
"op-optimust-2019" => array:3 [
"startDate" => "2019-09-11"
"endDate" => "2019-11-01"
"body_class" => "op_optimust"
]
]
]
"site" => array:28 [
"title" => "Optimhome Immobilier"
"default_lang" => "fr"
"author" => array:2 [
"name" => "DigitRE"
"email" => "[email protected]"
]
"taxonomies" => array:2 [
0 => "category"
1 => "tag"
]
"metadata" => array:2 [
"generator" => ""
"description" => ""
]
"summary" => array:4 [
"enabled" => true
"format" => "short"
"size" => 300
"delimiter" => "==="
]
"redirects" => array:40 [
"/combien-pour-mon-bien$" => "/"
"/annonces$" => "/annonces/achat"
"/conseillers/market$" => "/maintenance"
"/verlautbarungen$" => "/annonces/achat"
"/adverts$" => "/annonces/achat"
"/anuncios$" => "/annonces/achat"
"/neuf$" => "/annonces/achat?affichage=grid-view&category[]=isNew"
"/commerces$" => "/annonces/achat?affichage=grid-view&propertyTypes[]=BUSINESS_CAPITAL"
"/ville_bien/(.*)_(.*)_(.*)__(.*)/(.*)" => "/annonces/achat?affichage=grid-view&adresse=$1"
"/ville_bien/(.*)_/(.*).html" => "/annonces/achat?affichage=grid-view&adresse=$1"
"/news/(.*)" => "/actualites"
"/content/6/estimation-immobiliere-en-ligne-1.html" => "/estimer-mon-bien"
"/content/5/mentions-legales.html?language=fr" => "/mentions-legales"
"/agence/(.*)" => "/nos-conseillers"
"/ville_bien/(.*)_(.*)_(.*)__Vente" => "/annonces/achat?affichage=grid-view&adresse=$1"
"/catalog/estimation.php" => "/estimer-mon-bien"
"/fiches/(.*)" => "/annonces/achat"
"(.*)PRODUCT_LIST_(.*)" => "/annonces/achat"
"(.*)_Vente/vente-(.*)" => "/annonces/achat"
"/annonces/(.*)____Vente_/vente.html" => "/annonces/achat"
"/type_bien/(.*)" => "/annonces/achat"
"/annonces/_____(.*)/immobilier.html" => "/annonces/achat"
"/annonces/(.*)_____2/.html" => "/annonces/achat"
"/conseillers/(.*)-recrutement-immobilier" => "/nos-conseillers"
"/annonces/exclusivites" => "/annonces/achat?affichage=grid-view&exclusif=true"
"/de-(.*).html" => "/de"
"/fr-(.*).html" => "/annonces/achat"
"/es-(.*).html" => "/"
"/nl-(.*).html" => "/"
"/pt-(.*).html" => "/pt"
"/ville_bien/(.*).html" => "/annonces/achat"
"/catalog/news.php" => "/actualites"
"/it-(.*).html" => "/en"
"/en-(.*).html" => "/en"
"(.*)/(region|bezirk)(?(?=\?)(.+)|)$" => "/[301]"
"(.*)/(regions|regionen)(?(?=\?)(.+)|)$" => "/[301]"
"/de/betreuer/steinseufzer-robert" => "/betreuer/robert-steinseufzer"
"(.*)/estimer/appartement" => "/estimer-appartement"
"(.*)/estimer/maison" => "/estimer-maison"
"/conseillers/casseleux" => "/conseillers/aurelie.casseleux"
]
"routes" => array:88 [
"(.*)/(actualites|neuigkeit|news|noticias)(?(?=\?)(.+)|)$" => "/actualites"
"(.*)/(conseillers|agents|betreuer|agentes|conselheiros)/page:(\d+)$" => "/nos-conseillers"
"(.*)/(conseillers|agents|betreuer|agentes|conselheiros)(?(?=\?)(.+)|)$" => "/nos-conseillers"
"(.*)/(commerces|shops|neuf)/nos-conseillers(?(?=\?)(.+)|)$" => "/nos-conseillers"
"(.*)/(new/agents)(?(?=\?)(.+)|)$" => "/nos-conseillers"
"(.*)/(conseillers|agents|betreuer|agentes|conselheiros)/(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche"
"(.*)/(annonces|commerces)/(fiche|vente|achat|location|reprendre)/([\w-]+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(annonces|commerces)/(vente|achat|location|reprendre)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(adverts|shops)/(sale|buy|rental|resume)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(verlautbarungen|geschafte|shops)/(verkauf|mieten|einkaufen|verlieh|zusammenfassung)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(anuncios|lojas)/(compra|venda|aluguel|retomar)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(annonces|commerces)/(vente|achat|location)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(adverts|shops)/(sale|buy|rental)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(verlautbarungen|geschafte)/(verkauf|mieten|einkaufen|verlieh)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(anuncios|lojas)/(compra|venda|aluguel)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(annonces/villes|verlautbarungen/ortschaften|adverts/cities|anuncios/cidades)(?(?=\?)(.+)|)$" => "/annonces/villes"
"(.*)/(commerces|shops|lojas)(?(?=\?)(.+)|)$" => "/commerces"
"(.*)/(immobilier/avis-clients|immobilien/kundenrezensionen|real-estate/customer-reviews|imoveis/opinioes-clientes)(?(?=\?)(.+)|)$" => "/immobilier/avis-clients"
"(.*)/(immobilien|imobiliaria)/(konzept|o-conceito)(?(?=\?)(.+)|)$" => "/immobilier/concept"
"(.*)/(immobilier|immobilien|real-estate|imoveis|imobiliaria)/international(?(?=\?)(.+)|)$" => "/immobilier/international"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(investir-dans-le-neuf|investieren-in-die-neue|invest-in-the-new)(?(?=\?)(.+)|)$" => "/immobilier/investir-dans-le-neuf"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(nos-valeurs|unsere-werte|our-values)(?(?=\?)(.+)|)$" => "/immobilier/nos-valeurs"
"(.*)/(immobilier|immobilien|real-estate|imoveis|imoveis)/(pourquoi|warum|why|por-que)(?(?=\?)(.+)|)$" => "/immobilier/pourquoi-choisir-optimhome"
"(.*)/(immobilier|immobilien|real-estate|imoveis|imobiliaria)/(qui-sommes-nous|wer-sind-wir|who-we-are|quem-somos-nos)(?(?=\?)(.+)|)$" => "/immobilier/qui-sommes-nous"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/pass-vip(?(?=\?)(.+)|)$" => "/immobilier/pass-vip"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(primo-accession|erstbeitritt|first-accession)(?(?=\?)(.+)|)$" => "/immobilier/immobilier/primo-accession"
"(.*)/(immobilier/visite-live-a-distance|immobilien/besichtigung-live-a-distance|real-estate/visit-live-a-distance)(?(?=\?)(.+)|)$" => "/immobilier/visite-live-a-distance"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(vivre-dans-le-neuf|leben-in-einer-neuen-umgebung|living-in-a-new-environment)(?(?=\?)(.+)|)$" => "/immobilier/vivre-dans-le-neuf"
"(.*)/(mentions-legales|rechtliche-hinweise|legal-notices|mencao-legal)(?(?=\?)(.+)|)$" => "/mentions-legales"
"(.*)/(mon-compte|mein-konto|my-account)(?(?=\?)(.+)|)$" => "/mon-compte"
"(.*)/(mon-compte/home|mein-konto/home|my-account/home)(?(?=\?)(.+)|)$" => "/mon-compte/home"
"(.*)/(mon-compte/espace-proprietaire|mein-konto/primar-raum|my-account/private-area)(?(?=\?)(.+)|)$" => "/mon-compte/espace-proprietaire"
"(.*)/(mandat-optimust)(?(?=\?)(.+)|)$" => "/mandat-optimust"
"(.*)/(neuf|neu|new|novo)(?(?=\?)(.+)|)$" => "/neuf"
"(.*)/(nous-contacter|kontakt-uns|contact-us|contacte-nos)(?(?=\?)(.+)|)$" => "/nous-contacter"
"(.*)/(politique-generale-confidentialite|allgemeine-politik-vertraulichkeit|general-policy-confidentiality|politica-geral-privacidade)(?(?=\?)(.+)|)$" => "/politique-generale-confidentialite"
"(.*)/(rekrutierung)(?(?=\?)(.+)|)$" => "/recrutement"
"(.*)/(vendre|verkaufen|sell|vender)(?(?=\?)(.+)|)$" => "/vendre"
"(.*)/(annonces|commerces|neuf)/(vente|achat|louer|fonds)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(adverts|shops)/(sale|buy|rental|business)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(verlautbarungen|shops)/(mieten|einkaufen|verlieh|gewerbe)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(anuncios|comerciais|novo)/(venda|comprar|aluguer|fundos|aluguer)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(annonces|verlautbarungen)/(achat|einkaufen|mieten|louer)(/page:\d+)?(\?.*)?$" => "/annonces/transaction"
"(.*)/region/(\w+)(?(?=\?)(.+)|)$" => "/annonces/region"
"(.*)/bezirk/(\w+)(?(?=\?)(.+)|)$" => "/annonces/region"
"(.*)/estimer-mon-bien(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/estimate-my-property(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/schatzen-meine-eigenschaft(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/schatzen-meine-eigenschaft?(.*)" => "/estimer-mon-bien"
"(.*)/immobilienbewertung(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/immobilienbewertung?(.*)" => "/estimer-mon-bien"
"(.*)/apreciar-meu-propriedade(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/conseillers/estimation(?(?=/)(.+)|)$" => "/estimer"
"(.*)/conseillers/estimation/etapes(?(?=/)(.+)|)$" => "/estimer/etapes"
"(.*)/conseillers/estimation/etapes/.*/resultat/(.*)" => "/estimer/resultat-agent"
"(.*)/conseillers/apporteur-affaires/suivi/([\w\-.]+)(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche/apporteur-affaires/suivi"
"(.*)/conseillers/apporteur-affaires/etapes/([\w\-.]+)/merci(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche/apporteur-affaires/etapes/merci"
"(.*)/conseillers/apporteur-affaires/([\w\-.]+)(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche/apporteur-affaires"
"(.*)/conseillers/apporteur-affaires/etapes/([\w\-.]+)$" => "/nos-conseillers/fiche/apporteur-affaires/etapes"
"(.*)/estimer-appartement$" => "/estimer"
"(.*)/estimer-maison$" => "/estimer"
"(.*)/estimer-appartement?(.*)$" => "/estimer"
"(.*)/estimer-maison?(.*)$" => "/estimer"
"(.*)/estimer-appartement/etapes$" => "/estimer/etapes"
"(.*)/estimer-maison/etapes$" => "/estimer/etapes"
"(.*)/estimer-appartement/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer-maison/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/combien-pour-mon-bien/resultat/(.*)" => "/combien-pour-mon-bien/resultat"
"(.*)/combien-pour-mon-bien-estimation/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer-mon-bien/resultat/(.*)" => "/estimer-mon-bien/resultat"
"/estimate" => "/estimer-mon-bien"
"/estimate/result" => "/estimer-mon-bien/resultat"
"(.*)/vendre(?(?=/)(.+)|)$" => "/vendre"
"(.*)/sell(?(?=/)(.+)|)$" => "/vendre"
"(.*)/verkaufen(?(?=/)(.+)|)$" => "/vendre"
"(.*)/vender(?(?=/)(.+)|)$" => "/vendre"
"(.*)/(favoris|favorites|favoriten|os-meus-favoritos)(?(?=\?)(.+)|)$" => "/favoris"
"(.*)/(commerces/vendre|shops/sell|shops/verkaufen|vender/lojas)(?(?=/)(.+)|)$" => "/vendre-commerces"
"(.*)/nos-conseillers/fiche/vendre/(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche/vendre"
"(.*)/nos-conseillers/fiche/estimation-rdv/(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche/estimation-rdv"
"(.*)/nos-conseillers/fiche/estimation-rdv/merci(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche/estimation-rdv/merci"
"/annonces/villes(?(?=\?)(.+)|)$" => "/annonces/villes"
"/annonces/villes/[a-z](?(?=\?)(.+)|)$" => "/annonces/villes-lettre"
"/annonces/achat/\w+(?(?=\?)(.+)|)$" => "/seo/city"
"/annonces/achat/\w+/\w+(?(?=\?)(.+)|)$" => "/seo/city-type"
"/([\w*-._]*)(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche"
]
"blog" => array:1 [
"route" => "/blog"
]
"env" => "prod"
"exclude_cafpi_agent" => array:1 [
0 => "2018"
]
"emails" => array:1 [
"regex" => "/([a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+)/"
]
"activityStatus" => "SELLER"
"partnerId" => "optimhome"
"domain" => "optimhome"
"show_login_form" => true
"mapping_url_subdomain" => array:28 [
"alsace" => "annonces/achat?adresse=Grand%20Est"
"auvergne" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
"bourgogne" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
"bretagne" => "annonces/achat?adresse=Bretagne"
"centre" => "annonces/achat?adresse=Centre-Val%20de%20Loire"
"champagne-ardenne" => "annonces/achat?adresse=Grand%20Est"
"corse" => "annonces/achat?adresse=Corse"
"franche-comte" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
"guadeloupe" => "annonces/achat?affichage=grid-view&adresse=Guadeloupe"
"guyane" => "annonces/achat?affichage=grid-view&adresse=Guyane%20française"
"ile-de-france" => "annonces/achat?adresse=Île-de-France"
"languedoc-roussillon" => "annonces/achat?adresse=Occitanie"
"limousin" => "annonces/achat?adresse=Nouvelle-Aquitaine"
"lorraine" => "annonces/achat?adresse=Grand%20Est"
"martinique" => "annonces/achat?affichage=grid-view&adresse=Martinique"
"midi-pyrenees" => "annonces/achat?adresse=Occitanie"
"nord-pas-de-calais" => "annonces/achat?adresse=Hauts-de-France"
"basse-normandie" => "annonces/achat?adresse=Normandie"
"haute-normandie" => "annonces/achat?adresse=Normandie"
"pays-de-la-loire" => "annonces/achat?adresse=Pays%20de%20la%20Loire"
"picardie" => "annonces/achat?adresse=Hauts-de-France"
"poitou-charentes" => "annonces/achat?adresse=Nouvelle-Aquitaine"
"paca" => "annonces/achat?adresse=PACA"
"reunion" => "annonces/achat?adresse=La%20Réunion"
"rhone-alpes" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
"exclusif" => "annonces/achat?exclusif=true"
"medoc" => "annonces/achat?adresse=Nouvelle-Aquitaine"
"commerce" => "commerces"
]
"background-regions" => array:18 [
"Hauts-de-France, France" => "bgmoteur_annonces-hautsdefrance.jpg"
"Normandie, France" => "bgmoteur_annonces-normandie.jpg"
"Île-de-France, France" => "bgmoteur_annonces-iledefrance.jpg"
"Bretagne, France" => "bgmoteur_annonces-bretagne.jpg"
"Auvergne-Rhône-Alpes, France" => "bgmoteur_annonces-auvergnerhonealpes.jpg"
"Bourgogne Franche-Comté, France" => "bgmoteur_annonces-bourgognefranchecompte.jpg"
"Centre-Val de Loire, France" => "bgmoteur_annonces-centrevaldeloire.jpg"
"Pays de la Loire, France" => "bgmoteur_annonces-valdeloire.jpg"
"Nouvelle-Aquitaine, France" => "bgmoteur_annonces-nouvelleaquitaine.jpg"
"Occitanie, France" => "bgmoteur_annonces-occitanie.jpg"
"PACA, France" => "bgmoteur_annonces-paca.jpg"
"Corse, France" => "bgmoteur_annonces-corse.jpg"
"Grand Est, France" => "bgmoteur_annonces-grandest.jpg"
"Guadeloupe" => "bgmoteur_annonces-guadeloupe.jpg"
"Arrondissement de Cayenne, France" => "bgmoteur_annonces-guyane.jpg"
"La Réunion" => "bgmoteur_annonces-lareunion.jpg"
"Martinique" => "bgmoteur_annonces-martinique.jpg"
"Mayotte" => "bgmoteur_annonces-mayotte.jpg"
]
"site_de" => "https://www.optimhome.com/de"
"site_pt" => "https://www.optimhome.com/pt"
"site_en" => "https://www.optimhome.com/en"
"site_fr" => "https://www.optimhome.com"
"property_pdf" => array:1 [
"file_name" => "Fiche_bien_"
]
"reference_length" => array:2 [
"fr" => 12
"pt" => 4
]
"geolocation" => array:1 [
"city" => "Paris"
]
"acxtest" => "TEST"
"intranet-url" => "https://intranet.digitregroup.io"
"graphql" => array:2 [
"endpoint" => "https://intranet.digitregroup.io/graphql/"
"token" => "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjowLCJlbWFpbCI6ImFkbWluQGRpZ2l0cmVncm91cC5jb20iLCJyb2xlIjpbIkFETUlOIl0sInJ1bGVzIjpbeyJhY3Rpb25zIjpbInJlYWQiLCJ3cml0ZSIsImRlbGV0ZSJdLCJzdWJqZWN0IjoiYW55In1dfSwiaWF0IjoxNTUyNTgwNDI4fQ.SQdTRJQEUlvHMTn6_3pNwYDCM3aj2Taw-_bNjK3NBhM"
]
]
"uri" => Uri {#138}
"assets" => Assets {#251}
"taxonomy" => Taxonomy {#423}
"browser" => Browser {#458}
"base_dir" => "/var/app/current"
"home_url" => "/"
"base_url" => ""
"base_url_absolute" => "https://www.optimhome.com"
"base_url_relative" => ""
"base_url_simple" => ""
"theme_dir" => "/var/app/current/user/themes/optimhome"
"theme_url" => "/user/themes/optimhome"
"html_lang" => "fr"
"language_codes" => LanguageCodes {#459}
"breadcrumbs" => Breadcrumbs {#196}
"form" => null
"form_max_filesize" => 15
"form_json_response" => []
"page" => Page {#519}
"media" => Media {#1159}
"header" => {#520}
"grav" => Grav {#3}
]
[]
/var
/app
/current
/vendor
/twig
/twig
/src
/Template.php
* directly.
*
* @return array An array of blocks
*/
public function getBlocks()
{
return $this->blocks;
}
public function display(array $context, array $blocks = [])
{
$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 = [])
{
try {
Arguments
array:25 [
"config" => Config {#96}
"system" => array:30 [
"absolute_urls" => false
"timezone" => ""
"default_locale" => null
"param_sep" => ":"
"wrapped_site" => false
"reverse_proxy_setup" => false
"force_ssl" => false
"force_lowercase_urls" => true
"custom_base_url" => ""
"username_regex" => "^[a-z0-9_@\.-]{3,50}$"
"pwd_regex" => "(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}"
"intl_enabled" => true
"languages" => array:9 [
"supported" => array:2 [
0 => "fr"
1 => "de"
]
"default_lang" => null
"include_default_lang" => false
"pages_fallback_only" => false
"translations" => true
"translations_fallback" => true
"session_store_active" => false
"http_accept_language" => false
"override_locale" => false
]
"home" => array:2 [
"alias" => "/home"
"hide_in_urls" => true
]
"pages" => array:26 [
"theme" => "optimhome"
"order" => array:2 [
"by" => "default"
"dir" => "asc"
]
"list" => array:1 [
"count" => 20
]
"dateformat" => array:3 [
"default" => null
"short" => "jS M Y"
"long" => "F jS \a\t g:ia"
]
"publish_dates" => true
"process" => array:2 [
"markdown" => false
"twig" => true
]
"twig_first" => false
"never_cache_twig" => false
"events" => array:2 [
"page" => true
"twig" => true
]
"markdown" => array:5 [
"extra" => false
"auto_line_breaks" => false
"auto_url_links" => false
"escape_markup" => false
"special_chars" => array:2 [
">" => "gt"
"<" => "lt"
]
]
"types" => array:7 [
0 => "html"
1 => "htm"
2 => "xml"
3 => "txt"
4 => "json"
5 => "rss"
6 => "atom"
]
"append_url_extension" => ""
"expires" => 604800
"cache_control" => null
"last_modified" => false
"etag" => false
"vary_accept_encoding" => false
"redirect_default_route" => false
"redirect_default_code" => "301"
"redirect_trailing_slash" => false
"ignore_files" => array:1 [
0 => ".DS_Store"
]
"ignore_folders" => array:2 [
0 => ".git"
1 => ".idea"
]
"ignore_hidden" => true
"hide_empty_folders" => false
"url_taxonomy_filters" => true
"frontmatter" => array:2 [
"process_twig" => true
"ignore_fields" => array:2 [
0 => "form"
1 => "forms"
]
]
]
"cache" => array:13 [
"enabled" => true
"check" => array:1 [
"method" => "file"
]
"driver" => "file"
"prefix" => "g"
"purge_at" => "0 4 * * *"
"clear_at" => "0 3 * * *"
"clear_job_type" => "standard"
"clear_images_by_default" => true
"cli_compatibility" => false
"lifetime" => 3600
"gzip" => false
"allow_webserver_gzip" => false
"redis" => array:1 [
"socket" => false
]
]
"twig" => array:7 [
"cache" => true
"debug" => true
"auto_reload" => true
"autoescape" => false
"undefined_functions" => true
"undefined_filters" => true
"umask_fix" => false
]
"assets" => array:12 [
"css_pipeline" => false
"css_pipeline_include_externals" => true
"css_pipeline_before_excludes" => true
"css_minify" => true
"css_minify_windows" => false
"css_rewrite" => true
"js_pipeline" => false
"js_pipeline_include_externals" => true
"js_pipeline_before_excludes" => true
"js_minify" => true
"enable_asset_timestamp" => false
"collections" => array:1 [
"jquery" => "system://assets/jquery/jquery-2.x.min.js"
]
]
"errors" => array:2 [
"display" => true
"log" => true
]
"log" => array:2 [
"handler" => "file"
"syslog" => array:1 [
"facility" => "local6"
]
]
"debugger" => array:3 [
"enabled" => false
"shutdown" => array:1 [
"close_connection" => true
]
"twig" => true
]
"images" => array:6 [
"default_image_quality" => 85
"cache_all" => false
"cache_perms" => "0755"
"debug" => false
"auto_fix_orientation" => false
"seofriendly" => false
]
"media" => array:5 [
"enable_media_timestamp" => false
"unsupported_inline_types" => []
"allowed_fallback_types" => []
"auto_metadata_exif" => false
"upload_limit" => 15728640
]
"session" => array:9 [
"enabled" => true
"initialize" => true
"timeout" => 1800
"name" => "grav-site"
"uniqueness" => "path"
"secure" => false
"httponly" => true
"split" => true
"path" => null
]
"gpm" => array:5 [
"releases" => "stable"
"proxy_url" => null
"method" => "auto"
"verify_peer" => true
"official_gpm_only" => true
]
"accounts" => array:2 [
"type" => "data"
"storage" => "file"
]
"strict_mode" => array:2 [
"yaml_compat" => true
"twig_compat" => true
]
"gtm_stage_enabled" => false
"matomo_prod_enabled" => true
"seo-factory" => array:1 [
"bu" => "OPTIMHOME"
]
]
"theme" => array:2 [
"streams" => array:1 [
"schemes" => array:1 [
"theme" => array:2 [
"type" => "ReadOnlyStream"
"prefixes" => array:1 [
"" => array:2 [
0 => "user/themes/optimhome"
1 => "user/themes/digit-website"
]
]
]
]
]
"marketing-operations" => array:3 [
"saison-estimation-2019" => array:3 [
"startDate" => "2019-03-20"
"endDate" => "2019-04-30"
"body_class" => "op_estim"
]
"ope-neuf-2019" => array:3 [
"startDate" => "2019-06-01"
"endDate" => "2019-06-30"
"body_class" => "op_neuf"
]
"op-optimust-2019" => array:3 [
"startDate" => "2019-09-11"
"endDate" => "2019-11-01"
"body_class" => "op_optimust"
]
]
]
"site" => array:28 [
"title" => "Optimhome Immobilier"
"default_lang" => "fr"
"author" => array:2 [
"name" => "DigitRE"
"email" => "[email protected]"
]
"taxonomies" => array:2 [
0 => "category"
1 => "tag"
]
"metadata" => array:2 [
"generator" => ""
"description" => ""
]
"summary" => array:4 [
"enabled" => true
"format" => "short"
"size" => 300
"delimiter" => "==="
]
"redirects" => array:40 [
"/combien-pour-mon-bien$" => "/"
"/annonces$" => "/annonces/achat"
"/conseillers/market$" => "/maintenance"
"/verlautbarungen$" => "/annonces/achat"
"/adverts$" => "/annonces/achat"
"/anuncios$" => "/annonces/achat"
"/neuf$" => "/annonces/achat?affichage=grid-view&category[]=isNew"
"/commerces$" => "/annonces/achat?affichage=grid-view&propertyTypes[]=BUSINESS_CAPITAL"
"/ville_bien/(.*)_(.*)_(.*)__(.*)/(.*)" => "/annonces/achat?affichage=grid-view&adresse=$1"
"/ville_bien/(.*)_/(.*).html" => "/annonces/achat?affichage=grid-view&adresse=$1"
"/news/(.*)" => "/actualites"
"/content/6/estimation-immobiliere-en-ligne-1.html" => "/estimer-mon-bien"
"/content/5/mentions-legales.html?language=fr" => "/mentions-legales"
"/agence/(.*)" => "/nos-conseillers"
"/ville_bien/(.*)_(.*)_(.*)__Vente" => "/annonces/achat?affichage=grid-view&adresse=$1"
"/catalog/estimation.php" => "/estimer-mon-bien"
"/fiches/(.*)" => "/annonces/achat"
"(.*)PRODUCT_LIST_(.*)" => "/annonces/achat"
"(.*)_Vente/vente-(.*)" => "/annonces/achat"
"/annonces/(.*)____Vente_/vente.html" => "/annonces/achat"
"/type_bien/(.*)" => "/annonces/achat"
"/annonces/_____(.*)/immobilier.html" => "/annonces/achat"
"/annonces/(.*)_____2/.html" => "/annonces/achat"
"/conseillers/(.*)-recrutement-immobilier" => "/nos-conseillers"
"/annonces/exclusivites" => "/annonces/achat?affichage=grid-view&exclusif=true"
"/de-(.*).html" => "/de"
"/fr-(.*).html" => "/annonces/achat"
"/es-(.*).html" => "/"
"/nl-(.*).html" => "/"
"/pt-(.*).html" => "/pt"
"/ville_bien/(.*).html" => "/annonces/achat"
"/catalog/news.php" => "/actualites"
"/it-(.*).html" => "/en"
"/en-(.*).html" => "/en"
"(.*)/(region|bezirk)(?(?=\?)(.+)|)$" => "/[301]"
"(.*)/(regions|regionen)(?(?=\?)(.+)|)$" => "/[301]"
"/de/betreuer/steinseufzer-robert" => "/betreuer/robert-steinseufzer"
"(.*)/estimer/appartement" => "/estimer-appartement"
"(.*)/estimer/maison" => "/estimer-maison"
"/conseillers/casseleux" => "/conseillers/aurelie.casseleux"
]
"routes" => array:88 [
"(.*)/(actualites|neuigkeit|news|noticias)(?(?=\?)(.+)|)$" => "/actualites"
"(.*)/(conseillers|agents|betreuer|agentes|conselheiros)/page:(\d+)$" => "/nos-conseillers"
"(.*)/(conseillers|agents|betreuer|agentes|conselheiros)(?(?=\?)(.+)|)$" => "/nos-conseillers"
"(.*)/(commerces|shops|neuf)/nos-conseillers(?(?=\?)(.+)|)$" => "/nos-conseillers"
"(.*)/(new/agents)(?(?=\?)(.+)|)$" => "/nos-conseillers"
"(.*)/(conseillers|agents|betreuer|agentes|conselheiros)/(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche"
"(.*)/(annonces|commerces)/(fiche|vente|achat|location|reprendre)/([\w-]+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(annonces|commerces)/(vente|achat|location|reprendre)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(adverts|shops)/(sale|buy|rental|resume)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(verlautbarungen|geschafte|shops)/(verkauf|mieten|einkaufen|verlieh|zusammenfassung)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(anuncios|lojas)/(compra|venda|aluguel|retomar)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(annonces|commerces)/(vente|achat|location)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(adverts|shops)/(sale|buy|rental)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(verlautbarungen|geschafte)/(verkauf|mieten|einkaufen|verlieh)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(anuncios|lojas)/(compra|venda|aluguel)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(annonces/villes|verlautbarungen/ortschaften|adverts/cities|anuncios/cidades)(?(?=\?)(.+)|)$" => "/annonces/villes"
"(.*)/(commerces|shops|lojas)(?(?=\?)(.+)|)$" => "/commerces"
"(.*)/(immobilier/avis-clients|immobilien/kundenrezensionen|real-estate/customer-reviews|imoveis/opinioes-clientes)(?(?=\?)(.+)|)$" => "/immobilier/avis-clients"
"(.*)/(immobilien|imobiliaria)/(konzept|o-conceito)(?(?=\?)(.+)|)$" => "/immobilier/concept"
"(.*)/(immobilier|immobilien|real-estate|imoveis|imobiliaria)/international(?(?=\?)(.+)|)$" => "/immobilier/international"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(investir-dans-le-neuf|investieren-in-die-neue|invest-in-the-new)(?(?=\?)(.+)|)$" => "/immobilier/investir-dans-le-neuf"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(nos-valeurs|unsere-werte|our-values)(?(?=\?)(.+)|)$" => "/immobilier/nos-valeurs"
"(.*)/(immobilier|immobilien|real-estate|imoveis|imoveis)/(pourquoi|warum|why|por-que)(?(?=\?)(.+)|)$" => "/immobilier/pourquoi-choisir-optimhome"
"(.*)/(immobilier|immobilien|real-estate|imoveis|imobiliaria)/(qui-sommes-nous|wer-sind-wir|who-we-are|quem-somos-nos)(?(?=\?)(.+)|)$" => "/immobilier/qui-sommes-nous"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/pass-vip(?(?=\?)(.+)|)$" => "/immobilier/pass-vip"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(primo-accession|erstbeitritt|first-accession)(?(?=\?)(.+)|)$" => "/immobilier/immobilier/primo-accession"
"(.*)/(immobilier/visite-live-a-distance|immobilien/besichtigung-live-a-distance|real-estate/visit-live-a-distance)(?(?=\?)(.+)|)$" => "/immobilier/visite-live-a-distance"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(vivre-dans-le-neuf|leben-in-einer-neuen-umgebung|living-in-a-new-environment)(?(?=\?)(.+)|)$" => "/immobilier/vivre-dans-le-neuf"
"(.*)/(mentions-legales|rechtliche-hinweise|legal-notices|mencao-legal)(?(?=\?)(.+)|)$" => "/mentions-legales"
"(.*)/(mon-compte|mein-konto|my-account)(?(?=\?)(.+)|)$" => "/mon-compte"
"(.*)/(mon-compte/home|mein-konto/home|my-account/home)(?(?=\?)(.+)|)$" => "/mon-compte/home"
"(.*)/(mon-compte/espace-proprietaire|mein-konto/primar-raum|my-account/private-area)(?(?=\?)(.+)|)$" => "/mon-compte/espace-proprietaire"
"(.*)/(mandat-optimust)(?(?=\?)(.+)|)$" => "/mandat-optimust"
"(.*)/(neuf|neu|new|novo)(?(?=\?)(.+)|)$" => "/neuf"
"(.*)/(nous-contacter|kontakt-uns|contact-us|contacte-nos)(?(?=\?)(.+)|)$" => "/nous-contacter"
"(.*)/(politique-generale-confidentialite|allgemeine-politik-vertraulichkeit|general-policy-confidentiality|politica-geral-privacidade)(?(?=\?)(.+)|)$" => "/politique-generale-confidentialite"
"(.*)/(rekrutierung)(?(?=\?)(.+)|)$" => "/recrutement"
"(.*)/(vendre|verkaufen|sell|vender)(?(?=\?)(.+)|)$" => "/vendre"
"(.*)/(annonces|commerces|neuf)/(vente|achat|louer|fonds)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(adverts|shops)/(sale|buy|rental|business)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(verlautbarungen|shops)/(mieten|einkaufen|verlieh|gewerbe)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(anuncios|comerciais|novo)/(venda|comprar|aluguer|fundos|aluguer)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(annonces|verlautbarungen)/(achat|einkaufen|mieten|louer)(/page:\d+)?(\?.*)?$" => "/annonces/transaction"
"(.*)/region/(\w+)(?(?=\?)(.+)|)$" => "/annonces/region"
"(.*)/bezirk/(\w+)(?(?=\?)(.+)|)$" => "/annonces/region"
"(.*)/estimer-mon-bien(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/estimate-my-property(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/schatzen-meine-eigenschaft(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/schatzen-meine-eigenschaft?(.*)" => "/estimer-mon-bien"
"(.*)/immobilienbewertung(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/immobilienbewertung?(.*)" => "/estimer-mon-bien"
"(.*)/apreciar-meu-propriedade(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/conseillers/estimation(?(?=/)(.+)|)$" => "/estimer"
"(.*)/conseillers/estimation/etapes(?(?=/)(.+)|)$" => "/estimer/etapes"
"(.*)/conseillers/estimation/etapes/.*/resultat/(.*)" => "/estimer/resultat-agent"
"(.*)/conseillers/apporteur-affaires/suivi/([\w\-.]+)(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche/apporteur-affaires/suivi"
"(.*)/conseillers/apporteur-affaires/etapes/([\w\-.]+)/merci(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche/apporteur-affaires/etapes/merci"
"(.*)/conseillers/apporteur-affaires/([\w\-.]+)(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche/apporteur-affaires"
"(.*)/conseillers/apporteur-affaires/etapes/([\w\-.]+)$" => "/nos-conseillers/fiche/apporteur-affaires/etapes"
"(.*)/estimer-appartement$" => "/estimer"
"(.*)/estimer-maison$" => "/estimer"
"(.*)/estimer-appartement?(.*)$" => "/estimer"
"(.*)/estimer-maison?(.*)$" => "/estimer"
"(.*)/estimer-appartement/etapes$" => "/estimer/etapes"
"(.*)/estimer-maison/etapes$" => "/estimer/etapes"
"(.*)/estimer-appartement/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer-maison/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/combien-pour-mon-bien/resultat/(.*)" => "/combien-pour-mon-bien/resultat"
"(.*)/combien-pour-mon-bien-estimation/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer-mon-bien/resultat/(.*)" => "/estimer-mon-bien/resultat"
"/estimate" => "/estimer-mon-bien"
"/estimate/result" => "/estimer-mon-bien/resultat"
"(.*)/vendre(?(?=/)(.+)|)$" => "/vendre"
"(.*)/sell(?(?=/)(.+)|)$" => "/vendre"
"(.*)/verkaufen(?(?=/)(.+)|)$" => "/vendre"
"(.*)/vender(?(?=/)(.+)|)$" => "/vendre"
"(.*)/(favoris|favorites|favoriten|os-meus-favoritos)(?(?=\?)(.+)|)$" => "/favoris"
"(.*)/(commerces/vendre|shops/sell|shops/verkaufen|vender/lojas)(?(?=/)(.+)|)$" => "/vendre-commerces"
"(.*)/nos-conseillers/fiche/vendre/(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche/vendre"
"(.*)/nos-conseillers/fiche/estimation-rdv/(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche/estimation-rdv"
"(.*)/nos-conseillers/fiche/estimation-rdv/merci(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche/estimation-rdv/merci"
"/annonces/villes(?(?=\?)(.+)|)$" => "/annonces/villes"
"/annonces/villes/[a-z](?(?=\?)(.+)|)$" => "/annonces/villes-lettre"
"/annonces/achat/\w+(?(?=\?)(.+)|)$" => "/seo/city"
"/annonces/achat/\w+/\w+(?(?=\?)(.+)|)$" => "/seo/city-type"
"/([\w*-._]*)(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche"
]
"blog" => array:1 [
"route" => "/blog"
]
"env" => "prod"
"exclude_cafpi_agent" => array:1 [
0 => "2018"
]
"emails" => array:1 [
"regex" => "/([a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+)/"
]
"activityStatus" => "SELLER"
"partnerId" => "optimhome"
"domain" => "optimhome"
"show_login_form" => true
"mapping_url_subdomain" => array:28 [
"alsace" => "annonces/achat?adresse=Grand%20Est"
"auvergne" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
"bourgogne" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
"bretagne" => "annonces/achat?adresse=Bretagne"
"centre" => "annonces/achat?adresse=Centre-Val%20de%20Loire"
"champagne-ardenne" => "annonces/achat?adresse=Grand%20Est"
"corse" => "annonces/achat?adresse=Corse"
"franche-comte" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
"guadeloupe" => "annonces/achat?affichage=grid-view&adresse=Guadeloupe"
"guyane" => "annonces/achat?affichage=grid-view&adresse=Guyane%20française"
"ile-de-france" => "annonces/achat?adresse=Île-de-France"
"languedoc-roussillon" => "annonces/achat?adresse=Occitanie"
"limousin" => "annonces/achat?adresse=Nouvelle-Aquitaine"
"lorraine" => "annonces/achat?adresse=Grand%20Est"
"martinique" => "annonces/achat?affichage=grid-view&adresse=Martinique"
"midi-pyrenees" => "annonces/achat?adresse=Occitanie"
"nord-pas-de-calais" => "annonces/achat?adresse=Hauts-de-France"
"basse-normandie" => "annonces/achat?adresse=Normandie"
"haute-normandie" => "annonces/achat?adresse=Normandie"
"pays-de-la-loire" => "annonces/achat?adresse=Pays%20de%20la%20Loire"
"picardie" => "annonces/achat?adresse=Hauts-de-France"
"poitou-charentes" => "annonces/achat?adresse=Nouvelle-Aquitaine"
"paca" => "annonces/achat?adresse=PACA"
"reunion" => "annonces/achat?adresse=La%20Réunion"
"rhone-alpes" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
"exclusif" => "annonces/achat?exclusif=true"
"medoc" => "annonces/achat?adresse=Nouvelle-Aquitaine"
"commerce" => "commerces"
]
"background-regions" => array:18 [
"Hauts-de-France, France" => "bgmoteur_annonces-hautsdefrance.jpg"
"Normandie, France" => "bgmoteur_annonces-normandie.jpg"
"Île-de-France, France" => "bgmoteur_annonces-iledefrance.jpg"
"Bretagne, France" => "bgmoteur_annonces-bretagne.jpg"
"Auvergne-Rhône-Alpes, France" => "bgmoteur_annonces-auvergnerhonealpes.jpg"
"Bourgogne Franche-Comté, France" => "bgmoteur_annonces-bourgognefranchecompte.jpg"
"Centre-Val de Loire, France" => "bgmoteur_annonces-centrevaldeloire.jpg"
"Pays de la Loire, France" => "bgmoteur_annonces-valdeloire.jpg"
"Nouvelle-Aquitaine, France" => "bgmoteur_annonces-nouvelleaquitaine.jpg"
"Occitanie, France" => "bgmoteur_annonces-occitanie.jpg"
"PACA, France" => "bgmoteur_annonces-paca.jpg"
"Corse, France" => "bgmoteur_annonces-corse.jpg"
"Grand Est, France" => "bgmoteur_annonces-grandest.jpg"
"Guadeloupe" => "bgmoteur_annonces-guadeloupe.jpg"
"Arrondissement de Cayenne, France" => "bgmoteur_annonces-guyane.jpg"
"La Réunion" => "bgmoteur_annonces-lareunion.jpg"
"Martinique" => "bgmoteur_annonces-martinique.jpg"
"Mayotte" => "bgmoteur_annonces-mayotte.jpg"
]
"site_de" => "https://www.optimhome.com/de"
"site_pt" => "https://www.optimhome.com/pt"
"site_en" => "https://www.optimhome.com/en"
"site_fr" => "https://www.optimhome.com"
"property_pdf" => array:1 [
"file_name" => "Fiche_bien_"
]
"reference_length" => array:2 [
"fr" => 12
"pt" => 4
]
"geolocation" => array:1 [
"city" => "Paris"
]
"acxtest" => "TEST"
"intranet-url" => "https://intranet.digitregroup.io"
"graphql" => array:2 [
"endpoint" => "https://intranet.digitregroup.io/graphql/"
"token" => "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjowLCJlbWFpbCI6ImFkbWluQGRpZ2l0cmVncm91cC5jb20iLCJyb2xlIjpbIkFETUlOIl0sInJ1bGVzIjpbeyJhY3Rpb25zIjpbInJlYWQiLCJ3cml0ZSIsImRlbGV0ZSJdLCJzdWJqZWN0IjoiYW55In1dfSwiaWF0IjoxNTUyNTgwNDI4fQ.SQdTRJQEUlvHMTn6_3pNwYDCM3aj2Taw-_bNjK3NBhM"
]
]
"uri" => Uri {#138}
"assets" => Assets {#251}
"taxonomy" => Taxonomy {#423}
"browser" => Browser {#458}
"base_dir" => "/var/app/current"
"home_url" => "/"
"base_url" => ""
"base_url_absolute" => "https://www.optimhome.com"
"base_url_relative" => ""
"base_url_simple" => ""
"theme_dir" => "/var/app/current/user/themes/optimhome"
"theme_url" => "/user/themes/optimhome"
"html_lang" => "fr"
"language_codes" => LanguageCodes {#459}
"breadcrumbs" => Breadcrumbs {#196}
"form" => null
"form_max_filesize" => 15
"form_json_response" => []
"page" => Page {#519}
"media" => Media {#1159}
"header" => {#520}
]
/var
/app
/current
/vendor
/twig
/twig
/src
/TemplateWrapper.php
* @internal
*/
public function __construct(Environment $env, Template $template)
{
$this->env = $env;
$this->template = $template;
}
/**
* Renders the template.
*
* @param array $context An array of parameters to pass to the template
*
* @return string The rendered template
*/
public function render($context = [])
{
// using func_get_args() allows to not expose the blocks argument
// as it should only be used by internal code
return $this->template->render($context, \func_num_args() > 1 ? func_get_arg(1) : []);
}
/**
* Displays the template.
*
* @param array $context An array of parameters to pass to the template
*/
public function display($context = [])
{
// using func_get_args() allows to not expose the blocks argument
// as it should only be used by internal code
$this->template->display($context, \func_num_args() > 1 ? func_get_arg(1) : []);
}
/**
* Checks if a block is defined.
*
* @param string $name The block name
* @param array $context An array of parameters to pass to the template
*
Arguments
array:25 [
"config" => Config {#96}
"system" => array:30 [
"absolute_urls" => false
"timezone" => ""
"default_locale" => null
"param_sep" => ":"
"wrapped_site" => false
"reverse_proxy_setup" => false
"force_ssl" => false
"force_lowercase_urls" => true
"custom_base_url" => ""
"username_regex" => "^[a-z0-9_@\.-]{3,50}$"
"pwd_regex" => "(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}"
"intl_enabled" => true
"languages" => array:9 [
"supported" => array:2 [
0 => "fr"
1 => "de"
]
"default_lang" => null
"include_default_lang" => false
"pages_fallback_only" => false
"translations" => true
"translations_fallback" => true
"session_store_active" => false
"http_accept_language" => false
"override_locale" => false
]
"home" => array:2 [
"alias" => "/home"
"hide_in_urls" => true
]
"pages" => array:26 [
"theme" => "optimhome"
"order" => array:2 [
"by" => "default"
"dir" => "asc"
]
"list" => array:1 [
"count" => 20
]
"dateformat" => array:3 [
"default" => null
"short" => "jS M Y"
"long" => "F jS \a\t g:ia"
]
"publish_dates" => true
"process" => array:2 [
"markdown" => false
"twig" => true
]
"twig_first" => false
"never_cache_twig" => false
"events" => array:2 [
"page" => true
"twig" => true
]
"markdown" => array:5 [
"extra" => false
"auto_line_breaks" => false
"auto_url_links" => false
"escape_markup" => false
"special_chars" => array:2 [
">" => "gt"
"<" => "lt"
]
]
"types" => array:7 [
0 => "html"
1 => "htm"
2 => "xml"
3 => "txt"
4 => "json"
5 => "rss"
6 => "atom"
]
"append_url_extension" => ""
"expires" => 604800
"cache_control" => null
"last_modified" => false
"etag" => false
"vary_accept_encoding" => false
"redirect_default_route" => false
"redirect_default_code" => "301"
"redirect_trailing_slash" => false
"ignore_files" => array:1 [
0 => ".DS_Store"
]
"ignore_folders" => array:2 [
0 => ".git"
1 => ".idea"
]
"ignore_hidden" => true
"hide_empty_folders" => false
"url_taxonomy_filters" => true
"frontmatter" => array:2 [
"process_twig" => true
"ignore_fields" => array:2 [
0 => "form"
1 => "forms"
]
]
]
"cache" => array:13 [
"enabled" => true
"check" => array:1 [
"method" => "file"
]
"driver" => "file"
"prefix" => "g"
"purge_at" => "0 4 * * *"
"clear_at" => "0 3 * * *"
"clear_job_type" => "standard"
"clear_images_by_default" => true
"cli_compatibility" => false
"lifetime" => 3600
"gzip" => false
"allow_webserver_gzip" => false
"redis" => array:1 [
"socket" => false
]
]
"twig" => array:7 [
"cache" => true
"debug" => true
"auto_reload" => true
"autoescape" => false
"undefined_functions" => true
"undefined_filters" => true
"umask_fix" => false
]
"assets" => array:12 [
"css_pipeline" => false
"css_pipeline_include_externals" => true
"css_pipeline_before_excludes" => true
"css_minify" => true
"css_minify_windows" => false
"css_rewrite" => true
"js_pipeline" => false
"js_pipeline_include_externals" => true
"js_pipeline_before_excludes" => true
"js_minify" => true
"enable_asset_timestamp" => false
"collections" => array:1 [
"jquery" => "system://assets/jquery/jquery-2.x.min.js"
]
]
"errors" => array:2 [
"display" => true
"log" => true
]
"log" => array:2 [
"handler" => "file"
"syslog" => array:1 [
"facility" => "local6"
]
]
"debugger" => array:3 [
"enabled" => false
"shutdown" => array:1 [
"close_connection" => true
]
"twig" => true
]
"images" => array:6 [
"default_image_quality" => 85
"cache_all" => false
"cache_perms" => "0755"
"debug" => false
"auto_fix_orientation" => false
"seofriendly" => false
]
"media" => array:5 [
"enable_media_timestamp" => false
"unsupported_inline_types" => []
"allowed_fallback_types" => []
"auto_metadata_exif" => false
"upload_limit" => 15728640
]
"session" => array:9 [
"enabled" => true
"initialize" => true
"timeout" => 1800
"name" => "grav-site"
"uniqueness" => "path"
"secure" => false
"httponly" => true
"split" => true
"path" => null
]
"gpm" => array:5 [
"releases" => "stable"
"proxy_url" => null
"method" => "auto"
"verify_peer" => true
"official_gpm_only" => true
]
"accounts" => array:2 [
"type" => "data"
"storage" => "file"
]
"strict_mode" => array:2 [
"yaml_compat" => true
"twig_compat" => true
]
"gtm_stage_enabled" => false
"matomo_prod_enabled" => true
"seo-factory" => array:1 [
"bu" => "OPTIMHOME"
]
]
"theme" => array:2 [
"streams" => array:1 [
"schemes" => array:1 [
"theme" => array:2 [
"type" => "ReadOnlyStream"
"prefixes" => array:1 [
"" => array:2 [
0 => "user/themes/optimhome"
1 => "user/themes/digit-website"
]
]
]
]
]
"marketing-operations" => array:3 [
"saison-estimation-2019" => array:3 [
"startDate" => "2019-03-20"
"endDate" => "2019-04-30"
"body_class" => "op_estim"
]
"ope-neuf-2019" => array:3 [
"startDate" => "2019-06-01"
"endDate" => "2019-06-30"
"body_class" => "op_neuf"
]
"op-optimust-2019" => array:3 [
"startDate" => "2019-09-11"
"endDate" => "2019-11-01"
"body_class" => "op_optimust"
]
]
]
"site" => array:28 [
"title" => "Optimhome Immobilier"
"default_lang" => "fr"
"author" => array:2 [
"name" => "DigitRE"
"email" => "[email protected]"
]
"taxonomies" => array:2 [
0 => "category"
1 => "tag"
]
"metadata" => array:2 [
"generator" => ""
"description" => ""
]
"summary" => array:4 [
"enabled" => true
"format" => "short"
"size" => 300
"delimiter" => "==="
]
"redirects" => array:40 [
"/combien-pour-mon-bien$" => "/"
"/annonces$" => "/annonces/achat"
"/conseillers/market$" => "/maintenance"
"/verlautbarungen$" => "/annonces/achat"
"/adverts$" => "/annonces/achat"
"/anuncios$" => "/annonces/achat"
"/neuf$" => "/annonces/achat?affichage=grid-view&category[]=isNew"
"/commerces$" => "/annonces/achat?affichage=grid-view&propertyTypes[]=BUSINESS_CAPITAL"
"/ville_bien/(.*)_(.*)_(.*)__(.*)/(.*)" => "/annonces/achat?affichage=grid-view&adresse=$1"
"/ville_bien/(.*)_/(.*).html" => "/annonces/achat?affichage=grid-view&adresse=$1"
"/news/(.*)" => "/actualites"
"/content/6/estimation-immobiliere-en-ligne-1.html" => "/estimer-mon-bien"
"/content/5/mentions-legales.html?language=fr" => "/mentions-legales"
"/agence/(.*)" => "/nos-conseillers"
"/ville_bien/(.*)_(.*)_(.*)__Vente" => "/annonces/achat?affichage=grid-view&adresse=$1"
"/catalog/estimation.php" => "/estimer-mon-bien"
"/fiches/(.*)" => "/annonces/achat"
"(.*)PRODUCT_LIST_(.*)" => "/annonces/achat"
"(.*)_Vente/vente-(.*)" => "/annonces/achat"
"/annonces/(.*)____Vente_/vente.html" => "/annonces/achat"
"/type_bien/(.*)" => "/annonces/achat"
"/annonces/_____(.*)/immobilier.html" => "/annonces/achat"
"/annonces/(.*)_____2/.html" => "/annonces/achat"
"/conseillers/(.*)-recrutement-immobilier" => "/nos-conseillers"
"/annonces/exclusivites" => "/annonces/achat?affichage=grid-view&exclusif=true"
"/de-(.*).html" => "/de"
"/fr-(.*).html" => "/annonces/achat"
"/es-(.*).html" => "/"
"/nl-(.*).html" => "/"
"/pt-(.*).html" => "/pt"
"/ville_bien/(.*).html" => "/annonces/achat"
"/catalog/news.php" => "/actualites"
"/it-(.*).html" => "/en"
"/en-(.*).html" => "/en"
"(.*)/(region|bezirk)(?(?=\?)(.+)|)$" => "/[301]"
"(.*)/(regions|regionen)(?(?=\?)(.+)|)$" => "/[301]"
"/de/betreuer/steinseufzer-robert" => "/betreuer/robert-steinseufzer"
"(.*)/estimer/appartement" => "/estimer-appartement"
"(.*)/estimer/maison" => "/estimer-maison"
"/conseillers/casseleux" => "/conseillers/aurelie.casseleux"
]
"routes" => array:88 [
"(.*)/(actualites|neuigkeit|news|noticias)(?(?=\?)(.+)|)$" => "/actualites"
"(.*)/(conseillers|agents|betreuer|agentes|conselheiros)/page:(\d+)$" => "/nos-conseillers"
"(.*)/(conseillers|agents|betreuer|agentes|conselheiros)(?(?=\?)(.+)|)$" => "/nos-conseillers"
"(.*)/(commerces|shops|neuf)/nos-conseillers(?(?=\?)(.+)|)$" => "/nos-conseillers"
"(.*)/(new/agents)(?(?=\?)(.+)|)$" => "/nos-conseillers"
"(.*)/(conseillers|agents|betreuer|agentes|conselheiros)/(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche"
"(.*)/(annonces|commerces)/(fiche|vente|achat|location|reprendre)/([\w-]+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(annonces|commerces)/(vente|achat|location|reprendre)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(adverts|shops)/(sale|buy|rental|resume)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(verlautbarungen|geschafte|shops)/(verkauf|mieten|einkaufen|verlieh|zusammenfassung)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(anuncios|lojas)/(compra|venda|aluguel|retomar)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(annonces|commerces)/(vente|achat|location)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(adverts|shops)/(sale|buy|rental)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(verlautbarungen|geschafte)/(verkauf|mieten|einkaufen|verlieh)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(anuncios|lojas)/(compra|venda|aluguel)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(annonces/villes|verlautbarungen/ortschaften|adverts/cities|anuncios/cidades)(?(?=\?)(.+)|)$" => "/annonces/villes"
"(.*)/(commerces|shops|lojas)(?(?=\?)(.+)|)$" => "/commerces"
"(.*)/(immobilier/avis-clients|immobilien/kundenrezensionen|real-estate/customer-reviews|imoveis/opinioes-clientes)(?(?=\?)(.+)|)$" => "/immobilier/avis-clients"
"(.*)/(immobilien|imobiliaria)/(konzept|o-conceito)(?(?=\?)(.+)|)$" => "/immobilier/concept"
"(.*)/(immobilier|immobilien|real-estate|imoveis|imobiliaria)/international(?(?=\?)(.+)|)$" => "/immobilier/international"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(investir-dans-le-neuf|investieren-in-die-neue|invest-in-the-new)(?(?=\?)(.+)|)$" => "/immobilier/investir-dans-le-neuf"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(nos-valeurs|unsere-werte|our-values)(?(?=\?)(.+)|)$" => "/immobilier/nos-valeurs"
"(.*)/(immobilier|immobilien|real-estate|imoveis|imoveis)/(pourquoi|warum|why|por-que)(?(?=\?)(.+)|)$" => "/immobilier/pourquoi-choisir-optimhome"
"(.*)/(immobilier|immobilien|real-estate|imoveis|imobiliaria)/(qui-sommes-nous|wer-sind-wir|who-we-are|quem-somos-nos)(?(?=\?)(.+)|)$" => "/immobilier/qui-sommes-nous"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/pass-vip(?(?=\?)(.+)|)$" => "/immobilier/pass-vip"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(primo-accession|erstbeitritt|first-accession)(?(?=\?)(.+)|)$" => "/immobilier/immobilier/primo-accession"
"(.*)/(immobilier/visite-live-a-distance|immobilien/besichtigung-live-a-distance|real-estate/visit-live-a-distance)(?(?=\?)(.+)|)$" => "/immobilier/visite-live-a-distance"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(vivre-dans-le-neuf|leben-in-einer-neuen-umgebung|living-in-a-new-environment)(?(?=\?)(.+)|)$" => "/immobilier/vivre-dans-le-neuf"
"(.*)/(mentions-legales|rechtliche-hinweise|legal-notices|mencao-legal)(?(?=\?)(.+)|)$" => "/mentions-legales"
"(.*)/(mon-compte|mein-konto|my-account)(?(?=\?)(.+)|)$" => "/mon-compte"
"(.*)/(mon-compte/home|mein-konto/home|my-account/home)(?(?=\?)(.+)|)$" => "/mon-compte/home"
"(.*)/(mon-compte/espace-proprietaire|mein-konto/primar-raum|my-account/private-area)(?(?=\?)(.+)|)$" => "/mon-compte/espace-proprietaire"
"(.*)/(mandat-optimust)(?(?=\?)(.+)|)$" => "/mandat-optimust"
"(.*)/(neuf|neu|new|novo)(?(?=\?)(.+)|)$" => "/neuf"
"(.*)/(nous-contacter|kontakt-uns|contact-us|contacte-nos)(?(?=\?)(.+)|)$" => "/nous-contacter"
"(.*)/(politique-generale-confidentialite|allgemeine-politik-vertraulichkeit|general-policy-confidentiality|politica-geral-privacidade)(?(?=\?)(.+)|)$" => "/politique-generale-confidentialite"
"(.*)/(rekrutierung)(?(?=\?)(.+)|)$" => "/recrutement"
"(.*)/(vendre|verkaufen|sell|vender)(?(?=\?)(.+)|)$" => "/vendre"
"(.*)/(annonces|commerces|neuf)/(vente|achat|louer|fonds)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(adverts|shops)/(sale|buy|rental|business)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(verlautbarungen|shops)/(mieten|einkaufen|verlieh|gewerbe)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(anuncios|comerciais|novo)/(venda|comprar|aluguer|fundos|aluguer)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(annonces|verlautbarungen)/(achat|einkaufen|mieten|louer)(/page:\d+)?(\?.*)?$" => "/annonces/transaction"
"(.*)/region/(\w+)(?(?=\?)(.+)|)$" => "/annonces/region"
"(.*)/bezirk/(\w+)(?(?=\?)(.+)|)$" => "/annonces/region"
"(.*)/estimer-mon-bien(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/estimate-my-property(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/schatzen-meine-eigenschaft(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/schatzen-meine-eigenschaft?(.*)" => "/estimer-mon-bien"
"(.*)/immobilienbewertung(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/immobilienbewertung?(.*)" => "/estimer-mon-bien"
"(.*)/apreciar-meu-propriedade(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/conseillers/estimation(?(?=/)(.+)|)$" => "/estimer"
"(.*)/conseillers/estimation/etapes(?(?=/)(.+)|)$" => "/estimer/etapes"
"(.*)/conseillers/estimation/etapes/.*/resultat/(.*)" => "/estimer/resultat-agent"
"(.*)/conseillers/apporteur-affaires/suivi/([\w\-.]+)(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche/apporteur-affaires/suivi"
"(.*)/conseillers/apporteur-affaires/etapes/([\w\-.]+)/merci(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche/apporteur-affaires/etapes/merci"
"(.*)/conseillers/apporteur-affaires/([\w\-.]+)(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche/apporteur-affaires"
"(.*)/conseillers/apporteur-affaires/etapes/([\w\-.]+)$" => "/nos-conseillers/fiche/apporteur-affaires/etapes"
"(.*)/estimer-appartement$" => "/estimer"
"(.*)/estimer-maison$" => "/estimer"
"(.*)/estimer-appartement?(.*)$" => "/estimer"
"(.*)/estimer-maison?(.*)$" => "/estimer"
"(.*)/estimer-appartement/etapes$" => "/estimer/etapes"
"(.*)/estimer-maison/etapes$" => "/estimer/etapes"
"(.*)/estimer-appartement/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer-maison/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/combien-pour-mon-bien/resultat/(.*)" => "/combien-pour-mon-bien/resultat"
"(.*)/combien-pour-mon-bien-estimation/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer-mon-bien/resultat/(.*)" => "/estimer-mon-bien/resultat"
"/estimate" => "/estimer-mon-bien"
"/estimate/result" => "/estimer-mon-bien/resultat"
"(.*)/vendre(?(?=/)(.+)|)$" => "/vendre"
"(.*)/sell(?(?=/)(.+)|)$" => "/vendre"
"(.*)/verkaufen(?(?=/)(.+)|)$" => "/vendre"
"(.*)/vender(?(?=/)(.+)|)$" => "/vendre"
"(.*)/(favoris|favorites|favoriten|os-meus-favoritos)(?(?=\?)(.+)|)$" => "/favoris"
"(.*)/(commerces/vendre|shops/sell|shops/verkaufen|vender/lojas)(?(?=/)(.+)|)$" => "/vendre-commerces"
"(.*)/nos-conseillers/fiche/vendre/(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche/vendre"
"(.*)/nos-conseillers/fiche/estimation-rdv/(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche/estimation-rdv"
"(.*)/nos-conseillers/fiche/estimation-rdv/merci(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche/estimation-rdv/merci"
"/annonces/villes(?(?=\?)(.+)|)$" => "/annonces/villes"
"/annonces/villes/[a-z](?(?=\?)(.+)|)$" => "/annonces/villes-lettre"
"/annonces/achat/\w+(?(?=\?)(.+)|)$" => "/seo/city"
"/annonces/achat/\w+/\w+(?(?=\?)(.+)|)$" => "/seo/city-type"
"/([\w*-._]*)(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche"
]
"blog" => array:1 [
"route" => "/blog"
]
"env" => "prod"
"exclude_cafpi_agent" => array:1 [
0 => "2018"
]
"emails" => array:1 [
"regex" => "/([a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+)/"
]
"activityStatus" => "SELLER"
"partnerId" => "optimhome"
"domain" => "optimhome"
"show_login_form" => true
"mapping_url_subdomain" => array:28 [
"alsace" => "annonces/achat?adresse=Grand%20Est"
"auvergne" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
"bourgogne" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
"bretagne" => "annonces/achat?adresse=Bretagne"
"centre" => "annonces/achat?adresse=Centre-Val%20de%20Loire"
"champagne-ardenne" => "annonces/achat?adresse=Grand%20Est"
"corse" => "annonces/achat?adresse=Corse"
"franche-comte" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
"guadeloupe" => "annonces/achat?affichage=grid-view&adresse=Guadeloupe"
"guyane" => "annonces/achat?affichage=grid-view&adresse=Guyane%20française"
"ile-de-france" => "annonces/achat?adresse=Île-de-France"
"languedoc-roussillon" => "annonces/achat?adresse=Occitanie"
"limousin" => "annonces/achat?adresse=Nouvelle-Aquitaine"
"lorraine" => "annonces/achat?adresse=Grand%20Est"
"martinique" => "annonces/achat?affichage=grid-view&adresse=Martinique"
"midi-pyrenees" => "annonces/achat?adresse=Occitanie"
"nord-pas-de-calais" => "annonces/achat?adresse=Hauts-de-France"
"basse-normandie" => "annonces/achat?adresse=Normandie"
"haute-normandie" => "annonces/achat?adresse=Normandie"
"pays-de-la-loire" => "annonces/achat?adresse=Pays%20de%20la%20Loire"
"picardie" => "annonces/achat?adresse=Hauts-de-France"
"poitou-charentes" => "annonces/achat?adresse=Nouvelle-Aquitaine"
"paca" => "annonces/achat?adresse=PACA"
"reunion" => "annonces/achat?adresse=La%20Réunion"
"rhone-alpes" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
"exclusif" => "annonces/achat?exclusif=true"
"medoc" => "annonces/achat?adresse=Nouvelle-Aquitaine"
"commerce" => "commerces"
]
"background-regions" => array:18 [
"Hauts-de-France, France" => "bgmoteur_annonces-hautsdefrance.jpg"
"Normandie, France" => "bgmoteur_annonces-normandie.jpg"
"Île-de-France, France" => "bgmoteur_annonces-iledefrance.jpg"
"Bretagne, France" => "bgmoteur_annonces-bretagne.jpg"
"Auvergne-Rhône-Alpes, France" => "bgmoteur_annonces-auvergnerhonealpes.jpg"
"Bourgogne Franche-Comté, France" => "bgmoteur_annonces-bourgognefranchecompte.jpg"
"Centre-Val de Loire, France" => "bgmoteur_annonces-centrevaldeloire.jpg"
"Pays de la Loire, France" => "bgmoteur_annonces-valdeloire.jpg"
"Nouvelle-Aquitaine, France" => "bgmoteur_annonces-nouvelleaquitaine.jpg"
"Occitanie, France" => "bgmoteur_annonces-occitanie.jpg"
"PACA, France" => "bgmoteur_annonces-paca.jpg"
"Corse, France" => "bgmoteur_annonces-corse.jpg"
"Grand Est, France" => "bgmoteur_annonces-grandest.jpg"
"Guadeloupe" => "bgmoteur_annonces-guadeloupe.jpg"
"Arrondissement de Cayenne, France" => "bgmoteur_annonces-guyane.jpg"
"La Réunion" => "bgmoteur_annonces-lareunion.jpg"
"Martinique" => "bgmoteur_annonces-martinique.jpg"
"Mayotte" => "bgmoteur_annonces-mayotte.jpg"
]
"site_de" => "https://www.optimhome.com/de"
"site_pt" => "https://www.optimhome.com/pt"
"site_en" => "https://www.optimhome.com/en"
"site_fr" => "https://www.optimhome.com"
"property_pdf" => array:1 [
"file_name" => "Fiche_bien_"
]
"reference_length" => array:2 [
"fr" => 12
"pt" => 4
]
"geolocation" => array:1 [
"city" => "Paris"
]
"acxtest" => "TEST"
"intranet-url" => "https://intranet.digitregroup.io"
"graphql" => array:2 [
"endpoint" => "https://intranet.digitregroup.io/graphql/"
"token" => "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjowLCJlbWFpbCI6ImFkbWluQGRpZ2l0cmVncm91cC5jb20iLCJyb2xlIjpbIkFETUlOIl0sInJ1bGVzIjpbeyJhY3Rpb25zIjpbInJlYWQiLCJ3cml0ZSIsImRlbGV0ZSJdLCJzdWJqZWN0IjoiYW55In1dfSwiaWF0IjoxNTUyNTgwNDI4fQ.SQdTRJQEUlvHMTn6_3pNwYDCM3aj2Taw-_bNjK3NBhM"
]
]
"uri" => Uri {#138}
"assets" => Assets {#251}
"taxonomy" => Taxonomy {#423}
"browser" => Browser {#458}
"base_dir" => "/var/app/current"
"home_url" => "/"
"base_url" => ""
"base_url_absolute" => "https://www.optimhome.com"
"base_url_relative" => ""
"base_url_simple" => ""
"theme_dir" => "/var/app/current/user/themes/optimhome"
"theme_url" => "/user/themes/optimhome"
"html_lang" => "fr"
"language_codes" => LanguageCodes {#459}
"breadcrumbs" => Breadcrumbs {#196}
"form" => null
"form_max_filesize" => 15
"form_json_response" => []
"page" => Page {#519}
"media" => Media {#1159}
"header" => {#520}
]
[]
/var
/app
/current
/vendor
/twig
/twig
/src
/Environment.php
@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|TemplateWrapper $name The template name
* @param array $context An array of parameters to pass to the template
*
* @return string The rendered template
*
* @throws LoaderError When the template cannot be found
* @throws SyntaxError When an error occurred during compilation
* @throws RuntimeError When an error occurred during rendering
*/
public function render($name, array $context = [])
{
return $this->load($name)->render($context);
}
/**
* Displays a template.
*
* @param string|TemplateWrapper $name The template name
* @param array $context An array of parameters to pass to the template
*
* @throws LoaderError When the template cannot be found
* @throws SyntaxError When an error occurred during compilation
* @throws RuntimeError When an error occurred during rendering
*/
public function display($name, array $context = [])
{
$this->load($name)->display($context);
}
/**
* Loads a template.
*
Arguments
array:25 [
"config" => Config {#96}
"system" => array:30 [
"absolute_urls" => false
"timezone" => ""
"default_locale" => null
"param_sep" => ":"
"wrapped_site" => false
"reverse_proxy_setup" => false
"force_ssl" => false
"force_lowercase_urls" => true
"custom_base_url" => ""
"username_regex" => "^[a-z0-9_@\.-]{3,50}$"
"pwd_regex" => "(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}"
"intl_enabled" => true
"languages" => array:9 [
"supported" => array:2 [
0 => "fr"
1 => "de"
]
"default_lang" => null
"include_default_lang" => false
"pages_fallback_only" => false
"translations" => true
"translations_fallback" => true
"session_store_active" => false
"http_accept_language" => false
"override_locale" => false
]
"home" => array:2 [
"alias" => "/home"
"hide_in_urls" => true
]
"pages" => array:26 [
"theme" => "optimhome"
"order" => array:2 [
"by" => "default"
"dir" => "asc"
]
"list" => array:1 [
"count" => 20
]
"dateformat" => array:3 [
"default" => null
"short" => "jS M Y"
"long" => "F jS \a\t g:ia"
]
"publish_dates" => true
"process" => array:2 [
"markdown" => false
"twig" => true
]
"twig_first" => false
"never_cache_twig" => false
"events" => array:2 [
"page" => true
"twig" => true
]
"markdown" => array:5 [
"extra" => false
"auto_line_breaks" => false
"auto_url_links" => false
"escape_markup" => false
"special_chars" => array:2 [
">" => "gt"
"<" => "lt"
]
]
"types" => array:7 [
0 => "html"
1 => "htm"
2 => "xml"
3 => "txt"
4 => "json"
5 => "rss"
6 => "atom"
]
"append_url_extension" => ""
"expires" => 604800
"cache_control" => null
"last_modified" => false
"etag" => false
"vary_accept_encoding" => false
"redirect_default_route" => false
"redirect_default_code" => "301"
"redirect_trailing_slash" => false
"ignore_files" => array:1 [
0 => ".DS_Store"
]
"ignore_folders" => array:2 [
0 => ".git"
1 => ".idea"
]
"ignore_hidden" => true
"hide_empty_folders" => false
"url_taxonomy_filters" => true
"frontmatter" => array:2 [
"process_twig" => true
"ignore_fields" => array:2 [
0 => "form"
1 => "forms"
]
]
]
"cache" => array:13 [
"enabled" => true
"check" => array:1 [
"method" => "file"
]
"driver" => "file"
"prefix" => "g"
"purge_at" => "0 4 * * *"
"clear_at" => "0 3 * * *"
"clear_job_type" => "standard"
"clear_images_by_default" => true
"cli_compatibility" => false
"lifetime" => 3600
"gzip" => false
"allow_webserver_gzip" => false
"redis" => array:1 [
"socket" => false
]
]
"twig" => array:7 [
"cache" => true
"debug" => true
"auto_reload" => true
"autoescape" => false
"undefined_functions" => true
"undefined_filters" => true
"umask_fix" => false
]
"assets" => array:12 [
"css_pipeline" => false
"css_pipeline_include_externals" => true
"css_pipeline_before_excludes" => true
"css_minify" => true
"css_minify_windows" => false
"css_rewrite" => true
"js_pipeline" => false
"js_pipeline_include_externals" => true
"js_pipeline_before_excludes" => true
"js_minify" => true
"enable_asset_timestamp" => false
"collections" => array:1 [
"jquery" => "system://assets/jquery/jquery-2.x.min.js"
]
]
"errors" => array:2 [
"display" => true
"log" => true
]
"log" => array:2 [
"handler" => "file"
"syslog" => array:1 [
"facility" => "local6"
]
]
"debugger" => array:3 [
"enabled" => false
"shutdown" => array:1 [
"close_connection" => true
]
"twig" => true
]
"images" => array:6 [
"default_image_quality" => 85
"cache_all" => false
"cache_perms" => "0755"
"debug" => false
"auto_fix_orientation" => false
"seofriendly" => false
]
"media" => array:5 [
"enable_media_timestamp" => false
"unsupported_inline_types" => []
"allowed_fallback_types" => []
"auto_metadata_exif" => false
"upload_limit" => 15728640
]
"session" => array:9 [
"enabled" => true
"initialize" => true
"timeout" => 1800
"name" => "grav-site"
"uniqueness" => "path"
"secure" => false
"httponly" => true
"split" => true
"path" => null
]
"gpm" => array:5 [
"releases" => "stable"
"proxy_url" => null
"method" => "auto"
"verify_peer" => true
"official_gpm_only" => true
]
"accounts" => array:2 [
"type" => "data"
"storage" => "file"
]
"strict_mode" => array:2 [
"yaml_compat" => true
"twig_compat" => true
]
"gtm_stage_enabled" => false
"matomo_prod_enabled" => true
"seo-factory" => array:1 [
"bu" => "OPTIMHOME"
]
]
"theme" => array:2 [
"streams" => array:1 [
"schemes" => array:1 [
"theme" => array:2 [
"type" => "ReadOnlyStream"
"prefixes" => array:1 [
"" => array:2 [
0 => "user/themes/optimhome"
1 => "user/themes/digit-website"
]
]
]
]
]
"marketing-operations" => array:3 [
"saison-estimation-2019" => array:3 [
"startDate" => "2019-03-20"
"endDate" => "2019-04-30"
"body_class" => "op_estim"
]
"ope-neuf-2019" => array:3 [
"startDate" => "2019-06-01"
"endDate" => "2019-06-30"
"body_class" => "op_neuf"
]
"op-optimust-2019" => array:3 [
"startDate" => "2019-09-11"
"endDate" => "2019-11-01"
"body_class" => "op_optimust"
]
]
]
"site" => array:28 [
"title" => "Optimhome Immobilier"
"default_lang" => "fr"
"author" => array:2 [
"name" => "DigitRE"
"email" => "[email protected]"
]
"taxonomies" => array:2 [
0 => "category"
1 => "tag"
]
"metadata" => array:2 [
"generator" => ""
"description" => ""
]
"summary" => array:4 [
"enabled" => true
"format" => "short"
"size" => 300
"delimiter" => "==="
]
"redirects" => array:40 [
"/combien-pour-mon-bien$" => "/"
"/annonces$" => "/annonces/achat"
"/conseillers/market$" => "/maintenance"
"/verlautbarungen$" => "/annonces/achat"
"/adverts$" => "/annonces/achat"
"/anuncios$" => "/annonces/achat"
"/neuf$" => "/annonces/achat?affichage=grid-view&category[]=isNew"
"/commerces$" => "/annonces/achat?affichage=grid-view&propertyTypes[]=BUSINESS_CAPITAL"
"/ville_bien/(.*)_(.*)_(.*)__(.*)/(.*)" => "/annonces/achat?affichage=grid-view&adresse=$1"
"/ville_bien/(.*)_/(.*).html" => "/annonces/achat?affichage=grid-view&adresse=$1"
"/news/(.*)" => "/actualites"
"/content/6/estimation-immobiliere-en-ligne-1.html" => "/estimer-mon-bien"
"/content/5/mentions-legales.html?language=fr" => "/mentions-legales"
"/agence/(.*)" => "/nos-conseillers"
"/ville_bien/(.*)_(.*)_(.*)__Vente" => "/annonces/achat?affichage=grid-view&adresse=$1"
"/catalog/estimation.php" => "/estimer-mon-bien"
"/fiches/(.*)" => "/annonces/achat"
"(.*)PRODUCT_LIST_(.*)" => "/annonces/achat"
"(.*)_Vente/vente-(.*)" => "/annonces/achat"
"/annonces/(.*)____Vente_/vente.html" => "/annonces/achat"
"/type_bien/(.*)" => "/annonces/achat"
"/annonces/_____(.*)/immobilier.html" => "/annonces/achat"
"/annonces/(.*)_____2/.html" => "/annonces/achat"
"/conseillers/(.*)-recrutement-immobilier" => "/nos-conseillers"
"/annonces/exclusivites" => "/annonces/achat?affichage=grid-view&exclusif=true"
"/de-(.*).html" => "/de"
"/fr-(.*).html" => "/annonces/achat"
"/es-(.*).html" => "/"
"/nl-(.*).html" => "/"
"/pt-(.*).html" => "/pt"
"/ville_bien/(.*).html" => "/annonces/achat"
"/catalog/news.php" => "/actualites"
"/it-(.*).html" => "/en"
"/en-(.*).html" => "/en"
"(.*)/(region|bezirk)(?(?=\?)(.+)|)$" => "/[301]"
"(.*)/(regions|regionen)(?(?=\?)(.+)|)$" => "/[301]"
"/de/betreuer/steinseufzer-robert" => "/betreuer/robert-steinseufzer"
"(.*)/estimer/appartement" => "/estimer-appartement"
"(.*)/estimer/maison" => "/estimer-maison"
"/conseillers/casseleux" => "/conseillers/aurelie.casseleux"
]
"routes" => array:88 [
"(.*)/(actualites|neuigkeit|news|noticias)(?(?=\?)(.+)|)$" => "/actualites"
"(.*)/(conseillers|agents|betreuer|agentes|conselheiros)/page:(\d+)$" => "/nos-conseillers"
"(.*)/(conseillers|agents|betreuer|agentes|conselheiros)(?(?=\?)(.+)|)$" => "/nos-conseillers"
"(.*)/(commerces|shops|neuf)/nos-conseillers(?(?=\?)(.+)|)$" => "/nos-conseillers"
"(.*)/(new/agents)(?(?=\?)(.+)|)$" => "/nos-conseillers"
"(.*)/(conseillers|agents|betreuer|agentes|conselheiros)/(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche"
"(.*)/(annonces|commerces)/(fiche|vente|achat|location|reprendre)/([\w-]+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(annonces|commerces)/(vente|achat|location|reprendre)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(adverts|shops)/(sale|buy|rental|resume)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(verlautbarungen|geschafte|shops)/(verkauf|mieten|einkaufen|verlieh|zusammenfassung)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(anuncios|lojas)/(compra|venda|aluguel|retomar)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(annonces|commerces)/(vente|achat|location)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(adverts|shops)/(sale|buy|rental)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(verlautbarungen|geschafte)/(verkauf|mieten|einkaufen|verlieh)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(anuncios|lojas)/(compra|venda|aluguel)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(annonces/villes|verlautbarungen/ortschaften|adverts/cities|anuncios/cidades)(?(?=\?)(.+)|)$" => "/annonces/villes"
"(.*)/(commerces|shops|lojas)(?(?=\?)(.+)|)$" => "/commerces"
"(.*)/(immobilier/avis-clients|immobilien/kundenrezensionen|real-estate/customer-reviews|imoveis/opinioes-clientes)(?(?=\?)(.+)|)$" => "/immobilier/avis-clients"
"(.*)/(immobilien|imobiliaria)/(konzept|o-conceito)(?(?=\?)(.+)|)$" => "/immobilier/concept"
"(.*)/(immobilier|immobilien|real-estate|imoveis|imobiliaria)/international(?(?=\?)(.+)|)$" => "/immobilier/international"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(investir-dans-le-neuf|investieren-in-die-neue|invest-in-the-new)(?(?=\?)(.+)|)$" => "/immobilier/investir-dans-le-neuf"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(nos-valeurs|unsere-werte|our-values)(?(?=\?)(.+)|)$" => "/immobilier/nos-valeurs"
"(.*)/(immobilier|immobilien|real-estate|imoveis|imoveis)/(pourquoi|warum|why|por-que)(?(?=\?)(.+)|)$" => "/immobilier/pourquoi-choisir-optimhome"
"(.*)/(immobilier|immobilien|real-estate|imoveis|imobiliaria)/(qui-sommes-nous|wer-sind-wir|who-we-are|quem-somos-nos)(?(?=\?)(.+)|)$" => "/immobilier/qui-sommes-nous"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/pass-vip(?(?=\?)(.+)|)$" => "/immobilier/pass-vip"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(primo-accession|erstbeitritt|first-accession)(?(?=\?)(.+)|)$" => "/immobilier/immobilier/primo-accession"
"(.*)/(immobilier/visite-live-a-distance|immobilien/besichtigung-live-a-distance|real-estate/visit-live-a-distance)(?(?=\?)(.+)|)$" => "/immobilier/visite-live-a-distance"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(vivre-dans-le-neuf|leben-in-einer-neuen-umgebung|living-in-a-new-environment)(?(?=\?)(.+)|)$" => "/immobilier/vivre-dans-le-neuf"
"(.*)/(mentions-legales|rechtliche-hinweise|legal-notices|mencao-legal)(?(?=\?)(.+)|)$" => "/mentions-legales"
"(.*)/(mon-compte|mein-konto|my-account)(?(?=\?)(.+)|)$" => "/mon-compte"
"(.*)/(mon-compte/home|mein-konto/home|my-account/home)(?(?=\?)(.+)|)$" => "/mon-compte/home"
"(.*)/(mon-compte/espace-proprietaire|mein-konto/primar-raum|my-account/private-area)(?(?=\?)(.+)|)$" => "/mon-compte/espace-proprietaire"
"(.*)/(mandat-optimust)(?(?=\?)(.+)|)$" => "/mandat-optimust"
"(.*)/(neuf|neu|new|novo)(?(?=\?)(.+)|)$" => "/neuf"
"(.*)/(nous-contacter|kontakt-uns|contact-us|contacte-nos)(?(?=\?)(.+)|)$" => "/nous-contacter"
"(.*)/(politique-generale-confidentialite|allgemeine-politik-vertraulichkeit|general-policy-confidentiality|politica-geral-privacidade)(?(?=\?)(.+)|)$" => "/politique-generale-confidentialite"
"(.*)/(rekrutierung)(?(?=\?)(.+)|)$" => "/recrutement"
"(.*)/(vendre|verkaufen|sell|vender)(?(?=\?)(.+)|)$" => "/vendre"
"(.*)/(annonces|commerces|neuf)/(vente|achat|louer|fonds)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(adverts|shops)/(sale|buy|rental|business)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(verlautbarungen|shops)/(mieten|einkaufen|verlieh|gewerbe)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(anuncios|comerciais|novo)/(venda|comprar|aluguer|fundos|aluguer)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(annonces|verlautbarungen)/(achat|einkaufen|mieten|louer)(/page:\d+)?(\?.*)?$" => "/annonces/transaction"
"(.*)/region/(\w+)(?(?=\?)(.+)|)$" => "/annonces/region"
"(.*)/bezirk/(\w+)(?(?=\?)(.+)|)$" => "/annonces/region"
"(.*)/estimer-mon-bien(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/estimate-my-property(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/schatzen-meine-eigenschaft(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/schatzen-meine-eigenschaft?(.*)" => "/estimer-mon-bien"
"(.*)/immobilienbewertung(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/immobilienbewertung?(.*)" => "/estimer-mon-bien"
"(.*)/apreciar-meu-propriedade(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/conseillers/estimation(?(?=/)(.+)|)$" => "/estimer"
"(.*)/conseillers/estimation/etapes(?(?=/)(.+)|)$" => "/estimer/etapes"
"(.*)/conseillers/estimation/etapes/.*/resultat/(.*)" => "/estimer/resultat-agent"
"(.*)/conseillers/apporteur-affaires/suivi/([\w\-.]+)(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche/apporteur-affaires/suivi"
"(.*)/conseillers/apporteur-affaires/etapes/([\w\-.]+)/merci(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche/apporteur-affaires/etapes/merci"
"(.*)/conseillers/apporteur-affaires/([\w\-.]+)(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche/apporteur-affaires"
"(.*)/conseillers/apporteur-affaires/etapes/([\w\-.]+)$" => "/nos-conseillers/fiche/apporteur-affaires/etapes"
"(.*)/estimer-appartement$" => "/estimer"
"(.*)/estimer-maison$" => "/estimer"
"(.*)/estimer-appartement?(.*)$" => "/estimer"
"(.*)/estimer-maison?(.*)$" => "/estimer"
"(.*)/estimer-appartement/etapes$" => "/estimer/etapes"
"(.*)/estimer-maison/etapes$" => "/estimer/etapes"
"(.*)/estimer-appartement/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer-maison/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/combien-pour-mon-bien/resultat/(.*)" => "/combien-pour-mon-bien/resultat"
"(.*)/combien-pour-mon-bien-estimation/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer-mon-bien/resultat/(.*)" => "/estimer-mon-bien/resultat"
"/estimate" => "/estimer-mon-bien"
"/estimate/result" => "/estimer-mon-bien/resultat"
"(.*)/vendre(?(?=/)(.+)|)$" => "/vendre"
"(.*)/sell(?(?=/)(.+)|)$" => "/vendre"
"(.*)/verkaufen(?(?=/)(.+)|)$" => "/vendre"
"(.*)/vender(?(?=/)(.+)|)$" => "/vendre"
"(.*)/(favoris|favorites|favoriten|os-meus-favoritos)(?(?=\?)(.+)|)$" => "/favoris"
"(.*)/(commerces/vendre|shops/sell|shops/verkaufen|vender/lojas)(?(?=/)(.+)|)$" => "/vendre-commerces"
"(.*)/nos-conseillers/fiche/vendre/(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche/vendre"
"(.*)/nos-conseillers/fiche/estimation-rdv/(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche/estimation-rdv"
"(.*)/nos-conseillers/fiche/estimation-rdv/merci(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche/estimation-rdv/merci"
"/annonces/villes(?(?=\?)(.+)|)$" => "/annonces/villes"
"/annonces/villes/[a-z](?(?=\?)(.+)|)$" => "/annonces/villes-lettre"
"/annonces/achat/\w+(?(?=\?)(.+)|)$" => "/seo/city"
"/annonces/achat/\w+/\w+(?(?=\?)(.+)|)$" => "/seo/city-type"
"/([\w*-._]*)(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche"
]
"blog" => array:1 [
"route" => "/blog"
]
"env" => "prod"
"exclude_cafpi_agent" => array:1 [
0 => "2018"
]
"emails" => array:1 [
"regex" => "/([a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+)/"
]
"activityStatus" => "SELLER"
"partnerId" => "optimhome"
"domain" => "optimhome"
"show_login_form" => true
"mapping_url_subdomain" => array:28 [
"alsace" => "annonces/achat?adresse=Grand%20Est"
"auvergne" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
"bourgogne" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
"bretagne" => "annonces/achat?adresse=Bretagne"
"centre" => "annonces/achat?adresse=Centre-Val%20de%20Loire"
"champagne-ardenne" => "annonces/achat?adresse=Grand%20Est"
"corse" => "annonces/achat?adresse=Corse"
"franche-comte" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
"guadeloupe" => "annonces/achat?affichage=grid-view&adresse=Guadeloupe"
"guyane" => "annonces/achat?affichage=grid-view&adresse=Guyane%20française"
"ile-de-france" => "annonces/achat?adresse=Île-de-France"
"languedoc-roussillon" => "annonces/achat?adresse=Occitanie"
"limousin" => "annonces/achat?adresse=Nouvelle-Aquitaine"
"lorraine" => "annonces/achat?adresse=Grand%20Est"
"martinique" => "annonces/achat?affichage=grid-view&adresse=Martinique"
"midi-pyrenees" => "annonces/achat?adresse=Occitanie"
"nord-pas-de-calais" => "annonces/achat?adresse=Hauts-de-France"
"basse-normandie" => "annonces/achat?adresse=Normandie"
"haute-normandie" => "annonces/achat?adresse=Normandie"
"pays-de-la-loire" => "annonces/achat?adresse=Pays%20de%20la%20Loire"
"picardie" => "annonces/achat?adresse=Hauts-de-France"
"poitou-charentes" => "annonces/achat?adresse=Nouvelle-Aquitaine"
"paca" => "annonces/achat?adresse=PACA"
"reunion" => "annonces/achat?adresse=La%20Réunion"
"rhone-alpes" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
"exclusif" => "annonces/achat?exclusif=true"
"medoc" => "annonces/achat?adresse=Nouvelle-Aquitaine"
"commerce" => "commerces"
]
"background-regions" => array:18 [
"Hauts-de-France, France" => "bgmoteur_annonces-hautsdefrance.jpg"
"Normandie, France" => "bgmoteur_annonces-normandie.jpg"
"Île-de-France, France" => "bgmoteur_annonces-iledefrance.jpg"
"Bretagne, France" => "bgmoteur_annonces-bretagne.jpg"
"Auvergne-Rhône-Alpes, France" => "bgmoteur_annonces-auvergnerhonealpes.jpg"
"Bourgogne Franche-Comté, France" => "bgmoteur_annonces-bourgognefranchecompte.jpg"
"Centre-Val de Loire, France" => "bgmoteur_annonces-centrevaldeloire.jpg"
"Pays de la Loire, France" => "bgmoteur_annonces-valdeloire.jpg"
"Nouvelle-Aquitaine, France" => "bgmoteur_annonces-nouvelleaquitaine.jpg"
"Occitanie, France" => "bgmoteur_annonces-occitanie.jpg"
"PACA, France" => "bgmoteur_annonces-paca.jpg"
"Corse, France" => "bgmoteur_annonces-corse.jpg"
"Grand Est, France" => "bgmoteur_annonces-grandest.jpg"
"Guadeloupe" => "bgmoteur_annonces-guadeloupe.jpg"
"Arrondissement de Cayenne, France" => "bgmoteur_annonces-guyane.jpg"
"La Réunion" => "bgmoteur_annonces-lareunion.jpg"
"Martinique" => "bgmoteur_annonces-martinique.jpg"
"Mayotte" => "bgmoteur_annonces-mayotte.jpg"
]
"site_de" => "https://www.optimhome.com/de"
"site_pt" => "https://www.optimhome.com/pt"
"site_en" => "https://www.optimhome.com/en"
"site_fr" => "https://www.optimhome.com"
"property_pdf" => array:1 [
"file_name" => "Fiche_bien_"
]
"reference_length" => array:2 [
"fr" => 12
"pt" => 4
]
"geolocation" => array:1 [
"city" => "Paris"
]
"acxtest" => "TEST"
"intranet-url" => "https://intranet.digitregroup.io"
"graphql" => array:2 [
"endpoint" => "https://intranet.digitregroup.io/graphql/"
"token" => "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjowLCJlbWFpbCI6ImFkbWluQGRpZ2l0cmVncm91cC5jb20iLCJyb2xlIjpbIkFETUlOIl0sInJ1bGVzIjpbeyJhY3Rpb25zIjpbInJlYWQiLCJ3cml0ZSIsImRlbGV0ZSJdLCJzdWJqZWN0IjoiYW55In1dfSwiaWF0IjoxNTUyNTgwNDI4fQ.SQdTRJQEUlvHMTn6_3pNwYDCM3aj2Taw-_bNjK3NBhM"
]
]
"uri" => Uri {#138}
"assets" => Assets {#251}
"taxonomy" => Taxonomy {#423}
"browser" => Browser {#458}
"base_dir" => "/var/app/current"
"home_url" => "/"
"base_url" => ""
"base_url_absolute" => "https://www.optimhome.com"
"base_url_relative" => ""
"base_url_simple" => ""
"theme_dir" => "/var/app/current/user/themes/optimhome"
"theme_url" => "/user/themes/optimhome"
"html_lang" => "fr"
"language_codes" => LanguageCodes {#459}
"breadcrumbs" => Breadcrumbs {#196}
"form" => null
"form_max_filesize" => 15
"form_json_response" => []
"page" => Page {#519}
"media" => Media {#1159}
"header" => {#520}
]
/var
/app
/current
/system
/src
/Grav
/Common
/Twig
/Twig.php
$twig_vars['header'] = $item->header();
$local_twig = clone $this->twig;
$output = '';
try {
// Process Modular Twig
if ($item->modularTwig()) {
$twig_vars['content'] = $content;
$extension = $item->templateFormat();
$extension = $extension ? ".{$extension}.twig" : TEMPLATE_EXT;
$template = $item->template() . $extension;
$output = $content = $local_twig->render($template, $twig_vars);
}
// Process in-page Twig
if ($item->shouldProcess('twig')) {
$name = '@Page:' . $item->path();
$this->setTemplate($name, $content);
$output = $local_twig->render($name, $twig_vars);
}
} catch (\Twig_Error_Loader $e) {
throw new \RuntimeException($e->getRawMessage(), 404, $e);
}
return $output;
}
/**
* Process a Twig template directly by using a template name
* and optional array of variables
*
* @param string $template template to render with
* @param array $vars Optional variables
*
* @return string
*/
public function processTemplate($template, $vars = [])
{
Arguments
"@Page:/var/app/current/user/pages/14.actualites"
array:25 [
"config" => Config {#96}
"system" => array:30 [
"absolute_urls" => false
"timezone" => ""
"default_locale" => null
"param_sep" => ":"
"wrapped_site" => false
"reverse_proxy_setup" => false
"force_ssl" => false
"force_lowercase_urls" => true
"custom_base_url" => ""
"username_regex" => "^[a-z0-9_@\.-]{3,50}$"
"pwd_regex" => "(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}"
"intl_enabled" => true
"languages" => array:9 [
"supported" => array:2 [
0 => "fr"
1 => "de"
]
"default_lang" => null
"include_default_lang" => false
"pages_fallback_only" => false
"translations" => true
"translations_fallback" => true
"session_store_active" => false
"http_accept_language" => false
"override_locale" => false
]
"home" => array:2 [
"alias" => "/home"
"hide_in_urls" => true
]
"pages" => array:26 [
"theme" => "optimhome"
"order" => array:2 [
"by" => "default"
"dir" => "asc"
]
"list" => array:1 [
"count" => 20
]
"dateformat" => array:3 [
"default" => null
"short" => "jS M Y"
"long" => "F jS \a\t g:ia"
]
"publish_dates" => true
"process" => array:2 [
"markdown" => false
"twig" => true
]
"twig_first" => false
"never_cache_twig" => false
"events" => array:2 [
"page" => true
"twig" => true
]
"markdown" => array:5 [
"extra" => false
"auto_line_breaks" => false
"auto_url_links" => false
"escape_markup" => false
"special_chars" => array:2 [
">" => "gt"
"<" => "lt"
]
]
"types" => array:7 [
0 => "html"
1 => "htm"
2 => "xml"
3 => "txt"
4 => "json"
5 => "rss"
6 => "atom"
]
"append_url_extension" => ""
"expires" => 604800
"cache_control" => null
"last_modified" => false
"etag" => false
"vary_accept_encoding" => false
"redirect_default_route" => false
"redirect_default_code" => "301"
"redirect_trailing_slash" => false
"ignore_files" => array:1 [
0 => ".DS_Store"
]
"ignore_folders" => array:2 [
0 => ".git"
1 => ".idea"
]
"ignore_hidden" => true
"hide_empty_folders" => false
"url_taxonomy_filters" => true
"frontmatter" => array:2 [
"process_twig" => true
"ignore_fields" => array:2 [
0 => "form"
1 => "forms"
]
]
]
"cache" => array:13 [
"enabled" => true
"check" => array:1 [
"method" => "file"
]
"driver" => "file"
"prefix" => "g"
"purge_at" => "0 4 * * *"
"clear_at" => "0 3 * * *"
"clear_job_type" => "standard"
"clear_images_by_default" => true
"cli_compatibility" => false
"lifetime" => 3600
"gzip" => false
"allow_webserver_gzip" => false
"redis" => array:1 [
"socket" => false
]
]
"twig" => array:7 [
"cache" => true
"debug" => true
"auto_reload" => true
"autoescape" => false
"undefined_functions" => true
"undefined_filters" => true
"umask_fix" => false
]
"assets" => array:12 [
"css_pipeline" => false
"css_pipeline_include_externals" => true
"css_pipeline_before_excludes" => true
"css_minify" => true
"css_minify_windows" => false
"css_rewrite" => true
"js_pipeline" => false
"js_pipeline_include_externals" => true
"js_pipeline_before_excludes" => true
"js_minify" => true
"enable_asset_timestamp" => false
"collections" => array:1 [
"jquery" => "system://assets/jquery/jquery-2.x.min.js"
]
]
"errors" => array:2 [
"display" => true
"log" => true
]
"log" => array:2 [
"handler" => "file"
"syslog" => array:1 [
"facility" => "local6"
]
]
"debugger" => array:3 [
"enabled" => false
"shutdown" => array:1 [
"close_connection" => true
]
"twig" => true
]
"images" => array:6 [
"default_image_quality" => 85
"cache_all" => false
"cache_perms" => "0755"
"debug" => false
"auto_fix_orientation" => false
"seofriendly" => false
]
"media" => array:5 [
"enable_media_timestamp" => false
"unsupported_inline_types" => []
"allowed_fallback_types" => []
"auto_metadata_exif" => false
"upload_limit" => 15728640
]
"session" => array:9 [
"enabled" => true
"initialize" => true
"timeout" => 1800
"name" => "grav-site"
"uniqueness" => "path"
"secure" => false
"httponly" => true
"split" => true
"path" => null
]
"gpm" => array:5 [
"releases" => "stable"
"proxy_url" => null
"method" => "auto"
"verify_peer" => true
"official_gpm_only" => true
]
"accounts" => array:2 [
"type" => "data"
"storage" => "file"
]
"strict_mode" => array:2 [
"yaml_compat" => true
"twig_compat" => true
]
"gtm_stage_enabled" => false
"matomo_prod_enabled" => true
"seo-factory" => array:1 [
"bu" => "OPTIMHOME"
]
]
"theme" => array:2 [
"streams" => array:1 [
"schemes" => array:1 [
"theme" => array:2 [
"type" => "ReadOnlyStream"
"prefixes" => array:1 [
"" => array:2 [
0 => "user/themes/optimhome"
1 => "user/themes/digit-website"
]
]
]
]
]
"marketing-operations" => array:3 [
"saison-estimation-2019" => array:3 [
"startDate" => "2019-03-20"
"endDate" => "2019-04-30"
"body_class" => "op_estim"
]
"ope-neuf-2019" => array:3 [
"startDate" => "2019-06-01"
"endDate" => "2019-06-30"
"body_class" => "op_neuf"
]
"op-optimust-2019" => array:3 [
"startDate" => "2019-09-11"
"endDate" => "2019-11-01"
"body_class" => "op_optimust"
]
]
]
"site" => array:28 [
"title" => "Optimhome Immobilier"
"default_lang" => "fr"
"author" => array:2 [
"name" => "DigitRE"
"email" => "[email protected]"
]
"taxonomies" => array:2 [
0 => "category"
1 => "tag"
]
"metadata" => array:2 [
"generator" => ""
"description" => ""
]
"summary" => array:4 [
"enabled" => true
"format" => "short"
"size" => 300
"delimiter" => "==="
]
"redirects" => array:40 [
"/combien-pour-mon-bien$" => "/"
"/annonces$" => "/annonces/achat"
"/conseillers/market$" => "/maintenance"
"/verlautbarungen$" => "/annonces/achat"
"/adverts$" => "/annonces/achat"
"/anuncios$" => "/annonces/achat"
"/neuf$" => "/annonces/achat?affichage=grid-view&category[]=isNew"
"/commerces$" => "/annonces/achat?affichage=grid-view&propertyTypes[]=BUSINESS_CAPITAL"
"/ville_bien/(.*)_(.*)_(.*)__(.*)/(.*)" => "/annonces/achat?affichage=grid-view&adresse=$1"
"/ville_bien/(.*)_/(.*).html" => "/annonces/achat?affichage=grid-view&adresse=$1"
"/news/(.*)" => "/actualites"
"/content/6/estimation-immobiliere-en-ligne-1.html" => "/estimer-mon-bien"
"/content/5/mentions-legales.html?language=fr" => "/mentions-legales"
"/agence/(.*)" => "/nos-conseillers"
"/ville_bien/(.*)_(.*)_(.*)__Vente" => "/annonces/achat?affichage=grid-view&adresse=$1"
"/catalog/estimation.php" => "/estimer-mon-bien"
"/fiches/(.*)" => "/annonces/achat"
"(.*)PRODUCT_LIST_(.*)" => "/annonces/achat"
"(.*)_Vente/vente-(.*)" => "/annonces/achat"
"/annonces/(.*)____Vente_/vente.html" => "/annonces/achat"
"/type_bien/(.*)" => "/annonces/achat"
"/annonces/_____(.*)/immobilier.html" => "/annonces/achat"
"/annonces/(.*)_____2/.html" => "/annonces/achat"
"/conseillers/(.*)-recrutement-immobilier" => "/nos-conseillers"
"/annonces/exclusivites" => "/annonces/achat?affichage=grid-view&exclusif=true"
"/de-(.*).html" => "/de"
"/fr-(.*).html" => "/annonces/achat"
"/es-(.*).html" => "/"
"/nl-(.*).html" => "/"
"/pt-(.*).html" => "/pt"
"/ville_bien/(.*).html" => "/annonces/achat"
"/catalog/news.php" => "/actualites"
"/it-(.*).html" => "/en"
"/en-(.*).html" => "/en"
"(.*)/(region|bezirk)(?(?=\?)(.+)|)$" => "/[301]"
"(.*)/(regions|regionen)(?(?=\?)(.+)|)$" => "/[301]"
"/de/betreuer/steinseufzer-robert" => "/betreuer/robert-steinseufzer"
"(.*)/estimer/appartement" => "/estimer-appartement"
"(.*)/estimer/maison" => "/estimer-maison"
"/conseillers/casseleux" => "/conseillers/aurelie.casseleux"
]
"routes" => array:88 [
"(.*)/(actualites|neuigkeit|news|noticias)(?(?=\?)(.+)|)$" => "/actualites"
"(.*)/(conseillers|agents|betreuer|agentes|conselheiros)/page:(\d+)$" => "/nos-conseillers"
"(.*)/(conseillers|agents|betreuer|agentes|conselheiros)(?(?=\?)(.+)|)$" => "/nos-conseillers"
"(.*)/(commerces|shops|neuf)/nos-conseillers(?(?=\?)(.+)|)$" => "/nos-conseillers"
"(.*)/(new/agents)(?(?=\?)(.+)|)$" => "/nos-conseillers"
"(.*)/(conseillers|agents|betreuer|agentes|conselheiros)/(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche"
"(.*)/(annonces|commerces)/(fiche|vente|achat|location|reprendre)/([\w-]+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(annonces|commerces)/(vente|achat|location|reprendre)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(adverts|shops)/(sale|buy|rental|resume)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(verlautbarungen|geschafte|shops)/(verkauf|mieten|einkaufen|verlieh|zusammenfassung)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(anuncios|lojas)/(compra|venda|aluguel|retomar)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/fiche"
"(.*)/(annonces|commerces)/(vente|achat|location)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(adverts|shops)/(sale|buy|rental)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(verlautbarungen|geschafte)/(verkauf|mieten|einkaufen|verlieh)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(anuncios|lojas)/(compra|venda|aluguel)/(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/annonces/ville"
"(.*)/(annonces/villes|verlautbarungen/ortschaften|adverts/cities|anuncios/cidades)(?(?=\?)(.+)|)$" => "/annonces/villes"
"(.*)/(commerces|shops|lojas)(?(?=\?)(.+)|)$" => "/commerces"
"(.*)/(immobilier/avis-clients|immobilien/kundenrezensionen|real-estate/customer-reviews|imoveis/opinioes-clientes)(?(?=\?)(.+)|)$" => "/immobilier/avis-clients"
"(.*)/(immobilien|imobiliaria)/(konzept|o-conceito)(?(?=\?)(.+)|)$" => "/immobilier/concept"
"(.*)/(immobilier|immobilien|real-estate|imoveis|imobiliaria)/international(?(?=\?)(.+)|)$" => "/immobilier/international"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(investir-dans-le-neuf|investieren-in-die-neue|invest-in-the-new)(?(?=\?)(.+)|)$" => "/immobilier/investir-dans-le-neuf"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(nos-valeurs|unsere-werte|our-values)(?(?=\?)(.+)|)$" => "/immobilier/nos-valeurs"
"(.*)/(immobilier|immobilien|real-estate|imoveis|imoveis)/(pourquoi|warum|why|por-que)(?(?=\?)(.+)|)$" => "/immobilier/pourquoi-choisir-optimhome"
"(.*)/(immobilier|immobilien|real-estate|imoveis|imobiliaria)/(qui-sommes-nous|wer-sind-wir|who-we-are|quem-somos-nos)(?(?=\?)(.+)|)$" => "/immobilier/qui-sommes-nous"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/pass-vip(?(?=\?)(.+)|)$" => "/immobilier/pass-vip"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(primo-accession|erstbeitritt|first-accession)(?(?=\?)(.+)|)$" => "/immobilier/immobilier/primo-accession"
"(.*)/(immobilier/visite-live-a-distance|immobilien/besichtigung-live-a-distance|real-estate/visit-live-a-distance)(?(?=\?)(.+)|)$" => "/immobilier/visite-live-a-distance"
"(.*)/(immobilier|immobilien|real-estate|imoveis)/(vivre-dans-le-neuf|leben-in-einer-neuen-umgebung|living-in-a-new-environment)(?(?=\?)(.+)|)$" => "/immobilier/vivre-dans-le-neuf"
"(.*)/(mentions-legales|rechtliche-hinweise|legal-notices|mencao-legal)(?(?=\?)(.+)|)$" => "/mentions-legales"
"(.*)/(mon-compte|mein-konto|my-account)(?(?=\?)(.+)|)$" => "/mon-compte"
"(.*)/(mon-compte/home|mein-konto/home|my-account/home)(?(?=\?)(.+)|)$" => "/mon-compte/home"
"(.*)/(mon-compte/espace-proprietaire|mein-konto/primar-raum|my-account/private-area)(?(?=\?)(.+)|)$" => "/mon-compte/espace-proprietaire"
"(.*)/(mandat-optimust)(?(?=\?)(.+)|)$" => "/mandat-optimust"
"(.*)/(neuf|neu|new|novo)(?(?=\?)(.+)|)$" => "/neuf"
"(.*)/(nous-contacter|kontakt-uns|contact-us|contacte-nos)(?(?=\?)(.+)|)$" => "/nous-contacter"
"(.*)/(politique-generale-confidentialite|allgemeine-politik-vertraulichkeit|general-policy-confidentiality|politica-geral-privacidade)(?(?=\?)(.+)|)$" => "/politique-generale-confidentialite"
"(.*)/(rekrutierung)(?(?=\?)(.+)|)$" => "/recrutement"
"(.*)/(vendre|verkaufen|sell|vender)(?(?=\?)(.+)|)$" => "/vendre"
"(.*)/(annonces|commerces|neuf)/(vente|achat|louer|fonds)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(adverts|shops)/(sale|buy|rental|business)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(verlautbarungen|shops)/(mieten|einkaufen|verlieh|gewerbe)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(anuncios|comerciais|novo)/(venda|comprar|aluguer|fundos|aluguer)(/\w+)?(?(?=\?)(.+)|)$" => "/annonces/transaction"
"(.*)/(annonces|verlautbarungen)/(achat|einkaufen|mieten|louer)(/page:\d+)?(\?.*)?$" => "/annonces/transaction"
"(.*)/region/(\w+)(?(?=\?)(.+)|)$" => "/annonces/region"
"(.*)/bezirk/(\w+)(?(?=\?)(.+)|)$" => "/annonces/region"
"(.*)/estimer-mon-bien(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/estimate-my-property(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/schatzen-meine-eigenschaft(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/schatzen-meine-eigenschaft?(.*)" => "/estimer-mon-bien"
"(.*)/immobilienbewertung(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/immobilienbewertung?(.*)" => "/estimer-mon-bien"
"(.*)/apreciar-meu-propriedade(?(?=/)(.+)|)$" => "/estimer-mon-bien"
"(.*)/conseillers/estimation(?(?=/)(.+)|)$" => "/estimer"
"(.*)/conseillers/estimation/etapes(?(?=/)(.+)|)$" => "/estimer/etapes"
"(.*)/conseillers/estimation/etapes/.*/resultat/(.*)" => "/estimer/resultat-agent"
"(.*)/conseillers/apporteur-affaires/suivi/([\w\-.]+)(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche/apporteur-affaires/suivi"
"(.*)/conseillers/apporteur-affaires/etapes/([\w\-.]+)/merci(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche/apporteur-affaires/etapes/merci"
"(.*)/conseillers/apporteur-affaires/([\w\-.]+)(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche/apporteur-affaires"
"(.*)/conseillers/apporteur-affaires/etapes/([\w\-.]+)$" => "/nos-conseillers/fiche/apporteur-affaires/etapes"
"(.*)/estimer-appartement$" => "/estimer"
"(.*)/estimer-maison$" => "/estimer"
"(.*)/estimer-appartement?(.*)$" => "/estimer"
"(.*)/estimer-maison?(.*)$" => "/estimer"
"(.*)/estimer-appartement/etapes$" => "/estimer/etapes"
"(.*)/estimer-maison/etapes$" => "/estimer/etapes"
"(.*)/estimer-appartement/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer-maison/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/combien-pour-mon-bien/resultat/(.*)" => "/combien-pour-mon-bien/resultat"
"(.*)/combien-pour-mon-bien-estimation/etapes/resultat/(.*)" => "/estimer/resultat"
"(.*)/estimer-mon-bien/resultat/(.*)" => "/estimer-mon-bien/resultat"
"/estimate" => "/estimer-mon-bien"
"/estimate/result" => "/estimer-mon-bien/resultat"
"(.*)/vendre(?(?=/)(.+)|)$" => "/vendre"
"(.*)/sell(?(?=/)(.+)|)$" => "/vendre"
"(.*)/verkaufen(?(?=/)(.+)|)$" => "/vendre"
"(.*)/vender(?(?=/)(.+)|)$" => "/vendre"
"(.*)/(favoris|favorites|favoriten|os-meus-favoritos)(?(?=\?)(.+)|)$" => "/favoris"
"(.*)/(commerces/vendre|shops/sell|shops/verkaufen|vender/lojas)(?(?=/)(.+)|)$" => "/vendre-commerces"
"(.*)/nos-conseillers/fiche/vendre/(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche/vendre"
"(.*)/nos-conseillers/fiche/estimation-rdv/(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche/estimation-rdv"
"(.*)/nos-conseillers/fiche/estimation-rdv/merci(.+)(?(?=/)(.+)|)$" => "/nos-conseillers/fiche/estimation-rdv/merci"
"/annonces/villes(?(?=\?)(.+)|)$" => "/annonces/villes"
"/annonces/villes/[a-z](?(?=\?)(.+)|)$" => "/annonces/villes-lettre"
"/annonces/achat/\w+(?(?=\?)(.+)|)$" => "/seo/city"
"/annonces/achat/\w+/\w+(?(?=\?)(.+)|)$" => "/seo/city-type"
"/([\w*-._]*)(?(?=\?)(.+)|)$" => "/nos-conseillers/fiche"
]
"blog" => array:1 [
"route" => "/blog"
]
"env" => "prod"
"exclude_cafpi_agent" => array:1 [
0 => "2018"
]
"emails" => array:1 [
"regex" => "/([a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+)/"
]
"activityStatus" => "SELLER"
"partnerId" => "optimhome"
"domain" => "optimhome"
"show_login_form" => true
"mapping_url_subdomain" => array:28 [
"alsace" => "annonces/achat?adresse=Grand%20Est"
"auvergne" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
"bourgogne" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
"bretagne" => "annonces/achat?adresse=Bretagne"
"centre" => "annonces/achat?adresse=Centre-Val%20de%20Loire"
"champagne-ardenne" => "annonces/achat?adresse=Grand%20Est"
"corse" => "annonces/achat?adresse=Corse"
"franche-comte" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
"guadeloupe" => "annonces/achat?affichage=grid-view&adresse=Guadeloupe"
"guyane" => "annonces/achat?affichage=grid-view&adresse=Guyane%20française"
"ile-de-france" => "annonces/achat?adresse=Île-de-France"
"languedoc-roussillon" => "annonces/achat?adresse=Occitanie"
"limousin" => "annonces/achat?adresse=Nouvelle-Aquitaine"
"lorraine" => "annonces/achat?adresse=Grand%20Est"
"martinique" => "annonces/achat?affichage=grid-view&adresse=Martinique"
"midi-pyrenees" => "annonces/achat?adresse=Occitanie"
"nord-pas-de-calais" => "annonces/achat?adresse=Hauts-de-France"
"basse-normandie" => "annonces/achat?adresse=Normandie"
"haute-normandie" => "annonces/achat?adresse=Normandie"
"pays-de-la-loire" => "annonces/achat?adresse=Pays%20de%20la%20Loire"
"picardie" => "annonces/achat?adresse=Hauts-de-France"
"poitou-charentes" => "annonces/achat?adresse=Nouvelle-Aquitaine"
"paca" => "annonces/achat?adresse=PACA"
"reunion" => "annonces/achat?adresse=La%20Réunion"
"rhone-alpes" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
"exclusif" => "annonces/achat?exclusif=true"
"medoc" => "annonces/achat?adresse=Nouvelle-Aquitaine"
"commerce" => "commerces"
]
"background-regions" => array:18 [
"Hauts-de-France, France" => "bgmoteur_annonces-hautsdefrance.jpg"
"Normandie, France" => "bgmoteur_annonces-normandie.jpg"
"Île-de-France, France" => "bgmoteur_annonces-iledefrance.jpg"
"Bretagne, France" => "bgmoteur_annonces-bretagne.jpg"
"Auvergne-Rhône-Alpes, France" => "bgmoteur_annonces-auvergnerhonealpes.jpg"
"Bourgogne Franche-Comté, France" => "bgmoteur_annonces-bourgognefranchecompte.jpg"
"Centre-Val de Loire, France" => "bgmoteur_annonces-centrevaldeloire.jpg"
"Pays de la Loire, France" => "bgmoteur_annonces-valdeloire.jpg"
"Nouvelle-Aquitaine, France" => "bgmoteur_annonces-nouvelleaquitaine.jpg"
"Occitanie, France" => "bgmoteur_annonces-occitanie.jpg"
"PACA, France" => "bgmoteur_annonces-paca.jpg"
"Corse, France" => "bgmoteur_annonces-corse.jpg"
"Grand Est, France" => "bgmoteur_annonces-grandest.jpg"
"Guadeloupe" => "bgmoteur_annonces-guadeloupe.jpg"
"Arrondissement de Cayenne, France" => "bgmoteur_annonces-guyane.jpg"
"La Réunion" => "bgmoteur_annonces-lareunion.jpg"
"Martinique" => "bgmoteur_annonces-martinique.jpg"
"Mayotte" => "bgmoteur_annonces-mayotte.jpg"
]
"site_de" => "https://www.optimhome.com/de"
"site_pt" => "https://www.optimhome.com/pt"
"site_en" => "https://www.optimhome.com/en"
"site_fr" => "https://www.optimhome.com"
"property_pdf" => array:1 [
"file_name" => "Fiche_bien_"
]
"reference_length" => array:2 [
"fr" => 12
"pt" => 4
]
"geolocation" => array:1 [
"city" => "Paris"
]
"acxtest" => "TEST"
"intranet-url" => "https://intranet.digitregroup.io"
"graphql" => array:2 [
"endpoint" => "https://intranet.digitregroup.io/graphql/"
"token" => "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjowLCJlbWFpbCI6ImFkbWluQGRpZ2l0cmVncm91cC5jb20iLCJyb2xlIjpbIkFETUlOIl0sInJ1bGVzIjpbeyJhY3Rpb25zIjpbInJlYWQiLCJ3cml0ZSIsImRlbGV0ZSJdLCJzdWJqZWN0IjoiYW55In1dfSwiaWF0IjoxNTUyNTgwNDI4fQ.SQdTRJQEUlvHMTn6_3pNwYDCM3aj2Taw-_bNjK3NBhM"
]
]
"uri" => Uri {#138}
"assets" => Assets {#251}
"taxonomy" => Taxonomy {#423}
"browser" => Browser {#458}
"base_dir" => "/var/app/current"
"home_url" => "/"
"base_url" => ""
"base_url_absolute" => "https://www.optimhome.com"
"base_url_relative" => ""
"base_url_simple" => ""
"theme_dir" => "/var/app/current/user/themes/optimhome"
"theme_url" => "/user/themes/optimhome"
"html_lang" => "fr"
"language_codes" => LanguageCodes {#459}
"breadcrumbs" => Breadcrumbs {#196}
"form" => null
"form_max_filesize" => 15
"form_json_response" => []
"page" => Page {#519}
"media" => Media {#1159}
"header" => {#520}
]
/var
/app
/current
/system
/src
/Grav
/Common
/Page
/Page.php
}
// Initialize the preferred variant of Parsedown
if ($defaults['extra']) {
$parsedown = new ParsedownExtra($this, $defaults);
} else {
$parsedown = new Parsedown($this, $defaults);
}
$this->content = $parsedown->text($this->content);
}
/**
* Process the Twig page content.
*/
private function processTwig()
{
$twig = Grav::instance()['twig'];
$this->content = $twig->processPage($this, $this->content);
}
/**
* Fires the onPageContentProcessed event, and caches the page content using a unique ID for the page
*/
public function cachePageContent()
{
$cache = Grav::instance()['cache'];
$cache_id = md5('page' . $this->id());
$cache->save($cache_id, ['content' => $this->content, 'content_meta' => $this->content_meta]);
}
/**
* Needed by the onPageContentProcessed event to get the raw page content
*
* @return string the current page content
*/
public function getRawContent()
{
return $this->content;
Arguments
Page {#519}
"""
<section>\n
<div class="container">\n
{% set collection = page.find( '/actualites' ).children.order('date', 'desc').published() %}\n
{% do paginate( collection, header.content.limit ) %}\n
<div class="row">\n
{% for p in collection %}\n
<div class="card_news col-12 col-md-4 mb-3">\n
{% include 'inc/news-item.html.twig' with {\n
'title': p.title,\n
'date': p.date|date('d/m/Y'),\n
'img': p.media.images|first.url,\n
'url': p.url,\n
'category': p.taxonomy.category|first,\n
'content' : p.content|striptags|truncate(100)\n
}\n
%}\n
</div>\n
{% endfor %}\n
</div>\n
<div class="row justify-content-center">\n
{% if config.plugins.pagination.enabled and collection.params.pagination %}\n
{% include 'partials/pagination.html.twig' with {'base_url': page.url, 'pagination': collection.params.pagination} %}\n
{% endif %}\n
</div>\n
</div>\n
</section>
"""
/var
/app
/current
/system
/src
/Grav
/Common
/Page
/Page.php
if ($process_twig) {
$this->processTwig();
}
if ($process_markdown) {
$this->processMarkdown();
}
// Content Processed but not cached yet
Grav::instance()->fireEvent('onPageContentProcessed', new Event(['page' => $this]));
} else {
if ($process_markdown) {
$this->processMarkdown();
}
// Content Processed but not cached yet
Grav::instance()->fireEvent('onPageContentProcessed', new Event(['page' => $this]));
if ($process_twig) {
$this->processTwig();
}
}
if ($cache_enable) {
$this->cachePageContent();
}
}
}
// Handle summary divider
$delimiter = $config->get('site.summary.delimiter', '===');
$divider_pos = mb_strpos($this->content, "<p>{$delimiter}</p>");
if ($divider_pos !== false) {
$this->summary_size = $divider_pos;
$this->content = str_replace("<p>{$delimiter}</p>", '', $this->content);
}
// Fire event when Page::content() is called
Grav::instance()->fireEvent('onPageContent', new Event(['page' => $this]));
}
/var
/app
/current
/system
/src
/Grav
/Common
/Twig
/Twig.php
return $output;
}
/**
* Twig process that renders the site layout. This is the main twig process that renders the overall
* page and handles all the layout for the site display.
*
* @param string $format Output format (defaults to HTML).
*
* @return string the rendered output
* @throws \RuntimeException
*/
public function processSite($format = null, array $vars = [])
{
// set the page now its been processed
$this->grav->fireEvent('onTwigSiteVariables');
$pages = $this->grav['pages'];
$page = $this->grav['page'];
$content = $page->content();
$twig_vars = $this->twig_vars;
$twig_vars['theme'] = $this->grav['config']->get('theme');
$twig_vars['pages'] = $pages->root();
$twig_vars['page'] = $page;
$twig_vars['header'] = $page->header();
$twig_vars['media'] = $page->media();
$twig_vars['content'] = $content;
$ext = '.' . ($format ?: 'html') . TWIG_EXT;
// determine if params are set, if so disable twig cache
$params = $this->grav['uri']->params(null, true);
if (!empty($params)) {
$this->twig->setCache(false);
}
// Get Twig template layout
$template = $this->template($page->template() . $ext);
/var
/app
/current
/system
/src
/Grav
/Common
/Service
/OutputServiceProvider.php
namespace Grav\Common\Service;
use Grav\Common\Page\Interfaces\PageInterface;
use Grav\Common\Twig\Twig;
use Pimple\Container;
use Pimple\ServiceProviderInterface;
class OutputServiceProvider implements ServiceProviderInterface
{
public function register(Container $container)
{
$container['output'] = function ($c) {
/** @var Twig $twig */
$twig = $c['twig'];
/** @var PageInterface $page */
$page = $c['page'];
return $twig->processSite($page->templateFormat());
};
}
}
Arguments
/var
/app
/current
/vendor
/pimple
/pimple
/src
/Pimple
/Container.php
{
if (!isset($this->keys[$id])) {
throw new UnknownIdentifierException($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
/var
/app
/current
/system
/src
/Grav
/Common
/Processors
/RenderProcessor.php
namespace Grav\Common\Processors;
use Grav\Common\Page\Interfaces\PageInterface;
use Grav\Framework\Psr7\Response;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
class RenderProcessor extends ProcessorBase
{
public $id = 'render';
public $title = 'Render';
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
{
$this->startTimer();
$container = $this->container;
$output = $container['output'];
if ($output instanceof ResponseInterface) {
return $output;
}
ob_start();
// Use internal Grav output.
$container->output = $output;
$container->fireEvent('onOutputGenerated');
echo $container->output;
// remove any output
$container->output = '';
$this->container->fireEvent('onOutputRendered');
$html = ob_get_clean();
Arguments
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
private $handler;
/** @var ContainerInterface|null */
private $container;
/**
* {@inheritdoc}
* @throws InvalidArgumentException
*/
public function handle(ServerRequestInterface $request): ResponseInterface
{
$middleware = array_shift($this->middleware);
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
ServerRequest {#210}
RequestHandler {#903}
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Common
/Processors
/DebuggerAssetsProcessor.php
namespace Grav\Common\Processors;
use Grav\Framework\Psr7\Response;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
class DebuggerAssetsProcessor extends ProcessorBase
{
public $id = 'debugger_assets';
public $title = 'Debugger Assets';
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
{
$this->startTimer();
$this->container['debugger']->addAssets();
$this->stopTimer();
return $handler->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
private $handler;
/** @var ContainerInterface|null */
private $container;
/**
* {@inheritdoc}
* @throws InvalidArgumentException
*/
public function handle(ServerRequestInterface $request): ResponseInterface
{
$middleware = array_shift($this->middleware);
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
ServerRequest {#210}
RequestHandler {#905}
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Common
/Processors
/PagesProcessor.php
$this->addMessage("Routed to page {$page->rawRoute()} (type: {$page->template()}) [Not Found fallback]");
} else {
$this->addMessage("Routed to page {$page->rawRoute()} (type: {$page->template()})");
$task = $this->container['task'];
$action = $this->container['action'];
if ($task) {
$event = new Event(['task' => $task, 'page' => $page]);
$this->container->fireEvent('onPageTask', $event);
$this->container->fireEvent('onPageTask.' . $task, $event);
} elseif ($action) {
$event = new Event(['action' => $action, 'page' => $page]);
$this->container->fireEvent('onPageAction', $event);
$this->container->fireEvent('onPageAction.' . $action, $event);
}
}
$this->stopTimer();
return $handler->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
private $handler;
/** @var ContainerInterface|null */
private $container;
/**
* {@inheritdoc}
* @throws InvalidArgumentException
*/
public function handle(ServerRequestInterface $request): ResponseInterface
{
$middleware = array_shift($this->middleware);
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
ServerRequest {#210}
RequestHandler {#461}
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Common
/Processors
/TwigProcessor.php
*/
namespace Grav\Common\Processors;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
class TwigProcessor extends ProcessorBase
{
public $id = 'twig';
public $title = 'Twig';
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
{
$this->startTimer();
$this->container['twig']->init();
$this->stopTimer();
return $handler->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
private $handler;
/** @var ContainerInterface|null */
private $container;
/**
* {@inheritdoc}
* @throws InvalidArgumentException
*/
public function handle(ServerRequestInterface $request): ResponseInterface
{
$middleware = array_shift($this->middleware);
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
ServerRequest {#210}
RequestHandler {#253}
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Common
/Processors
/AssetsProcessor.php
namespace Grav\Common\Processors;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
class AssetsProcessor extends ProcessorBase
{
public $id = '_assets';
public $title = 'Assets';
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
{
$this->startTimer();
$this->container['assets']->init();
$this->container->fireEvent('onAssetsInitialized');
$this->stopTimer();
return $handler->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
private $handler;
/** @var ContainerInterface|null */
private $container;
/**
* {@inheritdoc}
* @throws InvalidArgumentException
*/
public function handle(ServerRequestInterface $request): ResponseInterface
{
$middleware = array_shift($this->middleware);
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
ServerRequest {#210}
RequestHandler {#250}
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Common
/Processors
/SchedulerProcessor.php
namespace Grav\Common\Processors;
use RocketTheme\Toolbox\Event\Event;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
class SchedulerProcessor extends ProcessorBase
{
public $id = '_scheduler';
public $title = 'Scheduler';
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
{
$this->startTimer();
$scheduler = $this->container['scheduler'];
$this->container->fireEvent('onSchedulerInitialized', new Event(['scheduler' => $scheduler]));
$this->stopTimer();
return $handler->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
private $handler;
/** @var ContainerInterface|null */
private $container;
/**
* {@inheritdoc}
* @throws InvalidArgumentException
*/
public function handle(ServerRequestInterface $request): ResponseInterface
{
$middleware = array_shift($this->middleware);
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
ServerRequest {#210}
RequestHandler {#220}
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Common
/Processors
/BackupsProcessor.php
namespace Grav\Common\Processors;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
class BackupsProcessor extends ProcessorBase
{
public $id = '_backups';
public $title = 'Backups';
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
{
$this->startTimer();
$backups = $this->container['backups'];
$backups->init();
$this->stopTimer();
return $handler->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
private $handler;
/** @var ContainerInterface|null */
private $container;
/**
* {@inheritdoc}
* @throws InvalidArgumentException
*/
public function handle(ServerRequestInterface $request): ResponseInterface
{
$middleware = array_shift($this->middleware);
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
ServerRequest {#210}
RequestHandler {#217}
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Common
/Processors
/TasksProcessor.php
}
$this->stopTimer();
return $response;
} catch (NotFoundException $e) {
// Task not found: Let it pass through.
}
}
if ($task) {
$this->container->fireEvent('onTask.' . $task);
} elseif ($action) {
$this->container->fireEvent('onAction.' . $action);
}
}
$this->stopTimer();
return $handler->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
private $handler;
/** @var ContainerInterface|null */
private $container;
/**
* {@inheritdoc}
* @throws InvalidArgumentException
*/
public function handle(ServerRequestInterface $request): ResponseInterface
{
$middleware = array_shift($this->middleware);
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
ServerRequest {#210}
RequestHandler {#215}
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Common
/Processors
/RequestProcessor.php
$uri = $request->getUri();
$ext = mb_strtolower(pathinfo($uri->getPath(), PATHINFO_EXTENSION));
$request = $request
->withAttribute('grav', $this->container)
->withAttribute('time', $_SERVER['REQUEST_TIME_FLOAT'] ?? GRAV_REQUEST_TIME)
->withAttribute('route', Uri::getCurrentRoute()->withExtension($ext))
->withAttribute('referrer', $this->container['uri']->referrer());
$event = new RequestHandlerEvent(['request' => $request, 'handler' => $handler]);
/** @var RequestHandlerEvent $event */
$event = $this->container->fireEvent('onRequestHandlerInit', $event);
$response = $event->getResponse();
$this->stopTimer();
if ($response) {
return $response;
}
return $handler->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
private $handler;
/** @var ContainerInterface|null */
private $container;
/**
* {@inheritdoc}
* @throws InvalidArgumentException
*/
public function handle(ServerRequestInterface $request): ResponseInterface
{
$middleware = array_shift($this->middleware);
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
ServerRequest {#210}
RequestHandler {#208}
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Common
/Processors
/ThemesProcessor.php
*/
namespace Grav\Common\Processors;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
class ThemesProcessor extends ProcessorBase
{
public $id = 'themes';
public $title = 'Themes';
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
{
$this->startTimer();
$this->container['themes']->init();
$this->stopTimer();
return $handler->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
private $handler;
/** @var ContainerInterface|null */
private $container;
/**
* {@inheritdoc}
* @throws InvalidArgumentException
*/
public function handle(ServerRequestInterface $request): ResponseInterface
{
$middleware = array_shift($this->middleware);
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
ServerRequest {#68}
RequestHandler {#200}
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Common
/Processors
/PluginsProcessor.php
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
class PluginsProcessor extends ProcessorBase
{
public $id = 'plugins';
public $title = 'Plugins';
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
{
$this->startTimer();
// TODO: remove in 2.0.
$this->container['accounts'];
$this->container['plugins']->init();
$this->container->fireEvent('onPluginsInitialized');
$this->stopTimer();
return $handler->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
private $handler;
/** @var ContainerInterface|null */
private $container;
/**
* {@inheritdoc}
* @throws InvalidArgumentException
*/
public function handle(ServerRequestInterface $request): ResponseInterface
{
$middleware = array_shift($this->middleware);
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
ServerRequest {#68}
RequestHandler {#143}
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Common
/Processors
/InitializeProcessor.php
}
/** @var Uri $uri */
$uri = $this->container['uri'];
$uri->init();
// Redirect pages with trailing slash if configured to do so.
$path = $uri->path() ?: '/';
if ($path !== '/'
&& $config->get('system.pages.redirect_trailing_slash', false)
&& Utils::endsWith($path, '/')) {
$redirect = (string) $uri::getCurrentRoute()->toString();
$this->container->redirect($redirect);
}
$this->container->setLocale();
$this->stopTimer();
return $handler->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
private $handler;
/** @var ContainerInterface|null */
private $container;
/**
* {@inheritdoc}
* @throws InvalidArgumentException
*/
public function handle(ServerRequestInterface $request): ResponseInterface
{
$middleware = array_shift($this->middleware);
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
ServerRequest {#68}
RequestHandler {#136}
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Common
/Processors
/DebuggerProcessor.php
*/
namespace Grav\Common\Processors;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
class DebuggerProcessor extends ProcessorBase
{
public $id = '_debugger';
public $title = 'Init Debugger';
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
{
$this->startTimer();
$this->container['debugger']->init();
$this->stopTimer();
return $handler->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
private $handler;
/** @var ContainerInterface|null */
private $container;
/**
* {@inheritdoc}
* @throws InvalidArgumentException
*/
public function handle(ServerRequestInterface $request): ResponseInterface
{
$middleware = array_shift($this->middleware);
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
ServerRequest {#68}
RequestHandler {#134}
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Common
/Processors
/ErrorsProcessor.php
*/
namespace Grav\Common\Processors;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
class ErrorsProcessor extends ProcessorBase
{
public $id = '_errors';
public $title = 'Error Handlers Reset';
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
{
$this->startTimer();
$this->container['errors']->resetHandlers();
$this->stopTimer();
return $handler->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
private $handler;
/** @var ContainerInterface|null */
private $container;
/**
* {@inheritdoc}
* @throws InvalidArgumentException
*/
public function handle(ServerRequestInterface $request): ResponseInterface
{
$middleware = array_shift($this->middleware);
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
ServerRequest {#68}
RequestHandler {#122}
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Common
/Processors
/LoggerProcessor.php
/** @var Config $config */
$config = $grav['config'];
switch ($config->get('system.log.handler', 'file')) {
case 'syslog':
$log = $grav['log'];
$log->popHandler();
$facility = $config->get('system.log.syslog.facility', 'local6');
$logHandler = new SyslogHandler('grav', $facility);
$formatter = new LineFormatter("%channel%.%level_name%: %message% %extra%");
$logHandler->setFormatter($formatter);
$log->pushHandler($logHandler);
break;
}
$this->stopTimer();
return $handler->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
private $handler;
/** @var ContainerInterface|null */
private $container;
/**
* {@inheritdoc}
* @throws InvalidArgumentException
*/
public function handle(ServerRequestInterface $request): ResponseInterface
{
$middleware = array_shift($this->middleware);
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
ServerRequest {#68}
RequestHandler {#100}
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Common
/Processors
/ConfigurationProcessor.php
namespace Grav\Common\Processors;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
class ConfigurationProcessor extends ProcessorBase
{
public $id = '_config';
public $title = 'Configuration';
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
{
$this->startTimer();
$this->container['config']->init();
$this->container['plugins']->setup();
$this->stopTimer();
return $handler->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
private $handler;
/** @var ContainerInterface|null */
private $container;
/**
* {@inheritdoc}
* @throws InvalidArgumentException
*/
public function handle(ServerRequestInterface $request): ResponseInterface
{
$middleware = array_shift($this->middleware);
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
ServerRequest {#68}
RequestHandler {#93}
/var
/app
/current
/system
/src
/Grav
/Framework
/RequestHandler
/Traits
/RequestHandlerTrait.php
// Use default callable if there is no middleware.
if ($middleware === null) {
return \call_user_func($this->handler, $request);
}
if ($middleware instanceof MiddlewareInterface) {
return $middleware->process($request, clone $this);
}
if (null === $this->container || !$this->container->has($middleware)) {
throw new InvalidArgumentException(
sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
$middleware
);
}
array_unshift($this->middleware, $this->container->get($middleware));
return $this->handle($request);
}
}
Arguments
/var
/app
/current
/system
/src
/Grav
/Common
/Grav.php
},
'debuggerAssetsProcessor' => function () {
return new DebuggerAssetsProcessor($this);
},
'renderProcessor' => function () {
return new RenderProcessor($this);
},
]
);
$default = function (ServerRequestInterface $request) {
return new Response(404);
};
/** @var Debugger $debugger */
$debugger = $this['debugger'];
$collection = new RequestHandler($this->middleware, $default, $container);
$response = $collection->handle($this['request']);
$this->header($response);
echo $response->getBody();
$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, \strlen($language) < 3 ? ($language . '_' . strtoupper($language)) : $language);
} elseif ($this['config']->get('system.default_locale')) {
setlocale(LC_ALL, $this['config']->get('system.default_locale'));
Arguments
/var
/app
/current
/index.php
// Set timezone to default, falls back to system if php.ini not set
date_default_timezone_set(@date_default_timezone_get());
// Set internal encoding if mbstring loaded
if (!\extension_loaded('mbstring')) {
die("'mbstring' extension is not loaded. This is required for Grav to run correctly");
}
mb_internal_encoding('UTF-8');
// Get the Grav instance
$grav = Grav::instance(
array(
'loader' => $loader
)
);
// Process the page
try {
$grav->process();
} catch (\Error $e) {
$grav['log']->error('Error.' . __CLASS__ . ':' . __METHOD__ . ': ' . print_r([
'msg' => $e->getMessage(),
'url' => $grav['page']->url(),
'uri' => $grav['uri']->route(),
'trace' => $e->getTraceAsString(),
], true));
$grav->fireEvent('onFatalException', new Event(array('exception' => $e)));
throw $e;
} catch (\Exception $e) {
$grav['log']->error('Exception.' . __CLASS__ . ':' . __METHOD__ . ': ' . print_r([
'msg' => $e->getMessage(),
'url' => $grav['page']->url(),
'uri' => $grav['uri']->route(),
'trace' => $e->getTraceAsString(),
], true));
$grav->fireEvent('onFatalException', new Event(array('exception' => $e)));
throw $e;
}