diff --git a/opentech/apply/determinations/templates/determinations/includes/determination_button.html b/opentech/apply/determinations/templates/determinations/includes/determination_button.html index 13b73852d4f88cab1fac3b74f5102a4013ea5994..0ab87cde30f5b746345e10cc60c3c0d38a985991 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 0f687f21e432a3001cb1ce2e8961a1326d0bd731..d13b1baae741d5adf832e6be9be199ca63a510ca 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)