aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorlavigor <lavigor@users.noreply.github.com>2016-02-18 19:22:11 +0300
committerlavigor <lavigor@users.noreply.github.com>2016-02-18 19:22:11 +0300
commit4b4584bcd43ed1148869b2c834be127b6b9da880 (patch)
tree8242db4e4cb9f044496e9b09739800d069e5b84e
parent17e21d5140ccb99363a32bd64c32af6012c1ce97 (diff)
downloadforums-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.php23
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)