From 548ffae3d062ae00bd0fa849a8c326cba66774ea Mon Sep 17 00:00:00 2001
From: Todd Dembrey <todd.dembrey@torchbox.com>
Date: Tue, 21 Aug 2018 10:55:29 +0100
Subject: [PATCH] Hide the determination button if user cant use it

---
 .../determinations/includes/determination_button.html  |  2 +-
 .../determinations/templatetags/determination_tags.py  | 10 +++++++---
 2 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/opentech/apply/determinations/templates/determinations/includes/determination_button.html b/opentech/apply/determinations/templates/determinations/includes/determination_button.html
index 13b73852d..0ab87cde3 100644
--- a/opentech/apply/determinations/templates/determinations/includes/determination_button.html
+++ b/opentech/apply/determinations/templates/determinations/includes/determination_button.html
@@ -1,5 +1,5 @@
 {% load determination_tags workflow_tags %}
-{% if request.user|can_add_determination:submission %}
+{% if request.user|show_determination_button:submission %}
     <a href="{% url 'apply:submissions:determinations:form' submission_pk=submission.id %}" class="button button--primary button--full-width">
         {% if submission.determination.is_draft %}Update draft{% else %}Add determination{% endif %}
     </a>
diff --git a/opentech/apply/determinations/templatetags/determination_tags.py b/opentech/apply/determinations/templatetags/determination_tags.py
index 0f687f21e..d13b1baae 100644
--- a/opentech/apply/determinations/templatetags/determination_tags.py
+++ b/opentech/apply/determinations/templatetags/determination_tags.py
@@ -1,10 +1,14 @@
 from django import template
+from django.db.models import ObjectDoesNotExist
 
-from ..views import can_create_determination
+from ..views import can_create_determination, can_edit_determination
 
 register = template.Library()
 
 
 @register.filter
-def can_add_determination(user, submission):
-    return can_create_determination(user, submission)
+def show_determination_button(user, submission):
+    try:
+        return can_edit_determination(user, submission.determination, submission)
+    except ObjectDoesNotExist:
+        return can_create_determination(user, submission)
-- 
GitLab