Coverage for webpage/templatetags/webpage_extras.py: 75%
24 statements
« prev ^ index » next coverage.py v7.6.0, created at 2024-07-27 11:19 +0000
« prev ^ index » next coverage.py v7.6.0, created at 2024-07-27 11:19 +0000
1from django import template
2from webpage.metadata import PROJECT_METADATA as PM
4register = template.Library()
7@register.simple_tag
8def projects_metadata(key):
9 return PM[key]
12@register.simple_tag
13def get_verbose_name(instance, field_name):
14 """
15 Returns verbose_name for a field.
16 inspired by https://stackoverflow.com/questions/14496978/fields-verbose-name-in-templates
17 call in template like e.g. 'get_verbose_name <classname> "<fieldname>" '
18 """
19 try:
20 label = instance._meta.get_field(field_name).verbose_name
21 except:
22 label = None
23 if label:
24 return "{}".format(label)
25 else:
26 return "No verbose name for '{}' provided".format(field_name)
29@register.simple_tag
30def get_help_text(instance, field_name):
31 """
32 Returns help_text for a field.
33 inspired by https://stackoverflow.com/questions/14496978/fields-verbose-name-in-templates
34 call in template like e.g. get_help_text <classname> "<fieldname>"
35 """
36 try:
37 label = instance._meta.get_field(field_name).help_text
38 except:
39 label = None
40 if label:
41 return "{}".format(label)
42 else:
43 return "No helptext for '{}' provided".format(field_name)