From 5483e2064ee85e61f46944c203bed42cf40da20c Mon Sep 17 00:00:00 2001 From: Ryan Lerch Date: Jun 18 2018 12:37:34 +0000 Subject: reworked the issues list page --- diff --git a/pagure/templates/_render_issues.html b/pagure/templates/_render_issues.html index 9fb5383..e9a9af6 100644 --- a/pagure/templates/_render_issues.html +++ b/pagure/templates/_render_issues.html @@ -1,11 +1,11 @@ -{% macro render_issue_row(issue, repo) %} +{% macro render_issue_row(issue, repo, username) %} {% if issue.status == 'Open' %} {% set status_color = "success" %} {% else %} {% set status_color = "danger" %} {% endif %} -
+
@@ -53,7 +53,7 @@ {% endif %} {% if issue.assignee %} - + {{ issue.assignee.username | avatar(size=20) | safe}} @@ -67,5 +67,5 @@ {% endif %}
-
+
{% endmacro%} diff --git a/pagure/templates/issues.html b/pagure/templates/issues.html index ec24dfb..f19a4d6 100644 --- a/pagure/templates/issues.html +++ b/pagure/templates/issues.html @@ -1,466 +1,658 @@ {% extends "repo_master.html" %} {% from "_render_repo.html" import pagination_link %} +{% from "_render_issues.html" import render_issue_row %} {% block title %}Issues - {{ repo.namespace + '/' if repo.namespace }}{{ repo.name }}{% endblock %} {% set tag = "home"%} +{% block header %} + + +{% endblock %} -{% block repo %} +{% block repo %} + {% if status|lower in ['open', 'true'] %} + {% set status_filter = 'open' %} + {% set filtered_open_issues_count = issues_cnt %} + {% set filtered_closed_issues_count = oth_issues_cnt %} + {% set filtered_all_issues_count = issues_cnt+oth_issues_cnt %} + {% elif not status %} + {% set status_filter = 'all' %} + {% set filtered_open_issues_count = oth_issues_cnt %} + {% set filtered_closed_issues_count = issues_cnt-oth_issues_cnt %} + {% set filtered_all_issues_count = issues_cnt %} + {% else %} + {% set status_filter = 'closed' %} + {% set filtered_open_issues_count = oth_issues_cnt %} + {% set filtered_closed_issues_count = issues_cnt %} + {% set filtered_all_issues_count = issues_cnt+oth_issues_cnt %} + {% endif %} -

- {% if status|lower in ['open', 'true'] %} - {{ issues|count }} Open Issues (of {{ issues_cnt }}) - {% elif status|lower not in ['open', 'true', 'all', 'none'] %} - {{ issues|count }} Closed Issues (of {{ issues_cnt }}) - {% else %} - {{ issues|count }} Issues (of {{ issues_cnt }}) - {% endif %} +

+ + Issues
- {% if g.repo_admin %} - - Add milestone - - {% endif %} - {% if g.repo.reports %} - + {{total_open}} Open + + + {{total_closed}} Closed - - {% endif %} -
-

- {% if oth_issues_cnt %} -
- {% if (issues | length + oth_issues_cnt) %} - - {{ (100.0 * (issues_cnt / total_issues_cnt))|round|int }}% - - {% endif %}
- {% endif %} - -
-
- - Open - Closed - All - Stats - - -
- - {% for tag in tags %} - - {% endfor %} -
- - - - + +
+
+
+ {% if issues_cnt+oth_issues_cnt > 0 %} + {% if not status %} + {% if oth_issues_cnt > 0 %} + {% set percentage = (100.0 * (oth_issues_cnt / issues_cnt)) %} + {% else %} + {% set percentage = 0 %} + {% endif %} + {% set progress_popover_string = oth_issues_cnt|string+" Open Issues | "+ (issues_cnt-oth_issues_cnt)|string + " Closed Issues"%} + {% elif status|lower in ['open', 'true'] %} + {% if issues_cnt > 0 %} + {% set percentage = (100.0 * (issues_cnt / (oth_issues_cnt+issues_cnt))) %} + {% else %} + {% set percentage = 0 %} + {% endif %} + {% set progress_popover_string = issues_cnt|string+" Open Issues | "+ (oth_issues_cnt)|string + " Closed Issues"%} + {% else %} + {% if oth_issues_cnt > 0 %} + {% set percentage = (100.0 * (oth_issues_cnt / (oth_issues_cnt+issues_cnt))) %} + {% else %} + {% set percentage = 0 %} + {% endif %} + {% set progress_popover_string = oth_issues_cnt|string+" Open Issues | "+ issues_cnt|string + " Closed Issues"%} + {% endif %} +
+
+
+
+
+
+
- - -
+ {% endif %} +
- -
- - - - - - {% if status and status|lower != 'open' %} - + + {{filtered_all_issues_count}} Open & Closed Issues + + + +
+ + +
+ + +
+ {% if g.repo.reports or g.repo_admin %} +
+ + + + +
+ {% endif %} +
+ {% set filters_list = [ + {"key": "date_created", "display_string": "Open Date", "sort_icon_prefix": "fa-sort-numeric-", "icon":"fa-calendar"}, + {"key": "last_updated", "display_string": "Last Modified Date", "sort_icon_prefix": "fa-sort-numeric-", "icon":"fa-calendar"}, + {"key": "closed_at", "display_string": "Closed Date", "sort_icon_prefix": "fa-sort-numeric-", "icon":"fa-calendar"}, + {"key": "title", "display_string": "Issue Title", "sort_icon_prefix": "fa-sort-alpha-", "icon":"fa-exclamation-circle"}, + {"key": "priority", "display_string": "Priority", "sort_icon_prefix": "fa-sort-numeric-", "icon":"fa-bolt"}, + {"key": "user", "display_string": "Reporter", "sort_icon_prefix": "fa-sort-alpha-", "icon":"fa-user"}, + {"key": "assignee", "display_string": "Assignee", "sort_icon_prefix": "fa-sort-alpha-", "icon":"fa-user-plus"}, + ] %} + + +
+
+ {% if g.repo_admin %} + + {% endif %} + + + + + {% if issues %} + {% for issue in issues %} + {{render_issue_row(issue, repo, username)}} + {% endfor %} {% else %} - - {% endif %} - - - {% if not status or status|lower == 'open' %} - +
+
+
+

+ {% if status_filter == 'open'%} + no open issues found + {% if oth_issues_cnt %} +
+ + + {{oth_issues_cnt}} closed issues + + match this filter + +
+ {% else %} +
no closed issues match this filter either
+ {% endif %} + {% elif status_filter == 'closed'%} + no closed issues found + {% if oth_issues_cnt %} +
+ + + {{oth_issues_cnt}} open issues + + match this filter + +
+ {% else %} +
no open issues match this filter either
+ {% endif %} + {% else %} + no open or closed issues found + {% endif %} +

+
+
+
{% endif %} - - - - - - {% for issue in issues %} - - - - {% if status and status|lower != 'open' %} - - {% else %} - - {% endif %} - - - {% if not status or status|lower == 'open' %} - - {% endif %} - - {% else %} - - - - {% endfor %} - -
Issue - {{ 'title' | table_sort_arrow(order_key, order) | safe }}Opened - {{ 'date_created' | table_sort_arrow(order_key, order) | safe }}Closed - {{ 'closed_at' | table_sort_arrow(order_key, order) | safe }}Modified - {{ 'last_updated' | table_sort_arrow(order_key, order) | safe }}Priority - {{ 'priority' | table_sort_arrow(order_key, order) | safe }}Reporter - {{ 'user' | table_sort_arrow(order_key, order) | safe }}Assignee - {{ 'assignee' | table_sort_arrow(order_key, order) | safe }}
- #{{ issue.id }} - {% if status != 'Open' %} - {{issue.close_status if issue.status == 'Closed' else issue.status }} - {% endif %} - {% if issue.private %} - - {% endif %} - - {{ issue.title | noJS("img") | safe }} - -    - {% if issue.user_comments|count > 0 %} - - - {{issue.user_comments|count}} - - {% endif %} - {% if issue.parents %} - - {% endif %} - {% if issue.children %} - - {% endif %} - {% for tag in issue.tags %} - {{tag.tag}} - {% endfor%} - - {{ - issue.date_created | humanize}} - - {% if issue.closed_at != None %} - {{ - issue.closed_at | humanize}} - {% endif %} - - {{ - issue.last_updated | humanize}} - - {% if issue.priority is not none %} - {{ - repo.priorities[issue.priority | string] }} - - {% endif %} - - - {{ issue.user.default_email | avatar(16) | safe }} - {{ issue.user.user }} - - - {% if issue.assignee %} - - {{ issue.assignee.default_email | avatar(16) | safe }} - {{ issue.assignee.user }} - - {% else %} - unassigned - - {% endif %} -
No issues found
-
- -{% if g.repo_admin %} - - - - -{% endif %} +{% if total_page > 1 %} {{ pagination_link('page', g.page, total_page) }} +{% endif %} {% endblock %} {% block jscripts %} {{ super() }} - - - +