diff --git a/pagure/templates/roadmap.html b/pagure/templates/roadmap.html index 266b25e..c92b69a 100644 --- a/pagure/templates/roadmap.html +++ b/pagure/templates/roadmap.html @@ -122,6 +122,7 @@ milestone=stone | add_or_remove(requested_stones[:]), tag=tags, all_stones=all_stones, + no_stones=no_stones, status=status) }}" title="Filter issues by milestone"> {{ stone }} @@ -139,6 +140,7 @@ status=status, tag=tag | add_or_remove(tags[:]), all_stones=all_stones, + no_stones=no_stones, milestone=requested_stones) }}" title="Filter issues by tag"> {{ tag }} diff --git a/pagure/ui/issues.py b/pagure/ui/issues.py index b00aa29..f7b854a 100644 --- a/pagure/ui/issues.py +++ b/pagure/ui/issues.py @@ -605,6 +605,7 @@ def view_issues(repo, username=None, namespace=None): milestones.remove("none") else: no_stone = False + search_string = search_pattern extra_fields, search_pattern = pagure.lib.tokenize_search_string( search_pattern) @@ -755,12 +756,31 @@ def view_roadmap(repo, username=None, namespace=None): if flask.g.repo_committer: private = None + tag_list = [ + tag.tag + for tag in pagure.lib.get_tags_of_project(SESSION, repo) + ] + + all_milestones = sorted(list(repo.milestones.keys())) + active_milestones = pagure.lib.get_active_milestones(SESSION, repo) + + milestones_list = active_milestones + if all_stones: + milestones_list = all_milestones + + if 'unplanned' in all_milestones: + index = all_milestones.index('unplanned') + cnt = len(all_milestones) + all_milestones.insert(cnt, all_milestones.pop(index)) + if no_stones: # Return only issues that do not have a milestone set issues = pagure.lib.search_issues( SESSION, repo, no_milestones=True, + tags=tags, + private=private, status=status if status.lower() != 'all' else None, ) return flask.render_template( @@ -768,15 +788,15 @@ def view_roadmap(repo, username=None, namespace=None): select='issues', repo=repo, username=username, + tag_list=tag_list, status=status, no_stones=True, issues=issues, tags=tags, + all_stones=all_stones, + requested_stones=milestones, ) - all_milestones = sorted(list(repo.milestones.keys())) - active_milestones = pagure.lib.get_active_milestones(SESSION, repo) - issues = pagure.lib.search_issues( SESSION, repo, @@ -808,20 +828,6 @@ def view_roadmap(repo, username=None, namespace=None): if not active: del milestone_issues[key] - tag_list = [ - tag.tag - for tag in pagure.lib.get_tags_of_project(SESSION, repo) - ] - - if 'unplanned' in all_milestones: - index = all_milestones.index('unplanned') - cnt = len(all_milestones) - all_milestones.insert(cnt, all_milestones.pop(index)) - - milestones_list = active_milestones - if all_stones: - milestones_list = all_milestones - return flask.render_template( 'roadmap.html', select='issues',