aboutsummaryrefslogtreecommitdiffstats
path: root/pydis_site/apps/api/admin.py
diff options
context:
space:
mode:
authorGravatar scragly <[email protected]>2020-09-18 13:01:49 +1000
committerGravatar scragly <[email protected]>2020-09-18 13:01:49 +1000
commit8ed8b9ad62fd83e93d8dd5a136b7433f7240c4c2 (patch)
tree5d1dd307d43caeca596d551612fad038a4cf8bda /pydis_site/apps/api/admin.py
parentUpdate Role ModelAdmin to past changes, cleanup formatting. (diff)
Add OffensiveMessage Admin model.
Diffstat (limited to 'pydis_site/apps/api/admin.py')
-rw-r--r--pydis_site/apps/api/admin.py25
1 files changed, 24 insertions, 1 deletions
diff --git a/pydis_site/apps/api/admin.py b/pydis_site/apps/api/admin.py
index d32b4911..59cab78d 100644
--- a/pydis_site/apps/api/admin.py
+++ b/pydis_site/apps/api/admin.py
@@ -218,6 +218,30 @@ class OffTopicChannelNameAdmin(admin.ModelAdmin):
search_fields = ("name",)
[email protected](OffensiveMessage)
+class OffensiveMessageAdmin(admin.ModelAdmin):
+ """Admin formatting for the OffensiveMessage model."""
+
+ def message_jumplink(self, message: OffensiveMessage) -> SafeString:
+ """Message ID hyperlinked to the direct discord jumplink."""
+ return format_html(
+ '<a href="https://canary.discordapp.com/channels/267624335836053506/{0}/{1}">{1}</a>',
+ message.channel_id,
+ message.id
+ )
+
+ message_jumplink.short_description = "Message ID"
+
+ search_fields = ("id", "channel_id")
+ list_display = ("id", "channel_id", "delete_date")
+ fields = ("message_jumplink", "channel_id", "delete_date")
+ readonly_fields = ("message_jumplink", "channel_id")
+
+ def has_add_permission(self, *args) -> bool:
+ """Prevent adding from django admin."""
+ return False
+
+
@admin.register(Role)
class RoleAdmin(admin.ModelAdmin):
"""Admin formatting for the Role model."""
@@ -326,4 +350,3 @@ class UserAdmin(admin.ModelAdmin):
admin.site.register(BotSetting)
admin.site.register(DocumentationLink)
-admin.site.register(OffensiveMessage)