Preferred Locale field not updating through form

I created a form with a radio group, allowing the user to select from a language choice “German” or “English” as value.

The field is correctly linked with the core contact field “Preferred Locale”.

The standard value of the field in “German” for my German form and “English” for my English form.

I did not set “Use assigned contact field’s list choices” as I only wanted them to decide between the two.

The “Prefered Locale” field has no default value in my system.



My Tests:

1.) Selected the German Form, changed Radio Group manually to “English”. The form results table shows correctly “English” for the language selection. However - the “Preferred Local” field in the created contact for the German form shows “German” - the standard value.

2.) Selected the English Form, changed Radio Group manually to “German”. The form results table shows correctly “German” for the language selection. However - the “Preferred Local” field in the created contact for the English form shows “English” - the standard value.

3.) Removed the standard value in the English form, selected Radio Group manually to “German”. The form results table shows correctly “German” for the language selection. However - the “Preferred Local” field in the created contact for the English form is empty - the standard value.



I think this is a bug.

I created a form with a radio group, allowing the user to select from a language choice “German” or “English” as value.
The field is correctly linked with the core contact field “Preferred Locale”.
The standard value of the field in “German” for my German form and “English” for my English form.
I did not set “Use assigned contact field’s list choices” as I only wanted them to decide between the two.
The “Prefered Locale” field has no default value in my system.

My Tests:
1.) Selected the German Form, changed Radio Group manually to “English”. The form results table shows correctly “English” for the language selection. However - the “Preferred Local” field in the created contact for the German form shows “German” - the standard value.
2.) Selected the English Form, changed Radio Group manually to “German”. The form results table shows correctly “German” for the language selection. However - the “Preferred Local” field in the created contact for the English form shows “English” - the standard value.
3.) Removed the standard value in the English form, selected Radio Group manually to “German”. The form results table shows correctly “German” for the language selection. However - the “Preferred Local” field in the created contact for the English form is empty - the standard value.

I think this is a bug.

I opened the bug here: https://github.com/mautic/mautic/issues/4754

Even more strange. I now send a hidden field for “preferred locale” along with the form, removing the option to select one. It works fine for “German” -> shows up as “Deutsch” in the field for the contact.
It doesn’t work for “English” nor “Englisch” -> field remains empty.

As the preferred local shows up translated within the field according to the user interface selection: whats the correct value of this field independently from the user interface setting for Englisch?