
from django.core.management.base import BaseCommand
import datetime

from modules.notifications.models import AdminMessage

from modules.members.signals import bulk_email


class Command(BaseCommand):

    def handle(self, *args, **options):

        today = datetime.date.today()

        scheduled_emails = AdminMessage.objects.filter(sent=False, scheduled_date__lte=today, test_recipient='').order_by('scheduled_date')

        for scheduled_email in scheduled_emails:

            print('Scheduled Email %s' % (scheduled_email.id))

            bulk_email.send(sender=None, request=False, admin_message=scheduled_email)

            scheduled_email.created = datetime.datetime.now()
            scheduled_email.sent = True
            scheduled_email.save(update_fields=['created', 'sent'])

            print('Email Sent')
