def post(self, request, *args, **kwargs): if self.async_response is not None: return self.async_response if self.schedule_form.is_valid(): if not self.can_use_inbound_sms and self.schedule_form.uses_sms_survey: return HttpResponseBadRequest( "Cannot create or edit survey reminders because subscription " "does not have access to inbound SMS") broadcast, schedule = self.schedule_form.save_broadcast_and_schedule( ) if isinstance(schedule, AlertSchedule): refresh_alert_schedule_instances.delay(schedule.schedule_id, broadcast.recipients) elif isinstance(schedule, TimedSchedule): refresh_timed_schedule_instances.delay( schedule.schedule_id, broadcast.recipients, start_date=broadcast.start_date) else: raise TypeError("Expected AlertSchedule or TimedSchedule") return HttpResponseRedirect( reverse(BroadcastListView.urlname, args=[self.domain])) return self.get(request, *args, **kwargs)
def get_scheduled_broadcast_activate_ajax_response(self, active_flag, broadcast_id): broadcast = self.get_scheduled_broadcast(broadcast_id) TimedSchedule.objects.filter(schedule_id=broadcast.schedule_id).update( active=active_flag) refresh_timed_schedule_instances.delay(broadcast.schedule_id, broadcast.recipients, start_date=broadcast.start_date) return HttpResponse()
def get_scheduled_broadcast_activate_ajax_response(self, active_flag, broadcast_id): broadcast = self.get_scheduled_broadcast(broadcast_id) if not self.can_use_inbound_sms and broadcast.schedule.memoized_uses_sms_survey: return HttpResponseBadRequest( "Cannot create or edit survey reminders because subscription " "does not have access to inbound SMS") TimedSchedule.objects.filter(schedule_id=broadcast.schedule_id).update( active=active_flag) refresh_timed_schedule_instances.delay(broadcast.schedule_id, broadcast.recipients, start_date=broadcast.start_date) return HttpResponse()
def get_scheduled_broadcast_activate_ajax_response(self, active_flag, broadcast_id): broadcast = self.get_scheduled_broadcast(broadcast_id) if not self.can_use_inbound_sms and broadcast.schedule.memoized_uses_sms_survey: return HttpResponseBadRequest( "Cannot create or edit survey reminders because subscription " "does not have access to inbound SMS" ) TimedSchedule.objects.filter(schedule_id=broadcast.schedule_id).update(active=active_flag) refresh_timed_schedule_instances.delay( broadcast.schedule_id, broadcast.recipients, start_date=broadcast.start_date ) return HttpResponse()
def post(self, request, *args, **kwargs): if self.async_response is not None: return self.async_response if self.schedule_form.is_valid(): broadcast, schedule = self.schedule_form.save_broadcast_and_schedule( ) if isinstance(schedule, AlertSchedule): refresh_alert_schedule_instances.delay(schedule.schedule_id, broadcast.recipients) elif isinstance(schedule, TimedSchedule): refresh_timed_schedule_instances.delay( schedule.schedule_id, broadcast.recipients, start_date=broadcast.start_date) else: raise TypeError("Expected AlertSchedule or TimedSchedule") return HttpResponseRedirect( reverse(BroadcastListView.urlname, args=[self.domain])) return self.get(request, *args, **kwargs)
def post(self, request, *args, **kwargs): if self.async_response is not None: return self.async_response if self.schedule_form.is_valid(): if not self.can_use_inbound_sms and self.schedule_form.uses_sms_survey: return HttpResponseBadRequest( "Cannot create or edit survey reminders because subscription " "does not have access to inbound SMS" ) broadcast, schedule = self.schedule_form.save_broadcast_and_schedule() if isinstance(schedule, AlertSchedule): refresh_alert_schedule_instances.delay(schedule.schedule_id, broadcast.recipients) elif isinstance(schedule, TimedSchedule): refresh_timed_schedule_instances.delay(schedule.schedule_id, broadcast.recipients, start_date=broadcast.start_date) else: raise TypeError("Expected AlertSchedule or TimedSchedule") return HttpResponseRedirect(reverse(BroadcastListView.urlname, args=[self.domain])) return self.get(request, *args, **kwargs)
def refresh(): refresh_timed_schedule_instances.delay(broadcast.schedule_id, broadcast.recipients, start_date=broadcast.start_date)
def refresh(): refresh_timed_schedule_instances.delay( broadcast.schedule_id, broadcast.recipients, start_date=broadcast.start_date )
def refresh(): refresh_timed_schedule_instances.delay( broadcast.schedule_id.hex, broadcast.recipients, start_date_iso_string=json_format_date(broadcast.start_date))