Skip to content

[Bug]: Member dialog search/filter does not work in WebKit browsers #466

@lopezio

Description

@lopezio

Is there an existing issue for this?

  • I have searched the existing issues

Environment

- OS: FreeBSD jail (source install); client: Safari / Chrome on macOS
- PHP: 8.4
- LDAP Server: OpenLDAP

PLA Code

Github checkout

PLA Version

2.3.11

Current Behavior

Typing in "Filter Members" in the membership dialog has no visible effect in Safari and Chrome (WebKit/Blink): the lists are not filtered.

Expected Behavior

Both lists should narrow down to entries matching the typed text.

Steps To Reproduce

  1. Edit a group, open the member dialog (Add Member)
  2. Type part of an existing username into "Filter Members"
  3. Lists remain unchanged (works in Firefox)

Relevant log output

Anything else?

Root cause in resources/views/modals/member-manage.blade.php: the filter hides <option> elements via jQuery .toggle() (CSS display:none), which WebKit does not support on <option>.

Fix (see PR): detach non-matching options and re-attach them when the filter changes. The fix filters the Available Members list only, so closing the dialog can never lose current members that happen to be filtered out.

Transparency note: This bug was filed with the help of Claude / Fable 5 while upgrading an instance in use from v1 to v2. Bugs were found with manual testing, and customizing some templates. Bug description and the patches were also made with the help of the model, providing it with feedback about all behaviour and checking the code it produced. The results have been tested on a production instance (I will create the pull request after filing a last bug)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions