From aae88fcd048b51e0495bab9e48cb73fc6e008585 Mon Sep 17 00:00:00 2001 From: Mark Reynolds Date: Jan 20 2017 10:09:08 +0000 Subject: Improve how the milestone tags are dispalyed when filtering is applied --- diff --git a/pagure/templates/roadmap.html b/pagure/templates/roadmap.html index 668d69e..a634cb1 100644 --- a/pagure/templates/roadmap.html +++ b/pagure/templates/roadmap.html @@ -101,9 +101,9 @@ {% for stone in milestones %} - {% if (all_ms_tags is none and (stone in issues or stone in requested_stones)) or all_ms_tags is not none %} + {% if (all_ms_tags is none and (stone in active_milestones or stone in requested_stones)) or all_ms_tags is not none %} {% if stone in requested_stones %} - {{ stone }} @@ -124,6 +125,7 @@ milestone=stone, tag=tags, all_ms_tags=all_ms_tags, + active_milestones=active_milestones, status=status) }}" title="Filter issues by milestone"> {{ stone }} @@ -142,6 +144,7 @@ namespace=repo.namespace, milestone=requested_stones, all_ms_tags=all_ms_tags, + active_milestones=active_milestones, status=status) }}" title="Filter issues by tag"> {% else %} @@ -153,6 +156,7 @@ status=status, tag=tag, all_ms_tags=all_ms_tags, + active_milestones=active_milestones, milestone=requested_stones) }}" title="Filter issues by tag"> {% endif %} diff --git a/pagure/ui/issues.py b/pagure/ui/issues.py index 74f440c..c43ea82 100644 --- a/pagure/ui/issues.py +++ b/pagure/ui/issues.py @@ -714,6 +714,7 @@ def view_roadmap(repo, username=None, namespace=None): milestones = flask.request.args.getlist('milestone', None) tags = flask.request.args.getlist('tag', None) all_ms_tags = flask.request.args.get('all_ms_tags', None) + active_milestones = flask.request.args.getlist('active_milestones', None) repo = flask.g.repo @@ -772,6 +773,20 @@ def view_roadmap(repo, username=None, namespace=None): cnt = len(all_milestones) all_milestones.insert(cnt, all_milestones.pop(index)) + if len(active_milestones) == 0 and all_ms_tags is None: + # We don't have any requested active milestones, so grab a fresh list. + # Get all the active tickets regardless what tags/milestones were + # requested. + active_issues = pagure.lib.search_issues( + SESSION, + repo, + milestones=all_milestones, + private=private, + status=status if status.lower() != 'all' else None, + ) + for issue in active_issues: + active_milestones.append(issue.milestone) + return flask.render_template( 'roadmap.html', select='issues', @@ -781,6 +796,7 @@ def view_roadmap(repo, username=None, namespace=None): status=status, all_ms_tags=all_ms_tags, milestones=all_milestones, + active_milestones=active_milestones, requested_stones=milestones, issues=milestone_issues, tags=tags,