From f8546c8611eecdc51e8ed47b1900d6ba613edbaa Mon Sep 17 00:00:00 2001 From: Chris Hill-Scott Date: Wed, 9 May 2018 13:22:41 +0100 Subject: [PATCH] Refactor to be more DRY --- app/main/views/agreement.py | 16 +--------------- app/utils.py | 8 ++++++++ 2 files changed, 9 insertions(+), 15 deletions(-) diff --git a/app/main/views/agreement.py b/app/main/views/agreement.py index 630e5a94d..b3e41dbb5 100644 --- a/app/main/views/agreement.py +++ b/app/main/views/agreement.py @@ -13,22 +13,8 @@ def agreement(): agreement_info = AgreementInfo.from_current_user() - if agreement_info.crown_status is None: - return render_template( - 'views/agreement-choose.html', - owner=agreement_info.owner, - navigation_links=features_nav(), - ) - - if agreement_info.agreement_signed: - return render_template( - 'views/agreement-signed.html', - owner=agreement_info.owner, - navigation_links=features_nav(), - ) - return render_template( - 'views/agreement.html', + 'views/{}.html'.format(agreement_info.as_jinja_template), owner=agreement_info.owner, navigation_links=features_nav(), ) diff --git a/app/utils.py b/app/utils.py index d1eb83f5c..69c85c280 100644 --- a/app/utils.py +++ b/app/utils.py @@ -472,6 +472,14 @@ class AgreementInfo: else: return 'Can’t tell' + @property + def as_jinja_template(self): + if self.crown_status is None: + return 'agreement-choose' + if self.agreement_signed: + return 'agreement-signed' + return 'agreement' + def as_terms_of_use_paragraph(self, **kwargs): return Markup(self._as_terms_of_use_paragraph(**kwargs))