utilities.py 1.1 KB

12345678910111213141516171819202122232425
  1. from django.template.loader import render_to_string
  2. from django.core.signing import Signer
  3. from datetime import datetime
  4. from os.path import splitext
  5. from config_project.settings import ALLOWED_HOSTS
  6. signer = Signer()
  7. def send_activation_notification(user):
  8. """ Непосредственную рассылку электронных писем выполняет эта функция"""
  9. if ALLOWED_HOSTS:
  10. host = 'http://' + ALLOWED_HOSTS[0]
  11. else:
  12. host = 'http://localhost:8000'
  13. context = {'user': user, 'host': host, 'sign': signer.sign(user.username)}
  14. subject = render_to_string('email/activation_letter_subject.txt', context)
  15. body_text = render_to_string('email/activation_letter_body.txt', context)
  16. #MY-TODO Здесь нужно будет раскомментировать и настраивать передачу почты!!!
  17. user.email_user(subject, body_text)
  18. def get_timestamp_path(instance, filename):
  19. dt = datetime.now()
  20. return '%s%s' % ('fail_' + dt.strftime("%Y-%m-%d_%H-%M-%S_%f"), splitext(filename)[1])