Project

General

Profile

Feature #8292

Users should be able to remove themselves from multi-author sites

Added by Boone Gorges over 2 years ago. Updated 5 months ago.

Status:
Resolved
Priority name:
Normal
Assignee:
Category name:
Membership
Target version:
Start date:
2017-06-19
Due date:
% Done:

0%

Estimated time:

Description

If I've got a role on a site, that site will show up in various parts of the UI: in my admin bar, my-sites.php, my BP profile, etc. Yet it's currently not possible for users to remove themselves from sites that they don't want to clutter up these lists.

It's somewhat strange that WP doesn't have a tool for this, and even weirder that there doesn't appear to be a widely available plugin-based solution for it. (Maybe I'm searching for the wrong thing?) Let's build something.

The two parts of the Dashboard guaranteed to be visible to any site member - even Subscribers - is My Profile and the main Dashboard panel. So the UI should probably go there. I guess I'd suggest something like a metabox for the main Dashboard that says something like: "You are a member of this site with Foo permissions (Editor, etc). If you don't want to be a member of this site anymore, you can [remove yourself]." Then there'd be some sort of confirmation flow.

Happy to consider other ways to implement the UI - what I've suggested above will display for all users, making it quite obvious, but perhaps making it too obvious.

Paige, do you have any ideas?

More-button_design-v1.jpg (693 KB) More-button_design-v1.jpg Sonja Leix, 2019-03-25 09:16 PM
membership-removal.png (38.2 KB) membership-removal.png Raymond Hoh, 2019-04-12 04:05 PM

Related issues

Related to CUNY Academic Commons - Support #8289: removing my access to sitesResolved2017-06-18

Related to CUNY Academic Commons - Design/UX #9651: Leaving site w/ multiple usersResolved2018-04-20

History

#1 Updated by Boone Gorges over 2 years ago

#2 Updated by Raymond Hoh 7 months ago

  • Target version changed from Future release to 1.15

I'd like to tackle this.

Including what Boone mentioned, I think it should be a plugin that site admins should activate on their site though because members of a site might need to remain on the site for a fixed duration (like the end of a semester). In the case of groupblogs, this functionality should be disabled.

If we don't want this to be a site opt-in feature, we could network-activate this plugin and automatically turn this functionality on for sites that are older than six months (or a year or some other duration that makes sense).

When a member manually removes themselves from a site, an email notification should be sent to the site admin so s/he is aware of the event.

Putting this in 1.15 for some more feedback. If we deem this isn't desirable for 1.15, we can push it back to Future Release.

#3 Updated by Boone Gorges 7 months ago

Adding Sonja for her feedback. This is another one that could potentially have its UI condensed as part of #10464.

Agreed with Ray about disabling the feature for group blogs (or perhaps renaming it "leave group and blog" in this case). IMHO it's OK to have the feature turned on by default; while I can imagine cases where admins might want to prevent users from leaving sites, that's likely to be a small minority of the overall cases. So opt-out for the admin seems OK to me.

#4 Updated by Sonja Leix 7 months ago

Boone Gorges wrote:

Adding Sonja for her feedback. This is another one that could potentially have its UI condensed as part of #10464.

We should surface this option in the 'My Sites' list on a user's profile and the subsection 'My Sites' within the Sites Directory.
I consider this option a secondary action (an action that doesn't need to be performed very often but needs to be available) and in order to not clutter the UI, I would recommend to work with a UI pattern as explored in #10464. We could put "Follow/Unfollow" and "Remove Site" under the dropdown menu.

Once a user clicks "Remove Site" a confirmation popup / screen should come up to explain what removing yourself from a site means.

For sites where the site admin disables this feature, we should not surface the option.

#5 Updated by Boone Gorges 7 months ago

  • Assignee set to Raymond Hoh

#6 Updated by Sonja Leix 7 months ago

I've worked on the visual design for this new feature: The Overflow Menu (more options menu).

This UI pattern should be a consistent pattern that can be re-used in other places across the Commons. The idea, as proposed by Ray, is that we would only expose two equal options (buttons) in the UI and hide additional and secondary options in an Overflow Menu. The Overflow Menu with a vertically centered ellipsis in a button, has become a common way to communicate to users (both on the web and in apps), that there are additional options available. IT's a way to hide secondary options, while still making those accessible to users.

We could start by rolling this out to the use case in this ticket and then consider rolling it out to other areas on the site too. For Accessibility, we need to make sure that the ellipsis reads as "more options" for screen readers.

Would love to hear the team's feedback.
Mockup with explanation of general UI pattern attached.

#7 Updated by Matt Gold 7 months ago

Thank you, Sonja — looks good to me!

#8 Updated by Raymond Hoh 7 months ago

#9 Updated by Raymond Hoh 6 months ago

I've implemented a first pass at the Overflow menu with the "Leave Site" button in https://github.com/cuny-academic-commons/cac/compare/2432c5f...a075ddd

This can be tested on the development site by logging in and either navigating to:
- "My Account > My Sites" under the sticky toolbar on the top right-hand corner
- the Sites Directory at commons.gc.cuny.edu/sites/ and clicking on the "My Sites" tab

You can only leave sites of which you are not the sole administrator of and are not connected to a group.

For those testing, I can add your account to another site as an author so you can test this functionality. Or if you have another test account on the dev site, you can add that user as an author to one of your sites and then login as that test account to try out the Overflow dropdown and the "Leave site" functionality.

GIF:


It turns out we already had a "Leave Site" link as evidenced in a previous screenshot. So what I did was move that functionality into a button and implemented the Overflow menu (#10464).

Getting the Overflow menu to only show up within the 'My Sites' tab on the Sites Directory proved to be a little tricky, but that's done!

I still need to implement an option in the wp-admin dashboard so site admins can disable the "Leave Site" button if they need to enforce membership. I'll implement this in the next day or so.

#10 Updated by Raymond Hoh 6 months ago

One other thing I forgot to mention is when a user leaves a site, the site admin will receive an email about this.

The following is the email contents:

Subject line: "[{SITE NAME}] A user has left your site"

Email content:

Hi,

{USERNAME} has manually left your site:
{USER PROFILE URL}

You are receiving this email because you are the administrator of the site, "{SITE NAME}":
{SITE URL}

We can fine-tune the email or remove it altogether if this is deemed too intrusive.

#11 Updated by Raymond Hoh 6 months ago

As previously mentioned in comment 9, I've added an option for site admins to disable the "Leave site" functionality for those site admins that want to enforce user membership.

Here's a screenshot:

This admin option can be found under "Settings > General" in the admin dashboard. Currently, this option only shows up for sites that are not connected to a group because we want to enforce group memberships to connected sites.

This is available for testing on the development site.

To test this functionality:
1. Ensure you have a test account
2. Ensure you are the admin of a site that is not connected to a group.
3. Login as the admin, naviagate to "Users" in the admin dashboard and add the test accouunt as an author to the site.
4. While still as the admin, to disable the "Leave site" functionality, navigate to "Settings > General" and uncheck the "Allow members to manually leave the site" checkbox and save.

Then, you can login as the test account to see if the Overflow menu and the "Leave site" link exists or not.

Let me know if I am unclear about anything or if any of the copy for the admin option should be altered.

#12 Updated by Raymond Hoh 5 months ago

  • Status changed from Testing Required to Resolved

Marking as Resolved. Thanks everyone!

Also available in: Atom PDF