Multiple reading area classes cause ReadSpeaker to hang

Created on 3 February 2023, almost 2 years ago
Updated 1 March 2023, almost 2 years ago

Problem/Motivation

Using multiple classes for the reading area causes ReadSpeaker to hang when changing to a faster/slower reading speed.

ReadSpeaker support say this is caused by commas in the readclass query parameter being encoded, resulting in subsequent calls of the listen button to fail.

The encoding comes from the twig template which builds out the queryParameters variable using PHP's built-in http_build_query() function under the hood.

Expected:
readclass=class1,class2,class3

Actual:
readclass=class1%2Cclass2%2Cclass3

Steps to reproduce

  • Set multiple classes for 'Reading area of classes' block config i.e. class1,class2,class3
  • Browse page (after cache rebuild)
  • Start ReadSpeaker (playback should start)
  • Adjust speaker speed
  • Restart ReadSpeaker (playback should hang)

Proposed resolution

Preprocess the query parameters so that only the URL parameter is encoded rather than the whole querystring as currently occurs in the twig template.

🐛 Bug report
Status

Closed: outdated

Version

2.0

Component

Code

Created by

🇦🇺Australia mcaddz

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

Comments & Activities

Production build 0.71.5 2024