Skip to content
This repository has been archived by the owner on Jan 19, 2021. It is now read-only.

Commit

Permalink
Merge pull request #1370 from akatsoulas/admin-filter-groups-that-expire
Browse files Browse the repository at this point in the history
[bug 1208368] Filter group exipration through the admin interface.
  • Loading branch information
akatsoulas committed Mar 10, 2016
2 parents ec6c753 + b71c410 commit 7a7aa0c
Showing 1 changed file with 18 additions and 1 deletion.
19 changes: 18 additions & 1 deletion mozillians/groups/admin.py
Expand Up @@ -96,6 +96,23 @@ def queryset(self, request, queryset):
return queryset


class InvalidateGroupFilter(SimpleListFilter):
"""Admin filter for groups that can expire."""
title = 'Group Expiration'
parameter_name = 'expires'

def lookups(self, request, model_admin):
return (('0', 'Group does not expire'),
('1', 'Group expires'),)

def queryset(self, request, queryset):
if self.value() is None:
return queryset
if self.value() == '1':
return queryset.filter(invalidation_days__isnull=False)
return queryset.filter(invalidation_days__isnull=True)


class GroupBaseEditAdminForm(forms.ModelForm):
merge_with = forms.ModelMultipleChoiceField(
required=False, queryset=None,
Expand Down Expand Up @@ -175,7 +192,7 @@ class GroupAdmin(GroupBaseAdmin):
'members_can_leave', 'visible', 'total_member_count', 'full_member_count',
'pending_member_count', 'pending_terms_member_count']
list_filter = [CuratedGroupFilter, EmptyGroupFilter, FunctionalAreaFilter, VisibleGroupFilter,
NoURLFilter]
NoURLFilter, InvalidateGroupFilter]
readonly_fields = ['url', 'total_member_count', 'full_member_count', 'pending_member_count',
'pending_terms_member_count', 'max_reminder']

Expand Down

0 comments on commit 7a7aa0c

Please sign in to comment.