Class: Kitestrings::Generators::InstallGenerator

Inherits:
Rails::Generators::Base
  • Object
show all
Defined in:
lib/generators/kitestrings/install_generator.rb

Instance Method Summary collapse

Instance Method Details

#copy_app_view_filesObject



54
55
56
57
58
# File 'lib/generators/kitestrings/install_generator.rb', line 54

def copy_app_view_files
  copy_file "views/application/_navigation.html.haml", "app/views/application/_navigation.html.haml"
  copy_file "views/layouts/application.html.haml", "app/views/layouts/application.html.haml"
  copy_file "views/public/403.html", "app/views/public/403.html"
end

#copy_config_filesObject



11
12
13
14
15
# File 'lib/generators/kitestrings/install_generator.rb', line 11

def copy_config_files
  copy_file "config/deploy.rb", "config/deploy.rb"
  directory "config/deploy", "config/deploy"
  directory "config/environments", "config/environments"
end

#copy_haml_filesObject



26
27
28
# File 'lib/generators/kitestrings/install_generator.rb', line 26

def copy_haml_files
  directory "haml", "lib/templates/haml"
end

#copy_lib_filesObject



34
35
36
# File 'lib/generators/kitestrings/install_generator.rb', line 34

def copy_lib_files
  directory "lib", "lib"
end

#copy_rake_task_filesObject



50
51
52
# File 'lib/generators/kitestrings/install_generator.rb', line 50

def copy_rake_task_files
  directory "tasks", "lib/tasks"
end

#copy_rspec_filesObject



38
39
40
# File 'lib/generators/kitestrings/install_generator.rb', line 38

def copy_rspec_files
  directory "rspec", "lib/templates/rspec"
end

#copy_rubocop_fileObject



21
22
23
24
# File 'lib/generators/kitestrings/install_generator.rb', line 21

def copy_rubocop_file
  copy_file "rubocop/.rubocop.yml", ".rubocop.yml"
  directory "rubocop/routing", "spec/routing"
end

#copy_scaffold_filesObject



30
31
32
# File 'lib/generators/kitestrings/install_generator.rb', line 30

def copy_scaffold_files
  directory "rails", "lib/templates/rails"
end

#copy_seeds_fileObject



17
18
19
# File 'lib/generators/kitestrings/install_generator.rb', line 17

def copy_seeds_file
  copy_file "db/seeds.rb", "db/seeds.rb"
end

#copy_spec_filesObject



42
43
44
# File 'lib/generators/kitestrings/install_generator.rb', line 42

def copy_spec_files
  copy_file "spec/rails_helper.rb", "spec/rails_helper.rb"
end

#copy_spec_support_filesObject



46
47
48
# File 'lib/generators/kitestrings/install_generator.rb', line 46

def copy_spec_support_files
  directory "support", "spec/support"
end

#setup_abilities_with_default_roleObject

def setup_abilities_with_default_role

inject_into_file "app/models/ability.rb" do #, :after => /def initialize(user).*$/ do
  "\n"\
  "    case user.role\n"\
  "      when :default\n"\
  "        can :manage, :all\n"\
  "    end\n"\

end

end



71
72
73
74
75
76
77
78
79
80
# File 'lib/generators/kitestrings/install_generator.rb', line 71

def setup_abilities_with_default_role
  insert_into_file "app/models/ability.rb", :after => "def initialize(user)" do
    "\n"\
    "    case user.role\n"\
    "      when :default\n"\
    "        can :manage, :all\n"\
    "    end\n"\

  end
end

#setup_application_configObject



99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
# File 'lib/generators/kitestrings/install_generator.rb', line 99

def setup_application_config
  generators_configuration = "config.generators do |g|\ng.view_specs false\ng.test_framework :rspec, fixture: true\n    end\n\n    config.app_generators do |g|\ng.templates.unshift File.expand_path('../lib/templates', __FILE__)\n    end\n\n    config.autoload_paths += %W(\\\#{config.root}/lib)\n  END\n\n  environment generators_configuration\nend\n"

#setup_application_controllerObject



82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# File 'lib/generators/kitestrings/install_generator.rb', line 82

def setup_application_controller
  inject_into_file "app/controllers/application_controller.rb", :after => /protect_from_forgery.*$/ do
"
  respond_to :html
  include NestedLoadAndAuthorize

  unless Rails.application.config.consider_all_requests_local
    rescue_from CanCan::AccessDenied do |exception|
# Notify errbit if you would like to:
# Airbrake.notify(exception)
render 'public/403', status: 403, layout: 'none'
    end
  end"
  end
end