From 9101dcf11101ef5838dfc06ed3f4c4238d2d11c5 Mon Sep 17 00:00:00 2001 From: Go MAEDA <maeda@farend.jp> Date: Wed, 30 Jun 2021 02:39:18 +0000 Subject: Project specific TimeEntryActivity name not updating properly (#21056). Patch by Mizuki ISHIKAWA. git-svn-id: http://svn.redmine.org/redmine/trunk@21054 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- app/models/enumeration.rb | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'app') diff --git a/app/models/enumeration.rb b/app/models/enumeration.rb index 83efea6df..53360e5ff 100644 --- a/app/models/enumeration.rb +++ b/app/models/enumeration.rb @@ -30,6 +30,7 @@ class Enumeration < ActiveRecord::Base before_destroy :check_integrity before_save :check_default + after_save :update_children_name validates_presence_of :name validates_uniqueness_of :name, :scope => [:type, :project_id], :case_sensitive => true @@ -136,6 +137,12 @@ class Enumeration < ActiveRecord::Base raise "Cannot delete enumeration" if self.in_use? end + def update_children_name + if saved_change_to_name? && self.parent_id.nil? + self.class.where(name: self.name_before_last_save, parent_id: self.id).update_all(name: self.name_in_database) + end + end + # Overrides Redmine::Acts::Positioned#set_default_position so that enumeration overrides # get the same position as the overridden enumeration def set_default_position -- cgit v1.2.3