Class: DynamicContent::Generators::InstallGenerator

Inherits:
ActiveRecord::Generators::Base
  • Object
show all
Defined in:
lib/generators/dynamic_content/install/install_generator.rb

Instance Method Summary collapse

Instance Method Details

#copy_initializerObject



17
18
19
20
21
22
23
# File 'lib/generators/dynamic_content/install/install_generator.rb', line 17

def copy_initializer
  return if options[:skip_initializer]

  @locale = locale =~ /-/ ? "'#{locale}'" : locale
  template 'initializer.rb.erb', 'config/initializers/dynamic_content.rb'
  template 'dragonfly_initializer.rb.erb', 'config/initializers/dragonfly.rb'
end

#copy_structure_fileObject



25
26
27
# File 'lib/generators/dynamic_content/install/install_generator.rb', line 25

def copy_structure_file
  template 'structure.yml', 'db/seeds/dynamic_content.yml'
end

#create_migrationsObject



53
54
55
56
57
# File 'lib/generators/dynamic_content/install/install_generator.rb', line 53

def create_migrations
  migration_template 'migrations/create_dynamic_content_pages.rb.erb', 'db/migrate/create_dynamic_content_pages.rb'
  migration_template 'migrations/create_dynamic_content_sections.rb.erb', 'db/migrate/create_dynamic_content_sections.rb'
  migration_template 'migrations/create_dynamic_content_contents.rb.erb', 'db/migrate/create_dynamic_content_contents.rb'
end

#create_rake_taskObject



39
40
41
42
43
44
45
46
47
48
49
50
51
# File 'lib/generators/dynamic_content/install/install_generator.rb', line 39

def create_rake_task
  rakefile "dynamic_content.rake" do
    %Q{
      namespace :dynamic_content do
        desc "Update Dynamic Content structure file"
        task update: :environment do
          Rails.logger = Logger.new(STDOUT)
          DynamicContent.process
        end
      end
}
  end
end

#setup_activeadminObject



29
30
31
32
33
34
35
36
37
# File 'lib/generators/dynamic_content/install/install_generator.rb', line 29

def setup_activeadmin
  return if options[:skip_activeadmin] || !defined?(::ActiveAdmin)

  empty_directory "app/views/admin"
  empty_directory "app/admin"
  template 'admin_pages.rb', 'app/admin/pages.rb'
  copy_file '_dynamic_inputs.html.erb', 'app/views/admin/pages/_dynamic_inputs.html.erb'
  copy_file '_forms.html.erb', 'app/views/admin/pages/_forms.html.erb'
end