77from django .contrib .flatpages .models import FlatPage
88from django .db .models import Q , TimeField
99from django .forms import Textarea
10- from django .urls import reverse
11- from django .utils .html import format_html
12- from django .utils .safestring import mark_safe
1310from django .utils .translation import gettext_lazy as _
1411from martor .widgets import AdminMartorWidget
1512from reversion .admin import VersionAdmin
2623 UserAdminForm ,
2724 UserCreationAdminForm ,
2825)
29- from .models import Comment , StaffMember
26+ from .models import StaffMember
3027from .utils .actions import (
31- approve_comments ,
3228 archive_page ,
3329 normalize_late_start ,
3430 resend_approval_email ,
4238 set_event_visible ,
4339 set_post_archived ,
4440 set_post_unarchived ,
45- unapprove_comments ,
4641 wipe_club_bios ,
4742)
4843from .utils .admin import generic_post_formfield_for_manytomany
4944from .utils .announcements import request_announcement_approval
5045from .utils .filters import (
5146 BlogPostAuthorListFilter ,
5247 OrganizationListFilter ,
53- PostTypeFilter ,
5448)
5549
5650User = get_user_model ()
@@ -207,8 +201,8 @@ def get_form(self, request, obj=None, **kwargs):
207201
208202
209203class PostAdmin (admin .ModelAdmin ):
210- readonly_fields = ["like_count" , "save_count" , "comments" ]
211- fields = ["like_count" , "save_count" , "comments" ]
204+ readonly_fields = ["like_count" , "save_count" ]
205+ fields = ["like_count" , "save_count" ]
212206
213207 def like_count (self , obj ) -> int :
214208 return obj .like_count
@@ -223,15 +217,6 @@ def save_count(self, obj) -> int:
223217
224218 save_count .short_description = "Save Count"
225219
226- def comments (self , obj ):
227- objs = [
228- f'<a target="_blank" href="/admin/core/comment/{ comment .pk } ">{ comment .body [:10 ]} </a>'
229- for comment in obj .comments .all ()
230- ]
231- return mark_safe ("," .join (objs ))
232-
233- comments .short_description = "Comments"
234-
235220 class Meta :
236221 abstract = True
237222
@@ -714,40 +699,6 @@ class CustomFlatPageAdmin(FlatPageAdmin):
714699 )
715700
716701
717- class RaffleAdmin (admin .ModelAdmin ):
718- list_display = ["__str__" , "open_start" , "open_end" ]
719-
720-
721- class CommentAdmin (admin .ModelAdmin ):
722- formfield_overrides = {
723- django .db .models .TextField : {"widget" : AdminMartorWidget },
724- }
725- list_display = ["author" , "content_object" , "created_at" ]
726- search_fields = ["author__username" , "body" ]
727- actions = [approve_comments , unapprove_comments ]
728- readonly_fields = ["created_at" , "likes" ]
729- list_filter = ["live" , PostTypeFilter ]
730- actions_on_top = True
731- actions_on_bottom = True
732- date_hierarchy = "created_at"
733-
734- @staticmethod
735- def likes (obj : Comment ):
736- return obj .like_count
737-
738- def get_queryset (self , request ):
739- return Comment .objects .filter (author__isnull = False ).order_by ("-created_at" )
740-
741- def content_object (self , obj ):
742- url = reverse (
743- f"admin:{ obj .content_type .app_label } _{ obj .content_type .model } _change" ,
744- args = [obj .object_id ],
745- )
746- return format_html ('<a href="{}">{}</a>' , url , str (obj .content_object ))
747-
748- content_object .short_description = "Associated Post"
749-
750-
751702class BannerAdmin (admin .ModelAdmin ):
752703 list_display = ["name" , "start_date" , "end_date" ]
753704 search_fields = ["name" ]
@@ -760,14 +711,11 @@ class BannerAdmin(admin.ModelAdmin):
760711admin .site .register (models .SchedulePattern , SchedulePatternAdmin )
761712admin .site .register (models .ScheduleOverride , ScheduleOverrideAdmin )
762713admin .site .register (models .Organization , OrganizationAdmin )
763- admin .site .register (models .DailyAnnouncement , DailyAnnouncementAdmin )
764714admin .site .register (models .Announcement , AnnouncementAdmin )
765715admin .site .register (models .BlogPost , BlogPostAdmin )
766716admin .site .register (models .Exhibit , ExhibitAdmin )
767- # admin.site.register(models.Comment, CommentAdmin) atm it's not used, so we don't need it
768717admin .site .register (models .Tag , TagAdmin )
769718admin .site .register (models .Event , EventAdmin )
770- admin .site .register (models .Raffle , RaffleAdmin )
771719admin .site .register (models .StaffMember )
772720admin .site .register (models .Banner , BannerAdmin )
773721
0 commit comments