Commit 9e6d7e74f4c2e584c1210635c0e53f55782e6b86

Authored by Arthur Esposte
1 parent 16987144

Fix software box organize task

src/noosfero-spb/spb_migrations/lib/tasks/box_organizer.rake
... ... @@ -6,10 +6,14 @@ namespace :software do
6 6 software_template = Community["software"]
7 7 next unless software_template.is_template?
8 8  
  9 + existing_blocks = Block.count
  10 +
  11 + puts "Last block id: #{Block.last.id}"
  12 + puts "Create template boxes:"
  13 +
9 14 software_area_four = software_template.boxes.find_by_position 4
10 15 four = false
11 16  
12   - puts "Area Four Blocks"
13 17 if software_area_four.blocks.first.class != BreadcrumbsPlugin::ContentBreadcrumbsBlock
14 18 template_breadcrumbs_block = BreadcrumbsPlugin::ContentBreadcrumbsBlock.new :mirror => true, :move_modes => "none", :edit_modes => "none"
15 19 template_breadcrumbs_block.settings[:fixed] = true
... ... @@ -19,7 +23,6 @@ namespace :software do
19 23 software_area_four.blocks << template_breadcrumbs_block
20 24 software_area_four.save!
21 25  
22   - # Puts the breadcrumbs as the first one on area four
23 26 pos = software_area_four.blocks.order(:position).first.position
24 27 change_block_pos(software_area_four, template_breadcrumbs_block, pos)
25 28 print "."
... ... @@ -31,7 +34,6 @@ namespace :software do
31 34 software_area_two = software_template.boxes.find_by_position 2
32 35 two = false
33 36  
34   - puts "Area Two Blocks"
35 37 if software_area_two.blocks.last.class != SoftwareEventsBlock
36 38 template_software_events = SoftwareEventsBlock.new :mirror => true, :move_modes => "none", :edit_modes => "all"
37 39 template_software_events.title = "Outros Eventos"
... ... @@ -41,7 +43,6 @@ namespace :software do
41 43 software_area_two.blocks << template_software_events
42 44 software_area_two.save!
43 45  
44   - # Puts the breadcrumbs as the first one on area four
45 46 pos = software_area_two.blocks.order(:position).last.position
46 47 change_block_pos(software_area_four, template_software_events, pos+1)
47 48 print "."
... ... @@ -53,7 +54,6 @@ namespace :software do
53 54 software_area_one = software_template.boxes.find_by_position 1
54 55 one = false
55 56  
56   - puts "Area One Blocks"
57 57 if software_area_one.blocks[-2].class != SoftwareEventsBlock
58 58 second_template_software_events = SoftwareEventsBlock.new :mirror => true, :move_modes => "none", :edit_modes => "all"
59 59 second_template_software_events.display = "except_home_page"
... ... @@ -62,7 +62,6 @@ namespace :software do
62 62 software_area_one.blocks << second_template_software_events
63 63 software_area_one.save!
64 64  
65   - # Puts the breadcrumbs as the first one on area four
66 65 pos = software_area_one.blocks.order(:position).last.position
67 66 change_block_pos(software_area_one, second_template_software_events, pos)
68 67 print "."
... ... @@ -70,10 +69,11 @@ namespace :software do
70 69 end
71 70  
72 71  
  72 + puts "\nCreate software community boxes:"
73 73 Community.joins(:software_info).each do |software_community|
74 74 software_area_four = software_community.boxes.find_by_position 4
75 75  
76   - if four
  76 + if four && software_area_four.blocks.first.class != BreadcrumbsPlugin::ContentBreadcrumbsBlock
77 77 breadcrumbs_block = BreadcrumbsPlugin::ContentBreadcrumbsBlock.new :mirror => true, :move_modes => "none", :edit_modes => "none"
78 78 breadcrumbs_block.settings[:fixed] = true
79 79 breadcrumbs_block.display = "always"
... ... @@ -129,17 +129,20 @@ namespace :software do
129 129 end
130 130  
131 131 print "\n"
  132 +
  133 + puts "Created blocks: #{Block.count - existing_blocks}"
132 134 end
133   -def change_block_pos(box, block, pos)
134   - box.blocks.each do |b|
135   - if b.position >= pos
136   - b.position += 1
137   - b.save
  135 +
  136 + def change_block_pos(box, block, pos)
  137 + box.blocks.each do |b|
  138 + if b.position >= pos
  139 + b.position += 1
  140 + b.save
  141 + end
138 142 end
139   - end
140 143  
141   - block.position = pos
142   - block.save
143   -end
  144 + block.position = pos
  145 + block.save
  146 + end
144 147 end
145 148  
... ...