From 94daad6fc4716bd253b65bd9af29dd64bac49bb9 Mon Sep 17 00:00:00 2001 From: Nazar Kotjuk Date: Thu, 5 Nov 2015 16:01:21 +0200 Subject: [PATCH] 123 --- emencia/django/newsletter/mailer.py | 3 +-- .../newsletter/management/commands/send_newsletter.py | 10 ++++++++-- emencia/django/newsletter/views/admin_views.py | 3 ++- proj/settings.py | 4 ++++ templates/admin/newsletters/newsletter_list.html | 2 +- templates/client/accounts/user_events.html | 2 +- .../client/includes/conference/conference_object.html | 4 ++-- .../client/includes/exposition/exposition_object.html | 4 ++-- 8 files changed, 21 insertions(+), 11 deletions(-) diff --git a/emencia/django/newsletter/mailer.py b/emencia/django/newsletter/mailer.py index 46980a1a..29ced6c5 100644 --- a/emencia/django/newsletter/mailer.py +++ b/emencia/django/newsletter/mailer.py @@ -381,10 +381,9 @@ class Mailer(NewsLetterSender): else: announce_context = None - message = self.build_message(contact, announce_context) try: if send: - + message = self.build_message(contact, announce_context) self.smtp.sendmail(self.newsletter.header_sender, contact.email, message.as_string()) diff --git a/emencia/django/newsletter/management/commands/send_newsletter.py b/emencia/django/newsletter/management/commands/send_newsletter.py index e069d2f9..b583bdea 100644 --- a/emencia/django/newsletter/management/commands/send_newsletter.py +++ b/emencia/django/newsletter/management/commands/send_newsletter.py @@ -23,10 +23,16 @@ class Command(NoArgsCommand): for newsletter in Newsletter.objects.exclude( status=Newsletter.DRAFT).exclude(status=Newsletter.SENT): mailer = Mailer(newsletter, verbose=verbose) + if mailer.can_send: - if verbose: - print 'Start emailing %s' % newsletter.title + + #if verbose: + # with open('/tmp/cron.log', 'a') as f:f.write('Start emailing %s\n' % newsletter.title) + # print 'Start emailing %s' % newsletter.title + mailer.run() + + if verbose: print 'End session sending' diff --git a/emencia/django/newsletter/views/admin_views.py b/emencia/django/newsletter/views/admin_views.py index 6ad72ab6..d55c7cee 100644 --- a/emencia/django/newsletter/views/admin_views.py +++ b/emencia/django/newsletter/views/admin_views.py @@ -272,7 +272,8 @@ class NewsletterStatistics(DetailView): sent = self.object.contactmailingstatus_set.filter(status=ContactMailingStatus.SENT).count() errors = self.object.contactmailingstatus_set.filter(status=ContactMailingStatus.ERROR).count() opened = self.object.contactmailingstatus_set.filter(status=ContactMailingStatus.OPENED).count() - unsubscribed = self.object.contactmailingstatus_set.filter(status=ContactMailingStatus.UNSUBSCRIPTION).count() + unsubscribed = self.object.contactmailingstatus_set.filter(status=ContactMailingStatus.UNSUBSCRIPTION).\ + values_list('contact', flat=True).distinct().count() no_data = self.object.contactmailingstatus_set.filter(status=ContactMailingStatus.ANNOUNCE_NO_DATA).count() links = self.object.contactmailingstatus_set.filter(status=ContactMailingStatus.LINK_OPENED).count() CMS = ContactMailingStatus diff --git a/proj/settings.py b/proj/settings.py index 2b385ac6..d155829f 100644 --- a/proj/settings.py +++ b/proj/settings.py @@ -428,6 +428,10 @@ LOGGING = { 20 2,14 * * * /usr/bin/python /var/www/proj/manage.py banner_log_check_previous_day # update hotels prices 20 1 * * 6 /usr/bin/python /var/www/proj/manage.py update_hotels_price +# newsletter +20 * * * * /usr/bin/python /var/www/proj/manage.py send_newsletter +40 6 * * * /usr/bin/python /var/www/proj/manage.py newsletter_contacts_remove_notactivated + """ THUMBNAIL_DEBUG = DEBUG diff --git a/templates/admin/newsletters/newsletter_list.html b/templates/admin/newsletters/newsletter_list.html index 375efdef..54b824b2 100644 --- a/templates/admin/newsletters/newsletter_list.html +++ b/templates/admin/newsletters/newsletter_list.html @@ -36,7 +36,7 @@ Изменить История - {% if item.status == item.SENT or item.status == item.CANCELED %}Статистика{% endif %} + Статистика {% endfor %} diff --git a/templates/client/accounts/user_events.html b/templates/client/accounts/user_events.html index 3c2cb696..6d481bd3 100644 --- a/templates/client/accounts/user_events.html +++ b/templates/client/accounts/user_events.html @@ -6,7 +6,7 @@ {% block bread_scrumbs %} {% endblock %} diff --git a/templates/client/includes/conference/conference_object.html b/templates/client/includes/conference/conference_object.html index f3ac8439..2ed2e27b 100644 --- a/templates/client/includes/conference/conference_object.html +++ b/templates/client/includes/conference/conference_object.html @@ -19,10 +19,10 @@
{% if event.visitors %} - {{ event.visitors }} + {{ event.visitors }} {% endif %} {% if event.members %} - {{ event.members }} + {{ event.members }} {% endif %}
diff --git a/templates/client/includes/exposition/exposition_object.html b/templates/client/includes/exposition/exposition_object.html index 1847213f..d88ff286 100644 --- a/templates/client/includes/exposition/exposition_object.html +++ b/templates/client/includes/exposition/exposition_object.html @@ -21,10 +21,10 @@
{% if exposition.visitors %} - {{ exposition.visitors }} + {{ exposition.visitors }} {% endif %} {% if exposition.members %} - {{ exposition.members }} + {{ exposition.members }} {% endif %}