From c9c525a5a03674a8745c4704a82e2532f6a89b6b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Kula?= <148193449+mkibp@users.noreply.github.com> Date: Wed, 17 Jul 2024 11:42:36 +0000 Subject: [PATCH] Bug 37391: make QR code for biblio record in OPAC use canonical link In /opac-detail.pl page there's an option to show a QR code to open up said record on your phone or share it with others in such a way. Currently, it simply uses the current `location.href` of the browser. This isn't ideal, because such URL can be much longer, resulting in more complex/harder to scan QR code, plus URL parameters can contain extra junk, such as our previous search query that led us to current record, which we might not necessarily want to share. Thus, now having simple canonical URLs after the "Depends On" patch was merged in, we can replace these QR codes to link to them instead. To test: 1. Visit biblio detail page in OPAC 2. Click the button to show QR code in the right pane (preference 'OPACDetailQRCode' must be enabled) 3. Notice that the QR code is much simpler/less complex now 4. Scan the QR code with your phone and confirm it's in the desired format of /bib/123 and that it opens up properly --- koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-detail.tt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-detail.tt b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-detail.tt index 7dd44416f5..ef9926d51a 100644 --- a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-detail.tt +++ b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-detail.tt @@ -1671,12 +1671,14 @@ [% IF ( Koha.Preference('OPACDetailQRCode') ) %] + var link_canonical = document.querySelector("link[rel=canonical]"); + var qrcode = kjua({ ecLevel: "H", render: "canvas", rounded: 100, size: 150, - text: location.href, + text: link_canonical ? link_canonical.href : location.href, }); if (qrcode) { document.getElementById("qrcode").appendChild( qrcode ); -- 2.39.2