When the URL to be encoded in a checkin QR code contains an ampersand (&) character, as used to be the case on my test system before PR #17, it came out HTML-encoded (as an & entity). That is wrong – a QR code’s URL should be directly usable in a browser’s address bar. This is caused by the omission of some of the default parameters in the call to CRM_Utils_System::urlin qrcodecheckin.php. One of these parameters is called htmlize and its default is TRUE. I am submitting a pull request with a change. I’ve used the approach taken in the original code, where local variables are created to give names to these parameters – actually unnecessary but i liked the extra readablity even though I probably would’t have come up with this myself.
When the URL to be encoded in a checkin QR code contains an ampersand (
&
) character, as used to be the case on my test system before PR #17, it came out HTML-encoded (as an&
entity). That is wrong – a QR code’s URL should be directly usable in a browser’s address bar. This is caused by the omission of some of the default parameters in the call toCRM_Utils_System::url
in qrcodecheckin.php. One of these parameters is called htmlize and its default is TRUE. I am submitting a pull request with a change. I’ve used the approach taken in the original code, where local variables are created to give names to these parameters – actually unnecessary but i liked the extra readablity even though I probably would’t have come up with this myself.