Skip to content

Commit

Permalink
[#104] clarified Admin filters names in member.admin
Browse files Browse the repository at this point in the history
  • Loading branch information
2ynn committed Mar 30, 2022
1 parent e24cbd2 commit d6d2db5
Show file tree
Hide file tree
Showing 3 changed files with 35 additions and 18 deletions.
16 changes: 9 additions & 7 deletions saskatoon/harvest/api.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,16 @@
from rest_framework import viewsets
from rest_framework.response import Response
from django_filters import rest_framework as filters
from .filters import ( HarvestFilter, PropertyFilter, EquipmentFilter,
OrganizationFilter, CommunityFilter)
from .forms import ( RequestForm, RFPManageForm, CommentForm, HarvestYieldForm )
from harvest.filters import (HarvestFilter, PropertyFilter, EquipmentFilter,
OrganizationFilter, CommunityFilter)
from harvest.forms import (RequestForm, RFPManageForm, CommentForm, HarvestYieldForm)
from member.models import AuthUser, Organization
from .models import Equipment, Harvest, HarvestYield, Property, RequestForParticipation, Comment
from .serializers import ( HarvestSerializer, PropertySerializer, EquipmentSerializer,
CommunitySerializer, BeneficiarySerializer, RequestForParticipationSerializer )
from .utils import get_similar_properties
from harvest.models import (Equipment, Harvest, HarvestYield, Property,
RequestForParticipation, Comment)
from harvest.serializers import (HarvestSerializer, PropertySerializer, EquipmentSerializer,
CommunitySerializer, BeneficiarySerializer,
RequestForParticipationSerializer)
from harvest.utils import get_similar_properties


def get_filter_context(viewset):
Expand Down
13 changes: 7 additions & 6 deletions saskatoon/member/admin.py
Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
# coding: utf-8

from django import forms
from django.contrib import admin
from django.contrib.auth.admin import UserAdmin
from django.contrib.auth.forms import (UserCreationForm, UserChangeForm,
ReadOnlyPasswordHashField)
from member.models import (AuthUser, Actor, Language, Person, Organization,
Neighborhood, City, State, Country)
from member.filters import GroupFilter, PropertyFilter, PickLeaderFilter, VolunteerFilter
from member.filters import (UserGroupAdminFilter, UserHasPropertyAdminFilter,
UserHasLedPicksAdminFilter, UserHasVolunteeredAdminFilter)
from django.contrib.auth.models import Group


class CustomUserCreationForm(UserCreationForm):
"""A form for creating new users. Includes all the required fields,
plus a repeated password."""
Expand Down Expand Up @@ -99,10 +100,10 @@ def get_groups(self, user):
get_groups.short_description = "group(s)"


list_filter = (GroupFilter,
PropertyFilter,
PickLeaderFilter,
VolunteerFilter,
list_filter = (UserGroupAdminFilter,
UserHasPropertyAdminFilter,
UserHasLedPicksAdminFilter,
UserHasVolunteeredAdminFilter,
'is_staff',
'is_superuser',
'is_active'
Expand Down
24 changes: 19 additions & 5 deletions saskatoon/member/filters.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,12 @@
from harvest.models import Property, Harvest, RequestForParticipation
from django.contrib.auth.models import Group

class GroupFilter(SimpleListFilter):

# # ADMIN filters # #

class UserGroupAdminFilter(SimpleListFilter):
"""Checks if AuthUser belongs to Group"""

title = 'Group Filter'
parameter_name = 'group'
default_value = None
Expand All @@ -19,13 +24,16 @@ def queryset(self, request, queryset):
return queryset.filter(groups__in=self.value())
return queryset

class PropertyFilter(SimpleListFilter):

class UserHasPropertyAdminFilter(SimpleListFilter):
"""Checks if AuthUser is a property owner"""

title = 'Property Filter'
parameter_name = 'property'
default_value = None

def lookups(self, request, model_admin):
return [ ('1', 'has a property')]
return [('1', 'has a property')]

def queryset(self, request, queryset):
if self.value():
Expand All @@ -36,7 +44,10 @@ def queryset(self, request, queryset):
return users
return queryset

class PickLeaderFilter(SimpleListFilter):

class UserHasLedPicksAdminFilter(SimpleListFilter):
"""Checks if AuthUser is has led harvests"""

title = 'Pick-Leader Filter'
parameter_name = 'leader'
default_value = None
Expand All @@ -52,7 +63,10 @@ def queryset(self, request, queryset):
return users
return queryset

class VolunteerFilter(SimpleListFilter):

class UserHasVolunteeredAdminFilter(SimpleListFilter):
"""Checks if AuthUser is has volunteered"""

title = 'Volunteer Filter'
parameter_name = 'picker'
default_value = None
Expand Down

0 comments on commit d6d2db5

Please sign in to comment.