From eb7eabb7c71d51a6c0d464d813427dedcc7f2b4e Mon Sep 17 00:00:00 2001 From: Anna Sidwell Date: Mon, 4 Mar 2019 23:39:27 +1100 Subject: [PATCH] Add user-based case study listing --- apps/profiles/views.py | 11 ++++++ ojusomap/templates/auth/user_detail.html | 46 ++++++++++++++++-------- 2 files changed, 42 insertions(+), 15 deletions(-) diff --git a/apps/profiles/views.py b/apps/profiles/views.py index 04dce8b..4d4b487 100644 --- a/apps/profiles/views.py +++ b/apps/profiles/views.py @@ -9,6 +9,8 @@ from django.contrib.auth.mixins import LoginRequiredMixin from django.contrib.auth import get_user_model +from apps.map.models import CaseStudy + class UserDetailView(LoginRequiredMixin, DetailView): model = get_user_model() @@ -19,6 +21,15 @@ class UserDetailView(LoginRequiredMixin, DetailView): def get_object(self): return get_user_model().objects.get(username=self.request.user.username) + def get_context_data(self, **kwargs): + context = super().get_context_data(**kwargs) + + # Get case studies for this user + case_studies = CaseStudy.objects.filter(author=self.request.user.id) + context['case_studies'] = case_studies + + return context + class UserRedirectView(LoginRequiredMixin, RedirectView): permanent = False diff --git a/ojusomap/templates/auth/user_detail.html b/ojusomap/templates/auth/user_detail.html index 17823cc..6f35860 100644 --- a/ojusomap/templates/auth/user_detail.html +++ b/ojusomap/templates/auth/user_detail.html @@ -7,7 +7,6 @@ {% block content %}
-
@@ -15,23 +14,40 @@ {% if object.first_name and object.last_name %}

{{ object.first_name }} {{ object.last_name }} ({{ object.username }})

+ {% else %} +

{{ object.username }}

{% endif %} +{% if object == request.user %} + {% trans 'Change Name' %} + Change Avatar + +

Your case studies

+ + {% if case_studies %} + + + + + + {% for case in case_studies %} + + +
Name + Approved + Actions +
{{ case.entry_name }} + {% if case.approved %}Yes{% else %}No{% endif %} + View | Edit + {% endfor %} +
+ {% else %} +

You have no case studies.

+ {% endif %} + +{% endif %} +
- -{% if object == request.user %} - - -{% endif %} - -
{% endblock content %} \ No newline at end of file