activeadmin-generator 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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: []
|