from django.contrib import admin from .models import Registrant, Author, Category, Post, Contact from django.core.mail import send_mail from django.template.loader import render_to_string class RegistrantAdmin(admin.ModelAdmin): list_display = ('name','timestamp', 'payed', 'cake') readonly_fields = ['timestamp'] list_filter = ['payed', 'rate_reduced', 'canceled', 'team', 'food', 'cake'] actions = ['welcome_mail','preparation_mail'] @admin.action(description='Send welcome mail again...') def welcome_mail(self, request, queryset): for reg in queryset: msg_plain = render_to_string('welcome_mail.txt', {"form": reg}) msg_html = render_to_string('welcome_mail.html', {"form": reg}) send_mail(f'Herzlich Willkommen zur Im·Puls-Tagung, {reg.name}', msg_plain, 'buero@im-puls.org', [f"{reg.mail}"], fail_silently=False, html_message=msg_html) send_mail(f'Neue Anmeldung: {reg.name}', msg_plain, 'buero@im-puls.org', ["webmaster@denkena-consulting.com"], fail_silently=False, html_message=msg_html) @admin.action(description='Send preparation mail...') def preparation_mail(self, request, queryset): for reg in queryset: msg_plain = render_to_string('preparation_mail.txt', {"form": reg}) msg_html = render_to_string('preparation_mail.html', {"form": reg}) send_mail(f'Letzte Informationen zur Im·Puls-Tagung, {reg.name}', msg_plain, 'buero@im-puls.org', [f"{reg.mail}"], fail_silently=False, html_message=msg_html) admin.site.register(Registrant, RegistrantAdmin) admin.site.register(Author) admin.site.register(Category) admin.site.register(Post) admin.site.register(Contact)