decidim-initiatives 0.21.0 → 0.22.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (126) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +22 -0
  3. data/app/assets/images/decidim/gamification/badges/initiatives.svg +1 -87
  4. data/app/assets/images/decidim/initiatives/icon.svg +1 -3
  5. data/app/assets/stylesheet/decidim/initiatives/initiatives-votes.css.scss +0 -1
  6. data/app/assets/stylesheet/decidim/initiatives/initiatives.scss +0 -8
  7. data/app/assets/stylesheet/decidim/initiatives/popularity_item.css.scss +0 -1
  8. data/app/assets/stylesheet/decidim/initiatives/print-initiative.css.scss +0 -3
  9. data/app/cells/decidim/initiatives/content_blocks/highlighted_initiatives/show.erb +4 -3
  10. data/app/cells/decidim/initiatives/initiative_m_cell.rb +11 -0
  11. data/app/commands/decidim/initiatives/admin/create_initiative_type.rb +3 -0
  12. data/app/commands/decidim/initiatives/admin/send_initiative_to_technical_validation.rb +17 -0
  13. data/app/commands/decidim/initiatives/admin/update_initiative.rb +29 -10
  14. data/app/commands/decidim/initiatives/admin/update_initiative_type.rb +3 -0
  15. data/app/commands/decidim/initiatives/attachment_methods.rb +33 -0
  16. data/app/commands/decidim/initiatives/create_initiative.rb +23 -1
  17. data/app/commands/decidim/initiatives/vote_initiative.rb +16 -0
  18. data/app/controllers/concerns/decidim/initiatives/admin/filterable.rb +18 -4
  19. data/app/controllers/concerns/decidim/initiatives/orderable.rb +3 -1
  20. data/app/controllers/concerns/decidim/initiatives/single_initiative_type.rb +26 -0
  21. data/app/controllers/decidim/initiatives/admin/initiatives_controller.rb +20 -1
  22. data/app/controllers/decidim/initiatives/create_initiative_controller.rb +35 -5
  23. data/app/controllers/decidim/initiatives/initiatives_controller.rb +17 -3
  24. data/app/controllers/decidim/initiatives/versions_controller.rb +20 -0
  25. data/app/events/decidim/initiatives/admin/initiative_sent_to_technical_validation_event.rb +21 -0
  26. data/app/events/decidim/initiatives/admin/support_threshold_reached_event.rb +13 -0
  27. data/app/forms/decidim/initiatives/admin/initiative_form.rb +31 -0
  28. data/app/forms/decidim/initiatives/admin/initiative_type_form.rb +5 -1
  29. data/app/forms/decidim/initiatives/initiative_form.rb +34 -0
  30. data/app/forms/decidim/initiatives/vote_form.rb +3 -1
  31. data/app/helpers/decidim/initiatives/application_helper.rb +104 -0
  32. data/app/helpers/decidim/initiatives/initiative_helper.rb +13 -0
  33. data/app/helpers/decidim/initiatives/initiatives_helper.rb +10 -0
  34. data/app/jobs/decidim/initiatives/export_initiatives_job.rb +25 -0
  35. data/app/mailers/decidim/initiatives/initiatives_mailer.rb +0 -21
  36. data/app/models/concerns/decidim/initiatives/has_area.rb +30 -0
  37. data/app/models/decidim/initiative.rb +62 -10
  38. data/app/permissions/decidim/initiatives/admin/permissions.rb +7 -0
  39. data/app/permissions/decidim/initiatives/permissions.rb +35 -10
  40. data/app/serializers/decidim/initiatives/initiative_serializer.rb +32 -0
  41. data/app/services/decidim/initiatives/diff_renderer.rb +18 -0
  42. data/app/services/decidim/initiatives/initiative_search.rb +59 -15
  43. data/app/services/decidim/initiatives/status_change_notifier.rb +4 -5
  44. data/app/views/decidim/initiatives/admin/exports/_dropdown.html.erb +8 -0
  45. data/app/views/decidim/initiatives/admin/initiatives/_form.html.erb +24 -1
  46. data/app/views/decidim/initiatives/admin/initiatives/_initiative_attachments.erb +43 -0
  47. data/app/views/decidim/initiatives/admin/initiatives/index.html.erb +8 -3
  48. data/app/views/decidim/initiatives/admin/initiatives_types/_form.html.erb +12 -0
  49. data/app/views/decidim/initiatives/create_initiative/fill_data.html.erb +44 -10
  50. data/app/views/decidim/initiatives/create_initiative/finish.html.erb +17 -10
  51. data/app/views/decidim/initiatives/create_initiative/previous_form.html.erb +2 -1
  52. data/app/views/decidim/initiatives/create_initiative/promotal_committee.html.erb +1 -1
  53. data/app/views/decidim/initiatives/create_initiative/select_initiative_type.html.erb +1 -2
  54. data/app/views/decidim/initiatives/create_initiative/show_similar_initiatives.html.erb +1 -1
  55. data/app/views/decidim/initiatives/initiative_signatures/fill_personal_data.html.erb +1 -0
  56. data/app/views/decidim/initiatives/initiatives/_author.html.erb +1 -1
  57. data/app/views/decidim/initiatives/initiatives/_filters.html.erb +16 -28
  58. data/app/views/decidim/initiatives/initiatives/_index_header.html.erb +3 -3
  59. data/app/views/decidim/initiatives/initiatives/_initiatives.html.erb +1 -1
  60. data/app/views/decidim/initiatives/initiatives/_interactions.html.erb +2 -3
  61. data/app/views/decidim/initiatives/initiatives/_tags.html.erb +3 -0
  62. data/app/views/decidim/initiatives/initiatives/index.html.erb +1 -1
  63. data/app/views/decidim/initiatives/initiatives/show.html.erb +1 -0
  64. data/app/views/decidim/initiatives/versions/index.html.erb +8 -0
  65. data/app/views/decidim/initiatives/versions/show.html.erb +10 -0
  66. data/app/views/layouts/decidim/_initiative_creation_header.html.erb +2 -1
  67. data/app/views/layouts/decidim/_initiative_header.html.erb +2 -1
  68. data/app/views/layouts/decidim/_initiative_signature_creation_header.html.erb +1 -1
  69. data/app/views/layouts/decidim/initiative_creation.html.erb +1 -2
  70. data/app/views/layouts/decidim/initiative_signature_creation.html.erb +2 -2
  71. data/config/locales/ar.yml +12 -19
  72. data/config/locales/bg-BG.yml +13 -0
  73. data/config/locales/ca.yml +79 -17
  74. data/config/locales/cs.yml +88 -26
  75. data/config/locales/da-DK.yml +1 -0
  76. data/config/locales/de.yml +67 -16
  77. data/config/locales/el.yml +528 -0
  78. data/config/locales/en.yml +82 -20
  79. data/config/locales/es-MX.yml +79 -17
  80. data/config/locales/es-PY.yml +79 -17
  81. data/config/locales/es.yml +81 -19
  82. data/config/locales/et-EE.yml +1 -0
  83. data/config/locales/eu.yml +4 -7
  84. data/config/locales/fi-plain.yml +79 -17
  85. data/config/locales/fi.yml +97 -35
  86. data/config/locales/fr-CA.yml +529 -0
  87. data/config/locales/fr.yml +66 -16
  88. data/config/locales/ga-IE.yml +1 -0
  89. data/config/locales/gl.yml +4 -7
  90. data/config/locales/hr-HR.yml +1 -0
  91. data/config/locales/hu.yml +21 -18
  92. data/config/locales/id-ID.yml +4 -7
  93. data/config/locales/is-IS.yml +4 -7
  94. data/config/locales/it.yml +105 -57
  95. data/config/locales/ja-JP.yml +535 -0
  96. data/config/locales/lt-LT.yml +1 -0
  97. data/config/locales/lv-LV.yml +529 -0
  98. data/config/locales/mt-MT.yml +1 -0
  99. data/config/locales/nl.yml +66 -16
  100. data/config/locales/no.yml +14 -29
  101. data/config/locales/pl.yml +241 -176
  102. data/config/locales/pt-BR.yml +5 -8
  103. data/config/locales/pt.yml +227 -176
  104. data/config/locales/ro-RO.yml +532 -0
  105. data/config/locales/ru.yml +4 -7
  106. data/config/locales/sk-SK.yml +468 -0
  107. data/config/locales/sk.yml +462 -0
  108. data/config/locales/sl.yml +18 -0
  109. data/config/locales/sr-CS.yml +8 -0
  110. data/config/locales/sv.yml +77 -26
  111. data/config/locales/tr-TR.yml +4 -7
  112. data/config/locales/uk.yml +4 -7
  113. data/db/migrate/20200320105920_index_foreign_keys_in_decidim_initiatives.rb +8 -0
  114. data/db/migrate/20200320105921_index_foreign_keys_in_decidim_initiatives_votes.rb +8 -0
  115. data/db/migrate/20200417120551_add_custom_signature_end_time_option.rb +7 -0
  116. data/db/migrate/20200424110930_add_attachments_enabled_option.rb +7 -0
  117. data/db/migrate/20200514085422_add_area_to_initiatives.rb +7 -0
  118. data/db/migrate/20200514102631_add_area_enabled_option_to_initiatives.rb +7 -0
  119. data/db/seeds/city2.jpeg +0 -0
  120. data/lib/decidim/initiatives/admin_engine.rb +4 -0
  121. data/lib/decidim/initiatives/engine.rb +1 -0
  122. data/lib/decidim/initiatives/participatory_space.rb +9 -1
  123. data/lib/decidim/initiatives/test/factories.rb +30 -1
  124. data/lib/decidim/initiatives/version.rb +1 -1
  125. metadata +55 -15
  126. data/app/views/decidim/initiatives/initiatives_mailer/notify_validating_request.html.erb +0 -3
@@ -1,6 +1,6 @@
1
1
  <% content_for :back_link do %>
2
2
  <%= link_to :back do %>
3
- <%= icon "chevron-left", class: "icon--small" %>
3
+ <%= icon "chevron-left", class: "icon--small", role: "img", "aria-hidden": true %>
4
4
  <%= t(".back") %>
5
5
  <% end %>
6
6
  <% end %>
@@ -15,16 +15,23 @@
15
15
  </div>
16
16
  <br>
17
17
  <div class="row">
18
- <div class="small-12 medium-centered">
19
- <div class="card">
20
- <div class="card__content">
21
- <%= render partial: "finish_help" %>
22
- </div>
18
+ <div class="small-12 medium-centered">
19
+ <div class="card">
20
+ <div class="card__content">
21
+ <%= render partial: "finish_help" %>
22
+ </div>
23
23
 
24
- <div class="column actions">
25
- <%= link_to t(".go_to_my_initiatives"), decidim_admin_initiatives.initiatives_path, class: "button expanded" %>
26
- <%= link_to t(".back_to_initiatives"), initiatives_path, class: "button white-button expanded" %>
27
- </div>
24
+ <div class="column actions">
25
+ <% unless promotal_committee_required? %>
26
+ <%= link_to t(".send_my_initiative"),
27
+ decidim_admin_initiatives.send_to_technical_validation_initiative_path(current_initiative),
28
+ class: "button success light expanded",
29
+ data: { confirm: t(".confirm") } %>
30
+ <% end %>
31
+ <%= link_to t(".edit_my_initiative"), decidim_admin_initiatives.edit_initiative_path(current_initiative), class: "button expanded light secondary" %>
32
+ <%= link_to t(".go_to_my_initiatives"), decidim_admin_initiatives.initiatives_path, class: "button expanded" %>
33
+ <%= link_to t(".back_to_initiatives"), initiatives_path, class: "button white-button expanded" %>
28
34
  </div>
29
35
  </div>
30
36
  </div>
37
+ </div>
@@ -1,6 +1,6 @@
1
1
  <% content_for :back_link do %>
2
2
  <%= link_to :back do %>
3
- <%= icon "chevron-left", class: "icon--small" %>
3
+ <%= icon "chevron-left", class: "icon--small", role: "img", "aria-hidden": true %>
4
4
  <%= t(".back") %>
5
5
  <% end %>
6
6
  <% end %>
@@ -19,6 +19,7 @@
19
19
  <div class="card">
20
20
  <div class="card__content">
21
21
  <%= decidim_form_for(@form, url: next_wizard_path, method: :put, html: { class: "form new_initiative_previous_form" }) do |f| %>
22
+ <%= form_required_explanation %>
22
23
  <%= f.hidden_field :type_id %>
23
24
 
24
25
  <div class="field">
@@ -1,6 +1,6 @@
1
1
  <% content_for :back_link do %>
2
2
  <%= link_to :back do %>
3
- <%= icon "chevron-left", class: "icon--small" %>
3
+ <%= icon "chevron-left", class: "icon--small", role: "img", "aria-hidden": true %>
4
4
  <%= t(".back") %>
5
5
  <% end %>
6
6
  <% end %>
@@ -1,7 +1,7 @@
1
1
  <% default_type = available_initiative_types.first %>
2
2
  <% content_for :back_link do %>
3
3
  <%= link_to initiatives_path do %>
4
- <%= icon "chevron-left", class: "icon--small" %>
4
+ <%= icon "chevron-left", class: "icon--small", role: "img", "aria-hidden": true %>
5
5
  <%= t(".back") %>
6
6
  <% end %>
7
7
  <% end %>
@@ -22,7 +22,6 @@
22
22
  <% initiative_types_each do |type| %>
23
23
  <li class="tabs-title <%= "is-active" if type == default_type %>">
24
24
  <%= link_to "#initiativeType#{type.id}" do %>
25
- <%# Quiero crear un <strong><%= translated_attribute type.title %1></strong> %>
26
25
  <%= t(".choose_html", title: translated_attribute(type.title)) %>
27
26
  <% end %>
28
27
  </li>
@@ -1,6 +1,6 @@
1
1
  <% content_for :back_link do %>
2
2
  <%= link_to :back do %>
3
- <%= icon "chevron-left", class: "icon--small" %>
3
+ <%= icon "chevron-left", class: "icon--small", role: "img", "aria-hidden": true %>
4
4
  <%= t(".back") %>
5
5
  <% end %>
6
6
  <% end %>
@@ -10,6 +10,7 @@
10
10
  <div class="card">
11
11
  <div class="card__content">
12
12
  <%= decidim_form_for(@form, url: next_wizard_path, method: :put, html: { class: "form user_personal_data_signature_form" }) do |f| %>
13
+ <%= form_required_explanation %>
13
14
  <%= f.hidden_field :group_id %>
14
15
  <div>
15
16
  <div class="field">
@@ -2,7 +2,7 @@
2
2
  <div class="author-data__main ">
3
3
  <div class="author author--inline">
4
4
  <span class="author__avatar author__avatar--small">
5
- <%= image_tag initiative.author_avatar_url %>
5
+ <%= image_tag initiative.author_avatar_url, alt: t("avatar", scope: "activemodel.attributes.group") %>
6
6
  </span>
7
7
  <span class="author__name">
8
8
  <% if initiative.author.deleted? %>
@@ -2,44 +2,32 @@
2
2
  <div class="filters__section">
3
3
  <div class="filters__search">
4
4
  <div class="input-group">
5
- <%= form.search_field :search_text, label: false, class: "input-group-field", placeholder: t(".search") %>
5
+ <%= form.search_field :search_text, label: false, class: "input-group-field", placeholder: t(".search"), title: t(".search") %>
6
6
  <div class="input-group-button">
7
- <button type="submit" class="button button--muted">
8
- <%= icon "magnifying-glass", aria_label: t(".search") %>
7
+ <button type="submit" class="button">
8
+ <%= icon "magnifying-glass", aria_label: t(".search"), role: "img" %>
9
9
  </button>
10
10
  </div>
11
11
  </div>
12
12
  </div>
13
13
  </div>
14
14
 
15
- <%= form.collection_radio_buttons :state,
16
- [["open", t(".open")], ["closed", t(".closed")]],
17
- :first,
18
- :last,
19
- legend_title: t(".state") %>
15
+ <%= form.check_boxes_tree :state, filter_states_values, legend_title: t(".state") %>
20
16
 
21
- <% if current_user %>
22
- <%= form.collection_radio_buttons :author,
23
- [["any", t(".any")], ["myself", t(".myself")]],
24
- :first,
25
- :last,
26
- legend_title: t(".author") %>
27
- <% end %>
17
+ <%= form.check_boxes_tree :scope_id, filter_scopes_values, legend_title: t(".scope") %>
28
18
 
29
- <div class="filters__section">
30
- <fieldset>
31
- <legend><h6 class="heading6"><%= t ".type" %></h6></legend>
32
- <%= form.initiative_types_select :type,
33
- Decidim::InitiativesType.where(organization: current_organization),
34
- legend_title: t(".type"),
35
- label: false,
36
- prompt: t(".type_prompt"),
37
- remote_path: initiative_types_search_path,
38
- multiple: true %>
39
- </fieldset>
40
- </div>
19
+ <% unless single_initiative_type? %>
20
+ <%= form.check_boxes_tree :type_id, filter_types_values, legend_title: t(".type") %>
21
+ <% end %>
41
22
 
42
- <%= scopes_picker_field form, :scope_id, root: nil %>
23
+ <%= form.check_boxes_tree :area_id, filter_areas_values, legend_title: t(".area") %>
43
24
 
25
+ <% if current_user %>
26
+ <%= form.collection_radio_buttons :author,
27
+ [["any", t(".any")], ["myself", t(".myself")]],
28
+ :first,
29
+ :last,
30
+ legend_title: t(".author") %>
31
+ <% end %>
44
32
  <%= hidden_field_tag :order, order, id: nil, class: "order_filter" %>
45
33
  <% end %>
@@ -1,11 +1,11 @@
1
1
  <div class="row collapse">
2
- <h2 id="initiatives-count" class="title-action__title section-heading">
2
+ <h1 id="initiatives-count" class="title-action__title section-heading">
3
3
  <%= render partial: "count" %>
4
- </h2>
4
+ </h1>
5
5
  <% if allowed_to? :create, :initiative %>
6
6
  <%= link_to create_initiative_path(:select_initiative_type), class: "title-action__action button small" do %>
7
7
  <%= t(".new_initiative") %>
8
- <%= icon "plus" %>
8
+ <%= icon "plus", role: "img", "aria-hidden": true %>
9
9
  <% end %>
10
10
  <% end %>
11
11
  </div>
@@ -1,4 +1,4 @@
1
- <div class="collection-sort-controls row small-up-1 medium-up-3 card-grid">
1
+ <div class="collection-sort-controls row small-up-1 medium-up-2 card-grid">
2
2
  <div class="column">
3
3
  <%= order_selector available_orders, i18n_scope: "decidim.initiatives.initiatives.orders" %>
4
4
  </div>
@@ -1,8 +1,7 @@
1
1
  <div class="row collapse buttons__row">
2
2
  <div class="column collapse">
3
- <button type="button" name="button" class="button small compact hollow secondary button--nomargin expanded">
4
- <%= link_to "#comments" do %>
5
- <%= icon "comment-square", class: "icon--small", aria_label: t(".comments_count.count.other"), role: "img" %>
3
+ <%= link_to "#comments", class: "button small compact hollow button--nomargin expanded" do %>
4
+ <%= icon "comment-square", class: "icon--small", role: "img", "aria-hidden": true %>
6
5
  <%= stats.comments_count %>
7
6
  <%= t(".comments_count.count", count: stats.comments_count) %>
8
7
  <% end %>
@@ -1,4 +1,7 @@
1
1
  <ul class="tags tags--initiative">
2
2
  <li><%= link_to translated_attribute(resource.type.title), initiatives_path(filter: { type: [resource.type.id] }) %></li>
3
3
  <li><%= link_to translated_attribute(resource.scope_name), initiatives_path(filter: { scope_id: [resource.scope&.id] }) %></li>
4
+ <% if resource.area %>
5
+ <li><%= link_to translated_attribute(resource.area_name), initiatives_path(filter: { area_id: [resource.area.id] }) %></li>
6
+ <% end %>
4
7
  </ul>
@@ -29,4 +29,4 @@ edit_link(
29
29
  <% end %>
30
30
 
31
31
  <%= javascript_include_tag "decidim/filters" %>
32
- <%= javascript_include_tag "decidim/orders" %>
32
+ <%= javascript_include_tag "decidim/results_listing" %>
@@ -54,6 +54,7 @@ edit_link(
54
54
  <%= render partial: "decidim/shared/share_modal" %>
55
55
  <%= embed_modal_for initiative_initiative_widget_url(current_initiative, format: :js) %>
56
56
  <%= resource_reference(current_initiative) %>
57
+ <%= resource_version(current_initiative, versions_path: initiative_versions_path(current_initiative)) %>
57
58
  </div>
58
59
 
59
60
  <div class="columns mediumlarge-8 mediumlarge-pull-4">
@@ -0,0 +1,8 @@
1
+ <div class="row">
2
+ <%= cell(
3
+ "decidim/versions_list",
4
+ versioned_resource,
5
+ version_path: proc { |version_index| url_for(action: :show, id: version_index) },
6
+ i18n_scope: "decidim.initiatives.versions.shared"
7
+ ) %>
8
+ </div>
@@ -0,0 +1,10 @@
1
+ <div class="row">
2
+ <%= cell(
3
+ "decidim/version",
4
+ current_version,
5
+ index: params[:id],
6
+ versioned_resource: versioned_resource,
7
+ versions_path: proc { url_for(action: :index) },
8
+ i18n_scope: "decidim.initiatives.versions.shared"
9
+ ) %>
10
+ </div>
@@ -1,7 +1,7 @@
1
1
  <div class="columns large-3">
2
2
  <div class="m-bottom">
3
3
  <%= link_to :back do %>
4
- <%= icon "chevron-left", class: "icon--small" %> <%= t(".back") %>
4
+ <%= icon "chevron-left", class: "icon--small", role: "img", "aria-hidden": true %> <%= t(".back") %>
5
5
  <% end %>
6
6
  </div>
7
7
  <div class="section">
@@ -13,6 +13,7 @@
13
13
  <ol class="wizard__steps">
14
14
  <% wizard_steps.each do |wizard_step| %>
15
15
  <% next if wizard_step.to_s == "promotal_committee" && !promotal_committee_required? %>
16
+ <% next if wizard_step.to_s == "select_initiative_type" && single_initiative_type? %>
16
17
  <% if step == wizard_step %>
17
18
  <li class="step--active">
18
19
  <%= t(".#{wizard_step}") %>
@@ -33,7 +33,8 @@
33
33
  {
34
34
  name: t(".initiative_menu_item"),
35
35
  url: decidim_initiatives.initiative_path(current_participatory_space),
36
- active: is_active_link?(decidim_initiatives.initiative_path(current_participatory_space), :exclusive)
36
+ active: is_active_link?(decidim_initiatives.initiative_path(current_participatory_space), :exclusive) ||
37
+ is_active_link?(decidim_initiatives.initiative_versions_path(current_participatory_space), :inclusive)
37
38
  }
38
39
  ] + components.map do |component|
39
40
  {
@@ -1,7 +1,7 @@
1
1
  <div class="columns large-3">
2
2
  <div class="m-bottom">
3
3
  <%= link_to initiative_path current_initiative do %>
4
- <%= icon "chevron-left", class: "icon--small" %> <%= t(".back") %>
4
+ <%= icon "chevron-left", class: "icon--small", role: "img", "aria-hidden": true %> <%= t(".back") %>
5
5
  <% end %>
6
6
  </div>
7
7
  <div class="section">
@@ -1,8 +1,7 @@
1
1
  <%= render "layouts/decidim/application" do %>
2
2
  <% if wizard_steps.first == step %>
3
3
  <div class="wrapper">
4
- <%= yield %>
5
- </div>
4
+ <%= yield %>
6
5
  </div>
7
6
  <% else %>
8
7
  <div class="wrapper">
@@ -1,5 +1,5 @@
1
1
  <%= render "layouts/decidim/application" do %>
2
- <main class="wrapper">
2
+ <div class="wrapper">
3
3
  <div class="row">
4
4
  <%= render partial: "layouts/decidim/initiative_signature_creation_header" %>
5
5
  <div class="columns large-6">
@@ -7,6 +7,6 @@
7
7
  </div>
8
8
  <div class="columns large-3"></div>
9
9
  </div>
10
- </main>
10
+ </div>
11
11
  <%= javascript_include_tag "decidim/initiatives/application" %>
12
12
  <% end %>
@@ -73,18 +73,6 @@ ar:
73
73
  admin:
74
74
  actions:
75
75
  new_initiative_type: نوع المبادرة الجديدة
76
- filters:
77
- search_placeholder:
78
- title_or_description_cont: البحث عن %{collection} بحسب العنوان أو الوصف.
79
- state_eq:
80
- label: الحالة
81
- values:
82
- accepted: وافقت
83
- created: تمّ إنشاؤه
84
- discarded: التخلص منها
85
- published: نشرت
86
- rejected: مرفوض
87
- validating: المصادقة الفنية
88
76
  menu:
89
77
  initiatives: المبادرات
90
78
  initiatives_types: أنواع المبادرة
@@ -253,12 +241,19 @@ ar:
253
241
  unpublish: "تجاهل %{user_name} المبادرة %{resource_name}"
254
242
  update: "%{user_name} تحديث المبادرة %{resource_name}"
255
243
  admin_states:
256
- accepted: وافقت
257
244
  created: تمّ إنشاؤه
258
245
  discarded: التخلص منها
259
246
  published: نشرت
260
- rejected: مرفوض
261
247
  validating: المصادقة الفنية
248
+ application_helper:
249
+ filter_scope_values:
250
+ all: الكل
251
+ filter_state_values:
252
+ all: الكل
253
+ closed: مغلق
254
+ open: افتح
255
+ filter_type_values:
256
+ all: الكل
262
257
  committee_requests:
263
258
  new:
264
259
  continue: استمر
@@ -374,13 +369,10 @@ ar:
374
369
  filters:
375
370
  any: أي
376
371
  author: مؤلف
377
- closed: مغلق
378
372
  myself: مبادراتي
379
- open: افتح
380
373
  search: بحث
381
374
  state: الحالة
382
375
  type: نوع
383
- type_prompt: اختر نوع
384
376
  filters_small_view:
385
377
  close_modal: أغلق النافذة
386
378
  filter: منقي
@@ -454,8 +446,6 @@ ar:
454
446
  promotal_committee_help: تذكر أنه يجب دعوة %{member_count} شخصًا على الأقل إلى لجنة المروجين. أرسل الرابط التالي لدعوة الناس إلى لجنة المروجين
455
447
  status_change_body_for: 'لقد غيرت المبادرة %{title} حالتها إلى: %{state}'
456
448
  status_change_for: لقد غيرت المبادرة %{title} حالتها
457
- technical_validation_body_for: طلبت المبادرة %{title} التحقق من الصحة
458
- technical_validation_for: طلبت المبادرة %{title} التحقق من الصحة
459
449
  last_activity:
460
450
  new_initiative: مبادرة جديدة
461
451
  pages:
@@ -463,6 +453,9 @@ ar:
463
453
  highlighted_initiatives:
464
454
  active_initiatives: المبادرات النشطة
465
455
  see_all_initiatives: رؤية جميع المبادرات
456
+ show:
457
+ badge_name:
458
+ validating: تحقق تقني
466
459
  states:
467
460
  accepted: وافقت
468
461
  expired: منتهية الصلاحية
@@ -0,0 +1,13 @@
1
+ bg:
2
+ activemodel:
3
+ attributes:
4
+ initiative:
5
+ decidim_user_group_id: Автор
6
+ description: Описание
7
+ offline_votes: Лични подписи
8
+ decidim:
9
+ initiatives:
10
+ application_helper:
11
+ filter_state_values:
12
+ closed: Затворен
13
+ open: Отворен
@@ -26,8 +26,11 @@ ca:
26
26
  initiatives_committee_member:
27
27
  user: Membre del comitè
28
28
  initiatives_type:
29
+ area_enabled: Permet a les autores triar l'àrea de la seva iniciativa
30
+ attachments_enabled: Habilitat arxius adjunts
29
31
  banner_image: Imatge del bàner
30
32
  collect_user_extra_fields: Recopilar les dades personals de la participant amb la signatura
33
+ custom_signature_end_date_enabled: Permet a les autores triar la fi del període de recollida de signatures
31
34
  description: Descripció
32
35
  document_number_authorization_handler: Autorització per verificar el número de document en les signatures
33
36
  extra_fields_legal_information: Informació legal sobre la recollida de dades personals
@@ -46,6 +49,14 @@ ca:
46
49
  address: Adreça
47
50
  id_document: Document d'identitat
48
51
  name: Nom complet
52
+ errors:
53
+ models:
54
+ initiative:
55
+ attributes:
56
+ attachment:
57
+ file: Aquest arxiu és invàlid
58
+ needs_to_be_reattached: És necessari tornar a adjuntar l'arxiu
59
+ title: El títol no pot quedar buit
49
60
  activerecord:
50
61
  models:
51
62
  decidim/initiative:
@@ -62,17 +73,22 @@ ca:
62
73
  actions:
63
74
  new_initiative_type: Nou tipus d'iniciativa
64
75
  filters:
76
+ initiatives:
77
+ decidim_area_id_eq:
78
+ label: Àrea
79
+ state_eq:
80
+ label: Estat
81
+ values:
82
+ accepted: Ha aconseguit les signatures
83
+ created: Creada
84
+ discarded: Descartada
85
+ published: Publicada
86
+ rejected: No ha aconseguit les signatures
87
+ validating: Validació tècnica
88
+ type_id_eq:
89
+ label: Tipus
65
90
  search_placeholder:
66
- title_or_description_cont: Cerca %{collection} per títol o descripció.
67
- state_eq:
68
- label: Estat
69
- values:
70
- accepted: Acceptada
71
- created: Creada
72
- discarded: Rebutjada
73
- published: Publicada
74
- rejected: Rebutjada
75
- validating: Validació tècnica
91
+ title_or_description_or_id_string_or_author_name_or_author_nickname_cont: Cercar %{collection} per títol, descripció, ID o autoria.
76
92
  menu:
77
93
  initiatives: Iniciatives
78
94
  initiatives_types: Tipus d'iniciatives
@@ -81,6 +97,7 @@ ca:
81
97
  fields:
82
98
  created_at: Data de creació
83
99
  id: ID
100
+ published_at: Publicat el
84
101
  state: Estat
85
102
  supports_count: Signatures
86
103
  title: Iniciatives
@@ -113,6 +130,12 @@ ca:
113
130
  initiatives_types: Tipus d'iniciatives
114
131
  events:
115
132
  initiatives:
133
+ admin:
134
+ initiative_sent_to_technical_validation:
135
+ 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>
136
+ email_outro: Has rebut aquesta notificació perquè ets una de les administradores de la plataforma.
137
+ email_subject: La iniciativa %{resource_title} ha sol·licitat validació tècnica.
138
+ 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>
116
139
  initiative_extended:
117
140
  email_intro: La data de finalització de recollida de signatures per a la iniciativa %{resource_title} s'ha ampliat!
118
141
  email_outro: Has rebut aquesta notificació perquè estàs seguint %{resource_title}. Pots deixar de rebre notificacions seguint l'enllaç anterior.
@@ -129,6 +152,11 @@ ca:
129
152
  email_outro: Has rebut aquesta notificació perquè estàs seguint %{resource_title}. Pots deixar de rebre notificacions seguint l'enllaç anterior.
130
153
  email_subject: S'ha completat una nova fita!
131
154
  notification_title: La iniciativa <a href="%{resource_path}">%{resource_title}</a> ha aconseguit el %{percentage}% de les signatures.
155
+ support_threshold_reached:
156
+ email_intro: La iniciativa %{resource_title} ha arribat al llindar de suports
157
+ email_outro: Has rebut aquesta notificació perquè ets una de les administradores de la plataforma.
158
+ email_subject: Llindar de suports aconseguit
159
+ notification_title: La iniciativa <a href="%{resource_path}">%{resource_title}</a> ha arribat al llindar de suports
132
160
  gamification:
133
161
  badges:
134
162
  initiatives:
@@ -173,6 +201,8 @@ ca:
173
201
  content_blocks:
174
202
  highlighted_initiatives:
175
203
  max_results: Quantitat màxima d'elements per mostrar
204
+ exports:
205
+ initiatives: Iniciatives
176
206
  initiatives:
177
207
  edit:
178
208
  accept: Accepta la iniciativa
@@ -190,6 +220,11 @@ ca:
190
220
  actions_title: Acció
191
221
  preview: Vista prèvia
192
222
  print: Imprimir
223
+ initiative_attachments:
224
+ documents: Documents
225
+ edit: Edita
226
+ new: Nou
227
+ photos: Fotografies
193
228
  show:
194
229
  print: Imprimir
195
230
  update:
@@ -241,12 +276,26 @@ ca:
241
276
  unpublish: "%{user_name} ha descartat la iniciativa %{resource_name}"
242
277
  update: "%{user_name} ha actualitzat la iniciativa %{resource_name}"
243
278
  admin_states:
244
- accepted: Acceptada
279
+ accepted: Ha aconseguit les signatures necessàries
245
280
  created: Creada
246
281
  discarded: Rebutjada
247
282
  published: Publicada
248
- rejected: Rebutjada
283
+ rejected: No ha aconseguit les signatures necessàries
249
284
  validating: Validació tècnica
285
+ application_helper:
286
+ filter_area_values:
287
+ all: Totes
288
+ filter_scope_values:
289
+ all: Todos
290
+ filter_state_values:
291
+ accepted: Ha aconseguit les signatures
292
+ all: Tots
293
+ answered: Amb resposta
294
+ closed: Tancat
295
+ open: Obertes
296
+ rejected: No ha aconseguit les signatures
297
+ filter_type_values:
298
+ all: Tots
250
299
  committee_requests:
251
300
  new:
252
301
  continue: Continua
@@ -263,13 +312,17 @@ ca:
263
312
  fill_data_help: "<ul> <li>Revisa el contingut de la teva iniciativa. El títol és fàcil d'entendre? L'objectiu de la teva iniciativa és clar?</li> <li>Has d'escollir el tipus de signatura. Presencial, digital o una combinació de totes dues.</li> <li>Quin és l'àmbit geogràfic de la iniciativa? Ciutat, districte?</li> </ul>"
264
313
  initiative_type: Tipus d'iniciativa
265
314
  more_information: "(Més informació)"
315
+ select_area: Selecciona una àrea
266
316
  select_scope: Selecciona un àmbit d'aplicació
267
317
  finish:
268
318
  back: Torna
269
319
  back_to_initiatives: Torna a iniciatives
270
320
  callout_text: Enhorabona! La teva iniciativa ciutadana s'ha creat correctament.
321
+ confirm: Confirmar
322
+ edit_my_initiative: Editar les meves iniciatives
271
323
  go_to_my_initiatives: Ves a les meves iniciatives
272
324
  more_information: "(Més informació)"
325
+ send_my_initiative: Enviar la meva iniciativa
273
326
  finish_help:
274
327
  access_reminder: Recorda que sempre pots accedir a les teves iniciatives a través del menú de participant.
275
328
  help_for_organizations: Si ets una associació, hauràs de pujar les actes del consell d'administració de totes les organitzacions que formen la Comissió Promotora
@@ -353,14 +406,13 @@ ca:
353
406
  other: "%{count} iniciatives"
354
407
  filters:
355
408
  any: Qualsevol
409
+ area: Àrea
356
410
  author: Autora
357
- closed: Tancat
358
411
  myself: Les meves iniciatives
359
- open: Obertes
412
+ scope: Àmbit
360
413
  search: Cerca
361
414
  state: Estat
362
415
  type: Tipus
363
- type_prompt: Selecciona un tipus
364
416
  filters_small_view:
365
417
  close_modal: Tanca la finestra
366
418
  filter: Filtra
@@ -379,6 +431,7 @@ ca:
379
431
  most_voted: Més signades
380
432
  random: Aleatori
381
433
  recent: Més recents
434
+ recently_published: Publicada més recentment
382
435
  result:
383
436
  answer_title:
384
437
  accepted: Aquesta proposta s'ha acceptat perquè
@@ -422,8 +475,6 @@ ca:
422
475
  promotal_committee_help: Recorda que has de convidar almenys a %{member_count} persones a la Comissió Promotora. Reenvia el següent enllaç per convidar-les
423
476
  status_change_body_for: 'La iniciativa %{title} ha canviat el seu estat a: %{state}'
424
477
  status_change_for: La iniciativa %{title} ha canviat el seu estat
425
- technical_validation_body_for: La iniciativa %{title} ha sol·licitat validació tècnica.
426
- technical_validation_for: La iniciativa %{title} ha sol·licitat validació tècnica.
427
478
  last_activity:
428
479
  new_initiative: Nova iniciativa
429
480
  pages:
@@ -431,10 +482,21 @@ ca:
431
482
  highlighted_initiatives:
432
483
  active_initiatives: Iniciatives actives
433
484
  see_all_initiatives: Veure totes les iniciatives
485
+ show:
486
+ badge_name:
487
+ accepted: Amb les signatures necessàries
488
+ created: Creada
489
+ discarded: Descartada
490
+ published: Publicada
491
+ rejected: No ha aconseguit les signatures
492
+ validating: Validació tècnica
434
493
  states:
435
494
  accepted: Acceptat
436
495
  expired: Vençut
437
496
  unavailable_scope: Àmbit no disponible
497
+ versions:
498
+ shared:
499
+ back_to_resource: Torna a la iniciativa
438
500
  menu:
439
501
  initiatives: Iniciatives
440
502
  resources: