Merge branch 'master' of gitlab.com:lilcity/backend into feature/LIL-680

remotes/origin/feature/LIL-711
gzbender 7 years ago
commit 30b476746a
  1. 7
      apps/notification/tasks.py
  2. 83
      apps/notification/templates/notification/email/certificate.html
  3. 2
      docker/.env.example
  4. 2
      docker/.env.review
  5. 14
      project/settings.py

@ -43,7 +43,10 @@ def send_certificates(email=None, date=None, dry_run=False):
for user_id in users:
if user_id in notified_users:
continue
un = user_notifications.get(user_id, UserNotification(user_id=user_id))
if not user_id in user_notifications:
un = UserNotification.objects.create(user_id=user_id)
else:
un = user_notifications.get(user_id)
print(un.user.email)
if dry_run:
continue
@ -54,7 +57,7 @@ def send_certificates(email=None, date=None, dry_run=False):
file = open(staticfiles_storage.path(path_pattern % un.certificate_number), 'rb')
try:
send_email('Грамота от Lil School', un.user.email, 'notification/email/certificate.html',
attachments=[(file.name, file.read(), 'image/jpeg')])
attachments=[(file.name, file.read(), 'image/jpeg')], user_notification=un)
except:
print('Not OK')
continue

@ -1,28 +1,71 @@
{% extends "notification/email/_base.html" %}
{% block content %}
<p style="margin: 0 0 20px">Дорогие родители!</p>
<p style="margin: 0 0 20px">Привет!</p>
<div style="margin-bottom: 10px;">
<p>Это письмо адресовано вашим детям - ученикам Lil School.
Если они еще не умеют читать, прочитайте им наше послание, громко и с выражением.<br>
Спасибо!
{% if not user_notification or user_notification.certificate_number == 1 %}
<p>
Поздравляем! Вы прошли месяц обучения в Lil School.<br>
К письму прикреплена грамота. Распечатайте её и вручите вашим детям.<br>
Ждём вас в следующем месяце на наших творческих занятиях!
</p>
{% endif %}
{% if user_notification and user_notification.certificate_number == 2 %}
<p>
Вы помните, что каждый месяц вам приходит грамота за прекрасную учебу в нашей творческой школе?<br>
Скачивайте. Распечатывайте. И соберите свою коллекцию!
</p>
{% endif %}
{% if user_notification and user_notification.certificate_number == 3 %}
<p>
Вам понравился наш творческий месяц?<br>
В письме вы найдёте грамоту, она для вашей семьи.<br>
Как здорово, что у нас есть такие ученики!<br>
Ждём вас в следующем месяце.
</p>
{% endif %}
{% if user_notification and user_notification.certificate_number == 4 %}
<p>
Прошёл целый месяц обучения на платформе Lil School - месяц творчества, креатива и невероятных идей.<br>
Во вложении вас ждёт грамота.<br>
До встречи на занятиях!
</p>
{% endif %}
{% if user_notification and user_notification.certificate_number == 5 %}
<p>
Ваша грамота за успехи в учебе в Lil School ждёт вас во вложении.<br>
Скорее распечатайте её!<br>
Вам есть чем гордится!<br>
До встречи в следующем месяце!
</p>
{% endif %}
{% if user_notification and user_notification.certificate_number == 6 %}
<p>
Как здорово вы потрудились на занятиях в этом месяце!<br>
И наша грамота уже ждёт вас!<br>
Спасибо за творчество и креатив.<br>
Ждём вас в следующем месяце!
</p>
{% endif %}
{% if user_notification and user_notification.certificate_number == 7 %}
<p>
Какой классный месяц у нас был! Вместе мы очень здорово и креативно потрудились.<br>
Во вложении вас ждёт заслуженная грамота!<br>
До встречи на уроках!
</p>
{% endif %}
{% if user_notification and user_notification.certificate_number == 8 %}
<p>
Месяц творчества и креатива пролетел как один миг! А как много работ мы вместе сделали!<br>
Вы - большие молодцы.<br>
Во вложении ваш ждёт грамота!<br>
До встречи на занятиях.
</p>
{% endif %}
</div>
<div style="margin-bottom: 10px; font-style: italic;">
Привет, друг!<br>
Вот и прошёл месяц обучения на платформе «Lil School» - месяц удивительных, творческих приключений и открытий.
Ты так много узнал и столько всего нарисовал!
Как же здорово у тебя все получается!
</div>
<div style="margin-bottom: 10px; font-style: italic;">
Скорее смотри что прикреплено к письму. Да это же ГРАМОТА! Ее можно распечатать и повесить
на видное место в твоей комнате.
Можно показать ее друзьям вместе со всеми работами, над которыми ты так трудился.
</div>
<div style="margin-bottom: 10px; font-style: italic;">
Поздравляем! Мы ждём тебя в новом месяце в рядах наших учеников.
</div>
<div style="margin-bottom: 10px; font-style: italic;">
Команда «Lil School».
<div style="margin-bottom: 10px;">
<p>
Команда «Lil School».
</p>
</div>
{% endblock content %}

@ -9,7 +9,7 @@ POSTGRES_PASSWORD=GPVs/E/{5&qe
DJANGO_SETTINGS_MODULE=project.settings
DATABASE_SERVICE_HOST=db
SECRET_KEY=jelm*91lj(_-o20+6^a+bgv!4s6e_efry^#+f#=1ak&s1xr-2j
MAILGUN_API_KEY=key-ec6af2d43d031d59bff6b1c8fb9390cb
MAILGUN_API_KEY=key-ec6af2d43d031d59bff6b1c8fb9390c
MAILGUN_SENDER_DOMAIN=mail.9ev.ru
DEFAULT_FROM_EMAIL=postmaster@mail.9ev.ru
TWILIO_ACCOUNT=ACdf4a96b776cc764bc3ec0f0e136ba550

@ -9,7 +9,7 @@ POSTGRES_PASSWORD=GPVs/E/{5&qe
DJANGO_SETTINGS_MODULE=project.settings
DATABASE_SERVICE_HOST=db
SECRET_KEY=jelm*91lj(_-o20+6^a+bgv!4s6e_efry^#+f#=1ak&s1xr-2j
MAILGUN_API_KEY=key-ec6af2d43d031d59bff6b1c8fb9390cb
MAILGUN_API_KEY=key-ec6af2d43d031d59bff6b1c8fb9390c
MAILGUN_SENDER_DOMAIN=mail.9ev.ru
DEFAULT_FROM_EMAIL=postmaster@mail.9ev.ru
TWILIO_ACCOUNT=ACdf4a96b776cc764bc3ec0f0e136ba550

@ -185,8 +185,8 @@ LOGIN_URL = '/'
# https://github.com/anymail/django-anymail
ANYMAIL = {
'MAILGUN_API_KEY': os.getenv('MAILGUN_API_KEY', 'key-ec6af2d43d031d59bff6b1c8fb9390cb'),
'MAILGUN_SENDER_DOMAIN': os.getenv('MAILGUN_SENDER_DOMAIN', 'mail.9ev.ru'),
'MAILGUN_API_KEY': os.getenv('MAILGUN_API_KEY', ''),
'MAILGUN_SENDER_DOMAIN': os.getenv('MAILGUN_SENDER_DOMAIN', ''),
}
EMAIL_BACKEND = 'anymail.backends.mailgun.EmailBackend'
DEFAULT_FROM_EMAIL = os.getenv('DEFAULT_FROM_EMAIL', 'postmaster@mail.9ev.ru')
@ -250,11 +250,11 @@ CELERY_BEAT_SCHEDULE = {
'schedule': timedelta(hours=1),
'args': (),
},
'send_certificates': {
'task': 'apps.notification.tasks.send_certificates',
'schedule': crontab(hour=19),
'args': (),
},
#'send_certificates': {
# 'task': 'apps.notification.tasks.send_certificates',
# 'schedule': crontab(hour=19),
# 'args': (),
#},
'sendgrid_update_recipients': {
'task': 'apps.notification.tasks.sendgrid_update_recipients',
'schedule': crontab(minute=0, hour=3),

Loading…
Cancel
Save