コード例 #1
0
ファイル: __init__.py プロジェクト: bobisjan/django-mailer
def send_html_mail(subject, message, message_html, from_email, recipient_list, priority="medium", fail_silently=False,
                   auth_user=None, auth_password=None, headers={}, attachments=None):
    """
    Function to queue HTML e-mails
    """

    from django.utils.encoding import force_text
    from django.core.mail import EmailMultiAlternatives
    from mailer.models import Message, PRIORITY_MAPPING

    priority = PRIORITY_MAPPING[priority]
    # need to do this in case subject used lazy version of ugettext
    subject = force_text(subject)
    message = force_text(message)
    message_html = force_text(message_html)

    email_obj = EmailMultiAlternatives(
        subject=subject,
        body=message,
        from_email=from_email,
        to=recipient_list,
        attachments=attachments,
        headers=headers
    )
    email_obj.attach_alternative(message_html, "text/html")
    db_msg = Message(
        priority=priority,
        subject=subject
    )
    db_msg.email = email_obj
    db_msg.set_recipients(recipient_list)
    db_msg.save()

    return 1
コード例 #2
0
def send_mail(subject,
              message,
              from_email,
              recipient_list,
              priority="medium",
              fail_silently=False,
              auth_user=None,
              auth_password=None,
              headers={},
              attachments=None):
    """
    Function to queue e-mails
    """

    from django.utils.encoding import force_text
    from django.core.mail import EmailMessage
    from mailer.models import Message, PRIORITY_MAPPING

    priority = PRIORITY_MAPPING[priority]
    subject = force_text(subject)
    message = force_text(message)

    email_obj = EmailMessage(subject=subject,
                             body=message,
                             from_email=from_email,
                             to=recipient_list,
                             attachments=attachments,
                             headers=headers)
    db_msg = Message(priority=priority, subject=subject)
    db_msg.email = email_obj
    db_msg.set_recipients(recipient_list)
    db_msg.save()
    return db_msg

    return 1
コード例 #3
0
ファイル: __init__.py プロジェクト: bobisjan/django-mailer
def send_mail(subject, message, from_email, recipient_list, priority="medium", fail_silently=False, auth_user=None,
              auth_password=None, headers={}, attachments=None):
    """
    Function to queue e-mails
    """

    from django.utils.encoding import force_text
    from django.core.mail import EmailMessage
    from mailer.models import Message, PRIORITY_MAPPING
    
    priority = PRIORITY_MAPPING[priority]
    subject = force_text(subject)
    message = force_text(message)

    email_obj = EmailMessage(
        subject=subject,
        body=message,
        from_email=from_email,
        to=recipient_list,
        attachments=attachments,
        headers=headers
    )
    db_msg = Message(
        priority=priority,
        subject=subject
    )
    db_msg.email = email_obj
    db_msg.set_recipients(recipient_list)
    db_msg.save()
    return db_msg

    return 1
コード例 #4
0
ファイル: backend.py プロジェクト: Agniy/django-mailer
 def send_messages(self, email_messages):
     num_sent = 0
     for email in email_messages:
         msg = Message()
         msg.email = email
         msg.save()
         num_sent += 1
     return num_sent
コード例 #5
0
 def send_messages(self, email_messages):
     db_messages = []
     for email in email_messages:
         msg = Message()
         msg.email = email
         db_messages.append(msg)
     Message.objects.bulk_create(db_messages)
     return len(db_messages)
コード例 #6
0
ファイル: backend.py プロジェクト: zenefits/django-mailer
 def send_messages(self, email_messages):
     num_sent = 0
     for email in email_messages:
         msg = Message()
         msg.email = email
         msg.save()
         num_sent += 1
     return num_sent
コード例 #7
0
 def send_messages(self, email_messages):
     db_messages = []
     for email in email_messages:
         msg = Message()
         msg.email = email
         db_messages.append(msg)
     Message.objects.bulk_create(db_messages)
     return len(db_messages)
コード例 #8
0
ファイル: backend.py プロジェクト: ecugol/django-mailer
 def send_messages(self, email_messages):
     num_sent = 0
     subject_prefix = getattr(settings, 'MAILER_EMAIL_SUBJECT_PREFIX', None)
     for email in email_messages:
         if subject_prefix:
             email.subject = u'%s %s' % (_(subject_prefix), email.subject)
         msg = Message()
         msg.email = email
         msg.save()
         num_sent += 1
     return num_sent
コード例 #9
0
ファイル: backend.py プロジェクト: danirus/django-mailer
    def send_messages(self, email_messages):
        num_sent = 0

        for email in email_messages:
            email.subject = email.subject.encode('utf-8')
            email.body = email.body.encode('utf-8')
            msg = Message()
            msg.email = email
            msg.save()
            num_sent += 1

        return num_sent
コード例 #10
0
ファイル: backend.py プロジェクト: skyhood/django-mailer
 def send_messages(self, email_messages):
     try:
         num_sent = 0
         for email in email_messages:
             msg = Message()
             msg.email = email
             msg.save()
             num_sent += 1
         return num_sent
     except Exception:
         if BACKUP_BACKEND:
             return BACKUP_BACKEND.send_messages(email_messages)
         else:
             raise
コード例 #11
0
def send_html_mail(subject,
                   message,
                   message_html,
                   from_email,
                   recipient_list,
                   priority='medium',
                   fail_silently=False,
                   auth_user=None,
                   auth_password=None,
                   headers=None,
                   attachments=None,
                   content_object=None,
                   tag=None,
                   reply_to_list=None):
    """
    Function to queue HTML e-mails
    """

    from django.utils.encoding import force_text
    from django.core.mail import EmailMultiAlternatives
    from mailer.models import Message, PRIORITY_MAPPING

    headers = headers or {}
    priority = PRIORITY_MAPPING[priority]
    # need to do this in case subject used lazy version of ugettext
    subject = force_text(subject)
    message = force_text(message)
    message_html = force_text(message_html)

    email_obj = EmailMultiAlternatives(subject=subject,
                                       body=message,
                                       from_email=from_email,
                                       to=recipient_list,
                                       attachments=attachments,
                                       headers=headers,
                                       reply_to=reply_to_list)
    email_obj.attach_alternative(message_html, 'text/html')
    db_msg = Message(priority=priority,
                     subject=subject,
                     content_object=content_object,
                     tag=tag)
    db_msg.email = email_obj
    db_msg.set_recipients(recipient_list)
    db_msg.set_reply_to(reply_to_list)
    db_msg.save()

    return db_msg
コード例 #12
0
def send_html_mail(subject, message, message_html, from_email, recipient_list, recipient_bcc_list,
                   priority="medium", fail_silently=False, auth_user=None,
                   auth_password=None):
    """
    Function to queue HTML e-mails
    """
    from django.utils.encoding import force_unicode
    from django.core.mail import EmailMultiAlternatives
    from mailer.models import make_message, Message
    
    priority = PRIORITY_MAPPING[priority]

    db_msg = Message(priority="0")
    db_msg.save()

    # need to do this in case subject used lazy version of ugettext
    subject = force_unicode(subject)
    message = force_unicode(message)

    # substitute in the message id for tracking
    message = message.format(id=db_msg.id)
    message_html = message_html.format(id=db_msg.id)

    msg = make_message(subject=subject,
                       body=message,
                       from_email=from_email,
                       to=recipient_list,
                       bcc=recipient_bcc_list,
                       priority=priority)


    email = msg.email
    email = EmailMultiAlternatives(email.subject, email.body, email.from_email, email.to, email.bcc)
    email.attach_alternative(message_html, "text/html")
    db_msg.email = email
    db_msg.priority = priority
    db_msg.save()
    return db_msg