Available JQuery Events¶
Some portal functions (such as 2FA registration) are performed by Javascript.
We offer a few custom events that let you react to certain high-level Javascript events
Preventing default behavior¶
New in version 2.17.
Event handlers can stop the default LemonLDAP::NG behavior from executing:
$(document).on( "sslFailure", { }, function( event ) {
event.preventDefault();
// Navigate the user to the smartcard help page, etc.
});
Second factor management¶
mfaAdded¶
New in version 2.0.15.
This event is triggered when a TOTP or WebAuthn device is registered
Sample code:
$(document).on( "mfaAdded", { }, function( event, info ) {
console.log( "Added MFA of type" + info.type );
// Your code here
// If you want to prevent the redirection to the 2FA register page
// event.preventDefault();
});
Changed in version 2.0.16: LemonLDAP::NG redirects to the 2FA Register page after your
device has been added. You can cancel this redirection by calling
event.preventDefault()
in your listener.
mfaDeleted¶
New in version 2.0.15.
This event is triggered when a TOTP or WebAuthn device is removed
Sample code:
$(document).on( "mfaDeleted", { }, function( event, info ) {
console.log( "Removed MFA of type" + info.type );
// Your code here
});
UI¶
portalLoaded¶
New in version 2.0.16.
This even is triggered after the main portal javascript has run
Sample code:
$(document).on( "portalLoaded", { }, function( event, info ) {
// Make sure DOM is ready as well
$( document ).ready(function() {
console.log("Portal loaded and DOM ready");
});
});
Authentication¶
kerberosAttempt¶
New in version 2.17.
This even is triggered immediately before the user tries to authenticate using Kerberos
$(document).on( "kerberosAttempt", { }, function( event ) {
console.log( "Kerberos attempt" );
});
kerberosFailure¶
New in version 2.17.
This even is triggered when the user failed to authenticate using Kerberos
$(document).on( "kerberosFailure", { }, function( event , info ) {
console.log( "Kerberos failure", info );
});
kerberosSuccess¶
New in version 2.17.
This even is triggered when before the user successfully authenticated using Kerberos
$(document).on( "kerberosSuccess", { }, function( event , info ) {
console.log( "Kerberos success", info );
});
sslAttempt¶
New in version 2.17.
This even is triggered immediately before the user tries to authenticate using SSL
$(document).on( "sslAttempt", { }, function( event ) {
console.log( "SSL attempt" );
});
sslFailure¶
New in version 2.17.
This even is triggered when the user failed to authenticate using SSL
$(document).on( "sslFailure", { }, function( event , info ) {
console.log( "SSL failure", info );
});
sslSuccess¶
New in version 2.17.
This even is triggered when before the user successfully authenticated using SSL
$(document).on( "sslSuccess", { }, function( event , info ) {
console.log( "SSL success", info );
});
webauthnAttempt¶
New in version 2.17.
This even is triggered immediately before the user tries to use a WebAuthn device
$(document).on( "webauthnAttempt", { }, function( event ) {
console.log( "WebAuthn attempt" );
});
webauthnFailure¶
New in version 2.17.
This even is triggered when the user failed to use a WebAuthn device
$(document).on( "webauthnFailure", { }, function( event , info ) {
console.log( "WebAuthn failure", info );
});
webauthnSuccess¶
New in version 2.17.
This even is triggered when the user successfully used a WebAuthn device
$(document).on( "webauthnSuccess", { }, function( event , info ) {
console.log( "WebAuthn success", info );
});
webauthnRegistrationAttempt¶
New in version 2.17.
This even is triggered immediately before the user tries to register a WebAuthn device
$(document).on( "webauthnRegistrationAttempt", { }, function( event ) {
console.log( "WebAuthn registration attempt" );
});
webauthnRegistrationFailure¶
New in version 2.17.
This even is triggered when the user failed to register a WebAuthn device
$(document).on( "webauthnRegistrationFailure", { }, function( event , info ) {
console.log( "WebAuthn registration failure", info );
});
webauthnRegistrationSuccess¶
New in version 2.17.
This even is triggered when the user successfully registered a WebAuthn device
$(document).on( "webauthnRegistrationSuccess", { }, function( event , info ) {
console.log( "WebAuthn registration success", info );
});
Password policy¶
checkpassword¶
New in version 2.18.
This event is triggered on every keystroke while the user inputs a new password. You can use it to check if it fits certain criteria.
You can fetch the candidate password in context.password
.
context.evType
will contain focusout
if the user has focused out of the
password field. You can use it for costly password quality checks to avoid
running the check at every keystroke.
context.setResult
is a function that you can call to update the password form state.
Its first argument is the
id
of the policy that you added withaddPasswordPolicy
in the server-side code.Its second argument is the state of the policy, you can use one of
good
,bad
,unknown
,waiting
orinfo
.
The new password form can only be submitted when all policies have been set to a status of either good
or info
.
$(document).on( "checkpassword", function( event , context ) {
password = context.password;
evType = context.evType;
setResult = context.setResult;
// Do your client-side check here
setResult("my-custom-ppolicy", "bad");
});