diff --git a/plugins/container_block/controllers/container_block_plugin_controller.rb b/plugins/container_block/controllers/container_block_plugin_controller.rb index df02cdc..d67efa9 100644 --- a/plugins/container_block/controllers/container_block_plugin_controller.rb +++ b/plugins/container_block/controllers/container_block_plugin_controller.rb @@ -1,5 +1,5 @@ module ContainerBlockPluginController - + def saveWidths container = boxes_holder.blocks.find(params[:id]) pairs = params[:widths].split('|') diff --git a/plugins/container_block/lib/container_block_plugin/container_block.rb b/plugins/container_block/lib/container_block_plugin/container_block.rb index 60b447f..a505a20 100644 --- a/plugins/container_block/lib/container_block_plugin/container_block.rb +++ b/plugins/container_block/lib/container_block_plugin/container_block.rb @@ -2,6 +2,7 @@ class ContainerBlockPlugin::ContainerBlock < Block after_create :create_box after_destroy :destroy_children + after_destroy :destroy_box settings_items :container_box_id, :type => Integer, :default => nil settings_items :children_settings, :type => Hash, :default => {} @@ -28,6 +29,10 @@ class ContainerBlockPlugin::ContainerBlock < Block save! end + def destroy_box + container_box.destroy + end + def container_box Box.find(container_box_id) end diff --git a/plugins/container_block/test/unit/container_block_plugin/container_block_test.rb b/plugins/container_block/test/unit/container_block_plugin/container_block_test.rb index 45b0ff8..2baca7d 100644 --- a/plugins/container_block/test/unit/container_block_plugin/container_block_test.rb +++ b/plugins/container_block/test/unit/container_block_plugin/container_block_test.rb @@ -81,4 +81,11 @@ class ContainerBlockPlugin::ContainerBlockTest < ActiveSupport::TestCase assert !Block.exists?(child.id) end + should 'destroy box when container is removed' do + @block.save! + assert_difference Box, :count, -1 do + @block.destroy + end + end + end -- libgit2 0.21.2