solidusio / solidus

🛒 Solidus, the open-source eCommerce framework for industry trailblazers.
https://solidus.io
Other
4.97k stars 1.29k forks source link

[Admin][Users] Introduce user creation and modification capability #5824

Open MadelineCollier opened 1 month ago

MadelineCollier commented 1 month ago

Description

Develop the functionality to add and edit users through the admin panel, providing fields for key user details and the ability to assign roles.

Note: The user invitation feature will be implemented in a separated task

Features

Figma Design

Storyboard


Design details

Image

MadelineCollier commented 3 weeks ago

Image

@kennyadsl @adammathys do we want to add a name column to the spree_users table via a migration in core to accommodate this design? Or should we just leave it at email for now? I know it's a pretty common customization for stores to just add firstname/lastname/name to Spree::User themselves.

Same deal with the profile picture? Add it as an attachment on the model in core? I just want to make sure I'm not making too many assumptions based on the design, but if we want to 100% match the designs regardless of what we currently have for columns in core I can keep that in mind for future issues and just add whatever we need to adhere to them.

kennyadsl commented 3 weeks ago

Good questions, someone has to make a decision here.

It's pretty common to have this info on the user table indeed. So I guess we should do it. On the other side, it's not strictly related to this feature. I mean, I imagine the name will be initially populated with a migration that copy the name from the last order's shipping address, and we could also add this later in isolation.

For the attachment, my preference is to start without it, it has been never requested to us if I recall correctly. Some other options might be using gravatar for now? I can definitely live without it and I'm sure there's other stuff with more priority.

That said, I'm ok with having @MadelineCollier having a final word here. One way or the other it will work and it will be an improvement.