diff options
| author | 2019-08-29 12:02:05 +0200 | |
|---|---|---|
| committer | 2019-08-29 12:02:05 +0200 | |
| commit | 75632e70f0d49048f4ce72a0fa8bbcbcd7b2d312 (patch) | |
| tree | 09c2f637ceedb76a30ad833555f02c2d50ee4863 /app/Mailers/UserMailer.php | |
| parent | ad44ff81694ff4cbcccc514a17351476a38aadd8 (diff) | |
Provide email address verification feature (#2481)
* Add an email field to the profile page
I reuse the `mail_login` from the configuration. I'm not sure if it's
useful today (I would say it was used when Persona login was available).
A good improvement would be to rename `mail_login` into `email` so it
would be more intuitive to use.
* Add boolean to the conf to force email validation
This commit only adds a configuration item.
* Add email during registration if email must be validated
* Set email token to validate when email changes
* Block access to FreshRSS if email is not validated
* Send email when address is changed
* Allow to resend the validation email
* Allow the user to change its email while blocked
* Document the email validation feature
* fixup! Allow the user to change its email while blocked
* tec: Autoload PHPMailer lib
* Validate email address format
* Add feedback on validation email resend action
* Allow to logout when user is blocked
* fix: Change default email "from"
* Reorganize i18n keys
* Complete all the locales with default english
* Hide sidebar (profile page) if email is not validated
* Check email requirements on registration
* Allow admin to specify email when creating users
* Don't check email format if value is empty
* Remove trailing comma in userController
Co-Authored-By: Alexandre Alapetite <alexandre@alapetite.fr>
* Set PHPMailer validator to html5 before sending email
* fixup! Remove trailing comma in userController
Diffstat (limited to 'app/Mailers/UserMailer.php')
| -rw-r--r-- | app/Mailers/UserMailer.php | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/app/Mailers/UserMailer.php b/app/Mailers/UserMailer.php new file mode 100644 index 000000000..5a2d39f1a --- /dev/null +++ b/app/Mailers/UserMailer.php @@ -0,0 +1,31 @@ +<?php + +/** + * Manage the emails sent to the users. + */ +class FreshRSS_User_Mailer extends Minz_Mailer { + public function send_email_need_validation($username, $user_config) { + $this->view->_path('user_mailer/email_need_validation.txt'); + + $this->view->username = $username; + $this->view->site_title = FreshRSS_Context::$system_conf->title; + $this->view->validation_url = Minz_Url::display( + array( + 'c' => 'user', + 'a' => 'validateEmail', + 'params' => array( + 'username' => $username, + 'token' => $user_config->email_validation_token + ) + ), + 'txt', + true + ); + + $subject_prefix = '[' . FreshRSS_Context::$system_conf->title . ']'; + return $this->mail( + $user_config->mail_login, + $subject_prefix . ' ' ._t('user.mailer.email_need_validation.title') + ); + } +} |
