Class: Loco::FileInjectorGenerator
- Inherits:
-
Rails::Generators::Base
- Object
- Rails::Generators::Base
- Loco::FileInjectorGenerator
- Defined in:
- lib/generators/loco/file_injector/file_injector_generator.rb
Instance Method Summary collapse
- #application_controller ⇒ Object
- #application_helper ⇒ Object
- #connection ⇒ Object
- #layout ⇒ Object
- #layout_path ⇒ Object
- #routes ⇒ Object
Instance Method Details
#application_controller ⇒ Object
29 30 31 32 33 34 35 36 37 38 |
# File 'lib/generators/loco/file_injector/file_injector_generator.rb', line 29 def application_controller file_path = Rails.root.join( 'app', 'controllers', 'application_controller.rb' ) data = File.read find_in_source_paths('application_controller.rb') after_line = "class ApplicationController < ActionController::Base\n" inject_into_file file_path, data, after: after_line end |
#application_helper ⇒ Object
14 15 16 17 18 |
# File 'lib/generators/loco/file_injector/file_injector_generator.rb', line 14 def application_helper file_path = Rails.root.join 'app', 'helpers', 'application_helper.rb' line = %( include Loco::Helpers\n) inject_into_file file_path, line, after: "module ApplicationHelper\n" end |
#connection ⇒ Object
40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/generators/loco/file_injector/file_injector_generator.rb', line 40 def connection return if Rails.version.to_f < 5 file_path = Rails.root.join( 'app', 'channels', 'application_cable', 'connection.rb' ) data = File.read find_in_source_paths('connection.rb') inject_into_class file_path, 'Connection', data end |
#layout ⇒ Object
20 21 22 23 24 25 26 27 |
# File 'lib/generators/loco/file_injector/file_injector_generator.rb', line 20 def layout gsub_file( layout_path, '<body>', '<%= content_tag :body, loco_body_data do %>' ) gsub_file layout_path, '</body>', '<% end %>' end |
#layout_path ⇒ Object
52 53 54 55 56 57 58 59 |
# File 'lib/generators/loco/file_injector/file_injector_generator.rb', line 52 def layout_path Rails.root.join( 'app', 'views', 'layouts', 'application.html.erb' ) end |
#routes ⇒ Object
7 8 9 10 11 12 |
# File 'lib/generators/loco/file_injector/file_injector_generator.rb', line 7 def routes file_path = Rails.root.join 'config', 'routes.rb' line = %( mount Loco::Engine => '/notification-center'\n\n) str = "Rails.application.routes.draw do\n" inject_into_file file_path, line, after: str end |