• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/lib/phonenumber/formatter.php
  • Класс: BitrixMainPhoneNumberFormatter
  • Вызов: Formatter::formatOriginal
static function formatOriginal(PhoneNumber $number)
{
	if(!$number->isValid())
		return $number->getRawNumber();

	$format = static::selectOriginalFormatForNumber($number);
	if(!$format)
		return $number->getRawNumber();

	$formattedNationalNumber = static::formatNationalNumberWithOriginalFormat(
		$number,
		$format
	);

	if($number->hasExtension())
	{
		$formattedNationalNumber .= $number->getExtensionSeparator() . " " . $number->getExtension();
	}

	if($number->isInternational())
	{
		$formattedNumber = ($number->hasPlus() ? '+' : '') . $number->getCountryCode() . ' ' . $formattedNationalNumber;
	}
	else
	{
		$formattedNumber = $formattedNationalNumber;
	}

	// If no digit was inserted/removed/altered in a process of formatting, return the formatted number;
	$normalizedFormattedNumber = static::stripNonNumbers($formattedNumber);
	$normalizedRawInput = static::stripNonNumbers($number->getRawNumber());
	if ($normalizedFormattedNumber !== $normalizedRawInput)
	{
		$formattedNumber = $number->getRawNumber();
	}

	return $formattedNumber;
}