decidim-accountability 0.26.2 → 0.27.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (96) hide show
  1. checksums.yaml +4 -4
  2. data/app/cells/decidim/accountability/highlighted_results_for_component_cell.rb +13 -1
  3. data/app/commands/decidim/accountability/admin/create_imported_result.rb +1 -1
  4. data/app/commands/decidim/accountability/admin/create_result.rb +1 -1
  5. data/app/commands/decidim/accountability/admin/create_status.rb +6 -3
  6. data/app/commands/decidim/accountability/admin/create_timeline_entry.rb +11 -7
  7. data/app/commands/decidim/accountability/admin/destroy_result.rb +1 -1
  8. data/app/commands/decidim/accountability/admin/update_imported_result.rb +1 -1
  9. data/app/commands/decidim/accountability/admin/update_result.rb +1 -1
  10. data/app/commands/decidim/accountability/admin/update_status.rb +6 -3
  11. data/app/commands/decidim/accountability/admin/update_timeline_entry.rb +9 -5
  12. data/app/controllers/decidim/accountability/admin/statuses_controller.rb +5 -3
  13. data/app/controllers/decidim/accountability/admin/timeline_entries_controller.rb +5 -3
  14. data/app/controllers/decidim/accountability/results_controller.rb +12 -12
  15. data/app/forms/decidim/accountability/admin/result_form.rb +2 -2
  16. data/app/forms/decidim/accountability/admin/timeline_entry_form.rb +2 -1
  17. data/app/helpers/decidim/accountability/breadcrumb_helper.rb +2 -2
  18. data/app/models/decidim/accountability/result.rb +9 -5
  19. data/app/models/decidim/accountability/status.rb +6 -2
  20. data/app/models/decidim/accountability/timeline_entry.rb +6 -0
  21. data/app/presenters/decidim/accountability/admin_log/status_presenter.rb +38 -0
  22. data/app/presenters/decidim/accountability/admin_log/timeline_entry_presenter.rb +37 -0
  23. data/app/services/decidim/accountability/results_calculator.rb +10 -6
  24. data/app/views/decidim/accountability/admin/timeline_entries/_form.html.erb +5 -1
  25. data/app/views/decidim/accountability/admin/timeline_entries/index.html.erb +2 -2
  26. data/app/views/decidim/accountability/results/_home_categories.html.erb +2 -2
  27. data/app/views/decidim/accountability/results/_nav_breadcrumb.html.erb +3 -3
  28. data/app/views/decidim/accountability/results/_results_leaf.html.erb +1 -1
  29. data/app/views/decidim/accountability/results/_results_parent.html.erb +1 -1
  30. data/app/views/decidim/accountability/results/_scope_filters.html.erb +3 -3
  31. data/app/views/decidim/accountability/results/_search.html.erb +1 -1
  32. data/app/views/decidim/accountability/results/_timeline.html.erb +7 -1
  33. data/app/views/decidim/accountability/results/home.html.erb +3 -1
  34. data/app/views/decidim/accountability/versions/show.html.erb +3 -1
  35. data/config/locales/am-ET.yml +1 -0
  36. data/config/locales/ar.yml +3 -1
  37. data/config/locales/bg.yml +1 -1
  38. data/config/locales/ca.yml +11 -1
  39. data/config/locales/cs.yml +11 -1
  40. data/config/locales/da.yml +1 -1
  41. data/config/locales/de.yml +11 -1
  42. data/config/locales/el.yml +1 -1
  43. data/config/locales/en.yml +10 -1
  44. data/config/locales/eo.yml +1 -0
  45. data/config/locales/es-MX.yml +11 -1
  46. data/config/locales/es-PY.yml +11 -1
  47. data/config/locales/es.yml +11 -1
  48. data/config/locales/et.yml +1 -0
  49. data/config/locales/eu.yml +1 -1
  50. data/config/locales/fi-plain.yml +11 -1
  51. data/config/locales/fi.yml +11 -1
  52. data/config/locales/fr-CA.yml +11 -1
  53. data/config/locales/fr.yml +11 -1
  54. data/config/locales/ga-IE.yml +1 -0
  55. data/config/locales/gl.yml +1 -1
  56. data/config/locales/hr.yml +1 -0
  57. data/config/locales/hu.yml +1 -1
  58. data/config/locales/id-ID.yml +1 -1
  59. data/config/locales/is-IS.yml +2 -2
  60. data/config/locales/it.yml +1 -1
  61. data/config/locales/ja.yml +11 -1
  62. data/config/locales/ko.yml +1 -0
  63. data/config/locales/lb.yml +1 -1
  64. data/config/locales/lt.yml +13 -1
  65. data/config/locales/lv.yml +1 -1
  66. data/config/locales/mt.yml +1 -0
  67. data/config/locales/nl.yml +1 -1
  68. data/config/locales/no.yml +1 -1
  69. data/config/locales/om-ET.yml +1 -0
  70. data/config/locales/pl.yml +11 -1
  71. data/config/locales/pt-BR.yml +2 -2
  72. data/config/locales/pt.yml +1 -1
  73. data/config/locales/ro-RO.yml +1 -1
  74. data/config/locales/ru.yml +1 -1
  75. data/config/locales/si-LK.yml +1 -1
  76. data/config/locales/sk.yml +1 -1
  77. data/config/locales/sl.yml +1 -1
  78. data/config/locales/so-SO.yml +1 -0
  79. data/config/locales/sr-CS.yml +1 -1
  80. data/config/locales/sv.yml +3 -1
  81. data/config/locales/sw-KE.yml +1 -0
  82. data/config/locales/ti-ER.yml +1 -0
  83. data/config/locales/tr-TR.yml +1 -1
  84. data/config/locales/uk.yml +1 -1
  85. data/config/locales/val-ES.yml +1 -0
  86. data/config/locales/vi.yml +1 -0
  87. data/config/locales/zh-CN.yml +1 -1
  88. data/config/locales/zh-TW.yml +1 -0
  89. data/db/migrate/20220331150008_add_title_to_timeline_entries.rb +7 -0
  90. data/db/migrate/20220331150155_move_legacy_description_to_title_of_timeline_entries.rb +13 -0
  91. data/lib/decidim/accountability/component.rb +2 -1
  92. data/lib/decidim/accountability/test/factories.rb +1 -0
  93. data/lib/decidim/accountability/version.rb +1 -1
  94. data/lib/decidim/api/timeline_entry_type.rb +1 -0
  95. metadata +28 -25
  96. data/app/services/decidim/accountability/result_search.rb +0 -48
@@ -1,48 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Decidim
4
- module Accountability
5
- # This class handles search and filtering of results. Needs a
6
- # `current_component` param with a `Decidim::Component` in order to
7
- # find the results.
8
- class ResultSearch < ResourceSearch
9
- text_search_fields :title, :description
10
-
11
- # Public: Initializes the service.
12
- #
13
- # options - A hash of options to modify the search. These options will be
14
- # converted to methods by SearchLight so they can be used on filter
15
- # methods. (Default {})
16
- # * component - A Decidim::Component to get the results from.
17
- # * organization - A Decidim::Organization object.
18
- # * parent_id - The parent ID of the result. The value is forced to false to force
19
- # the filter execution when the value is nil
20
- # * deep_search - Whether to perform the search on all children levels or just the
21
- # first one. True by default.
22
- def initialize(options = {})
23
- options = options.dup
24
- options[:deep_search] = true if options[:deep_search].nil?
25
- options[:parent_id] = "root" if options[:parent_id].nil?
26
- super(Result.all, options)
27
- end
28
-
29
- # Handle parent_id filter
30
- def search_parent_id
31
- parent_id = options[:parent_id]
32
- parent_id = nil if parent_id == "root"
33
-
34
- if options[:deep_search]
35
- query.where(parent_id: [parent_id] + children_ids(parent_id))
36
- else
37
- query.where(parent_id: parent_id)
38
- end
39
- end
40
-
41
- private
42
-
43
- def children_ids(parent_id)
44
- Result.where(parent_id: parent_id).pluck(:id)
45
- end
46
- end
47
- end
48
- end