Do not DELETE/INSERT enabled_modules when updating project modules.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2473 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Jean-Philippe Lang committed 2009-02-15 16:26:48 +00:00
1 parent 4601ed2f3a
commit b05ed594a0
2 files changed
+24 -5

No files matched your search

+8 -4
View File
@@ -287,10 +287,14 @@ class Project < ActiveRecord::Base
end
def enabled_module_names=(module_names)
enabled_modules.clear
module_names = [] unless module_names && module_names.is_a?(Array)
module_names.each do |name|
enabled_modules << EnabledModule.new(:name => name.to_s)
if module_names && module_names.is_a?(Array)
module_names = module_names.collect(&:to_s)
# remove disabled modules
enabled_modules.each {|mod| mod.destroy unless module_names.include?(mod.name)}
# add new modules
module_names.each {|name| enabled_modules << EnabledModule.new(:name => name)}
else
enabled_modules.clear
end
end