aboutsummaryrefslogtreecommitdiffstats
path: root/spec/dummy/db/migrate/20110117053357_remove_duplicate_user_image_sizes_setting.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/dummy/db/migrate/20110117053357_remove_duplicate_user_image_sizes_setting.rb')
m---------spec/dummy0
-rw-r--r--spec/dummy/db/migrate/20110117053357_remove_duplicate_user_image_sizes_setting.rb22
2 files changed, 22 insertions, 0 deletions
diff --git a/spec/dummy b/spec/dummy
deleted file mode 160000
-Subproject 36f851b7d5eca685475eb3a232e1d8dabfb1653
diff --git a/spec/dummy/db/migrate/20110117053357_remove_duplicate_user_image_sizes_setting.rb b/spec/dummy/db/migrate/20110117053357_remove_duplicate_user_image_sizes_setting.rb
new file mode 100644
index 0000000..9b6db2b
--- /dev/null
+++ b/spec/dummy/db/migrate/20110117053357_remove_duplicate_user_image_sizes_setting.rb
@@ -0,0 +1,22 @@
+class RemoveDuplicateUserImageSizesSetting < ActiveRecord::Migration
+ def self.up
+ if (settings = ::Refinery::Setting.where(:name => :user_image_sizes)).count > 1
+ default_value = { :small => '110x110>', :medium => '225x255>', :large => '450x450>' }
+
+ if (non_default_setting = settings.detect { |setting| setting[:value] != default_value })
+ settings.detect { |setting| setting[:value] == default_value }.destroy
+ non_default_setting[:destroyable] = false
+ non_default_setting.save
+ else
+ settings.detect { |setting| setting[:destroyable] == true }.destroy
+ end
+ say "Removed duplicate user image sizes settings"
+ else
+ say "Nothing done, no duplicate settings found"
+ end
+ end
+
+ def self.down
+ # there is no step down ...
+ end
+end