diff options
-rw-r--r-- | app/assets/stylesheets/application.css | 1 | ||||
-rw-r--r-- | app/views/reports/_details.html.erb | 11 | ||||
-rw-r--r-- | app/views/reports/_simple.html.erb | 8 | ||||
-rw-r--r-- | test/functional/reports_controller_test.rb | 11 |
4 files changed, 31 insertions, 0 deletions
diff --git a/app/assets/stylesheets/application.css b/app/assets/stylesheets/application.css index e8242c6ca..630c78476 100644 --- a/app/assets/stylesheets/application.css +++ b/app/assets/stylesheets/application.css @@ -352,6 +352,7 @@ tr.idnt-8 td.subject, tr.idnt-8 td.name {padding-left: 136px; background-positio tr.idnt-9 td.subject, tr.idnt-9 td.name {padding-left: 152px; background-position: 136px 50%;} table.issue-report {table-layout:fixed;} +table.issue-report tr.total, table.issue-report-detailed tr.total { font-weight: bold; border-top:2px solid #d0d7de;} .issue-report-graph {width: 75%; margin: 2em 0;} tr.entry td { white-space: nowrap; } diff --git a/app/views/reports/_details.html.erb b/app/views/reports/_details.html.erb index ab660bc16..930fca6a8 100644 --- a/app/views/reports/_details.html.erb +++ b/app/views/reports/_details.html.erb @@ -24,6 +24,17 @@ </tr> <% end %> </tbody> +<tfoot> +<tr class="total"> + <td><%= l(:label_total) %></td> + <% for status in @statuses %> + <td><%= aggregate data, { "status_id" => status.id } %></td> + <% end %> + <td><%= aggregate data, { "closed" => 0 } %></td> + <td><%= aggregate data, { "closed" => 1 } %></td> + <td><%= aggregate data, { } %></td> +</tr> +</tfoot> </table> <% other_formats_links do |f| %> <%= f.link_to_with_query_parameters 'CSV', {}, :onclick => "showModal('csv-export-options', '330px'); return false;" %> diff --git a/app/views/reports/_simple.html.erb b/app/views/reports/_simple.html.erb index 754b1f21d..2237728b2 100644 --- a/app/views/reports/_simple.html.erb +++ b/app/views/reports/_simple.html.erb @@ -17,6 +17,14 @@ <td><%= aggregate_link data, { field_name => row.id }, aggregate_path(@project, field_name, row, :status_id => "*", :subproject_id => nil) %></td> </tr> <% end %> +<tfoot> +<tr class="total"> + <td><%= l(:label_total) %></td> + <td><%= aggregate data, { "closed" => 0 } %></td> + <td><%= aggregate data, { "closed" => 1 } %></td> + <td><%= aggregate data, { } %></td> +</tr> +</tfoot> </tbody> </table> <% end %> diff --git a/test/functional/reports_controller_test.rb b/test/functional/reports_controller_test.rb index 497176b1d..a68c13536 100644 --- a/test/functional/reports_controller_test.rb +++ b/test/functional/reports_controller_test.rb @@ -208,6 +208,17 @@ class ReportsControllerTest < Redmine::ControllerTest assert_select ':nth-child(9)', :text => '1' # closed assert_select ':nth-child(10)', :text => '3' # total end + assert_select 'table.list tfoot :nth-child(1)' do + assert_select 'td', :text => 'Total' + assert_select ':nth-child(2)', :text => '3' # status:1 + assert_select ':nth-child(3)', :text => '0' # status:2 + assert_select ':nth-child(4)', :text => '0' # status:3 + assert_select ':nth-child(5)', :text => '0' # status:4 + assert_select ':nth-child(6)', :text => '1' # status:5 + assert_select ':nth-child(8)', :text => '3' # open + assert_select ':nth-child(9)', :text => '1' # closed + assert_select ':nth-child(10)', :text => '4' # total + end end def test_get_issue_report_details_by_assignee_should_show_non_assigned_issue_count |