Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[4.0] Type="list" instead of switch in for the user state field #21026

Closed
wants to merge 6 commits into from
Closed

[4.0] Type="list" instead of switch in for the user state field #21026

wants to merge 6 commits into from

Conversation

chmst
Copy link
Contributor

@chmst chmst commented Jul 9, 2018

Summary of Changes

Switches change a state, in most cases on/off or yes/no. There are different cases when switches change states with names, as here in the user form enabled/blocked.
block-user-old

Here the user State can be switched from enabled to blocked, but this is bad UX.

By changing the label it becomes clearer.
block-user

Better solution as proposed by @C-Lodder:
block-user2

Documentation Changes Required

@chmst chmst requested a review from brianteeman as a code owner July 9, 2018 19:00
@joomla-cms-bot joomla-cms-bot added Language Change This is for Translators PR-4.0-dev labels Jul 9, 2018
@chmst chmst changed the title Use yes/no for switches.. Use yes/no for switch. Jul 9, 2018
@chmst
Copy link
Contributor Author

chmst commented Jul 9, 2018

Could be applied in 3.x as well.


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/21026.

@brianteeman
Copy link
Contributor

I am not sure i fully understand what the ux issue is. BUT I believe a field label should not be a question and should be a statement

@chmst
Copy link
Contributor Author

chmst commented Jul 9, 2018

Maybe it is a matter of taste.
For me, the switch in the first screen says User State = "no" / "off".
While it means in the contrary that the user is "on".

@brianteeman
Copy link
Contributor

I am not in favour of this change - but I am just one opinion.

@C-Lodder
Copy link
Member

C-Lodder commented Jul 9, 2018

Receive System Emails is a statement, not a question. So the same should be applied to Block User (remove ?)

@chmst
Copy link
Contributor Author

chmst commented Jul 9, 2018

I changed it to "User Blocked" - I am not native speaker - just want a term where only no/yes is accepted
It does not mean remove but the account is deactivated.

@zwiastunsw
Copy link
Contributor

Maybe: Blocked User - Yes / No

@brianteeman
Copy link
Contributor

As a native english speaker I don't see what the problem is with the current strings

@cyrezdev
Copy link
Contributor

cyrezdev commented Jul 9, 2018

As @brianteeman said, i don't see reason to change.

The label is clear : "User Status"
And the options ok for me :

  • Enabled
  • Blocked

Maybe a list type instead of radio buttons will be better for UX ?
(And will allow to add other status later on...)

Another reason the current string "User Status" is better, is the texts in main list of users.
Changing as proposed would break ux of main list (column title, icon descriptions for actions...).

If one improvement could be done, it would be the column title in list of users, replacing "Enabled" by "Status", maybe ?

@brianteeman
Copy link
Contributor

Absolutely agree about the column

@chmst
Copy link
Contributor Author

chmst commented Jul 10, 2018

A list type is the best solution. And agree with the column.

@infograf768 infograf768 changed the title Use yes/no for switch. [4.0] Use yes/no for switch. Jul 10, 2018
@chmst chmst changed the title [4.0] Use yes/no for switch. [4.0] Type="list" instead of switch in for the user state field Jul 10, 2018
@C-Lodder
Copy link
Member

C-Lodder commented Jul 10, 2018

A list type is the best solution

Sorry, but you're wrong. It's worse from a UX perspective

@HLeithner
Copy link
Member

my 2 cents, I like the radio button with yes and no and "User Blocked" as label.

Its much better for me to understand as non native English speaker as a "User State" with a option "enabled", what does enabled mean in this context? Ok I can understand that it is the opposite of "blocked". But If I only see "Enabled" it means nothing to me.

@C-Lodder
Copy link
Member

But If I only see "Enabled" it means nothing to me.

@HLeithner - Block User - No / Yes would be easier for you (as a non-native English speaker) to understand?

@HLeithner
Copy link
Member

@C-Lodder yes, at least more then "user state" enabled.

Maybe "User is blocked" would be better?!

What tells you "User State: Enabled" ? At the first look I have no glue what this means, even as a coder it tells me the user is enabled, but what means enabled? Without checking the other "Blocked" I wouldn't know that it means the user can access the system.

@zwiastunsw
Copy link
Contributor

"Enabled' is not a 'Blocked' antonime. That is why it is not clear. In Polish it also raises doubts. In addition, "User state" also refers to "Active / Inactive".

@brianteeman
Copy link
Contributor

it really is pointless (and wrong) for non-english speakers to be commenting on the meaning of english strings. that is why we have joomla available in 70+ languages

@HLeithner
Copy link
Member

@brianteeman thats true ;-)

But do you get my point an "Enabled" doesn't tell you anything without the context of the second option?

@cyrezdev
Copy link
Contributor

Sorry, but you're wrong. It's worse from a UX perspective

@C-Lodder why is it worse ?

@mbabker
Copy link
Contributor

mbabker commented Jul 10, 2018

Well, then take it from a non-English speaking American speaker 😉

User Blocked: Yes/No in this context is a bit more clear than User Status: Enabled/Blocked

@mbabker
Copy link
Contributor

mbabker commented Jul 10, 2018

Sorry, but you're wrong. It's worse from a UX perspective

@C-Lodder why is it worse ?

Select lists for 2 items isn't a great design pattern, lists generally go for 3+ items and a 2 option selection is better represented as a radio field (in this case the radio is designed to look like a switch toggle).

@chmst
Copy link
Contributor Author

chmst commented Jul 10, 2018

It is the same for all languages.
A user state can be blocked (in the #__users the value in column blocked = 1) or not blocked, then the user can log in.
What sucks is the switch. In former versions it was clear which states are possible. With the switch this is hidden. The user should see which states exist without reading the sourcecode.

@brianteeman
Copy link
Contributor

User Blocked: Yes/No in this context is a bit more clear than User Status: Enabled/Blocked

a bit but then in the list view it becomes less clear

and just because there are only two options does not mean that they have to be opposites

@cyrezdev
Copy link
Contributor

@mbabker i agree for when only 2 items, radio are better, but if option is user status, only 2 options seems weird. "blocked" means more than "disable" and i see some possibilities for other state option for user, with a mix of current status and activation (of course, could be only for j4)

Enabled and activated (the 2 columns in users list) could be only 1 Status column (which will simplify UX, and justify the list usage with enabled, pending, disabled, blocked... options).
This would need much more work and code review of course, but could be one task for Joomla 4 ?

Or is it necessary to keep the blocked option as an isolated one ?

What i agree here 💯 is that the current switch in j4 is not clear!

@mbabker
Copy link
Contributor

mbabker commented Jul 10, 2018

Blocked is a special state that's different from an account's status (approved, pending, etc.) to me and should be a separate thing.

As we don't support a multi-state user workflow, there isn't a need to design for it. If we're going to support such a feature, then the design should be adapted.

FWIW in apps I build usually activation and blocking (enabled/disabled) are tracked separately from the account's status, which in some cases is used to mark accounts by the client for distinctive purposes (such as a VIP user).

@cyrezdev
Copy link
Contributor

cyrezdev commented Jul 10, 2018

@mbabker Ok! ;-)

User Blocked: Yes/No in this context is a bit more clear than User Status: Enabled/Blocked

But going this way changes the default "enabled" by "no" ?... (the Yes in red in screenshot at top seems weird to me in this case...)

@C-Lodder
Copy link
Member

C-Lodder commented Jul 10, 2018

@JoomliC - Because you should not use a dropdown for 2 options. Have a read through some UX articles and studies that target this scenario.

@cyrezdev
Copy link
Contributor

cyrezdev commented Jul 10, 2018

  • Because you should not use a dropdown for 2 options. Have a read through some UX articles and studies that target this scenario.

@C-Lodder Thank you for advice, but this is not because it's the best pratice in general for 2 options, that it will be ok for all cases (this one is specific as 2 not-opposite choice ;-) )

EDIT: i agree too to keep the switch here! (and to replace "user status" to prevent confusion). And it seems we may all agree here now 👍

The fact here is on J4, it makes the switch not easy to understand.

User Edit

So, as the way seems to go to :
User Blocked: Yes/No

I would suggest :
User Blocked: Blocked/No for edit view option

User is enabled (unblocked) :
capture d ecran 2018-07-10 a 15 31 19

User is blocked :
capture d ecran 2018-07-10 a 16 29 47

List

And for list of users, something like this (this is just an example, to help make it more clear to understand and use, as today, it's a bit confused) :

User is enabled (unblocked) :
capture d ecran 2018-07-10 a 15 20 25

User is blocked :
capture d ecran 2018-07-10 a 15 20 55

This is a suggestion, that could give some other better ones ;-)

@brianteeman
Copy link
Contributor

A switch is to change between two choices. They do not have to be opposites.

@mbabker
Copy link
Contributor

mbabker commented Jul 10, 2018

In this specific case though, the switch is for what is in essence a boolean field (the block column on the #__users table), so it is a yes/no opposite type of scenario. This clearly doesn't ring true of every switch use (I've got plenty of switches out there where that is the case), but given this specific field and its context to me it's fair to treat it as a simple yes/no opposites type of thing.

@cyrezdev
Copy link
Contributor

cyrezdev commented Jul 10, 2018

@brianteeman @mbabker i've turned away my mind from the list type proposal to keep the switch as you can see in my previous message with a proposal for both edit and list views ;-)

#21026 (comment)

@brianteeman
Copy link
Contributor

In this use case I think it is reasonable to assume that this switch will be used to block a user and not to enable a user so you could just do

Block Yes/No

@cyrezdev
Copy link
Contributor

Isn't it strange the "Yes" in red ?... (as used to be green)

@C-Lodder
Copy link
Member

It's red to match that of Joomla 3, as it's not the "default setting". In other words..."I hope you know what you're doing".

@cyrezdev
Copy link
Contributor

#21026 (comment) updated view with Yes/No

@chmst the keys are in your hands ;-)

@chmst
Copy link
Contributor Author

chmst commented Jul 10, 2018

:) you know what? I'll ask some of my friends and some customers with experience in Joomla. And then see which solution they understand. Developers think not the same way as novice users.

@dgrammatiko
Copy link
Contributor

with experience in Joomla

Asking people working with Joomla is not really a good idea because:

If I had asked people what they wanted, they would have said faster horses. 
    Henry Ford

Innovation never comes out of polls...

Just saying

@chmst chmst closed this Jul 12, 2018
@chmst chmst deleted the 4.0-dev-chmst branch July 12, 2018 11:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Language Change This is for Translators
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

9 participants