From 54a1829af9063d649c9c366271be0f58a3ea162a Mon Sep 17 00:00:00 2001 From: Marius BALTEANU Date: Sun, 16 Dec 2018 15:18:37 +0000 Subject: [PATCH] Group time entries by created date --- app/models/time_entry_query.rb | 2 +- test/functional/timelog_controller_test.rb | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/app/models/time_entry_query.rb b/app/models/time_entry_query.rb index a612ba7..2fa8be2 100644 --- a/app/models/time_entry_query.rb +++ b/app/models/time_entry_query.rb @@ -23,7 +23,7 @@ class TimeEntryQuery < Query self.available_columns = [ QueryColumn.new(:project, :sortable => "#{Project.table_name}.name", :groupable => true), QueryColumn.new(:spent_on, :sortable => ["#{TimeEntry.table_name}.spent_on", "#{TimeEntry.table_name}.created_on"], :default_order => 'desc', :groupable => true), - QueryColumn.new(:created_on, :sortable => "#{TimeEntry.table_name}.created_on", :default_order => 'desc'), + TimestampQueryColumn.new(:created_on, :sortable => "#{TimeEntry.table_name}.created_on", :default_order => 'desc', :groupable => true), QueryColumn.new(:tweek, :sortable => ["#{TimeEntry.table_name}.spent_on", "#{TimeEntry.table_name}.created_on"], :caption => :label_week), QueryColumn.new(:user, :sortable => lambda {User.fields_for_order_statement}, :groupable => true), QueryColumn.new(:activity, :sortable => "#{TimeEntryActivity.table_name}.position", :groupable => true), diff --git a/test/functional/timelog_controller_test.rb b/test/functional/timelog_controller_test.rb index 1139d07..51c9309 100644 --- a/test/functional/timelog_controller_test.rb +++ b/test/functional/timelog_controller_test.rb @@ -1257,4 +1257,18 @@ class TimelogControllerTest < Redmine::ControllerTest assert_not_nil line assert_include "#{issue.tracker} #1: #{issue.subject}", line end + + def test_index_grouped_by_created_on + skip unless TimeEntryQuery.new.groupable_columns.detect {|c| c.name == :created_on} + + get :index, :params => { + :set_filter => 1, + :group_by => 'created_on' + } + assert_response :success + + assert_select 'tr.group span.name', :text => '03/23/2007' do + assert_select '+ span.count', :text => '2' + end + end end -- 2.1.4