class Glass::Generators::InstallGenerator
Public Class Methods
next_migration_number(path)
click to toggle source
# File lib/generators/glass/install/install_generator.rb, line 25 def self.next_migration_number(path) (Time.now.utc.strftime("%Y%m%d%H%M%S").to_i + 1).to_s end
source_root()
click to toggle source
# File lib/generators/glass/install/install_generator.rb, line 11 def self.source_root @source_root ||= File.expand_path(File.join(File.dirname(__FILE__), 'templates')) end
Public Instance Methods
copy_glass_templates()
click to toggle source
# File lib/generators/glass/install/install_generator.rb, line 40 def copy_glass_templates directory("glass_templates", "app/views/glass") end
create_configuration_file()
click to toggle source
# File lib/generators/glass/install/install_generator.rb, line 15 def create_configuration_file copy_file("google-oauth.yml", "config/google-api-keys.yml") end
create_glass_account_migration()
click to toggle source
# File lib/generators/glass/install/install_generator.rb, line 19 def create_glass_account_migration generate("model", "google_account token refresh_token expires_at:integer email name id_token:text verification_secret #{user_model.underscore.singularize}:references") remove_file("app/models/google_account.rb") template("google_account.rb", "app/models/google_account.rb") insert_into_file("app/models/#{user_model.underscore.singularize}.rb", "\n\s\shas_one :google_account\n\n", after: "ActiveRecord::Base\n") end
create_initializer()
click to toggle source
# File lib/generators/glass/install/install_generator.rb, line 37 def create_initializer copy_file "initializer.rb", "config/initializers/glass.rb" end
create_subscription_notifications_controller()
click to toggle source
# File lib/generators/glass/install/install_generator.rb, line 31 def create_subscription_notifications_controller generate("controller", "glass/notifications") remove_file("app/controllers/glass/notifications_controller.rb") template("notifications_controller.rb", "app/controllers/glass/notifications_controller.rb") insert_into_file("config/routes.rb", "\n\s\spost 'glass/notifications', to: 'glass/notifications#callback', as: 'glass_notifications_callback'\n\n", after: "routes.draw\sdo\n") end
create_timeline_items_migration()
click to toggle source
# File lib/generators/glass/install/install_generator.rb, line 28 def create_timeline_items_migration migration_template "glass_timeline_item_migration.rb", "db/migrate/create_glass_timeline_items.rb" end