misc: add criticality label to available variables (#25676)

This commit is contained in:
Frédéric Péters 2018-08-14 09:35:50 +02:00
parent bbb7242434
commit d46c4c0451
3 changed files with 17 additions and 0 deletions

View File

@ -335,6 +335,9 @@ def test_criticality_levels(pub):
d.decrease_criticality_level()
assert d.get_criticality_level_object().name == 'green'
assert d.get_static_substitution_variables().get('form_criticality_label') == 'green'
assert d.get_substitution_variables().get('form_criticality_label') == 'green'
def test_field_item_substvars(pub):
ds = {
'type': 'formula',

View File

@ -669,6 +669,13 @@ class FormData(StorableObject):
# both normal formdata (where receipt_time is a time.struct_time)
# and sql.AnyFormData where it's already a datetime object.
d['form_receipt_datetime'] = make_datetime(self.receipt_time)
if self.formdef.workflow.criticality_levels:
try:
level = self.get_criticality_level_object()
except IndexError:
pass
else:
d['form_criticality_label'] = level.name
d['form_status'] = self.get_status_label()

View File

@ -116,6 +116,13 @@ class LazyFormData(LazyFormDef):
def criticality_level(self):
return self.formdata.criticality_level
@property
def criticality_label(self):
try:
return self.formdata.get_criticality_level_object().name
except IndexError:
return None
@property
def digest(self):
return self.formdata.digest