2023-10-03 17:55:41 +02:00
from django . contrib import admin
2023-10-28 13:14:13 +02:00
from . models import Registrant , Author , Category , Post , Contact
2024-02-09 23:37:46 +01:00
from django . core . mail import send_mail
from django . template . loader import render_to_string
2023-10-28 13:14:13 +02:00
class RegistrantAdmin ( admin . ModelAdmin ) :
list_display = ( ' name ' , )
2023-11-09 19:13:35 +01:00
readonly_fields = [ ' timestamp ' ]
2024-02-09 23:42:44 +01:00
list_filter = [ ' payed ' , ' rate_reduced ' , ' canceled ' , ' team ' , ' food ' ]
2024-02-09 23:37:46 +01:00
actions = [ ' welcome_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 )
2023-10-28 13:14:13 +02:00
admin . site . register ( Registrant , RegistrantAdmin )
admin . site . register ( Author )
admin . site . register ( Category )
admin . site . register ( Post )
admin . site . register ( Contact )