decidim-initiatives 0.27.4 → 0.27.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. checksums.yaml +4 -4
  2. data/app/cells/decidim/initiatives/content_blocks/highlighted_initiatives/show.erb +2 -2
  3. data/app/controllers/decidim/initiatives/widgets_controller.rb +15 -1
  4. data/app/events/decidim/initiatives/admin/initiative_sent_to_technical_validation_event.rb +1 -1
  5. data/app/events/decidim/initiatives/approve_membership_request_event.rb +1 -4
  6. data/app/events/decidim/initiatives/create_initiative_event.rb +1 -4
  7. data/app/events/decidim/initiatives/initiative_sent_to_technical_validation_event.rb +1 -1
  8. data/app/events/decidim/initiatives/revoke_membership_request_event.rb +1 -4
  9. data/app/events/decidim/initiatives/spawn_committee_request_event.rb +1 -4
  10. data/app/helpers/decidim/initiatives/application_helper.rb +2 -2
  11. data/app/models/decidim/initiative.rb +1 -6
  12. data/app/packs/stylesheets/decidim/initiatives/print-initiative.scss +16 -0
  13. data/app/permissions/decidim/initiatives/permissions.rb +10 -0
  14. data/app/views/decidim/initiatives/create_initiative/select_initiative_type.html.erb +1 -1
  15. data/app/views/decidim/initiatives/initiatives/_result.html.erb +2 -2
  16. data/app/views/decidim/initiatives/initiatives/_tags.html.erb +3 -3
  17. data/app/views/decidim/initiatives/initiatives/print.html.erb +1 -1
  18. data/app/views/decidim/initiatives/initiatives/show.html.erb +3 -1
  19. data/config/locales/ar.yml +4 -0
  20. data/config/locales/bg.yml +143 -0
  21. data/config/locales/ca.yml +13 -13
  22. data/config/locales/cs.yml +3 -3
  23. data/config/locales/de.yml +19 -19
  24. data/config/locales/el.yml +1 -0
  25. data/config/locales/es-MX.yml +5 -5
  26. data/config/locales/es-PY.yml +5 -5
  27. data/config/locales/es.yml +12 -12
  28. data/config/locales/eu.yml +125 -76
  29. data/config/locales/fi-plain.yml +1 -1
  30. data/config/locales/fi.yml +1 -1
  31. data/config/locales/fr-CA.yml +8 -3
  32. data/config/locales/fr.yml +8 -3
  33. data/config/locales/gl.yml +2 -0
  34. data/config/locales/he-IL.yml +1 -0
  35. data/config/locales/hu.yml +11 -4
  36. data/config/locales/id-ID.yml +1 -0
  37. data/config/locales/is-IS.yml +3 -0
  38. data/config/locales/ja.yml +4 -4
  39. data/config/locales/lb.yml +17 -2
  40. data/config/locales/lt.yml +24 -2
  41. data/config/locales/lv.yml +1 -0
  42. data/config/locales/nl.yml +1 -0
  43. data/config/locales/pl.yml +28 -0
  44. data/config/locales/pt-BR.yml +31 -3
  45. data/config/locales/ru.yml +3 -0
  46. data/config/locales/sk.yml +2 -1
  47. data/config/locales/sq-AL.yml +1 -0
  48. data/config/locales/sv.yml +4 -0
  49. data/config/locales/th-TH.yml +1 -0
  50. data/config/locales/tr-TR.yml +0 -1
  51. data/config/locales/uk.yml +3 -0
  52. data/config/locales/zh-CN.yml +1 -1
  53. data/config/locales/zh-TW.yml +0 -2
  54. data/decidim-initiatives.gemspec +38 -0
  55. data/lib/decidim/initiatives/admin_engine.rb +1 -1
  56. data/lib/decidim/initiatives/test/factories.rb +51 -28
  57. data/lib/decidim/initiatives/version.rb +1 -1
  58. metadata +23 -20
  59. data/config/environment.rb +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 59d295e16fde2eada468ccb94da312ecf5a2b48154627275645bd2f4f20943fa
4
- data.tar.gz: 86e6dc47360ed063ef296422bf44c61a141ce82f68d33fbe49a0ed0fff5d1a11
3
+ metadata.gz: aa06894bfd1ff08e4b4eb336e99135564ced07159b8b4c5920c8280d927b9790
4
+ data.tar.gz: df3b5a7b35d9df334699af64ac7b52d63cc24541ce58620ec2920f1027bb4caf
5
5
  SHA512:
6
- metadata.gz: 5c4f7bde0ad8c721a92012e4a4a30847dbb6e92c0ade84334db0e0d3250b018bdec64024bcb68a593b9f80333c1e931f2ff4b8d8d5065d9e006bcd1b740db168
7
- data.tar.gz: 837ab0a2cda44e0e9b673bc2812e565c5bb8ef53cc7eeedd3b6921259eb71ed7305481b02df5ce06957c9846d10a5a0829053a8724f42ab91e303ec086627864
6
+ metadata.gz: 3df718f8e43189b0a6177d3a1f9a59253a91cbb99a0fa963eacfa66fa92d9b7702415b08a44e5d4a05d422c726655ac66532795a0a1563fa3e98ffaad60dca9e
7
+ data.tar.gz: 0e5fc0b018760ca882ab462ebb1bc80ecc1454af36b93f99feac96d57e48722c63e1152e7f86afacde02b0e6dffebb730b983a6ceb816e09e3d94ec91432ff83
@@ -8,9 +8,9 @@
8
8
  <%= link_to decidim_initiatives.initiative_path(initiative), class: "card card--initiative card--mini" do %>
9
9
  <div aria-hidden="true" class="card__image-top"
10
10
  style="background-image:url('<%= initiative.banner_image.path %>')"></div>
11
- <span class="show-for-sr"><%= translated_attribute initiative.title %></span>
11
+ <span class="show-for-sr"><%= decidim_escape_translated initiative.title %></span>
12
12
  <div class="card__content">
13
- <span class="card__title card__link"><%= decidim_html_escape(translated_attribute(initiative.title)) %></span>
13
+ <span class="card__title card__link"><%= decidim_escape_translated(initiative.title) %></span>
14
14
  </div>
15
15
  <% end %>
16
16
  </div>
@@ -12,10 +12,20 @@ module Decidim
12
12
 
13
13
  include NeedsInitiative
14
14
 
15
+ def show
16
+ enforce_permission_to :embed, :participatory_space, current_participatory_space: model if model
17
+
18
+ super
19
+ end
20
+
15
21
  private
16
22
 
17
23
  def model
18
- @model ||= current_initiative
24
+ @model ||= if current_initiative.created? || current_initiative.validating? || current_initiative.discarded?
25
+ nil
26
+ else
27
+ current_initiative
28
+ end
19
29
  end
20
30
 
21
31
  def current_participatory_space
@@ -25,6 +35,10 @@ module Decidim
25
35
  def iframe_url
26
36
  @iframe_url ||= initiative_widget_url(model)
27
37
  end
38
+
39
+ def permission_class_chain
40
+ ::Decidim.permissions_registry.chain_for(::Decidim::Initiatives::ApplicationController)
41
+ end
28
42
  end
29
43
  end
30
44
  end
@@ -13,7 +13,7 @@ module Decidim
13
13
  end
14
14
 
15
15
  def admin_initiative_url
16
- decidim_admin_initiatives.edit_initiative_url(resource, resource.mounted_params)
16
+ EngineRouter.admin_proxy(resource).edit_initiative_url(resource)
17
17
  end
18
18
  end
19
19
  end
@@ -2,10 +2,7 @@
2
2
 
3
3
  module Decidim
4
4
  module Initiatives
5
- class ApproveMembershipRequestEvent < Decidim::Events::BaseEvent
6
- include Decidim::Events::EmailEvent
7
- include Decidim::Events::NotificationEvent
8
-
5
+ class ApproveMembershipRequestEvent < Decidim::Events::SimpleEvent
9
6
  def email_subject
10
7
  I18n.t(
11
8
  "decidim.initiatives.events.approve_membership_request.email_subject",
@@ -2,10 +2,7 @@
2
2
 
3
3
  module Decidim
4
4
  module Initiatives
5
- class CreateInitiativeEvent < Decidim::Events::BaseEvent
6
- include Decidim::Events::EmailEvent
7
- include Decidim::Events::NotificationEvent
8
-
5
+ class CreateInitiativeEvent < Decidim::Events::SimpleEvent
9
6
  def email_subject
10
7
  I18n.t(
11
8
  "decidim.initiatives.events.create_initiative_event.email_subject",
@@ -12,7 +12,7 @@ module Decidim
12
12
  end
13
13
 
14
14
  def admin_initiative_url
15
- decidim_admin_initiatives.edit_initiative_url(resource, resource.mounted_params)
15
+ EngineRouter.admin_proxy(resource).edit_initiative_url(resource)
16
16
  end
17
17
  end
18
18
  end
@@ -2,10 +2,7 @@
2
2
 
3
3
  module Decidim
4
4
  module Initiatives
5
- class RevokeMembershipRequestEvent < Decidim::Events::BaseEvent
6
- include Decidim::Events::EmailEvent
7
- include Decidim::Events::NotificationEvent
8
-
5
+ class RevokeMembershipRequestEvent < Decidim::Events::SimpleEvent
9
6
  def email_subject
10
7
  I18n.t(
11
8
  "decidim.initiatives.events.revoke_membership_request.email_subject",
@@ -2,10 +2,7 @@
2
2
 
3
3
  module Decidim
4
4
  module Initiatives
5
- class SpawnCommitteeRequestEvent < Decidim::Events::BaseEvent
6
- include Decidim::Events::EmailEvent
7
- include Decidim::Events::NotificationEvent
8
-
5
+ class SpawnCommitteeRequestEvent < Decidim::Events::SimpleEvent
9
6
  def email_subject
10
7
  I18n.t(
11
8
  "decidim.initiatives.events.spawn_committee_request_event.email_subject",
@@ -56,7 +56,7 @@ module Decidim
56
56
  def filter_types_values
57
57
  types_values = Decidim::InitiativesType.where(organization: current_organization).map do |type|
58
58
  TreeNode.new(
59
- TreePoint.new(type.id.to_s, type.title[I18n.locale.to_s])
59
+ TreePoint.new(type.id.to_s, decidim_escape_translated(type.title))
60
60
  )
61
61
  end
62
62
 
@@ -92,7 +92,7 @@ module Decidim
92
92
  def filter_areas_and_types(area_types)
93
93
  area_types.map do |area_type|
94
94
  TreeNode.new(
95
- TreePoint.new(area_type.area_ids.join("_"), area_type.name[I18n.locale.to_s]),
95
+ TreePoint.new(area_type.area_ids.join("_"), decidim_escape_translated(area_type.name)),
96
96
  area_type.areas.map do |area|
97
97
  TreePoint.new(area.id.to_s, area.name[I18n.locale.to_s])
98
98
  end
@@ -100,12 +100,7 @@ module Decidim
100
100
  scope :order_by_most_recent, -> { order(created_at: :desc) }
101
101
  scope :order_by_supports, -> { order(Arel.sql("(coalesce((online_votes->>'total')::int,0) + coalesce((offline_votes->>'total')::int,0)) DESC")) }
102
102
  scope :order_by_most_recently_published, -> { order(published_at: :desc) }
103
- scope :order_by_most_commented, lambda {
104
- select("decidim_initiatives.*")
105
- .left_joins(:comments)
106
- .group("decidim_initiatives.id")
107
- .order(Arel.sql("count(decidim_comments_comments.id) desc"))
108
- }
103
+ scope :order_by_most_commented, -> { order(comments_count: :desc) }
109
104
  scope :future_spaces, -> { none }
110
105
  scope :past_spaces, -> { closed }
111
106
 
@@ -114,6 +114,22 @@
114
114
  display: none;
115
115
  }
116
116
 
117
+ h3.print-section-title{
118
+ display: none;
119
+ }
120
+
121
+ .print-button{
122
+ display: none;
123
+ }
124
+
125
+ .omnipresent-banner{
126
+ display: none;
127
+ }
128
+
129
+ .decidim-accessibility-indicator{
130
+ display: none;
131
+ }
132
+
117
133
  .main-nav{
118
134
  display: none;
119
135
  }
@@ -11,6 +11,7 @@ module Decidim
11
11
  # Non-logged users permissions
12
12
  list_public_initiatives?
13
13
  read_public_initiative?
14
+ embed_public_initiative?
14
15
  search_initiative_types_and_scopes?
15
16
  request_membership?
16
17
 
@@ -57,6 +58,15 @@ module Decidim
57
58
  disallow!
58
59
  end
59
60
 
61
+ def embed_public_initiative?
62
+ return unless [:initiative, :participatory_space].include?(permission_action.subject) &&
63
+ permission_action.action == :embed
64
+
65
+ return disallow! if initiative.created? || initiative.validating? || initiative.discarded?
66
+
67
+ allow!
68
+ end
69
+
60
70
  def search_initiative_types_and_scopes?
61
71
  return unless permission_action.action == :search
62
72
  return unless [:initiative_type, :initiative_type_scope, :initiative_type_signature_types].include?(permission_action.subject)
@@ -36,7 +36,7 @@
36
36
  <div class="tabs-panel <%= "is-active" if type == default_type %>" id="<%= "initiativeType#{type.id}" %>">
37
37
  <h2 class="section-heading"><%= translated_attribute(type.title) %></h2>
38
38
  <div>
39
- <%= raw translated_attribute type.description %>
39
+ <%= decidim_escape_translated(type.description) %>
40
40
  </div>
41
41
  <br>
42
42
  <%= decidim_form_for(@form, url: next_wizard_path, method: :put, html: { id: "new_initiative_#{type.id}", class: "form select-initiative_type-form" }) do |f| %>
@@ -5,9 +5,9 @@
5
5
  <h5><%= t("decidim.initiatives.initiatives.result.answer_title") %>:</h5>
6
6
  <p>
7
7
  <% if initiative.answer_url.present? %>
8
- <a href="<%= initiative.answer_url %>" target="_blank">
8
+ <%= link_to initiative.answer_url, target: "_blank", rel: "noopener noreferrer" do %>
9
9
  <%= decidim_sanitize_editor translated_attribute initiative.answer %>
10
- </a>
10
+ <% end %>
11
11
  <% else %>
12
12
  <%= decidim_sanitize_editor translated_attribute initiative.answer %>
13
13
  <% end %>
@@ -1,7 +1,7 @@
1
1
  <ul class="tags tags--initiative">
2
- <li><%= link_to translated_attribute(resource.type.title), initiatives_path(filter: { with_any_type: [resource.type.id] }) %></li>
3
- <li><%= link_to translated_attribute(resource.scope_name), initiatives_path(filter: { with_any_scope: [resource.scope&.id] }) %></li>
2
+ <li><%= link_to decidim_escape_translated(resource.type.title).html_safe, initiatives_path(filter: { with_any_type: [resource.type.id] }) %></li>
3
+ <li><%= link_to decidim_escape_translated(resource.scope_name), initiatives_path(filter: { with_any_scope: [resource.scope&.id] }) %></li>
4
4
  <% if resource.area %>
5
- <li><%= link_to translated_attribute(resource.area_name), initiatives_path(filter: { with_any_area: [resource.area.id] }) %></li>
5
+ <li><%= link_to decidim_escape_translated(resource.area_name), initiatives_path(filter: { with_any_area: [resource.area.id] }) %></li>
6
6
  <% end %>
7
7
  </ul>
@@ -153,6 +153,6 @@
153
153
  <%= t ".legal_text" %>
154
154
  </p>
155
155
 
156
- <a href="#" onclick="window.print();return false;" class="button expanded"><%= t ".print" %></a>
156
+ <a href="#" onclick="window.print();return false;" class="button expanded print-button"><%= t ".print" %></a>
157
157
  <%= stylesheet_pack_tag "decidim_initiatives_print", media: "all" %>
158
158
  </div>
@@ -65,7 +65,9 @@ edit_link(
65
65
  </div>
66
66
  <% end %>
67
67
  <%= render partial: "decidim/shared/share_modal" %>
68
- <%= embed_modal_for initiative_widget_url(current_initiative, format: :js) %>
68
+ <% if allowed_to? :embed, :initiative, initiative: current_initiative %>
69
+ <%= embed_modal_for initiative_widget_url(current_initiative, format: :js) %>
70
+ <% end %>
69
71
  <%= resource_reference(current_initiative) %>
70
72
  <%= resource_version(current_initiative, versions_path: initiative_versions_path(current_initiative)) %>
71
73
  </div>
@@ -63,7 +63,9 @@ ar:
63
63
  components: المكونات
64
64
  information: معلومات
65
65
  initiatives: المبادرات
66
+ initiatives_settings: الإعدادات
66
67
  initiatives_types: أنواع المبادرة
68
+ moderations: الإشراف
67
69
  models:
68
70
  initiatives:
69
71
  fields:
@@ -173,6 +175,7 @@ ar:
173
175
  success: تم إرسال المبادرة إلى التحقق الفني
174
176
  update: تحديث
175
177
  form:
178
+ settings: الإعدادات
176
179
  title: معلومات عامة
177
180
  index:
178
181
  actions_title: عمل
@@ -337,6 +340,7 @@ ar:
337
340
  many: و %{count} المزيد من الناس
338
341
  other: و %{count} المزيد من الناس
339
342
  committee_members:
343
+ confirm_revoke: هل أنت واثق؟
340
344
  revoke: سحب
341
345
  count:
342
346
  title:
@@ -6,9 +6,152 @@ bg:
6
6
  decidim_user_group_id: Автор
7
7
  description: Описание
8
8
  offline_votes: Лични подписи
9
+ errors:
10
+ models:
11
+ initiative:
12
+ attributes:
13
+ attachment:
14
+ title: Заглавието не трябва да бъде празно
15
+ activerecord:
16
+ models:
17
+ decidim/initiative:
18
+ one: Инициатива
19
+ other: Инициативи
9
20
  decidim:
21
+ admin:
22
+ initiatives_settings:
23
+ update:
24
+ error: Възникна грешка
25
+ success: Настройките на инициативите са актуализирани успешно
26
+ gamification:
27
+ badges:
28
+ initiatives:
29
+ description_own: Публикували сте %{score} инициативи.
30
+ unearned_another: Този участник все още няма публикувани инициативи.
10
31
  initiatives:
32
+ admin:
33
+ committee_requests:
34
+ index:
35
+ invite_to_committee_help: Споделете този линк, за да поканите други участници в промоторския комитет
36
+ no_members_yet: Няма участници в промоторския комитет
37
+ initiatives:
38
+ edit:
39
+ success: Инициативата е изпратена за техническа валидация
40
+ update:
41
+ error: Възникна грешка
42
+ success: Инициативата беше актуализирана успешно
43
+ initiatives_type_scopes:
44
+ create:
45
+ error: Възникна грешка
46
+ success: Създаден е нов обхват за дадения тип инициатива
47
+ destroy:
48
+ success: Обхватът беше премахнат успешно
49
+ edit:
50
+ destroy: Изтрий
51
+ update:
52
+ error: Възникна грешка
53
+ success: Обхватът беше актуализиран успешно
54
+ initiatives_types:
55
+ create:
56
+ error: Възникна грешка
57
+ success: Успешно е създаден нов тип инициатива
58
+ destroy:
59
+ success: Типът инициатива беше премахнат успешно
60
+ edit:
61
+ destroy: Изтрий
62
+ update:
63
+ error: Възникна грешка
64
+ success: Типът инициатива беше актуализиран успешно
11
65
  application_helper:
12
66
  filter_state_values:
13
67
  closed: Затворен
14
68
  open: Отворен
69
+ committee_requests:
70
+ new:
71
+ help_text: На път сте да заявите членство в промоторския комитет на тази инициатива
72
+ create_initiative:
73
+ fill_data:
74
+ decidim_user_group_id_help: Не е възможно да се промени авторството на инициативата след създаването и.
75
+ finish_help:
76
+ access_reminder: Можете да достъпите инициативите си чрез филтъра %{link} на страницата Инициативи.
77
+ previous_form:
78
+ help: В какво се състои инициативата? Напишете заглавието и описанието. Препоръчваме кратко заглавие и описание, което да включва предложеното решение.
79
+ show_similar_initiatives:
80
+ compare_help: Ако някоя от следните инициативи е подобна на Вашата, препоръчваме да се подпишете в нея. Така ще има повече възможности за осъществяването на предложението Ви.
81
+ continue: Моята инициатива е различна
82
+ form:
83
+ delete_attachment: Изтрий
84
+ index:
85
+ uninitialized: Инициативите все още не са конфигурирани от администратор
86
+ initiative_signatures:
87
+ fill_personal_data:
88
+ date_select:
89
+ day: Ден
90
+ month: Месец
91
+ year: Година
92
+ help: Моля, попълнете личните си данни в следните полета, за да подпишете инициативата
93
+ sms_phone_number:
94
+ help: Попълнете потвърдения си телефонен номер във формуляра, за да заявите вашия код за потвърждение
95
+ initiative_votes:
96
+ create:
97
+ invalid: Предоставената информация за подписване на инициативата не е валидна
98
+ success_html: Поздравления! Подписахте успешно инициативата <strong> %{title}</strong>
99
+ sms_code:
100
+ invalid: Кодът Ви за потвърждение не съвпада с нашия. Моля, проверете отново съобщението, което Ви изпратихме със SMS.
101
+ initiatives:
102
+ author:
103
+ deleted: Изтрито
104
+ committee_members:
105
+ invite_to_committee_help: Споделете този линк, за да поканите други участници в промоторския комитет
106
+ no_members_yet: Няма участници в промоторския комитет
107
+ filters:
108
+ search: Търсене
109
+ filters_small_view:
110
+ close_modal: Затвори прозореца
111
+ filter: Филтър
112
+ filter_by: Филтрирай по
113
+ unfold: Разгъване
114
+ index_header:
115
+ not_authorized:
116
+ authorizations_page: Преглед на оторизациите
117
+ close: Затвори
118
+ explanation: Трябва да преминете проверка, за да създадете нова инициатива.
119
+ title: Изисква се оторизация
120
+ result:
121
+ answer_title: На тази инициатива е отговорено
122
+ show:
123
+ any_vote_method: За тази гражданска инициатива се събират подписи както онлайн, така и лично.
124
+ follow_description: Получавайте известия, когато има новини за тази инициатива
125
+ offline_method: За тази гражданска инициатива се събират подписи само лично.
126
+ print: Отпечатай инициативата
127
+ vote_cabin:
128
+ supports_required: "Необходими са %{total_supports} подписа"
129
+ votes_count:
130
+ most_popular_initiative: Най-популярна инициатива
131
+ need_more_votes: Има нужда от повече подписи
132
+ signature_interval:
133
+ title: Период за събиране на подписи
134
+ update:
135
+ error: Възникна грешка
136
+ success: Инициативата беше актуализирана успешно
137
+ versions:
138
+ shared:
139
+ back_to_resource: Връщане назад към инициативата
140
+ layouts:
141
+ decidim:
142
+ initiative_creation_header:
143
+ previous_form: Начало
144
+ show_similar_initiatives: Сравнете
145
+ step: Стъпка %{current} от общо %{total}
146
+ title: Създаване на нова инициатива
147
+ initiative_header:
148
+ initiative_menu_item: Инициатива
149
+ initiative_signature_creation_header:
150
+ finished: Подписът на инициативата е създаден
151
+ see_steps: вижте стъпките
152
+ select_identity: Изберете идентичност
153
+ step: Стъпка %{current} от общо %{total}
154
+ initiatives:
155
+ initiative:
156
+ check: Прегледайте
157
+ check_and_support: Прегледайте и се подпишете
@@ -153,33 +153,33 @@ ca:
153
153
  admin:
154
154
  initiative_sent_to_technical_validation:
155
155
  email_intro: La iniciativa "%{resource_title}" s'ha enviat a validació tècnica. Comprova-ho a través del <a href="%{admin_initiative_url}">taullel d'administració</a>
156
- email_outro: Has rebut aquesta notificació perquè ets una de les administradores de la plataforma.
156
+ email_outro: Has rebut aquesta notificació perquè admnistres la plataforma.
157
157
  email_subject: La iniciativa %{resource_title} ha sol·licitat validació tècnica.
158
158
  notification_title: La iniciativa "%{resource_title}" s'ha enviat a validació tècnica. Comprova-ho a través del <a href="%{admin_initiative_path}">taullel d'administració</a>
159
159
  initiative_extended:
160
160
  email_intro: La data de finalització de recollida de signatures per a la iniciativa %{resource_title} s'ha ampliat!
161
- email_outro: Has rebut aquesta notificació perquè estàs seguint %{resource_title}. Pots deixar de rebre notificacions seguint l'enllaç anterior.
161
+ email_outro: Has rebut aquesta notificació perquè estàs seguint la iniciativa "%{resource_title}". Pots deixar de rebre notificacions seguint l'enllaç anterior.
162
162
  email_subject: S'ha ampliat la data de finalització de la recollida de signatura de la iniciativa!
163
163
  notification_title: El termini de recollida de signatures per a la iniciativa <a href="%{resource_path}">%{resource_title}</a> s'ha ampliat.
164
164
  initiative_sent_to_technical_validation:
165
165
  email_intro: La iniciativa "%{resource_title}" s'ha enviat a validació tècnica. Comprova-ho a través del <a href="%{admin_initiative_url}">taulell d'administració</a>
166
- email_outro: Has rebut aquesta notificació perquè ets una de les administradores de la plataforma.
166
+ email_outro: Has rebut aquesta notificació perquè admnistres la plataforma.
167
167
  email_subject: La iniciativa %{resource_title} ha sol·licitat validació tècnica.
168
168
  notification_title: La iniciativa "%{resource_title}" s'ha enviat a validació tècnica. Comprova-ho a través del <a href="%{admin_initiative_path}">taullel d'administració</a>
169
169
  milestone_completed:
170
170
  affected_user:
171
171
  email_intro: La teva iniciativa %{resource_title} ha aconseguit un %{percentage}% de les signatures necessàries!
172
- email_outro: Has rebut aquesta notificació perquè ets l'autora de la iniciativa %{resource_title}.
172
+ email_outro: Has rebut aquesta notificació perquè promous la iniciativa "%{resource_title}".
173
173
  email_subject: S'ha completat una nova fita!
174
174
  notification_title: La teva iniciativa <a href="%{resource_path}">%{resource_title}</a> ha aconseguit el %{percentage}% de les signatures.
175
175
  follower:
176
176
  email_intro: La iniciativa %{resource_title} ha aconseguit el %{percentage}% de les signatures!
177
- email_outro: Has rebut aquesta notificació perquè estàs seguint %{resource_title}. Pots deixar de rebre notificacions seguint l'enllaç anterior.
177
+ email_outro: Has rebut aquesta notificació perquè estàs seguint la inciativa "%{resource_title}". Pots deixar de rebre notificacions seguint l'enllaç anterior.
178
178
  email_subject: S'ha completat una nova fita!
179
179
  notification_title: La iniciativa <a href="%{resource_path}">%{resource_title}</a> ha aconseguit el %{percentage}% de les signatures.
180
180
  support_threshold_reached:
181
181
  email_intro: La iniciativa %{resource_title} ha arribat al llindar de signatures
182
- email_outro: Has rebut aquesta notificació perquè ets una de les administradores de la plataforma.
182
+ email_outro: Has rebut aquesta notificació perquè admnistres la plataforma.
183
183
  email_subject: Llindar de signatures aconseguit
184
184
  notification_title: La iniciativa <a href="%{resource_path}">%{resource_title}</a> ha arribat al llindar de signatures
185
185
  gamification:
@@ -301,8 +301,8 @@ ca:
301
301
  update: Actualitza
302
302
  form:
303
303
  authorizations: Configuració de l'autorització
304
- child_scope_threshold_enabled_help: 'Aquest ajust de configuració no admet les votacions sense connexió. Habilita els subàmbits i funciona amb un gestor d''autoritzacions que associa un àmbit a la participant. Assegura''t de seleccionar aquesta autorització, més avall a la configuració d''autoritzacions. Per a que funcioni, els àmbits han de configurar-se de forma jerárquica: 1 Pare - N fills. Per a més informació sobre com funciona aquesta configuració, <a href="https://docs.decidim.org/en/admin/spaces/initiatives/" target="_blank">veure la documentació sobre l''administració d''iniciatives</a>.'
305
- only_global_scope_enabled_help: Marca aquesta casella si has habilitat "Activar signatures per subàmbit" i vas configurar l'àmbit global com l'àmbit principal. En habilitar aquesta casella, la selecció del tipus d'iniciativa s'ometrà en l'assistent de creació d'iniciatives. Per a més informació sobre com funciona aquesta configuració, consulta aquest <a href="https://docs.decidim.org/en/admin/spaces/initiatives/" target="_blank">enllaç</a>.
304
+ child_scope_threshold_enabled_help: 'Aquest ajust de configuració no admet les votacions sense connexió. Aquest habilita els subàmbits i funciona amb un gestor d''autoritzacions que associa un àmbit a la participant. Assegura''t de seleccionar aquesta autorització, més avall a la configuració d''autoritzacions. Per a que funcioni, els àmbits han de configurar-se de forma jerárquica: 1 Pare - N fills. Per a més informació sobre com funciona aquesta configuració, consulta la <a href="https://docs.decidim.org/en/admin/spaces/initiatives/" target="_blank"> documentació sobre l''administració d''iniciatives</a>.'
305
+ only_global_scope_enabled_help: Marca aquesta casella si has habilitat "Activar signatures per subàmbit" i vas configurar l'àmbit global com l'àmbit principal. En habilitar aquesta casella, la selecció del tipus d'iniciativa s'ometrà en l'assistent de creació d'iniciatives. Per a més informació sobre com funciona aquesta configuració, consulta la <a href="https://docs.decidim.org/en/admin/spaces/initiatives/" target="_blank">documentació sobre l'administració d'iniciatives</a>.
306
306
  options: Opcions
307
307
  title: Informació general
308
308
  initiative_type_scopes:
@@ -416,27 +416,27 @@ ca:
416
416
  events:
417
417
  approve_membership_request:
418
418
  email_intro: "%{author_nickname} ha acceptat la teva sol·licitud per formar part de la comissió promotora de la iniciativa %{resource_title}."
419
- email_outro: 'Has rebut aquesta notificació perquè has sol·licitat formar part de la iniciativa %{resource_title}'
419
+ email_outro: 'Has rebut aquesta notificació perquè has sol·licitat formar part de la iniciativa: "%{resource_title}"'
420
420
  email_subject: "%{author_nickname} ha acceptat la teva sol·licitud per formar part de la comissió promotora"
421
421
  notification_title: <a href="%{author_profile_url}">%{author_nickname}</a> ha acceptat la teva sol·licitud per formar part de la comissió promotora per la següent iniciativa <a href="%{resource_url}">%{resource_title}</a>.
422
422
  create_initiative_event:
423
423
  email_intro: "%{author_name} %{author_nickname}, a qui segueixes, ha creat una nova iniciativa. Comprova-la i contribueix:"
424
- email_outro: Has rebut aquesta notificació perquè estàs seguint %{author_nickname}. Pots deixar de rebre notificacions seguint l'enllaç anterior.
424
+ email_outro: Has rebut aquesta notificació perquè estàs seguint a "%{author_nickname}". Pots deixar de rebre notificacions seguint l'enllaç anterior.
425
425
  email_subject: Nova iniciativa de %{author_nickname}
426
426
  notification_title: La iniciativa <a href="%{resource_path}">%{resource_title}</a> va ser creada per <a href="%{author_path}">%{author_name} %{author_nickname}</a>.
427
427
  endorse_initiative_event:
428
428
  email_intro: "%{author_name} %{author_nickname}, a qui segueixes, ha donat suport a la següent iniciativa. Potser vols contribuir a la conversa:"
429
- email_outro: Has rebut aquesta notificació perquè estàs seguint %{author_nickname}. Pots deixar de rebre notificacions seguint l'enllaç anterior.
429
+ email_outro: Has rebut aquesta notificació perquè estàs seguint a "%{author_nickname}". Pots deixar de rebre notificacions seguint l'enllaç anterior.
430
430
  email_subject: Iniciativa adherida per %{author_nickname}
431
431
  notification_title: La iniciativa <a href="%{resource_path}">%{resource_title}</a> va ser adherida per <a href="%{author_path}">%{author_name} %{author_nickname}</a>.
432
432
  revoke_membership_request:
433
433
  email_intro: "%{author_nickname} ha rebutjat la teva sol·licitud per formar part de la comissió promotora per la iniciativa %{resource_title}."
434
- email_outro: 'Has rebut aquesta notificació perquè has sol·licitat formar part de la iniciativa %{resource_title}.'
434
+ email_outro: 'Has rebut aquesta notificació perquè has sol·licitat formar part de la iniciativa: "%{resource_title}".'
435
435
  email_subject: "%{author_nickname} ha rebutjat la teva sol·licitud per formar part de la comissió promotora"
436
436
  notification_title: <a href="%{author_profile_url}">%{author_nickname}</a> ha rebutjat la teva sol·licitud per formar part de la comissió promotora per la següent iniciativa <a href="%{resource_url}">%{resource_title}</a>.
437
437
  spawn_committee_request_event:
438
438
  email_intro: "%{applicant_nickname} ha sol·licitat formar part de la comissió promotora de la teva iniciativa %{resource_title}. Per a acceptar o rebutjar la sol·licitud, vés al formulari d'edició de la teva iniciativa."
439
- email_outro: 'Has rebut aquesta notificació perquè ets l''autora de la iniciativa %{resource_title}'
439
+ email_outro: 'Has rebut aquesta notificació perquè promous la iniciativa: "%{resource_title}"'
440
440
  email_subject: "%{applicant_nickname} vol unir-se a la teva iniciativa"
441
441
  notification_title: <a href="%{applicant_profile_url}">%{applicant_nickname}</a> ha sol·licitat formar part de la comissió promotora de la teva iniciativa <a href="%{resource_url}">%{resource_title}</a>. Per acceptar-ho o rebutjar-ho fes clic <a href="%{resource_url}/edit">aquí</a>.
442
442
  form:
@@ -307,8 +307,8 @@ cs:
307
307
  update: Aktualizovat
308
308
  form:
309
309
  authorizations: Nastavení autorizace
310
- child_scope_threshold_enabled_help: 'Tento konfigurační příznak nepodporuje offline hlasování. Umožňuje podrozsahy a pracuje s obslužnou rutinou autorizace, která uživateli přiřazuje rozsah. Ujistěte se, že jste vybrali toto oprávnění níže v nastavení oprávnění. Aby to fungovalo, musí být rozsahy nakonfigurovány hierarchickým způsobem: 1 nadřazený N podřízený. Další informace o tom, jak tato konfigurace funguje, najdete na <a href="https://docs.decidim.org/en/admin/spaces/initiatives/" target="_blank">stránce dokumentace pro administraci iniciativ</a>.'
311
- only_global_scope_enabled_help: Zaškrtněte tuto poznámku, pokud jste povolili "Podřazená oblast působnosti" a nakonfigurovali globální rozsah jako vaši nadřazenou oblast působnosti. Povolením této možnosti bude výběr typu iniciativy přeskočeno v průvodci vytvořením iniciativy. Více informací o tom, jak tato konfigurace funguje, naleznete na tomto <a href="https://docs.decidim.org/en/admin/spaces/initiatives/" target="_blank">odkazu</a>.
310
+ child_scope_threshold_enabled_help: 'Tento příznak konfigurace nepodporuje offline hlasování. Umožňuje podřazené rozsahy a pracuje s autorizačním handlerem, který přiřazuje rozsah k uživateli. Ujistěte se, že jste zvolili toto autorizaci, níže v nastavení autorizace. Aby fungoval, je třeba nastavit rozsahy hierarchickým způsobem: 1 nadřazený - N podřazených. Více informací o tom, jak tato konfigurace funguje, naleznete v <a href="https://docs.decidim.org/en/admin/spaces/initiatives/" target="_blank">administrátorské dokumentaci</a>.'
311
+ only_global_scope_enabled_help: Zaškrtněte tento příznak, pokud jste povolili "Podřazený rozsah" a nakonfigurovali globální rozsah jako váš nadřazený rozsah. Povolením této možnosti bude výběr typu iniciativy přeskočeno v průvodci vytvořením iniciativy. Více informací o tom, jak funguje tato konfigurace, naleznete v tomto <a href="https://docs.decidim.org/en/admin/spaces/initiatives/" target="_blank">odkazu</a>.
312
312
  options: Možnosti
313
313
  title: Obecná informace
314
314
  initiative_type_scopes:
@@ -490,7 +490,7 @@ cs:
490
490
  other: a %{count} dalších lidí
491
491
  committee_members:
492
492
  approve: Schválit
493
- confirm_revoke: Jste si jist?
493
+ confirm_revoke: Jste si jisti?
494
494
  invite_to_committee_help: Sdílejte tento odkaz pro pozvání ostatních účastníků do propagačního výboru
495
495
  no_members_yet: V propagačním výboru nejsou žádní členové
496
496
  revoke: Zrušit