19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
# File 'app/controllers/concerns/models_controller/merge.rb', line 19
def merge
@target = nil
@template = nil
if @merge_params[:target] == "==new=="
@target = Model.create_from(@models.first, name: @models.first.name)
elsif @merge_params[:target] == "==common_root=="
path = Model.common_root(*@models)
name = File.basename(path).humanize.tr("+", " ").careful_titleize
@target = Model.create_from(@models.first, name: name, path: path)
elsif @merge_params[:target]
@target = Model.find_param(@merge_params[:target])
end
if @target
authorize @target
@target.merge!(@models)
redirect_to @target, notice: t("models.merge.success")
else
skip_authorization
redirect_to configure_merge_models_path(models: @models.map(&:public_id))
end
end
|