src/hdalab/management/commands/send_moderation_mail.py
changeset 530 5d3b4e1e5b34
parent 481 efd1aaee4b0c
child 632 eff2287e93fb
equal deleted inserted replaced
529:f479d60ca502 530:5d3b4e1e5b34
     4 
     4 
     5 @author: ymh
     5 @author: ymh
     6 '''
     6 '''
     7 
     7 
     8 import logging
     8 import logging
       
     9 import os
     9 
    10 
    10 from django.conf import settings
    11 from django.conf import settings
    11 from django.contrib.auth import get_user_model
    12 from django.contrib.auth import get_user_model
    12 from django.core import mail
    13 from django.core import mail
    13 from django.core.mail.message import EmailMultiAlternatives
    14 from django.core.mail.message import EmailMultiAlternatives
    14 from django.core.management.base import NoArgsCommand
    15 from django.core.management.base import NoArgsCommand
    15 from django.template.base import TemplateDoesNotExist
    16 from django.template.base import TemplateDoesNotExist
    16 from django.template.loader import render_to_string
    17 from django.template.loader import render_to_string
       
    18 import premailer
    17 
    19 
    18 from hdalab.models.renkan import HdalabRenkan
    20 from hdalab.models.renkan import HdalabRenkan
    19 
    21 
    20 
    22 
    21 User = get_user_model()
    23 User = get_user_model()
    50                         'renkan_count': renkan_count,
    52                         'renkan_count': renkan_count,
    51                         'renkan_list': renkan_list,
    53                         'renkan_list': renkan_list,
    52                         'WEB_URL': settings.WEB_URL,
    54                         'WEB_URL': settings.WEB_URL,
    53                         'email_recipient': email_recipient
    55                         'email_recipient': email_recipient
    54                     }
    56                     }
    55                     msg_html = render_to_string(TEMPLATE_NAME+".txt", context)
    57                     msg_html = premailer.transform(render_to_string(TEMPLATE_NAME+".html", context), base_url=os.path.join(settings.STATIC_ROOT,'site'))
    56                     msg_txt = render_to_string(TEMPLATE_NAME+".html", context)
    58                     msg_txt = render_to_string(TEMPLATE_NAME+".txt", context)
    57                 except TemplateDoesNotExist:
    59                 except TemplateDoesNotExist:
    58                     logger.error("Mail template %s not found", TEMPLATE_NAME)
    60                     logger.error("Mail template %s not found", TEMPLATE_NAME)
    59                     return
    61                     return
    60                 except Exception as e:
    62                 except Exception as e:
    61                     logger.error("Error rendering template %s : %r", TEMPLATE_NAME, e)
    63                     logger.error("Error rendering template %s : %r", TEMPLATE_NAME, e)