Commit 662a2c23 by Calen Pennington

fixup! Convert RecurringNudge emails to multiple tasks

parent fac4e387
...@@ -33,26 +33,26 @@ class ScheduleStartResolver(RecipientResolver): ...@@ -33,26 +33,26 @@ class ScheduleStartResolver(RecipientResolver):
def __init__(self, target_start_date): def __init__(self, target_start_date):
self.target_start_date = target_start_date self.target_start_date = target_start_date
def send(self, msg_type): def send(self, week):
schedule_day.delay(self.target_start_date) schedule_day.delay(week, self.target_start_date)
def build_email_context(self):
@task @task
def schedule_day(target_date): def schedule_day(week, target_date):
for hour in range(23): for hour in range(23):
schedule_hour.delay(target_date, hour) schedule_hour.delay(week, target_date, hour)
@task @task
def schedule_hour(target_date, hour): def schedule_hour(week, target_date, hour):
for minute in range(60): for minute in range(60):
schedule_minute.delay(target_date, hour, minute) schedule_minute.delay(week, target_date, hour, minute)
@task @task
def schedule_minute(target_date, hour, minute): def schedule_minute(week, target_date, hour, minute):
msg_type = RecurringNudge(week)
for (user, language, context) in schedules_for_minute(target_date, hour, minute): for (user, language, context) in schedules_for_minute(target_date, hour, minute):
msg = msg_type.personalize( msg = msg_type.personalize(
Recipient( Recipient(
...@@ -62,7 +62,12 @@ def schedule_minute(target_date, hour, minute): ...@@ -62,7 +62,12 @@ def schedule_minute(target_date, hour, minute):
language, language,
context context
) )
ace.send.delay(msg) schedule_send.delay(msg)
@task
def schedule_send(msg):
ace.send(msg)
def schedules_for_minute(target_date, hour, minute): def schedules_for_minute(target_date, hour, minute):
...@@ -118,6 +123,5 @@ class Command(BaseCommand): ...@@ -118,6 +123,5 @@ class Command(BaseCommand):
current_date = datetime.date(*[int(x) for x in options['date'].split('-')]) current_date = datetime.date(*[int(x) for x in options['date'].split('-')])
for week in (1, 2, 3, 4): for week in (1, 2, 3, 4):
msg_t = RecurringNudge(week)
target_date = current_date + datetime.timedelta(days=week * 7) target_date = current_date + datetime.timedelta(days=week * 7)
ScheduleStartResolver(target_date).send(msg_t) ScheduleStartResolver(target_date).send(week)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment