from django.contrib import admin
+from django.contrib import messages
from django.utils.translation import ugettext_lazy as _
from . import models
class EmailSentInline(admin.TabularInline):
model = models.EmailSent
- fields = ['timestamp', 'email', 'subject']
- readonly_fields = ['timestamp', 'email', 'subject']
+ fields = ['timestamp', 'contact', 'subject']
+ readonly_fields = ['timestamp', 'contact', 'subject']
extra = 0
can_delete = False
show_change_link = True
]}),
]
+ def _test_email(self, request, obj):
+ if request.user.email:
+ obj.send_test_email(request.user.email)
+ messages.info(request, _('Test e-mail has been sent to %(email)s.') % {"email": request.user.email})
+ else:
+ messages.warning(request, _('You have no email set. Test e-mail not sent.'))
+
+ def response_add(self, request, obj):
+ self._test_email(request, obj)
+ return super().response_add(request, obj)
+
+ def response_change(self, request, obj):
+ self._test_email(request, obj)
+ return super().response_change(request, obj)
+
admin.site.register(models.EmailTemplate, EmailTemplateAdmin)
class EmailSentAdmin(admin.ModelAdmin):
list_filter = ['template']
- list_display = ['timestamp', 'template', 'email', 'subject']
- fields = ['timestamp', 'template', 'email', 'subject', 'body', 'hash_value']
+ list_display = ['timestamp', 'template', 'contact', 'subject']
+ fields = ['timestamp', 'template', 'contact', 'subject', 'body']
readonly_fields = fields
change_links = ['template']