1
0
Fork 0

Adding 'resend message received' admin action.

This commit is contained in:
Adam Coddington 2013-01-27 04:58:09 -08:00
parent a44d6d87d9
commit 11eb186978
2 changed files with 14 additions and 1 deletions

View file

@ -1,13 +1,25 @@
import logging
from django.conf import settings
from django.contrib import admin
from django_mailbox.models import MessageAttachment, Message, Mailbox
from django_mailbox.signals import message_received
logger = logging.getLogger(__name__)
def get_new_mail(mailbox_admin, request, queryset):
for mailbox in queryset.all():
logger.debug('Receiving mail for %s' % mailbox)
mailbox.get_new_mail()
get_new_mail.short_description = 'Get new mail'
def resend_message_received_signal(message_admin, request, queryset):
for message in queryset.all():
logger.debug('Resending \'message_received\' signal for %s' % message)
message_received.send(sender=message_admin, message=message)
resend_message_received_signal.short_description = 'Re-send message received signal'
class MailboxAdmin(admin.ModelAdmin):
list_display = (
'name',
@ -39,6 +51,7 @@ class MessageAdmin(admin.ModelAdmin):
'in_reply_to',
'attachments',
)
actions = [resend_message_received_signal]
if getattr(settings, 'DJANGO_MAILBOX_ADMIN_ENABLED', True):
admin.site.register(Message, MessageAdmin)