Авторизация по номеру телефона

Компоненты

После установки модуля в визуальном редакторе станет доступно несколько компонентов, которые незначительно отличаются по внешнему виду и функционалу.

Компонент из настроек модуля

Чтобы выводился любой из нижеперечисленных компонентов с учётом настроек модуля, необходимо вызывать компонент примерно так:

 if (\Bitrix\Main\Loader::includeModule('bxmaker.authuserphone')) { 
    $oManager = \BXmaker\AuthUserPhone\Manager::getInstance(); 
   
    //если модуль для текущего сайта включён
    if ($oManager->isEnabled()) {                 
       $APPLICATION->IncludeComponent( 
        $oManager->param()->getDefaultComponent(), 
        '',
        [
        'COMPOSITE_FRAME_MODE' => 'N',
        'RAND_STRING' => 'ajax'
        ]
       );
    }
}

Edit

Этот компонент размещается чаще всего в профиле пользователя и предоставляет функционал смены номера телефона. Способы подтверждения нового номера и их порядок задаются в настройках модуля. В виде исключения способы и их порядок могут быть переопределены параметрами вызова компонента.

<?
$APPLICATION->IncludeComponent(
    "bxmaker:authuserphone.edit",
    ".default",
    [
        //параметры вызова для переопределения поведения
    ],
    false
); 
?>

Enter

Самый новый компонент, включающий в себя максимум функционала. Рекомендуется использовать именно его или Simple.

В настройках модуля задаются настройки способов подтверждения и их порядок, показ регистрации, восстановления и тому подобное.

Логика работы компонента может быть переопределена некоторыми параметрами вызова компонента.

Если пользователь пытается авторизоваться, включена авторегистрация и аккаунта ещё не существует — он будет создан автоматически. Если авторегистрация отключена, при отсутствии профиля будет выведено сообщение с ошибкой.

<?
$APPLICATION->IncludeComponent(
    "bxmaker:authuserphone.enter",
    ".default",
    [
        //параметры вызова для переопределения поведения
    ],
    false
); 
?>

Simple

Это компонент упрощённого входа на сайт по номеру телефона. В нём нет ни восстановления доступа, ни регистрации.

Поддерживаемые способы подтверждения номера телефона, их порядок и прочая логика задаются в настройках модуля и могут быть переопределены некоторыми параметрами вызова компонента.

В нём всегда работает авторегистрация, даже если в настройках модуля она отключена.

<?
$APPLICATION->IncludeComponent(
    "bxmaker:authuserphone.simple",
    ".default",
    [
        //параметры вызова для переопределения поведения
    ],
    false
); 
?>

Call (устарел)

Этот компонент поддерживает вход по номеру телефона, регистрацию и восстановление по email. В нём нельзя войти на сайт по логину или email адресу. Но восстановить доступ по email возможно. Основные значения параметров модуль берёт из настроек модуля и также позволяет переопределить некоторые из них в параметрах вызова компонента.

<?
$APPLICATION->IncludeComponent(
    "bxmaker:authuserphone.call",
    ".default",
    [
        //параметры вызова для переопределения поведения
    ],
    false
); 
?>

Login (устарел)

Это самый первый компонент, который поставлялся с модулем. В нём можно войти всеми способами, зарегистрироваться, восстановить доступ. Важный момент — в нём доступно подтверждение номера телефона только через код в смс. При его работе также используются настройки модуля или переопределяющие их параметры вызова компонента.

<?
$APPLICATION->IncludeComponent(
    "bxmaker:authuserphone.login",
    ".default",
    [
        //параметры вызова для переопределения поведения
    ],
    false
); 
?>

Редактор страниц

Для размещения через редактор страницы необходимо в публичной части сайта на панели управления вверху страницы нажать на кнопку «Изменить страницу». После этого откроется редактор страницы, в котором можно перетащить нужный компонент в тело страницы.

Скриншот редактора страницы для размещения компонентов

Если в списке компонентов вы не видите нужные, то необходимо обновить кэш компонентов.

Скриншот обновления списка компонентов в редакторе