Projet

Général

Profil

0001-fold-summary-and-log-if-form-has-already-been-seen-9.patch

Thomas Noël, 23 janvier 2016 01:16

Télécharger (3,57 ko)

Voir les différences:

Subject: [PATCH] fold summary and log if form has already been seen (#9175)

 wcs/forms/common.py | 31 ++++++++++++++++++++-----------
 1 file changed, 20 insertions(+), 11 deletions(-)
wcs/forms/common.py
183 183

  
184 184
        return r.getvalue()
185 185

  
186
    def deja_vu(self):
187
        user = get_request().user
188
        if not self.filled.evolution or not user:
189
            return False
190
        for evo in self.filled.evolution:
191
            if evo.who == user.id or (evo.who == '_submitter' and self.filled.is_submitter(user)):
192
                return True
193
        return False
194

  
186 195
    def _q_index(self):
187 196
        mine = self.check_auth()
188 197
        get_logger().info('form %s - id: %s - view' % (self.formdef.name, self.filled.id))
......
191 200

  
192 201
        r = TemplateIO(html=True)
193 202

  
203
        deja_vu = self.deja_vu()
194 204
        r += self.receipt_message(mine=mine)
195
        r += self.receipt()
196
        r += self.history()
205
        r += self.receipt(deja_vu=deja_vu)
206
        r += self.history(deja_vu=deja_vu)
197 207

  
198 208
        form = None
199 209

  
......
233 243
            r += htmltext('</div>')
234 244
            return r.getvalue()
235 245

  
236
    def history(self):
246
    def history(self, deja_vu=False):
237 247
        if not self.filled.evolution:
238 248
            return
239 249
        if not self.formdef.is_user_allowed_read_status_and_history(get_request().user, self.filled):
240 250
            return
241 251
        r = TemplateIO(html=True)
242 252
        r += htmltext('<div class="bo-block" id="evolution-log">')
243
        r += htmltext('<h2 class="foldable">%s</h2>') % _('Log')
253
        r += htmltext('<h2 class="foldable%s">%%s</h2>' % (deja_vu and ' folded' or '')) % _('Log')
244 254
        r += htmltext('<ul id="evolutions">')
245 255
        hidden = False
246 256
        previous_status = None
......
338 348
            raise errors.AccessForbiddenError()
339 349
        return user
340 350

  
341
    def receipt(self,
342
            always_include_user = False,
343
            show_status = True,
344
            form_url = ''):
351
    def receipt(self, always_include_user=False, show_status=True, form_url='', deja_vu=False):
345 352
        user = get_request().user
346 353
        if not always_include_user and get_request().user and \
347 354
                get_request().user.id == self.filled.user_id:
......
363 370

  
364 371
        r = TemplateIO(html=True)
365 372
        r += htmltext('<div class="bo-block" id="summary">')
366
        r += htmltext('<h2 class="foldable">%s</h2>') % _('Summary')
373
        r += htmltext('<h2 class="foldable%s">%%s</h2>' %
374
                        (deja_vu and ' folded' or '')) % _('Summary')
367 375
        r += htmltext('<div class="dataview">')
368 376

  
369 377
        if user:
......
483 491
                    'date': self.filled.anonymised.strftime(misc.date_format())}
484 492
            r += htmltext('</div>')
485 493

  
486
        r += self.receipt(always_include_user = True)
494
        deja_vu = self.deja_vu()
495
        r += self.receipt(always_include_user=True, deja_vu=deja_vu)
487 496

  
488 497
        if self.formdef.workflow:
489 498
            r += htmltext(self.filled.display_workflow_message())
490 499

  
491
        r += self.history()
500
        r += self.history(deja_vu=deja_vu)
492 501

  
493 502
        if form:
494 503
            r += form.render()
495
-