question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Admin Panel: Create all Users page

See original GitHub issue

Description

Part of the larger effort to create an Admin Panel to allow admin users to manage content from within the platform itself. Overarching issue to come.

Fill the /admin/users page’s content and style it to match the designs.

Acceptance Criteria Checklist:

  • Route shows a virtualized list of all the current and pending users
  • Table shows the following data for each User as columns: Type, Username, Singup Date, Roles, and Status
  • Clicking a User’s row in the table links to edit the User’s entry at /admin/users/[id] (placeholder page for now)
  • Type column is represented in each User’s row item as the badge icon version, not text.
  • Table of elements is styled to match Figma designs on Desktop
  • Table header shows total number of users (and pending users)
  • Table header and column header rows are sticky when scrolled past
  • Search box does simple fuzzy text search of only user’s display name and username on each new character beyond 3 characters. See “Build recommendations” section for more info.
  • User can toggle sorting by clicking on the column header buttons.
    • By default, sorting is by Username in Descending order.
    • Clicking a new column button sorts by that column. Only one column can control sorting at a time, they do not stack
    • Clicking a column button repeatedly cycles through sort order for that column: None (-), Descending (⬇️), and Ascending (⬆️), then back to None.
    • If all sort orders are (manually) set to None, Users are sorted by id in ascending order.
  • Admins can filter by Type and Role by clicking small secondary buttons beside each of those column headers buttons
    • Clicking the button opens a popout menu (shown in the mockup) with each of the available values shown as checkboxes
    • If any items are selected, the Users are filtered to only include ones with matching values

Related Pages

Related to all other pages within the larger Admin Panel effort (overarching issue to come), including #1507.

Mockups

Visit the Figma space where the mockups are hosted to fully inspect them. Comments and questions about them can be added by pressing C and clicking where you want to pin a discussion, tag @franknoirot or @davehakkens within.

Here is the relevant desktop design as of 28/02/22. The browse all Users page, with one of the filter menus expanded: Users Browse

Build Recommendations

  • On Mobile, I recommend having table section scroll horizontally as a lightweight solution (in addition to any font-sizing adjustments that occur already).
  • For fuzzy search, it is worth looking into fuse.js, which is lightweight and easy to configure.

Issue Analytics

  • State:closed
  • Created 2 years ago
  • Comments:6 (6 by maintainers)

github_iconTop GitHub Comments

1reaction
Kiebertcommented, Oct 16, 2022

Hey @davehakkens
The simple design things (color of the user name and activated filter border line) are done. And I merged the latest master version in this branch.

Currently I do not see a problem with the way the database query is done. It now loads all available users into the grid in one go. That seems to work fine with around 10.000 of users.

I assume if the users amount increases to around 100.000 users then you will probably need to chop up the data retrieval in separate chunks.

I created a PR to merge my additions to the branch ‘feat/admin-users’ branch: https://github.com/ONEARMY/community-platform/pull/1987

Let me know if something needs an update…

1reaction
Kiebertcommented, Oct 9, 2022

@davehakkens Good to know that there is a branch/PR already. I will have a look at the code to see if I can work with that. If it is too complex for my brain I will let you know.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Adding Users in the New Admin Panel
To access the “Manage Users” section in the Admin Panel, either click on your name and then on 'User Management' or click the...
Read more >
23 User Management System With Admin Panel - YouTube
#23 User Management System With Admin Panel | Making Admin Dashboard Page · Key moments. View all · Key moments · Description ·...
Read more >
Creating New Admin Panel User Accounts
Sign into your site's admin panel. · Go to the Manage Users page (Admin -> Manage Users). · Click the Create New User...
Read more >
Managing Users and Roles Using WordPress Admin Panel
In this guide, we will demonstrate how you can manage users and their roles using the WordPress Admin Panel.
Read more >
Add all your organization's users to a group - Google Support
Add all your organization's users to a group. This page is for administrators. To manage groups for your own account, visit Google Groups...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found