diff --git a/doc/sources/admin/upgrade_2_0_x.rst b/doc/sources/admin/upgrade_2_0_x.rst
index 7600386ce..df5888d29 100644
--- a/doc/sources/admin/upgrade_2_0_x.rst
+++ b/doc/sources/admin/upgrade_2_0_x.rst
@@ -32,7 +32,7 @@ None
Portal templates changes
~~~~~~~~~~~~~~~~~~~~~~~~
-Some ``autocomplete`` attributes have been added to improve accessibility in the following files: ``checkdevops.tpl``, ``checkuser.tpl``, ``register.tpl``.
+Some ``autocomplete`` attributes have been added to improve accessibility in the following files: ``checkdevops.tpl``, ``checkuser.tpl``, ``register.tpl``, ``ext2fcheck.tpl``, ``totp2fcheck.tpl``, ``utotp2fcheck.tpl``.
2.0.12
diff --git a/lemonldap-ng-portal/site/templates/bootstrap/ext2fcheck.tpl b/lemonldap-ng-portal/site/templates/bootstrap/ext2fcheck.tpl
index cf5df7ad1..c35b40c54 100644
--- a/lemonldap-ng-portal/site/templates/bootstrap/ext2fcheck.tpl
+++ b/lemonldap-ng-portal/site/templates/bootstrap/ext2fcheck.tpl
@@ -16,7 +16,7 @@
-
+
diff --git a/lemonldap-ng-portal/t/30-SAML-POST-with-2F-UpgradeOnly.t b/lemonldap-ng-portal/t/30-SAML-POST-with-2F-UpgradeOnly.t
index 1ad7d3a94..76a73da76 100644
--- a/lemonldap-ng-portal/t/30-SAML-POST-with-2F-UpgradeOnly.t
+++ b/lemonldap-ng-portal/t/30-SAML-POST-with-2F-UpgradeOnly.t
@@ -82,7 +82,7 @@ SKIP: {
ok(
$res->[2]->[0] =~
-qr%%,
+qr%%,
'Found EXTCODE input'
) or print STDERR Dumper( $res->[2]->[0] );
@@ -211,7 +211,7 @@ qr%[2]->[0] =~
-qr%%,
+qr%%,
'Found EXTCODE input'
) or print STDERR Dumper( $res->[2]->[0] );
diff --git a/lemonldap-ng-portal/t/30-SAML-POST-with-2F-and-Notification.t b/lemonldap-ng-portal/t/30-SAML-POST-with-2F-and-Notification.t
index 42caa9801..1631e19cc 100644
--- a/lemonldap-ng-portal/t/30-SAML-POST-with-2F-and-Notification.t
+++ b/lemonldap-ng-portal/t/30-SAML-POST-with-2F-and-Notification.t
@@ -94,7 +94,7 @@ SKIP: {
ok(
$res->[2]->[0] =~
-qr%%,
+qr%%,
'Found EXTCODE input'
) or print STDERR Dumper( $res->[2]->[0] );
diff --git a/lemonldap-ng-portal/t/32-OIDC-Code-Flow-with-2F-UpgradeOnly.t b/lemonldap-ng-portal/t/32-OIDC-Code-Flow-with-2F-UpgradeOnly.t
index afe9170a2..47fc9f1dd 100644
--- a/lemonldap-ng-portal/t/32-OIDC-Code-Flow-with-2F-UpgradeOnly.t
+++ b/lemonldap-ng-portal/t/32-OIDC-Code-Flow-with-2F-UpgradeOnly.t
@@ -156,7 +156,7 @@ $pdata = expectCookie( $res, 'lemonldappdata' );
ok(
$res->[2]->[0] =~
-qr%%,
+qr%%,
'Found EXTCODE input'
) or print STDERR Dumper( $res->[2]->[0] );
count(1);
@@ -261,7 +261,7 @@ $pdata = expectCookie( $res, 'lemonldappdata' );
ok(
$res->[2]->[0] =~
-qr%%,
+qr%%,
'Found EXTCODE input'
) or print STDERR Dumper( $res->[2]->[0] );
count(1);
diff --git a/lemonldap-ng-portal/t/32-OIDC-Code-Flow-with-2F.t b/lemonldap-ng-portal/t/32-OIDC-Code-Flow-with-2F.t
index 57699a853..17ed58690 100644
--- a/lemonldap-ng-portal/t/32-OIDC-Code-Flow-with-2F.t
+++ b/lemonldap-ng-portal/t/32-OIDC-Code-Flow-with-2F.t
@@ -128,7 +128,7 @@ $pdata = expectCookie( $res, 'lemonldappdata' );
ok(
$res->[2]->[0] =~
-qr%%,
+qr%%,
'Found EXTCODE input'
) or print STDERR Dumper( $res->[2]->[0] );
count(1);
diff --git a/lemonldap-ng-portal/t/37-Issuer-Timeout.t b/lemonldap-ng-portal/t/37-Issuer-Timeout.t
index b921b27a3..f412a47d1 100644
--- a/lemonldap-ng-portal/t/37-Issuer-Timeout.t
+++ b/lemonldap-ng-portal/t/37-Issuer-Timeout.t
@@ -95,7 +95,7 @@ $pdata = expectCookie( $res, 'lemonldappdata' );
ok(
$res->[2]->[0] =~
-qr%%,
+qr%%,
'Found EXTCODE input'
) or print STDERR Dumper( $res->[2]->[0] );
count(1);
diff --git a/lemonldap-ng-portal/t/76-2F-Ext-with-BruteForce.t b/lemonldap-ng-portal/t/76-2F-Ext-with-BruteForce.t
index 2bbe6c6c1..251ca1976 100644
--- a/lemonldap-ng-portal/t/76-2F-Ext-with-BruteForce.t
+++ b/lemonldap-ng-portal/t/76-2F-Ext-with-BruteForce.t
@@ -121,7 +121,7 @@ my ( $host, $url, $query ) =
ok(
$res->[2]->[0] =~
-qr%%,
+qr%%,
'Found EXTCODE input'
) or print STDERR Dumper( $res->[2]->[0] );
diff --git a/lemonldap-ng-portal/t/76-2F-Ext-with-CodeActivation.t b/lemonldap-ng-portal/t/76-2F-Ext-with-CodeActivation.t
index a59945463..46d92b826 100644
--- a/lemonldap-ng-portal/t/76-2F-Ext-with-CodeActivation.t
+++ b/lemonldap-ng-portal/t/76-2F-Ext-with-CodeActivation.t
@@ -40,7 +40,7 @@ my ( $host, $url, $query ) =
ok(
$res->[2]->[0] =~
-qr%%,
+qr%%,
'Found EXTCODE input'
) or print STDERR Dumper( $res->[2]->[0] );
count(1);
diff --git a/lemonldap-ng-portal/t/76-2F-Ext-with-GrantSession.t b/lemonldap-ng-portal/t/76-2F-Ext-with-GrantSession.t
index 957e15c7a..1ec09c42b 100644
--- a/lemonldap-ng-portal/t/76-2F-Ext-with-GrantSession.t
+++ b/lemonldap-ng-portal/t/76-2F-Ext-with-GrantSession.t
@@ -42,7 +42,7 @@ my ( $host, $url, $query ) =
ok(
$res->[2]->[0] =~
-qr%%,
+qr%%,
'Found EXTCODE input'
) or print STDERR Dumper( $res->[2]->[0] );
count(1);
diff --git a/lemonldap-ng-portal/t/76-2F-Ext-with-History.t b/lemonldap-ng-portal/t/76-2F-Ext-with-History.t
index 3f95825b3..f39b33860 100644
--- a/lemonldap-ng-portal/t/76-2F-Ext-with-History.t
+++ b/lemonldap-ng-portal/t/76-2F-Ext-with-History.t
@@ -82,7 +82,7 @@ ok(
ok(
$res->[2]->[0] =~
-qr%%,
+qr%%,
'Found EXTCODE input'
) or print STDERR Dumper( $res->[2]->[0] );
diff --git a/lemonldap-ng-portal/t/77-2F-Extra.t b/lemonldap-ng-portal/t/77-2F-Extra.t
index deaa72c02..2c0a9fbdb 100644
--- a/lemonldap-ng-portal/t/77-2F-Extra.t
+++ b/lemonldap-ng-portal/t/77-2F-Extra.t
@@ -61,7 +61,7 @@ my ( $host, $url, $query ) =
ok(
$res->[2]->[0] =~
-qr%%,
+qr%%,
'Found EXTCODE input'
) or print STDERR Dumper( $res->[2]->[0] );
count(1);
@@ -144,7 +144,7 @@ count(1);
ok(
$res->[2]->[0] =~
-qr%%,
+qr%%,
'Found EXTCODE input'
) or print STDERR Dumper( $res->[2]->[0] );
count(1);
diff --git a/lemonldap-ng-portal/t/77-2F-Mail-SessionKey.t b/lemonldap-ng-portal/t/77-2F-Mail-SessionKey.t
index 9e1f12d59..99d2fc9b7 100644
--- a/lemonldap-ng-portal/t/77-2F-Mail-SessionKey.t
+++ b/lemonldap-ng-portal/t/77-2F-Mail-SessionKey.t
@@ -42,7 +42,7 @@ my ( $host, $url, $query ) =
ok(
$res->[2]->[0] =~
-qr%%,
+qr%%,
'Found EXTCODE input'
) or print STDERR Dumper( $res->[2]->[0] );
count(1);
diff --git a/lemonldap-ng-portal/t/77-2F-Mail-with-global-storage.t b/lemonldap-ng-portal/t/77-2F-Mail-with-global-storage.t
index 250b8c156..4ed0ff94a 100644
--- a/lemonldap-ng-portal/t/77-2F-Mail-with-global-storage.t
+++ b/lemonldap-ng-portal/t/77-2F-Mail-with-global-storage.t
@@ -39,7 +39,7 @@ my ( $host, $url, $query ) =
ok(
$res->[2]->[0] =~
-qr%%,
+qr%%,
'Found EXTCODE input'
) or print STDERR Dumper( $res->[2]->[0] );
count(1);
diff --git a/lemonldap-ng-portal/t/77-2F-Mail.t b/lemonldap-ng-portal/t/77-2F-Mail.t
index 740369153..f89440f87 100644
--- a/lemonldap-ng-portal/t/77-2F-Mail.t
+++ b/lemonldap-ng-portal/t/77-2F-Mail.t
@@ -38,7 +38,7 @@ my ( $host, $url, $query ) =
ok(
$res->[2]->[0] =~
-qr%%,
+qr%%,
'Found EXTCODE input'
) or print STDERR Dumper( $res->[2]->[0] );
count(1);
diff --git a/lemonldap-ng-portal/t/78-2F-Upgrade-Many.t b/lemonldap-ng-portal/t/78-2F-Upgrade-Many.t
index 8ff30cd45..41d60fe9c 100644
--- a/lemonldap-ng-portal/t/78-2F-Upgrade-Many.t
+++ b/lemonldap-ng-portal/t/78-2F-Upgrade-Many.t
@@ -143,7 +143,7 @@ $pdata = expectCookie( $res, 'lemonldappdata' );
ok(
$res->[2]->[0] =~
-qr%%,
+qr%%,
'Found EXTCODE input'
) or print STDERR Dumper( $res->[2]->[0] );
count(1);
diff --git a/lemonldap-ng-portal/t/78-2F-Upgrade.t b/lemonldap-ng-portal/t/78-2F-Upgrade.t
index c8ec3c092..c9cc32048 100644
--- a/lemonldap-ng-portal/t/78-2F-Upgrade.t
+++ b/lemonldap-ng-portal/t/78-2F-Upgrade.t
@@ -114,7 +114,7 @@ $pdata = expectCookie( $res, 'lemonldappdata' );
ok(
$res->[2]->[0] =~
-qr%%,
+qr%%,
'Found EXTCODE input'
) or print STDERR Dumper( $res->[2]->[0] );
count(1);
diff --git a/lemonldap-ng-portal/t/78-2F-UpgradeOnly.t b/lemonldap-ng-portal/t/78-2F-UpgradeOnly.t
index 563b27b35..e183bab7a 100644
--- a/lemonldap-ng-portal/t/78-2F-UpgradeOnly.t
+++ b/lemonldap-ng-portal/t/78-2F-UpgradeOnly.t
@@ -138,7 +138,7 @@ $pdata = expectCookie( $res, 'lemonldappdata' );
ok(
$res->[2]->[0] =~
-qr%%,
+qr%%,
'Found EXTCODE input'
) or print STDERR Dumper( $res->[2]->[0] );
count(1);
diff --git a/lemonldap-ng-portal/t/91-handler-cache-cleaned.t b/lemonldap-ng-portal/t/91-handler-cache-cleaned.t
index 8973fea1d..b781781ae 100644
--- a/lemonldap-ng-portal/t/91-handler-cache-cleaned.t
+++ b/lemonldap-ng-portal/t/91-handler-cache-cleaned.t
@@ -65,7 +65,7 @@ my ( $host, $url, $query ) =
ok(
$res->[2]->[0] =~
-qr%%,
+qr%%,
'Found EXTCODE input'
) or print STDERR Dumper( $res->[2]->[0] );
count(1);