ValidatingService.php in International Phone 3.x
File
src/Helpers/ValidatingService.php
View source
<?php
namespace Drupal\phone_international\Helpers;
use libphonenumber\PhoneNumberFormat;
use libphonenumber\NumberParseException;
use libphonenumber\PhoneNumberUtil;
class ValidatingService implements IsValidInterface {
public function isValidNumber($number) {
$phoneUtil = PhoneNumberUtil::getInstance();
try {
$parseNumber = $phoneUtil
->parse($number);
return $phoneUtil
->isValidNumber($parseNumber);
} catch (NumberParseException $e) {
\Drupal::logger('phone_international')
->debug($e
->getMessage());
return FALSE;
}
}
public function formatNumber($number) {
$phoneUtil = PhoneNumberUtil::getInstance();
try {
$numberProto = $phoneUtil
->parse($number);
return $phoneUtil
->format($numberProto, PhoneNumberFormat::E164);
} catch (NumberParseException $e) {
\Drupal::logger('phone_international')
->error('Problem formatting number: @number. The error given was @error', [
'@number' => $number,
'@error' => $e
->getMessage(),
]);
return $number;
}
}
}