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

Enhance Table Sorting and Add Advanced Search with Dropdown Filters #189

Open
cvzbynek opened this issue Oct 29, 2024 · 2 comments
Open
Assignees

Comments

@cvzbynek
Copy link
Collaborator

Description

Implement enhanced table sorting capabilities and an advanced search bar with a dropdown for filtering by specific parameters. This feature will improve user efficiency by enabling more targeted searches and streamlined sorting within the process manager interface.

Background

This improvement was suggested by Pierre Lasorak as a desired feature. Adding these elements would align the table functionality more closely with user needs and improve the overall usability of the process management page.

Proposed Features

  1. Table Sorting:

    • Add interactive sorters to table columns, allowing users to sort by fields like UUID, status, and user.
    • Provide options for ascending and descending order to enhance data organization.
  2. Advanced Search with Dropdown Filters:

    • Implement a search bar with a dropdown menu to filter by specific parameters (e.g., user, status, session).

Implementation Notes

  • Table Sorters: Use JavaScript-based sorting for responsiveness and compatibility with the current UI structure.
  • Search Dropdown: Integrate a dropdown menu that updates the search query dynamically based on selected filters.

@cc-a

@cvzbynek cvzbynek self-assigned this Oct 29, 2024
@cc-a
Copy link
Contributor

cc-a commented Oct 30, 2024

Thanks for writing this up @cvzbynek. The search dropdown sounds good, feel free to pick that up if you'd like.

As far as the table sorting goes, minimising javascript on the front-end is a high priority design goal and I don't believe would be compatible with our current approach as subsequent table refreshes would likely clobber any content sorting. Instead I'd suggest using django-tables2 support for sorting. This should be a simple matter of enable sorting for suitable columns and including the current querystring in the hx-get attribute of the search input so that sorting is preserved on table refresh. Column sorting will require a page reload but I'd rather minimise complexity and development time unless it's highlighted in user feedback.

@cvzbynek cvzbynek mentioned this issue Nov 5, 2024
10 tasks
@cvzbynek
Copy link
Collaborator Author

cvzbynek commented Nov 5, 2024

@cc-a Everything seems to be working as expected in my tests. The JavaScript is kept to a minimum with just a few additional lines. See #207 for details!
Edit: sorting is handle by backend ( django_tables2 orderby method)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants