From 6ceaa2b9fbee87b15f1028828f572294dbd85c3f Mon Sep 17 00:00:00 2001 From: Nonimart Date: Thu, 10 Jul 2025 17:25:58 +0200 Subject: [PATCH] FEATURE Handling French mobile numbers --- includes/utilities.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/includes/utilities.php b/includes/utilities.php index 1c2069d..9d8976d 100644 --- a/includes/utilities.php +++ b/includes/utilities.php @@ -310,11 +310,13 @@ function format_phone_number($phoneNumber) $cleanedNumber = preg_replace('/\D+/', '', $phoneNumber); $phoneType = detectBelgianPhoneType($cleanedNumber); - + if ($phoneType === 'mobile') { $formattedPhoneNumber = preg_replace('/(\d{2})(\d{3})(\d{2})(\d{2})(\d{2})/', '+$1 $2 $3 $4 $5', $cleanedNumber); } else if ($phoneType === 'landline') { $formattedPhoneNumber = preg_replace('/(\d{2})(\d{1})(\d{3})(\d{2})(\d{2})/', '+$1 $2 $3 $4 $5', $cleanedNumber); + } else if ($phoneType === 'fr_mobile') { + $formattedPhoneNumber = preg_replace('/(\d{2})(\d{1})(\d{2})(\d{2})(\d{2})(\d{2})/', '+$1 $2 $3 $4 $5 $6', $cleanedNumber); } else { $formattedPhoneNumber = $cleanedNumber; } @@ -334,5 +336,9 @@ function detectBelgianPhoneType($number) return 'landline'; } + if (preg_match('/^33[0-9]{9}$/', $number)) { + return 'fr_mobile'; + } + return 'unknown'; }