Класс предназначен для обеспечение двухфакторного подтверждения данных. Код верификации будет отправлен с помощью провайдера связи (Например, 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 |