diff --git a/libstat/models.py b/libstat/models.py
index 40fa8662..94c3c927 100644
--- a/libstat/models.py
+++ b/libstat/models.py
@@ -127,13 +127,22 @@ def __unicode__(self):
class SurveyResponseQuerySet(QuerySet):
- def by_year_or_group(self, sample_year=None, target_group=None ):
+ def by_year_or_group(self, sample_year=None, target_group=None):
filters = {}
if target_group:
filters["target_group"] = target_group
if sample_year:
filters["sample_year"] = int(sample_year)
return self.filter(__raw__=filters)
+
+ def unpublished_by_year_or_group(self, sample_year=None, target_group=None):
+ filters = {}
+ if target_group:
+ filters["target_group"] = target_group
+ if sample_year:
+ filters["sample_year"] = int(sample_year)
+ filters["published_at__isnull"] = True
+ return self.filter(__raw__=filters)
class SurveyObservation(EmbeddedDocument):
diff --git a/libstat/templates/libstat/survey_responses.html b/libstat/templates/libstat/survey_responses.html
index 9fb27f09..4f83694b 100644
--- a/libstat/templates/libstat/survey_responses.html
+++ b/libstat/templates/libstat/survey_responses.html
@@ -42,10 +42,10 @@
{% trans "Enkätsvar uppdelat på målgrupp och år" %}<
-
+
diff --git a/libstat/views.py b/libstat/views.py
index 32a9969e..bce169f0 100644
--- a/libstat/views.py
+++ b/libstat/views.py
@@ -78,15 +78,25 @@ def survey_responses(request):
action = request.GET.get("action", "")
target_group = request.GET.get("target_group", "")
sample_year = request.GET.get("sample_year", "")
+ unpublished_only = request.GET.get("unpublished_only", False);
+ if "True" == unpublished_only:
+ unpublished_only = True
+ else:
+ unpublished_only = False
if action == "list":
- s_responses = SurveyResponse.objects.by_year_or_group(sample_year=sample_year, target_group=target_group).order_by("library")
+ # TODO: Pagination
+ if unpublished_only:
+ s_responses = SurveyResponse.objects.unpublished_by_year_or_group(sample_year=sample_year, target_group=target_group).order_by("library")
+ else:
+ s_responses = SurveyResponse.objects.by_year_or_group(sample_year=sample_year, target_group=target_group).order_by("library")
context = {
'sample_years': sample_years,
'survey_responses': s_responses,
'target_group': target_group,
'sample_year': sample_year,
+ 'unpublished_only': unpublished_only,
'bibdb_library_base_url': u"{}/library".format(settings.BIBDB_BASE_URL)
}
return render(request, 'libstat/survey_responses.html', context)