Skip to content

In Admin 4.14.3, within the Script module, double-clicking entries in the tree/table causes a frontend stack trace. #57

Description

@akelch

Description

In Admin 4.14.3, within the Script module, double-clicking entries in the tree/table causes a frontend stack trace.

This occurs for both:

  • Leaf entries
  • Node entries

Project-specific names and live domain references have been anonymized.

Expected Behavior

Double-clicking a leaf or node should either:

  • open the related script entry,
  • trigger the configured handler,
  • or do nothing gracefully if no handler is configured.

The UI must not throw a runtime error.

Observed Behavior

Double-clicking a leaf or node throws the following error:

TypeError: Cannot read properties of undefined (reading 'startsWith')
    at m (index-*.js:4305:72772)
    at onDblclick (index-*.js:4305:78576)
    at Aw (index-*.js:14:38)
    at Xc (index-*.js:14:109)
    at HTMLTableRowElement.t (index-*.js:18:8586)

The failing code appears to access handler without validating that it exists:

if (u.conf.handler.startsWith("list.fluidpage")) {

This indicates that u.conf.handler is undefined for some Script module entries.

The regular Edit button still works.
The File module does not appear to be affected.

Technical Notes

The double-click handler should guard against missing configuration values before calling .startsWith().

Example:

if (u.conf.handler?.startsWith("list.fluidpage")) {

or explicitly:

if (typeof u.conf.handler === "string" && u.conf.handler.startsWith("list.fluidpage")) {

Acceptance Criteria

  • Double-clicking leaf entries no longer throws a stack trace.
  • Double-clicking node entries no longer throws a stack trace.
  • Missing conf.handler values are handled safely.
  • Existing Edit button behavior remains unchanged.
  • File module behavior remains unaffected.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Priority: HighAfter critical issues are fixed, these should be dealt with before any further issues.

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions