Skip to content

Commit

Permalink
Merge pull request #135 from synolia/SYL-218
Browse files Browse the repository at this point in the history
SYL-218 - catch invalid phone number as they are not required
  • Loading branch information
TheGrimmChester authored Jun 20, 2024
2 parents 1401ce2 + 1bbfb5e commit d6e0113
Showing 1 changed file with 18 additions and 10 deletions.
28 changes: 18 additions & 10 deletions src/Creator/PayPlugPaymentDataCreator.php
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@

use DateInterval;
use DateTime;
use libphonenumber\NumberParseException;
use libphonenumber\PhoneNumberFormat as PhoneNumberFormat;
use libphonenumber\PhoneNumberType;
use libphonenumber\PhoneNumberUtil as PhoneNumberUtil;
Expand Down Expand Up @@ -107,22 +108,29 @@ public function create(

public function formatNumber(string $phoneNumber, ?string $isoCode): array
{
$phoneNumberUtil = PhoneNumberUtil::getInstance();
$parsed = $phoneNumberUtil->parse($phoneNumber, $isoCode);
try {
$phoneNumberUtil = PhoneNumberUtil::getInstance();
$parsed = $phoneNumberUtil->parse($phoneNumber, $isoCode);

if (!$phoneNumberUtil->isValidNumber($parsed)) {
return [
'phone' => null,
'is_mobile' => null,
];
}

$formatted = $phoneNumberUtil->format($parsed, PhoneNumberFormat::E164);

if (!$phoneNumberUtil->isValidNumber($parsed)) {
return [
'phone' => $formatted,
'is_mobile' => PhoneNumberType::MOBILE === $phoneNumberUtil->getNumberType($parsed),
];
} catch (NumberParseException) {
return [
'phone' => null,
'is_mobile' => null,
];
}

$formatted = $phoneNumberUtil->format($parsed, PhoneNumberFormat::E164);

return [
'phone' => $formatted,
'is_mobile' => PhoneNumberType::MOBILE === $phoneNumberUtil->getNumberType($parsed),
];
}

private function formatTitle(CustomerInterface $customer): ?string
Expand Down

0 comments on commit d6e0113

Please sign in to comment.