Here are some thoughts on improving the Members Area Settings and Signup. Please add your thoughts and suggestions.
Issue:
- Members Area Settings are in too many places. Members Area, Settings > Misc, and Form Settings.
- Email Verification is not sent if “Enable email verification flow” is not checked in the Settings > Misc But “Send Confirmation Email Notification” is checked in Form Settings.
- If Enable email verification flow" is checked in Settings > Misc, then “Send Confirmation Email Notification” Must be checked in Form Settings, but is not required to be. This causes issues.
- Can not control the Members Area independently.
1. Members Area Settings Change
Move global settings to the specific Member Area to allow for flexibility (e.g., one Member Area requires verification, another does not).
- Remove “Enable email verification flow” and “Remember Me Lifetime” from Settings > Misc > CRM Settings.
- Add these fields to the Members Area > Details page.
2. Form UI/UX Improvement
Prevent human error by using conditional logic in the Form builder.
Form Settings:
- Hide “Send Confirm Email Notification” and “Send Member Area Login Details Email” by default.
- These options only become visible if the user selects a specific Members Area in the form configuration.
- Based on settings in the Members Area
- IF Selected Members Area has Enable email verification flow = TRUE:
- THEN Send Confirm Email Notification is Checked AND Disabled (Greyed out).
- You cannot have a verification flow without sending the email.
3. “Soft” Login Verification
Currently, the system uses Hard Verification: The user cannot log in until they verify. The current Soft login does not send the verification email.
Add Soft Login with Verification:
- The user can register, receive a verification email, and log in immediately without clicking the link.
- It reduces friction for the user. They aren’t immediately blocked from the content.
- Requires the system to still send out the email verification if the option is selected in the form settings.
4. Frontend Requirement: Liquid Data & Notifications
To support the “Soft Verification” mentioned above, we need a boolean exposed in the current member object (e.g., {{ request.currentmember.email_verified }}).
- TRUE: The user is verified.
- FALSE: The user has not verified.
Add the ability to resend the confirmation email from the front end.
Use Case Example: This allows you to create a conditional notification bar on the website:
{% unless request.currentmember.email_verified %}
<div class="alert alert-warning">
Please verify your email address.
<button onclick="triggerResendVerification()">Resend Email</button>
</div>
{% endunless %}
