No Code Attached Yet bug
avatar dautrich
dautrich
5 Mar 2025

Steps to reproduce the issue

  1. Set a user's Basic Settings to some values. The "Backend Template Style" should be set to "Atum - Default", and "Allow Auto Starting Tours" should be set to "Yes".

Image

  1. Prepare a menu item of type "User Profile".
  2. Login to the frontend with the above-mentioned user.
  3. Display the user profile in frontend and check the values.
  4. In backend, set the value for "Allow Auto Starting Tours" to "No".
  5. Display the user profile in frontend again and check the values.

Expected result

The values for "Backend Template Style" and "Allow Auto Starting Tours" should be displayed as set.

Actual result

  • The "Backend Template Style" is displayed as a numeric value (which is the ID of the Atum template, as can be seen in backend).
  • "Allow Auto Starting Tours" is displayed as "1", if the value had been set to "Yes"; as "Website default" otherwise.

Image

Image

System information (as much as possible)

Joomla 5.2.4
Additional language: German

Additional comments

avatar dautrich dautrich - open - 5 Mar 2025
avatar joomla-cms-bot joomla-cms-bot - change - 5 Mar 2025
Labels Added: No Code Attached Yet
avatar joomla-cms-bot joomla-cms-bot - labeled - 5 Mar 2025
avatar dautrich dautrich - change - 5 Mar 2025
The description was changed
avatar dautrich dautrich - edited - 5 Mar 2025
avatar brianteeman
brianteeman - comment - 5 Mar 2025

confirmed

avatar QuyTon QuyTon - change - 5 Mar 2025
Labels Added: bug
avatar QuyTon QuyTon - labeled - 5 Mar 2025
avatar brianteeman
brianteeman - comment - 5 Mar 2025

I suspect that the value displayed for dark mode is also a raw value and needs formatting as well

avatar dautrich
dautrich - comment - 6 Mar 2025

I'd propose to check all values in the output, whether they are raw or formatted. "Europe/Berlin" (in the screenshot above) should be "Europa/Berlin" on a German website, shouldn't it?

avatar Galcedion
Galcedion - comment - 8 Mar 2025

If I understand it correctly the data is prepared in components/com_users/src/Model/ProfileModel.php and given to components/com_users/forms/frontend.xml. The frontend.xml is trying to create a dropdown, but since the result is a page without submit form (unlike "Edit Your Profile", which uses the same xml), the basic values are displayed instead of the correct lang strings. Perhaps the logic needs to be pulled into ProfileModel.php?

avatar Galcedion
Galcedion - comment - 8 Mar 2025

The contents of $this->data->params come from the DB, users.params, which is a JSON containing the values as int or string. The JSON is turned into an array and directly used to display the user info in frontend.

avatar Galcedion
Galcedion - comment - 9 Mar 2025

Working on a fix, should have it ready later today. @dautrich the timezones are a different issue in my opinion. The select options (when editing profiles) are in english regardless of the selected user language or website language.

avatar dautrich
dautrich - comment - 9 Mar 2025

@dautrich the timezones are a different issue in my opinion. The select options (when editing profiles) are in english regardless of the selected user language or website language.

I didn't check that.

avatar dautrich dautrich - close - 10 Mar 2025
avatar dautrich
dautrich - comment - 10 Mar 2025

Closed as having a PR (#45101).

avatar dautrich dautrich - change - 10 Mar 2025
Status New Closed
Closed_Date 0000-00-00 00:00:00 2025-03-10 13:05:31
Closed_By dautrich

Add a Comment

Login with GitHub to post a comment