"""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(user_id, country_code): """Send email to user for reset password.""" try: user = models.User.objects.get(id=user_id) user.send_email(subject=_('Password resetting'), message=user.reset_password_template(country_code)) except: logger.error(f'METHOD_NAME: {send_reset_password_email.__name__}\n' f'DETAIL: Exception occurred for reset password: ' f'{user_id}') @shared_task def confirm_new_email_address(user_id, country_code): """Send email to user new email.""" try: user = models.User.objects.get(id=user_id) user.send_email(subject=_('Validate new email address'), message=user.confirm_email_template(country_code)) except: logger.error(f'METHOD_NAME: {confirm_new_email_address.__name__}\n' f'DETAIL: Exception occurred for user: {user_id}') @shared_task def change_email_address(user_id, country_code): """Send email to user new email.""" try: user = models.User.objects.get(id=user_id) user.send_email(subject=_('Validate new email address'), message=user.change_email_template(country_code)) except: logger.error(f'METHOD_NAME: {change_email_address.__name__}\n' f'DETAIL: Exception occurred for user: {user_id}')