-
- 167 Posts
Hello
I use classExtender and it works fine with Revo 2.3.
Therefore extra user / extended fields displays only via the 'Manage > Users' menu when I'm logged as admin (modX manager).
As admin or non-admin I cannot see any extended user fields via the user / 'Edit account' menu (right side of the modX manager)
ExtraUserFields chunk doesn't seem to be available in the "Edit account" screen.
How to allow admin and non-admin users to display, fill & update extended user fields in modX manager through "Edit account" menu ?
[ed. note: johnxx last edited this post 9 years, 9 months ago.]
MODX lover
-
Développeur MODX / Webdesign / Solutions web
-
- 24,544 Posts
I don't see an "Edit Account" menu in 2.3. Is some Extra adding that or are you using some Manager theme other than the default theme (or am I going blind
)?
That's my line
-
- 24,544 Posts
Ah, thanks. I guess I am going blind.
Apparently, that menu option either isn't firing the OnUserForm events, or isn't handling their return value properly. It's calling the Security/Profile processor rather than the security/user/update processor.
I tried changing the action to security/user/update, but it crashes because that requires the user ID in the URL.
The only fix would be to rewrite the security/user/update processor to use the ID of the current user if there's no ID in the URL, but that could create some serious security problems.
I tried it and it worked, but I don't recommend modifying the core code.
You'll note that the Edit Account section has a lot less options than you get with updating the user in Manage Users. Most important, a user can decide to become a sudo user in the user/update form. The profile action just lets the user edit safe options like changing their zip code and password.
You could limit the permissions, so only very high-level users could do it, but again, it's not a great idea to be hacking the core code.
It might be possible to duplicate the user/update processor and the accompanying JavaScript for the form (to remove the sensitive fields), then call that duplicate processor in Edit Account, but it would not be a trivial task.