diff options
author | lavigor <lavigor@users.noreply.github.com> | 2016-02-18 19:22:11 +0300 |
---|---|---|
committer | lavigor <lavigor@users.noreply.github.com> | 2016-02-18 19:22:11 +0300 |
commit | 4b4584bcd43ed1148869b2c834be127b6b9da880 (patch) | |
tree | 8242db4e4cb9f044496e9b09739800d069e5b84e | |
parent | 17e21d5140ccb99363a32bd64c32af6012c1ce97 (diff) | |
download | forums-4b4584bcd43ed1148869b2c834be127b6b9da880.tar forums-4b4584bcd43ed1148869b2c834be127b6b9da880.tar.gz forums-4b4584bcd43ed1148869b2c834be127b6b9da880.tar.bz2 forums-4b4584bcd43ed1148869b2c834be127b6b9da880.tar.xz forums-4b4584bcd43ed1148869b2c834be127b6b9da880.zip |
[ticket/14486] Add an event and fix an event in login_box()
PHPBB3-14486
-rw-r--r-- | phpBB/includes/functions.php | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/phpBB/includes/functions.php b/phpBB/includes/functions.php index b6334a2bca..985b5e8ca3 100644 --- a/phpBB/includes/functions.php +++ b/phpBB/includes/functions.php @@ -2821,6 +2821,21 @@ function login_box($redirect = '', $l_explain = '', $l_success = '', $admin = fa $user->setup(); } + /** + * This event allows an extension to modify the login process + * + * @event core.login_box_before + * @var string redirect Redirect string + * @var string l_explain Explain language string + * @var string l_success Success language string + * @var bool admin Is admin? + * @var bool s_display Display full login form? + * @var string err Error string + * @since 3.1.9-RC1 + */ + $vars = array('redirect', 'l_explain', 'l_success', 'admin', 's_display', 'err'); + extract($phpbb_dispatcher->trigger_event('core.login_box_before', compact($vars))); + // Print out error if user tries to authenticate as an administrator without having the privileges... if ($admin && !$auth->acl_get('a_')) { @@ -2833,7 +2848,7 @@ function login_box($redirect = '', $l_explain = '', $l_success = '', $admin = fa trigger_error('NO_AUTH_ADMIN'); } - if ($request->is_set_post('login') || ($request->is_set('login') && $request->variable('login', '') == 'external')) + if (($request->is_set_post('login') || ($request->is_set('login') && $request->variable('login', '') == 'external')) && !$err) { // Get credential if ($admin) @@ -2902,11 +2917,11 @@ function login_box($redirect = '', $l_explain = '', $l_success = '', $admin = fa * * @event core.login_box_redirect * @var string redirect Redirect string - * @var boolean admin Is admin? - * @var bool return If true, do not redirect but return the sanitized URL. + * @var bool admin Is admin? * @since 3.1.0-RC5 + * @changed 3.1.9-RC1 Removed undefined return variable */ - $vars = array('redirect', 'admin', 'return'); + $vars = array('redirect', 'admin'); extract($phpbb_dispatcher->trigger_event('core.login_box_redirect', compact($vars))); // append/replace SID (may change during the session for AOL users) |