Commit 88b02d90b555e1cf3ca26355af6a592881e27b65
1 parent
040b05e2
Exists in
master
and in
22 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 | ... | ... |