diff --git a/src/noosfero-spb/software_communities/db/migrate/20151116134125_add_statistics_to_software_info.rb b/src/noosfero-spb/software_communities/db/migrate/20151116134125_add_statistics_to_software_info.rb new file mode 100644 index 0000000..26832f4 --- /dev/null +++ b/src/noosfero-spb/software_communities/db/migrate/20151116134125_add_statistics_to_software_info.rb @@ -0,0 +1,11 @@ +class AddStatisticsToSoftwareInfo < ActiveRecord::Migration + def up + add_column :software_infos, :benefited_people, :integer, :default => 0 + add_column :software_infos, :saved_resources, :decimal, :default => 0 + end + + def down + remove_column :software_infos, :benefited_people + remove_column :software_infos, :saved_resources + end +end diff --git a/src/noosfero-spb/software_communities/db/migrate/20151116140329_move_software_statistics_from_block_to_software_info.rb b/src/noosfero-spb/software_communities/db/migrate/20151116140329_move_software_statistics_from_block_to_software_info.rb new file mode 100644 index 0000000..12b8db5 --- /dev/null +++ b/src/noosfero-spb/software_communities/db/migrate/20151116140329_move_software_statistics_from_block_to_software_info.rb @@ -0,0 +1,21 @@ +class MoveSoftwareStatisticsFromBlockToSoftwareInfo < ActiveRecord::Migration + def up + SoftwareInfo.find_each do |software| + blocks = software.community.blocks + statistic_blocks = blocks.select { |b| b.type == "StatisticBlock" } + statistic_blocks.each do |a| + software.saved_resources += a.saved_resources + software.benefited_people += a.benefited_people + end + software.save + end + end + + def down + SoftwareInfo.find_each do |software| + software.saved_resources = 0 + software.benefited_people = 0 + software.save + end + end +end -- libgit2 0.21.2