Я немного запутался в процессе, когда администратор меняет адрес электронной почты пользователя.
Некоторые моменты мне просто непонятны, и есть одна ошибка (именно поэтому я публикую это в Contribute > Bug, а не в Support).
- Согласно этому pull request, всё должно работать следующим образом.
Когда администратор меняет адрес электронной почты пользователя со страницы настроек этого пользователя:
- Пользователю не будет отправлено письмо для подтверждения смены адреса электронной почты. Вместо этого ему будет отправлено письмо для сброса пароля, чтобы он мог установить пароль для своей учётной записи на новый адрес электронной почты.
- Пользователю всё равно будет отправлено письмо на старый адрес электронной почты с уведомлением о том, что адрес был изменён.
#1 Я не понимаю, почему отправляется письмо для сброса пароля («чтобы они могли установить пароль для своей учётной записи»). Им ведь не нужно менять пароль? И пользовательский опыт запутанный: пользователь не ожидает письма для сброса пароля, и нет сопутствующего текста — там просто написано: «Кто-то запросил сброс пароля на [название форума]».
#2 Это письмо для сброса пароля отправляется на старый адрес вместо нового адреса электронной почты.
Хотя адрес электронной почты пользователя обновляется в update_user_email на строке 46, объект @user не перезагружается и всё ещё содержит старый адрес электронной почты.
#3 Если администратор является действующим пользователем, а пользователь, над которым производится действие, не является сотрудником, то, согласно вышеуказанной спецификации, письмо с подтверждением не отправляется. Тем не менее, после изменения адреса электронной почты администратор получает следующее сообщение об успехе: «Мы отправили письмо на этот адрес. Пожалуйста, следуйте инструкциям для подтверждения».
#4 Почему пользователю не нужно подтверждать свой новый адрес электронной почты? В pull request есть ссылка на эту тему, но кажется, что из неё пропущено много сообщений. Однако в теме всё ещё упоминается: «Для обычного пользователя единственным адресом электронной почты, который должен быть подтверждён, является НОВЫЙ адрес». РЕДАКТИРОВАНИЕ: Ой, подождите, см. #6 / #7.
#5 Этот процесс, когда администратор меняет адрес электронной почты пользователя, обычно используется, когда старый адрес больше недоступен (я предполагаю?). Почему тогда всё ещё отправляется уведомление на старый адрес?
#6 Когда этот пользователь пытается войти в систему, появляется всплывающее окно:
Вы пока не можете войти в систему. Ранее мы отправили вам письмо с активацией на старый адрес электронной почты. Пожалуйста, следуйте инструкциям в этом письме, чтобы активировать свою учётную запись.
- такого письма не отправлялось
- упоминается старый адрес электронной почты
При нажатии кнопки «Отправить повторно» появляется сообщение:
Мы отправили вам ещё одно письмо с активацией на новый адрес электронной почты. Оно может прийти через несколько минут; обязательно проверьте папку «Спам».
#7 Это письмо с активацией действительно приходит на новый адрес электронной почты и называется «Подтвердите свою новую учётную запись» (а не «Подтвердите свой новый адрес электронной почты»).
Разве это не должно быть просто так:
Одно письмо отправляется на новый адрес электронной почты с сообщением: «Ваш адрес электронной почты был изменён [имя администратора]. Пожалуйста, нажмите на следующую ссылку для подтверждения [ссылка]».
Редактирование: #8 Адрес электронной почты можно изменить администратору на публичной странице пользователя (/u/username), но не со страницы администратора для этого пользователя (/admin/users/id/username). Это противоречит интуиции.






