Commit 548b315edf0a4005f54d0bb6153720524c1eef89

Authored by Fabio Teixeira
1 parent 63bae030

Add migration to add statictic block to all softwares

Signed-off-by: Fabio Teixeira <fabio1079@gmail.com>
Signed-off-by: Luciano Prestes <lucianopcbr@gmail.com>
db/migrate/20150907190532_add_statistic_block_to_all_softwares.rb 0 → 100644
... ... @@ -0,0 +1,53 @@
  1 +class AddStatisticBlockToAllSoftwares < ActiveRecord::Migration
  2 + def up
  3 + software_template = Community["software"]
  4 +
  5 + if software_template
  6 + software_area_two = software_template.boxes.find_by_position 2
  7 +
  8 + statistic_block_template = StatisticBlock.new :mirror => true, :move_modes => "none", :edit_modes => "none"
  9 + statistic_block_template.settings[:fixed] = true
  10 + statistic_block_template.display = "home_page_only"
  11 + statistic_block_template.save!
  12 + print "."
  13 +
  14 + software_area_two.blocks << statistic_block_template
  15 + software_area_two.save!
  16 + print "."
  17 +
  18 + # Puts the ratings block as the last one on area one
  19 + first_block_position = software_area_two.blocks.order(:position).first.position
  20 + statistic_block_template.position = first_block_position + 1
  21 + statistic_block_template.save!
  22 + print "."
  23 + end
  24 +
  25 + Community.joins(:software_info).each do |software_community|
  26 + software_area_two = software_community.boxes.find_by_position 2
  27 + print "."
  28 +
  29 + statistic_block = StatisticBlock.new :move_modes => "none", :edit_modes => "none"
  30 + statistic_block.settings[:fixed] = true
  31 + statistic_block.display = "home_page_only"
  32 + statistic_block.mirror_block_id = statistic_block_template.id
  33 + statistic_block.save!
  34 + print "."
  35 +
  36 + software_area_two.blocks << statistic_block
  37 + software_area_two.save!
  38 + print "."
  39 +
  40 + # Puts the ratings block as the last one on area one
  41 + first_block_position = software_area_two.blocks.order(:position).first.position
  42 + statistic_block.position = first_block_position + 1
  43 + statistic_block.save!
  44 + print "."
  45 + end
  46 +
  47 + puts ""
  48 + end
  49 +
  50 + def down
  51 + say "This can't be reverted"
  52 + end
  53 +end
... ...