From 9d4155bfaabce37f02e2e508a3a5bfb5ca1e6774 Mon Sep 17 00:00:00 2001 From: Philippe 'Peep' Chaintreuil Date: Mon, 3 Jul 2017 08:25:15 -0400 Subject: [PATCH] Disable qrcode if Endroid QrCode library is missing Treat a missing QrCode library the same as roundcube treats a missing php-gd library. Hide the button to disallow access. Requested by distributions that don't use composer and don't yet have packages for the QrCode library. --- program/steps/addressbook/show.inc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/program/steps/addressbook/show.inc b/program/steps/addressbook/show.inc index 0c5a2d611..303c8c00a 100644 --- a/program/steps/addressbook/show.inc +++ b/program/steps/addressbook/show.inc @@ -43,7 +43,11 @@ if ($cid && ($record = ($CONTACT_RECORD ?: $CONTACTS->get_record($cid, true)))) rcmail_set_sourcename($CONTACTS); // Disable qr-code if php-gd is not installed -$OUTPUT->set_env('qrcode', function_exists('imagecreate')); +// Disable qr-code if Endriod's QrCode is not installed +$OUTPUT->set_env( + 'qrcode', + function_exists('imagecreate') && class_exists('Endroid\QrCode\QrCode') +); $OUTPUT->add_label('qrcode'); $OUTPUT->add_handlers(array(