Mudanza de repo
This commit is contained in:
28
api/cuser/utils.py
Normal file
28
api/cuser/utils.py
Normal file
@@ -0,0 +1,28 @@
|
||||
import uuid
|
||||
from django.conf import settings
|
||||
from django.core.mail import EmailMultiAlternatives
|
||||
from django.template.loader import render_to_string
|
||||
from django.urls import reverse
|
||||
from django.utils.http import urlsafe_base64_encode
|
||||
from django.utils.encoding import force_bytes
|
||||
from django.contrib.auth.tokens import default_token_generator
|
||||
|
||||
def send_activation_email(user, request):
|
||||
"""
|
||||
Envía un correo de activación al usuario con un link único.
|
||||
"""
|
||||
token = default_token_generator.make_token(user)
|
||||
uid = urlsafe_base64_encode(force_bytes(user.pk))
|
||||
activation_link = request.build_absolute_uri(
|
||||
reverse('cuser:activate', kwargs={'uidb64': uid, 'token': token})
|
||||
)
|
||||
subject = 'Activa tu cuenta'
|
||||
context = {
|
||||
'username': user.username,
|
||||
'activation_link': activation_link,
|
||||
}
|
||||
text_content = f'Hola {user.username},\nPor favor haz clic en el siguiente enlace para activar tu cuenta: {activation_link}'
|
||||
html_content = render_to_string('email/activation_email.html', context)
|
||||
email = EmailMultiAlternatives(subject, text_content, settings.DEFAULT_FROM_EMAIL, [user.email])
|
||||
email.attach_alternative(html_content, "text/html")
|
||||
email.send(fail_silently=False)
|
||||
Reference in New Issue
Block a user