decidim-consultations 0.14.4 → 0.15.0

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 (44) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/images/decidim/consultations/icon.svg +2 -69
  3. data/app/cells/decidim/consultation_activity_cell.rb +10 -0
  4. data/app/cells/decidim/consultations/content_blocks/highlighted_consultations/show.erb +32 -0
  5. data/app/cells/decidim/consultations/content_blocks/highlighted_consultations_cell.rb +41 -0
  6. data/app/cells/decidim/consultations/content_blocks/highlighted_consultations_settings_form/show.erb +3 -0
  7. data/app/cells/decidim/consultations/content_blocks/highlighted_consultations_settings_form_cell.rb +19 -0
  8. data/app/cells/decidim/consultations/question_activity_cell.rb +15 -0
  9. data/app/commands/decidim/consultations/admin/publish_consultation.rb +8 -3
  10. data/app/commands/decidim/consultations/admin/publish_question.rb +7 -2
  11. data/app/controllers/decidim/consultations/admin/consultation_publications_controller.rb +1 -1
  12. data/app/controllers/decidim/consultations/admin/question_publications_controller.rb +1 -1
  13. data/app/forms/decidim/consultations/admin/consultation_form.rb +2 -2
  14. data/app/models/decidim/consultation.rb +3 -0
  15. data/app/models/decidim/consultations/question.rb +5 -0
  16. data/app/models/decidim/consultations/vote.rb +10 -1
  17. data/app/views/layouts/decidim/admin/consultation.html.erb +1 -0
  18. data/app/views/layouts/decidim/admin/question.html.erb +1 -0
  19. data/config/locales/ca.yml +19 -0
  20. data/config/locales/de.yml +19 -0
  21. data/config/locales/en.yml +19 -0
  22. data/config/locales/es-PY.yml +19 -0
  23. data/config/locales/es.yml +19 -0
  24. data/config/locales/eu.yml +19 -0
  25. data/config/locales/fi.yml +19 -0
  26. data/config/locales/fr.yml +19 -0
  27. data/config/locales/gl.yml +19 -0
  28. data/config/locales/hu.yml +19 -0
  29. data/config/locales/it.yml +19 -0
  30. data/config/locales/nl.yml +19 -0
  31. data/config/locales/pl.yml +21 -0
  32. data/config/locales/pt-BR.yml +19 -0
  33. data/config/locales/pt.yml +19 -0
  34. data/config/locales/ru.yml +4 -0
  35. data/config/locales/sv.yml +19 -0
  36. data/config/locales/uk.yml +4 -0
  37. data/db/migrate/20181003082318_fix_user_groups_ids_on_consultations.rb +16 -0
  38. data/db/seeds/city.jpeg +0 -0
  39. data/db/seeds/city2.jpeg +0 -0
  40. data/lib/decidim/consultations/engine.rb +12 -0
  41. data/lib/decidim/consultations/participatory_space.rb +46 -10
  42. data/lib/decidim/consultations/test/factories.rb +10 -10
  43. data/lib/decidim/consultations/version.rb +1 -1
  44. metadata +18 -11
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 22023d3dd925c9ee140ec48df9f3393f7884b3916471a3d42f11ab0c84c62c7c
4
- data.tar.gz: be647baca292748c73e432eac8e5972304576748625ae419a7ddc625aad0d5b7
3
+ metadata.gz: 316c2f977806a9491d07ae334279f1364fd730caf0e34940282f99319be63d6f
4
+ data.tar.gz: 2d7acafcd6bc46844f3c6e7a0f3278c5466b908252e08b7151d00d51f3eb5e9d
5
5
  SHA512:
6
- metadata.gz: 351890591a536581f3a78c5c9c60369a460c304de996dea2a7f9cb84597f1e8eedf0ffc81c7ec8ab39458585cd427d4c112837de9ed9ecd1851978396eb92db1
7
- data.tar.gz: 23a6550bf5931302fd9031cc1d7a7e59c6f22da1be8d12048c5079888880e3c03e6fc47b6999f9d16bb7bd68eaa3033c159423af4b23cb00f1edc53b0e72795b
6
+ metadata.gz: f24eda8ba492af7c1bfb6d750faeffa159024c6292ec37735f665b5fd5f3e7aa4df64485421d62ead1e050c683fd579384105370813e938618a00f75da0e4307
7
+ data.tar.gz: 2711d639a9b337f5ce21f011736b47a5958fbf1198f94772aac9b8fcf35475d122c3b5e505c37bd68f25a06894162b400d3fa5e8d7e7b340f808e1ae01e07300
@@ -1,70 +1,3 @@
1
- <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
- <svg
3
- xmlns:dc="http://purl.org/dc/elements/1.1/"
4
- xmlns:cc="http://creativecommons.org/ns#"
5
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
6
- xmlns:svg="http://www.w3.org/2000/svg"
7
- xmlns="http://www.w3.org/2000/svg"
8
- version="1.1"
9
- id="svg2"
10
- viewBox="0 0 121.08785 121.08785"
11
- height="34.173683mm"
12
- width="34.173683mm">
13
- <defs
14
- id="defs4" />
15
- <metadata
16
- id="metadata7">
17
- <rdf:RDF>
18
- <cc:Work
19
- rdf:about="">
20
- <dc:format>image/svg+xml</dc:format>
21
- <dc:type
22
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
23
- <dc:title></dc:title>
24
- </cc:Work>
25
- </rdf:RDF>
26
- </metadata>
27
- <g
28
- transform="translate(-31.864728,-35.267277)"
29
- id="layer1">
30
- <circle
31
- r="59.093925"
32
- cy="95.811203"
33
- cx="92.408653"
34
- id="path4136"
35
- style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:2.9000001;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
36
- <rect
37
- ry="0"
38
- y="69.37056"
39
- x="60.79406"
40
- height="22.358257"
41
- width="22.358257"
42
- id="rect4138"
43
- style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:3.63098097;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
44
- <rect
45
- style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:3.63100004;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
46
- id="rect4140"
47
- width="22.358257"
48
- height="22.358257"
49
- x="60.79406"
50
- y="101.92418"
51
- ry="0" />
52
- <path
53
- id="path4142"
54
- d="m 94.357143,79.43363 35.393037,0"
55
- style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
56
- <path
57
- style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
58
- d="m 94.357143,113.43363 35.393037,0"
59
- id="path4150" />
60
- <text
61
- id="text4154"
62
- y="94.698593"
63
- x="59.623905"
64
- style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:41.11339951px;line-height:125%;font-family:OpenSymbol;-inkscape-font-specification:OpenSymbol;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
65
- xml:space="preserve"><tspan
66
- y="94.698593"
67
- x="59.623905"
68
- id="tspan4156">&#x2714;</tspan></text>
69
- </g>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 34 34">
2
+ <path d="M17 1.889C8.654 1.889 1.889 8.654 1.889 17S8.654 32.111 17 32.111 32.111 25.346 32.111 17 25.346 1.889 17 1.889zM17 0c9.389 0 17 7.611 17 17s-7.611 17-17 17S0 26.389 0 17 7.611 0 17 0zm-2.327 14.005c.026-1.153.867-2.08 2.024-2.099h.137c1.901.032 2.584 2.347 1.065 3.915-.12.123-.951.935-1.16 1.17-.688.776-.982 1.563-.982 2.793a.944.944 0 1 0 1.89 0c0-.772.126-1.113.505-1.54.155-.174.942-.942 1.104-1.11 2.59-2.672 1.298-7.055-2.406-7.116h-.168c-2.232.036-3.85 1.817-3.898 3.945a.944.944 0 1 0 1.889.042zm2.029 10.327a1.168 1.168 0 1 0 0-2.336 1.168 1.168 0 0 0 0 2.336zm0-.945a.224.224 0 1 1 0-.447.224.224 0 0 1 0 .447z"/>
70
3
  </svg>
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ # A cell to display when a Consultation has been published.
5
+ class ConsultationActivityCell < ActivityCell
6
+ def title
7
+ I18n.t "decidim.consultations.last_activity.new_consultation"
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,32 @@
1
+ <section class="wrapper-home home-section">
2
+ <div class="row" id="highlighted-consultations">
3
+ <h3 class="section-heading"><%= t("active_consultations", scope: i18n_scope) %></h3>
4
+ <div class="row collapse">
5
+ <div class="row small-up-1 smallmedium-up-2 mediumlarge-up-3
6
+ large-up-4 card-grid">
7
+ <% highlighted_consultations.each do |consultation| %>
8
+ <div class="column">
9
+ <article class="card card--consultation card--mini">
10
+ <%= link_to decidim_consultations.consultation_path(consultation), class: "card__link" do %>
11
+ <div class="card__image-top"
12
+ style="background-image:url(<%= consultation.banner_image.url %>)"></div>
13
+ <% end %>
14
+ <div class="card__content">
15
+ <%= link_to decidim_consultations.consultation_path(consultation), class: "card__link" do %>
16
+ <h4 class="card__title"><%= translated_attribute consultation.title %></h4>
17
+ <% end %>
18
+ <span class="card--process__small"><%= voting_ends_text_for(consultation) %></span>
19
+ </div>
20
+ </article>
21
+ </div>
22
+ <% end %>
23
+ </div>
24
+ </div>
25
+ </div>
26
+ <div class="row" id="see-all-consultations">
27
+ <div class="columns small-centered small-12
28
+ smallmedium-8 medium-6 large-4">
29
+ <%= link_to t("see_all_consultations", scope: i18n_scope), decidim_consultations.consultations_path, class: "button expanded hollow button--sc home-section__cta" %>
30
+ </div>
31
+ </div>
32
+ </section>
@@ -0,0 +1,41 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module Consultations
5
+ module ContentBlocks
6
+ class HighlightedConsultationsCell < Decidim::ViewModel
7
+ delegate :current_organization, to: :controller
8
+ delegate :current_user, to: :controller
9
+
10
+ def show
11
+ render if highlighted_consultations.any?
12
+ end
13
+
14
+ def max_results
15
+ model.settings.max_results
16
+ end
17
+
18
+ def highlighted_consultations
19
+ @highlighted_consultations ||= OrganizationActiveConsultations
20
+ .new(current_organization)
21
+ .query
22
+ .limit(max_results)
23
+ end
24
+
25
+ def i18n_scope
26
+ "decidim.consultations.pages.home.highlighted_consultations"
27
+ end
28
+
29
+ def decidim_consultations
30
+ Decidim::Consultations::Engine.routes.url_helpers
31
+ end
32
+
33
+ def voting_ends_text_for(consultation)
34
+ remaining_days = (consultation.end_voting_date - Time.zone.today).to_i
35
+ return I18n.t("voting_ends_today", scope: i18n_scope) if remaining_days.zero?
36
+ I18n.t("voting_ends_in", scope: i18n_scope, count: remaining_days)
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,3 @@
1
+ <% form.fields_for :settings, form.object.settings do |settings_fields| %>
2
+ <%= settings_fields.select :max_results, [4, 8, 12], prompt: "", label: label %>
3
+ <% end %>
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module Consultations
5
+ module ContentBlocks
6
+ class HighlightedConsultationsSettingsFormCell < Decidim::ViewModel
7
+ alias form model
8
+
9
+ def content_block
10
+ options[:content_block]
11
+ end
12
+
13
+ def label
14
+ I18n.t("decidim.consultations.admin.content_blocks.highlighted_consultations.max_results")
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module Consultations
5
+ # A cell to display when a Question in a consultation has been published.
6
+ class QuestionActivityCell < ActivityCell
7
+ def title
8
+ I18n.t(
9
+ "decidim.consultations.last_activity.new_question_at_html",
10
+ link: participatory_space_link
11
+ )
12
+ end
13
+ end
14
+ end
15
+ end
@@ -8,8 +8,10 @@ module Decidim
8
8
  # Public: Initializes the command.
9
9
  #
10
10
  # consultation - A Consultation that will be published
11
- def initialize(consultation)
11
+ # current_user - the user performing the action
12
+ def initialize(consultation, current_user)
12
13
  @consultation = consultation
14
+ @current_user = current_user
13
15
  end
14
16
 
15
17
  # Executes the command. Broadcasts these events:
@@ -21,13 +23,16 @@ module Decidim
21
23
  def call
22
24
  return broadcast(:invalid) if consultation.nil? || consultation.published?
23
25
 
24
- consultation.publish!
26
+ Decidim.traceability.perform_action!("publish", consultation, current_user, visibility: "all") do
27
+ consultation.publish!
28
+ end
29
+
25
30
  broadcast(:ok)
26
31
  end
27
32
 
28
33
  private
29
34
 
30
- attr_reader :consultation
35
+ attr_reader :consultation, :current_user
31
36
  end
32
37
  end
33
38
  end
@@ -8,8 +8,10 @@ module Decidim
8
8
  # Public: Initializes the command.
9
9
  #
10
10
  # question - A Question that will be published
11
- def initialize(question)
11
+ # current_user - the user performing the action
12
+ def initialize(question, current_user)
12
13
  @question = question
14
+ @current_user = current_user
13
15
  end
14
16
 
15
17
  # Executes the command. Broadcasts these events:
@@ -21,7 +23,10 @@ module Decidim
21
23
  def call
22
24
  return broadcast(:invalid) if question.nil? || question.published?
23
25
 
24
- question.publish!
26
+ Decidim.traceability.perform_action!("publish", question, @current_user, visibility: "all") do
27
+ question.publish!
28
+ end
29
+
25
30
  broadcast(:ok)
26
31
  end
27
32
 
@@ -10,7 +10,7 @@ module Decidim
10
10
  def create
11
11
  enforce_permission_to :publish, :consultation, consultation: current_consultation
12
12
 
13
- PublishConsultation.call(current_consultation) do
13
+ PublishConsultation.call(current_consultation, current_user) do
14
14
  on(:ok) do
15
15
  flash[:notice] = I18n.t("consultation_publications.create.success", scope: "decidim.admin")
16
16
  end
@@ -10,7 +10,7 @@ module Decidim
10
10
  def create
11
11
  enforce_permission_to :publish, :question, question: current_question
12
12
 
13
- PublishQuestion.call(current_question) do
13
+ PublishQuestion.call(current_question, current_user) do
14
14
  on(:ok) do
15
15
  flash[:notice] = I18n.t("question_publications.create.success", scope: "decidim.admin")
16
16
  end
@@ -19,8 +19,8 @@ module Decidim
19
19
  attribute :introductory_image, String
20
20
  attribute :remove_introductory_image
21
21
  attribute :decidim_highlighted_scope_id, Integer
22
- attribute :start_voting_date, Date
23
- attribute :end_voting_date, Date
22
+ attribute :start_voting_date, Decidim::Attributes::LocalizedDate
23
+ attribute :end_voting_date, Decidim::Attributes::LocalizedDate
24
24
 
25
25
  validates :slug, presence: true, format: { with: Decidim::Consultation.slug_format }
26
26
  validates :title, :subtitle, :description, translatable_presence: true
@@ -7,6 +7,9 @@ module Decidim
7
7
  include Decidim::Publicable
8
8
  include Decidim::Resourceable
9
9
  include Decidim::Consultations::PublicableResults
10
+ include Decidim::Traceable
11
+ include Decidim::Loggable
12
+ include Decidim::ParticipatorySpaceResourceable
10
13
 
11
14
  belongs_to :organization,
12
15
  foreign_key: "decidim_organization_id",
@@ -11,6 +11,9 @@ module Decidim
11
11
  include Decidim::Followable
12
12
  include Decidim::HasAttachments
13
13
  include Decidim::HasAttachmentCollections
14
+ include Decidim::Traceable
15
+ include Decidim::Loggable
16
+ include Decidim::ParticipatorySpaceResourceable
14
17
 
15
18
  belongs_to :consultation,
16
19
  foreign_key: "decidim_consultation_id",
@@ -49,6 +52,8 @@ module Decidim
49
52
  delegate :end_voting_date, to: :consultation
50
53
  delegate :results_published?, to: :consultation
51
54
 
55
+ alias participatory_space consultation
56
+
52
57
  # Sorted results for the given question.
53
58
  def sorted_results
54
59
  responses.order(votes_count: :desc)
@@ -4,7 +4,7 @@ module Decidim
4
4
  module Consultations
5
5
  # The data store for question's votes in the Decidim::Consultations component.
6
6
  class Vote < ApplicationRecord
7
- include Authorable
7
+ belongs_to :author, foreign_key: "decidim_author_id", class_name: "Decidim::User"
8
8
 
9
9
  belongs_to :question,
10
10
  foreign_key: "decidim_consultation_question_id",
@@ -19,8 +19,17 @@ module Decidim
19
19
  counter_cache: :votes_count
20
20
 
21
21
  validates :author, uniqueness: { scope: [:decidim_user_group_id, :question] }
22
+ validate :author_and_question_same_organization
22
23
 
23
24
  delegate :organization, to: :question
25
+
26
+ private
27
+
28
+ # Private: check if the question and the author have the same organization
29
+ def author_and_question_same_organization
30
+ return if !question || !author
31
+ errors.add(:question, :invalid) unless author.organization == question.organization
32
+ end
24
33
  end
25
34
  end
26
35
  end
@@ -1,6 +1,7 @@
1
1
  <% content_for :secondary_nav do %>
2
2
  <div class="secondary-nav secondary-nav--subnav">
3
3
  <ul>
4
+ <%= public_page_link decidim_consultations.consultation_path(current_consultation) %>
4
5
  <% if allowed_to? :update, :consultation, consultation: current_consultation %>
5
6
  <li <% if is_active_link?(decidim_admin_consultations.edit_consultation_path(current_consultation)) %> class="is-active" <% end %>>
6
7
  <%= aria_selected_link_to t("info", scope: "decidim.admin.menu.consultations_submenu"),
@@ -1,6 +1,7 @@
1
1
  <% content_for :secondary_nav do %>
2
2
  <div class="secondary-nav secondary-nav--subnav">
3
3
  <ul>
4
+ <%= public_page_link decidim_consultations.consultation_path(current_participatory_space.consultation) %>
4
5
  <% if allowed_to?(:update, :consultation, consultation: current_participatory_space.consultation) %>
5
6
  <li <% if is_active_link?(decidim_admin_consultations.edit_consultation_path(current_participatory_space.consultation)) %> class="is-active" <% end %>>
6
7
  <%= aria_selected_link_to t("consultation", scope: "decidim.admin.menu.questions_submenu"),
@@ -174,6 +174,10 @@ ca:
174
174
  questions: Preguntes
175
175
  responses: Respostes
176
176
  consultations:
177
+ admin:
178
+ content_blocks:
179
+ highlighted_consultations:
180
+ max_results: Quantitat màxima d'elements que es mostraran
177
181
  consultation:
178
182
  start_voting_date: Comença la votació
179
183
  view_results: Veure resultats
@@ -184,6 +188,9 @@ ca:
184
188
  label: 'Ordena les consultes per:'
185
189
  random: Aleatori
186
190
  recent: Més recent
191
+ content_blocks:
192
+ highlighted_consultations:
193
+ name: Consultes destacades
187
194
  count:
188
195
  title:
189
196
  one: "%{count} consulta"
@@ -204,6 +211,18 @@ ca:
204
211
  title: Preguntes de %{scope_name}
205
212
  index:
206
213
  title: Consultes
214
+ last_activity:
215
+ new_consultation: Nova consulta
216
+ new_question_at_html: "<span>Nova pregunta a %{link}</span>"
217
+ pages:
218
+ home:
219
+ highlighted_consultations:
220
+ active_consultations: Consultes actives
221
+ see_all_consultations: Veure totes les consultes
222
+ voting_ends_in:
223
+ one: La votació finalitza <strong>demà</strong>
224
+ other: La votació finalitza en <strong>%{count} dies</strong>
225
+ voting_ends_today: La votació acaba <strong>avui</strong>
207
226
  question:
208
227
  take_part: Participar
209
228
  view_results: Veure resultats
@@ -174,6 +174,10 @@ de:
174
174
  questions: Fragen
175
175
  responses: Antworten
176
176
  consultations:
177
+ admin:
178
+ content_blocks:
179
+ highlighted_consultations:
180
+ max_results: Maximale Anzahl der Elemente, die angezeigt werden sollen
177
181
  consultation:
178
182
  start_voting_date: Die Abstimmung beginnt
179
183
  view_results: Ergebnisse anzeigen
@@ -184,6 +188,9 @@ de:
184
188
  label: 'Sortieren Sie die Konsultationen nach:'
185
189
  random: Zufällig
186
190
  recent: Neueste
191
+ content_blocks:
192
+ highlighted_consultations:
193
+ name: Hervorgehobene Konsultationen
187
194
  count:
188
195
  title:
189
196
  one: "%{count} Beratung"
@@ -204,6 +211,18 @@ de:
204
211
  title: Fragen von %{scope_name}
205
212
  index:
206
213
  title: Konsultationen
214
+ last_activity:
215
+ new_consultation: Neue Konsultation
216
+ new_question_at_html: "<span>Neue Frage bei %{link}</span>"
217
+ pages:
218
+ home:
219
+ highlighted_consultations:
220
+ active_consultations: Aktive Beratungen
221
+ see_all_consultations: Sehen Sie alle Konsultationen
222
+ voting_ends_in:
223
+ one: Die Abstimmung endet <strong>morgen</strong>
224
+ other: Die Abstimmung endet in <strong>%{count} Tagen</strong>
225
+ voting_ends_today: Die Abstimmung endet <strong>heute</strong>
207
226
  question:
208
227
  take_part: Teilnehmen
209
228
  view_results: Ergebnisse anzeigen
@@ -175,6 +175,10 @@ en:
175
175
  questions: Questions
176
176
  responses: Responses
177
177
  consultations:
178
+ admin:
179
+ content_blocks:
180
+ highlighted_consultations:
181
+ max_results: Maximum amount of elements to show
178
182
  consultation:
179
183
  start_voting_date: Voting begins
180
184
  view_results: View results
@@ -185,6 +189,9 @@ en:
185
189
  label: 'Sort consultations by:'
186
190
  random: Random
187
191
  recent: Most recent
192
+ content_blocks:
193
+ highlighted_consultations:
194
+ name: Highlighted consultations
188
195
  count:
189
196
  title:
190
197
  one: "%{count} consultation"
@@ -205,6 +212,18 @@ en:
205
212
  title: Questions from %{scope_name}
206
213
  index:
207
214
  title: Consultations
215
+ last_activity:
216
+ new_consultation: New consultation
217
+ new_question_at_html: "<span>New question at %{link}</span>"
218
+ pages:
219
+ home:
220
+ highlighted_consultations:
221
+ active_consultations: Active consultations
222
+ see_all_consultations: See all consultations
223
+ voting_ends_in:
224
+ one: Voting ends <strong>tomorrow</strong>
225
+ other: Voting ends in <strong>%{count} days</strong>
226
+ voting_ends_today: Voting ends <strong>today</strong>
208
227
  question:
209
228
  take_part: Take part
210
229
  view_results: View results
@@ -174,6 +174,10 @@ es-PY:
174
174
  questions: Preguntas
175
175
  responses: Respuestas
176
176
  consultations:
177
+ admin:
178
+ content_blocks:
179
+ highlighted_consultations:
180
+ max_results: Cantidad máxima de elementos para mostrar
177
181
  consultation:
178
182
  start_voting_date: Empieza la votación
179
183
  view_results: Ver resultados
@@ -184,6 +188,9 @@ es-PY:
184
188
  label: 'Ordenar consultas por:'
185
189
  random: Aleatorio
186
190
  recent: Más reciente
191
+ content_blocks:
192
+ highlighted_consultations:
193
+ name: Consultas destacadas
187
194
  count:
188
195
  title:
189
196
  one: "%{count} consulta"
@@ -204,6 +211,18 @@ es-PY:
204
211
  title: Preguntas de %{scope_name}
205
212
  index:
206
213
  title: Consultas
214
+ last_activity:
215
+ new_consultation: Nueva consulta
216
+ new_question_at_html: "<span>Nueva pregunta en %{link}</span>"
217
+ pages:
218
+ home:
219
+ highlighted_consultations:
220
+ active_consultations: Consultas activas
221
+ see_all_consultations: Ver todas las consultas
222
+ voting_ends_in:
223
+ one: La votación termina <strong>mañana</strong>
224
+ other: La votación termina en <strong>%{count} días</strong>
225
+ voting_ends_today: La votación finaliza hoy <strong></strong>
207
226
  question:
208
227
  take_part: Participar
209
228
  view_results: Ver resultados
@@ -174,6 +174,10 @@ es:
174
174
  questions: Preguntas
175
175
  responses: Respuestas
176
176
  consultations:
177
+ admin:
178
+ content_blocks:
179
+ highlighted_consultations:
180
+ max_results: Cantidad máxima de elementos para mostrar
177
181
  consultation:
178
182
  start_voting_date: Empieza la votación
179
183
  view_results: Ver resultados
@@ -184,6 +188,9 @@ es:
184
188
  label: 'Ordenar consultas por:'
185
189
  random: Aleatorio
186
190
  recent: Más reciente
191
+ content_blocks:
192
+ highlighted_consultations:
193
+ name: Consultas destacadas
187
194
  count:
188
195
  title:
189
196
  one: "%{count} consulta"
@@ -204,6 +211,18 @@ es:
204
211
  title: Preguntas de %{scope_name}
205
212
  index:
206
213
  title: Consultas
214
+ last_activity:
215
+ new_consultation: Nueva consulta
216
+ new_question_at_html: "<span>Nueva pregunta en %{link}</span>"
217
+ pages:
218
+ home:
219
+ highlighted_consultations:
220
+ active_consultations: Consultas activas
221
+ see_all_consultations: Ver todas las consultas
222
+ voting_ends_in:
223
+ one: La votación finaliza <strong>mañana</strong>
224
+ other: La votación finaliza en <strong>%{count} días</strong>
225
+ voting_ends_today: La votación finaliza hoy <strong></strong>
207
226
  question:
208
227
  take_part: Participar
209
228
  view_results: Ver resultados
@@ -174,6 +174,10 @@ eu:
174
174
  questions: Galderak
175
175
  responses: Erantzunak
176
176
  consultations:
177
+ admin:
178
+ content_blocks:
179
+ highlighted_consultations:
180
+ max_results: Erakusteko elementu gehienen kopurua
177
181
  consultation:
178
182
  start_voting_date: Botoa hasten da
179
183
  view_results: Ikusi emaitzak
@@ -184,6 +188,9 @@ eu:
184
188
  label: 'Ordenatu kontsultak honela:'
185
189
  random: Random
186
190
  recent: Berrienak
191
+ content_blocks:
192
+ highlighted_consultations:
193
+ name: Nabarmendutako kontsultak
187
194
  count:
188
195
  title:
189
196
  one: "%{count} kontsulta"
@@ -204,6 +211,18 @@ eu:
204
211
  title: '%{scope_name}galdera'
205
212
  index:
206
213
  title: kontsultak
214
+ last_activity:
215
+ new_consultation: Kontsulta berria
216
+ new_question_at_html: "<span>Galdera berria %{link}</span>"
217
+ pages:
218
+ home:
219
+ highlighted_consultations:
220
+ active_consultations: Aholkularitza aktiboak
221
+ see_all_consultations: Ikusi kontsulta guztiak
222
+ voting_ends_in:
223
+ one: Botoak <strong>amaitzen dira</strong>
224
+ other: Bozketa amaitzen <strong>%{count} egun</strong>
225
+ voting_ends_today: Botoak <strong>amaitzen dira gaur</strong>
207
226
  question:
208
227
  take_part: Parte hartu
209
228
  view_results: Ikusi emaitzak
@@ -174,6 +174,10 @@ fi:
174
174
  questions: Kysymykset
175
175
  responses: Vastaukset
176
176
  consultations:
177
+ admin:
178
+ content_blocks:
179
+ highlighted_consultations:
180
+ max_results: Näytettävien elementtien enimmäismäärä
177
181
  consultation:
178
182
  start_voting_date: Äänestyksen alkamisajankohta
179
183
  view_results: Näytä tulokset
@@ -184,6 +188,9 @@ fi:
184
188
  label: 'Lajittele kuulemiset:'
185
189
  random: Sattumanvarainen järjestys
186
190
  recent: Viimeisin ensin
191
+ content_blocks:
192
+ highlighted_consultations:
193
+ name: Tärkeimmät kuulemiset
187
194
  count:
188
195
  title:
189
196
  one: "%{count} kuuleminen"
@@ -204,6 +211,18 @@ fi:
204
211
  title: Kysymykset teemasta %{scope_name}
205
212
  index:
206
213
  title: Kuulemiset
214
+ last_activity:
215
+ new_consultation: Uusi kuuleminen
216
+ new_question_at_html: "<span>Uusi kysymys osoitteessa %{link}</span>"
217
+ pages:
218
+ home:
219
+ highlighted_consultations:
220
+ active_consultations: Aktiiviset kuulemiset
221
+ see_all_consultations: Katso kaikki kuulemiset
222
+ voting_ends_in:
223
+ one: Äänestys päättyy <strong>huomenna</strong>
224
+ other: Äänestys päättyy <strong>%{count} päivän</strong> päästä
225
+ voting_ends_today: Äänestys päättyy <strong>tänään</strong>
207
226
  question:
208
227
  take_part: Osallistu
209
228
  view_results: Näytä tulokset