Class: RedminePluginGenerator

Inherits:
Rails::Generator::NamedBase
  • Object
show all
Defined in:
lib/generators/redmine_plugin/redmine_plugin_generator.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(runtime_args, runtime_options = {}) ⇒ RedminePluginGenerator

Returns a new instance of RedminePluginGenerator.



4
5
6
7
8
9
# File 'lib/generators/redmine_plugin/redmine_plugin_generator.rb', line 4

def initialize(runtime_args, runtime_options = {})
  super
  @plugin_name = "redmine_#{file_name.underscore}"
  @plugin_pretty_name = plugin_name.titleize
  @plugin_path = "vendor/plugins/#{plugin_name}"
end

Instance Attribute Details

#plugin_nameObject (readonly)

Returns the value of attribute plugin_name.



2
3
4
# File 'lib/generators/redmine_plugin/redmine_plugin_generator.rb', line 2

def plugin_name
  @plugin_name
end

#plugin_pathObject (readonly)

Returns the value of attribute plugin_path.



2
3
4
# File 'lib/generators/redmine_plugin/redmine_plugin_generator.rb', line 2

def plugin_path
  @plugin_path
end

#plugin_pretty_nameObject (readonly)

Returns the value of attribute plugin_pretty_name.



2
3
4
# File 'lib/generators/redmine_plugin/redmine_plugin_generator.rb', line 2

def plugin_pretty_name
  @plugin_pretty_name
end

Instance Method Details

#manifestObject



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/generators/redmine_plugin/redmine_plugin_generator.rb', line 11

def manifest
  record do |m|
    m.directory "#{plugin_path}/app/controllers"
    m.directory "#{plugin_path}/app/helpers"
    m.directory "#{plugin_path}/app/models"
    m.directory "#{plugin_path}/app/views"
    m.directory "#{plugin_path}/db/migrate"
    m.directory "#{plugin_path}/lib/tasks"
    m.directory "#{plugin_path}/assets/images"
    m.directory "#{plugin_path}/assets/javascripts"
    m.directory "#{plugin_path}/assets/stylesheets"
    m.directory "#{plugin_path}/lang"
    m.directory "#{plugin_path}/config/locales"
    m.directory "#{plugin_path}/test"
    
    m.template 'README.rdoc',    "#{plugin_path}/README.rdoc"
    m.template 'init.rb.erb',   "#{plugin_path}/init.rb"
    m.template 'en.yml',    "#{plugin_path}/lang/en.yml"
    m.template 'en_rails_i18n.yml',    "#{plugin_path}/config/locales/en.yml"
    m.template 'test_helper.rb.erb',    "#{plugin_path}/test/test_helper.rb"
  end
end