diff --git a/hypha/public/partner/models.py b/hypha/public/partner/models.py index 39651874db7a8d437b922688abcb5e8077d5836b..2b1bee9a8fda25ca43def742aeb625127cb4e7b6 100644 --- a/hypha/public/partner/models.py +++ b/hypha/public/partner/models.py @@ -3,6 +3,7 @@ import datetime from django import forms from django.core.validators import MaxValueValidator, MinValueValidator from django.db import models +from django.http import Http404 from django.shortcuts import redirect from pagedown.widgets import PagedownWidget from wagtail.admin.edit_handlers import FieldPanel @@ -97,6 +98,11 @@ class PartnerPage(BasePage): category_questions[category.name] = [category.value] return category_questions + def serve(self, request, *args, **kwargs): + if not self.public: + raise Http404 + return super(PartnerPage, self).serve(request, *args, **kwargs) + def current_year(): return datetime.date.today().year diff --git a/hypha/public/partner/views.py b/hypha/public/partner/views.py index abedfcaba0468fd6d79397ee7e8493e3e390c960..f0fedec92d3e4c53dabdb73016f58753c27abbac 100644 --- a/hypha/public/partner/views.py +++ b/hypha/public/partner/views.py @@ -1,7 +1,7 @@ from django_filters.views import FilterView +from django_tables2.export.views import ExportMixin from django_tables2.paginators import LazyPaginator from django_tables2.views import SingleTableMixin -from django_tables2.export.views import ExportMixin from .models import Investment from .tables import InvestmentFilterAndSearch, InvestmentTable @@ -30,3 +30,6 @@ class InvestmentTableView(ExportMixin, SingleTableMixin, FilterView): filter_action=self.filter_action, **kwargs, ) + + def get_queryset(self): + return Investment.objects.filter(partner__public=True)