Hi all (and especially Owen),

 

I’m noticing some odd Javascript errors in the OPAC in 19.11 and master.

 

Steps to reproduce:

  1. Go to the OPAC and open the F12 dev tools.
  2. Click on “Log in to your account”
  3. Note the following in your console logs

jquery-3.4.1.min_19.1200030.js:2 Uncaught Error: Syntax error, unrecognized expression: /cgi-bin/koha/opac-user.pl

    at Function.se.error (jquery-3.4.1.min_19.1200030.js:2)

    at se.tokenize (jquery-3.4.1.min_19.1200030.js:2)

    at se.select (jquery-3.4.1.min_19.1200030.js:2)

    at Function.se (jquery-3.4.1.min_19.1200030.js:2)

    at Function.s.find (jquery-migrate-3.1.0.min_19.1200030.js:2)

    at k.fn.init.find (jquery-3.4.1.min_19.1200030.js:2)

    at s.fn.init.k.fn.init (jquery-3.4.1.min_19.1200030.js:2)

    at new s.fn.init (jquery-migrate-3.1.0.min_19.1200030.js:2)

    at k (jquery-3.4.1.min_19.1200030.js:2)

at HTMLAnchorElement.<anonymous> (bootstrap.min_19.1200030.js:6)

 

Using the Chrome tools, I was able to pretty print the Javascript, so now I see the following:

Uncaught Error: Syntax error, unrecognized expression: /cgi-bin/koha/opac-user.pl

    at Function.se.error (jquery-3.4.1.min_19.1200030.js:formatted:546)

    at se.tokenize (jquery-3.4.1.min_19.1200030.js:formatted:969)

    at se.select (jquery-3.4.1.min_19.1200030.js:formatted:1024)

    at Function.se (jquery-3.4.1.min_19.1200030.js:formatted:289)

    at Function.s.find (jquery-migrate-3.1.0.min_19.1200030.js:2)

    at k.fn.init.find (jquery-3.4.1.min_19.1200030.js:formatted:1138)

    at s.fn.init.k.fn.init (jquery-3.4.1.min_19.1200030.js:formatted:1159)

    at new s.fn.init (jquery-migrate-3.1.0.min_19.1200030.js:2)

    at k (jquery-3.4.1.min_19.1200030.js:formatted:50)

at HTMLAnchorElement.<anonymous> (bootstrap.min_19.1200030.js:formatted:535)

 

It kind of looks to me like some sort of incompatibility between Bootstrap 2.3.1 and Jquery 3.4.1?

 

I’ve put breakpoints up and down this code but it’s not jumping out at me exactly what’s happening except that maybe it’s trying to use the href attribute as a selector and it’s not working… but why it would even try in the first place confuses me. It looks like a Bootstrap-level thing, which is why I’m thinking maybe older versions of Jquery worked a bit differently?

 

Anyway I’ve already stayed way too late at work today. Maybe someone smarter than me can figure this one out.

 

David Cook

Systems Librarian

Prosentient Systems

72/330 Wattle St

Ultimo, NSW 2007

Australia

 

Office: 02 9212 0899

Direct: 02 8005 0595