Mercurial > public > sg101
view messages/admin.py @ 993:19b5a6ae3bca
Use https for google maps (bandmap & membermap).
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Sun, 01 Nov 2015 16:43:53 -0600 |
parents | 4a4fa174a0ec |
children |
line wrap: on
line source
""" This file contains the automatic admin site definitions for the Message models. """ from django.contrib import admin from django.core.urlresolvers import reverse from messages.models import Flag, Message, Options import bio.badges class MessageAdmin(admin.ModelAdmin): list_display = ['sender', 'receiver', 'send_date', 'subject'] raw_id_fields = ['sender', 'receiver'] exclude = ['html'] date_hierarchy = 'send_date' list_display_links = ['subject'] class FlagAdmin(admin.ModelAdmin): list_display = ['__unicode__', 'flag_date', 'message_link'] date_hierarchy = 'flag_date' list_select_related = True readonly_fields = ['message', 'flag_date', 'comments', 'message_text'] actions = ['accept_flags'] def message_link(self, obj): return '<a href="{}">Message</a>'.format( reverse('admin:messages_message_change', args=[obj.message.id])) message_link.allow_tags = True message_link.short_description = 'Message' def message_text(self, obj): return obj.message.html message_text.allow_tags = True message_text.short_description = 'Message text' def accept_flags(self, request, qs): """This admin action awards a security pin to the user who reported the message and then deletes the flag object. """ count = qs.count() for flag in qs: bio.badges.award_badge(bio.badges.SECURITY_PIN, flag.message.receiver) flag.delete() self.message_user(request, "%s flag(s) acknowledged. You may want to mark users as spammers now." % count) accept_flags.short_description = "Accept selected flags" admin.site.register(Flag, FlagAdmin) admin.site.register(Message, MessageAdmin) admin.site.register(Options)