rails_admin_content_builder 1.0.3

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.
Files changed (126) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +15 -0
  3. data/.rspec +4 -0
  4. data/.ruby-gemset +1 -0
  5. data/.ruby-version +1 -0
  6. data/.travis.yml +8 -0
  7. data/CODE_OF_CONDUCT.md +49 -0
  8. data/Gemfile +12 -0
  9. data/LICENSE.txt +21 -0
  10. data/README.md +129 -0
  11. data/Rakefile +21 -0
  12. data/app/assets/images/cb-image-default.jpg +0 -0
  13. data/app/assets/images/cb-loading.svg +1 -0
  14. data/app/assets/images/cb-snippet-image-text.jpg +0 -0
  15. data/app/assets/images/cb-snippet-image.jpg +0 -0
  16. data/app/assets/images/cb-snippet-quote-text.jpg +0 -0
  17. data/app/assets/images/cb-snippet-quote.jpg +0 -0
  18. data/app/assets/images/cb-snippet-text-image.jpg +0 -0
  19. data/app/assets/images/cb-snippet-text-quote.jpg +0 -0
  20. data/app/assets/images/cb-snippet-text.jpg +0 -0
  21. data/app/assets/images/cb-snippet-video.jpg +0 -0
  22. data/app/assets/images/cb-video-default.jpg +0 -0
  23. data/app/assets/javascripts/rails_admin/content_builder.js.erb +295 -0
  24. data/app/assets/stylesheets/rails_admin/content_builder.scss +238 -0
  25. data/app/controllers/rails_admin_content_builder/content_builder_controller.rb +19 -0
  26. data/app/helpers/rails_admin_content_builder/content_builder_helpers.rb +32 -0
  27. data/app/models/rails_admin_content_builder/content_builder.rb +27 -0
  28. data/app/models/rails_admin_content_builder/content_builder_category.rb +12 -0
  29. data/app/models/rails_admin_content_builder/content_builder_image.rb +10 -0
  30. data/app/views/.gitkeep +0 -0
  31. data/app/views/rails_admin/main/content_builder.html.erb +42 -0
  32. data/bin/console +14 -0
  33. data/bin/setup +8 -0
  34. data/config/initializers/assets.rb +11 -0
  35. data/config/locales/content_builder.en.yml +17 -0
  36. data/config/locales/content_builder.pt-BR.yml +17 -0
  37. data/config/routes.rb +5 -0
  38. data/lib/generators/rails_admin_content_builder_generator.rb +32 -0
  39. data/lib/generators/templates/content_builder_image_uploader.rb +54 -0
  40. data/lib/generators/templates/create_content_builder_category_migration.rb +10 -0
  41. data/lib/generators/templates/create_content_builder_image_migration.rb +10 -0
  42. data/lib/generators/templates/create_content_builder_migration.rb +16 -0
  43. data/lib/generators/templates/rails_admin_content_builder.rb +37 -0
  44. data/lib/rails_admin_content_builder.rb +55 -0
  45. data/lib/rails_admin_content_builder/engine.rb +26 -0
  46. data/lib/rails_admin_content_builder/version.rb +3 -0
  47. data/rails_admin_content_builder.gemspec +42 -0
  48. data/screenshot/image1.png +0 -0
  49. data/spec/controllers/rails_admin_content_builder/content_builder_controller_spec.rb +19 -0
  50. data/spec/dummy/Gemfile +11 -0
  51. data/spec/dummy/Gemfile.lock +217 -0
  52. data/spec/dummy/Rakefile +6 -0
  53. data/spec/dummy/app/assets/javascripts/application.js +13 -0
  54. data/spec/dummy/app/assets/stylesheets/application.css +15 -0
  55. data/spec/dummy/app/controllers/application_controller.rb +5 -0
  56. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  57. data/spec/dummy/app/uploaders/content_builder_image_uploader.rb +54 -0
  58. data/spec/dummy/app/views/layouts/application.html.erb +14 -0
  59. data/spec/dummy/bin/bundle +3 -0
  60. data/spec/dummy/bin/rails +4 -0
  61. data/spec/dummy/bin/rake +4 -0
  62. data/spec/dummy/bin/setup +29 -0
  63. data/spec/dummy/config.ru +4 -0
  64. data/spec/dummy/config/application.rb +31 -0
  65. data/spec/dummy/config/boot.rb +5 -0
  66. data/spec/dummy/config/database.yml +25 -0
  67. data/spec/dummy/config/environment.rb +5 -0
  68. data/spec/dummy/config/environments/development.rb +41 -0
  69. data/spec/dummy/config/environments/production.rb +79 -0
  70. data/spec/dummy/config/environments/test.rb +42 -0
  71. data/spec/dummy/config/initializers/assets.rb +11 -0
  72. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  73. data/spec/dummy/config/initializers/cookies_serializer.rb +3 -0
  74. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  75. data/spec/dummy/config/initializers/inflections.rb +16 -0
  76. data/spec/dummy/config/initializers/mime_types.rb +4 -0
  77. data/spec/dummy/config/initializers/rails_admin.rb +37 -0
  78. data/spec/dummy/config/initializers/rails_admin_content_builder.rb +37 -0
  79. data/spec/dummy/config/initializers/session_store.rb +3 -0
  80. data/spec/dummy/config/initializers/simple_form.rb +165 -0
  81. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  82. data/spec/dummy/config/locales/en.yml +23 -0
  83. data/spec/dummy/config/locales/simple_form.en.yml +31 -0
  84. data/spec/dummy/config/routes.rb +57 -0
  85. data/spec/dummy/config/secrets.yml +22 -0
  86. data/spec/dummy/db/development.sqlite3 +0 -0
  87. data/spec/dummy/db/migrate/20160713200802_create_content_builder_categories.rb +10 -0
  88. data/spec/dummy/db/migrate/20160713200803_create_content_builders.rb +15 -0
  89. data/spec/dummy/db/migrate/20160713200804_create_content_builder_images.rb +10 -0
  90. data/spec/dummy/db/schema.rb +46 -0
  91. data/spec/dummy/lib/templates/erb/scaffold/_form.html.erb +13 -0
  92. data/spec/dummy/log/development.log +1182 -0
  93. data/spec/dummy/public/404.html +67 -0
  94. data/spec/dummy/public/422.html +67 -0
  95. data/spec/dummy/public/500.html +66 -0
  96. data/spec/dummy/public/favicon.ico +0 -0
  97. data/spec/dummy/public/uploads/rails_admin_content_builder/content_builder_image/image/1/center_example.jpg +0 -0
  98. data/spec/dummy/public/uploads/rails_admin_content_builder/content_builder_image/image/1/example.jpg +0 -0
  99. data/spec/dummy/public/uploads/rails_admin_content_builder/content_builder_image/image/1/left_or_right_example.jpg +0 -0
  100. data/spec/dummy/public/uploads/rails_admin_content_builder/content_builder_image/image/2/center_example.jpg +0 -0
  101. data/spec/dummy/public/uploads/rails_admin_content_builder/content_builder_image/image/2/example.jpg +0 -0
  102. data/spec/dummy/public/uploads/rails_admin_content_builder/content_builder_image/image/2/left_or_right_example.jpg +0 -0
  103. data/spec/dummy/public/uploads/tmp/1461693110-14578-0001-7683/center_example.jpg +0 -0
  104. data/spec/dummy/public/uploads/tmp/1461693110-14578-0001-7683/example.jpg +0 -0
  105. data/spec/dummy/public/uploads/tmp/1461693110-14578-0001-7683/left_or_right_example.jpg +0 -0
  106. data/spec/dummy/public/uploads/tmp/1461693202-14651-0001-6505/center_example.jpg +0 -0
  107. data/spec/dummy/public/uploads/tmp/1461693202-14651-0001-6505/example.jpg +0 -0
  108. data/spec/dummy/public/uploads/tmp/1461693202-14651-0001-6505/left_or_right_example.jpg +0 -0
  109. data/spec/dummy/public/uploads/tmp/1461693245-14728-0001-4392/center_example.jpg +0 -0
  110. data/spec/dummy/public/uploads/tmp/1461693245-14728-0001-4392/example.jpg +0 -0
  111. data/spec/dummy/public/uploads/tmp/1461693245-14728-0001-4392/left_or_right_example.jpg +0 -0
  112. data/spec/factories/content_builder_categories.rb +5 -0
  113. data/spec/factories/content_builder_images.rb +6 -0
  114. data/spec/factories/content_builders.rb +10 -0
  115. data/spec/features/create_content_builder_category_spec.rb +18 -0
  116. data/spec/features/create_content_builder_spec.rb +34 -0
  117. data/spec/features/status_content_builder_spec.rb +28 -0
  118. data/spec/fixtures/assets/example.jpg +0 -0
  119. data/spec/helpers/rails_admin_content_builder/content_builder_helper_spec.rb +33 -0
  120. data/spec/models/rails_admin_content_builder/content_builder_category_spec.rb +11 -0
  121. data/spec/models/rails_admin_content_builder/content_builder_image_spec.rb +11 -0
  122. data/spec/models/rails_admin_content_builder/content_builder_spec.rb +44 -0
  123. data/spec/spec_helper.rb +36 -0
  124. data/spec/version_spec.rb +7 -0
  125. data/vendor/assets/stylesheets/rails_admin_content_builder.scss +214 -0
  126. metadata +3100 -0
@@ -0,0 +1,17 @@
1
+ pt-BR:
2
+ admin:
3
+ actions:
4
+ content_builder:
5
+ title: "Criar Notícia"
6
+ menu: "Criar Notícia"
7
+ breadcrumb: "Criar Notícia"
8
+ delete_block: "Deseja mesmo remover esse conteúdo?"
9
+ success_save: "Atualizado com sucesso"
10
+ error_save: "Erro ao atualizar"
11
+ written_by: "Autor"
12
+ news_source: "Fonte"
13
+ summary: "Resumo"
14
+ button:
15
+ save: "Salvar"
16
+ publish: "Publicar"
17
+ unpublish: 'Despublicar'
@@ -0,0 +1,5 @@
1
+ Rails.application.routes.draw do
2
+ path_url = 'admin/rails_admin_content_builder~content_builder/:id/create_images'
3
+ path_method = 'rails_admin_content_builder/content_builder#create_images'
4
+ put path_url => path_method
5
+ end
@@ -0,0 +1,32 @@
1
+ require 'rails/generators'
2
+
3
+ class RailsAdminContentBuilderGenerator < Rails::Generators::Base
4
+ include Rails::Generators::Migration
5
+
6
+ def self.source_root
7
+ @source_root ||= File.expand_path(File.join(File.dirname(__FILE__), 'templates/'))
8
+ end
9
+
10
+ def self.next_migration_number(*)
11
+ unless @migration
12
+ @migration = Time.now.utc.strftime("%Y%m%d%H%M%S").to_i
13
+ else
14
+ @migration += 1
15
+ end
16
+ @migration.to_s
17
+ end
18
+
19
+ def create_uploader_content_builder_image_model
20
+ template "content_builder_image_uploader.rb", "app/uploaders/content_builder_image_uploader.rb"
21
+ end
22
+
23
+ def create_rails_admin_config_in_initializer
24
+ template "rails_admin_content_builder.rb", "config/initializers/rails_admin_content_builder.rb"
25
+ end
26
+
27
+ def create_migrations
28
+ migration_template "create_content_builder_category_migration.rb", File.join('db/migrate', "create_content_builder_categories.rb")
29
+ migration_template "create_content_builder_migration.rb", File.join('db/migrate', "create_content_builders.rb")
30
+ migration_template "create_content_builder_image_migration.rb", File.join('db/migrate', "create_content_builder_images.rb")
31
+ end
32
+ end
@@ -0,0 +1,54 @@
1
+ # encoding: utf-8
2
+
3
+ class ContentBuilderImageUploader < CarrierWave::Uploader::Base
4
+ # Include RMagick or MiniMagick support:
5
+ # include CarrierWave::RMagick
6
+ include CarrierWave::MiniMagick
7
+
8
+ # Choose what kind of storage to use for this uploader:
9
+ storage :file
10
+ # storage :fog
11
+
12
+ # Override the directory where uploaded files will be stored.
13
+ # This is a sensible default for uploaders that are meant to be mounted:
14
+ def store_dir
15
+ "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
16
+ end
17
+
18
+ # Provide a default URL as a default if there hasn't been a file uploaded:
19
+ # def default_url
20
+ # # For Rails 3.1+ asset pipeline compatibility:
21
+ # # ActionController::Base.helpers.asset_path("fallback/" + [version_name, "default.png"].compact.join('_'))
22
+ #
23
+ # "/images/fallback/" + [version_name, "default.png"].compact.join('_')
24
+ # end
25
+
26
+ # Process files as they are uploaded:
27
+ # process :scale => [200, 300]
28
+ #
29
+ # def scale(width, height)
30
+ # # do something
31
+ # end
32
+
33
+ # Create different versions of your uploaded files:
34
+ version :left_or_right do
35
+ process :resize_to_fit => [450, 450]
36
+ end
37
+
38
+ version :center do
39
+ process :resize_to_fit => [900, 900]
40
+ end
41
+
42
+ # Add a white list of extensions which are allowed to be uploaded.
43
+ # For images you might use something like this:
44
+ def extension_white_list
45
+ %w(jpg jpeg gif png)
46
+ end
47
+
48
+ # Override the filename of the uploaded files:
49
+ # Avoid using model.id or version_name here, see uploader/store.rb for details.
50
+ # def filename
51
+ # "something.jpg" if original_filename
52
+ # end
53
+
54
+ end
@@ -0,0 +1,10 @@
1
+ class CreateContentBuilderCategories < ActiveRecord::Migration
2
+ def change
3
+ create_table :content_builder_categories do |t|
4
+ t.string :name
5
+ t.string :slug
6
+
7
+ t.timestamps null: false
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ class CreateContentBuilderImages < ActiveRecord::Migration
2
+ def change
3
+ create_table :content_builder_images do |t|
4
+ t.string :image
5
+ t.references :content_builder, index: true, foreign_key: true
6
+
7
+ t.timestamps null: false
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,16 @@
1
+ class CreateContentBuilders < ActiveRecord::Migration
2
+ def change
3
+ create_table :content_builders do |t|
4
+ t.string :title
5
+ t.string :written_by
6
+ t.datetime :date_publish
7
+ t.text :content
8
+ t.boolean :status, default: false
9
+ t.string :slug
10
+ t.text :summary
11
+ t.references :content_builder_category, index: true, foreign_key: true
12
+
13
+ t.timestamps null: false
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,37 @@
1
+ RailsAdmin.config do |config|
2
+ config.actions do
3
+ content_builder do
4
+ only ['RailsAdminContentBuilder::ContentBuilder']
5
+ end
6
+
7
+ config.model 'RailsAdminContentBuilder::ContentBuilder' do
8
+ list do
9
+ field :id
10
+ field :title
11
+ field :date_publish
12
+ field :content_builder_category
13
+ field :status
14
+ end
15
+ edit do
16
+ field :title
17
+ field :date_publish
18
+ field :written_by
19
+ field :content_builder_category
20
+ end
21
+ end
22
+
23
+ config.model 'RailsAdminContentBuilder::ContentBuilderCategory' do
24
+ list do
25
+ field :id
26
+ field :name
27
+ end
28
+ edit do
29
+ field :name
30
+ end
31
+ end
32
+
33
+ config.model 'RailsAdminContentBuilder::ContentBuilderImage' do
34
+ visible false
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,55 @@
1
+ require "rails_admin_content_builder/engine"
2
+
3
+ module RailsAdminContentBuilder
4
+ end
5
+
6
+ require 'rails_admin/config/actions'
7
+
8
+ module RailsAdmin
9
+ module Config
10
+ module Actions
11
+ class ContentBuilder < Base
12
+ RailsAdmin::Config::Actions.register(self)
13
+ register_instance_option :member do
14
+ true
15
+ end
16
+
17
+ register_instance_option :link_icon do
18
+ 'icon-align-justify'
19
+ end
20
+
21
+ register_instance_option :http_methods do
22
+ [:get, :post]
23
+ end
24
+
25
+ register_instance_option :controller do
26
+ Proc.new do
27
+ @object = @abstract_model.model.find(params[:id])
28
+ @response = {}
29
+
30
+ if request.post?
31
+ if params.present?
32
+
33
+ if params[:publish]
34
+ status = true
35
+ elsif params[:unpublish]
36
+ status = false
37
+ elsif params[:save]
38
+ status = @object.status
39
+ end
40
+
41
+ if @object.update(content: params[:content], status: status)
42
+ flash[:success] = t('admin.actions.content_builder.success_save')
43
+ else
44
+ flash[:error] = t('admin.actions.content_builder.error_save')
45
+ end
46
+ end
47
+ end
48
+
49
+ render :action => @action.template_name
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
55
+ end
@@ -0,0 +1,26 @@
1
+ require 'medium-editor-rails'
2
+ require 'simple_form'
3
+ require 'carrierwave'
4
+ require 'friendly_id'
5
+ require 'search_cop'
6
+
7
+ module RailsAdminContentBuilder
8
+ class Engine < ::Rails::Engine
9
+ isolate_namespace RailsAdminContentBuilder
10
+
11
+ initializer 'rails_admin_content_builder.load_static_assets' do |app|
12
+ app.middleware.use ::ActionDispatch::Static, "#{root}/vendor"
13
+ app.config.assets.precompile += %w(
14
+ rails_admin/content_builder.js
15
+ rails_admin/content_builder.css
16
+ )
17
+ end
18
+
19
+ config.generators do |g|
20
+ g.test_framework :rspec
21
+ g.fixture_replacement :factory_girl, :dir => 'spec/factories'
22
+ g.assets false
23
+ g.helper false
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,3 @@
1
+ module RailsAdminContentBuilder
2
+ VERSION = "1.0.3"
3
+ end
@@ -0,0 +1,42 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require "rails_admin_content_builder/version"
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "rails_admin_content_builder"
8
+ spec.version = RailsAdminContentBuilder::VERSION
9
+ spec.authors = ["Luiz Picolo", "Gabriel Medina"]
10
+ spec.email = ["luizpicolo@gmail.com", "gmedina.santos@gmail.com"]
11
+
12
+ spec.summary = "Easy way for create contents using rails_admin"
13
+ spec.description = "Easy way for create contents using rails_admin"
14
+ spec.homepage = "http://github.com/luizpicolo/rails_admin_content_builder"
15
+ spec.license = "MIT"
16
+
17
+ spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
18
+ spec.bindir = "exe"
19
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
20
+ spec.require_paths = ["lib"]
21
+ spec.test_files = Dir["spec/**/*"]
22
+
23
+ spec.add_development_dependency "bundler", "~> 1.11"
24
+ spec.add_development_dependency "rake", "~> 10.0"
25
+ spec.add_development_dependency "rails", [">= 4.0", "< 5"]
26
+ spec.add_development_dependency "rspec-rails", "~> 3.0"
27
+ spec.add_development_dependency "rails_admin", "~> 0.8.1"
28
+ spec.add_development_dependency 'capybara', '~> 2.7', '>= 2.7.0'
29
+ spec.add_development_dependency 'launchy', '~> 2.4', '>= 2.4.3'
30
+ spec.add_development_dependency "shoulda-matchers", "~> 3.1"
31
+ spec.add_development_dependency 'selenium-webdriver', '~> 2.53', '>= 2.53.4'
32
+ spec.add_development_dependency 'factory_girl_rails', '~> 4.7', '>= 4.7.0'
33
+ spec.add_development_dependency 'faker', '~> 1.6', '>= 1.6.3'
34
+
35
+ spec.add_runtime_dependency "carrierwave", "~> 0.11.0"
36
+ spec.add_runtime_dependency 'medium-editor-rails', '~> 2.1', '>= 2.1.0'
37
+ spec.add_runtime_dependency 'mini_magick', '~> 4.5', '>= 4.5.1'
38
+ spec.add_runtime_dependency 'friendly_id', '~> 5.1', '>= 5.1.0'
39
+ spec.add_runtime_dependency "simple_form", "~> 3.2"
40
+ spec.add_runtime_dependency 'search_cop', '~> 1.0', '>= 1.0.6'
41
+ spec.add_runtime_dependency 'rails-html-sanitizer', '~> 1.0', '>= 1.0.0'
42
+ end
Binary file
@@ -0,0 +1,19 @@
1
+ require 'spec_helper'
2
+ require 'json'
3
+
4
+ describe RailsAdminContentBuilder::ContentBuilderController, type: :controller do
5
+ describe 'PUT #create_images' do
6
+ it "Should return valid JSON" do
7
+ content_builder = FactoryGirl.create :content_builder
8
+ put :create_images, id: content_builder.id,
9
+ content_builder_image: Rack::Test::UploadedFile.new(File.join('spec', 'fixtures', 'assets', 'example.jpg'))
10
+
11
+ json = JSON.parse(response.body)
12
+ path = '/uploads/rails_admin_content_builder/content_builder_image/image/1/'
13
+
14
+ expect(response.status).to eq 200
15
+ expect(json['image']['url']).to eq path + 'example.jpg'
16
+ expect(json['image']['left_or_right']['url']).to eq path + 'left_or_right_example.jpg'
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,11 @@
1
+ source 'https://rubygems.org'
2
+
3
+ group :development, :test do
4
+ gem 'rspec-rails'
5
+ gem 'factory_girl_rails'
6
+ gem 'sqlite3'
7
+ gem 'rails_admin'
8
+ gem 'shoulda-matchers', '~> 3.1'
9
+ gem 'rails_admin_content_builder', path: '../../'
10
+ end
11
+
@@ -0,0 +1,217 @@
1
+ PATH
2
+ remote: ../../
3
+ specs:
4
+ rails_admin_content_builder (1.0.1)
5
+ carrierwave (~> 0.11.0)
6
+ friendly_id (~> 5.1.0)
7
+ medium-editor-rails (~> 2.1.0)
8
+ mini_magick (~> 4.5.1)
9
+ rails-html-sanitizer
10
+ search_cop (~> 1.0.6)
11
+ simple_form (~> 3.2)
12
+
13
+ GEM
14
+ remote: https://rubygems.org/
15
+ specs:
16
+ actionmailer (4.2.6)
17
+ actionpack (= 4.2.6)
18
+ actionview (= 4.2.6)
19
+ activejob (= 4.2.6)
20
+ mail (~> 2.5, >= 2.5.4)
21
+ rails-dom-testing (~> 1.0, >= 1.0.5)
22
+ actionpack (4.2.6)
23
+ actionview (= 4.2.6)
24
+ activesupport (= 4.2.6)
25
+ rack (~> 1.6)
26
+ rack-test (~> 0.6.2)
27
+ rails-dom-testing (~> 1.0, >= 1.0.5)
28
+ rails-html-sanitizer (~> 1.0, >= 1.0.2)
29
+ actionview (4.2.6)
30
+ activesupport (= 4.2.6)
31
+ builder (~> 3.1)
32
+ erubis (~> 2.7.0)
33
+ rails-dom-testing (~> 1.0, >= 1.0.5)
34
+ rails-html-sanitizer (~> 1.0, >= 1.0.2)
35
+ activejob (4.2.6)
36
+ activesupport (= 4.2.6)
37
+ globalid (>= 0.3.0)
38
+ activemodel (4.2.6)
39
+ activesupport (= 4.2.6)
40
+ builder (~> 3.1)
41
+ activerecord (4.2.6)
42
+ activemodel (= 4.2.6)
43
+ activesupport (= 4.2.6)
44
+ arel (~> 6.0)
45
+ activesupport (4.2.6)
46
+ i18n (~> 0.7)
47
+ json (~> 1.7, >= 1.7.7)
48
+ minitest (~> 5.1)
49
+ thread_safe (~> 0.3, >= 0.3.4)
50
+ tzinfo (~> 1.1)
51
+ arel (6.0.3)
52
+ builder (3.2.2)
53
+ carrierwave (0.11.2)
54
+ activemodel (>= 3.2.0)
55
+ activesupport (>= 3.2.0)
56
+ json (>= 1.7)
57
+ mime-types (>= 1.16)
58
+ mimemagic (>= 0.3.0)
59
+ coffee-rails (4.1.1)
60
+ coffee-script (>= 2.2.0)
61
+ railties (>= 4.0.0, < 5.1.x)
62
+ coffee-script (2.4.1)
63
+ coffee-script-source
64
+ execjs
65
+ coffee-script-source (1.10.0)
66
+ concurrent-ruby (1.0.1)
67
+ diff-lcs (1.2.5)
68
+ erubis (2.7.0)
69
+ execjs (2.6.0)
70
+ factory_girl (4.7.0)
71
+ activesupport (>= 3.0.0)
72
+ factory_girl_rails (4.7.0)
73
+ factory_girl (~> 4.7.0)
74
+ railties (>= 3.0.0)
75
+ font-awesome-rails (4.6.1.0)
76
+ railties (>= 3.2, < 5.1)
77
+ friendly_id (5.1.0)
78
+ activerecord (>= 4.0.0)
79
+ globalid (0.3.6)
80
+ activesupport (>= 4.1.0)
81
+ haml (4.0.7)
82
+ tilt
83
+ i18n (0.7.0)
84
+ jquery-rails (4.1.1)
85
+ rails-dom-testing (>= 1, < 3)
86
+ railties (>= 4.2.0)
87
+ thor (>= 0.14, < 2.0)
88
+ jquery-ui-rails (5.0.5)
89
+ railties (>= 3.2.16)
90
+ json (1.8.3)
91
+ kaminari (0.16.3)
92
+ actionpack (>= 3.0.0)
93
+ activesupport (>= 3.0.0)
94
+ loofah (2.0.3)
95
+ nokogiri (>= 1.5.9)
96
+ mail (2.6.4)
97
+ mime-types (>= 1.16, < 4)
98
+ medium-editor-rails (2.1.0)
99
+ railties (>= 3.0)
100
+ mime-types (3.0)
101
+ mime-types-data (~> 3.2015)
102
+ mime-types-data (3.2016.0221)
103
+ mimemagic (0.3.1)
104
+ mini_magick (4.5.1)
105
+ mini_portile2 (2.0.0)
106
+ minitest (5.8.4)
107
+ nested_form (0.3.2)
108
+ nokogiri (1.6.7.2)
109
+ mini_portile2 (~> 2.0.0.rc2)
110
+ polyglot (0.3.5)
111
+ rack (1.6.4)
112
+ rack-pjax (0.8.0)
113
+ nokogiri (~> 1.5)
114
+ rack (~> 1.1)
115
+ rack-test (0.6.3)
116
+ rack (>= 1.0)
117
+ rails (4.2.6)
118
+ actionmailer (= 4.2.6)
119
+ actionpack (= 4.2.6)
120
+ actionview (= 4.2.6)
121
+ activejob (= 4.2.6)
122
+ activemodel (= 4.2.6)
123
+ activerecord (= 4.2.6)
124
+ activesupport (= 4.2.6)
125
+ bundler (>= 1.3.0, < 2.0)
126
+ railties (= 4.2.6)
127
+ sprockets-rails
128
+ rails-deprecated_sanitizer (1.0.3)
129
+ activesupport (>= 4.2.0.alpha)
130
+ rails-dom-testing (1.0.7)
131
+ activesupport (>= 4.2.0.beta, < 5.0)
132
+ nokogiri (~> 1.6.0)
133
+ rails-deprecated_sanitizer (>= 1.0.1)
134
+ rails-html-sanitizer (1.0.3)
135
+ loofah (~> 2.0)
136
+ rails_admin (0.8.1)
137
+ builder (~> 3.1)
138
+ coffee-rails (~> 4.0)
139
+ font-awesome-rails (>= 3.0, < 5)
140
+ haml (~> 4.0)
141
+ jquery-rails (>= 3.0, < 5)
142
+ jquery-ui-rails (~> 5.0)
143
+ kaminari (~> 0.14)
144
+ nested_form (~> 0.3)
145
+ rack-pjax (~> 0.7)
146
+ rails (~> 4.0)
147
+ remotipart (~> 1.0)
148
+ safe_yaml (~> 1.0)
149
+ sass-rails (>= 4.0, < 6)
150
+ railties (4.2.6)
151
+ actionpack (= 4.2.6)
152
+ activesupport (= 4.2.6)
153
+ rake (>= 0.8.7)
154
+ thor (>= 0.18.1, < 2.0)
155
+ rake (11.1.2)
156
+ remotipart (1.2.1)
157
+ rspec-core (3.4.4)
158
+ rspec-support (~> 3.4.0)
159
+ rspec-expectations (3.4.0)
160
+ diff-lcs (>= 1.2.0, < 2.0)
161
+ rspec-support (~> 3.4.0)
162
+ rspec-mocks (3.4.1)
163
+ diff-lcs (>= 1.2.0, < 2.0)
164
+ rspec-support (~> 3.4.0)
165
+ rspec-rails (3.4.2)
166
+ actionpack (>= 3.0, < 4.3)
167
+ activesupport (>= 3.0, < 4.3)
168
+ railties (>= 3.0, < 4.3)
169
+ rspec-core (~> 3.4.0)
170
+ rspec-expectations (~> 3.4.0)
171
+ rspec-mocks (~> 3.4.0)
172
+ rspec-support (~> 3.4.0)
173
+ rspec-support (3.4.1)
174
+ safe_yaml (1.0.4)
175
+ sass (3.4.22)
176
+ sass-rails (5.0.4)
177
+ railties (>= 4.0.0, < 5.0)
178
+ sass (~> 3.1)
179
+ sprockets (>= 2.8, < 4.0)
180
+ sprockets-rails (>= 2.0, < 4.0)
181
+ tilt (>= 1.1, < 3)
182
+ search_cop (1.0.6)
183
+ treetop
184
+ shoulda-matchers (3.1.1)
185
+ activesupport (>= 4.0.0)
186
+ simple_form (3.2.1)
187
+ actionpack (> 4, < 5.1)
188
+ activemodel (> 4, < 5.1)
189
+ sprockets (3.6.0)
190
+ concurrent-ruby (~> 1.0)
191
+ rack (> 1, < 3)
192
+ sprockets-rails (3.0.4)
193
+ actionpack (>= 4.0)
194
+ activesupport (>= 4.0)
195
+ sprockets (>= 3.0.0)
196
+ sqlite3 (1.3.11)
197
+ thor (0.19.1)
198
+ thread_safe (0.3.5)
199
+ tilt (2.0.2)
200
+ treetop (1.6.5)
201
+ polyglot (~> 0.3)
202
+ tzinfo (1.2.2)
203
+ thread_safe (~> 0.1)
204
+
205
+ PLATFORMS
206
+ ruby
207
+
208
+ DEPENDENCIES
209
+ factory_girl_rails
210
+ rails_admin
211
+ rails_admin_content_builder!
212
+ rspec-rails
213
+ shoulda-matchers (~> 3.1)
214
+ sqlite3
215
+
216
+ BUNDLED WITH
217
+ 1.12.2