From 5dba10c4903cc93a035e764576b56ab690ed6463 Mon Sep 17 00:00:00 2001 From: Marius Balteanu Date: Mon, 20 Jun 2022 17:41:24 +0000 Subject: Merged r21668 and r21669 to 4.2-stable (#33914). git-svn-id: https://svn.redmine.org/redmine/branches/4.2-stable@21671 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- app/models/time_entry.rb | 2 +- app/models/time_entry_activity.rb | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) (limited to 'app') diff --git a/app/models/time_entry.rb b/app/models/time_entry.rb index e72c05117..6867dc95c 100644 --- a/app/models/time_entry.rb +++ b/app/models/time_entry.rb @@ -107,7 +107,7 @@ class TimeEntry < ActiveRecord::Base def initialize(attributes=nil, *args) super if new_record? && self.activity.nil? - if default_activity = TimeEntryActivity.default + if default_activity = TimeEntryActivity.default(self.project) self.activity_id = default_activity.id end self.hours = nil if hours == 0 diff --git a/app/models/time_entry_activity.rb b/app/models/time_entry_activity.rb index f4562a8e1..d988129c9 100644 --- a/app/models/time_entry_activity.rb +++ b/app/models/time_entry_activity.rb @@ -22,6 +22,16 @@ class TimeEntryActivity < Enumeration OptionName = :enumeration_activities + def self.default(project=nil) + default_activity = super() + + if default_activity.nil? || project.nil? || project.activities.blank? || project.activities.include?(default_activity) + return default_activity + end + + project.activities.detect { |activity| activity.parent_id == default_activity.id } + end + def option_name OptionName end -- cgit v1.2.3