From 6923bd9c0605acf8ad44750882f03693d798ba55 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Fri, 19 Aug 2022 17:21:00 +0200 Subject: [PATCH] iban human readable --- htdocs/compta/bank/card.php | 2 +- htdocs/core/lib/bank.lib.php | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/htdocs/compta/bank/card.php b/htdocs/compta/bank/card.php index 3dfe18a3581..b10334d8aac 100644 --- a/htdocs/compta/bank/card.php +++ b/htdocs/compta/bank/card.php @@ -758,7 +758,7 @@ if ($action == 'create') { } print ''.$langs->trans($ibankey).''; - print ''.$object->iban.' '; + print ''.getIbanHumanReadable($object).' '; if (!empty($object->iban)) { if (!checkIbanForAccount($object)) { print img_picto($langs->trans("IbanNotValid"), 'warning'); diff --git a/htdocs/core/lib/bank.lib.php b/htdocs/core/lib/bank.lib.php index a19c6e44a92..5dde1bc4360 100644 --- a/htdocs/core/lib/bank.lib.php +++ b/htdocs/core/lib/bank.lib.php @@ -290,6 +290,24 @@ function checkIbanForAccount(Account $account) } } +/** + * Returns the iban human readable + * + * @param Account $account Account object + * @return string + */ +function getIbanHumanReadable(Account $account) +{ + if ($account->getCountryCode() == 'FR') { + require_once DOL_DOCUMENT_ROOT.'/includes/php-iban/oophp-iban.php'; + $ibantoprint = preg_replace('/[^a-zA-Z0-9]/', '', $account->iban); + $iban = new PHP_IBAN\IBAN($ibantoprint); + return $iban->HumanFormat(); + } + + return $account->iban; +} + /** * Check account number informations for a bank account *