class EventFilter(AMYFilterSet): assigned_to = ForeignKeyAllValuesFilter(Person, widget=Select2()) host = ForeignKeyAllValuesFilter(Organization, widget=Select2()) administrator = ForeignKeyAllValuesFilter(Organization, widget=Select2()) STATUS_CHOICES = [ ('', 'All'), ('active', 'Active'), ('past_events', 'Past'), ('ongoing_events', 'Ongoing'), ('upcoming_events', 'Upcoming'), ('unpublished_events', 'Unpublished'), ('published_events', 'Published'), ('uninvoiced_events', 'Uninvoiced'), ('metadata_changed', 'Detected changes in metadata'), ] state = EventStateFilter(choices=STATUS_CHOICES, label='Status', widget=Select2()) invoice_status = django_filters.ChoiceFilter( choices=Event.INVOICED_CHOICES, ) tags = django_filters.ModelMultipleChoiceFilter( queryset=Tag.objects.all(), label='Tags', widget=ModelSelect2Multiple(), ) country = AllCountriesFilter(widget=Select2()) order_by = django_filters.OrderingFilter( fields=( 'slug', 'start', 'end', ), ) class Meta: model = Event fields = [ 'assigned_to', 'tags', 'host', 'administrator', 'invoice_status', 'completed', 'country', ]
class ImpersonateForm(forms.Form): user_pk = UserChoiceField( queryset=models.User.objects.filter(is_active=True).order_by( 'last_name', 'first_name'), widget=Select2(), label='User', )
class EventRequestFilter(AMYFilterSet, StateFilterSet): assigned_to = ForeignKeyAllValuesFilter(Person, widget=Select2()) country = AllCountriesFilter(widget=Select2()) workshop_type = django_filters.ChoiceFilter( choices=(('swc', 'Software-Carpentry'), ('dc', 'Data-Carpentry')), label='Workshop type', empty_label='All', ) order_by = django_filters.OrderingFilter(fields=('created_at', ), ) class Meta: model = EventRequest fields = [ 'state', 'assigned_to', 'workshop_type', 'country', ]
class EventSubmissionFilter(AMYFilterSet, StateFilterSet): assigned_to = ForeignKeyAllValuesFilter(Person, widget=Select2()) order_by = django_filters.OrderingFilter(fields=('created_at', ), ) class Meta: model = EventSubmission fields = [ 'state', 'assigned_to', ]
class WorkshopRequestFilter(AMYFilterSet, StateFilterSet): assigned_to = ForeignKeyAllValuesFilter(Person, widget=Select2()) country = AllCountriesFilter(widget=Select2()) requested_workshop_types = django_filters.ModelMultipleChoiceFilter( label='Requested workshop types', queryset=Curriculum.objects.all(), widget=widgets.CheckboxSelectMultiple(), ) order_by = django_filters.OrderingFilter( fields=( 'created_at', ), ) class Meta: model = WorkshopRequest fields = [ 'state', 'assigned_to', 'requested_workshop_types', 'country', ]
class DCSelfOrganizedEventRequestFilter(AMYFilterSet, StateFilterSet): assigned_to = ForeignKeyAllValuesFilter(Person, widget=Select2()) order_by = django_filters.OrderingFilter(fields=('created_at', ), ) class Meta: model = DCSelfOrganizedEventRequest fields = [ 'state', 'assigned_to', ] order_by = [ '-created_at', 'created_at', ]
class OrganizationFilter(AMYFilterSet): country = AllCountriesFilter(widget=Select2()) membership__variant = django_filters.MultipleChoiceFilter( label='Memberships (current or past)', choices=Membership.MEMBERSHIP_CHOICES, widget=Select2Multiple(), ) order_by = django_filters.OrderingFilter(fields=( 'fullname', 'domain', ), ) class Meta: model = Organization fields = [ 'country', ]