class SkinnyAdmin::ControllerGenerator

Public Instance Methods

gen_skinny_admin() click to toggle source
# File lib/generators/skinny_admin/controller_generator.rb, line 11
def gen_skinny_admin

  template 'controller_templates/skinny_admin_controller.rb.erb', "#{Rails.root}/app/controllers/admin/#{option_name}_controller.rb"
  template 'controller_templates/views/skinny_admin_controller_index.html.erb', "#{Rails.root}/app/views/admin/#{option_name}/index.html.erb"
  template 'controller_templates/views/skinny_admin_controller_show.html.erb', "#{Rails.root}/app/views/admin/#{option_name}/show.html.erb"
  template 'controller_templates/views/skinny_admin_controller_new.html.erb', "#{Rails.root}/app/views/admin/#{option_name}/new.html.erb"
  template 'controller_templates/views/skinny_admin_controller_edit.html.erb', "#{Rails.root}/app/views/admin/#{option_name}/edit.html.erb"
  template 'controller_templates/views/skinny_admin_controller_form.html.erb', "#{Rails.root}/app/views/admin/#{option_name}/_form.html.erb"

  if options.index_partial?
    template 'controller_templates/views/skinny_admin_controller_index_partial.html.erb', "#{Rails.root}/app/views/admin/#{option_name}/_index.html.erb"
  end

  if options.javascript?
    copy_file 'init/skinny_admin.js', "#{Rails.root}/app/assets/javascripts/admin/#{option_name}.js"
  end

  if options.stylesheet?
    copy_file 'init/skinny_admin.css', "#{Rails.root}/app/assets/stylesheets/admin/#{option_name}.css"
  end

  inject_into_file "#{Rails.root}/config/routes.rb", :after => "namespace :admin do\n" do
    "    resources :#{option_name}\n"
  end

  inject_into_file "#{Rails.root}/app/views/admin/layouts/admin.html.erb", :before => '<div class="row" style="display: none;" id="lastModel"></div>' do
    "<div class=\"col-xs-1\" style=\"text-align: center; font-size: 17px; position: relative; top: 3px;  font-family: 'PT Sans Narrow';\">\n\t\t\t\t<div><%= link_to '#{reg_name}', admin_#{option_name}_path, style: ' color: black; background-color: transparent; text-decoration: none;' %></div>\n\t\t\t</div>\n\t\t\t"
  end

end

Private Instance Methods

option_name() click to toggle source
# File lib/generators/skinny_admin/controller_generator.rb, line 45
def option_name
  controller_name.underscore
end
reg_name() click to toggle source
# File lib/generators/skinny_admin/controller_generator.rb, line 49
def reg_name
  controller_name
end