class Salesforce::Calendar::Generators::InstallGenerator

Public Instance Methods

install() click to toggle source
# File lib/generators/salesforce/calendar/install/install_generator.rb, line 8
def install
  cleanup!
  append_asset_pipeline!
  setup_routes
  copy_files
end

Protected Instance Methods

append_asset_pipeline!() click to toggle source
# File lib/generators/salesforce/calendar/install/install_generator.rb, line 25
def append_asset_pipeline!
  application_css = 'app/assets/stylesheets/application.css'
  if File.file?(application_css)
    insert_into_file application_css, "*= require salesforce-calendar\n", :before => " *= require_self"
  end

  application_js = 'app/assets/javascripts/application.js'
  if File.file?(application_js)
    insert_into_file application_js, "//= require salesforce-calendar\n", :after => "//= require jquery_ujs\n"
  end
end
cleanup!() click to toggle source
# File lib/generators/salesforce/calendar/install/install_generator.rb, line 17
def cleanup!
  # Remove old requires (if any) that included salesforce-calendar directly:
  gsub_file("app/assets/stylesheets/application.css", %r|\s*\*=\s*salesforce-calendar\s*\n|, "")
  gsub_file("app/assets/javascripts/application.js", %r|\s*\//=\s*salesforce-calendar\s*\n|, "")
  gsub_file("app/assets/javascripts/application.js", %r|\s*\//=\s*jquery.browser.min\s*\n|, "")
  gsub_file("app/assets/javascripts/application.js", %r|\s*\//=\s*jquery.browser\s*\n|, "")
end
copy_files() click to toggle source
# File lib/generators/salesforce/calendar/install/install_generator.rb, line 42
def copy_files
  copy_file 'salesforce_controller.rb.erb', File.join('app/controllers', 'salesforce_controller.rb')
  FileUtils.mkdir_p(File.join('app/views', 'salesforce'))
  copy_file 'calendar.html.erb', File.join('app/views', 'salesforce/calendar.html.erb')
end
setup_routes() click to toggle source
# File lib/generators/salesforce/calendar/install/install_generator.rb, line 37
def setup_routes
  route "get 'calendar', :to => 'salesforce#calendar', :as => :salesforce_calendar"
  route "get 'calendar/json-data', :to => 'salesforce#calendar_json_data', :as => :salesforce_calendar_json_data"
end