Class: PixelforceCms::Generators::InstallGenerator

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

Instance Method Summary collapse

Instance Method Details

#application_name ⇒ Object



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

def application_name
  if defined?(Rails) && Rails.application
    Rails.application.class.name.split('::').first.underscore
  else
    "application"
  end
end

#config_application ⇒ Object



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

def config_application
  email_config = %q(
    config.action_mailer.delivery_method = :smtp
    config.action_mailer.smtp_settings = {
:address => "smtp.gmail.com",
:port => 587,
:user_name => "[email protected]",
:password => "plus5261",
:authentication => :plain
    })
  sentinel = "config.assets.version = '1.0'"
  inject_into_file 'config/application.rb', "\n#{email_config}\n", { :after => sentinel, :verbose => false }
end

#copy_assets ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/generators/pixelforce_cms/install_generator.rb', line 8

def copy_assets
  copy_file "javascripts/application.js", "app/assets/javascripts/application.js"
  copy_file "css/style.css.scss", 'vendor/assets/stylesheets/style.css.scss'
  copy_file "css/style.responsive.css.scss", 'vendor/assets/stylesheets/style.responsive.css.scss'
  copy_file "css/application/application.css", "app/assets/stylesheets/application/application.css"
  copy_file "css/application/chromeframe.css.scss", 'vendor/assets/stylesheets/application/chromeframe.css.scss'
  copy_file "css/application/document.css.scss", 'vendor/assets/stylesheets/application/document.css.scss'
  copy_file "css/application/html5.css.scss", 'vendor/assets/stylesheets/application/html5.css.scss'
  copy_file "css/application/index.css.scss", 'vendor/assets/stylesheets/application/index.css.scss'
  copy_file "css/application/variables.css.scss", "vendor/assets/stylesheets/application/variables.css.scss"
  copy_file "css/pages/home.css.scss", "vendor/assets/stylesheets/pages/home.css.scss"
end

#copy_controller_files ⇒ Object



25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/generators/pixelforce_cms/install_generator.rb', line 25

def copy_controller_files
  copy_file   "pages_controller.rb", 'app/controllers/pages_controller.rb'
  copy_file   "application.html.haml", 'app/views/layouts/application.html.haml'
  copy_file   'Capfile', 'Capfile'
  create_file 'app/views/pages/index.html.haml'
  @application_name = application_name
  template    'deploy.rb', 'config/deploy.rb'
  in_root do
    inject_into_file 'config/routes.rb', "\n  root :to => 'pages#index'\n", { :after => 'do', :verbose => false }
    inject_into_file 'config/routes.rb', "\n  get '/:id' => 'pages#show'\n", { :after => 'do', :verbose => false }
  end
end

#copy_gemfile ⇒ Object



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

def copy_gemfile
  copy_file "Gemfile", 'Gemfile'
end