rails_admin_featured_content 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 (119) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +15 -0
  3. data/.rspec +2 -0
  4. data/.ruby-gemset +1 -0
  5. data/.ruby-version +1 -0
  6. data/.travis.yml +5 -0
  7. data/CODE_OF_CONDUCT.md +49 -0
  8. data/Gemfile +13 -0
  9. data/LICENSE.txt +21 -0
  10. data/README.md +81 -0
  11. data/Rakefile +21 -0
  12. data/app/assets/images/fc-image-default.jpg +0 -0
  13. data/app/assets/images/fc-loading.svg +1 -0
  14. data/app/assets/images/fc-snippet-highlight.jpg +0 -0
  15. data/app/assets/images/fc-snippet-slide.jpg +0 -0
  16. data/app/assets/images/fc-snippet-text.jpg +0 -0
  17. data/app/assets/images/fc-snippet-three.jpg +0 -0
  18. data/app/assets/images/fc-snippet-two.jpg +0 -0
  19. data/app/assets/javascripts/rails_admin/featured_content.js.erb +399 -0
  20. data/app/assets/stylesheets/rails_admin/featured_content.scss +599 -0
  21. data/app/controllers/rails_admin_featured_content/featured_content_controller.rb +28 -0
  22. data/app/models/.keep +0 -0
  23. data/app/models/rails_admin_featured_content/featured_content.rb +16 -0
  24. data/app/models/rails_admin_featured_content/featured_content_image.rb +9 -0
  25. data/app/views/.gitkeep +0 -0
  26. data/app/views/rails_admin/main/featured_content.html.erb +42 -0
  27. data/bin/console +14 -0
  28. data/bin/setup +8 -0
  29. data/config/initializers/assets.rb +7 -0
  30. data/config/locales/featured_content.en.yml +17 -0
  31. data/config/locales/featured_content.pt-BR.yml +17 -0
  32. data/config/routes.rb +9 -0
  33. data/lib/generators/rails_admin_featured_content_generator.rb +31 -0
  34. data/lib/generators/templates/create_featured_content_images_migration.rb +10 -0
  35. data/lib/generators/templates/create_featured_content_migration.rb +11 -0
  36. data/lib/generators/templates/featured_content_image_uploader.rb +50 -0
  37. data/lib/generators/templates/rails_admin_featured_content.rb +22 -0
  38. data/lib/rails_admin_featured_content.rb +55 -0
  39. data/lib/rails_admin_featured_content/engine.rb +23 -0
  40. data/lib/rails_admin_featured_content/version.rb +3 -0
  41. data/rails_admin_featured_content.gemspec +45 -0
  42. data/spec/controllers/rails_admin_featured_content/featured_content_controller_spec.rb +42 -0
  43. data/spec/dummy/Gemfile +11 -0
  44. data/spec/dummy/Gemfile.lock +235 -0
  45. data/spec/dummy/Rakefile +6 -0
  46. data/spec/dummy/app/assets/javascripts/application.js +13 -0
  47. data/spec/dummy/app/assets/stylesheets/application.css +15 -0
  48. data/spec/dummy/app/controllers/application_controller.rb +5 -0
  49. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  50. data/spec/dummy/app/uploaders/content_builder_image_uploader.rb +54 -0
  51. data/spec/dummy/app/uploaders/featured_content_image_uploader.rb +50 -0
  52. data/spec/dummy/app/views/layouts/application.html.erb +14 -0
  53. data/spec/dummy/bin/bundle +3 -0
  54. data/spec/dummy/bin/rails +4 -0
  55. data/spec/dummy/bin/rake +4 -0
  56. data/spec/dummy/bin/setup +29 -0
  57. data/spec/dummy/config.ru +4 -0
  58. data/spec/dummy/config/application.rb +31 -0
  59. data/spec/dummy/config/boot.rb +5 -0
  60. data/spec/dummy/config/database.yml +25 -0
  61. data/spec/dummy/config/environment.rb +5 -0
  62. data/spec/dummy/config/environments/development.rb +41 -0
  63. data/spec/dummy/config/environments/production.rb +79 -0
  64. data/spec/dummy/config/environments/test.rb +42 -0
  65. data/spec/dummy/config/initializers/assets.rb +11 -0
  66. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  67. data/spec/dummy/config/initializers/cookies_serializer.rb +3 -0
  68. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  69. data/spec/dummy/config/initializers/inflections.rb +16 -0
  70. data/spec/dummy/config/initializers/mime_types.rb +4 -0
  71. data/spec/dummy/config/initializers/rails_admin.rb +37 -0
  72. data/spec/dummy/config/initializers/rails_admin_content_builder.rb +37 -0
  73. data/spec/dummy/config/initializers/rails_admin_featured_content.rb +22 -0
  74. data/spec/dummy/config/initializers/session_store.rb +3 -0
  75. data/spec/dummy/config/initializers/simple_form.rb +165 -0
  76. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  77. data/spec/dummy/config/locales/en.yml +23 -0
  78. data/spec/dummy/config/locales/simple_form.en.yml +31 -0
  79. data/spec/dummy/config/routes.rb +57 -0
  80. data/spec/dummy/config/secrets.yml +22 -0
  81. data/spec/dummy/db/development.sqlite3 +0 -0
  82. data/spec/dummy/db/migrate/20160729105801_create_content_builder_categories.rb +10 -0
  83. data/spec/dummy/db/migrate/20160729105802_create_content_builders.rb +16 -0
  84. data/spec/dummy/db/migrate/20160729105803_create_content_builder_images.rb +10 -0
  85. data/spec/dummy/db/migrate/20160729105947_create_featured_contents.rb +11 -0
  86. data/spec/dummy/db/migrate/20160729105948_create_featured_content_images.rb +10 -0
  87. data/spec/dummy/db/schema.rb +64 -0
  88. data/spec/dummy/db/test.sqlite3 +0 -0
  89. data/spec/dummy/lib/templates/erb/scaffold/_form.html.erb +13 -0
  90. data/spec/dummy/log/development.log +1698 -0
  91. data/spec/dummy/log/test.log +36 -0
  92. data/spec/dummy/public/404.html +67 -0
  93. data/spec/dummy/public/422.html +67 -0
  94. data/spec/dummy/public/500.html +66 -0
  95. data/spec/dummy/public/favicon.ico +0 -0
  96. data/spec/dummy/public/uploads/rails_admin_content_builder/content_builder_image/image/1/center_example.jpg +0 -0
  97. data/spec/dummy/public/uploads/rails_admin_content_builder/content_builder_image/image/1/example.jpg +0 -0
  98. data/spec/dummy/public/uploads/rails_admin_content_builder/content_builder_image/image/1/left_or_right_example.jpg +0 -0
  99. data/spec/dummy/public/uploads/rails_admin_content_builder/content_builder_image/image/2/center_example.jpg +0 -0
  100. data/spec/dummy/public/uploads/rails_admin_content_builder/content_builder_image/image/2/example.jpg +0 -0
  101. data/spec/dummy/public/uploads/rails_admin_content_builder/content_builder_image/image/2/left_or_right_example.jpg +0 -0
  102. data/spec/dummy/public/uploads/rails_admin_featured_content/featured_content_image/image/1/example.jpg +0 -0
  103. data/spec/dummy/public/uploads/rails_admin_featured_content/featured_content_image/image/1/thumb_example.jpg +0 -0
  104. data/spec/dummy/public/uploads/tmp/1461693110-14578-0001-7683/center_example.jpg +0 -0
  105. data/spec/dummy/public/uploads/tmp/1461693110-14578-0001-7683/example.jpg +0 -0
  106. data/spec/dummy/public/uploads/tmp/1461693110-14578-0001-7683/left_or_right_example.jpg +0 -0
  107. data/spec/dummy/public/uploads/tmp/1461693202-14651-0001-6505/center_example.jpg +0 -0
  108. data/spec/dummy/public/uploads/tmp/1461693202-14651-0001-6505/example.jpg +0 -0
  109. data/spec/dummy/public/uploads/tmp/1461693202-14651-0001-6505/left_or_right_example.jpg +0 -0
  110. data/spec/dummy/public/uploads/tmp/1461693245-14728-0001-4392/center_example.jpg +0 -0
  111. data/spec/dummy/public/uploads/tmp/1461693245-14728-0001-4392/example.jpg +0 -0
  112. data/spec/dummy/public/uploads/tmp/1461693245-14728-0001-4392/left_or_right_example.jpg +0 -0
  113. data/spec/factories/featured_content.rb +7 -0
  114. data/spec/factories/featured_content_image.rb +7 -0
  115. data/spec/fixtures/assets/example.jpg +0 -0
  116. data/spec/spec_helper.rb +20 -0
  117. data/spec/version_spec.rb +7 -0
  118. data/vendor/assets/stylesheets/rails_admin_featured_content.scss +557 -0
  119. metadata +575 -0
@@ -0,0 +1,42 @@
1
+ require 'spec_helper'
2
+
3
+ describe RailsAdminFeaturedContent::FeaturedContentController, type: :controller do
4
+ describe 'PUT #create_images' do
5
+ it "Should return valid JSON" do
6
+ featured_content = FactoryGirl.create :featured_content
7
+ put :create_images, id: featured_content.id,
8
+ featured_content_image: Rack::Test::UploadedFile.new(File.join('spec', 'fixtures', 'assets', 'example.jpg'))
9
+
10
+ json = JSON.parse(response.body)
11
+ path = '/uploads/rails_admin_featured_content/featured_content_image/image/1/'
12
+
13
+ expect(response.status).to eq 200
14
+ expect(json['image']['url']).to eq path + 'example.jpg'
15
+ expect(json['image']['thumb']['url']).to eq path + 'thumb_example.jpg'
16
+ end
17
+ end
18
+
19
+ describe 'GET #search_content' do
20
+ it "Should return last created content" do
21
+ featured_content = FactoryGirl.create :featured_content
22
+ content_builder = RailsAdminContentBuilder::ContentBuilder.create(
23
+ title: Faker::Lorem.characters,
24
+ date_publish: Time.now - 1.day,
25
+ written_by: Faker::Name.name,
26
+ content: '',
27
+ content_builder_category_id: 1,
28
+ status: true
29
+ )
30
+
31
+ get :search_content, id: featured_content.id, term: content_builder.title[0,15]
32
+
33
+ json = JSON.parse(response.body)
34
+
35
+ puts response.body
36
+
37
+ expect(response.status).to eq 200
38
+ # expect(json['image']['url']).to eq path + 'example.jpg'
39
+ # expect(json['image']['thumb']['url']).to eq path + 'thumb_example.jpg'
40
+ end
41
+ end
42
+ 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', git: 'git://github.com/luizpicolo/rails_admin_content_builder.git'
10
+ gem 'rails_admin_featured_content', path: '../../'
11
+ end
@@ -0,0 +1,235 @@
1
+ GIT
2
+ remote: git://github.com/luizpicolo/rails_admin_content_builder.git
3
+ revision: 05ec073a7f276a4d40dcd6eac7173e0f019cf925
4
+ specs:
5
+ rails_admin_content_builder (1.0.1)
6
+ carrierwave (~> 0.11.0)
7
+ friendly_id (~> 5.1.0)
8
+ medium-editor-rails (~> 2.1.0)
9
+ mini_magick (~> 4.5.1)
10
+ rails-html-sanitizer
11
+ search_cop (~> 1.0.6)
12
+ simple_form (~> 3.2)
13
+
14
+ PATH
15
+ remote: ../../
16
+ specs:
17
+ rails_admin_featured_content (1.0.3)
18
+ carrierwave (~> 0.11, >= 0.11.0)
19
+ croppie_rails (~> 1.2, >= 1.2.0)
20
+ friendly_id (~> 5.1, >= 5.1.0)
21
+ medium-editor-rails (~> 2.1, >= 2.1.0)
22
+ mini_magick (~> 4.5, >= 4.5.1)
23
+ owlcarousel-rails (~> 0)
24
+ rails-html-sanitizer (~> 1.0, >= 1.0.3)
25
+ simple_form (~> 3.2)
26
+
27
+ GEM
28
+ remote: https://rubygems.org/
29
+ specs:
30
+ actionmailer (4.2.6)
31
+ actionpack (= 4.2.6)
32
+ actionview (= 4.2.6)
33
+ activejob (= 4.2.6)
34
+ mail (~> 2.5, >= 2.5.4)
35
+ rails-dom-testing (~> 1.0, >= 1.0.5)
36
+ actionpack (4.2.6)
37
+ actionview (= 4.2.6)
38
+ activesupport (= 4.2.6)
39
+ rack (~> 1.6)
40
+ rack-test (~> 0.6.2)
41
+ rails-dom-testing (~> 1.0, >= 1.0.5)
42
+ rails-html-sanitizer (~> 1.0, >= 1.0.2)
43
+ actionview (4.2.6)
44
+ activesupport (= 4.2.6)
45
+ builder (~> 3.1)
46
+ erubis (~> 2.7.0)
47
+ rails-dom-testing (~> 1.0, >= 1.0.5)
48
+ rails-html-sanitizer (~> 1.0, >= 1.0.2)
49
+ activejob (4.2.6)
50
+ activesupport (= 4.2.6)
51
+ globalid (>= 0.3.0)
52
+ activemodel (4.2.6)
53
+ activesupport (= 4.2.6)
54
+ builder (~> 3.1)
55
+ activerecord (4.2.6)
56
+ activemodel (= 4.2.6)
57
+ activesupport (= 4.2.6)
58
+ arel (~> 6.0)
59
+ activesupport (4.2.6)
60
+ i18n (~> 0.7)
61
+ json (~> 1.7, >= 1.7.7)
62
+ minitest (~> 5.1)
63
+ thread_safe (~> 0.3, >= 0.3.4)
64
+ tzinfo (~> 1.1)
65
+ arel (6.0.3)
66
+ builder (3.2.2)
67
+ carrierwave (0.11.2)
68
+ activemodel (>= 3.2.0)
69
+ activesupport (>= 3.2.0)
70
+ json (>= 1.7)
71
+ mime-types (>= 1.16)
72
+ mimemagic (>= 0.3.0)
73
+ coffee-rails (4.1.1)
74
+ coffee-script (>= 2.2.0)
75
+ railties (>= 4.0.0, < 5.1.x)
76
+ coffee-script (2.4.1)
77
+ coffee-script-source
78
+ execjs
79
+ coffee-script-source (1.10.0)
80
+ concurrent-ruby (1.0.1)
81
+ croppie_rails (1.2.0)
82
+ diff-lcs (1.2.5)
83
+ erubis (2.7.0)
84
+ execjs (2.6.0)
85
+ factory_girl (4.7.0)
86
+ activesupport (>= 3.0.0)
87
+ factory_girl_rails (4.7.0)
88
+ factory_girl (~> 4.7.0)
89
+ railties (>= 3.0.0)
90
+ font-awesome-rails (4.6.1.0)
91
+ railties (>= 3.2, < 5.1)
92
+ friendly_id (5.1.0)
93
+ activerecord (>= 4.0.0)
94
+ globalid (0.3.6)
95
+ activesupport (>= 4.1.0)
96
+ haml (4.0.7)
97
+ tilt
98
+ i18n (0.7.0)
99
+ jquery-rails (4.1.1)
100
+ rails-dom-testing (>= 1, < 3)
101
+ railties (>= 4.2.0)
102
+ thor (>= 0.14, < 2.0)
103
+ jquery-ui-rails (5.0.5)
104
+ railties (>= 3.2.16)
105
+ json (1.8.3)
106
+ kaminari (0.16.3)
107
+ actionpack (>= 3.0.0)
108
+ activesupport (>= 3.0.0)
109
+ loofah (2.0.3)
110
+ nokogiri (>= 1.5.9)
111
+ mail (2.6.4)
112
+ mime-types (>= 1.16, < 4)
113
+ medium-editor-rails (2.1.0)
114
+ railties (>= 3.0)
115
+ mime-types (3.0)
116
+ mime-types-data (~> 3.2015)
117
+ mime-types-data (3.2016.0221)
118
+ mimemagic (0.3.1)
119
+ mini_magick (4.5.1)
120
+ mini_portile2 (2.0.0)
121
+ minitest (5.8.4)
122
+ nested_form (0.3.2)
123
+ nokogiri (1.6.7.2)
124
+ mini_portile2 (~> 2.0.0.rc2)
125
+ owlcarousel-rails (0.1.31)
126
+ jquery-rails
127
+ polyglot (0.3.5)
128
+ rack (1.6.4)
129
+ rack-pjax (0.8.0)
130
+ nokogiri (~> 1.5)
131
+ rack (~> 1.1)
132
+ rack-test (0.6.3)
133
+ rack (>= 1.0)
134
+ rails (4.2.6)
135
+ actionmailer (= 4.2.6)
136
+ actionpack (= 4.2.6)
137
+ actionview (= 4.2.6)
138
+ activejob (= 4.2.6)
139
+ activemodel (= 4.2.6)
140
+ activerecord (= 4.2.6)
141
+ activesupport (= 4.2.6)
142
+ bundler (>= 1.3.0, < 2.0)
143
+ railties (= 4.2.6)
144
+ sprockets-rails
145
+ rails-deprecated_sanitizer (1.0.3)
146
+ activesupport (>= 4.2.0.alpha)
147
+ rails-dom-testing (1.0.7)
148
+ activesupport (>= 4.2.0.beta, < 5.0)
149
+ nokogiri (~> 1.6.0)
150
+ rails-deprecated_sanitizer (>= 1.0.1)
151
+ rails-html-sanitizer (1.0.3)
152
+ loofah (~> 2.0)
153
+ rails_admin (0.8.1)
154
+ builder (~> 3.1)
155
+ coffee-rails (~> 4.0)
156
+ font-awesome-rails (>= 3.0, < 5)
157
+ haml (~> 4.0)
158
+ jquery-rails (>= 3.0, < 5)
159
+ jquery-ui-rails (~> 5.0)
160
+ kaminari (~> 0.14)
161
+ nested_form (~> 0.3)
162
+ rack-pjax (~> 0.7)
163
+ rails (~> 4.0)
164
+ remotipart (~> 1.0)
165
+ safe_yaml (~> 1.0)
166
+ sass-rails (>= 4.0, < 6)
167
+ railties (4.2.6)
168
+ actionpack (= 4.2.6)
169
+ activesupport (= 4.2.6)
170
+ rake (>= 0.8.7)
171
+ thor (>= 0.18.1, < 2.0)
172
+ rake (11.1.2)
173
+ remotipart (1.2.1)
174
+ rspec-core (3.4.4)
175
+ rspec-support (~> 3.4.0)
176
+ rspec-expectations (3.4.0)
177
+ diff-lcs (>= 1.2.0, < 2.0)
178
+ rspec-support (~> 3.4.0)
179
+ rspec-mocks (3.4.1)
180
+ diff-lcs (>= 1.2.0, < 2.0)
181
+ rspec-support (~> 3.4.0)
182
+ rspec-rails (3.4.2)
183
+ actionpack (>= 3.0, < 4.3)
184
+ activesupport (>= 3.0, < 4.3)
185
+ railties (>= 3.0, < 4.3)
186
+ rspec-core (~> 3.4.0)
187
+ rspec-expectations (~> 3.4.0)
188
+ rspec-mocks (~> 3.4.0)
189
+ rspec-support (~> 3.4.0)
190
+ rspec-support (3.4.1)
191
+ safe_yaml (1.0.4)
192
+ sass (3.4.22)
193
+ sass-rails (5.0.4)
194
+ railties (>= 4.0.0, < 5.0)
195
+ sass (~> 3.1)
196
+ sprockets (>= 2.8, < 4.0)
197
+ sprockets-rails (>= 2.0, < 4.0)
198
+ tilt (>= 1.1, < 3)
199
+ search_cop (1.0.6)
200
+ treetop
201
+ shoulda-matchers (3.1.1)
202
+ activesupport (>= 4.0.0)
203
+ simple_form (3.2.1)
204
+ actionpack (> 4, < 5.1)
205
+ activemodel (> 4, < 5.1)
206
+ sprockets (3.6.0)
207
+ concurrent-ruby (~> 1.0)
208
+ rack (> 1, < 3)
209
+ sprockets-rails (3.0.4)
210
+ actionpack (>= 4.0)
211
+ activesupport (>= 4.0)
212
+ sprockets (>= 3.0.0)
213
+ sqlite3 (1.3.11)
214
+ thor (0.19.1)
215
+ thread_safe (0.3.5)
216
+ tilt (2.0.2)
217
+ treetop (1.6.8)
218
+ polyglot (~> 0.3)
219
+ tzinfo (1.2.2)
220
+ thread_safe (~> 0.1)
221
+
222
+ PLATFORMS
223
+ ruby
224
+
225
+ DEPENDENCIES
226
+ factory_girl_rails
227
+ rails_admin
228
+ rails_admin_content_builder!
229
+ rails_admin_featured_content!
230
+ rspec-rails
231
+ shoulda-matchers (~> 3.1)
232
+ sqlite3
233
+
234
+ BUNDLED WITH
235
+ 1.12.2
@@ -0,0 +1,6 @@
1
+ # Add your own tasks in files placed in lib/tasks ending in .rake,
2
+ # for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
3
+
4
+ require File.expand_path('../config/application', __FILE__)
5
+
6
+ Rails.application.load_tasks
@@ -0,0 +1,13 @@
1
+ // This is a manifest file that'll be compiled into application.js, which will include all the files
2
+ // listed below.
3
+ //
4
+ // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
5
+ // or any plugin's vendor/assets/javascripts directory can be referenced here using a relative path.
6
+ //
7
+ // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
8
+ // compiled file.
9
+ //
10
+ // Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
11
+ // about supported directives.
12
+ //
13
+ //= require_tree .
@@ -0,0 +1,15 @@
1
+ /*
2
+ * This is a manifest file that'll be compiled into application.css, which will include all the files
3
+ * listed below.
4
+ *
5
+ * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
6
+ * or any plugin's vendor/assets/stylesheets directory can be referenced here using a relative path.
7
+ *
8
+ * You're free to add application-wide styles to this file and they'll appear at the bottom of the
9
+ * compiled file so the styles you add here take precedence over styles defined in any styles
10
+ * defined in the other CSS/SCSS files in this directory. It is generally better to create a new
11
+ * file per style scope.
12
+ *
13
+ *= require_tree .
14
+ *= require_self
15
+ */
@@ -0,0 +1,5 @@
1
+ class ApplicationController < ActionController::Base
2
+ # Prevent CSRF attacks by raising an exception.
3
+ # For APIs, you may want to use :null_session instead.
4
+ protect_from_forgery with: :exception
5
+ end
@@ -0,0 +1,2 @@
1
+ module ApplicationHelper
2
+ 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,50 @@
1
+ # encoding: utf-8
2
+
3
+ class FeaturedContentImageUploader < 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 :thumb do
35
+ process :resize_to_fit => [400, 400]
36
+ end
37
+
38
+ # Add a white list of extensions which are allowed to be uploaded.
39
+ # For images you might use something like this:
40
+ def extension_white_list
41
+ %w(jpg jpeg gif png)
42
+ end
43
+
44
+ # Override the filename of the uploaded files:
45
+ # Avoid using model.id or version_name here, see uploader/store.rb for details.
46
+ # def filename
47
+ # "something.jpg" if original_filename
48
+ # end
49
+
50
+ end