rails_admin_image_manager 0.1.3 → 0.1.15

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 (43) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -2
  3. data/app/assets/javascripts/rails_admin_image_manager/app-compiled.js.erb +339 -16444
  4. data/app/assets/javascripts/rails_admin_image_manager/app-vue.js +0 -2
  5. data/app/assets/javascripts/rails_admin_image_manager/ckeditor_plugin.js.erb +11 -1
  6. data/app/assets/javascripts/rails_admin_image_manager/components/imageInsertButton.vue +1 -1
  7. data/app/assets/javascripts/rails_admin_image_manager/components/imageInsertOverlay.vue +1 -3
  8. data/app/assets/javascripts/rails_admin_image_manager/components/imageListing.vue +27 -36
  9. data/app/assets/javascripts/rails_admin_image_manager/components/imageUpload.vue +2 -3
  10. data/app/assets/javascripts/rails_admin_image_manager/components/searchAutocomplete.vue +1 -5
  11. data/app/assets/javascripts/rails_admin_image_manager/libs/helpers.js +1 -4
  12. data/app/assets/javascripts/rails_admin_image_manager/router/index.js +2 -9
  13. data/app/assets/javascripts/rails_admin_image_manager/stores/medias.js +4 -37
  14. data/app/assets/javascripts/rails_admin_image_manager/stores/railsAdmin.js +1 -1
  15. data/app/assets/stylesheets/rails_admin_image_manager/_font.scss +2 -2
  16. data/app/assets/{fonts → stylesheets/rails_admin_image_manager/fonts}/FontAwesome.otf +0 -0
  17. data/app/assets/{fonts → stylesheets/rails_admin_image_manager/fonts}/Simple-Line-Icons.eot +0 -0
  18. data/app/assets/{fonts → stylesheets/rails_admin_image_manager/fonts}/Simple-Line-Icons.svg +0 -0
  19. data/app/assets/{fonts → stylesheets/rails_admin_image_manager/fonts}/Simple-Line-Icons.ttf +0 -0
  20. data/app/assets/{fonts → stylesheets/rails_admin_image_manager/fonts}/Simple-Line-Icons.woff +0 -0
  21. data/app/assets/{fonts → stylesheets/rails_admin_image_manager/fonts}/fontawesome-webfont.eot +0 -0
  22. data/app/assets/{fonts → stylesheets/rails_admin_image_manager/fonts}/fontawesome-webfont.svg +0 -0
  23. data/app/assets/{fonts → stylesheets/rails_admin_image_manager/fonts}/fontawesome-webfont.ttf +0 -0
  24. data/app/assets/{fonts → stylesheets/rails_admin_image_manager/fonts}/fontawesome-webfont.woff +0 -0
  25. data/app/assets/{fonts → stylesheets/rails_admin_image_manager/fonts}/fontawesome-webfont.woff2 +0 -0
  26. data/app/assets/{fonts → stylesheets/rails_admin_image_manager/fonts}/glyphicons-halflings-regular.eot +0 -0
  27. data/app/assets/{fonts → stylesheets/rails_admin_image_manager/fonts}/glyphicons-halflings-regular.svg +0 -0
  28. data/app/assets/{fonts → stylesheets/rails_admin_image_manager/fonts}/glyphicons-halflings-regular.ttf +0 -0
  29. data/app/assets/{fonts → stylesheets/rails_admin_image_manager/fonts}/glyphicons-halflings-regular.woff +0 -0
  30. data/app/assets/{fonts → stylesheets/rails_admin_image_manager/fonts}/glyphicons-halflings-regular.woff2 +0 -0
  31. data/app/assets/stylesheets/rails_admin_image_manager/global.css.erb +2 -2
  32. data/app/controllers/rails_admin_image_manager/application_controller.rb +0 -17
  33. data/app/controllers/rails_admin_image_manager/images_controller.rb +5 -30
  34. data/app/models/rails_admin_image_manager/file.rb +2 -4
  35. data/config/routes.rb +0 -1
  36. data/lib/dynamic_paperclip_patch.rb +0 -17
  37. data/lib/generators/rails_admin_image_manager/install/install_generator.rb +1 -1
  38. data/lib/paperclip_patch.rb +0 -6
  39. data/lib/rails_admin_image_manager/has_managed_file.rb +0 -5
  40. data/lib/rails_admin_image_manager/version.rb +1 -1
  41. metadata +24 -26
  42. data/app/assets/javascripts/rails_admin_image_manager/components/listingFilter.vue +0 -32
  43. data/app/assets/javascripts/rails_admin_image_manager/filters/index.js +0 -7
@@ -6,8 +6,8 @@
6
6
  * -------------------------- */
7
7
  @font-face {
8
8
  font-family: 'FontAwesome';
9
- src: url("<%= font_path('fontawesome-webfont.eot?v=4.7.0') %>");
10
- src: url("<%= font_path('fontawesome-webfont.eot?#iefix&v=4.7.0') %>") format("embedded-opentype"), url("<%= font_path('fontawesome-webfont.woff2?v=4.7.0') %>") format("woff2"), url("<%= font_path('fontawesome-webfont.woff?v=4.7.0') %>") format("woff"), url("<%= font_path('fontawesome-webfont.ttf?v=4.7.0') %>") format("truetype"), url("<%= font_path('fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') %>") format("svg");
9
+ src: url("fonts/fontawesome-webfont.eot?v=4.7.0");
10
+ src: url("fonts/fontawesome-webfont.eot?#iefix&v=4.7.0") format("embedded-opentype"), url("fonts/fontawesome-webfont.woff2?v=4.7.0") format("woff2"), url("fonts/fontawesome-webfont.woff?v=4.7.0") format("woff"), url("fonts/fontawesome-webfont.ttf?v=4.7.0") format("truetype"), url("fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular") format("svg");
11
11
  font-weight: normal;
12
12
  font-style: normal;
13
13
  }
@@ -5,11 +5,6 @@ module RailsAdminImageManager
5
5
 
6
6
  before_action :_authenticate!
7
7
  before_action :_authorize!
8
- before_action :_check_permissions
9
-
10
- def _current_user
11
- instance_eval(&RailsAdmin::Config.current_user_method)
12
- end
13
8
 
14
9
  private
15
10
 
@@ -21,18 +16,6 @@ module RailsAdminImageManager
21
16
  instance_eval(&RailsAdmin::Config.authorize_with)
22
17
  end
23
18
 
24
- def _check_permissions(action=:read)
25
- @authorization_adapter.try(:authorize, action, file_model)
26
- end
27
-
28
- def file_model
29
- RailsAdmin::AbstractModel.new(to_model_name("::RailsAdminImageManager::File"))
30
- end
31
-
32
- def to_model_name(param)
33
- param.split('~').collect(&:camelize).join('::')
34
- end
35
-
36
19
  def filter_by?(param)
37
20
  params[param].present?
38
21
  end
@@ -8,23 +8,19 @@ module RailsAdminImageManager
8
8
  }
9
9
 
10
10
  format.json {
11
- images = RailsAdminImageManager::File.select(:id, :name, :image_file_name, :created_at).order(:name).page(params[:page])
11
+ images = RailsAdminImageManager::File.select(:id, :name, :image_file_name).page(params[:page])
12
12
  images = images.filter_by_text(params[:search]) if filter_by?(:search)
13
13
  images = images.filter_by_tags(params[:tags].map{|i| i.to_i }) if filter_by?(:tags)
14
- images = images.order_by_date(params[:date]) if filter_by?(:date)
15
- images = images.order_by_title(params[:title]) if filter_by?(:title)
16
-
17
14
  images.each do |image|
18
- image.src = image.image.url(:index)
15
+ image.src = image.image.url(:index)
19
16
  end
20
17
 
21
- data = { items: images, total_count: images.total_count, limit_value: images.limit_value, readonly: readonly? }
18
+ data = { items: images, total_count: images.total_count, limit_value: images.limit_value }
22
19
 
23
20
  render json: data, methods: [:src, :tags_list], status: :ok
24
21
  }
25
22
  end
26
23
  end
27
-
28
24
  def tags
29
25
  respond_to do |format|
30
26
  format.json {
@@ -34,26 +30,15 @@ module RailsAdminImageManager
34
30
  end
35
31
  end
36
32
 
37
- def new
38
- _check_permissions(:create)
39
- render json: {msg: 'ok'}, status: :ok
40
- end
41
-
42
33
  def show
43
- _check_permissions(:update)
44
-
45
34
  image = RailsAdminImageManager::File.select(:id, :name, :description, :copyright, :image_file_name).find_by!(id: params[:id])
46
35
  image.src = image.image.url(:show)
47
36
  image.src_for_wysiwyg = {width: params[:width], height: params[:height]} if filter_by?(:width) && filter_by?(:height)
48
37
 
49
- data = { image: image, readonly: readonly? }
50
-
51
- render json: data, methods: [:src, :src_for_wysiwyg, :tags_list], status: :ok
38
+ render json: image, methods: [:src, :src_for_wysiwyg, :tags_list], status: :ok
52
39
  end
53
40
 
54
41
  def update
55
- _check_permissions(:update)
56
-
57
42
  my_params = images_params
58
43
  image = RailsAdminImageManager::File.find(my_params[:id])
59
44
 
@@ -73,8 +58,6 @@ module RailsAdminImageManager
73
58
  end
74
59
 
75
60
  def create
76
- _check_permissions(:create)
77
-
78
61
  my_params = images_params
79
62
 
80
63
  # Handling dynamic tag creating when receiving a string
@@ -93,25 +76,17 @@ module RailsAdminImageManager
93
76
  end
94
77
 
95
78
  def destroy
96
- _check_permissions(:destroy)
97
-
98
79
  image = RailsAdminImageManager::File.find(params[:id])
99
80
  if image.destroy
100
81
  render json: image, status: :ok
101
82
  else
102
83
  render json: image.errors, status: :unprocessable_entity
103
84
  end
104
- end
105
-
106
- private
107
85
 
108
- def readonly?
109
- return false if @authorization_adapter.nil?
110
- !@authorization_adapter.authorized?(:update, file_model)
111
86
  end
112
87
 
113
88
  def images_params
114
- params.require(:image).permit(:id, :name, :description, :copyright, :src, :image_file_name, tags: [])
89
+ params.require(:image).permit(:id, :name, :description, :copyright, :src, tags: [])
115
90
  end
116
91
  end
117
92
  end
@@ -11,7 +11,7 @@ module RailsAdminImageManager
11
11
 
12
12
  # == Attributes ===========================================================
13
13
 
14
- has_dynamic_attached_file :image, styles: { show: '680x480', index: '250x250#', rails_admin: '75x75' }, url: '/rails_admin_image_manager/:id/:style/:filename'
14
+ has_dynamic_attached_file :image, styles: { show: '680x480', index: '250x250#', rails_admin: '75x75' }, url: '/rails_admin_image_manager/:id/:style_:filename'
15
15
 
16
16
  attr_accessor :src
17
17
  attr_accessor :src_for_wysiwyg
@@ -34,8 +34,6 @@ module RailsAdminImageManager
34
34
 
35
35
  scope :filter_by_text, -> (text) { where("image_manager_files.name LIKE ? OR image_manager_files.description LIKE ?", "%#{text}%", "%#{text}%") }
36
36
  scope :filter_by_tags, -> (tags) { joins(:tags).where('image_manager_files_tags.image_manager_tag_id IN (?)', tags).distinct }
37
- scope :order_by_date, -> (term) { order("created_at #{term}") }
38
- scope :order_by_title, -> (term) { order("name #{term}") }
39
37
 
40
38
  # == Instance Methods =====================================================
41
39
 
@@ -51,7 +49,7 @@ module RailsAdminImageManager
51
49
  def decode_base64_image
52
50
  if src.present? && src.include?('data:image')
53
51
  new_image = Paperclip.io_adapters.for(src)
54
- new_image.original_filename = image_file_name
52
+ new_image.original_filename = "base64.png"
55
53
  self.image = new_image
56
54
  end
57
55
  end
data/config/routes.rb CHANGED
@@ -3,7 +3,6 @@ RailsAdminImageManager::Engine.routes.draw do
3
3
  root 'home#index'
4
4
  get '/tags' => 'images#tags', as: 'image_manager_tag_index'
5
5
  get '/images' => 'images#index', as: 'image_manager_index'
6
- get '/images/new' => 'images#new'
7
6
  get '/images/:id' => 'images#show'
8
7
  put '/images' => 'images#update'
9
8
  post '/images' => 'images#create'
@@ -1,20 +1,3 @@
1
- module DynamicPaperclip
2
- # Patch to avoid the following error :
3
- # actionpack-5.1.4/lib/action_dispatch/middleware/stack.rb:35:in `build': undefined method `new' for "DynamicPaperclip::AttachmentStyleGenerator":String (NoMethodError). Did you mean? next
4
- # https://github.com/mbouchard/dynamic_paperclip/commit/ad6c209cdd08efb202140faaa6aa647987726409
5
- class Railtie < Rails::Railtie
6
- initializer 'dynamic_paperclip_patch.insert_middleware' do |app|
7
- app.config.middleware.use DynamicPaperclip::AttachmentStyleGenerator
8
- end
9
-
10
- config.before_configuration do
11
- initializers.delete_if do |initializer|
12
- true if initializer.name == 'dynamic_paperclip.insert_middleware'
13
- end
14
- end
15
- end
16
- end
17
-
18
1
  module DynamicPaperclip
19
2
  class Attachment < Paperclip::Attachment
20
3
  def dynamic_url(definition)
@@ -17,6 +17,6 @@ module RailsAdminImageManager
17
17
  generate "dynamic_paperclip:install"
18
18
  end
19
19
 
20
- end
21
20
  end
21
+ end
22
22
  end
@@ -6,12 +6,6 @@
6
6
  module Paperclip
7
7
  class FilenameCleaner
8
8
  def call(filename)
9
- # Dirty hack to keep the dot in the filename (it's removed by the parameterize function)
10
- placeholder = '-p-l-a-c-e-h-o-l-d-e-r-'
11
- filename.sub!('.', placeholder)
12
- filename = filename.parameterize()
13
- filename.sub!(placeholder, '.')
14
-
15
9
  if @invalid_character_regex
16
10
  filename = filename.gsub(@invalid_character_regex, "_").gsub("_", "-")
17
11
  else
@@ -36,11 +36,6 @@ module RailsAdminImageManager
36
36
  def add_managed_file_before_validation(attribute, id)
37
37
  attr_accessor "#{id}_deselect"
38
38
 
39
- define_method "#{id}_deselect=" do |val|
40
- attribute_will_change!("#{id}_deselect") if val == '1'
41
- instance_variable_set("@#{id}_deselect", val)
42
- end
43
-
44
39
  before_validation { send("#{attribute}=", nil) if send("#{id}_deselect") == '1' }
45
40
  end
46
41
  end
@@ -1,3 +1,3 @@
1
1
  module RailsAdminImageManager
2
- VERSION = '0.1.3'
2
+ VERSION = '0.1.15'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_admin_image_manager
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.15
5
5
  platform: ruby
6
6
  authors:
7
7
  - iXmedia
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-11-29 00:00:00.000000000 Z
11
+ date: 2017-09-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -108,22 +108,22 @@ dependencies:
108
108
  name: kaminari
109
109
  requirement: !ruby/object:Gem::Requirement
110
110
  requirements:
111
+ - - "~>"
112
+ - !ruby/object:Gem::Version
113
+ version: '0.17'
111
114
  - - ">="
112
115
  - !ruby/object:Gem::Version
113
116
  version: 0.17.0
114
- - - "<"
115
- - !ruby/object:Gem::Version
116
- version: '2.0'
117
117
  type: :runtime
118
118
  prerelease: false
119
119
  version_requirements: !ruby/object:Gem::Requirement
120
120
  requirements:
121
+ - - "~>"
122
+ - !ruby/object:Gem::Version
123
+ version: '0.17'
121
124
  - - ">="
122
125
  - !ruby/object:Gem::Version
123
126
  version: 0.17.0
124
- - - "<"
125
- - !ruby/object:Gem::Version
126
- version: '2.0'
127
127
  - !ruby/object:Gem::Dependency
128
128
  name: sqlite3
129
129
  requirement: !ruby/object:Gem::Requirement
@@ -149,21 +149,6 @@ files:
149
149
  - README.md
150
150
  - Rakefile
151
151
  - app/assets/config/rails_admin_image_manager_manifest.js
152
- - app/assets/fonts/FontAwesome.otf
153
- - app/assets/fonts/Simple-Line-Icons.eot
154
- - app/assets/fonts/Simple-Line-Icons.svg
155
- - app/assets/fonts/Simple-Line-Icons.ttf
156
- - app/assets/fonts/Simple-Line-Icons.woff
157
- - app/assets/fonts/fontawesome-webfont.eot
158
- - app/assets/fonts/fontawesome-webfont.svg
159
- - app/assets/fonts/fontawesome-webfont.ttf
160
- - app/assets/fonts/fontawesome-webfont.woff
161
- - app/assets/fonts/fontawesome-webfont.woff2
162
- - app/assets/fonts/glyphicons-halflings-regular.eot
163
- - app/assets/fonts/glyphicons-halflings-regular.svg
164
- - app/assets/fonts/glyphicons-halflings-regular.ttf
165
- - app/assets/fonts/glyphicons-halflings-regular.woff
166
- - app/assets/fonts/glyphicons-halflings-regular.woff2
167
152
  - app/assets/images/rails_admin_image_manager/image.png
168
153
  - app/assets/javascripts/rails_admin_image_manager/app-compiled.js.erb
169
154
  - app/assets/javascripts/rails_admin_image_manager/app-vue.js
@@ -177,12 +162,10 @@ files:
177
162
  - app/assets/javascripts/rails_admin_image_manager/components/imageShow.vue
178
163
  - app/assets/javascripts/rails_admin_image_manager/components/imageTagSelector.vue
179
164
  - app/assets/javascripts/rails_admin_image_manager/components/imageUpload.vue
180
- - app/assets/javascripts/rails_admin_image_manager/components/listingFilter.vue
181
165
  - app/assets/javascripts/rails_admin_image_manager/components/notificationOverlay.vue
182
166
  - app/assets/javascripts/rails_admin_image_manager/components/progressOverlay.vue
183
167
  - app/assets/javascripts/rails_admin_image_manager/components/searchAutocomplete.vue
184
168
  - app/assets/javascripts/rails_admin_image_manager/editor/image_manager_picker.js.erb
185
- - app/assets/javascripts/rails_admin_image_manager/filters/index.js
186
169
  - app/assets/javascripts/rails_admin_image_manager/libs/helpers.js
187
170
  - app/assets/javascripts/rails_admin_image_manager/libs/lazyload.js
188
171
  - app/assets/javascripts/rails_admin_image_manager/router/index.js
@@ -196,6 +179,21 @@ files:
196
179
  - app/assets/javascripts/rails_admin_image_manager/vendors/underscore.min.js
197
180
  - app/assets/stylesheets/rails_admin_image_manager/_font.scss
198
181
  - app/assets/stylesheets/rails_admin_image_manager/application.css
182
+ - app/assets/stylesheets/rails_admin_image_manager/fonts/FontAwesome.otf
183
+ - app/assets/stylesheets/rails_admin_image_manager/fonts/Simple-Line-Icons.eot
184
+ - app/assets/stylesheets/rails_admin_image_manager/fonts/Simple-Line-Icons.svg
185
+ - app/assets/stylesheets/rails_admin_image_manager/fonts/Simple-Line-Icons.ttf
186
+ - app/assets/stylesheets/rails_admin_image_manager/fonts/Simple-Line-Icons.woff
187
+ - app/assets/stylesheets/rails_admin_image_manager/fonts/fontawesome-webfont.eot
188
+ - app/assets/stylesheets/rails_admin_image_manager/fonts/fontawesome-webfont.svg
189
+ - app/assets/stylesheets/rails_admin_image_manager/fonts/fontawesome-webfont.ttf
190
+ - app/assets/stylesheets/rails_admin_image_manager/fonts/fontawesome-webfont.woff
191
+ - app/assets/stylesheets/rails_admin_image_manager/fonts/fontawesome-webfont.woff2
192
+ - app/assets/stylesheets/rails_admin_image_manager/fonts/glyphicons-halflings-regular.eot
193
+ - app/assets/stylesheets/rails_admin_image_manager/fonts/glyphicons-halflings-regular.svg
194
+ - app/assets/stylesheets/rails_admin_image_manager/fonts/glyphicons-halflings-regular.ttf
195
+ - app/assets/stylesheets/rails_admin_image_manager/fonts/glyphicons-halflings-regular.woff
196
+ - app/assets/stylesheets/rails_admin_image_manager/fonts/glyphicons-halflings-regular.woff2
199
197
  - app/assets/stylesheets/rails_admin_image_manager/global.css.erb
200
198
  - app/assets/stylesheets/rails_admin_image_manager/global.sass
201
199
  - app/assets/stylesheets/rails_admin_image_manager/vendors/bootstrap.min.css
@@ -246,7 +244,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
246
244
  version: '0'
247
245
  requirements: []
248
246
  rubyforge_project:
249
- rubygems_version: 2.6.8
247
+ rubygems_version: 2.6.11
250
248
  signing_key:
251
249
  specification_version: 4
252
250
  summary: Image manager.
@@ -1,32 +0,0 @@
1
- <template>
2
- <span class="listing-filter" @click.prevent="filter()">{{label}}
3
- <i v-if="activeFilters[type] == 'ASC'" class="fa fa-arrow-down"></i>
4
- <i v-if="activeFilters[type] == 'DESC'" class="fa fa-arrow-up"></i>
5
- </span>
6
- </template>
7
-
8
- <script>
9
- import {mapState} from 'vuex'
10
-
11
- export default {
12
- props: ['label', 'type'],
13
- data () {
14
- return {}
15
- },
16
- computed: {
17
- ...mapState('mediasStore', ['activeFilters'])
18
- },
19
- methods: {
20
- filter () {
21
- this.$store.dispatch('mediasStore/setSearchPage', 1)
22
- this.$store.dispatch('mediasStore/clearImgListing')
23
- this.$store.dispatch('mediasStore/toggleFilter', this.type)
24
- this.$store.dispatch('mediasStore/fetchImage')
25
- }
26
- }
27
- }
28
- </script>
29
- <style media="screen" lang="sass">
30
- .listing-filter
31
- cursor: pointer
32
- </style>
@@ -1,7 +0,0 @@
1
- import Vue from 'vue'
2
- import moment from 'moment'
3
-
4
- moment.locale('fr');
5
- Vue.filter('formatDate', (date) => {
6
- return moment(date).format('D MMMM YYYY')
7
- })