Commit 88b02d90b555e1cf3ca26355af6a592881e27b65
1 parent
040b05e2
Exists in
master
and in
29 other branches
Fix cloning blocks at environment_design
(ActionItem3046)
Showing
5 changed files
with
17 additions
and
8 deletions
Show diff stats
app/controllers/box_organizer_controller.rb
... | ... | @@ -99,6 +99,12 @@ class BoxOrganizerController < ApplicationController |
99 | 99 | end |
100 | 100 | end |
101 | 101 | |
102 | + def clone_block | |
103 | + block = Block.find(params[:id]) | |
104 | + block.duplicate | |
105 | + redirect_to :action => 'index' | |
106 | + end | |
107 | + | |
102 | 108 | protected :boxes_editor? |
103 | 109 | |
104 | 110 | end | ... | ... |
app/controllers/my_profile/profile_design_controller.rb
app/helpers/boxes_helper.rb
... | ... | @@ -212,7 +212,7 @@ module BoxesHelper |
212 | 212 | |
213 | 213 | if !block.main? |
214 | 214 | buttons << icon_button(:delete, _('Remove block'), { :action => 'remove', :id => block.id }, { :method => 'post', :confirm => _('Are you sure you want to remove this block?')}) |
215 | - buttons << icon_button(:clone, _('Clone'), { :action => 'clone', :id => block.id }, { :method => 'post' }) | |
215 | + buttons << icon_button(:clone, _('Clone'), { :action => 'clone_block', :id => block.id }, { :method => 'post' }) | |
216 | 216 | end |
217 | 217 | |
218 | 218 | if block.respond_to?(:help) | ... | ... |
test/functional/environment_design_controller_test.rb
... | ... | @@ -370,4 +370,13 @@ class EnvironmentDesignControllerTest < ActionController::TestCase |
370 | 370 | assert @controller.instance_variable_get('@side_block_types').include?(CustomBlock8) |
371 | 371 | end |
372 | 372 | |
373 | + should 'clone a block' do | |
374 | + login_as(create_admin_user(Environment.default)) | |
375 | + block = TagsBlock.create! | |
376 | + assert_difference TagsBlock, :count, 1 do | |
377 | + post :clone_block, :id => block.id | |
378 | + assert_response :redirect | |
379 | + end | |
380 | + end | |
381 | + | |
373 | 382 | end | ... | ... |
test/functional/profile_design_controller_test.rb
... | ... | @@ -739,7 +739,7 @@ class ProfileDesignControllerTest < ActionController::TestCase |
739 | 739 | should 'clone a block' do |
740 | 740 | block = ProfileImageBlock.create!(:box => profile.boxes.first) |
741 | 741 | assert_difference ProfileImageBlock, :count, 1 do |
742 | - post :clone, :id => block.id, :profile => profile.identifier | |
742 | + post :clone_block, :id => block.id, :profile => profile.identifier | |
743 | 743 | assert_response :redirect |
744 | 744 | end |
745 | 745 | end | ... | ... |