diff options
Diffstat (limited to 'lib/python2.7/site-packages/django/contrib/comments/admin.py')
-rw-r--r-- | lib/python2.7/site-packages/django/contrib/comments/admin.py | 86 |
1 files changed, 0 insertions, 86 deletions
diff --git a/lib/python2.7/site-packages/django/contrib/comments/admin.py b/lib/python2.7/site-packages/django/contrib/comments/admin.py deleted file mode 100644 index 391889c..0000000 --- a/lib/python2.7/site-packages/django/contrib/comments/admin.py +++ /dev/null @@ -1,86 +0,0 @@ -from __future__ import unicode_literals - -from django.contrib import admin -from django.contrib.auth import get_user_model -from django.contrib.comments.models import Comment -from django.utils.translation import ugettext_lazy as _, ungettext_lazy -from django.contrib.comments import get_model -from django.contrib.comments.views.moderation import perform_flag, perform_approve, perform_delete - - -class UsernameSearch(object): - """The User object may not be auth.User, so we need to provide - a mechanism for issuing the equivalent of a .filter(user__username=...) - search in CommentAdmin. - """ - def __str__(self): - return 'user__%s' % get_user_model().USERNAME_FIELD - - -class CommentsAdmin(admin.ModelAdmin): - fieldsets = ( - (None, - {'fields': ('content_type', 'object_pk', 'site')} - ), - (_('Content'), - {'fields': ('user', 'user_name', 'user_email', 'user_url', 'comment')} - ), - (_('Metadata'), - {'fields': ('submit_date', 'ip_address', 'is_public', 'is_removed')} - ), - ) - - list_display = ('name', 'content_type', 'object_pk', 'ip_address', 'submit_date', 'is_public', 'is_removed') - list_filter = ('submit_date', 'site', 'is_public', 'is_removed') - date_hierarchy = 'submit_date' - ordering = ('-submit_date',) - raw_id_fields = ('user',) - search_fields = ('comment', UsernameSearch(), 'user_name', 'user_email', 'user_url', 'ip_address') - actions = ["flag_comments", "approve_comments", "remove_comments"] - - def get_actions(self, request): - actions = super(CommentsAdmin, self).get_actions(request) - # Only superusers should be able to delete the comments from the DB. - if not request.user.is_superuser and 'delete_selected' in actions: - actions.pop('delete_selected') - if not request.user.has_perm('comments.can_moderate'): - if 'approve_comments' in actions: - actions.pop('approve_comments') - if 'remove_comments' in actions: - actions.pop('remove_comments') - return actions - - def flag_comments(self, request, queryset): - self._bulk_flag(request, queryset, perform_flag, - ungettext_lazy('%d comment was successfully flagged', - '%d comments were successfully flagged')) - flag_comments.short_description = _("Flag selected comments") - - def approve_comments(self, request, queryset): - self._bulk_flag(request, queryset, perform_approve, - ungettext_lazy('%d comment was successfully approved', - '%d comments were successfully approved')) - approve_comments.short_description = _("Approve selected comments") - - def remove_comments(self, request, queryset): - self._bulk_flag(request, queryset, perform_delete, - ungettext_lazy('%d comment was successfully removed', - '%d comments were successfully removed')) - remove_comments.short_description = _("Remove selected comments") - - def _bulk_flag(self, request, queryset, action, done_message): - """ - Flag, approve, or remove some comments from an admin action. Actually - calls the `action` argument to perform the heavy lifting. - """ - n_comments = 0 - for comment in queryset: - action(request, comment) - n_comments += 1 - - self.message_user(request, done_message % n_comments) - -# Only register the default admin if the model is the built-in comment model -# (this won't be true if there's a custom comment app). -if get_model() is Comment: - admin.site.register(Comment, CommentsAdmin) |