From f40c3dc6eaed365f14059592e56b0ab9df133052 Mon Sep 17 00:00:00 2001 From: Marius BALTEANU Date: Sat, 18 Apr 2020 17:57:49 +0300 Subject: [PATCH] Show open/closed badge on issue page --- app/helpers/issue_statuses_helper.rb | 7 +++++++ app/helpers/issues_helper.rb | 1 + app/views/issues/show.html.erb | 3 ++- app/views/versions/index.html.erb | 2 +- app/views/versions/show.html.erb | 2 +- public/stylesheets/application.css | 4 +++- test/functional/issues_controller_test.rb | 14 ++++++++++++++ 7 files changed, 29 insertions(+), 4 deletions(-) diff --git a/app/helpers/issue_statuses_helper.rb b/app/helpers/issue_statuses_helper.rb index 86cb87268..c57b94233 100644 --- a/app/helpers/issue_statuses_helper.rb +++ b/app/helpers/issue_statuses_helper.rb @@ -18,4 +18,11 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. module IssueStatusesHelper + def issue_status_type_badge(status) + if status.is_closed? + content_tag('span', l(:label_closed_issues), class: 'badge badge-status-closed') + else + content_tag('span', l(:label_open_issues), class: 'badge badge-status-open') + end + end end diff --git a/app/helpers/issues_helper.rb b/app/helpers/issues_helper.rb index f212f1a2a..792c5a508 100644 --- a/app/helpers/issues_helper.rb +++ b/app/helpers/issues_helper.rb @@ -20,6 +20,7 @@ module IssuesHelper include ApplicationHelper include Redmine::Export::PDF::IssuesPdfHelper + include IssueStatusesHelper def issue_list(issues, &block) ancestors = [] diff --git a/app/views/issues/show.html.erb b/app/views/issues/show.html.erb index 7c180a4d3..5dcd833ac 100644 --- a/app/views/issues/show.html.erb +++ b/app/views/issues/show.html.erb @@ -1,6 +1,7 @@ <%= render :partial => 'action_menu' %> -

<%= issue_heading(@issue) %>

+

<%= issue_heading(@issue) %>

+<%= issue_status_type_badge(@issue.status) %>
<% if @prev_issue_id || @next_issue_id %> diff --git a/app/views/versions/index.html.erb b/app/views/versions/index.html.erb index afe9b463c..61fbe05ab 100644 --- a/app/views/versions/index.html.erb +++ b/app/views/versions/index.html.erb @@ -22,7 +22,7 @@
<% end %>
-

<%= link_to_version version, :name => version_anchor(version) %>

+

<%= link_to_version version, :name => version_anchor(version) %>

<%= l("version_status_#{version.status}") %>
<%= render :partial => 'versions/overview', :locals => {:version => version} %> diff --git a/app/views/versions/show.html.erb b/app/views/versions/show.html.erb index d73485a8c..0527eae9c 100644 --- a/app/views/versions/show.html.erb +++ b/app/views/versions/show.html.erb @@ -7,7 +7,7 @@
-

<%= @version.name %>

+

<%= @version.name %>

<%= l("version_status_#{@version.status}") %> <%= render :partial => 'versions/overview', :locals => {:version => @version} %> diff --git a/public/stylesheets/application.css b/public/stylesheets/application.css index a7512bd48..9c7baffa3 100644 --- a/public/stylesheets/application.css +++ b/public/stylesheets/application.css @@ -132,6 +132,7 @@ div.modal .box p {margin: 0.3em 0;} .mobile-show {display: none;} .hidden {display: none;} +.inline-flex {display: inline-flex;} /***** Links *****/ a, a:link, a:visited{ color: #169; text-decoration: none; } @@ -532,6 +533,7 @@ div.issue .attributes .attribute {padding-left:180px; clear:left; min-height: 1. div.issue .attributes .attribute .label {width: 170px; margin-left:-180px; font-weight:bold; float:left; overflow:hidden; text-overflow: ellipsis;} div.issue .attribute .value {overflow:auto; text-overflow: ellipsis;} div.issue.overdue .due-date .value { color: #c22; } +body.controller-issues h2.inline-flex {padding-right: 0} #issue_tree table.issues, #relations table.issues { border: 0; } #issue_tree td.checkbox, #relations td.checkbox {display:none;} @@ -614,7 +616,7 @@ div#roadmap .related-issues td.assigned_to img { padding-left: 4px; padding-righ div#roadmap .wiki h1:first-child { display: none; } div#roadmap .wiki h1 { font-size: 120%; } div#roadmap .wiki h2 { font-size: 110%; } -div#roadmap h2, div#roadmap h3 { display: inline; padding-right: 0;} +div#roadmap h2, div#roadmap h3 {padding-right: 0;} body.controller-versions.action-show div#roadmap .related-issues {width:70%;} div#version-summary { float:right; width:28%; margin-left: 16px; margin-bottom: 16px; background-color: #fff; } diff --git a/test/functional/issues_controller_test.rb b/test/functional/issues_controller_test.rb index 6853abf1f..a33605bf9 100644 --- a/test/functional/issues_controller_test.rb +++ b/test/functional/issues_controller_test.rb @@ -2995,6 +2995,20 @@ class IssuesControllerTest < Redmine::ControllerTest end end + def test_show_should_display_open_badge_for_open_issue + get :show, params: {id: 1} + + assert_response :success + assert_select 'span.badge.badge-status-open', text: 'open' + end + + def test_show_should_display_closed_badge_for_closed_issue + get :show, params: {id: 8} + + assert_response :success + assert_select 'span.badge.badge-status-closed', text: 'closed' + end + def test_get_new @request.session[:user_id] = 2 get( -- 2.22.0