From 41d3bb61b43e981ca673d8576aef649488e44a3c Mon Sep 17 00:00:00 2001 From: Robert Sparks <rjsparks@nostrum.com> Date: Fri, 23 Dec 2016 21:20:55 +0000 Subject: [PATCH] Added some convenience navigation for review team secretaries to the menu. Restructured the menu lightly around Documents and Role-related links. Added navigation from a reviewers "My Reviews" page back to the review team pages. Fixes #2079. Commit ready for merge. - Legacy-Id: 12627 --- ietf/doc/templatetags/managed_groups.py | 15 +++++++++++++ ietf/ietfauth/utils.py | 2 ++ ietf/templates/base/menu.html | 22 +++++++++++++------- ietf/templates/ietfauth/review_overview.html | 4 ++-- 4 files changed, 34 insertions(+), 9 deletions(-) diff --git a/ietf/doc/templatetags/managed_groups.py b/ietf/doc/templatetags/managed_groups.py index 113bc0262..ba87e43b0 100644 --- a/ietf/doc/templatetags/managed_groups.py +++ b/ietf/doc/templatetags/managed_groups.py @@ -24,3 +24,18 @@ def managed_groups(user): return groups +@register.filter +def managed_review_groups(user): + if not (user and hasattr(user, "is_authenticated") and user.is_authenticated()): + return [] + + groups = [] + + groups.extend(Group.objects.filter( + role__name__slug='secr', + role__person__user=user, + reviewteamsettings__isnull=False, + state__slug='active').select_related("type")) + + return groups + diff --git a/ietf/ietfauth/utils.py b/ietf/ietfauth/utils.py index 98749c21d..560cf376e 100644 --- a/ietf/ietfauth/utils.py +++ b/ietf/ietfauth/utils.py @@ -70,6 +70,8 @@ def has_role(user, role_names, *args, **kwargs): "Liaison Manager": Q(person=person,name="liaiman",group__type="sdo",group__state="active", ), "Authorized Individual": Q(person=person,name="auth",group__type="sdo",group__state="active", ), "Reviewer": Q(person=person, name="reviewer", group__state="active"), + "Review Team Secretary": Q(person=person, name="secr", group__reviewteamsettings__isnull=False,group__state="active", ), + } filter_expr = Q() diff --git a/ietf/templates/base/menu.html b/ietf/templates/base/menu.html index 9edcafbbd..8270cda2f 100644 --- a/ietf/templates/base/menu.html +++ b/ietf/templates/base/menu.html @@ -45,14 +45,16 @@ {% endif %} <li><a href="{% url "ietf.submit.views.upload_submission" %}">Draft submission</a></li> - {% if user|has_role:"WG Chair" %} + {% if user and user.is_authenticated %} + <li><a href="{% url "ietf.community.views.view_list" user.username %}">My tracked docs</a></li> + {% else %} + <li><a rel="nofollow" href="/accounts/login/?next={{ request.get_full_path|urlencode }}">Sign in to track docs</a></li> + {% endif %} + + {% if user|has_role:"WG Chair,RG Chair" %} {% if flavor == "top" %}<li class="divider hidden-xs"></li>{% endif %} <li {%if flavor == "top" %}class="dropdown-header hidden-xs"{% else %}class="nav-header"{% endif %}>WG chair</li> <li><a href="{% url "ietf.submit.views.approvals" %}">Approve a draft</a></li> - {% endif %} - - {% if user and user.is_authenticated %} - <li><a href="{% url "ietf.community.views.view_list" user.username %}">My tracked docs</a></li> {% for g in user|managed_groups %} <li><a href="{% url "group_docs" g.acronym %}">{{ g.acronym }} {{ g.type.slug }} docs</a></li> @@ -60,8 +62,14 @@ {% for g in user|managed_groups %} <li><a href="{% url "ietf.group.views.meetings" g.acronym %}">{{ g.acronym }} {{ g.type.slug }} meetings</a></li> {% endfor %} - {% else %} - <li><a rel="nofollow" href="/accounts/login/?next={{ request.get_full_path|urlencode }}">Sign in to track docs</a></li> + {% endif %} + + {% if user|has_role:"Review Team Secretary" %} + {% if flavor == "top" %}<li class="divider hidden-xs"></li>{% endif %} + <li {%if flavor == "top" %}class="dropdown-header hidden-xs"{% else %}class="nav-header"{% endif %}>Review Teams</li> + {% for g in user|managed_review_groups %} + <li><a href="{% url "ietf.group.views_review.review_requests" g.acronym %}">{{ g.acronym }} reviews</a></li> + {% endfor %} {% endif %} {% if user|has_role:"Area Director,Secretariat" %} diff --git a/ietf/templates/ietfauth/review_overview.html b/ietf/templates/ietfauth/review_overview.html index ead5f6433..bb6e634e5 100644 --- a/ietf/templates/ietfauth/review_overview.html +++ b/ietf/templates/ietfauth/review_overview.html @@ -35,7 +35,7 @@ <td><a {% if r.pk != None %}href="{% url "ietf.doc.views_review.review_request" name=r.doc.name request_id=r.pk %}"{% endif %}>{{ r.doc.name }}</a></td> <td>{% if r.requested_rev %}{{ r.requested_rev }}{% else %}Current{% endif %}</td> <td>{{r.doc.rev}}</td> - <td>{{ r.team.acronym }}</td> + <td><a href="{% url 'ietf.group.views_review.review_requests' acronym=r.team.acronym %}">{{ r.team.acronym }}</a></td> <td>{{ r.type.name }}</td> <td> {{ r.deadline|date:"Y-m-d" }} @@ -70,7 +70,7 @@ <tr> <td><a {% if r.pk != None %}href="{% url "ietf.doc.views_review.review_request" name=r.doc.name request_id=r.pk %}"{% endif %}>{{ r.doc.name }}</a></td> <td>{{r.reviewed_rev|default:"See review"}}{% if r.requested_rev %}{% if r.requested_rev != r.reviewed_rev %}({{ r.requested_rev }} requested){% endif %}{% endif %}</td> - <td>{{ r.team.acronym }}</td> + <td><a href="{% url 'ietf.group.views_review.review_requests' acronym=r.team.acronym %}">{{ r.team.acronym }}</a></td> <td>{{ r.type.name }}</td> <td> {{ r.deadline|date:"Y-m-d" }}