User charter/license acknowledgement/EULA

I wonder how it would be possible to regularly pop up a conditional link on the login page to force the user to read it before enabling it to log in.
You see the license Blah Blah you have to acknowledge on a regular basis when you’re using Apple or Google products? The same thing.
Why? We do not have license but we have user Charter that is regularly modified and for which we have to be sure users know it. Exactly like a license agreement (EULA).

I did see the possibility to add a panel in the browser workflow but there is no trigger in the workflow engine to pop up it regularly.
Moreover I’d like a workflow where:

  1. the message, the content is presented in a popup;
  2. the first and second times the user can discard it in order to log in but the third time (or the fourth, whatever) he cannot avoid it anymore;
  3. the fact the the content has been read and acknowledged is stored somewhere (for statistical purposes).

How do you think I can do that?
By using the API?
How can I hook in the system to display such a popup and to log the acknowledgement?

Thank you,
db

Keycloak supports themes, so you could add a check box (a link or a popup dialog box ) to Keycloak’s Login screen, for example:

See: Keycloak Themes - Part 1

Yes Robinyo, I understand but that’s more a process that I need than a box to check.
Firsteval, that box must not appear each time, only when necessary (when I decide to);
Secondly, that box must no appear for everyone;
third, when it exists it is blocking: the user has to read the whole notice and acknowledge the reading before being able to reach the login panel;
fourth, I need to know when someone acknowledged because
five, the notice may appear 2 times without blocking the access but the third time, the user cannot avoid the notice anymore.
Have a nice evening,

BTW, thank you for your guide about FTL in KeyCloak! :ok_hand:t2:
db

Keycloak’s theme engine (FreeMarker) supports properties, custom user attributes and javascript.

OK, I’ll check that as soon as I have some time. That sounds interesting if JS is part of the game.
Thanks again,
db

See: Keycloak Themes - Part 2

Very interesting. Thank you for that lesson.
As you understood I’m fond of process more than visuals.
I have yet to understand how I could mix the workflow that KeyCloak exposes and the liberty that FreeMarker permits.
I’ll check when I have some time and come back to you if I have questions.
Thank again,
db

@dblas

I found this Keycloak theme: https://git.fairkom.net/fairlogin/keycloak-fairlogin-theme/-/tree/master

Which has some “Agree Terms” functionality: https://git.fairkom.net/fairlogin/keycloak-fairlogin-theme/-/blob/master/fairlogin/login/resources/js/my-login.js

Thank you @Robinyo. I didn’t have yet the time to test it.
I’m currently testing extensions to the default form (appending input zones) in order to comply with some internal requests.
I tested another theme (shivang) and found that it was working well most of the time it lacked some features (like the OTP panel for example).
I’m going to ask a few more question about the workflows.
You’ll see them.
Thank you again.
db