decidim-debates 0.26.2 → 0.27.0.rc2

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 (62) hide show
  1. checksums.yaml +4 -4
  2. data/app/commands/decidim/debates/admin/close_debate.rb +1 -1
  3. data/app/commands/decidim/debates/admin/create_debate.rb +1 -1
  4. data/app/commands/decidim/debates/admin/update_debate.rb +1 -1
  5. data/app/commands/decidim/debates/close_debate.rb +1 -1
  6. data/app/commands/decidim/debates/create_debate.rb +1 -1
  7. data/app/commands/decidim/debates/update_debate.rb +1 -1
  8. data/app/controllers/decidim/debates/admin/debate_closes_controller.rb +0 -1
  9. data/app/controllers/decidim/debates/debates_controller.rb +8 -18
  10. data/app/controllers/decidim/debates/orderable.rb +3 -3
  11. data/app/forms/decidim/debates/admin/close_debate_form.rb +4 -2
  12. data/app/forms/decidim/debates/admin/debate_form.rb +2 -2
  13. data/app/forms/decidim/debates/close_debate_form.rb +4 -2
  14. data/app/forms/decidim/debates/debate_form.rb +6 -5
  15. data/app/helpers/decidim/debates/application_helper.rb +1 -1
  16. data/app/models/decidim/debates/debate.rb +16 -2
  17. data/app/serializers/decidim/debates/{data_portability_debate_serializer.rb → download_your_data_debate_serializer.rb} +2 -2
  18. data/app/services/decidim/debates/debate_search.rb +13 -24
  19. data/app/views/decidim/debates/debates/_filters.html.erb +5 -5
  20. data/config/locales/ar.yml +2 -1
  21. data/config/locales/bg.yml +1 -0
  22. data/config/locales/ca.yml +2 -1
  23. data/config/locales/cs.yml +3 -2
  24. data/config/locales/de.yml +5 -1
  25. data/config/locales/el.yml +1 -1
  26. data/config/locales/en.yml +1 -1
  27. data/config/locales/es-MX.yml +2 -1
  28. data/config/locales/es-PY.yml +2 -1
  29. data/config/locales/es.yml +2 -1
  30. data/config/locales/eu.yml +1 -1
  31. data/config/locales/fi-plain.yml +2 -1
  32. data/config/locales/fi.yml +2 -1
  33. data/config/locales/fr-CA.yml +2 -1
  34. data/config/locales/fr.yml +2 -1
  35. data/config/locales/ga-IE.yml +1 -1
  36. data/config/locales/gl.yml +2 -1
  37. data/config/locales/hu.yml +66 -1
  38. data/config/locales/id-ID.yml +1 -1
  39. data/config/locales/is-IS.yml +2 -2
  40. data/config/locales/it.yml +2 -1
  41. data/config/locales/ja.yml +2 -1
  42. data/config/locales/lb.yml +1 -0
  43. data/config/locales/lt.yml +244 -0
  44. data/config/locales/lv.yml +1 -1
  45. data/config/locales/nl.yml +2 -1
  46. data/config/locales/no.yml +2 -1
  47. data/config/locales/pl.yml +1 -1
  48. data/config/locales/pt-BR.yml +1 -1
  49. data/config/locales/pt.yml +1 -1
  50. data/config/locales/ro-RO.yml +2 -1
  51. data/config/locales/ru.yml +1 -1
  52. data/config/locales/sk.yml +1 -1
  53. data/config/locales/sl.yml +1 -0
  54. data/config/locales/sr-CS.yml +1 -0
  55. data/config/locales/sv.yml +2 -1
  56. data/config/locales/tr-TR.yml +1 -1
  57. data/config/locales/uk.yml +1 -1
  58. data/config/locales/zh-CN.yml +1 -1
  59. data/db/migrate/20181016132850_add_organization_as_author_to_debates.rb +2 -0
  60. data/lib/decidim/debates/test/factories.rb +1 -1
  61. data/lib/decidim/debates/version.rb +1 -1
  62. metadata +15 -15
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bba1a20bf1be9a3163def8c0453e533ca38ef4ca11ff69c3ac499676574c20ac
4
- data.tar.gz: c23359c29608db9ed45ff0b007396615d6207346c55f4f186010b4641fa311a6
3
+ metadata.gz: 3fab5be1a72275d74438c9474395018e2ec6820ce43d222fe0a252f77f835fd3
4
+ data.tar.gz: 4762a3d6f218f65c360a25a60c7717d1216972e163d49a5a17bba1b408a1ef30
5
5
  SHA512:
6
- metadata.gz: c52b2dc948574e885b3302a036b745cc8eea0567943b34808e4b69e3a26921158523a534b969d7e6abbcf3dc960222b09f01400d1c1a4c26d01474b826c8bb6b
7
- data.tar.gz: 3a72216f5e580781cd411e6a2dca024ec05e8df483c6150c9b047f4ade729e8e24a00fe4129c4c7198926caaea4b77fff513717974ca635f70875c2e613cb107
6
+ metadata.gz: 0ab714005a3269dc998591084fe53794840ad1ab3c4b265fda289f87a466fd375714037eb9cda73471e8abdc57a108d90a7085b966f819f461cc581f282fdf24
7
+ data.tar.gz: ce7ceaea9b4d8b0a81a993b220f02c3207f245a7354692fa1b1eec89e9bb6fb8d9ac9ef412a7fa2f86344606beec5544beccabbdaeb0200af618d8331d97b52f
@@ -4,7 +4,7 @@ module Decidim
4
4
  module Debates
5
5
  module Admin
6
6
  # A command with all the business logic when an admin closes a debate.
7
- class CloseDebate < Rectify::Command
7
+ class CloseDebate < Decidim::Command
8
8
  # Public: Initializes the command.
9
9
  #
10
10
  # form - A form object with the params.
@@ -5,7 +5,7 @@ module Decidim
5
5
  module Admin
6
6
  # This command is executed when the user creates a Debate from the admin
7
7
  # panel.
8
- class CreateDebate < Rectify::Command
8
+ class CreateDebate < Decidim::Command
9
9
  def initialize(form)
10
10
  @form = form
11
11
  end
@@ -5,7 +5,7 @@ module Decidim
5
5
  module Admin
6
6
  # This command is executed when the user changes a Debate from the admin
7
7
  # panel.
8
- class UpdateDebate < Rectify::Command
8
+ class UpdateDebate < Decidim::Command
9
9
  # Initializes a UpdateDebate Command.
10
10
  #
11
11
  # form - The form from which to get the data.
@@ -3,7 +3,7 @@
3
3
  module Decidim
4
4
  module Debates
5
5
  # A command with all the business logic when a user updates a debate.
6
- class CloseDebate < Rectify::Command
6
+ class CloseDebate < Decidim::Command
7
7
  # Public: Initializes the command.
8
8
  #
9
9
  # form - A form object with the params.
@@ -4,7 +4,7 @@ module Decidim
4
4
  module Debates
5
5
  # This command is executed when the user creates a Debate from the public
6
6
  # views.
7
- class CreateDebate < Rectify::Command
7
+ class CreateDebate < Decidim::Command
8
8
  def initialize(form)
9
9
  @form = form
10
10
  end
@@ -3,7 +3,7 @@
3
3
  module Decidim
4
4
  module Debates
5
5
  # A command with all the business logic when a user updates a debate.
6
- class UpdateDebate < Rectify::Command
6
+ class UpdateDebate < Decidim::Command
7
7
  # Public: Initializes the command.
8
8
  #
9
9
  # form - A form object with the params.
@@ -17,7 +17,6 @@ module Decidim
17
17
  enforce_permission_to :close, :debate, debate: debate
18
18
 
19
19
  @form = form(Admin::CloseDebateForm).from_params(params)
20
- @form.debate = debate
21
20
 
22
21
  CloseDebate.call(@form) do
23
22
  on(:ok) do |_debate|
@@ -53,7 +53,6 @@ module Decidim
53
53
  enforce_permission_to :edit, :debate, debate: debate
54
54
 
55
55
  @form = form(DebateForm).from_params(params)
56
- @form.debate = debate
57
56
 
58
57
  UpdateDebate.call(@form) do
59
58
  on(:ok) do |debate|
@@ -72,7 +71,6 @@ module Decidim
72
71
  enforce_permission_to :close, :debate, debate: debate
73
72
 
74
73
  @form = form(CloseDebateForm).from_params(params)
75
- @form.debate = debate
76
74
 
77
75
  CloseDebate.call(@form) do
78
76
  on(:ok) do |debate|
@@ -98,7 +96,7 @@ module Decidim
98
96
  end
99
97
 
100
98
  def debates
101
- @debates ||= reorder(search.results)
99
+ @debates ||= reorder(search.result)
102
100
  end
103
101
 
104
102
  def debate
@@ -109,26 +107,18 @@ module Decidim
109
107
  @close_debate_form ||= form(CloseDebateForm).from_model(debate)
110
108
  end
111
109
 
112
- def search_klass
113
- DebateSearch
114
- end
115
-
116
- def default_search_params
117
- {
118
- page: params[:page],
119
- per_page: 12
120
- }
110
+ def search_collection
111
+ Debate.where(component: current_component).not_hidden
121
112
  end
122
113
 
123
114
  def default_filter_params
124
115
  {
125
- search_text: "",
126
- origin: %w(official citizens user_group),
116
+ search_text_cont: "",
117
+ with_any_origin: %w(official participants user_group),
127
118
  activity: "all",
128
- category_id: default_filter_category_params,
129
- scope_id: default_filter_scope_params,
130
- status: "all",
131
- state: %w(open closed)
119
+ with_any_category: default_filter_category_params,
120
+ with_any_scope: default_filter_scope_params,
121
+ with_any_state: %w(open closed)
132
122
  }
133
123
  end
134
124
  end
@@ -24,11 +24,11 @@ module Decidim
24
24
  def reorder(debates)
25
25
  case order
26
26
  when "recent"
27
- debates.order("created_at DESC")
27
+ debates.order(created_at: :desc)
28
28
  when "commented"
29
- debates.order("comments_count DESC")
29
+ debates.order(comments_count: :desc)
30
30
  when "updated"
31
- debates.order("updated_at DESC")
31
+ debates.order(updated_at: :desc)
32
32
  when "random"
33
33
  debates.order_randomly(random_seed)
34
34
  else
@@ -14,8 +14,6 @@ module Decidim
14
14
  validates translated_attribute, length: { minimum: 10, maximum: 10_000 }, if: ->(record) { record.default_locale?(locale) }
15
15
  end
16
16
 
17
- attribute :debate, Debate
18
-
19
17
  validates :debate, presence: true
20
18
  validate :user_can_close_debate
21
19
 
@@ -23,6 +21,10 @@ module Decidim
23
21
  debate&.closed_at || Time.current
24
22
  end
25
23
 
24
+ def debate
25
+ @debate ||= Debate.find_by(id: id)
26
+ end
27
+
26
28
  private
27
29
 
28
30
  def user_can_close_debate
@@ -46,14 +46,14 @@ module Decidim
46
46
  #
47
47
  # Returns a Decidim::Scope
48
48
  def scope
49
- @scope ||= @scope_id ? current_component.scopes.find_by(id: @scope_id) : current_component.scope
49
+ @scope ||= @attributes["scope_id"].value ? current_component.scopes.find_by(id: @attributes["scope_id"].value) : current_component.scope
50
50
  end
51
51
 
52
52
  # Scope identifier
53
53
  #
54
54
  # Returns the scope identifier related to the meeting
55
55
  def scope_id
56
- @scope_id || scope&.id
56
+ super || scope&.id
57
57
  end
58
58
 
59
59
  private
@@ -7,7 +7,6 @@ module Decidim
7
7
  mimic :debate
8
8
 
9
9
  attribute :conclusions, Decidim::Attributes::CleanString
10
- attribute :debate, Debate
11
10
 
12
11
  validates :debate, presence: true
13
12
  validates :conclusions, presence: true, length: { minimum: 10, maximum: 10_000 }
@@ -19,7 +18,6 @@ module Decidim
19
18
 
20
19
  def map_model(debate)
21
20
  super
22
- self.debate = debate
23
21
 
24
22
  # Debates can be translated in different languages from the admin but
25
23
  # the public form doesn't allow it. When a user closes a debate the
@@ -27,6 +25,10 @@ module Decidim
27
25
  self.conclusions = debate.conclusions&.values&.first
28
26
  end
29
27
 
28
+ def debate
29
+ @debate ||= Debate.find_by(id: id)
30
+ end
31
+
30
32
  private
31
33
 
32
34
  def user_can_close_debate
@@ -11,7 +11,6 @@ module Decidim
11
11
  attribute :category_id, Integer
12
12
  attribute :scope_id, Integer
13
13
  attribute :user_group_id, Integer
14
- attribute :debate, Debate
15
14
 
16
15
  validates :title, presence: true
17
16
  validates :description, presence: true
@@ -22,8 +21,6 @@ module Decidim
22
21
 
23
22
  def map_model(debate)
24
23
  super
25
- self.debate = debate
26
-
27
24
  # Debates can be translated in different languages from the admin but
28
25
  # the public form doesn't allow it. When a user creates a debate the
29
26
  # user locale is taken as the text locale.
@@ -45,14 +42,18 @@ module Decidim
45
42
  #
46
43
  # Returns a Decidim::Scope
47
44
  def scope
48
- @scope ||= @scope_id ? current_component.scopes.find_by(id: @scope_id) : current_component.scope
45
+ @scope ||= @attributes["scope_id"].value ? current_component.scopes.find_by(id: @attributes["scope_id"].value) : current_component.scope
49
46
  end
50
47
 
51
48
  # Scope identifier
52
49
  #
53
50
  # Returns the scope identifier related to the debate
54
51
  def scope_id
55
- @scope_id || scope&.id
52
+ super || scope&.id
53
+ end
54
+
55
+ def debate
56
+ @debate ||= Debate.find_by(id: id)
56
57
  end
57
58
 
58
59
  private
@@ -35,7 +35,7 @@ module Decidim
35
35
  def filter_origin_values
36
36
  origin_values = []
37
37
  origin_values << TreePoint.new("official", t("decidim.debates.debates.filters.official"))
38
- origin_values << TreePoint.new("citizens", t("decidim.debates.debates.filters.citizens"))
38
+ origin_values << TreePoint.new("participants", t("decidim.debates.debates.filters.participants"))
39
39
  origin_values << TreePoint.new("user_group", t("decidim.debates.debates.filters.user_groups")) if current_organization.user_groups_enabled?
40
40
 
41
41
  TreeNode.new(TreePoint.new("", t("decidim.debates.debates.filters.all")), origin_values)
@@ -18,13 +18,14 @@ module Decidim
18
18
  include Decidim::HasReference
19
19
  include Decidim::Traceable
20
20
  include Decidim::Loggable
21
- include Decidim::DataPortability
21
+ include Decidim::DownloadYourData
22
22
  include Decidim::NewsletterParticipant
23
23
  include Decidim::Searchable
24
24
  include Decidim::TranslatableResource
25
25
  include Decidim::TranslatableAttributes
26
26
  include Decidim::Endorsable
27
27
  include Decidim::Randomable
28
+ include Decidim::FilterableResource
28
29
 
29
30
  belongs_to :last_comment_by, polymorphic: true, foreign_type: "last_comment_by_type", optional: true
30
31
  component_manifest_name "debates"
@@ -53,6 +54,7 @@ module Decidim
53
54
  }
54
55
  )
55
56
  }
57
+ scope_search_multi :with_any_state, [:open, :closed]
56
58
 
57
59
  def self.log_presenter_class_for(_log)
58
60
  Decidim::Debates::AdminLog::DebatePresenter
@@ -141,7 +143,7 @@ module Decidim
141
143
  end
142
144
 
143
145
  def self.export_serializer
144
- Decidim::Debates::DataPortabilityDebateSerializer
146
+ Decidim::Debates::DownloadYourDataDebateSerializer
145
147
  end
146
148
 
147
149
  def self.newsletter_participant_ids(component)
@@ -193,6 +195,18 @@ module Decidim
193
195
  end
194
196
  # rubocop:enable Rails/SkipsModelValidations
195
197
 
198
+ # Create i18n ransackers for :title and :description.
199
+ # Create the :search_text ransacker alias for searching from both of these.
200
+ ransacker_i18n_multi :search_text, [:title, :description]
201
+
202
+ def self.ransackable_scopes(_auth_object = nil)
203
+ [:with_any_state, :with_any_origin, :with_any_category, :with_any_scope]
204
+ end
205
+
206
+ def self.ransack(params = {}, options = {})
207
+ DebateSearch.new(self, params, options)
208
+ end
209
+
196
210
  private
197
211
 
198
212
  def comments_blocked?
@@ -2,8 +2,8 @@
2
2
 
3
3
  module Decidim
4
4
  module Debates
5
- class DataPortabilityDebateSerializer < Decidim::Exporters::Serializer
6
- # Serializes a Debate for data portability
5
+ class DownloadYourDataDebateSerializer < Decidim::Exporters::Serializer
6
+ # Serializes a Debate for download your data
7
7
  def serialize
8
8
  {
9
9
  id: resource.id,
@@ -2,35 +2,24 @@
2
2
 
3
3
  module Decidim
4
4
  module Debates
5
- # This class handles search and filtering of debates. Needs a
6
- # `current_component` param with a `Decidim::Component` in order to
7
- # find the debates.
5
+ # This service scopes the debate searches with parameters that cannot be
6
+ # passed from the user interface.
8
7
  class DebateSearch < ResourceSearch
9
- text_search_fields :title, :description
8
+ attr_reader :activity
10
9
 
11
- # Public: Initializes the service.
12
- # component - A Decidim::Component to get the debates from.
13
- # page - The page number to paginate the results.
14
- # per_page - The number of debates to return per page.
15
- def initialize(options = {})
16
- super(Debate.not_hidden, options)
17
- end
10
+ def build(params)
11
+ @activity = params[:activity]
18
12
 
19
- # Handle the activity filter
20
- def search_activity
21
- case activity
22
- when "commented"
23
- query.commented_by(user)
24
- when "my_debates"
25
- query.authored_by(user)
26
- else # Assume 'all'
27
- query
13
+ if params[:activity] && user
14
+ case params[:activity]
15
+ when "commented"
16
+ add_scope(:commented_by, user)
17
+ when "my_debates"
18
+ add_scope(:authored_by, user)
19
+ end
28
20
  end
29
- end
30
21
 
31
- # Handle the state filter
32
- def search_state
33
- apply_scopes(%w(open closed), state)
22
+ super
34
23
  end
35
24
  end
36
25
  end
@@ -4,7 +4,7 @@
4
4
  <div class="filters__section">
5
5
  <div class="filters__search">
6
6
  <div class="input-group">
7
- <%= form.search_field :search_text, label: false, class: "input-group-field", placeholder: t(".search"), title: t(".search"), "aria-label": t(".search"), data: { disable_dynamic_change: true } %>
7
+ <%= form.search_field :search_text_cont, label: false, class: "input-group-field", placeholder: t(".search"), title: t(".search"), "aria-label": t(".search"), data: { disable_dynamic_change: true } %>
8
8
  <div class="input-group-button">
9
9
  <button type="submit" class="button" aria-controls="debates">
10
10
  <%= icon "magnifying-glass", aria_label: t(".search"), role: "img" %>
@@ -14,17 +14,17 @@
14
14
  </div>
15
15
  </div>
16
16
 
17
- <%= form.check_boxes_tree :state, filter_debates_state_values, legend_title: t(".state"), "aria-controls": "debates" %>
17
+ <%= form.check_boxes_tree :with_any_state, filter_debates_state_values, legend_title: t(".state"), "aria-controls": "debates" %>
18
18
 
19
19
  <% if current_component.has_subscopes? %>
20
- <%= form.check_boxes_tree :scope_id, filter_scopes_values, legend_title: t(".scope"), "aria-controls": "debates" %>
20
+ <%= form.check_boxes_tree :with_any_scope, filter_scopes_values, legend_title: t(".scope"), "aria-controls": "debates" %>
21
21
  <% end %>
22
22
 
23
23
  <% if current_participatory_space.categories.any? %>
24
- <%= form.check_boxes_tree :category_id, filter_categories_values, legend_title: t(".category"), "aria-controls": "debates" %>
24
+ <%= form.check_boxes_tree :with_any_category, filter_categories_values, legend_title: t(".category"), "aria-controls": "debates" %>
25
25
  <% end %>
26
26
 
27
- <%= form.check_boxes_tree :origin, filter_origin_values, legend_title: t(".origin"), "aria-controls": "debates" %>
27
+ <%= form.check_boxes_tree :with_any_origin, filter_origin_values, legend_title: t(".origin"), "aria-controls": "debates" %>
28
28
 
29
29
  <% if current_user %>
30
30
  <%= form.collection_radio_buttons :activity, activity_filter_values, :first, :last, { legend_title: t(".activity") }, "aria-controls": "debates" %>
@@ -1,3 +1,4 @@
1
+ ---
1
2
  ar:
2
3
  activemodel:
3
4
  attributes:
@@ -87,10 +88,10 @@ ar:
87
88
  all: الكل
88
89
  category: الفئة
89
90
  category_prompt: اختر تصنيف
90
- citizens: المواطنين
91
91
  my_debates: مناقشاتي
92
92
  official: الرسمية
93
93
  origin: الأصل
94
+ participants: المشاركون
94
95
  search: بحث
95
96
  user_groups: الفِرَق
96
97
  filters_small_view:
@@ -1,3 +1,4 @@
1
+ ---
1
2
  bg:
2
3
  activemodel:
3
4
  attributes:
@@ -1,3 +1,4 @@
1
+ ---
1
2
  ca:
2
3
  activemodel:
3
4
  attributes:
@@ -117,11 +118,11 @@ ca:
117
118
  all: Tots
118
119
  category: Categoria
119
120
  category_prompt: Selecciona una categoria
120
- citizens: Ciutadania
121
121
  commented: Comentat
122
122
  my_debates: Els meus debats
123
123
  official: Oficial
124
124
  origin: Origen
125
+ participants: Participants
125
126
  scope: Àmbit
126
127
  search: Cerca
127
128
  state: Estat
@@ -1,3 +1,4 @@
1
+ ---
1
2
  cs:
2
3
  activemodel:
3
4
  attributes:
@@ -121,11 +122,11 @@ cs:
121
122
  all: Vše
122
123
  category: Kategorie
123
124
  category_prompt: Vyberte kategorii
124
- citizens: Občané
125
125
  commented: Okomentováno
126
126
  my_debates: Moje rozpravy
127
127
  official: Oficiální
128
128
  origin: Původ
129
+ participants: Účastníci
129
130
  scope: Oblast působnosti
130
131
  search: Hledat
131
132
  state: Stav
@@ -163,7 +164,7 @@ cs:
163
164
  groups_count: Skupiny
164
165
  last_comment_by: Poslední komentář od
165
166
  no_comments_yet: Zatím žádné komentáře
166
- open: Otevřít diskusi
167
+ open: Otevřená diskuse
167
168
  participants_count: Účastníci
168
169
  update:
169
170
  invalid: Při aktualizaci rozpravy došlo k chybě.
@@ -1,3 +1,4 @@
1
+ ---
1
2
  de:
2
3
  activemodel:
3
4
  attributes:
@@ -17,6 +18,7 @@ de:
17
18
  decidim/debates/close_debate_event: Debatte beendet
18
19
  decidim/debates/create_debate_event: Debatte
19
20
  decidim/debates/creation_disabled_event: Debatten deaktiviert
21
+ decidim/debates/creation_enabled_event: Erstellung von Debatten aktiviert
20
22
  activerecord:
21
23
  models:
22
24
  decidim/debates/debate:
@@ -26,6 +28,7 @@ de:
26
28
  components:
27
29
  debates:
28
30
  actions:
31
+ comment: Kommentar
29
32
  create: Erstellen
30
33
  endorse: Bestätigen
31
34
  name: Debatten
@@ -39,6 +42,7 @@ de:
39
42
  step:
40
43
  announcement: Ankündigung
41
44
  comments_blocked: Kommentare blockiert
45
+ creation_enabled: Teilnehmer können Debatten erstellen
42
46
  endorsements_blocked: Bestätigungen blockiert
43
47
  endorsements_enabled: Bestätigungen aktiviert
44
48
  debates:
@@ -114,11 +118,11 @@ de:
114
118
  all: Alle
115
119
  category: Kategorie
116
120
  category_prompt: Wählen Sie eine Kategorie
117
- citizens: Einzelpersonen
118
121
  commented: Kommentiert
119
122
  my_debates: Meine Debatten
120
123
  official: Offiziell
121
124
  origin: Ursprung
125
+ participants: Teilnehmer
122
126
  scope: Bereich
123
127
  search: Suche
124
128
  state: Status
@@ -1,3 +1,4 @@
1
+ ---
1
2
  el:
2
3
  activemodel:
3
4
  attributes:
@@ -78,7 +79,6 @@ el:
78
79
  all: Όλα
79
80
  category: Κατηγορία
80
81
  category_prompt: Επιλέξτε μια κατηγορία
81
- citizens: Πολίτες
82
82
  official: Επίσημη
83
83
  origin: Προέλευση
84
84
  search: Αναζήτηση
@@ -118,11 +118,11 @@ en:
118
118
  all: All
119
119
  category: Category
120
120
  category_prompt: Select a category
121
- citizens: Citizens
122
121
  commented: Commented
123
122
  my_debates: My debates
124
123
  official: Official
125
124
  origin: Origin
125
+ participants: Participants
126
126
  scope: Scope
127
127
  search: Search
128
128
  state: Status
@@ -1,3 +1,4 @@
1
+ ---
1
2
  es-MX:
2
3
  activemodel:
3
4
  attributes:
@@ -117,11 +118,11 @@ es-MX:
117
118
  all: Todos
118
119
  category: Categoría
119
120
  category_prompt: Selecciona una categoría
120
- citizens: Ciudadanía
121
121
  commented: Comentado
122
122
  my_debates: Mis debates
123
123
  official: Oficial
124
124
  origin: Origen
125
+ participants: Participantes
125
126
  scope: Ámbito
126
127
  search: Buscar
127
128
  state: Estado
@@ -1,3 +1,4 @@
1
+ ---
1
2
  es-PY:
2
3
  activemodel:
3
4
  attributes:
@@ -113,11 +114,11 @@ es-PY:
113
114
  all: Todos
114
115
  category: Categoría
115
116
  category_prompt: Selecciona una categoría
116
- citizens: Ciudadanía
117
117
  commented: Comentado
118
118
  my_debates: Mis debates
119
119
  official: Oficial
120
120
  origin: Origen
121
+ participants: Participantes
121
122
  scope: Ámbito
122
123
  search: Buscar
123
124
  state: Estado
@@ -1,3 +1,4 @@
1
+ ---
1
2
  es:
2
3
  activemodel:
3
4
  attributes:
@@ -117,11 +118,11 @@ es:
117
118
  all: Todos
118
119
  category: Categoría
119
120
  category_prompt: Selecciona una categoría
120
- citizens: Ciudadanía
121
121
  commented: Comentado
122
122
  my_debates: Mis debates
123
123
  official: Oficial
124
124
  origin: Origen
125
+ participants: Participantes
125
126
  scope: Ámbito
126
127
  search: Buscar
127
128
  state: Estado
@@ -1,3 +1,4 @@
1
+ ---
1
2
  eu:
2
3
  activemodel:
3
4
  attributes:
@@ -115,7 +116,6 @@ eu:
115
116
  all: guztiak
116
117
  category: Kategoria
117
118
  category_prompt: Aukeratu kategoria bat
118
- citizens: Hiritarrak
119
119
  commented: Iruzkina eginda
120
120
  my_debates: Nire eztabaidak
121
121
  official: Ofiziala
@@ -1,3 +1,4 @@
1
+ ---
1
2
  fi-pl:
2
3
  activemodel:
3
4
  attributes:
@@ -117,11 +118,11 @@ fi-pl:
117
118
  all: Kaikki
118
119
  category: Aihepiiri
119
120
  category_prompt: Valitse aihepiiri
120
- citizens: Kansalaiset
121
121
  commented: Kommentoitu
122
122
  my_debates: Omat keskustelut
123
123
  official: Virallinen
124
124
  origin: Alkuperä
125
+ participants: Osallistujat
125
126
  scope: Teema
126
127
  search: Hae
127
128
  state: Tila
@@ -1,3 +1,4 @@
1
+ ---
1
2
  fi:
2
3
  activemodel:
3
4
  attributes:
@@ -117,11 +118,11 @@ fi:
117
118
  all: Kaikki
118
119
  category: Aihepiiri
119
120
  category_prompt: Valitse aihepiiri
120
- citizens: Kansalaiset
121
121
  commented: Kommentoitu
122
122
  my_debates: Omat keskustelut
123
123
  official: Virallinen
124
124
  origin: Alkuperä
125
+ participants: Osallistujat
125
126
  scope: Teema
126
127
  search: Hae
127
128
  state: Tila