diff --git a/ietf/group/templatetags/group_filters.py b/ietf/group/templatetags/group_filters.py index d016b8378..e7fb4a181 100644 --- a/ietf/group/templatetags/group_filters.py +++ b/ietf/group/templatetags/group_filters.py @@ -1,5 +1,7 @@ from django import template +import debug # pyflakes:ignore + from ietf.group.models import Group register = template.Library() @@ -25,3 +27,12 @@ def active_nomcoms(user): state__slug='active').distinct().select_related("type")) return groups + +@register.inclusion_tag('person/person_link.html') +def role_person_link(role, **kwargs): + title = kwargs.get('title', '') + cls = kwargs.get('class', '') + name = role.person.name + plain_name = role.person.plain_name() + email = role.email.address + return {'name': name, 'plain_name': plain_name, 'email': email, 'title': title, 'class': cls} diff --git a/ietf/person/templatetags/person_filters.py b/ietf/person/templatetags/person_filters.py index 59d28a1a9..1756ba9e2 100644 --- a/ietf/person/templatetags/person_filters.py +++ b/ietf/person/templatetags/person_filters.py @@ -22,4 +22,22 @@ def person_by_name(name): return None alias = Alias.objects.filter(name=name).first() return alias.person if alias else None - \ No newline at end of file + +@register.inclusion_tag('person/person_link.html') +def person_link(person, **kwargs): + title = kwargs.get('title', '') + cls = kwargs.get('class', '') + name = person.name + plain_name = person.plain_name() + email = person.email_address() + return {'name': name, 'plain_name': plain_name, 'email': email, 'title': title, 'class': cls} + + +@register.inclusion_tag('person/person_link.html') +def email_person_link(email, **kwargs): + title = kwargs.get('title', '') + cls = kwargs.get('class', '') + name = email.person.name + plain_name = email.person.plain_name() + email = email.address + return {'name': name, 'plain_name': plain_name, 'email': email, 'title': title, 'class': cls} diff --git a/ietf/templates/doc/search/search_result_row.html b/ietf/templates/doc/search/search_result_row.html index 9d7a61e60..0367e391a 100644 --- a/ietf/templates/doc/search/search_result_row.html +++ b/ietf/templates/doc/search/search_result_row.html @@ -2,6 +2,7 @@ {% load widget_tweaks %} {% load ietf_filters %} {% load ballot_icon %} +{% load person_filters %} {% if doc.ad %} - {{ doc.ad }}
+ {% person_link doc.ad title="Area Director" %}
{% endif %} - {% if doc.shepherd %}{{doc.shepherd.person.name}}{% endif %} + {% if doc.shepherd %}{% email_person_link doc.shepherd title="Shepherd" class="small text-muted" %}{% endif %} {% endif %} diff --git a/ietf/templates/group/active_wgs.html b/ietf/templates/group/active_wgs.html index 83f6e74e6..b991e8b41 100644 --- a/ietf/templates/group/active_wgs.html +++ b/ietf/templates/group/active_wgs.html @@ -1,6 +1,6 @@ {% extends "base.html" %} {# Copyright The IETF Trust 2015, All Rights Reserved #} -{% load origin staticfiles %} +{% load origin staticfiles group_filters %} {% block pagehead %} @@ -69,11 +69,9 @@ {{ group.name }} - {% for chair in group.chairs %} - {{ chair.person.plain_name }} - {% if not forloop.last %} , {% endif %} - {% endfor %} - {% if group.ad_out_of_area %}(Assigned AD: {{ group.ad_role.person.plain_name }}){% endif %} + {% for chair in group.chairs %}{% role_person_link chair %}{% if not forloop.last %} , {% endif %} + {% endfor %} + {% if group.ad_out_of_area %}(Assigned AD: {% role_person_link group.ad_role %}){% endif %} {% endfor %} diff --git a/ietf/templates/group/group_about.html b/ietf/templates/group/group_about.html index a71051892..3514ddf3c 100644 --- a/ietf/templates/group/group_about.html +++ b/ietf/templates/group/group_about.html @@ -3,7 +3,7 @@ {% load origin %} {% load ietf_filters %} {% load markup_tags %} -{% load textfilters %} +{% load textfilters group_filters %} {% block group_content %} {% origin %} @@ -155,11 +155,8 @@ {% endif %} - - {% for r in roles %} - - {{ r.person.plain_name }} + {% role_person_link r %}
{% endfor %} diff --git a/ietf/templates/person/person_link.html b/ietf/templates/person/person_link.html new file mode 100644 index 000000000..9a57fb19a --- /dev/null +++ b/ietf/templates/person/person_link.html @@ -0,0 +1,7 @@ +{# Copyright The IETF Trust 2020, All Rights Reserved #}{% spaceless %} + + {{ plain_name }} +  + + +{% endspaceless %}