From 3603a90b8b464e1bf6cc06e30975f70aec7c86d3 Mon Sep 17 00:00:00 2001
From: Jake Deery <jake.deery@ptfs-europe.com>
Date: Fri, 2 Jun 2023 13:13:47 +0000
Subject: [PATCH] Bug 33880: Remove Version param from GB::Barcode->new

Looking at the code here
     if (Koha/Auth/TwoFactorAuth.pmoSelf->{Version}){        #--- auto version select
        for(->{Version}=1; ->{Version} <= 40; ++->{Version}) {
            last if ({->{Ecc}}->[->{Version}]
                        >=  + ->[->{Version}]);
        }
   }

in https://metacpan.org/release/KWITKNR/GD-Barcode-1.15/source/Barcode/QRcode.pm#L349

It appears the version parameter is not required, and will default to whatever version has the necessary bits for the input words given

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
---
 Koha/Auth/TwoFactorAuth.pm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Koha/Auth/TwoFactorAuth.pm b/Koha/Auth/TwoFactorAuth.pm
index 5cd6d13ac7..238d01f8dc 100644
--- a/Koha/Auth/TwoFactorAuth.pm
+++ b/Koha/Auth/TwoFactorAuth.pm
@@ -101,7 +101,7 @@ sub qr_code {
 
     my $otpauth = $self->SUPER::qr_code( undef, undef, undef, 1);
         # no need to pass secret, key and issuer again
-    my $qrcode = GD::Barcode->new( 'QRcode', $otpauth, { Ecc => 'M', Version => 10, ModuleSize => 4 } );
+    my $qrcode = GD::Barcode->new( 'QRcode', $otpauth, { Ecc => 'M', ModuleSize => 4 } );
     my $data = $qrcode->plot->png;
     return "data:image/png;base64,". encode_base64( $data, q{} ); # does not contain newlines
 }
-- 
2.41.0