The goal is to change the way Matomo creates new users (ie. team members), by introducing an Invitation system. Instead of directly creating accounts for people, a Super User (or a user with Admin access) would invite a new person to join the Matomo platform, and they have to then accept the invitation (click a button in the invitation email, within a period of up to 4 weeks or so.). When accepting the invitation they can set their secure password.
The invitation solution is used in products like Github and Slack. Let us look at how they do it and get inspired?
Take a look at https://github.com/opf/openproject, is has such a system (a good one in my opinion) and is completely open source.
Here already a few notes:
@tsteur @mattab I got it working on my local, just doing a final tidy up. Also checking the interface before I push my PR. I add a status filter and status into the user table column, which shows the active or pending users. Maybe we need another action button that they can resend the invite again. Currently, I set the token to expire in 3 days. Let me know if we want to make a different tab just for invite users.
@peterhashair Be good to add a new action for resending the invite 👍
Currently, I set the token to expire in 3 days.
See above. By default, the invite is valid for 7 days. This needs to be configurable using the API parameter (when inviting a specific user) and as a configuration option for overall default time.
Let me know if we want to make a different tab just for invite users.
Looks pretty good like above so far on the screenshot but haven't checked it out yet in the actual UI. I think we might not need a different tab for it.