OpenConext / OpenConext/OpenConext-engineblock

Redesign "Remember my choice" checkbox in WAYF

Open
#2,066 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

discovery UI
Dominant language
PHP
Stars
17
Forks
25
Avg merge
4d 1h
Merged PRs (30d)
1

Description

To support the new "Remember my choice per SP" feature of #1956, we want ot make adjustment to the UI of the WAYF screen.

For reference the current layout when wayf.remember_choice is enabled:

Image

We would like to make small adjustments.

in the case that we use a per-sp "remember my choice" (both wayf.remember_choice and wayf.remember_choice_per_idp enabled):

Image

The following changes have been made:

  • Adjust the margins, switch the order of the checkbox and the text, adjust the text colour and weight, and add a tooltip ⓘ.

  • The mockup above uses this html (but tooltip hover doesn't work):

    <form method="post" action="https://engine.test2.surfconext.nl/authentication/idp/process-wayf" class="wayf__rememberChoice">
        <input type="checkbox" name="rememberChoice" id="rememberChoice">
        <label for="rememberChoice">Remember my choice for this service for 90 days</label>
        <label class="tooltip" for="rememberChoice" style="margin-left: .5em;alignment-baseline: ideographic;">
            <span class="visually-hidden">Tooltip text here</span>
        </label>
    </form>
    
  • Tooltip should show this text:

    • NL: "Als je deze optie aanzet, hoef je de komende 90 dagen voor deze dienst niet meer te kiezen hoe je wilt inloggen. Het inlogscherm wordt dan overgeslagen. Let op: gebruik je soms een ander account om in te loggen? Zet de optie dan uit. Je kunt de keuze later weer terugdraaien op profile.surfconext.nl."
    • EN: "If you enable this option, you won’t need to choose how you want to log into this service for the next 90 days. The login screen will then be skipped. Please note: do you sometimes use a different account to log in? If so, please disable this option. You can reverse this setting later at profile.surfconext.nl."
    • PT: "Se ativar esta opção, não terá de escolher como pretende iniciar sessão nos próximos 90 dias. O ecrã de início de sessão será então ignorado. Atenção: por vezes utiliza uma conta diferente para iniciar sessão? Nesse caso, desative esta opção. Pode reverter esta opção mais tarde em profile.surfconext.nl."
  • the "90 days" phrase should be based on what it set in the wayf.remember_choice_per_idp_lifetime application setting. There is no need to do full date parsing here. A simple check that converts to minutes if wayf.remember_choice_per_idp_lifetime<24h and to days otherwise is fine.

For a global "remember my choice" setting (i.e. wayf.remember_choice true and wayf.remember_choice_per_idp false), the WAYF should look similar, but with adjusted text and without tooltip:

Image

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Locate the WAYF screen implementation and existing handling for wayf.remember_choice and wayf.remember_choice_per_idp. Check how translated labels and tooltips use wayf.remember_choice_per_idp_lifetime, including sub-day values, then verify both per-SP and global layouts. Done means the requested spacing, ordering, styling, translations, tooltip behavior, and setting-dependent duration are covered.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
authentication, frontend, internationalization
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
58/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.