Класс предназначен для обеспечение двухфакторного подтверждения данных. Код верификации будет отправлен с помощью провайдера связи (Например, SMS) Далее, введенный код будет верифицирован и вызвано действие (Action).
Данный класс является высокоуровневой упрощенной оберткой для VerificationSession.
Открытые члены | |
| __construct () | |
| setVerificationProvider (AbstractProvider $provider) | |
| setSessionId ($session_id) | |
| getSessionId () | |
| setCreatorUserId ($user_id) | |
| setAction (AbstractVerifyAction $action) | |
| getAction () | |
| setPhone ($phone) | |
| setEmail ($email) | |
| initializeSession ($skip_if_resolved=true) | |
| initializeByToken ($token) | |
| getSession () | |
| getVerificationFormView () | |
| sendCode () | |
| checkCode ($code) | |
| reset () | |
| cleanOldSessions () | |
| probablyCleanOldSessions ($run_percent=40) | |
Открытые члены унаследованные от BaseModel | |
| addError ($message, $fieldname=null, $form=null) | |
| hasError () | |
| getErrors () | |
| cleanErrors () | |
| getDisplayErrors () | |
| getErrorsStr () | |
| getFormErrors ($form, $separator= ', ') | |
| getNonFormErrors ($separator= ', ') | |
| exportErrors () | |
| importErrors ($data) | |
Защищенные члены | |
| generateToken () | |
Дополнительные унаследованные члены | |
Поля данных унаследованные от BaseModel | |
| $form_fieldname = [] | |
| $errors_by_form = [] | |
| $errors_non_form = [] | |
| $errors = [] | |
Защищенные данные унаследованные от BaseModel | |
| $default_error_fieldname = 'Информация' | |
| __construct | ( | ) |
| checkCode | ( | $code | ) |
Возвращает true, в случае успешной авторизации, иначе false. Текст ошибки можно получить с помощью метода $this->getErrors()
| $code |
| cleanOldSessions | ( | ) |
Удаляет устаревшие сессии
|
protected |
| getAction | ( | ) |
Возвращает действие, которое будет выполнено после успешного подтверждения кода верификации
| VerificationException |
| getSession | ( | ) |
Возвращает объект текущей сессии верификации
| getSessionId | ( | ) |
Возвращает либо кастомный идентификатор сессии, либо стандартный системный идентификатор сессии
| getVerificationFormView | ( | ) |
Возвращает HTML формы подтврждения второго фактора
| \SmartyException | |
| VerificationException |
| initializeByToken | ( | $token | ) |
Загружает все параметры (action, phone, ...) по токену Возвращает true, в случае успешной зарузки сессии верификации
| string | $token |
| VerificationException |
| initializeSession | ( | $skip_if_resolved = true | ) |
Создает токен со всей информацией о текущей верификации в БД. Создает сессию или загружает существующую
| bool | $skip_if_resolved | Если true, то не будет переинициализировать успешно верифицированные ранее сессии |
| \RS\Event\Exception | |
| \RS\Exception |
| probablyCleanOldSessions | ( | $run_percent = 40 | ) |
Запускает очистку старых сессий по вероятности
| float | $ratio | Вероятность запуска очистки от 0 до 100 |
| reset | ( | ) |
Сбрасывает флаг подтверждения у сессии
| sendCode | ( | ) |
Отправляет код верификации
| \RS\Exception |
| setAction | ( | AbstractVerifyAction | $action | ) |
Устанавливает действие, которое будет выполнено после успешного подтверждения кода верификации
| AbstractVerifyAction | $action |
| VerificationException |
| setCreatorUserId | ( | $user_id | ) |
Устанавливает пользователя, который создал сессию верификации
| integer | $user_id |
| setEmail | ( | ) |
Устанавливает Email, на который необходимо отправить код верификации
| setPhone | ( | $phone | ) |
Устанавливает телефон, на который необходимо отправить код верификации
| string | $phone |
| setSessionId | ( | $session_id | ) |
Устанавливает кастомный идентификатор сессии. Нужен в случае, если у обработчика запроса нет реальной сессии. Пример использования в Телеграм ботах
| $session_id |
| setVerificationProvider | ( | AbstractProvider | $provider | ) |
Устанавливает провайдера, через которого будет отправлен код верификации
| AbstractProvider | $provider |