def handle(self, *args, **options): """command""" # look for emailing to be sent verbose = options.get('verbosity', 1) email_addresses = options.get('email_addresses', '') if email_addresses: email_list = email_addresses.split(";") else: print( 'usage: python manage.py send_newsletter [email protected];[email protected]' ) sendings = NewsletterSending.objects.filter( scheduling_dt__lte=datetime.now(), sending_dt=None) for sending in sendings: if verbose: print('send_newsletter {1} to {0} addresses'.format( len(email_list), sending.newsletter)) nb_sent = send_newsletter(sending.newsletter, email_list) if verbose: print(nb_sent, "emails sent") sending.sending_dt = datetime.now() sending.save()
def handle(self, *args, **options): # look for emailing to be sent verbose = options.get("verbosity", 1) if len(args) > 0: dests = args[0].split(";") else: print "usage: python manage.py send_newsletter [email protected];[email protected]" sendings = NewsletterSending.objects.filter(scheduling_dt__lte=datetime.now(), sending_dt=None) for sending in sendings: if verbose: print "send_newsletter {1} to {0} addresses".format(len(dests), sending.newsletter) nb_sent = send_newsletter(sending.newsletter, dests) if verbose: print nb_sent, "emails sent" sending.sending_dt = datetime.now() sending.save()
def handle(self, *args, **options): """command""" # look for emailing to be sent verbose = options.get('verbosity', 1) email_addresses = options.get('email_addresses', '') if email_addresses: email_list = email_addresses.split(";") else: print('usage: python manage.py send_newsletter [email protected];[email protected]') sendings = NewsletterSending.objects.filter(scheduling_dt__lte=datetime.now(), sending_dt=None) for sending in sendings: if verbose: print('send_newsletter {1} to {0} addresses'.format(len(email_list), sending.newsletter)) nb_sent = send_newsletter(sending.newsletter, email_list) if verbose: print(nb_sent, "emails sent") sending.sending_dt = datetime.now() sending.save()
def test_newsletter(request, newsletter_id): """test newsletter""" context = {} newsletter = get_object_or_404(models.Newsletter, id=newsletter_id) context["newsletter"] = newsletter if not request.user.has_perm('can_edit_newsletter', newsletter): raise PermissionDenied form = NewsletterHandleRecipients(data=request.POST) context["form"] = form if request.method == "POST": if form.is_valid(): choix = form.cleaned_data["choix"] email = form.cleaned_data["email"] email2 = form.cleaned_data["email2"] if choix: dests = choix if email: dests.append(email) if email2: if email != email2: dests.append(email2) else: dests = [] if email: dests.append(email) if email2 and email != email2: dests.append(email2) if not email and not email2: messages.add_message( request, messages.ERROR, _("Cochez au moins une case ou remplissez un champ email.") ) return HttpResponseRedirect(newsletter.get_absolute_url()) try: nb_sent = send_newsletter(newsletter, dests) messages.add_message( request, messages.SUCCESS, _("The test email has been sent to {0} addresses: {1}").format(nb_sent, dests) ) return HttpResponseRedirect(newsletter.get_absolute_url()) except Exception: messages.add_message(request, messages.ERROR, _("An error occured! Please contact your support.")) logger.error( 'Internal Server Error: {0}'.format(request.path), exc_info=sys.exc_info, extra={ 'status_code': 500, 'request': request } ) return HttpResponseRedirect(newsletter.get_absolute_url()) return render(request, 'coop_cms/popup_test_newsletter.html', context)