From 1760b699290a768499bd3ce17dcf371f2748350d Mon Sep 17 00:00:00 2001 From: Thomas NOEL Date: Sat, 23 Jan 2016 00:20:11 +0100 Subject: [PATCH] fold summary if form has already been seen (#9175) --- wcs/forms/common.py | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/wcs/forms/common.py b/wcs/forms/common.py index fc758a2..83ddef1 100644 --- a/wcs/forms/common.py +++ b/wcs/forms/common.py @@ -347,10 +347,7 @@ class FormStatusPage(Directory): raise errors.AccessForbiddenError() return user - def receipt(self, - always_include_user = False, - show_status = True, - form_url = ''): + def receipt(self, always_include_user=False, show_status=True, form_url='', folded=False): user = get_request().user if not always_include_user and get_request().user and \ get_request().user.id == self.filled.user_id: @@ -372,7 +369,8 @@ class FormStatusPage(Directory): r = TemplateIO(html=True) r += htmltext('
') - r += htmltext('

%s

') % _('Summary') + r += htmltext('

%%s

' % + (' folded' if folded else '')) % _('Summary') r += htmltext('
') if user: @@ -494,7 +492,16 @@ class FormStatusPage(Directory): r += htmltext(self.workflow_messages()) - r += self.receipt(always_include_user = True) + # fold the summary if the form has already been seen by + # the user, i.e. if the user is present in evolution. + folded = False + if user and self.filled.evolution: + for evo in self.filled.evolution: + if str(evo.who) == str(user.id): + folded = True + break + + r += self.receipt(always_include_user=True, folded=folded) r += self.history() -- 2.7.0