biovision 0.4.210512.0 → 0.12.211124.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (133) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +7 -5
  3. data/app/assets/stylesheets/biovision/admin/layout.scss +34 -0
  4. data/app/assets/stylesheets/biovision/biovision.scss +56 -26
  5. data/app/assets/stylesheets/biovision/components/filters.scss +0 -2
  6. data/app/assets/stylesheets/biovision/components/forms.scss +40 -10
  7. data/app/assets/stylesheets/biovision/themes/default_theme/layout/header.scss +10 -0
  8. data/app/controllers/admin/biovision_components_controller.rb +10 -0
  9. data/app/controllers/admin/components_controller.rb +9 -5
  10. data/app/controllers/admin/users_controller.rb +2 -1
  11. data/app/controllers/admin_controller.rb +2 -22
  12. data/app/controllers/concerns/component_stories.rb +22 -0
  13. data/app/controllers/concerns/crud_entities.rb +12 -4
  14. data/app/controllers/concerns/my_crud_entities.rb +146 -0
  15. data/app/controllers/concerns/processed_forms.rb +28 -0
  16. data/app/controllers/concerns/restricted_access.rb +37 -0
  17. data/app/controllers/errors_controller.rb +37 -0
  18. data/app/controllers/my/components_controller.rb +21 -0
  19. data/app/controllers/my/index_controller.rb +1 -3
  20. data/app/controllers/my/profiles_controller.rb +2 -0
  21. data/app/controllers/oembed_controller.rb +12 -0
  22. data/app/controllers/profile_controller.rb +2 -0
  23. data/app/controllers/users_controller.rb +2 -0
  24. data/app/helpers/biovision_helper.rb +16 -1
  25. data/app/helpers/entity_helper.rb +77 -0
  26. data/app/helpers/my_helper.rb +34 -0
  27. data/app/lib/biovision/components/base/component_parameters.rb +6 -3
  28. data/app/lib/biovision/components/base/component_privileges.rb +4 -3
  29. data/app/lib/biovision/components/base/component_stories.rb +30 -0
  30. data/app/lib/biovision/components/base/entity_links.rb +16 -2
  31. data/app/lib/biovision/components/base/image_handling.rb +33 -0
  32. data/app/lib/biovision/components/base_component.rb +6 -27
  33. data/app/lib/biovision/components/content/oembed/receiver.rb +98 -0
  34. data/app/lib/biovision/components/content/oembed/twitter_receiver.rb +20 -0
  35. data/app/lib/biovision/components/content/oembed/vimeo_receiver.rb +20 -0
  36. data/app/lib/biovision/components/content/oembed/youtube_receiver.rb +20 -0
  37. data/app/lib/biovision/components/content_component.rb +14 -3
  38. data/app/lib/biovision/components/users_component.rb +6 -0
  39. data/app/lib/biovision/helpers/data_helper.rb +31 -4
  40. data/app/lib/biovision/helpers/export_helper.rb +97 -0
  41. data/app/lib/biovision/migrations/component_migration.rb +3 -1
  42. data/app/lib/biovision/stories/component_story.rb +55 -0
  43. data/app/models/biovision_component.rb +14 -1
  44. data/app/models/code.rb +3 -3
  45. data/app/models/concerns/checkable.rb +2 -1
  46. data/app/models/concerns/has_uploaded_file.rb +26 -0
  47. data/app/models/concerns/simple_tag.rb +30 -0
  48. data/app/models/concerns/toggleable.rb +2 -1
  49. data/app/models/concerns/tree_structure.rb +2 -0
  50. data/app/models/metric.rb +4 -0
  51. data/app/models/oembed_domain.rb +25 -0
  52. data/app/models/oembed_link.rb +19 -0
  53. data/app/models/oembed_receiver.rb +15 -0
  54. data/app/models/role.rb +4 -12
  55. data/app/models/simple_image.rb +29 -2
  56. data/app/models/simple_image_tag.rb +1 -16
  57. data/app/models/uploaded_file.rb +62 -0
  58. data/app/models/uploaded_file_tag.rb +15 -0
  59. data/app/models/uploaded_file_tag_file.rb +13 -0
  60. data/app/models/user.rb +10 -0
  61. data/app/models/user_role.rb +0 -1
  62. data/app/uploaders/simple_file_uploader.rb +2 -6
  63. data/app/uploaders/simple_image_uploader.rb +3 -20
  64. data/app/uploaders/uploaders/path_slug.rb +22 -0
  65. data/app/views/admin/agents/index.html.erb +1 -1
  66. data/app/views/admin/biovision_components/_nav_item.html.erb +6 -0
  67. data/app/views/admin/biovision_components/entity/_in_list.html.erb +12 -0
  68. data/app/views/admin/biovision_components/index.html.erb +11 -0
  69. data/app/views/admin/components/links/_base.html.erb +1 -1
  70. data/app/views/admin/dynamic_blocks/_form.html.erb +1 -1
  71. data/app/views/admin/dynamic_blocks/entity/_in_list.html.erb +1 -1
  72. data/app/views/admin/dynamic_blocks/index.html.erb +1 -1
  73. data/app/views/admin/dynamic_blocks/show.html.erb +3 -3
  74. data/app/views/admin/dynamic_pages/entity/_in_list.html.erb +1 -1
  75. data/app/views/admin/dynamic_pages/index.html.erb +1 -6
  76. data/app/views/admin/dynamic_pages/show.html.erb +1 -1
  77. data/app/views/admin/index/index.html.erb +1 -1
  78. data/app/views/admin/ip_addresses/index.html.erb +2 -2
  79. data/app/views/admin/navigation_groups/index.html.erb +1 -6
  80. data/app/views/admin/tokens/entity/_in_list.html.erb +1 -1
  81. data/app/views/admin/tokens/index.html.erb +1 -6
  82. data/app/views/admin/tokens/show.html.erb +1 -1
  83. data/app/views/admin/users/entity/_in_list.html.erb +2 -4
  84. data/app/views/admin/users/index.html.erb +1 -1
  85. data/app/views/admin/users/show.html.erb +18 -12
  86. data/app/views/admin/widgets/_filters.html.erb +7 -2
  87. data/app/views/admin/widgets/filters/_text.html.erb +7 -0
  88. data/app/views/errors/error.html.erb +1 -0
  89. data/app/views/layouts/admin/_header.html.erb +7 -2
  90. data/app/views/layouts/application/header/_authentication.html.erb +4 -1
  91. data/app/views/my/components/index.html.erb +25 -0
  92. data/app/views/my/components/show.html.erb +21 -0
  93. data/app/views/my/index/_cards.html.erb +15 -0
  94. data/app/views/my/index/_email.html.erb +14 -0
  95. data/app/views/my/index/_navigation.html.erb +33 -0
  96. data/app/views/my/index/index.html.erb +3 -50
  97. data/app/views/my/profiles/show.html.erb +13 -0
  98. data/app/views/shared/admin/_list.html.erb +10 -19
  99. data/app/views/shared/admin/_list_with_priority.html.erb +10 -19
  100. data/app/views/shared/admin/_priority.html.erb +6 -5
  101. data/app/views/shared/admin/_toggle.html.erb +5 -10
  102. data/app/views/shared/entity/_date_field.html.erb +6 -0
  103. data/app/views/shared/entity/_linked_entity.html.erb +1 -1
  104. data/app/views/shared/entity/_list.html.erb +22 -0
  105. data/app/views/shared/entity/_list_with_priority.html.erb +22 -0
  106. data/app/views/shared/entity/_priority_icons.html.erb +8 -0
  107. data/app/views/shared/entity/_toggle.html.erb +12 -0
  108. data/app/views/shared/forms/_field.html.erb +5 -1
  109. data/app/views/shared/forms/_field_with_search.html.erb +17 -0
  110. data/app/views/shared/forms/_meta_texts.html.erb +1 -1
  111. data/app/views/shared/forms/_simple_entity_link.html.erb +14 -0
  112. data/app/views/shared/my/_list.html.erb +10 -19
  113. data/app/views/shared/my/_list_with_priority.html.erb +10 -19
  114. data/app/views/shared/my/entity/edit.html.erb +25 -0
  115. data/app/views/shared/my/entity/new.html.erb +18 -0
  116. data/app/views/simple_images/_simple_image.jbuilder +13 -0
  117. data/config/locales/biovision-ru.yml +4 -0
  118. data/config/locales/components-ru.yml +23 -2
  119. data/config/locales/content-ru.yml +8 -0
  120. data/config/locales/users-ru.yml +4 -1
  121. data/config/routes.rb +21 -0
  122. data/db/migrate/20200224000010_create_users_component.rb +0 -11
  123. data/db/migrate/20200404000000_create_simple_images.rb +1 -0
  124. data/db/migrate/20210405000000_create_acl.rb +0 -1
  125. data/db/migrate/20210421000000_create_content_component.rb +21 -0
  126. data/db/migrate/20210616000000_create_uploaded_files.rb +52 -0
  127. data/db/migrate/amends/20210816060606_create_oembed_receivers.rb +21 -0
  128. data/db/migrate/amends/20210907070707_add_checksum_to_simple_images.rb +13 -0
  129. data/lib/biovision/base_methods.rb +0 -27
  130. data/lib/biovision/version.rb +1 -1
  131. data/lib/tasks/components.rake +51 -0
  132. metadata +53 -4
  133. data/app/models/biovision_component_user.rb +0 -21
@@ -0,0 +1,52 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Create tables for storing uploaded files
4
+ class CreateUploadedFiles < ActiveRecord::Migration[6.1]
5
+ def up
6
+ create_uploaded_files unless UploadedFile.table_exists?
7
+ create_uploaded_file_tags unless UploadedFileTag.table_exists?
8
+ create_uploaded_file_tag_files unless UploadedFileTagFile.table_exists?
9
+ end
10
+
11
+ def down
12
+ [UploadedFileTagFile, UploadedFileTag, UploadedFile].each do |model|
13
+ drop_table model.table_name if model.table_exists?
14
+ end
15
+ end
16
+
17
+ private
18
+
19
+ def create_uploaded_files
20
+ create_table :uploaded_files, comment: 'Uploaded files' do |t|
21
+ t.uuid :uuid, null: false
22
+ t.references :biovision_component, null: false, foreign_key: { on_update: :cascade, on_delete: :cascade }
23
+ t.references :user, foreign_key: { on_update: :cascade, on_delete: :nullify }
24
+ t.references :agent, foreign_key: { on_update: :cascade, on_delete: :nullify }
25
+ t.references :ip_address, foreign_key: { on_update: :cascade, on_delete: :nullify }
26
+ t.integer :object_count, default: 0, null: false
27
+ t.timestamps
28
+ t.string :attachment
29
+ t.string :description
30
+ t.string :checksum, index: true
31
+ t.jsonb :data, default: {}, null: false
32
+ end
33
+
34
+ add_index :uploaded_files, :uuid, unique: true
35
+ add_index :uploaded_files, :data, using: :gin
36
+ end
37
+
38
+ def create_uploaded_file_tags
39
+ create_table :uploaded_file_tags, comment: 'Tags for uploaded files' do |t|
40
+ t.string :name, null: false, index: true
41
+ t.integer :uploaded_files_count, default: 0, null: false
42
+ t.timestamps
43
+ end
44
+ end
45
+
46
+ def create_uploaded_file_tag_files
47
+ create_table :uploaded_file_tag_files, comment: 'Links between uploaded files and tags' do |t|
48
+ t.references :uploaded_file_tag, null: false, foreign_key: { on_update: :cascade, on_delete: :cascade }
49
+ t.references :uploaded_file, null: false, foreign_key: { on_update: :cascade, on_delete: :cascade }
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Create tables for OEmbed
4
+ class CreateOembedReceivers < ActiveRecord::Migration[6.1]
5
+ def change
6
+ # create_table :oembed_receivers, comment: 'Receivers for OEmbed content' do |t|
7
+ # t.string :slug, null: false, index: true
8
+ # end
9
+ #
10
+ # create_table :oembed_domains, comment: 'Supported domains for OEmbed' do |t|
11
+ # t.references :oembed_receiver, null: false, foreign_key: { on_update: :cascade, on_delete: :cascade }
12
+ # t.string :name, null: false, index: true
13
+ # end
14
+ #
15
+ # create_table :oembed_links, comment: 'Embedded links' do |t|
16
+ # t.string :url, null: false
17
+ # t.text :code
18
+ # t.timestamps
19
+ # end
20
+ end
21
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Add checksum field to simple images
4
+ class AddChecksumToSimpleImages < ActiveRecord::Migration[6.1]
5
+ def up
6
+ # add_column :simple_images, :checksum, :string, index: true
7
+ # SimpleImage.order(:id).each(&:save)
8
+ end
9
+
10
+ def down
11
+ # remove_column :simple_images, :checksum
12
+ end
13
+ end
@@ -123,13 +123,6 @@ module Biovision
123
123
  handle_http_error(:service_unavailable, message, view)
124
124
  end
125
125
 
126
- # Restrict access for anonymous users
127
- def restrict_anonymous_access
128
- return unless current_user.nil?
129
-
130
- handle_http_401(t('application.errors.restricted_access'))
131
- end
132
-
133
126
  # Owner information for entity
134
127
  #
135
128
  # @param [TrueClass|FalseClass] track
@@ -151,26 +144,6 @@ module Biovision
151
144
  @remote_ip ||= (request.env['HTTP_X_REAL_IP'] || request.remote_ip)
152
145
  end
153
146
 
154
- # @param [String] next_page
155
- def form_processed_ok(next_page)
156
- respond_to do |format|
157
- format.js { render(js: "document.location.href = '#{next_page}'") }
158
- format.json { render(json: { links: { next: next_page } }) }
159
- format.html { redirect_to(next_page) }
160
- end
161
- end
162
-
163
- # @param [Symbol|String] view_to_render
164
- # @param [Array] errors
165
- def form_processed_with_error(view_to_render, errors = [])
166
- @errors = errors
167
- respond_to do |format|
168
- format.js { render('shared/forms/errors', status: :bad_request) }
169
- format.json { render('shared/forms/errors', status: :bad_request) }
170
- format.html { render(view_to_render, status: :bad_request) }
171
- end
172
- end
173
-
174
147
  def component_class
175
148
  Biovision::Components::BaseComponent
176
149
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Biovision
4
- VERSION = '0.4.210512.0'
4
+ VERSION = '0.12.211124.0'
5
5
  end
@@ -0,0 +1,51 @@
1
+ # frozen_string_literal: true
2
+
3
+ namespace :components do
4
+ desc 'Reset role list for all components'
5
+ task reset_role_list: :environment do
6
+ BiovisionComponent.pluck(:slug).each do |component|
7
+ next if component == Biovision::Components::BaseComponent.slug
8
+
9
+ handler = Biovision::Components::BaseComponent.handler(component)
10
+ valid_roles = []
11
+ handler.role_tree.each do |prefix, postfixes|
12
+ postfixes.each do |postfix|
13
+ slug = prefix.blank? ? postfix : "#{prefix}.#{postfix}"
14
+ valid_roles << slug
15
+ Role.create(biovision_component: handler.component, slug: slug)
16
+ end
17
+ end
18
+
19
+ handler.component.roles.each do |role|
20
+ role.destroy unless valid_roles.include?(role.slug)
21
+ end
22
+ end
23
+
24
+ base_component = BiovisionComponent[Biovision::Components::BaseComponent]
25
+ base_roles = %w[admin components.view]
26
+ base_roles.each do |role|
27
+ Role.create(biovision_component: base_component, slug: role)
28
+ end
29
+ base_component.roles.each do |role|
30
+ role.destroy unless base_roles.include?(role.slug)
31
+ end
32
+ end
33
+
34
+ desc 'Export all data from each component'
35
+ task export_all: :environment do
36
+ helper = Biovision::Helpers::ExportHelper.new
37
+ [
38
+ Language, MetricValue, Metric, BiovisionComponent, SimpleImageTagImage,
39
+ SimpleImageTag, SimpleImage, UploadedFileTagFile, UploadedFileTag,
40
+ UploadedFile, UserRole, UserGroup, RoleGroup, Role, Group
41
+ ].each do |model|
42
+ helper.export_model(model)
43
+ end
44
+ BiovisionComponent.order(:id).pluck(:slug).each do |slug|
45
+ handler = Biovision::Components::BaseComponent.handler_class(slug)
46
+ handler.dependent_models.each do |model|
47
+ helper.export_model(model)
48
+ end
49
+ end
50
+ end
51
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: biovision
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.210512.0
4
+ version: 0.12.211124.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Maxim Khan-Magomedov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-05-12 00:00:00.000000000 Z
11
+ date: 2021-11-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -273,6 +273,7 @@ files:
273
273
  - app/assets/stylesheets/biovision/themes/default_theme/layout/header.scss
274
274
  - app/assets/stylesheets/biovision/vars.scss
275
275
  - app/controllers/admin/agents_controller.rb
276
+ - app/controllers/admin/biovision_components_controller.rb
276
277
  - app/controllers/admin/components_controller.rb
277
278
  - app/controllers/admin/dynamic_blocks_controller.rb
278
279
  - app/controllers/admin/dynamic_pages_controller.rb
@@ -284,10 +285,15 @@ files:
284
285
  - app/controllers/admin_controller.rb
285
286
  - app/controllers/authentication_controller.rb
286
287
  - app/controllers/concerns/authentication.rb
288
+ - app/controllers/concerns/component_stories.rb
287
289
  - app/controllers/concerns/crud_entities.rb
288
290
  - app/controllers/concerns/entity_priority.rb
291
+ - app/controllers/concerns/my_crud_entities.rb
292
+ - app/controllers/concerns/processed_forms.rb
293
+ - app/controllers/concerns/restricted_access.rb
289
294
  - app/controllers/concerns/toggleable_entity.rb
290
295
  - app/controllers/contact_controller.rb
296
+ - app/controllers/errors_controller.rb
291
297
  - app/controllers/fallback_controller.rb
292
298
  - app/controllers/index_controller.rb
293
299
  - app/controllers/legal_controller.rb
@@ -296,19 +302,28 @@ files:
296
302
  - app/controllers/my/index_controller.rb
297
303
  - app/controllers/my/profiles_controller.rb
298
304
  - app/controllers/my/recoveries_controller.rb
305
+ - app/controllers/oembed_controller.rb
299
306
  - app/controllers/profile_controller.rb
300
307
  - app/controllers/users_controller.rb
301
308
  - app/helpers/biovision_components_helper.rb
302
309
  - app/helpers/biovision_helper.rb
310
+ - app/helpers/entity_helper.rb
311
+ - app/helpers/my_helper.rb
303
312
  - app/helpers/simple_image_helper.rb
304
313
  - app/jobs/application_job.rb
305
314
  - app/jobs/send_phone_confirmation_job.rb
306
315
  - app/lib/biovision/components/base/component_parameters.rb
307
316
  - app/lib/biovision/components/base/component_privileges.rb
308
317
  - app/lib/biovision/components/base/component_settings.rb
318
+ - app/lib/biovision/components/base/component_stories.rb
309
319
  - app/lib/biovision/components/base/entity_links.rb
320
+ - app/lib/biovision/components/base/image_handling.rb
310
321
  - app/lib/biovision/components/base_component.rb
311
322
  - app/lib/biovision/components/contact_component.rb
323
+ - app/lib/biovision/components/content/oembed/receiver.rb
324
+ - app/lib/biovision/components/content/oembed/twitter_receiver.rb
325
+ - app/lib/biovision/components/content/oembed/vimeo_receiver.rb
326
+ - app/lib/biovision/components/content/oembed/youtube_receiver.rb
312
327
  - app/lib/biovision/components/content_component.rb
313
328
  - app/lib/biovision/components/track_component.rb
314
329
  - app/lib/biovision/components/users/authentication.rb
@@ -319,18 +334,19 @@ files:
319
334
  - app/lib/biovision/components/users/validation.rb
320
335
  - app/lib/biovision/components/users_component.rb
321
336
  - app/lib/biovision/helpers/data_helper.rb
337
+ - app/lib/biovision/helpers/export_helper.rb
322
338
  - app/lib/biovision/migrations/component_migration.rb
323
339
  - app/lib/biovision/notifiers/base_notifier.rb
324
340
  - app/lib/biovision/notifiers/contact_notifier.rb
325
341
  - app/lib/biovision/notifiers/socialization_notifier.rb
326
342
  - app/lib/biovision/notifiers/users_notifier.rb
343
+ - app/lib/biovision/stories/component_story.rb
327
344
  - app/lib/canonizer.rb
328
345
  - app/lib/carrier_wave/image_optim.rb
329
346
  - app/mailers/code_sender.rb
330
347
  - app/mailers/feedback_mailer.rb
331
348
  - app/models/agent.rb
332
349
  - app/models/biovision_component.rb
333
- - app/models/biovision_component_user.rb
334
350
  - app/models/browser.rb
335
351
  - app/models/code.rb
336
352
  - app/models/concerns/checkable.rb
@@ -339,11 +355,13 @@ files:
339
355
  - app/models/concerns/has_owner.rb
340
356
  - app/models/concerns/has_simple_image.rb
341
357
  - app/models/concerns/has_track.rb
358
+ - app/models/concerns/has_uploaded_file.rb
342
359
  - app/models/concerns/has_uuid.rb
343
360
  - app/models/concerns/meta_texts.rb
344
361
  - app/models/concerns/nested_priority.rb
345
362
  - app/models/concerns/required_unique_name.rb
346
363
  - app/models/concerns/required_unique_slug.rb
364
+ - app/models/concerns/simple_tag.rb
347
365
  - app/models/concerns/toggleable.rb
348
366
  - app/models/concerns/tree_structure.rb
349
367
  - app/models/contact_method.rb
@@ -361,21 +379,31 @@ files:
361
379
  - app/models/navigation_group.rb
362
380
  - app/models/navigation_group_page.rb
363
381
  - app/models/notification.rb
382
+ - app/models/oembed_domain.rb
383
+ - app/models/oembed_link.rb
384
+ - app/models/oembed_receiver.rb
364
385
  - app/models/role.rb
365
386
  - app/models/role_group.rb
366
387
  - app/models/simple_image.rb
367
388
  - app/models/simple_image_tag.rb
368
389
  - app/models/simple_image_tag_image.rb
369
390
  - app/models/token.rb
391
+ - app/models/uploaded_file.rb
392
+ - app/models/uploaded_file_tag.rb
393
+ - app/models/uploaded_file_tag_file.rb
370
394
  - app/models/user.rb
371
395
  - app/models/user_group.rb
372
396
  - app/models/user_language.rb
373
397
  - app/models/user_role.rb
374
398
  - app/uploaders/simple_file_uploader.rb
375
399
  - app/uploaders/simple_image_uploader.rb
400
+ - app/uploaders/uploaders/path_slug.rb
376
401
  - app/views/admin/agents/_nav_item.html.erb
377
402
  - app/views/admin/agents/entity/_in_list.html.erb
378
403
  - app/views/admin/agents/index.html.erb
404
+ - app/views/admin/biovision_components/_nav_item.html.erb
405
+ - app/views/admin/biovision_components/entity/_in_list.html.erb
406
+ - app/views/admin/biovision_components/index.html.erb
379
407
  - app/views/admin/components/_image.jbuilder
380
408
  - app/views/admin/components/_list.html.erb
381
409
  - app/views/admin/components/entity/_links.html.erb
@@ -437,6 +465,7 @@ files:
437
465
  - app/views/admin/widgets/_filters.html.erb
438
466
  - app/views/admin/widgets/_quick_search.html.erb
439
467
  - app/views/admin/widgets/filters/_flag.html.erb
468
+ - app/views/admin/widgets/filters/_text.html.erb
440
469
  - app/views/application/forbidden.html.erb
441
470
  - app/views/application/forbidden.jbuilder
442
471
  - app/views/application/not_found.html.erb
@@ -455,6 +484,7 @@ files:
455
484
  - app/views/contact/create_feedback_message.js.erb
456
485
  - app/views/contact/feedback.html.erb
457
486
  - app/views/contact/index.html.erb
487
+ - app/views/errors/error.html.erb
458
488
  - app/views/fallback/show.html.erb
459
489
  - app/views/feedback_mailer/new_feedback_request.html.erb
460
490
  - app/views/feedback_mailer/new_feedback_request.text.erb
@@ -469,7 +499,12 @@ files:
469
499
  - app/views/layouts/application/header/_authentication.html.erb
470
500
  - app/views/legal/privacy.html.erb
471
501
  - app/views/legal/tos.html.erb
502
+ - app/views/my/components/index.html.erb
503
+ - app/views/my/components/show.html.erb
472
504
  - app/views/my/confirmations/show.html.erb
505
+ - app/views/my/index/_cards.html.erb
506
+ - app/views/my/index/_email.html.erb
507
+ - app/views/my/index/_navigation.html.erb
473
508
  - app/views/my/index/index.html.erb
474
509
  - app/views/my/profiles/_form.html.erb
475
510
  - app/views/my/profiles/check.jbuilder
@@ -492,15 +527,19 @@ files:
492
527
  - app/views/shared/admin/_list_with_priority.html.erb
493
528
  - app/views/shared/admin/_priority.html.erb
494
529
  - app/views/shared/admin/_toggle.html.erb
530
+ - app/views/shared/entity/_date_field.html.erb
495
531
  - app/views/shared/entity/_formatted_text_field.html.erb
496
532
  - app/views/shared/entity/_image.html.erb
497
533
  - app/views/shared/entity/_language.html.erb
498
534
  - app/views/shared/entity/_linked_entity.html.erb
535
+ - app/views/shared/entity/_list.html.erb
499
536
  - app/views/shared/entity/_list_of_errors.html.erb
537
+ - app/views/shared/entity/_list_with_priority.html.erb
500
538
  - app/views/shared/entity/_meta_texts.html.erb
501
539
  - app/views/shared/entity/_metadata.html.erb
502
540
  - app/views/shared/entity/_parent.html.erb
503
541
  - app/views/shared/entity/_priority.html.erb
542
+ - app/views/shared/entity/_priority_icons.html.erb
504
543
  - app/views/shared/entity/_raw_text_field.html.erb
505
544
  - app/views/shared/entity/_simple_image.html.erb
506
545
  - app/views/shared/entity/_slug.html.erb
@@ -508,6 +547,7 @@ files:
508
547
  - app/views/shared/entity/_text_fields.html.erb
509
548
  - app/views/shared/entity/_time_field.html.erb
510
549
  - app/views/shared/entity/_timestamps.html.erb
550
+ - app/views/shared/entity/_toggle.html.erb
511
551
  - app/views/shared/entity/_track.html.erb
512
552
  - app/views/shared/entity/_tree_caches.html.erb
513
553
  - app/views/shared/entity/_uuid.html.erb
@@ -515,10 +555,12 @@ files:
515
555
  - app/views/shared/entity/new.html.erb
516
556
  - app/views/shared/forms/_entity_flags.html.erb
517
557
  - app/views/shared/forms/_field.html.erb
558
+ - app/views/shared/forms/_field_with_search.html.erb
518
559
  - app/views/shared/forms/_fields.html.erb
519
560
  - app/views/shared/forms/_language.html.erb
520
561
  - app/views/shared/forms/_meta_texts.html.erb
521
562
  - app/views/shared/forms/_priority.html.erb
563
+ - app/views/shared/forms/_simple_entity_link.html.erb
522
564
  - app/views/shared/forms/_simple_image.html.erb
523
565
  - app/views/shared/forms/_state_container.html.erb
524
566
  - app/views/shared/forms/_text_area.html.erb
@@ -531,6 +573,9 @@ files:
531
573
  - app/views/shared/forms/simple_image/_load_image.html.erb
532
574
  - app/views/shared/my/_list.html.erb
533
575
  - app/views/shared/my/_list_with_priority.html.erb
576
+ - app/views/shared/my/entity/edit.html.erb
577
+ - app/views/shared/my/entity/new.html.erb
578
+ - app/views/simple_images/_simple_image.jbuilder
534
579
  - app/views/users/_profile.html.erb
535
580
  - app/views/users/profile/_data.html.erb
536
581
  - app/views/users/show.html.erb
@@ -550,11 +595,15 @@ files:
550
595
  - db/migrate/20210405000000_create_acl.rb
551
596
  - db/migrate/20210421000000_create_content_component.rb
552
597
  - db/migrate/20210421000010_create_contact_component.rb
598
+ - db/migrate/20210616000000_create_uploaded_files.rb
599
+ - db/migrate/amends/20210816060606_create_oembed_receivers.rb
600
+ - db/migrate/amends/20210907070707_add_checksum_to_simple_images.rb
553
601
  - lib/biovision.rb
554
602
  - lib/biovision/base_methods.rb
555
603
  - lib/biovision/engine.rb
556
604
  - lib/biovision/version.rb
557
605
  - lib/tasks/biovision_tasks.rake
606
+ - lib/tasks/components.rake
558
607
  homepage: https://github.com/Biovision/biovision
559
608
  licenses:
560
609
  - MIT
@@ -575,7 +624,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
575
624
  - !ruby/object:Gem::Version
576
625
  version: '0'
577
626
  requirements: []
578
- rubygems_version: 3.2.16
627
+ rubygems_version: 3.2.30
579
628
  signing_key:
580
629
  specification_version: 4
581
630
  summary: Biovision CMS gem
@@ -1,21 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # User data in biovision component
4
- #
5
- # Attributes:
6
- # administrator [boolean]
7
- # biovision_component_id [BiovisionComponent]
8
- # created_at [DateTime]
9
- # data [jsonb]
10
- # updated_at [DateTime]
11
- # user_id [User]
12
- class BiovisionComponentUser < ApplicationRecord
13
- include HasOwner
14
-
15
- belongs_to :biovision_component
16
- belongs_to :user
17
-
18
- validates_uniqueness_of :user_id, scope: :biovision_component_id
19
-
20
- scope :recent, -> { order('updated_at desc') }
21
- end