Add a seach input filter to ECA's admin list

Created on 20 April 2023, over 1 year ago
Updated 7 March 2024, 9 months ago

Problem/Motivation

The list at /admin/config/workflow/eca becomes quickly big and some (even simple like task 1 below) filter would help a lot.

Remaining tasks

My noob & appreciating user proposal:

  1. Add a search input like the one at /admin/modules.
  2. Optionally let the user search as well in the Models' Documentation field.
  3. Optionally let the user search as well by Events/Conditions/Actions used in the listed Models.
Feature request
Status

Fixed

Version

2.0

Component

User interface

Created by

🇮🇹Italy kopeboy Milan

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Merge Requests

Comments & Activities

  • Issue created by @kopeboy
  • 🇩🇪Germany jurgenhaas Gottmadingen

    This is a nice idea. Not a simple one for implementation, but I can certainly see how this would be very useful.

  • 🇩🇪Germany rvolk Frankfurt

    We also discussed this at the Drupal Dev Days in Vienna 2023, the manually sorted list in the management view is responsible for the order of execution, so this kind of makes sense. However, the order should be only relevant per event type, where it's going to be validated and sorted.

    Also see https://ecaguide.org/eca/usage/#admin-ui

    With the recent development of event specific execution, it would be helpful to see the execution of rules per event type and not all at once. A filter would be certainly helpful, but maybe we should consider a dedicated view of execution order and not mix it up with the management view, where we could handle a multitude of rules.

    To get started with I would appreciate:
    - a text-filter for "Model" names
    - a multi-select-filter for available "Events"
    - a bool-filter for "enabled"

    Furthermore, with a fresh and empty installation no list is shown, but we can see the save button. It's not really a bug, but just not necessary when there are no rules to be drag & dropped.

    A pager might become handy, when we have more than 50 rules. But a pager would break the sorting feature, which would be another argument to specify the execution order per event and not in the management view. In this case a simple counter behind the listed event could indicate how many rules are using the same event, e.g.:

    - Update content entity (Content: - any- )
    - Presave content entity (Content: - any- ) [Used by 2 rules]

    Clicking on the "[Used by 2 rules]", could bring up a screen where we order the rules accordingly.

    Keep up the great work, it's already very useful!

  • Assigned to ergonlogic
  • 🇨🇦Canada ergonlogic Montréal, Québec 🇨🇦

    Coming from Allow model listing page to be filtered Closed: duplicate , I have a working solution based on the Module/Views javascript-based filter.

    I'll start an MR shortly.

  • Status changed to Needs review 11 months ago
  • 🇨🇦Canada ergonlogic Montréal, Québec 🇨🇦
  • Issue was unassigned.
  • 🇨🇦Canada ergonlogic Montréal, Québec 🇨🇦
  • Status changed to RTBC 11 months ago
  • 🇩🇪Germany jurgenhaas Gottmadingen

    This is amazing, thanks a lot for your contribution @ergonlogic - I've tested this, and it works really nice. OK, for now it only filters on model name, events and versions, but we can probably build on top of this to address the other features discussed above as well.

    The issue fork got re-based for the 2.0.x branch and tests are still passing, which is great.

    We have 2 options now: either we merge this into 2.0.x and back port to 1.1.x and address more features later, or we elaborate first, how many more of the requested features can also be addressed by this technique. In the meantime, this is RTBC to me.

  • Pipeline finished with Skipped
    9 months ago
    #100830
  • Pipeline finished with Skipped
    9 months ago
    #100831
  • 🇩🇪Germany jurgenhaas Gottmadingen

    I've now merged this into 2.0.x and will back port to 1.1.x tomorrow. If anybody needs more features later, we can then address them in separate issues. Thank you again @ergonlogic for this amazing contribution.

  • Status changed to Fixed 9 months ago
  • 🇩🇪Germany jurgenhaas Gottmadingen

    This is now backported to 1.1.x

  • Automatically closed - issue fixed for 2 weeks with no activity.

  • Pipeline finished with Success
    8 months ago
    Total: 182s
    #124540
  • Pipeline finished with Success
    8 months ago
    Total: 181s
    #124542
  • Pipeline finished with Failed
    5 months ago
    Total: 2121s
    #207970
  • Pipeline finished with Failed
    15 days ago
    Total: 605s
    #331160
  • Pipeline finished with Failed
    15 days ago
    Total: 520s
    #331171
  • Pipeline finished with Failed
    13 days ago
    Total: 494s
    #333478
  • Pipeline finished with Failed
    9 days ago
    Total: 515s
    #336524
  • Pipeline finished with Failed
    9 days ago
    Total: 553s
    #336535
  • Pipeline finished with Failed
    9 days ago
    Total: 1252s
    #336557
  • Pipeline finished with Failed
    9 days ago
    Total: 580s
    #336580
  • Pipeline finished with Failed
    9 days ago
    Total: 502s
    #336590
  • Pipeline finished with Failed
    9 days ago
    Total: 1356s
    #336642
  • Pipeline finished with Failed
    9 days ago
    Total: 716s
    #336658
  • Pipeline finished with Failed
    9 days ago
    Total: 540s
    #336664
  • Pipeline finished with Success
    8 days ago
    Total: 513s
    #337694
  • Pipeline finished with Success
    8 days ago
    Total: 527s
    #337708
  • Pipeline finished with Success
    8 days ago
    Total: 513s
    #337714
  • Pipeline finished with Success
    8 days ago
    Total: 622s
    #337731
  • Pipeline finished with Success
    8 days ago
    Total: 1223s
    #337771
  • Pipeline finished with Success
    8 days ago
    Total: 521s
    #337838
  • Pipeline finished with Skipped
    7 days ago
    #338665
Production build 0.71.5 2024