diff --git a/tracks/db/migrate/013_convert_preferences.rb b/tracks/db/migrate/013_convert_preferences.rb index dca4b50e..0ae0fed1 100644 --- a/tracks/db/migrate/013_convert_preferences.rb +++ b/tracks/db/migrate/013_convert_preferences.rb @@ -3,12 +3,13 @@ class ConvertPreferences < ActiveRecord::Migration class User < ActiveRecord::Base; has_one :preference; serialize :preferences; end def self.up + ActiveRecord::Base.transaction do @users = User.find(:all) @users.each do |user| user.create_preference user.preference.date_format = user.preferences['date_format'] user.preference.week_starts = user.preferences['week_starts'] - user.preference.show_number_completed = user.preferences['show_number_completed'] + user.preference.show_number_completed = user.preferences['no_completed'] user.preference.staleness_starts = user.preferences['staleness_starts'] user.preference.show_completed_projects_in_sidebar = user.preferences['show_completed_projects_in_sidebar'] user.preference.show_hidden_contexts_in_sidebar = user.preferences['show_hidden_contexts_in_sidebar'] @@ -19,22 +20,25 @@ class ConvertPreferences < ActiveRecord::Migration end remove_column :users, :preferences end + end def self.down - add_column :users, :preferences, :text - @users = User.find(:all) - @users.each do |user| - user.preferences = { "date_format" => "#{user.preference.date_format}", - "week_starts" => "#{user.preference.week_starts}", - "no_completed" => "#{user.preference.show_number_completed}", - "staleness_starts" => "#{user.preference.staleness_starts}", - "show_completed_projects_in_sidebar" => "#{user.preference.show_completed_projects_in_sidebar}", - "show_hidden_contexts_in_sidebar" => "#{user.preference.show_hidden_contexts_in_sidebar}", - "due_style" => "#{user.preference.due_style}", - "admin_email" => "#{user.preference.admin_email}", - "refresh" => "#{user.preference.refresh}" - } - user.save + ActiveRecord::Base.transaction do + add_column :users, :preferences, :text + @users = User.find(:all) + @users.each do |user| + user.preferences = { "date_format" => "#{user.preference.date_format}", + "week_starts" => "#{user.preference.week_starts}", + "no_completed" => "#{user.preference.show_number_completed}", + "staleness_starts" => "#{user.preference.staleness_starts}", + "show_completed_projects_in_sidebar" => "#{user.preference.show_completed_projects_in_sidebar}", + "show_hidden_contexts_in_sidebar" => "#{user.preference.show_hidden_contexts_in_sidebar}", + "due_style" => "#{user.preference.due_style}", + "admin_email" => "#{user.preference.admin_email}", + "refresh" => "#{user.preference.refresh}" + } + user.save + end end end end