-
Notifications
You must be signed in to change notification settings - Fork 2.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
9097 add contextual password helper #9256
9097 add contextual password helper #9256
Conversation
Merging latest version to my repo
Hey @mikecp! We may take this PR and try to help move the needle on it during our Hackathon. Sound OK? |
Hey @protherj Sure no problem. I was planning on having a look at it tonight as well, so maybe just drop a comment here to let me know if you start working on it, then I'll keep my hands off it ;-) |
You could join our Zoom :) |
In fact I could, I'll try to drop by :-) |
Hey, we tried to convert the validation to a directive, but ran out of time as it was more complex than we expected. Sorry! |
Hey @protherj, no problem ;-) |
any update on merge @nul800sebastiaan ? |
Haven't done the check with Pwnd Passwords API yet but I guess this can be taken over later on? |
is copy paste ok? Or does it need to be directive? |
1 similar comment
is copy paste ok? Or does it need to be directive? |
@mikecp yeah would agree, merge now and then it can be added later |
@TimGeyssens Indeed copy-pasted, i will have a look to move to directive. |
Hmmm.. I'm not too sure if it's safe to disclose how long a password needs to be on the "Public" side of the site. It opens itself to a hacker to determine the min length of other users passwords. |
It's for pw change and set ... Not when logging in |
Hi there @mikecp, First of all: A big #H5YR for making an Umbraco related contribution during Hacktoberfest! We are very thankful for the huge amount of PRs submitted, and all the amazing work you've been doing 🥇 Due to the amazing work you and others in the community have been doing, we've had a bit of a hard time keeping up. 😅 While all of the PRs for Hacktoberfest might not have been merged yet, you still qualify for receiving some Umbraco swag, congratulations! 🎉 In the spirit of Hacktoberfest we've prepared some exclusive Umbraco swag for all our contributors - including you! As a new choice this year, you can opt-out of receiving anything and ask us to improve the planet instead by planting a tree on your behalf. 🌳 Receive your swag or plant a tree! 👈 Please follow this link to fill out and submit the form, before February 26, 2021. Following this date we'll be sending out all the swag, which also means that it might not reach your doorstep before April, so please bear with us and be patient 🙏 The only thing left to say is thank you so much for participating in Hacktoberfest! We really appreciate the help! Kind regards, |
@nathanwoulfe how about this one? Simple one to avoid some frustration... |
@mikecp @TimGeyssens @protherj this looks great - I'm going to have a look at creating a directive to avoid the duplication. Otherwise, this is a valuable UX addition |
Thanks @nathanwoulfe , much appreciated. |
@mikecp directive is in my last commit - I've implemented it the user password change overlay only, but if we're happy with the approach it's easy enough to update the other locations. Only bit that's potentially a bit messy is having to pass a reference to the password input element, rather than a scoped variable - this is because the password fields have a min-length attribute set, and potentially some logic implemented too, which prevents the scoped variable from being set until the min-length is met. That then means the helper text isn't displayed until the password is n characters long, which defeats the purpose (I'm guessing that's why you have the key-up event?). By passing a selector for the password input, the directive can then watch the value, and show the helper as needed. |
Hey @nathanwoulfe , Indeed, the "key-up" event was my workaround for that RawValue not being passed until the password had actually met the criteria's 😂 So for me it is good to go with the directive as you wrote it. |
@nathanwoulfe still needs some cleaning up, I'll finish tonight 😀 |
Legendary, thanks @mikecp. I had intended coming back to finish up, but Monday got away from me I'm not sure that the passing the element selector as the directive binding is necessarily the best idea, but it works, and saves the repeated code. |
Hey @nathanwoulfe , This was handled "behind the scenes" in my "duplicate code" version because the appropriate values were passed during the binding to the component, but with the separate directive, we always used the Users settings via the two constants, and therefore this could display misleading information when changing a Member password. Anyway, there are a bunch of changes that I made so that specific min length and non alpha-num values can now be bound to the password tip component. Cheers! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mikecp looks good to me - there's a tradeoff with the keyup vs watch, where the former is potentially more efficient and avoids the angularjs coupling, but it does mean the component is more involved since it needs to manage the keyup. The way I'd done the watch though was a bit dodgy as it meant the directive was operating outside it's own scope, so probably best to not be doing that...
Otherwise, all works nicely, it's a really useful addition 👍
Thx @nathanwoulfe ! Cheers! |
* Bump version to 8.6.8 * Initial rework of Lock dictionaries * [Issue 5277-146] accessibility - Close 'X' icon next to language drop… (#9264) * [Issue 5277-146] accessibility - Close 'X' icon next to language drop down is identified as "link" - screen reader * add new loacalization key * Fix issue with SqlMainDomLock that cannot use implicit lock timeouts … (#9973) * Fix issue with SqlMainDomLock that cannot use implicit lock timeouts … (#9973) (cherry picked from commit da5351d) * Adjust unit tests and apply fixes to scope * Add more unit tests, showing current issue * Counting Umbraco.ModelsBuilder and ModelsBuilder.Umbraco namespaces as external providers * Fix dead lock with TypeLoader * Fix errors shown in unit tests * Throw error if all scopes hasn't been disposed * Clean * Fixes and Updates for DB Scope and Ambient Context leaks (#9953) * Adds some scope tests (ported back from netcore) and provides a much better error message, ensure execution context is not flowed to child tasks that shouldn't leak any current ambient context * updates comment * Ensure SqlMainDomLock suppresses execution context too * Since we're awaiting a task in a library method, ConfigureAwait(false) * missing null check Co-authored-by: Elitsa Marinovska <[email protected]> * Adds additional error checking and reporting to MainDom/SqlMainDomLock (#9954) Co-authored-by: Elitsa Marinovska <[email protected]> * Add copy logic to Media Picker (#9957) * Add copy logic to Media Picker * Add action for copy all * Fix for selectable media item * Wrap calls to map in scopes * Autocomplete scopes * Remove unnecessary aria-hidden attribute from <umb-icon> * Remove scope from method that calls another method that has a scope * Fixes #9993 - Cannot save empty image in Grid * Clean * Revert "The Value() method for IPublishedContent was not working with the defaultValue parameter" (#9989) * Use a hashset to keep track of acquired locks This simplifies disposing/checking for locks greatly. * Add images in grid - fixes 9982 (#9987) Co-authored-by: Sebastiaan Janssen <[email protected]> * Only create the dicts and hashset when a lock is requested * Clean * Adds a config for configuring the access rules on the content dashboard - by default it granted for all user groups * Adds additional params indicating whether user is admin * Add images in grid - fixes 9982 (#9987) Co-authored-by: Sebastiaan Janssen <[email protected]> (cherry picked from commit e201977) * Bump version to 8.12.2 * #9964 Removed unneeded check for HttpContext * Fix for #9950 - HttpsCheck will now retry using the login background image if inital request returns 301/302. Excessvie Headers check will now check the root url instead of the backoffice * Merge pull request #9994 from umbraco/v8/bugfix/9993 Fixes #9993 - Cannot save empty image in Grid (cherry picked from commit 0ecc933) * Apply suggestions from review * Fixes #9983 - Getting kicked, if document type has a Umbraco.UserPicker property (#10002) * Fixes #9983 Temporary fix for this issue. using the entityservice like before. * Needed to remove the call to usersResource here as well for displaying the picked items * Don't need usersResource for now * Fixes #9983 - Getting kicked, if document type has a Umbraco.UserPicker property (#10002) * Fixes #9983 Temporary fix for this issue. using the entityservice like before. * Needed to remove the call to usersResource here as well for displaying the picked items * Don't need usersResource for now (cherry picked from commit 45de0a1) * 8539: Allow alias in image cropper (#9266) Co-authored-by: Owain Williams <[email protected]> * Wrap dumping dictionaries in a method. * Create method for generating log message And remove forgotten comments. * Fix swedish translation for somethingElse. * Copy member type (#10020) * Add copy dialog for member type * Implement copy action for member type * Create specific localization for content type, media type and member type * Handle "foldersonly" querystring * Add button type attribute * Add a few missing changes of anchor to button element * Null check on scope and options to ensure backward compatibility * Improve performance, readability and handling of FollowInternalRedirects (#9889) * Improve performance, readability and handling of FollowInternalRedirects * Logger didn't like string param Passing string param to _logger.Debug<PublishedRouter, int> wasn't happy. Changed to pass existing internalRedirectAsInt variable. Co-authored-by: Nathan Woulfe <[email protected]> * Update casing of listview layout name * 9097 add contextual password helper (#9256) * update back-office forms * Display tip on reset password page as well * add directive for password tip * integrate directove in login screen * forgot the ng-keyup :-) * adapt tooltip directive to potential different Members and Users password settings * remove watcher Co-authored-by: Nathan Woulfe <[email protected]> * Unbind listener Listening for splitViewRequest was only unbound if the split view editor was opened. Not cleaning up the listener caused a memory leak when changing between nodes as the spit view editor was detached but not garbage-collected * Replace icon in date picker with umb-icon component (#10040) * Replace icon in date picker with <umb-icon> component * Adjust height of clear button * Update cypress and fix tests * Listview config icons (#10036) * Update icons to use <umb-icon> component * Simplify markup and use disabled button * Use move cursor style on sortable handle * Add class for action column * Update setting auto focus * Increase font size of umb-panel-header-icon * Anchor noopener (#10009) * Set rel="noopener" for anchors with target="_blank" * Reverted unwanted changes to Default.cshtml * Align 'Add language' test to netcore * Add new cypress tests * Add indentation * Getting rid of the config file and implementing an appSetting instead * Implementation for IContentDashboardSettings * Cleanup * bool.Try * Taking AllowContentDashboardAccessToAllUsers prop from GlobalSettings to ContentDashboardSettings and saving AccessRulesFromConfig into a backing field * Handling multiple values per field in Examine Management * Add Root<T> and Breadcrumbs extension methods for IPublishedContent (#9033) * Fix usage of obsolete CreatorName and WriterName properties * Add generic Root extension method * Add Breadcrumbs extension methods * Orders member type grouping of members alphabetically, matching the listing of member types. * Revert updating deprecated WriterName/CreatorName refs Changing the properties to use the extensions is a good thing (given the props are deprecated), but causes issues deep in tests. I'm reverting that change to fix the tests, and all refs to the deprecated properties should be updated in one sweep, to deal with any other test issues that might crop up. * Handle Invalid format for Upgrade check * Fixes tabbing-mode remains active after closing modal #9790 (#10074) * Allow to pass in boolean to preventEnterSubmit directive (#8639) * Pass in value to preventEnterSubmit directive * Set enabled similar to preventDefault and preventEnterSubmit directives * Update prevent enter submit value * Init value from controller * Use a different default input id prefix for umb-search-filter * Fix typo * Check for truthly value * Revert "Set enabled similar to preventDefault and preventEnterSubmit directives" This reverts commit 536ce85. * None pointer events when clicking icon * Use color variable * Fixes tabbing-mode remains active after closing modal #9790 (#10074) (cherry picked from commit c881fa9) * Null check on scope and options to ensure backward compatibility (cherry picked from commit fe8cd23) * Fix validation of step size in integer/numeric field * 9962: Use $allowedEditors instead of allowed (#10086) * 9962: Use $allowedEditors instead of allowed * 9962: Remove redundant statement * fixes #10021 adds ng-form and val-form-manager to the documentation * Improved accessibility of link picker (#10099) * Added support for screeen reader alerts on the embed so that assitive technology knows when a url retrieve has been succesfull. Added labels for the controls Preview reload only triggered if the values for height and width change * Added control ids for the link picker * Add French translation * Accessibility: Alerts the user how many results have been returned on a tree search (#10100) * Added support for screeen reader alerts on the embed so that assitive technology knows when a url retrieve has been succesfull. Added labels for the controls Preview reload only triggered if the values for height and width change * Tree search details the number of search items returned * Add French translations * Updated LightInject to v6.4.0 * Remove HtmlSanitizer once more - see #9803 * Also make sure NuGet installs the correct version of the CodePages dependency * Bump version to 8.13 RC * Fixed copy preserving sort order (#10091) * Revert "Updated LightInject to v6.4.0" This reverts commit fc77252. * Revert "Add copy logic to Media Picker (#9957)" This reverts commit f7c032a. * Reintroduce old constructor to make non-breaking * Update cypress test to make macros in the grid work again * Attributes could be multiple items, test specifically if `Directory` is an attribute * Accessibility: Adding label fors and control ids for the macro picker (#10101) * Added support for screeen reader alerts on the embed so that assitive technology knows when a url retrieve has been succesfull. Added labels for the controls Preview reload only triggered if the values for height and width change * Added support for label fors for the macro picker and also gave the ,acro search box a title * Now displays a count of the matching macros returned. Please note the language file amends shared with #10100 * Removed src-only class for the display of the count of messages * Updating typo * Removed top-margin from switcher icon * Allow KeepAlive controller Ping method to be requested by non local requests (#10126) * Allow KeepAlive controller Ping method to be requested by non local requests and accept head requests * removed unused references * fix csproj Co-authored-by: Mole <[email protected]> Co-authored-by: Sebastiaan Janssen <[email protected]> Co-authored-by: Justin Shearer <[email protected]> Co-authored-by: Bjarke Berg <[email protected]> Co-authored-by: Callum Whyte <[email protected]> Co-authored-by: Shannon <[email protected]> Co-authored-by: Elitsa Marinovska <[email protected]> Co-authored-by: patrickdemooij9 <[email protected]> Co-authored-by: Bjarne Fyrstenborg <[email protected]> Co-authored-by: Michael Latouche <[email protected]> Co-authored-by: Nathan Woulfe <[email protected]> Co-authored-by: Markus Johansson <[email protected]> Co-authored-by: Jeavon Leopold <[email protected]> Co-authored-by: Benjamin Carleski <[email protected]> Co-authored-by: Owain Williams <[email protected]> Co-authored-by: Jesper Löfgren <[email protected]> Co-authored-by: Martin Bentancour <[email protected]> Co-authored-by: Ronald Barendse <[email protected]> Co-authored-by: Andy Butland <[email protected]> Co-authored-by: BeardinaSuit <[email protected]> Co-authored-by: Mads Rasmussen <[email protected]> Co-authored-by: Rachel Breeze <[email protected]> Co-authored-by: Dave de Moel <[email protected]> Co-authored-by: ric <[email protected]> Co-authored-by: Carole Rennie Logan <[email protected]> Co-authored-by: Dennis Öhman <[email protected]>
* load only once * Bump version to 8.6.8 * Initial rework of Lock dictionaries * [Issue 5277-146] accessibility - Close 'X' icon next to language drop… (#9264) * [Issue 5277-146] accessibility - Close 'X' icon next to language drop down is identified as "link" - screen reader * add new loacalization key * Fix issue with SqlMainDomLock that cannot use implicit lock timeouts … (#9973) * Fix issue with SqlMainDomLock that cannot use implicit lock timeouts … (#9973) (cherry picked from commit da5351d) * Adjust unit tests and apply fixes to scope * Add more unit tests, showing current issue * Counting Umbraco.ModelsBuilder and ModelsBuilder.Umbraco namespaces as external providers * Fix dead lock with TypeLoader * Fix errors shown in unit tests * Throw error if all scopes hasn't been disposed * Clean * Fixes and Updates for DB Scope and Ambient Context leaks (#9953) * Adds some scope tests (ported back from netcore) and provides a much better error message, ensure execution context is not flowed to child tasks that shouldn't leak any current ambient context * updates comment * Ensure SqlMainDomLock suppresses execution context too * Since we're awaiting a task in a library method, ConfigureAwait(false) * missing null check Co-authored-by: Elitsa Marinovska <[email protected]> * Adds additional error checking and reporting to MainDom/SqlMainDomLock (#9954) Co-authored-by: Elitsa Marinovska <[email protected]> * Add copy logic to Media Picker (#9957) * Add copy logic to Media Picker * Add action for copy all * Fix for selectable media item * Wrap calls to map in scopes * Autocomplete scopes * Remove unnecessary aria-hidden attribute from <umb-icon> * Remove scope from method that calls another method that has a scope * Fixes #9993 - Cannot save empty image in Grid * Clean * Revert "The Value() method for IPublishedContent was not working with the defaultValue parameter" (#9989) * Use a hashset to keep track of acquired locks This simplifies disposing/checking for locks greatly. * Add images in grid - fixes 9982 (#9987) Co-authored-by: Sebastiaan Janssen <[email protected]> * Only create the dicts and hashset when a lock is requested * Clean * Adds a config for configuring the access rules on the content dashboard - by default it granted for all user groups * Adds additional params indicating whether user is admin * Add images in grid - fixes 9982 (#9987) Co-authored-by: Sebastiaan Janssen <[email protected]> (cherry picked from commit e201977) * Bump version to 8.12.2 * #9964 Removed unneeded check for HttpContext * Fix for #9950 - HttpsCheck will now retry using the login background image if inital request returns 301/302. Excessvie Headers check will now check the root url instead of the backoffice * Merge pull request #9994 from umbraco/v8/bugfix/9993 Fixes #9993 - Cannot save empty image in Grid (cherry picked from commit 0ecc933) * Apply suggestions from review * Fixes #9983 - Getting kicked, if document type has a Umbraco.UserPicker property (#10002) * Fixes #9983 Temporary fix for this issue. using the entityservice like before. * Needed to remove the call to usersResource here as well for displaying the picked items * Don't need usersResource for now * Fixes #9983 - Getting kicked, if document type has a Umbraco.UserPicker property (#10002) * Fixes #9983 Temporary fix for this issue. using the entityservice like before. * Needed to remove the call to usersResource here as well for displaying the picked items * Don't need usersResource for now (cherry picked from commit 45de0a1) * 8539: Allow alias in image cropper (#9266) Co-authored-by: Owain Williams <[email protected]> * Wrap dumping dictionaries in a method. * Create method for generating log message And remove forgotten comments. * Fix swedish translation for somethingElse. * Copy member type (#10020) * Add copy dialog for member type * Implement copy action for member type * Create specific localization for content type, media type and member type * Handle "foldersonly" querystring * Add button type attribute * Add a few missing changes of anchor to button element * Null check on scope and options to ensure backward compatibility * Improve performance, readability and handling of FollowInternalRedirects (#9889) * Improve performance, readability and handling of FollowInternalRedirects * Logger didn't like string param Passing string param to _logger.Debug<PublishedRouter, int> wasn't happy. Changed to pass existing internalRedirectAsInt variable. Co-authored-by: Nathan Woulfe <[email protected]> * Update casing of listview layout name * 9097 add contextual password helper (#9256) * update back-office forms * Display tip on reset password page as well * add directive for password tip * integrate directove in login screen * forgot the ng-keyup :-) * adapt tooltip directive to potential different Members and Users password settings * remove watcher Co-authored-by: Nathan Woulfe <[email protected]> * Unbind listener Listening for splitViewRequest was only unbound if the split view editor was opened. Not cleaning up the listener caused a memory leak when changing between nodes as the spit view editor was detached but not garbage-collected * Replace icon in date picker with umb-icon component (#10040) * Replace icon in date picker with <umb-icon> component * Adjust height of clear button * Update cypress and fix tests * Listview config icons (#10036) * Update icons to use <umb-icon> component * Simplify markup and use disabled button * Use move cursor style on sortable handle * Add class for action column * Update setting auto focus * Increase font size of umb-panel-header-icon * Anchor noopener (#10009) * Set rel="noopener" for anchors with target="_blank" * Reverted unwanted changes to Default.cshtml * Align 'Add language' test to netcore * Add new cypress tests * Add indentation * Getting rid of the config file and implementing an appSetting instead * Implementation for IContentDashboardSettings * Cleanup * bool.Try * Taking AllowContentDashboardAccessToAllUsers prop from GlobalSettings to ContentDashboardSettings and saving AccessRulesFromConfig into a backing field * fix support for non run states * Handling multiple values per field in Examine Management * Add Root<T> and Breadcrumbs extension methods for IPublishedContent (#9033) * Fix usage of obsolete CreatorName and WriterName properties * Add generic Root extension method * Add Breadcrumbs extension methods * Orders member type grouping of members alphabetically, matching the listing of member types. * Revert updating deprecated WriterName/CreatorName refs Changing the properties to use the extensions is a good thing (given the props are deprecated), but causes issues deep in tests. I'm reverting that change to fix the tests, and all refs to the deprecated properties should be updated in one sweep, to deal with any other test issues that might crop up. * Handle Invalid format for Upgrade check * Fixes tabbing-mode remains active after closing modal #9790 (#10074) * Allow to pass in boolean to preventEnterSubmit directive (#8639) * Pass in value to preventEnterSubmit directive * Set enabled similar to preventDefault and preventEnterSubmit directives * Update prevent enter submit value * Init value from controller * Use a different default input id prefix for umb-search-filter * Fix typo * Check for truthly value * Revert "Set enabled similar to preventDefault and preventEnterSubmit directives" This reverts commit 536ce85. * None pointer events when clicking icon * Use color variable * Fixes tabbing-mode remains active after closing modal #9790 (#10074) (cherry picked from commit c881fa9) * Null check on scope and options to ensure backward compatibility (cherry picked from commit fe8cd23) * Fix validation of step size in integer/numeric field * 9962: Use $allowedEditors instead of allowed (#10086) * 9962: Use $allowedEditors instead of allowed * 9962: Remove redundant statement * fixes #10021 adds ng-form and val-form-manager to the documentation * Improved accessibility of link picker (#10099) * Added support for screeen reader alerts on the embed so that assitive technology knows when a url retrieve has been succesfull. Added labels for the controls Preview reload only triggered if the values for height and width change * Added control ids for the link picker * Add French translation * Accessibility: Alerts the user how many results have been returned on a tree search (#10100) * Added support for screeen reader alerts on the embed so that assitive technology knows when a url retrieve has been succesfull. Added labels for the controls Preview reload only triggered if the values for height and width change * Tree search details the number of search items returned * Add French translations * Updated LightInject to v6.4.0 * Remove HtmlSanitizer once more - see #9803 * Also make sure NuGet installs the correct version of the CodePages dependency * Bump version to 8.13 RC * Fixed copy preserving sort order (#10091) * Revert "Updated LightInject to v6.4.0" This reverts commit fc77252. * Revert "Add copy logic to Media Picker (#9957)" This reverts commit f7c032a. * Reintroduce old constructor to make non-breaking * Update cypress test to make macros in the grid work again * Attributes could be multiple items, test specifically if `Directory` is an attribute * Accessibility: Adding label fors and control ids for the macro picker (#10101) * Added support for screeen reader alerts on the embed so that assitive technology knows when a url retrieve has been succesfull. Added labels for the controls Preview reload only triggered if the values for height and width change * Added support for label fors for the macro picker and also gave the ,acro search box a title * Now displays a count of the matching macros returned. Please note the language file amends shared with #10100 * Removed src-only class for the display of the count of messages * Updating typo * Removed top-margin from switcher icon * Allow KeepAlive controller Ping method to be requested by non local requests (#10126) * Allow KeepAlive controller Ping method to be requested by non local requests and accept head requests * removed unused references * fix csproj * fix merge * btree serializer optimizations * array pool and nametable optimizations Co-authored-by: Mole <[email protected]> Co-authored-by: Sebastiaan Janssen <[email protected]> Co-authored-by: Justin Shearer <[email protected]> Co-authored-by: Bjarke Berg <[email protected]> Co-authored-by: Callum Whyte <[email protected]> Co-authored-by: Shannon <[email protected]> Co-authored-by: Elitsa Marinovska <[email protected]> Co-authored-by: patrickdemooij9 <[email protected]> Co-authored-by: Bjarne Fyrstenborg <[email protected]> Co-authored-by: Michael Latouche <[email protected]> Co-authored-by: Nathan Woulfe <[email protected]> Co-authored-by: Markus Johansson <[email protected]> Co-authored-by: Jeavon Leopold <[email protected]> Co-authored-by: Benjamin Carleski <[email protected]> Co-authored-by: Owain Williams <[email protected]> Co-authored-by: Jesper Löfgren <[email protected]> Co-authored-by: Martin Bentancour <[email protected]> Co-authored-by: Ronald Barendse <[email protected]> Co-authored-by: Andy Butland <[email protected]> Co-authored-by: BeardinaSuit <[email protected]> Co-authored-by: Mads Rasmussen <[email protected]> Co-authored-by: Rachel Breeze <[email protected]> Co-authored-by: Dave de Moel <[email protected]> Co-authored-by: ric <[email protected]> Co-authored-by: Carole Rennie Logan <[email protected]> Co-authored-by: Dennis Öhman <[email protected]>
Prerequisites
This PR is a first fix for issue #9097
Description
I have added a "password tip" text mentioning the minimum number of characters remaining to type, as well as a reminder of the number of non-alphanumeric characters required (cf screenshot)
I have been able to do this for the password changes in the backoffice: members, users, and own profile.
I have not been able to do this on the password change on the login form (this is the one in the "forgot password" mails) because I need to call the following method to get the info, and you need to be authenticated to have access to that (got 401 error when calling this from login page)
If somebody can point me on how to get that info for that screen, that would be great :-)
Steps to test:
Next steps;