Only allow sending of SMS to active students by default
This commit is contained in:
@@ -65,9 +65,20 @@ class TravellerRollMixin:
|
|||||||
def send_sms(self, request, queryset):
|
def send_sms(self, request, queryset):
|
||||||
if 'send' in request.POST:
|
if 'send' in request.POST:
|
||||||
message = request.POST["message"]
|
message = request.POST["message"]
|
||||||
|
send_to_parents = False
|
||||||
|
if request.POST.get("send_to_parents"):
|
||||||
|
send_to_parents = True
|
||||||
|
send_to_emergency_contacts = False
|
||||||
|
if request.POST.get("send_to_emergency_contacts"):
|
||||||
|
send_to_emergency_contacts = True
|
||||||
|
only_include_active_travellers = False
|
||||||
|
if request.POST.get("only_include_active_travellers"):
|
||||||
|
only_include_active_travellers = True
|
||||||
total = 0
|
total = 0
|
||||||
for traveller in queryset:
|
for traveller in queryset:
|
||||||
total += traveller.send_sms(message, parents=True)
|
if only_include_active_travellers and not traveller.is_active():
|
||||||
|
continue
|
||||||
|
total += traveller.send_sms(message, parents=send_to_parents, emergency=send_to_emergency_contacts)
|
||||||
self.message_user(request, f"SMS has been sent to {total} recipients")
|
self.message_user(request, f"SMS has been sent to {total} recipients")
|
||||||
return HttpResponseRedirect(request.get_full_path())
|
return HttpResponseRedirect(request.get_full_path())
|
||||||
|
|
||||||
|
|||||||
@@ -5,4 +5,5 @@ class SMSForm(forms.Form):
|
|||||||
_selected_action = forms.CharField(widget=forms.MultipleHiddenInput)
|
_selected_action = forms.CharField(widget=forms.MultipleHiddenInput)
|
||||||
send_to_parents = forms.BooleanField(required=False)
|
send_to_parents = forms.BooleanField(required=False)
|
||||||
send_to_emergency_contacts = forms.BooleanField(required=False)
|
send_to_emergency_contacts = forms.BooleanField(required=False)
|
||||||
|
only_include_active_travellers = forms.BooleanField(initial=True, required=False)
|
||||||
message = forms.CharField(label="Message", max_length=320, widget=forms.Textarea)
|
message = forms.CharField(label="Message", max_length=320, widget=forms.Textarea)
|
||||||
|
|||||||
Reference in New Issue
Block a user