aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Sohier <paul999@phpbb.com>2015-10-24 14:18:52 +0200
committerPaul Sohier <paul999@phpbb.com>2015-10-24 14:28:29 +0200
commit7615a5c22ff733b2c0ac9a30029104cc9ab9a542 (patch)
tree9c04ed864283c1df9873b140237c1d34cd168364
parent5576c9f3b907458081633d53d449faba2ae181d3 (diff)
downloadforums-7615a5c22ff733b2c0ac9a30029104cc9ab9a542.tar
forums-7615a5c22ff733b2c0ac9a30029104cc9ab9a542.tar.gz
forums-7615a5c22ff733b2c0ac9a30029104cc9ab9a542.tar.bz2
forums-7615a5c22ff733b2c0ac9a30029104cc9ab9a542.tar.xz
forums-7615a5c22ff733b2c0ac9a30029104cc9ab9a542.zip
[ticket/14258] Add event into auth::login before session creation
Add a new event in the login method just before the session create, so extensions can do some additional validation during login. PHPBB3-14258
-rw-r--r--phpBB/phpbb/auth/auth.php20
1 files changed, 20 insertions, 0 deletions
diff --git a/phpBB/phpbb/auth/auth.php b/phpBB/phpbb/auth/auth.php
index b59f0e60ec..fa168a5325 100644
--- a/phpBB/phpbb/auth/auth.php
+++ b/phpBB/phpbb/auth/auth.php
@@ -928,6 +928,7 @@ class auth
function login($username, $password, $autologin = false, $viewonline = 1, $admin = 0)
{
global $db, $user, $phpbb_root_path, $phpEx, $phpbb_container;
+ global $phpbb_dispatcher;
$provider_collection = $phpbb_container->get('auth.provider_collection');
@@ -982,6 +983,25 @@ class auth
redirect($url);
}
+ /**
+ * This event is triggered just after the user has been checked if he has a valid username/password,
+ * but before the actual session creation.
+ *
+ * @event core.auth_login_before_session_create
+ * @var array login Variable containing login array value
+ * @var bool admin Variable containing if is logging into the acp
+ * @var string username Variable containing the username
+ * @var bool autologin Variable containing if this is by auto login
+ * @since 3.1.7-RC1
+ */
+ $vars = array(
+ 'login',
+ 'admin',
+ 'username',
+ 'autologin',
+ );
+ extract($phpbb_dispatcher->trigger_event('core.auth_login_before_session_create', compact($vars)));
+
// If login succeeded, we will log the user in... else we pass the login array through...
if ($login['status'] == LOGIN_SUCCESS)
{