mirror of https://tt-rss.org/git/tt-rss.git
add HOOK_VALIDATE_SESSION
This commit is contained in:
parent
fc95c988cf
commit
81f3139992
|
@ -706,4 +706,11 @@ abstract class Plugin {
|
||||||
function hook_loginform_additional_buttons() {
|
function hook_loginform_additional_buttons() {
|
||||||
user_error("Dummy method invoked.", E_USER_ERROR);
|
user_error("Dummy method invoked.", E_USER_ERROR);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Returns false if session is considered invalid, true cascades to next handler */
|
||||||
|
function hook_validate_session(): bool {
|
||||||
|
user_error("Dummy method invoked.", E_USER_ERROR);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -199,6 +199,9 @@ class PluginHost {
|
||||||
/** @see Plugin::hook_loginform_additional_buttons() */
|
/** @see Plugin::hook_loginform_additional_buttons() */
|
||||||
const HOOK_LOGINFORM_ADDITIONAL_BUTTONS = "hook_loginform_additional_buttons";
|
const HOOK_LOGINFORM_ADDITIONAL_BUTTONS = "hook_loginform_additional_buttons";
|
||||||
|
|
||||||
|
/** @see Plugin::hook_validate_session() */
|
||||||
|
const HOOK_VALIDATE_SESSION = "hook_validate_session";
|
||||||
|
|
||||||
const KIND_ALL = 1;
|
const KIND_ALL = 1;
|
||||||
const KIND_SYSTEM = 2;
|
const KIND_SYSTEM = 2;
|
||||||
const KIND_USER = 3;
|
const KIND_USER = 3;
|
||||||
|
|
|
@ -49,6 +49,21 @@
|
||||||
$_SESSION["login_error_msg"] = __("Session failed to validate (account is disabled)");
|
$_SESSION["login_error_msg"] = __("Session failed to validate (account is disabled)");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// default to true because there might not be any hooks and this is our last check
|
||||||
|
$hook_result = true;
|
||||||
|
|
||||||
|
\PluginHost::getInstance()->chain_hooks_callback(\PluginHost::HOOK_VALIDATE_SESSION,
|
||||||
|
function ($result) use (&$hook_result) {
|
||||||
|
$hook_result = $result;
|
||||||
|
|
||||||
|
if (!$result) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
return $hook_result;
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
$_SESSION["login_error_msg"] = __("Session failed to validate (user not found)");
|
$_SESSION["login_error_msg"] = __("Session failed to validate (user not found)");
|
||||||
return false;
|
return false;
|
||||||
|
|
Loading…
Reference in New Issue