remotes/origin/stage6
Alexander Burdeinyi 9 years ago
parent 48fd32feb0
commit 06e8f48665
  1. 23
      emencia/django/newsletter/mailer.py
  2. 5
      emencia/django/newsletter/utils/newsletter.py

@ -335,13 +335,16 @@ class NewsLetterSender(object):
logo_path = None logo_path = None
if obj is not None: if obj is not None:
if prefix == 'blog': if prefix == 'blog':
logo_path = getattr(obj.get_blog_preview2(), 'file_path') preview = obj.get_blog_preview2()
if preview and preview.file_path:
logo_path = preview.file_path.path
else: else:
logo = getattr(obj, 'logo') logo = getattr(obj, 'logo')
if not logo or not logo_path: if not logo and not logo_path:
logo_path = default_storage.path('newsletter/images/no-logo.png') logo_path = default_storage.path('newsletter/images/no-logo.png')
else: elif logo and not logo_path:
logo_path = logo.path logo_path = logo.path
print(logo, logo_path, obj)
try: try:
ctype, encoding = mimetypes.guess_type(logo_path) ctype, encoding = mimetypes.guess_type(logo_path)
@ -571,6 +574,20 @@ class NewsLetterSender(object):
params.update({'ab': self.ab_state}) params.update({'ab': self.ab_state})
ContactMailingStatus.objects.create(**params) ContactMailingStatus.objects.create(**params)
def test():
from django.utils.translation import activate
activate('ru')
n = Newsletter.objects.get(pk=119)
m = Mailer(n, test=True)
m.smtp_connect()
m.attachments = m.build_daily_attachments()
for ct in m.expedition_list:
m.build_preheader_ctx(ct)
announce_context = ct.get_announce_context_v2() if m.announce else None
message = m.build_message(ct, announce_context)
m.smtp.sendmail(m.newsletter.header_sender,
ct.email,
message.as_string())
class Mailer(NewsLetterSender): class Mailer(NewsLetterSender):
"""Mailer for generating and sending newsletters """Mailer for generating and sending newsletters

@ -35,8 +35,11 @@ def track_links(content, context):
'no-track' not in link_markup.get('rel', ''): 'no-track' not in link_markup.get('rel', ''):
link_href = link_markup['href'] link_href = link_markup['href']
link_title = link_markup.get('title', link_href) link_title = link_markup.get('title', link_href)
link, created = Link.objects.get_or_create(url=link_href, try:
link, created = Link.objects.get_or_create(url=link_href,
defaults={'title': link_title}) defaults={'title': link_title})
except Link.MultipleObjectsReturned:
link = Link.objects.filter(url=link_href)[0]
link_markup['href'] = 'http://%s%s' % (context['domain'], reverse('newsletter_newsletter_tracking_link', link_markup['href'] = 'http://%s%s' % (context['domain'], reverse('newsletter_newsletter_tracking_link',
args=[context['newsletter'].slug, args=[context['newsletter'].slug,
context['uidb36'], context['token'], context['uidb36'], context['token'],

Loading…
Cancel
Save