Регистрация по номеру телефона (без E-mail)

Аватар пользователя vlucas vlucas 7 апреля в 16:44

Камрады, как лучше всего сделать чтобы была возможность зарегистрироваться только используя номер телефона, т.е. e-mail был бы не обязательным.

При этом установлен email_registration чтобы не было логина, ну точнее он там есть, но автогенериться и поле скрывается.

Поле номера телефона уже есть с верификацией по смс.

Вопрос в том как по проще сделать e-mail не обязательным и если его не вводят, то я так понимаю придётся писать туда заглушку?

Как быть с востановлением пароля и другими сопутствующими вещами?

Комментарии

Аватар пользователя adano adano 7 апреля в 17:41

vlucas wrote: Как быть с востановлением пароля и другими сопутствующими вещами?

Переписывать/заменять поведение, валидации и т.д.
P.S. Кстати, лучше не отказываться, от /user/password. ИМХО
P.P.S. Да и все-таки, плохое решение делать приоритет на мобилы. Тоже, имхо. 3 месяца неактива и номер пропал (для РФ)

Аватар пользователя vlucas vlucas 7 апреля в 19:17

А что делать с e-amil - писать туда заглушку, потом её проверять?

Однако с маркетинговой точки зрения - это удобнее, и почти у всех больших игроков это есть. А то что номер теряется, ну тут и мыло может потеряться. Люди у нас не компьютерно грамотные в общей массе

Аватар пользователя adano adano 7 апреля в 20:36

А смысл в заглушке?
В любом случае, всё сведется к тому: выпиливается юзерский e-mail или нет.
Если да, то весь модуль user придется переписать.

Аватар пользователя adano adano 7 апреля в 21:32

не согласен, костыли тогда будут, типа:
404 на /user/password
display: none полей в /user/edit
глушить отправку почты (сейчас это обязательно, чтоб под спам-фильтры не попасть при отправке на несуществующие ящики)

Кстати, сколько ещё контриба существует с отправкой почты юзерам...

Короче, делать e-mail необязательным может быть очень больно + весь друпаловский мир (кроме РФ/СНГ) не готов к этому. имхо
Точнее, способ, как безболезненно отказаться от юзерской почты - я не нашел.

Я делал, что при регистрации е-мэил и телефон обязательны, войти можно что по почте, что по телефону (как в VK). За основу, как раз брал email_registration.

Аватар пользователя vlucas vlucas 7 апреля в 23:52

перехватить отправление письма и не отправлять если там фейк-мэйл - это не сложно.

display: none

зачем? если он захожет вводить e-mail - пусть вводит

Аватар пользователя vlucas vlucas 7 апреля в 23:53

и почему же 404 на /user/password?
Там тоже самое будет + номер телефона. Просто нужно сделать восстановление ещё и по номеру

Аватар пользователя vlucas vlucas 7 апреля в 23:55

А в /user/edit ничего не меняем кроме того, что если значение фейк-мейл то стираем его. Плюс в сабмите, если его нет - пишем фейк-майл

Аватар пользователя gun_dose gun_dose 8 апреля в 0:07

Возможно, я вам открою Америку, но емэйл и так не обязательный. Из-под админа можно создавать юзеров, не заполняя емэйл. Что касается восстановления пароля - ссылку "забыли пароль?" можно заменить на ссылку с выбором способа восстановления пароля. И там уже ссылки на дефолтную форму и на форму с восстановлением по смс.

Аватар пользователя vlucas vlucas 8 апреля в 0:16

Тогда получается можно смело делать необязательным, а реализовывать вход по номеру тел. и восстановление?

Аватар пользователя adano adano 8 апреля в 0:46

vlucas wrote: Тогда получается можно смело делать необязательным

От кейса зависит.
Если сам администрировать юзеров будешь, то возможно. Если полноценный аккаунт, то скорее нет, чем да.

Аватар пользователя adano adano 8 апреля в 1:25

Соответственно у тебя и запрет должен стоять на создание аккаунта юзерами.
Ну и на какие-нибудь вспомогательные user_load_by_mail можешь сразу забить.

Аватар пользователя adano adano 8 апреля в 1:59

ну логично, что если админ создает учетки, то они для какого-то внутреннего пользования...

Аватар пользователя gun_dose gun_dose 8 апреля в 8:27

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