Sha256: 89db1315a2129f23bc6e829ddecf6e3c3fab4ab8302eb2ed1eba4fb6927c0386

Contents?: true

Size: 1.17 KB

Versions: 19

Compression:

Stored size: 1.17 KB

Contents

class Loco::ControllerGenerator < Rails::Generators::NamedBase
  source_root File.expand_path('../templates', __FILE__)

  def create_namespace_controllers
    file_path = File.join Rails.root, 'app', 'assets', 'javascripts', 'controllers'
    class_path.each.with_index do |name, index|
      class_name = class_path[0, index+1].map(&:camelcase).join('.')
      current_file_path = File.join(file_path, *class_path[0, index+1]) + '.coffee'
      data = File.read find_in_source_paths('controller.coffee')
      data.sub! '#{name}', class_name
      data.sub! '#{methods_def}', ''
      create_file current_file_path, data
    end
  end

  def create_controller
    class_name = (class_path + [file_name]).map(&:camelcase).join('.')
    data = File.read find_in_source_paths('controller.coffee')
    data.sub! '#{name}', class_name
    data.sub! '#{methods_def}', methods_def.join('')
    create_file file_path, data
  end

  private

    def methods_def
      args.map.with_index do |name, index|
        "\n  #{name}: ->\n"
      end
    end

    def file_path
      File.join Rails.root, 'app', 'assets', 'javascripts', 'controllers',
        *class_path, "#{file_name}.coffee"
    end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
loco-rails-2.5.3 lib/generators/loco/controller/controller_generator.rb
loco-rails-2.5.2 lib/generators/loco/controller/controller_generator.rb
loco-rails-2.5.1 lib/generators/loco/controller/controller_generator.rb
loco-rails-2.5.0 lib/generators/loco/controller/controller_generator.rb
loco-rails-2.4.0 lib/generators/loco/controller/controller_generator.rb
loco-rails-2.3.0 lib/generators/loco/controller/controller_generator.rb
loco-rails-2.2.2 lib/generators/loco/controller/controller_generator.rb
loco-rails-2.2.1 lib/generators/loco/controller/controller_generator.rb
loco-rails-2.2.0 lib/generators/loco/controller/controller_generator.rb
loco-rails-2.1.0 lib/generators/loco/controller/controller_generator.rb
loco-rails-2.0.0 lib/generators/loco/controller/controller_generator.rb
loco-rails-1.5.2 lib/generators/loco/controller/controller_generator.rb
loco-rails-1.5.1 lib/generators/loco/controller/controller_generator.rb
loco-rails-1.5.0 lib/generators/loco/controller/controller_generator.rb
loco-rails-1.4.0 lib/generators/loco/controller/controller_generator.rb
loco-rails-1.3.3 lib/generators/loco/controller/controller_generator.rb
loco-rails-1.3.2 lib/generators/loco/controller/controller_generator.rb
loco-rails-1.3.1 lib/generators/loco/controller/controller_generator.rb
loco-rails-1.3.0 lib/generators/loco/controller/controller_generator.rb