Integrating Custom Registration Fields with Authn MFE

I’m encountering an issue while trying to integrate custom registration fields with the Authn MFE in the Olive release .I’ve developed a custom registration app that adds additional fields to the registration page, but these fields aren’t appearing when the Authn MFE is enabled. However, when I disable the Authn MFE, the custom fields appear as expected.

It seems like the presence of the Authn MFE might be affecting the rendering or functionality of the custom fields, has anyone encountered a similar issue ? Any troubleshooting steps or approaches to resolve it ?

I found an open issue on GitHub describing the same problem, but there’s still no solution (labeled as awaiting prioritization). Has anyone come up with a working solution, or is deactivating Authn MFE the only way to use custom registration fields in olive release ?

Hey @harout7

To configure the new Authn MFE with custom fields from the registration extension form, additional configuration is required.

If you have required fields, they will be added to the register page. However, if your fields are optional, they will be placed on an additional registration page that can be skipped.

Firstly, you need to enable the ENABLE_DYNAMIC_REGISTRATION_FIELDS setting from the settings file. This setting can be added from the plugin where the extension form is placed. The context for the form rendering is taken from this location: edx-platform/openedx/core/djangoapps/user_authn/api/views.py at open-release/olive.master · raccoongang/edx-platform · GitHub.

Next, add your field to the extended_profile_fields list for the correct condition check. You can find this condition check here: edx-platform/openedx/core/djangoapps/user_authn/api/helper.py at master · raccoongang/edx-platform · GitHub. If this step is skipped, the fields from the extension form won’t be added properly: edx-platform/openedx/core/djangoapps/user_authn/api/helper.py at master · raccoongang/edx-platform · GitHub.

Once done, ensure that the context is extended with your required fields by checking the networks tab of your browser.

Finally, you need to enable ENABLE_DYNAMIC_REGISTRATION_FIELDS for the MFE. This can be done either via deployment changes or through site configurations.

2 Likes

Thanks @arsentur your solution worked :slight_smile: