[Envía] url de verficación de dirección e-mail

This commit is contained in:
Ricardo García Jiménez 2021-10-06 15:52:39 -05:00
parent 9ff946c4a9
commit d0de0b2090
5 changed files with 23 additions and 4 deletions

View file

@ -27,7 +27,7 @@ Estructura del archivo de configuración:
```json
{
"smtp": "smtp.google.com",
"smtp": "smtp.gmail.com",
"port": 587,
"address": "foo@gmail.com",
"password": "xxxxx"

View file

@ -75,6 +75,19 @@ class usersController {
require_once 'libs/emails.php';
$emails = new emails();
$emails -> prepare($data['email'], $data['name']);
// Genera una URL de verificación de dirección de e-mail.
$url = NABU_ROUTES['verifications'] . '&user=' . urlencode($data['username']) . '&key=' . $key;
$username = utils::escape($data['username']);
$body = require_once 'views/emails/verifications.php';
// Envía primero la URL de verificación de dirección de e-mail antes de registrar el usuario.
if (!$emails -> send('¡Ya casi está listo!', $body)) {
messages::errors('tuvimos un problema al enviar tu mensaje de verificación de e-mail', 500);
}
// Cifra la contraseña.
$data['password'] = password_hash($data['password'], PASSWORD_DEFAULT, self::cost);

View file

@ -28,8 +28,6 @@ class emails {
$config = json_decode($config, true);
exit(var_dump($config));
$keys = array('smtp', 'port', 'address', 'password');
foreach ($keys as $key) {

View file

@ -16,6 +16,6 @@ class utils {
}
static public function escape($str) {
//
return htmlentities($str, ENT_COMPAT | ENT_HTML5, 'UTF-8');
}
}

View file

@ -0,0 +1,8 @@
<?php
defined('NABU') || exit();
return '<p>¡Hola ' . $username . '!, espero que estés bien. Para completar tu registro en ' . NABU_DEFAULT['website-name'] .
', por favor confirma tu dirección de correo electrónico con el siguiente enlace:</p>' .
'<div><a href="' . $url . '">Confirmar mi dirección de e-mail</a></div>' .
'<p>Puedes ignorar este mensaje si no realizaste esta solicitud.</p>';