Added Send SMS function to traveller contacts. The send command is commented out.
This commit is contained in:
@@ -4,7 +4,8 @@ from datetime import date
|
||||
from django.contrib.admin import DateFieldListFilter, BooleanFieldListFilter
|
||||
from django.forms import widgets
|
||||
from django.contrib import admin
|
||||
from django.http import HttpResponse
|
||||
from django.http import HttpResponse, HttpResponseRedirect
|
||||
from django.shortcuts import render
|
||||
from django.urls import reverse
|
||||
from django.utils.html import format_html
|
||||
from django.utils.http import urlencode
|
||||
@@ -15,6 +16,7 @@ from .adminClone import CloneModelAdmin
|
||||
from .context_helpers import bus_roll_context, emergency_contacts_context, traveller_roll_context, \
|
||||
traveller_route_context, school_roll_context
|
||||
from .email_helpers import email_companies_bus_roll, render_to_pdf, email_school_roll
|
||||
from .form import SMSForm
|
||||
from .models import *
|
||||
|
||||
|
||||
@@ -60,6 +62,19 @@ class SchoolRollMixin:
|
||||
|
||||
class TravellerRollMixin:
|
||||
|
||||
def send_sms(self, request, queryset):
|
||||
if 'send' in request.POST:
|
||||
message = request.POST["message"]
|
||||
total = 0
|
||||
for traveller in queryset:
|
||||
total += traveller.send_sms(message, parents=True)
|
||||
self.message_user(request, f"SMS has been sent to {total} recipients")
|
||||
return HttpResponseRedirect(request.get_full_path())
|
||||
|
||||
form = SMSForm(initial={'_selected_action': queryset.values_list('id', flat=True)})
|
||||
|
||||
return render(request, 'admin/sms_form.html', context={'form': form, 'items': queryset})
|
||||
|
||||
def export_to_csv(self, request, queryset):
|
||||
traveller_list = traveller_roll_context(queryset)
|
||||
response = HttpResponse(content_type="text/csv")
|
||||
@@ -182,7 +197,7 @@ class TravellerAdmin(MyImportExportModelAdmin, CloneModelAdmin, admin.ModelAdmin
|
||||
"emergency_contact_B_phone", "emergency_contact_B_relation"]
|
||||
inlines = [TravellerRouteInline]
|
||||
readonly_fields = ["fare_paying", "created_on", "last_edit", "is_archived"]
|
||||
actions = ["export_to_csv", "yearly_rollover"]
|
||||
actions = ["export_to_csv", "send_sms", "yearly_rollover"]
|
||||
fieldsets = [
|
||||
(None, {
|
||||
'fields': [
|
||||
|
||||
Reference in New Issue
Block a user