"""Account app celery tasks.""" import logging from celery import shared_task from django.utils.translation import gettext_lazy as _ from . import models logging.basicConfig(format='[%(levelname)s] %(message)s', level=logging.INFO) logger = logging.getLogger(__name__) @shared_task def send_reset_password_email(request_id): """Send email to user for reset password.""" try: obj = models.ResetPasswordToken.objects.get(id=request_id) user = obj.user user.send_email(subject=_('Password resetting'), message=obj.get_reset_password_template()) except: logger.error(f'METHOD_NAME: {send_reset_password_email.__name__}\n' f'DETAIL: Exception occurred for ResetPasswordToken instance: ' f'{request_id}') @shared_task def send_confirm_email(user_id): """Send verification email to user.""" try: obj = models.User.objects.get(id=user_id) obj.send_email(subject=_('Email confirmation'), message=obj.get_confirm_email_template()) except: logger.error(f'METHOD_NAME: {send_confirm_email.__name__}\n' f'DETAIL: Exception occurred for user: {user_id}')