aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTeddy Wing2012-05-30 21:29:27 -0400
committerTeddy Wing2012-05-30 21:29:27 -0400
commit75e0c4ecef65f9ae707dbc8abc1cd2c8ae9a39b4 (patch)
tree1901e9011b4fa4224303720213b73f3ab3722ca6
parent21d5ee288e356f7ec9cc2ad45128c6b8073fdc05 (diff)
downloadinboxes-75e0c4ecef65f9ae707dbc8abc1cd2c8ae9a39b4.tar.bz2
Generators: removed inboxes_settings table creation from install, moved it to add_inboxes_settings. Not sure if this is a good thing.
-rw-r--r--lib/generators/inboxes/add_inboxes_settings_generator.rb36
-rw-r--r--lib/generators/inboxes/templates/add_inboxes_settings.rb10
-rw-r--r--lib/generators/inboxes/templates/install.rb8
3 files changed, 46 insertions, 8 deletions
diff --git a/lib/generators/inboxes/add_inboxes_settings_generator.rb b/lib/generators/inboxes/add_inboxes_settings_generator.rb
new file mode 100644
index 0000000..64e2f54
--- /dev/null
+++ b/lib/generators/inboxes/add_inboxes_settings_generator.rb
@@ -0,0 +1,36 @@
+require 'rails/generators'
+require 'rails/generators/migration'
+
+module Inboxes
+ module Generators
+ class AddInboxesSettingsGenerator < Rails::Generators::Base
+ include Rails::Generators::Migration
+
+ source_root File.expand_path("../templates", __FILE__)
+
+ desc "Generates migration for Inboxes Settings"
+
+ def self.orm
+ Rails::Generators.options[:rails][:orm]
+ end
+
+ def self.orm_has_migration?
+ [:active_record].include? orm
+ end
+
+ def self.next_migration_number(dirname)
+ if ActiveRecord::Base.timestamped_migrations
+ migration_number = Time.now.utc.strftime("%Y%m%d%H%M%S").to_i
+ migration_number += 1
+ migration_number.to_s
+ else
+ "%.3d" % (current_migration_number(dirname) + 1)
+ end
+ end
+
+ def copy_migration
+ migration_template 'add_inboxes_settings.rb', 'db/migrate/add_inboxes_settings_inboxes.rb'
+ end
+ end
+ end
+end
diff --git a/lib/generators/inboxes/templates/add_inboxes_settings.rb b/lib/generators/inboxes/templates/add_inboxes_settings.rb
new file mode 100644
index 0000000..a17dc81
--- /dev/null
+++ b/lib/generators/inboxes/templates/add_inboxes_settings.rb
@@ -0,0 +1,10 @@
+class AddInboxesSettingsInboxes < ActiveRecord::Migration
+ def self.change
+ create_table :inboxes_settings do |t|
+ t.references :user
+ t.boolean :send_email_notification, :default => 1
+
+ t.timestamps
+ end
+ end
+end
diff --git a/lib/generators/inboxes/templates/install.rb b/lib/generators/inboxes/templates/install.rb
index 18a8a6c..472cd95 100644
--- a/lib/generators/inboxes/templates/install.rb
+++ b/lib/generators/inboxes/templates/install.rb
@@ -20,19 +20,11 @@ class InstallInboxes < ActiveRecord::Migration
t.timestamps
end
-
- create_table :inboxes_settings do |t|
- t.references :user
- t.boolean :send_email_notification, :default => 1
-
- t.timestamps
- end
end
def self.down
drop_table :speakers
drop_table :discussions
drop_table :messages
- drop_table :inboxes_settings
end
end