decidim-reporting_proposals 0.6.0 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/lint.yml +8 -6
  3. data/.github/workflows/test_integration.yml +24 -11
  4. data/.github/workflows/test_unit.yml +8 -4
  5. data/.rubocop.yml +21 -1
  6. data/.ruby-version +1 -1
  7. data/Gemfile +4 -8
  8. data/Gemfile.lock +361 -393
  9. data/README.md +1 -0
  10. data/app/cells/concerns/decidim/reporting_proposals/proposals_picker_cell_override.rb +4 -4
  11. data/app/commands/concerns/decidim/reporting_proposals/admin/assign_proposals_to_valuator_override.rb +3 -1
  12. data/app/commands/concerns/decidim/reporting_proposals/admin/create_category_override.rb +5 -11
  13. data/app/commands/concerns/decidim/reporting_proposals/admin/create_proposal_answer_template_override.rb +24 -0
  14. data/app/commands/concerns/decidim/reporting_proposals/admin/has_result_command_override.rb +21 -0
  15. data/app/commands/concerns/decidim/reporting_proposals/admin/update_category_override.rb +8 -11
  16. data/app/commands/concerns/decidim/reporting_proposals/admin/update_imported_result_override.rb +30 -0
  17. data/app/commands/concerns/decidim/reporting_proposals/admin/update_result_override.rb +0 -4
  18. data/app/commands/concerns/decidim/reporting_proposals/create_project_override.rb +1 -1
  19. data/app/commands/concerns/decidim/reporting_proposals/create_report_override.rb +1 -1
  20. data/app/controllers/concerns/decidim/reporting_proposals/admin/proposal_answer_templates_controller_override.rb +4 -22
  21. data/app/controllers/concerns/decidim/reporting_proposals/admin/valuation_assignments_controller_override.rb +10 -4
  22. data/app/controllers/concerns/decidim/reporting_proposals/proposals_controller_override.rb +23 -31
  23. data/app/forms/concerns/decidim/reporting_proposals/admin/category_form_override.rb +1 -1
  24. data/app/forms/concerns/decidim/reporting_proposals/form_builder_override.rb +4 -1
  25. data/app/helpers/concerns/decidim/reporting_proposals/admin/proposal_bulk_actions_helper_override.rb +23 -0
  26. data/app/helpers/concerns/decidim/reporting_proposals/admin/proposals_helper_override.rb +18 -0
  27. data/app/helpers/concerns/decidim/reporting_proposals/proposal_wizard_helper_override.rb +17 -3
  28. data/app/jobs/decidim/reporting_proposals/assign_proposal_valuators_job.rb +1 -1
  29. data/app/overrides/decidim/proposals/admin/proposals/_proposal-tr/add_valuators_name.html.erb.deface +5 -5
  30. data/app/overrides/decidim/proposals/admin/proposals/index/add_form_default_class.html.erb.deface +5 -0
  31. data/app/overrides/decidim/proposals/admin/proposals/show/add_valuators_form.html.erb.deface +1 -24
  32. data/app/overrides/decidim/proposals/proposals/edit_draft/replace_partial_edit_form_fields.html.erb.deface +0 -1
  33. data/app/overrides/decidim/proposals/proposals/new/replace_partial_edit_form_fields.html.erb.deface +3 -0
  34. data/app/packs/entrypoints/decidim_reporting_proposals.js +1 -0
  35. data/app/packs/src/decidim/reporting_proposals/assign_valuators_select.js +25 -0
  36. data/app/packs/src/decidim/reporting_proposals/user_camera_inputs.js +1 -1
  37. data/app/packs/stylesheets/decidim/reporting_proposals/list_component_admin.scss +6 -0
  38. data/app/permissions/concerns/decidim/reporting_proposals/admin/permissions_override.rb +12 -2
  39. data/app/queries/decidim/reporting_proposals/nearby_proposals.rb +1 -3
  40. data/app/views/decidim/proposals/admin/proposals/_assign_to_valuator.html.erb +31 -0
  41. data/app/views/decidim/proposals/proposals/compare.html.erb +34 -0
  42. data/app/views/decidim/reporting_proposals/admin/categories/_valuators_field.html.erb +1 -1
  43. data/app/views/decidim/reporting_proposals/admin/proposals/_photo_form.html.erb +2 -2
  44. data/app/views/decidim/reporting_proposals/admin/proposals/_photos.html.erb +4 -1
  45. data/app/views/decidim/reporting_proposals/admin/proposals/_proposal_td_hide.html.erb +1 -9
  46. data/app/views/decidim/reporting_proposals/proposals/_camera_button.html.erb +4 -2
  47. data/app/views/decidim/reporting_proposals/proposals/_reporting_proposal_fields.html.erb +66 -65
  48. data/bin/bundle +62 -0
  49. data/bin/rspec +26 -0
  50. data/bin/test +47 -0
  51. data/bin/test-legacy +3 -0
  52. data/config/locales/ca.yml +22 -34
  53. data/config/locales/de.yml +22 -36
  54. data/config/locales/en.yml +16 -1
  55. data/config/locales/es.yml +22 -36
  56. data/decidim-reporting_proposals.gemspec +1 -2
  57. data/lib/decidim/reporting_proposals/component.rb +26 -17
  58. data/lib/decidim/reporting_proposals/engine.rb +16 -11
  59. data/lib/decidim/reporting_proposals/version.rb +3 -3
  60. data/package-lock.json +129 -86
  61. data/package.json +7 -7
  62. metadata +56 -78
  63. data/.rubocop-disabled.yml +0 -11
  64. data/.rubocop_rails.yml +0 -90
  65. data/.rubocop_ruby.yml +0 -1767
  66. data/app/commands/concerns/decidim/reporting_proposals/admin/create_answer_override.rb +0 -17
  67. data/app/commands/concerns/decidim/reporting_proposals/admin/create_result_override.rb +0 -17
  68. data/app/commands/concerns/decidim/reporting_proposals/gallery_methods_override.rb +0 -18
  69. data/app/overrides/decidim/proposals/proposals/compare/add_css.html.erb.deface +0 -5
  70. data/app/overrides/decidim/proposals/proposals/compare/add_distance_badge.html.erb.deface +0 -10
  71. data/app/overrides/decidim/proposals/proposals/edit/add_user_group.html.erb.deface +0 -3
  72. data/app/overrides/decidim/proposals/proposals/new/remove_body.html.erb.deface +0 -1
  73. data/app/overrides/decidim/proposals/proposals/new/replace_body.html.erb.deface +0 -3
  74. data/app/permissions/decidim/templates/admin/permissions.rb +0 -51
  75. data/app/views/decidim/reporting_proposals/proposals/_new_proposal_fields.html.erb +0 -9
  76. data/app/views/decidim/reporting_proposals/proposals/_user_group.html.erb +0 -5
  77. data/babel.config.json +0 -25
@@ -1,17 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Decidim
4
- module ReportingProposals
5
- module Admin
6
- module CreateAnswerOverride
7
- extend ActiveSupport::Concern
8
-
9
- included do
10
- def proposals
11
- @proposals ||= answer.sibling_scope(:proposals).where(id: @form.proposal_ids) + answer.sibling_scope(:reporting_proposals).where(id: @form.proposal_ids)
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
@@ -1,17 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Decidim
4
- module ReportingProposals
5
- module Admin
6
- module CreateResultOverride
7
- extend ActiveSupport::Concern
8
-
9
- included do
10
- def proposals
11
- @proposals ||= result.sibling_scope(:proposals).where(id: @form.proposal_ids) + result.sibling_scope(:reporting_proposals).where(id: @form.proposal_ids)
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
@@ -1,18 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Decidim
4
- module ReportingProposals
5
- module GalleryMethodsOverride
6
- extend ActiveSupport::Concern
7
-
8
- # this method cannot process direct uploads in gallery_methods.rb so we override it here with the fix
9
- included do
10
- def photos_content_type(photo)
11
- return blob(photos_signed_id(photo)).content_type if photo.is_a?(Hash)
12
-
13
- photo.content_type
14
- end
15
- end
16
- end
17
- end
18
- end
@@ -1,5 +0,0 @@
1
- <!-- insert_after "erb[silent]:contains('append_stylesheet_pack_tag')" -->
2
-
3
- <% if reporting_proposal? %>
4
- <% append_stylesheet_pack_tag "decidim_reporting_proposals" %>
5
- <% end %>
@@ -1,10 +0,0 @@
1
- <!-- replace "erb[loud]:contains('card_for @proposal')" -->
2
-
3
- <% if geocoding_comparison? %>
4
- <div class="compare-by-distance mb-6">
5
- <span class="label secondary float-right"><%= icon("map-pin-line") %> <%= t("away", scope: "decidim.reporting_proposals.proposals.compare.geocoding", meters: distance(1000 * @proposal.distance_from([proposal.latitude, proposal.longitude], :km))) %></span>
6
- <%= card_for proposal %>
7
- </div>
8
- <% else %>
9
- <%= card_for proposal %>
10
- <% end %>
@@ -1,3 +0,0 @@
1
- <!-- insert_before ".actions" -->
2
-
3
- <%= render partial: "decidim/reporting_proposals/proposals/user_group", locals: { form: form } if reporting_proposal? %>
@@ -1 +0,0 @@
1
- <!-- remove "erb[loud]:contains('text_editor_for_proposal_body(form)')" -->
@@ -1,3 +0,0 @@
1
- <!-- insert_after "erb[loud]:contains('form_required_explanation')" -->
2
-
3
- <%= render "decidim/reporting_proposals/proposals/#{reporting_proposal? ? 'reporting_proposal_fields' : 'new_proposal_fields'}", form: form %>
@@ -1,51 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Decidim
4
- module Templates
5
- module Admin
6
- # this is here due a bug in Decidim 0.28 when they introduced proposal answer templates
7
- # they didn't take into account that valuators can answer proposals
8
- # This can be removed after https://github.com/decidim/decidim/pull/12765 is merge & backported
9
- class Permissions < Decidim::DefaultPermissions
10
- def permissions
11
- return permission_action if permission_action.scope != :admin
12
- return permission_action unless user
13
- return permission_action if context[:current_organization] != user.organization
14
-
15
- if user_has_a_role? && (permission_action.subject == :template && permission_action.action == :read)
16
- allow!
17
- else
18
- return permission_action unless user.admin?
19
-
20
- case permission_action.subject
21
- when :template
22
- allow! if [:read, :create, :update, :destroy, :copy].include? permission_action.action
23
- when :templates
24
- allow! if permission_action.action == :index
25
- when :questionnaire
26
- allow!
27
- end
28
- end
29
-
30
- permission_action
31
- end
32
-
33
- private
34
-
35
- def participatory_space
36
- @participatory_space ||= context[:proposal].try(:participatory_space)
37
- end
38
-
39
- def user_roles
40
- @user_roles ||= participatory_space.try(:user_roles)
41
- end
42
-
43
- def user_has_a_role?
44
- return unless user_roles
45
-
46
- user_roles.exists?(user:)
47
- end
48
- end
49
- end
50
- end
51
- end
@@ -1,9 +0,0 @@
1
- <div class="form__wrapper">
2
- <div class="field hashtags__container">
3
- <%= form.text_field :title, class: "js-hashtags" %>
4
- </div>
5
-
6
- <div class="field hashtags__container">
7
- <%= text_editor_for_proposal_body(form) %>
8
- </div>
9
- </div>
@@ -1,5 +0,0 @@
1
- <% if current_organization.user_groups_enabled? && Decidim::UserGroups::ManageableUserGroups.for(current_user).verified.any? %>
2
- <div class="field hashtags__container">
3
- <%= user_group_select_field(form, :user_group_id) %>
4
- </div>
5
- <% end %>
data/babel.config.json DELETED
@@ -1,25 +0,0 @@
1
- {
2
- "presets": [
3
- [
4
- "@babel/preset-env", {
5
- "forceAllTransforms": true,
6
- "useBuiltIns": "entry",
7
- "corejs": 3,
8
- "modules": false
9
- }
10
- ],
11
- ["@babel/preset-react"]
12
- ],
13
- "plugins": [
14
- "@babel/plugin-transform-classes",
15
- [
16
- "@babel/plugin-transform-runtime",
17
- {
18
- "helpers": false,
19
- "regenerator": true,
20
- "corejs": false
21
- }
22
- ],
23
- ["@babel/plugin-transform-regenerator", { "async": false }]
24
- ]
25
- }