From f93ddcb3827b91bb648a7d1cdfaa71c45b242f71 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Rub=C3=A9n=20Calvo?= <rubencm@gmail.com>
Date: Sat, 1 Sep 2018 01:16:57 +0200
Subject: [PATCH] [ticket/12636] Add log.session_errors

PHPBB3-12636
---
 phpBB/config/development/config.yml                  | 3 +++
 phpBB/phpbb/di/extension/container_configuration.php | 6 ++++++
 phpBB/phpbb/di/extension/core.php                    | 6 ++++++
 phpBB/phpbb/session.php                              | 2 +-
 4 files changed, 16 insertions(+), 1 deletion(-)

diff --git a/phpBB/config/development/config.yml b/phpBB/config/development/config.yml
index 67c0e5a871..3709b100f0 100644
--- a/phpBB/config/development/config.yml
+++ b/phpBB/config/development/config.yml
@@ -17,3 +17,6 @@ core:
     extensions:
         composer_debug: true
         composer_verbose: true
+
+    log:
+        session_errors: true
diff --git a/phpBB/phpbb/di/extension/container_configuration.php b/phpBB/phpbb/di/extension/container_configuration.php
index 3a6502a4b3..5df1ebb59e 100644
--- a/phpBB/phpbb/di/extension/container_configuration.php
+++ b/phpBB/phpbb/di/extension/container_configuration.php
@@ -54,6 +54,12 @@ class container_configuration implements ConfigurationInterface
 						->booleanNode('composer_verbose')->defaultValue(false)->end()
 					->end()
 				->end()
+				->arrayNode('log')
+					->addDefaultsIfNotSet()
+					->children()
+						->booleanNode('session_errors')->defaultValue(false)->end()
+					->end()
+				->end()
 			->end()
 		;
 		return $treeBuilder;
diff --git a/phpBB/phpbb/di/extension/core.php b/phpBB/phpbb/di/extension/core.php
index 75a037871f..2f57c2854c 100644
--- a/phpBB/phpbb/di/extension/core.php
+++ b/phpBB/phpbb/di/extension/core.php
@@ -110,6 +110,12 @@ class core extends Extension
 		{
 			$container->setParameter('debug.' . $name, $value);
 		}
+
+		// Set the log options
+		foreach ($config['log'] as $name => $value)
+		{
+			$container->setParameter('log.' . $name, $value);
+		}
 	}
 
 	/**
diff --git a/phpBB/phpbb/session.php b/phpBB/phpbb/session.php
index 1b1bc3a428..73f40b4e33 100644
--- a/phpBB/phpbb/session.php
+++ b/phpBB/phpbb/session.php
@@ -481,7 +481,7 @@ class session
 				else
 				{
 					// Added logging temporarily to help debug bugs...
-					if (defined('DEBUG') && $this->data['user_id'] != ANONYMOUS)
+					if ($phpbb_container->getParameter('log.session_errors') && $this->data['user_id'] != ANONYMOUS)
 					{
 						if ($referer_valid)
 						{