activeadmin-generator 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +1 -0
- data/README.md +0 -0
- data/Rakefile +3 -0
- data/activeadmin-generator.gemspec +22 -0
- data/bin/activeadmin-generate +4 -0
- data/lib/active_admin/generator/base.rb +62 -0
- data/lib/active_admin/generator/bricks/active_admin.rb +25 -0
- data/lib/active_admin/generator/bricks/active_admin_extras.rb +31 -0
- data/lib/active_admin/generator/bricks/base.rb +86 -0
- data/lib/active_admin/generator/bricks/clean_assets.rb +12 -0
- data/lib/active_admin/generator/bricks/database.rb +45 -0
- data/lib/active_admin/generator/bricks/errbit.rb +0 -0
- data/lib/active_admin/generator/bricks/frontend.rb +31 -0
- data/lib/active_admin/generator/bricks/git.rb +19 -0
- data/lib/active_admin/generator/bricks/heroku.rb +25 -0
- data/lib/active_admin/generator/bricks/s3.rb +0 -0
- data/lib/active_admin/generator/cli.rb +20 -0
- data/lib/active_admin/generator/templates/app/assets/fonts/.empty_directory +0 -0
- data/lib/active_admin/generator/templates/app/assets/images/.empty_directory +0 -0
- data/lib/active_admin/generator/templates/app/assets/javascripts/application.js.coffee +6 -0
- data/lib/active_admin/generator/templates/app/assets/stylesheets/active_admin.css.sass +1 -0
- data/lib/active_admin/generator/templates/app/assets/stylesheets/application.css.sass +22 -0
- data/lib/active_admin/generator/templates/app/assets/stylesheets/basic/_fonts.css.sass +4 -0
- data/lib/active_admin/generator/templates/app/assets/stylesheets/basic/_layout.css.sass +7 -0
- data/lib/active_admin/generator/templates/app/assets/stylesheets/basic/_sprites.css.sass +6 -0
- data/lib/active_admin/generator/templates/app/assets/stylesheets/lib/_colors.css.sass +0 -0
- data/lib/active_admin/generator/templates/app/assets/stylesheets/lib/_mixins.css.sass +0 -0
- data/lib/active_admin/generator/templates/app/assets/stylesheets/lib/_variables.css.sass +0 -0
- data/lib/active_admin/generator/templates/app/assets/stylesheets/modules/.empty_directory +0 -0
- data/lib/active_admin/generator/templates/app/assets/stylesheets/sections/.empty_directory +0 -0
- data/lib/active_admin/generator/templates/app/assets/stylesheets/themes/.empty_directory +0 -0
- data/lib/active_admin/generator/templates/app/controllers/application_controller.rb +3 -0
- data/lib/active_admin/generator/templates/app/controllers/static_controller.rb +6 -0
- data/lib/active_admin/generator/templates/app/models/asset_thumb.rb +4 -0
- data/lib/active_admin/generator/templates/app/views/application/_footer.html.slim +2 -0
- data/lib/active_admin/generator/templates/app/views/application/_head.html.slim +6 -0
- data/lib/active_admin/generator/templates/app/views/application/_header.html.slim +6 -0
- data/lib/active_admin/generator/templates/app/views/application/_js_includes.html.slim +2 -0
- data/lib/active_admin/generator/templates/app/views/layouts/application.html.slim +11 -0
- data/lib/active_admin/generator/templates/app/views/static/homepage.html.slim +2 -0
- data/lib/active_admin/generator/templates/config/active_admin_initializer.rb +142 -0
- data/lib/active_admin/generator/templates/config/initializers/active_admin.rb +142 -0
- data/lib/active_admin/generator/templates/config/initializers/dragonfly.rb +32 -0
- data/lib/active_admin/generator/templates/config/locales/it.yml +3 -0
- data/lib/active_admin/generator/templates/db/migrate/20121126113057_create_asset_thumbs.rb +10 -0
- data/lib/active_admin/generator/version.rb +8 -0
- data/lib/activeadmin-generator.rb +1 -0
- metadata +141 -0
data/.gitignore
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
pkg
|
data/README.md
ADDED
File without changes
|
data/Rakefile
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
require File.expand_path('../lib/active_admin/generator/version', __FILE__)
|
3
|
+
|
4
|
+
Gem::Specification.new do |gem|
|
5
|
+
gem.authors = ["Stefano Verna"]
|
6
|
+
gem.email = ["stefano.verna@welaika.com"]
|
7
|
+
gem.description = %q{Generate ActiveAdmin projects}
|
8
|
+
gem.summary = %q{Generate ActiveAdmin projects}
|
9
|
+
gem.homepage = ""
|
10
|
+
|
11
|
+
gem.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
12
|
+
gem.files = `git ls-files`.split("\n")
|
13
|
+
gem.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
14
|
+
gem.name = "activeadmin-generator"
|
15
|
+
gem.require_paths = ["lib"]
|
16
|
+
gem.version = ActiveAdmin::Generator::VERSION
|
17
|
+
|
18
|
+
gem.add_dependency "rake"
|
19
|
+
gem.add_dependency "thor"
|
20
|
+
gem.add_dependency "railties"
|
21
|
+
end
|
22
|
+
|
@@ -0,0 +1,62 @@
|
|
1
|
+
class Base
|
2
|
+
BRICKS = %w(base git clean_assets frontend database heroku s3 active_admin active_admin_extras)
|
3
|
+
attr_reader :context
|
4
|
+
|
5
|
+
def initialize(context)
|
6
|
+
@context = context
|
7
|
+
end
|
8
|
+
|
9
|
+
def require_bricks
|
10
|
+
BRICKS.each do |brick_module|
|
11
|
+
context.apply "bricks/#{brick_module}.rb"
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
def bricks
|
16
|
+
@bricks ||= BRICKS.map do |brick_module|
|
17
|
+
brick_class = "bricks/#{brick_module}".camelize.constantize rescue nil
|
18
|
+
if brick_class
|
19
|
+
brick = brick_class.new(context)
|
20
|
+
brick.apply? ? brick : nil
|
21
|
+
else
|
22
|
+
nil
|
23
|
+
end
|
24
|
+
end.compact
|
25
|
+
end
|
26
|
+
|
27
|
+
def run!
|
28
|
+
require_bricks
|
29
|
+
|
30
|
+
hook :before_bundle
|
31
|
+
context.run "bundle install"
|
32
|
+
hook :after_bundle
|
33
|
+
|
34
|
+
hook :before_migrate
|
35
|
+
context.rake "db:migrate"
|
36
|
+
hook :after_migrate
|
37
|
+
|
38
|
+
hook :recap
|
39
|
+
end
|
40
|
+
|
41
|
+
def hook(name)
|
42
|
+
bricks.each do |brick|
|
43
|
+
if brick.respond_to? name
|
44
|
+
context.send :log, name.to_s.titleize, "brick: #{brick.title}"
|
45
|
+
brick.send(name)
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
|
52
|
+
module Thor::Actions
|
53
|
+
alias_method :old_source_paths, :source_paths
|
54
|
+
def source_paths
|
55
|
+
[ File.expand_path(File.dirname(__FILE__)), File.join(File.expand_path(File.dirname(__FILE__)), "templates") ] + old_source_paths
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
def run_bundle; end
|
60
|
+
|
61
|
+
Base.new(self).run!
|
62
|
+
|
@@ -0,0 +1,25 @@
|
|
1
|
+
module ::Bricks
|
2
|
+
class ActiveAdmin < Base
|
3
|
+
def before_bundle
|
4
|
+
gem "activeadmin"
|
5
|
+
gem "meta_search"
|
6
|
+
@site_title = ask("Name to be shown in admin backend")
|
7
|
+
end
|
8
|
+
|
9
|
+
def after_bundle
|
10
|
+
generate 'active_admin:install'
|
11
|
+
remove_file "config/initializers/active_admin.rb"
|
12
|
+
template "config/initializers/active_admin.rb"
|
13
|
+
commit_all "ActiveAdmin installed"
|
14
|
+
end
|
15
|
+
|
16
|
+
def recap
|
17
|
+
say 'Run rails server, visit http://127.0.0.1:3000/admin and log in using:'
|
18
|
+
say 'admin@example.com'
|
19
|
+
say 'password'
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
|
25
|
+
|
@@ -0,0 +1,31 @@
|
|
1
|
+
module ::Bricks
|
2
|
+
class ActiveAdminExtras < Base
|
3
|
+
|
4
|
+
def before_bundle
|
5
|
+
gem 'activeadmin-dragonfly', github: 'stefanoverna/activeadmin-dragonfly', branch: 'master'
|
6
|
+
gem 'activeadmin-globalize3', github: 'stefanoverna/activeadmin-globalize3', branch: 'master'
|
7
|
+
gem 'activeadmin-wysihtml5', github: 'stefanoverna/activeadmin-wysihtml5', branch: 'master'
|
8
|
+
gem 'activeadmin-gallery', github: 'stefanoverna/activeadmin-gallery', branch: 'master'
|
9
|
+
gem 'activeadmin-extra', github: 'stefanoverna/activeadmin-extra', branch: 'master'
|
10
|
+
gem 'activeadmin-seo', github: 'nebirhos/activeadmin-seo', branch: 'master'
|
11
|
+
|
12
|
+
commit_all "Added ActiveAdmin extra gems"
|
13
|
+
end
|
14
|
+
|
15
|
+
def after_bundle
|
16
|
+
rake "activeadmin_gallery:install:migrations"
|
17
|
+
rake "activeadmin_wysihtml5:install:migrations"
|
18
|
+
rake "activeadmin_seo:install:migrations"
|
19
|
+
|
20
|
+
remove_file "app/assets/stylesheets/active_admin.css.scss"
|
21
|
+
copy_file "app/assets/stylesheets/active_admin.css.sass"
|
22
|
+
|
23
|
+
commit_all "Run ActiveAdmin customizations"
|
24
|
+
end
|
25
|
+
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
|
30
|
+
|
31
|
+
|
@@ -0,0 +1,86 @@
|
|
1
|
+
require 'active_support/core_ext'
|
2
|
+
|
3
|
+
module ::Bricks
|
4
|
+
class Base
|
5
|
+
|
6
|
+
attr_reader :context, :base_path
|
7
|
+
|
8
|
+
delegate :directory, :copy_file, :remove_dir, :gsub_file, :rake, :generate, :route, :empty_directory,
|
9
|
+
:gem, :git, :remove_file, :append_file, to: :context
|
10
|
+
|
11
|
+
def initialize(context)
|
12
|
+
@context = context
|
13
|
+
@base_path = base_path
|
14
|
+
end
|
15
|
+
|
16
|
+
def title
|
17
|
+
"Base"
|
18
|
+
end
|
19
|
+
|
20
|
+
def template(source)
|
21
|
+
content = open(File.expand_path(context.find_in_source_paths(source.to_s))) {|input| input.binmode.read }
|
22
|
+
context.copy_file source do
|
23
|
+
ERB.new(content).result(binding)
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
def apply?
|
28
|
+
true
|
29
|
+
end
|
30
|
+
|
31
|
+
def commit_all(message)
|
32
|
+
git add: "-A ."
|
33
|
+
git :commit => "-m '#{message}'"
|
34
|
+
end
|
35
|
+
|
36
|
+
def before_bundle
|
37
|
+
say "=" * 80
|
38
|
+
say "Welcome to ActiveAdmin Generator! :)".center(80) + "\n"
|
39
|
+
say "=" * 80
|
40
|
+
end
|
41
|
+
|
42
|
+
def format(text)
|
43
|
+
string = ""
|
44
|
+
if title
|
45
|
+
string << "\033[1m\033[36m"
|
46
|
+
string << title.to_s.rjust(10)
|
47
|
+
string << "\033[0m "
|
48
|
+
end
|
49
|
+
string << text
|
50
|
+
string
|
51
|
+
end
|
52
|
+
|
53
|
+
def say(text)
|
54
|
+
@context.say format(text)
|
55
|
+
end
|
56
|
+
|
57
|
+
def ask(question)
|
58
|
+
@context.ask format(question)
|
59
|
+
end
|
60
|
+
|
61
|
+
def choose(question, choices)
|
62
|
+
say question
|
63
|
+
values = {}
|
64
|
+
choices.each_with_index do |choice,i|
|
65
|
+
values[(i + 1).to_s] = choice[1]
|
66
|
+
say "#{i.next.to_s}) #{choice[0]}"
|
67
|
+
end
|
68
|
+
answer = ask("Enter your selection:") while !values.keys.include?(answer)
|
69
|
+
values[answer]
|
70
|
+
end
|
71
|
+
|
72
|
+
def yes?(question)
|
73
|
+
answer = ask(question + " \033[33m(y/n)\033[0m")
|
74
|
+
case answer.downcase
|
75
|
+
when "yes", "y"
|
76
|
+
true
|
77
|
+
when "no", "n"
|
78
|
+
false
|
79
|
+
else
|
80
|
+
yes?(question)
|
81
|
+
end
|
82
|
+
end
|
83
|
+
|
84
|
+
end
|
85
|
+
end
|
86
|
+
|
@@ -0,0 +1,45 @@
|
|
1
|
+
module ::Bricks
|
2
|
+
class Database < Base
|
3
|
+
|
4
|
+
def before_bundle
|
5
|
+
remove_file "config/database.yml"
|
6
|
+
gsub_file 'Gemfile', /gem 'sqlite3'\n/, ''
|
7
|
+
|
8
|
+
@adapter = choose "Database used in development?", [["SQLite", :sqlite], ["PostgreSQL", :pg], ["MySQL", :mysql]]
|
9
|
+
|
10
|
+
if @adapter != :sqlite
|
11
|
+
@database = ask "Development database name:"
|
12
|
+
@username = ask "Username:"
|
13
|
+
@password = ask "Password:"
|
14
|
+
end
|
15
|
+
|
16
|
+
send("configure_#{@adapter}")
|
17
|
+
template "config/database.yml"
|
18
|
+
commit_all "Database configured"
|
19
|
+
end
|
20
|
+
|
21
|
+
def after_bundle
|
22
|
+
rake "db:drop"
|
23
|
+
rake "db:create"
|
24
|
+
end
|
25
|
+
|
26
|
+
def configure_sqlite
|
27
|
+
gem 'sqlite3'
|
28
|
+
end
|
29
|
+
|
30
|
+
def configure_mysql
|
31
|
+
gem 'mysql2'
|
32
|
+
end
|
33
|
+
|
34
|
+
def configure_pg
|
35
|
+
gem 'pg'
|
36
|
+
end
|
37
|
+
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
|
42
|
+
|
43
|
+
|
44
|
+
|
45
|
+
|
File without changes
|
@@ -0,0 +1,31 @@
|
|
1
|
+
module ::Bricks
|
2
|
+
class Frontend < Base
|
3
|
+
def before_bundle
|
4
|
+
gem "rails-i18n"
|
5
|
+
gem "slim-rails"
|
6
|
+
gem "compass-rails"
|
7
|
+
gem "sextant"
|
8
|
+
gem "modernizr-rails"
|
9
|
+
gem "hive-rails", github: 'stefanoverna/hive-rails', branch: 'master'
|
10
|
+
commit_all "Added frontend gems"
|
11
|
+
|
12
|
+
remove_dir 'app'
|
13
|
+
directory 'app'
|
14
|
+
route "root to: 'static#homepage'"
|
15
|
+
|
16
|
+
commit_all "Added basic frontend skeleton"
|
17
|
+
|
18
|
+
apply_i18n_routes!
|
19
|
+
end
|
20
|
+
|
21
|
+
def apply_i18n_routes!
|
22
|
+
gem 'i18n_routing'
|
23
|
+
copy_file "config/locales/it.yml"
|
24
|
+
commit_all "Added i18n routes"
|
25
|
+
end
|
26
|
+
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
|
31
|
+
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module ::Bricks
|
2
|
+
class Git < Base
|
3
|
+
def before_bundle
|
4
|
+
git :init
|
5
|
+
|
6
|
+
append_file ".gitignore", <<-END
|
7
|
+
*.swp
|
8
|
+
.sass-cache
|
9
|
+
root.dir
|
10
|
+
.rake_tasks~
|
11
|
+
db/schema.rb
|
12
|
+
public/system
|
13
|
+
END
|
14
|
+
|
15
|
+
commit_all "First commit"
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
@@ -0,0 +1,25 @@
|
|
1
|
+
module ::Bricks
|
2
|
+
class Heroku < Base
|
3
|
+
|
4
|
+
def apply?
|
5
|
+
yes? "Do you want to deploy this site on Heroku?"
|
6
|
+
end
|
7
|
+
|
8
|
+
def before_bundle
|
9
|
+
copy_file "db/migrate/20121126113057_create_asset_thumbs.rb"
|
10
|
+
copy_file "config/initializers/dragonfly.rb"
|
11
|
+
end
|
12
|
+
|
13
|
+
def after_bundle
|
14
|
+
rake "activeadmin_gallery:install:migrations"
|
15
|
+
rake "activeadmin_wysihtml5:install:migrations"
|
16
|
+
rake "activeadmin_seo:install:migrations"
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
|
File without changes
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require 'thor'
|
2
|
+
require 'rails/generators'
|
3
|
+
require 'rails/generators/rails/app/app_generator'
|
4
|
+
|
5
|
+
module ActiveAdmin
|
6
|
+
module Generator
|
7
|
+
class CLI < Thor
|
8
|
+
|
9
|
+
desc "new", "Bootstraps a new ActiveAdmin project"
|
10
|
+
def new(name)
|
11
|
+
ARGV.shift(ARGV.count)
|
12
|
+
ARGV.unshift name, '-T', '-m', File.join(File.dirname(__FILE__), "base.rb"), '--trace'
|
13
|
+
Rails::Generators::AppGenerator.start
|
14
|
+
end
|
15
|
+
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
|
File without changes
|
File without changes
|
@@ -0,0 +1 @@
|
|
1
|
+
@import "active_admin/extra/base"
|
@@ -0,0 +1,22 @@
|
|
1
|
+
/* Third party libraries
|
2
|
+
@import compass
|
3
|
+
@import hive
|
4
|
+
|
5
|
+
// Internal variables and mixins
|
6
|
+
@import lib/variables
|
7
|
+
@import lib/colors
|
8
|
+
@import lib/mixins
|
9
|
+
|
10
|
+
+global-reset
|
11
|
+
|
12
|
+
/* Basic styles
|
13
|
+
@import basic/fonts
|
14
|
+
@import basic/sprites
|
15
|
+
@import basic/layout
|
16
|
+
|
17
|
+
/* Modules
|
18
|
+
|
19
|
+
/* Sections
|
20
|
+
|
21
|
+
/* Themes
|
22
|
+
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -0,0 +1,142 @@
|
|
1
|
+
ActiveAdmin.setup do |config|
|
2
|
+
# == Site Title
|
3
|
+
#
|
4
|
+
# Set the title that is displayed on the main layout
|
5
|
+
# for each of the active admin pages.
|
6
|
+
#
|
7
|
+
config.site_title = SITE_TITLE
|
8
|
+
|
9
|
+
# Set the link url for the title. For example, to take
|
10
|
+
# users to your main site. Defaults to no link.
|
11
|
+
#
|
12
|
+
# config.site_title_link = "/"
|
13
|
+
|
14
|
+
# Set an optional image to be displayed for the header
|
15
|
+
# instead of a string (overrides :site_title)
|
16
|
+
#
|
17
|
+
# Note: Recommended image height is 21px to properly fit in the header
|
18
|
+
#
|
19
|
+
# config.site_title_image = "/images/logo.png"
|
20
|
+
|
21
|
+
# == Default Namespace
|
22
|
+
#
|
23
|
+
# Set the default namespace each administration resource
|
24
|
+
# will be added to.
|
25
|
+
#
|
26
|
+
# eg:
|
27
|
+
# config.default_namespace = :hello_world
|
28
|
+
#
|
29
|
+
# This will create resources in the HelloWorld module and
|
30
|
+
# will namespace routes to /hello_world/*
|
31
|
+
#
|
32
|
+
# To set no namespace by default, use:
|
33
|
+
# config.default_namespace = false
|
34
|
+
#
|
35
|
+
# Default:
|
36
|
+
# config.default_namespace = :admin
|
37
|
+
#
|
38
|
+
# You can customize the settings for each namespace by using
|
39
|
+
# a namespace block. For example, to change the site title
|
40
|
+
# within a namespace:
|
41
|
+
#
|
42
|
+
# config.namespace :admin do |admin|
|
43
|
+
# admin.site_title = "Custom Admin Title"
|
44
|
+
# end
|
45
|
+
#
|
46
|
+
# This will ONLY change the title for the admin section. Other
|
47
|
+
# namespaces will continue to use the main "site_title" configuration.
|
48
|
+
|
49
|
+
# == User Authentication
|
50
|
+
#
|
51
|
+
# Active Admin will automatically call an authentication
|
52
|
+
# method in a before filter of all controller actions to
|
53
|
+
# ensure that there is a currently logged in admin user.
|
54
|
+
#
|
55
|
+
# This setting changes the method which Active Admin calls
|
56
|
+
# within the controller.
|
57
|
+
config.authentication_method = :authenticate_admin_user!
|
58
|
+
|
59
|
+
# == Current User
|
60
|
+
#
|
61
|
+
# Active Admin will associate actions with the current
|
62
|
+
# user performing them.
|
63
|
+
#
|
64
|
+
# This setting changes the method which Active Admin calls
|
65
|
+
# to return the currently logged in user.
|
66
|
+
config.current_user_method = :current_admin_user
|
67
|
+
|
68
|
+
# == Logging Out
|
69
|
+
#
|
70
|
+
# Active Admin displays a logout link on each screen. These
|
71
|
+
# settings configure the location and method used for the link.
|
72
|
+
#
|
73
|
+
# This setting changes the path where the link points to. If it's
|
74
|
+
# a string, the strings is used as the path. If it's a Symbol, we
|
75
|
+
# will call the method to return the path.
|
76
|
+
#
|
77
|
+
# Default:
|
78
|
+
config.logout_link_path = :destroy_admin_user_session_path
|
79
|
+
|
80
|
+
# This setting changes the http method used when rendering the
|
81
|
+
# link. For example :get, :delete, :put, etc..
|
82
|
+
#
|
83
|
+
# Default:
|
84
|
+
# config.logout_link_method = :get
|
85
|
+
|
86
|
+
# == Root
|
87
|
+
#
|
88
|
+
# Set the action to call for the root path. You can set different
|
89
|
+
# roots for each namespace.
|
90
|
+
#
|
91
|
+
# Default:
|
92
|
+
# config.root_to = 'dashboard#index'
|
93
|
+
|
94
|
+
# == Admin Comments
|
95
|
+
#
|
96
|
+
# Admin comments allow you to add comments to any model for admin use.
|
97
|
+
# Admin comments are enabled by default.
|
98
|
+
#
|
99
|
+
# Default:
|
100
|
+
# config.allow_comments = true
|
101
|
+
#
|
102
|
+
# You can turn them on and off for any given namespace by using a
|
103
|
+
# namespace config block.
|
104
|
+
#
|
105
|
+
# Eg:
|
106
|
+
# config.namespace :without_comments do |without_comments|
|
107
|
+
# without_comments.allow_comments = false
|
108
|
+
# end
|
109
|
+
|
110
|
+
# == Batch Actions
|
111
|
+
#
|
112
|
+
# Enable and disable Batch Actions
|
113
|
+
#
|
114
|
+
config.batch_actions = true
|
115
|
+
|
116
|
+
# == Controller Filters
|
117
|
+
#
|
118
|
+
# You can add before, after and around filters to all of your
|
119
|
+
# Active Admin resources from here.
|
120
|
+
#
|
121
|
+
# config.before_filter :do_something_awesome
|
122
|
+
|
123
|
+
# == Register Stylesheets & Javascripts
|
124
|
+
#
|
125
|
+
# We recommend using the built in Active Admin layout and loading
|
126
|
+
# up your own stylesheets / javascripts to customize the look
|
127
|
+
# and feel.
|
128
|
+
#
|
129
|
+
# To load a stylesheet:
|
130
|
+
# config.register_stylesheet 'my_stylesheet.css'
|
131
|
+
|
132
|
+
# You can provide an options hash for more control, which is passed along to stylesheet_link_tag():
|
133
|
+
# config.register_stylesheet 'my_print_stylesheet.css', :media => :print
|
134
|
+
#
|
135
|
+
# To load a javascript file:
|
136
|
+
# config.register_javascript 'my_javascript.js'
|
137
|
+
|
138
|
+
# == CSV options
|
139
|
+
#
|
140
|
+
# Set the CSV builder separator (default is ",")
|
141
|
+
# config.csv_column_separator = ','
|
142
|
+
end
|
@@ -0,0 +1,142 @@
|
|
1
|
+
ActiveAdmin.setup do |config|
|
2
|
+
# == Site Title
|
3
|
+
#
|
4
|
+
# Set the title that is displayed on the main layout
|
5
|
+
# for each of the active admin pages.
|
6
|
+
#
|
7
|
+
config.site_title = "<%= @site_title %>"
|
8
|
+
|
9
|
+
# Set the link url for the title. For example, to take
|
10
|
+
# users to your main site. Defaults to no link.
|
11
|
+
#
|
12
|
+
config.site_title_link = "/"
|
13
|
+
|
14
|
+
# Set an optional image to be displayed for the header
|
15
|
+
# instead of a string (overrides :site_title)
|
16
|
+
#
|
17
|
+
# Note: Recommended image height is 21px to properly fit in the header
|
18
|
+
#
|
19
|
+
# config.site_title_image = "/images/logo.png"
|
20
|
+
|
21
|
+
# == Default Namespace
|
22
|
+
#
|
23
|
+
# Set the default namespace each administration resource
|
24
|
+
# will be added to.
|
25
|
+
#
|
26
|
+
# eg:
|
27
|
+
# config.default_namespace = :hello_world
|
28
|
+
#
|
29
|
+
# This will create resources in the HelloWorld module and
|
30
|
+
# will namespace routes to /hello_world/*
|
31
|
+
#
|
32
|
+
# To set no namespace by default, use:
|
33
|
+
# config.default_namespace = false
|
34
|
+
#
|
35
|
+
# Default:
|
36
|
+
# config.default_namespace = :admin
|
37
|
+
#
|
38
|
+
# You can customize the settings for each namespace by using
|
39
|
+
# a namespace block. For example, to change the site title
|
40
|
+
# within a namespace:
|
41
|
+
#
|
42
|
+
# config.namespace :admin do |admin|
|
43
|
+
# admin.site_title = "Custom Admin Title"
|
44
|
+
# end
|
45
|
+
#
|
46
|
+
# This will ONLY change the title for the admin section. Other
|
47
|
+
# namespaces will continue to use the main "site_title" configuration.
|
48
|
+
|
49
|
+
# == User Authentication
|
50
|
+
#
|
51
|
+
# Active Admin will automatically call an authentication
|
52
|
+
# method in a before filter of all controller actions to
|
53
|
+
# ensure that there is a currently logged in admin user.
|
54
|
+
#
|
55
|
+
# This setting changes the method which Active Admin calls
|
56
|
+
# within the controller.
|
57
|
+
config.authentication_method = :authenticate_admin_user!
|
58
|
+
|
59
|
+
# == Current User
|
60
|
+
#
|
61
|
+
# Active Admin will associate actions with the current
|
62
|
+
# user performing them.
|
63
|
+
#
|
64
|
+
# This setting changes the method which Active Admin calls
|
65
|
+
# to return the currently logged in user.
|
66
|
+
config.current_user_method = :current_admin_user
|
67
|
+
|
68
|
+
# == Logging Out
|
69
|
+
#
|
70
|
+
# Active Admin displays a logout link on each screen. These
|
71
|
+
# settings configure the location and method used for the link.
|
72
|
+
#
|
73
|
+
# This setting changes the path where the link points to. If it's
|
74
|
+
# a string, the strings is used as the path. If it's a Symbol, we
|
75
|
+
# will call the method to return the path.
|
76
|
+
#
|
77
|
+
# Default:
|
78
|
+
config.logout_link_path = :destroy_admin_user_session_path
|
79
|
+
|
80
|
+
# This setting changes the http method used when rendering the
|
81
|
+
# link. For example :get, :delete, :put, etc..
|
82
|
+
#
|
83
|
+
# Default:
|
84
|
+
# config.logout_link_method = :get
|
85
|
+
|
86
|
+
# == Root
|
87
|
+
#
|
88
|
+
# Set the action to call for the root path. You can set different
|
89
|
+
# roots for each namespace.
|
90
|
+
#
|
91
|
+
# Default:
|
92
|
+
# config.root_to = 'dashboard#index'
|
93
|
+
|
94
|
+
# == Admin Comments
|
95
|
+
#
|
96
|
+
# Admin comments allow you to add comments to any model for admin use.
|
97
|
+
# Admin comments are enabled by default.
|
98
|
+
#
|
99
|
+
# Default:
|
100
|
+
# config.allow_comments = true
|
101
|
+
#
|
102
|
+
# You can turn them on and off for any given namespace by using a
|
103
|
+
# namespace config block.
|
104
|
+
#
|
105
|
+
# Eg:
|
106
|
+
# config.namespace :without_comments do |without_comments|
|
107
|
+
# without_comments.allow_comments = false
|
108
|
+
# end
|
109
|
+
|
110
|
+
# == Batch Actions
|
111
|
+
#
|
112
|
+
# Enable and disable Batch Actions
|
113
|
+
#
|
114
|
+
config.batch_actions = true
|
115
|
+
|
116
|
+
# == Controller Filters
|
117
|
+
#
|
118
|
+
# You can add before, after and around filters to all of your
|
119
|
+
# Active Admin resources from here.
|
120
|
+
#
|
121
|
+
# config.before_filter :do_something_awesome
|
122
|
+
|
123
|
+
# == Register Stylesheets & Javascripts
|
124
|
+
#
|
125
|
+
# We recommend using the built in Active Admin layout and loading
|
126
|
+
# up your own stylesheets / javascripts to customize the look
|
127
|
+
# and feel.
|
128
|
+
#
|
129
|
+
# To load a stylesheet:
|
130
|
+
# config.register_stylesheet 'my_stylesheet.css'
|
131
|
+
|
132
|
+
# You can provide an options hash for more control, which is passed along to stylesheet_link_tag():
|
133
|
+
# config.register_stylesheet 'my_print_stylesheet.css', :media => :print
|
134
|
+
#
|
135
|
+
# To load a javascript file:
|
136
|
+
# config.register_javascript 'my_javascript.js'
|
137
|
+
|
138
|
+
# == CSV options
|
139
|
+
#
|
140
|
+
# Set the CSV builder separator (default is ",")
|
141
|
+
# config.csv_column_separator = ','
|
142
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
require 'dragonfly'
|
2
|
+
app = Dragonfly[:images]
|
3
|
+
|
4
|
+
app.configure_with(:imagemagick)
|
5
|
+
app.configure_with(:rails)
|
6
|
+
if Rails.env.production?
|
7
|
+
app.cache_duration = 3600*24*365*3
|
8
|
+
app.configure do |c|
|
9
|
+
c.define_url do |app, job, opts|
|
10
|
+
thumb = AssetThumb.find_by_job(job.serialize)
|
11
|
+
if thumb
|
12
|
+
app.datastore.url_for(thumb.uid)
|
13
|
+
else
|
14
|
+
app.server.url_for(job)
|
15
|
+
end
|
16
|
+
end
|
17
|
+
c.server.before_serve do |job, env|
|
18
|
+
uid = job.store
|
19
|
+
AssetThumb.create!(uid: uid, job: job.serialize)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
app.datastore = Dragonfly::DataStorage::S3DataStore.new
|
23
|
+
app.datastore.configure do |c|
|
24
|
+
c.bucket_name = ENV['S3_BUCKET']
|
25
|
+
c.access_key_id = ENV['S3_KEY']
|
26
|
+
c.secret_access_key = ENV['S3_SECRET']
|
27
|
+
c.region = ENV['S3_REGION']
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
app.define_macro(ActiveRecord::Base, :image_accessor)
|
32
|
+
app.define_macro(ActiveRecord::Base, :file_accessor)
|
@@ -0,0 +1 @@
|
|
1
|
+
require 'active_admin/generator'
|
metadata
ADDED
@@ -0,0 +1,141 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: activeadmin-generator
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Stefano Verna
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2012-11-26 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: rake
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '0'
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: thor
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ! '>='
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '0'
|
38
|
+
type: :runtime
|
39
|
+
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '0'
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: railties
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
50
|
+
requirements:
|
51
|
+
- - ! '>='
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '0'
|
54
|
+
type: :runtime
|
55
|
+
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
description: Generate ActiveAdmin projects
|
63
|
+
email:
|
64
|
+
- stefano.verna@welaika.com
|
65
|
+
executables:
|
66
|
+
- activeadmin-generate
|
67
|
+
extensions: []
|
68
|
+
extra_rdoc_files: []
|
69
|
+
files:
|
70
|
+
- .gitignore
|
71
|
+
- README.md
|
72
|
+
- Rakefile
|
73
|
+
- activeadmin-generator.gemspec
|
74
|
+
- bin/activeadmin-generate
|
75
|
+
- lib/active_admin/generator/base.rb
|
76
|
+
- lib/active_admin/generator/bricks/active_admin.rb
|
77
|
+
- lib/active_admin/generator/bricks/active_admin_extras.rb
|
78
|
+
- lib/active_admin/generator/bricks/base.rb
|
79
|
+
- lib/active_admin/generator/bricks/clean_assets.rb
|
80
|
+
- lib/active_admin/generator/bricks/database.rb
|
81
|
+
- lib/active_admin/generator/bricks/errbit.rb
|
82
|
+
- lib/active_admin/generator/bricks/frontend.rb
|
83
|
+
- lib/active_admin/generator/bricks/git.rb
|
84
|
+
- lib/active_admin/generator/bricks/heroku.rb
|
85
|
+
- lib/active_admin/generator/bricks/s3.rb
|
86
|
+
- lib/active_admin/generator/cli.rb
|
87
|
+
- lib/active_admin/generator/templates/app/assets/fonts/.empty_directory
|
88
|
+
- lib/active_admin/generator/templates/app/assets/images/.empty_directory
|
89
|
+
- lib/active_admin/generator/templates/app/assets/javascripts/application.js.coffee
|
90
|
+
- lib/active_admin/generator/templates/app/assets/stylesheets/active_admin.css.sass
|
91
|
+
- lib/active_admin/generator/templates/app/assets/stylesheets/application.css.sass
|
92
|
+
- lib/active_admin/generator/templates/app/assets/stylesheets/basic/_fonts.css.sass
|
93
|
+
- lib/active_admin/generator/templates/app/assets/stylesheets/basic/_layout.css.sass
|
94
|
+
- lib/active_admin/generator/templates/app/assets/stylesheets/basic/_sprites.css.sass
|
95
|
+
- lib/active_admin/generator/templates/app/assets/stylesheets/lib/_colors.css.sass
|
96
|
+
- lib/active_admin/generator/templates/app/assets/stylesheets/lib/_mixins.css.sass
|
97
|
+
- lib/active_admin/generator/templates/app/assets/stylesheets/lib/_variables.css.sass
|
98
|
+
- lib/active_admin/generator/templates/app/assets/stylesheets/modules/.empty_directory
|
99
|
+
- lib/active_admin/generator/templates/app/assets/stylesheets/sections/.empty_directory
|
100
|
+
- lib/active_admin/generator/templates/app/assets/stylesheets/themes/.empty_directory
|
101
|
+
- lib/active_admin/generator/templates/app/controllers/application_controller.rb
|
102
|
+
- lib/active_admin/generator/templates/app/controllers/static_controller.rb
|
103
|
+
- lib/active_admin/generator/templates/app/models/asset_thumb.rb
|
104
|
+
- lib/active_admin/generator/templates/app/views/application/_footer.html.slim
|
105
|
+
- lib/active_admin/generator/templates/app/views/application/_head.html.slim
|
106
|
+
- lib/active_admin/generator/templates/app/views/application/_header.html.slim
|
107
|
+
- lib/active_admin/generator/templates/app/views/application/_js_includes.html.slim
|
108
|
+
- lib/active_admin/generator/templates/app/views/layouts/application.html.slim
|
109
|
+
- lib/active_admin/generator/templates/app/views/static/homepage.html.slim
|
110
|
+
- lib/active_admin/generator/templates/config/active_admin_initializer.rb
|
111
|
+
- lib/active_admin/generator/templates/config/initializers/active_admin.rb
|
112
|
+
- lib/active_admin/generator/templates/config/initializers/dragonfly.rb
|
113
|
+
- lib/active_admin/generator/templates/config/locales/it.yml
|
114
|
+
- lib/active_admin/generator/templates/db/migrate/20121126113057_create_asset_thumbs.rb
|
115
|
+
- lib/active_admin/generator/version.rb
|
116
|
+
- lib/activeadmin-generator.rb
|
117
|
+
homepage: ''
|
118
|
+
licenses: []
|
119
|
+
post_install_message:
|
120
|
+
rdoc_options: []
|
121
|
+
require_paths:
|
122
|
+
- lib
|
123
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
124
|
+
none: false
|
125
|
+
requirements:
|
126
|
+
- - ! '>='
|
127
|
+
- !ruby/object:Gem::Version
|
128
|
+
version: '0'
|
129
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
130
|
+
none: false
|
131
|
+
requirements:
|
132
|
+
- - ! '>='
|
133
|
+
- !ruby/object:Gem::Version
|
134
|
+
version: '0'
|
135
|
+
requirements: []
|
136
|
+
rubyforge_project:
|
137
|
+
rubygems_version: 1.8.23
|
138
|
+
signing_key:
|
139
|
+
specification_version: 3
|
140
|
+
summary: Generate ActiveAdmin projects
|
141
|
+
test_files: []
|