decidim-proposals 0.23.1 → 0.24.0.rc2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (122) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/decidim/proposals/add_proposal.js.es6 +4 -1
  3. data/app/assets/stylesheets/decidim/proposals/_proposals.css.scss +1 -0
  4. data/app/assets/stylesheets/decidim/proposals/proposals/_preview.css.scss +3 -0
  5. data/app/cells/decidim/proposals/collaborative_draft_link_to_proposal_cell.rb +3 -3
  6. data/app/cells/decidim/proposals/collaborative_drafts/reported_content/show.erb +3 -0
  7. data/app/cells/decidim/proposals/collaborative_drafts/reported_content_cell.rb +15 -0
  8. data/app/cells/decidim/proposals/content_blocks/highlighted_proposals/elements.erb +5 -0
  9. data/app/cells/decidim/proposals/content_blocks/highlighted_proposals/heading.erb +1 -0
  10. data/app/cells/decidim/proposals/content_blocks/highlighted_proposals_cell.rb +19 -0
  11. data/app/cells/decidim/proposals/irreversible_action_modal_cell.rb +1 -1
  12. data/app/cells/decidim/proposals/proposal_activity_cell.rb +13 -5
  13. data/app/cells/decidim/proposals/proposal_m_cell.rb +23 -2
  14. data/app/cells/decidim/proposals/reported_content/show.erb +4 -0
  15. data/app/cells/decidim/proposals/reported_content_cell.rb +13 -0
  16. data/app/commands/decidim/proposals/admin/update_proposal.rb +2 -0
  17. data/app/commands/decidim/proposals/hashtags_methods.rb +1 -1
  18. data/app/controllers/decidim/proposals/admin/proposals_controller.rb +7 -5
  19. data/app/controllers/decidim/proposals/collaborative_drafts_controller.rb +1 -30
  20. data/app/controllers/decidim/proposals/proposals_controller.rb +5 -6
  21. data/app/events/decidim/proposals/publish_proposal_event.rb +1 -1
  22. data/app/forms/decidim/proposals/access_to_collaborative_draft_form.rb +1 -3
  23. data/app/forms/decidim/proposals/admin/proposal_base_form.rb +3 -2
  24. data/app/forms/decidim/proposals/admin/proposal_form.rb +13 -0
  25. data/app/forms/decidim/proposals/proposal_form.rb +15 -5
  26. data/app/forms/decidim/proposals/proposal_wizard_create_step_form.rb +1 -9
  27. data/app/helpers/decidim/proposals/admin/filterable_helper.rb +1 -1
  28. data/app/helpers/decidim/proposals/admin/proposal_rankings_helper.rb +1 -1
  29. data/app/helpers/decidim/proposals/admin/proposals_helper.rb +8 -8
  30. data/app/helpers/decidim/proposals/application_helper.rb +5 -2
  31. data/app/helpers/decidim/proposals/map_helper.rb +25 -4
  32. data/app/helpers/decidim/proposals/proposal_wizard_helper.rb +14 -44
  33. data/app/helpers/decidim/proposals/proposals_helper.rb +3 -6
  34. data/app/models/decidim/proposals/collaborative_draft.rb +10 -0
  35. data/app/models/decidim/proposals/proposal.rb +21 -11
  36. data/app/permissions/decidim/proposals/admin/permissions.rb +2 -2
  37. data/app/permissions/decidim/proposals/permissions.rb +3 -2
  38. data/app/presenters/decidim/proposals/admin_log/proposal_presenter.rb +2 -2
  39. data/app/presenters/decidim/proposals/admin_log/valuation_assignment_presenter.rb +2 -2
  40. data/app/presenters/decidim/proposals/proposal_presenter.rb +35 -16
  41. data/app/queries/decidim/proposals/metrics/proposal_followers_metric_measure.rb +4 -4
  42. data/app/queries/decidim/proposals/metrics/proposal_participants_metric_measure.rb +6 -6
  43. data/app/services/decidim/proposals/diff_renderer.rb +7 -11
  44. data/app/services/decidim/proposals/proposal_builder.rb +1 -0
  45. data/app/validators/proposal_length_validator.rb +4 -2
  46. data/app/views/decidim/proposals/admin/proposals/_bulk-actions.html.erb +8 -1
  47. data/app/views/decidim/proposals/admin/proposals/_form.html.erb +8 -2
  48. data/app/views/decidim/proposals/admin/proposals/_proposal-tr.html.erb +5 -1
  49. data/app/views/decidim/proposals/admin/proposals_imports/new.html.erb +1 -1
  50. data/app/views/decidim/proposals/collaborative_drafts/_filters_small_view.html.erb +1 -1
  51. data/app/views/decidim/proposals/collaborative_drafts/_wizard_aside.html.erb +2 -7
  52. data/app/views/decidim/proposals/collaborative_drafts/_wizard_header.html.erb +14 -0
  53. data/app/views/decidim/proposals/collaborative_drafts/edit.html.erb +7 -7
  54. data/app/views/decidim/proposals/collaborative_drafts/new.html.erb +5 -13
  55. data/app/views/decidim/proposals/collaborative_drafts/show.html.erb +7 -11
  56. data/app/views/decidim/proposals/proposals/_dynamic_map_instructions.html.erb +3 -0
  57. data/app/views/decidim/proposals/proposals/_edit_form_fields.html.erb +2 -2
  58. data/app/views/decidim/proposals/proposals/_filters.html.erb +34 -32
  59. data/app/views/decidim/proposals/proposals/_filters_small_view.html.erb +1 -1
  60. data/app/views/decidim/proposals/proposals/_wizard_header.html.erb +21 -11
  61. data/app/views/decidim/proposals/proposals/edit.html.erb +7 -7
  62. data/app/views/decidim/proposals/proposals/preview.html.erb +50 -2
  63. data/app/views/decidim/proposals/proposals/show.html.erb +8 -12
  64. data/config/locales/ar.yml +2 -22
  65. data/config/locales/ca.yml +28 -32
  66. data/config/locales/cs.yml +48 -52
  67. data/config/locales/de.yml +127 -104
  68. data/config/locales/el.yml +2 -29
  69. data/config/locales/en.yml +25 -29
  70. data/config/locales/es-MX.yml +24 -29
  71. data/config/locales/es-PY.yml +24 -29
  72. data/config/locales/es.yml +24 -29
  73. data/config/locales/eu.yml +4 -22
  74. data/config/locales/fi-plain.yml +24 -28
  75. data/config/locales/fi.yml +31 -35
  76. data/config/locales/fr-CA.yml +21 -29
  77. data/config/locales/fr.yml +21 -29
  78. data/config/locales/gl.yml +4 -22
  79. data/config/locales/hu.yml +2 -22
  80. data/config/locales/id-ID.yml +2 -22
  81. data/config/locales/is-IS.yml +0 -5
  82. data/config/locales/it.yml +4 -29
  83. data/config/locales/ja.yml +2 -29
  84. data/config/locales/lv.yml +2 -21
  85. data/config/locales/nl.yml +33 -43
  86. data/config/locales/no.yml +4 -24
  87. data/config/locales/pl.yml +31 -31
  88. data/config/locales/pt-BR.yml +2 -21
  89. data/config/locales/pt.yml +2 -29
  90. data/config/locales/ro-RO.yml +5 -28
  91. data/config/locales/ru.yml +0 -5
  92. data/config/locales/si-LK.yml +1 -0
  93. data/config/locales/sk.yml +5 -22
  94. data/config/locales/sv.yml +12 -34
  95. data/config/locales/sw-KE.yml +1 -0
  96. data/config/locales/tr-TR.yml +383 -231
  97. data/config/locales/uk.yml +0 -5
  98. data/config/locales/zh-CN.yml +2 -29
  99. data/db/migrate/20210127115628_fix_answered_proposals_after_copy.rb +14 -0
  100. data/{app/types/decidim/proposals → lib/decidim/api}/proposal_input_filter.rb +0 -0
  101. data/{app/types/decidim/proposals → lib/decidim/api}/proposal_input_sort.rb +3 -5
  102. data/lib/decidim/api/proposal_type.rb +56 -0
  103. data/lib/decidim/api/proposals_type.rb +43 -0
  104. data/lib/decidim/content_renderers/proposal_renderer.rb +1 -1
  105. data/lib/decidim/proposals.rb +2 -0
  106. data/lib/decidim/proposals/api.rb +10 -0
  107. data/lib/decidim/proposals/component.rb +30 -19
  108. data/lib/decidim/proposals/engine.rb +6 -27
  109. data/lib/decidim/proposals/proposal_creator.rb +98 -0
  110. data/lib/decidim/proposals/test/factories.rb +22 -8
  111. data/lib/decidim/proposals/version.rb +1 -1
  112. metadata +55 -41
  113. data/app/commands/decidim/proposals/create_proposal_export.rb +0 -37
  114. data/app/helpers/decidim/proposals/proposal_endorsements_helper.rb +0 -0
  115. data/app/queries/decidim/proposals/similar_collaborative_drafts.rb +0 -52
  116. data/app/types/decidim/proposals/proposal_type.rb +0 -70
  117. data/app/types/decidim/proposals/proposals_type.rb +0 -41
  118. data/app/views/decidim/participatory_processes/participatory_process_groups/_highlighted_proposals.html.erb +0 -13
  119. data/app/views/decidim/proposals/collaborative_drafts/compare.html.erb +0 -21
  120. data/app/views/decidim/proposals/collaborative_drafts/complete.html.erb +0 -24
  121. data/app/views/decidim/proposals/proposals/_proposal_preview.html.erb +0 -1
  122. data/db/migrate/20200915151348_fix_proposals_data_to_ensure_title_and_body_are_hashes.rb +0 -37
@@ -14,10 +14,12 @@
14
14
  <% end %>
15
15
 
16
16
  <div class="row column view-header">
17
- <%= link_to collaborative_drafts_path do %>
18
- <%= icon "chevron-left", class: "icon--small", role: "img", "aria-hidden": true %>
19
- <%= t(".back") %>
20
- <% end %>
17
+ <div class="m-bottom">
18
+ <%= link_to collaborative_drafts_path do %>
19
+ <%= icon "chevron-left", class: "icon--small", role: "img", "aria-hidden": true %>
20
+ <%= t(".back") %>
21
+ <% end %>
22
+ </div>
21
23
 
22
24
  <h2 class="heading2">
23
25
  <%= present(@collaborative_draft).title(links: true, html_escape: true) %>
@@ -123,10 +125,4 @@
123
125
  <%= attachments_for @collaborative_draft %>
124
126
  <%= comments_for @collaborative_draft %>
125
127
 
126
- <%=
127
- render partial: "decidim/shared/flag_modal", locals: {
128
- reportable: @collaborative_draft,
129
- form: @report_form,
130
- url: decidim.report_path(sgid: @collaborative_draft.to_sgid.to_s)
131
- }
132
- %>
128
+ <%= cell("decidim/flag_modal", @collaborative_draft) %>
@@ -0,0 +1,3 @@
1
+ <div class="column dynamic-map-instructions">
2
+ <%== t(".instructions") %>
3
+ </div>
@@ -25,7 +25,7 @@
25
25
  <div class="field">
26
26
  <%= form.label :suggested_hashtags, nil, for: nil %>
27
27
  <div class="checkboxes hashtags">
28
- <%= form.collection_check_boxes :suggested_hashtags, @form.component_suggested_hashtags.map {|hashtag| [hashtag.downcase, "##{hashtag}"]}, :first, :last do |option|
28
+ <%= form.collection_check_boxes :suggested_hashtags, @form.component_suggested_hashtags.map { |hashtag| [hashtag.downcase, "##{hashtag}"] }, :first, :last do |option|
29
29
  option.label { option.check_box(checked: @form.suggested_hashtag_checked?(option.value)) + option.text }
30
30
  end %>
31
31
  </div>
@@ -38,7 +38,7 @@
38
38
  </div>
39
39
 
40
40
  <div class="field" id="address_input">
41
- <%= form.geocoding_field :address %>
41
+ <%= form.geocoding_field :address, placeholder: t("decidim.proposals.proposals.placeholder.address") %>
42
42
  </div>
43
43
  <% end %>
44
44
 
@@ -1,46 +1,48 @@
1
1
  <%= render partial: "decidim/shared/filter_form_help", locals: { skip_to_id: "proposals" } %>
2
2
 
3
- <%= filter_form_for filter do |form| %>
4
- <div class="filters__section">
5
- <div class="filters__search">
6
- <div class="input-group">
7
- <%= form.search_field :search_text, label: false, class: "input-group-field", placeholder: t(".search"), title: t(".search"), data: { disable_dynamic_change: true } %>
8
- <div class="input-group-button">
9
- <button type="submit" class="button" aria-controls="proposals">
10
- <%= icon "magnifying-glass", aria_label: t(".search"), role: "img" %>
11
- </button>
3
+ <% cache filter_cache_hash(filter, defined?(type) ? type : nil) do %>
4
+ <%= filter_form_for filter do |form| %>
5
+ <div class="filters__section">
6
+ <div class="filters__search">
7
+ <div class="input-group">
8
+ <%= form.search_field :search_text, label: false, class: "input-group-field", placeholder: t(".search"), title: t(".search"), data: { disable_dynamic_change: true } %>
9
+ <div class="input-group-button">
10
+ <button type="submit" class="button" aria-controls="proposals">
11
+ <%= icon "magnifying-glass", aria_label: t(".search"), role: "img" %>
12
+ </button>
13
+ </div>
12
14
  </div>
13
15
  </div>
14
16
  </div>
15
- </div>
16
17
 
17
- <% if component_settings.proposal_answering_enabled && current_settings.proposal_answering_enabled %>
18
- <%= form.check_boxes_tree :state, filter_proposals_state_values, legend_title: t(".state"), "aria-controls": "proposals" %>
19
- <% end %>
18
+ <% if component_settings.proposal_answering_enabled && current_settings.proposal_answering_enabled %>
19
+ <%= form.check_boxes_tree :state, filter_proposals_state_values, legend_title: t(".state"), "aria-controls": "proposals" %>
20
+ <% end %>
20
21
 
21
- <% if current_component.has_subscopes? %>
22
- <%= form.check_boxes_tree :scope_id, filter_scopes_values, legend_title: t(".scope"), "aria-controls": "proposals" %>
23
- <% end %>
22
+ <% if current_component.has_subscopes? %>
23
+ <%= form.check_boxes_tree :scope_id, filter_scopes_values, legend_title: t(".scope"), "aria-controls": "proposals" %>
24
+ <% end %>
24
25
 
25
- <% if current_component.categories.any? %>
26
- <%= form.check_boxes_tree :category_id, filter_categories_values, legend_title: t(".category"), "aria-controls": "proposals" %>
27
- <% end %>
26
+ <% if current_component.categories.any? %>
27
+ <%= form.check_boxes_tree :category_id, filter_categories_values, legend_title: t(".category"), "aria-controls": "proposals" %>
28
+ <% end %>
28
29
 
29
- <% if component_settings.official_proposals_enabled %>
30
- <%= form.check_boxes_tree :origin, filter_origin_values, legend_title: t(".origin"), "aria-controls": "proposals" %>
31
- <% end %>
30
+ <% if component_settings.official_proposals_enabled %>
31
+ <%= form.check_boxes_tree :origin, filter_origin_values, legend_title: t(".origin"), "aria-controls": "proposals" %>
32
+ <% end %>
32
33
 
33
- <% if current_user %>
34
- <%= form.collection_radio_buttons :activity, activity_filter_values, :first, :last, { legend_title: t(".activity") }, "aria-controls": "proposals" %>
35
- <% end %>
34
+ <% if current_user %>
35
+ <%= form.collection_radio_buttons :activity, activity_filter_values, :first, :last, { legend_title: t(".activity") }, "aria-controls": "proposals" %>
36
+ <% end %>
36
37
 
37
- <% if @proposals.only_emendations.any? %>
38
- <%= form.collection_radio_buttons :type, filter_type_values, :first, :last, { legend_title: t(".amendment_type") }, "aria-controls": "proposals" %>
39
- <% end %>
38
+ <% if @proposals.only_emendations.any? %>
39
+ <%= form.collection_radio_buttons :type, filter_type_values, :first, :last, { legend_title: t(".amendment_type") }, "aria-controls": "proposals" %>
40
+ <% end %>
40
41
 
41
- <% if linked_classes_for(Decidim::Proposals::Proposal).any? %>
42
- <%= form.collection_radio_buttons :related_to, linked_classes_filter_values_for(Decidim::Proposals::Proposal), :first, :last, { legend_title: t(".related_to") }, "aria-controls": "proposals" %>
43
- <% end %>
42
+ <% if linked_classes_for(Decidim::Proposals::Proposal).any? %>
43
+ <%= form.collection_radio_buttons :related_to, linked_classes_filter_values_for(Decidim::Proposals::Proposal), :first, :last, { legend_title: t(".related_to") }, "aria-controls": "proposals" %>
44
+ <% end %>
44
45
 
45
- <%= hidden_field_tag :order, order, id: nil, class: "order_filter" %>
46
+ <%= hidden_field_tag :order, order, id: nil, class: "order_filter" %>
47
+ <% end %>
46
48
  <% end %>
@@ -13,6 +13,6 @@
13
13
  </button>
14
14
  </div>
15
15
  <div class="filters">
16
- <%= render partial: "filters" %>
16
+ <%= render partial: "filters", locals: { type: :small } %>
17
17
  </div>
18
18
  </div>
@@ -1,19 +1,29 @@
1
- <% if translated_attribute(component_settings.new_proposal_help_text).present? && @step != :step_4 %>
2
- <%= render partial: "decidim/shared/announcement", locals: { announcement: component_settings.new_proposal_help_text } %>
3
- <% elsif @step == :step_4 %>
4
- <%
5
- locals = {
6
- callout_class: "warning",
7
- announcement: t("decidim.proposals.proposals.preview.proposal_edit_before_minutes", count: component_settings.proposal_edit_before_minutes)
8
- }
9
- %>
10
- <%= render partial: "decidim/shared/announcement", locals: locals %>
1
+ <% if @step == :step_4 %>
2
+ <% body_messages = [t("decidim.proposals.proposals.preview.announcement_body")]
3
+ if component_settings.proposal_edit_time == "limited"
4
+ body_messages << t("decidim.proposals.proposals.preview.proposal_edit_before_minutes", count: component_settings.proposal_edit_before_minutes)
5
+ end %>
6
+
7
+ <%= cell(
8
+ "decidim/announcement",
9
+ {
10
+ title: t("decidim.proposals.proposals.preview.announcement_title"),
11
+ body: body_messages
12
+ },
13
+ callout_class: "warning"
14
+ ) %>
15
+ <% else %>
16
+ <%= cell("decidim/announcement", component_settings.new_proposal_help_text) %>
11
17
  <% end %>
12
18
 
13
19
  <% if proposal_wizard_step_help_text?(@step) %>
14
20
  <div class="proposal_wizard_help_text">
15
21
  <% callout_step_help_text_class ||= nil %>
16
- <%= render partial: "decidim/shared/announcement", locals: { announcement: component_settings.try("proposal_wizard_#{@step}_help_text"), callout_class: callout_step_help_text_class } %>
22
+ <%= cell(
23
+ "decidim/announcement",
24
+ component_settings.try("proposal_wizard_#{@step}_help_text"),
25
+ callout_class: callout_step_help_text_class
26
+ ) %>
17
27
  </div>
18
28
  <% end %>
19
29
 
@@ -1,19 +1,19 @@
1
1
  <% add_decidim_page_title(proposal_wizard_step_title(action_name)) %>
2
2
 
3
3
  <div class="row columns">
4
- <%= link_to :back, class: "muted-link" do %>
5
- <%= icon "chevron-left", class: "icon--small", role: "img", "aria-hidden": true %>
6
- <%= t(".back") %>
7
- <% end %>
4
+ <div class="m-bottom">
5
+ <%= link_to :back, class: "muted-link" do %>
6
+ <%= icon "chevron-left", class: "icon--small", role: "img", "aria-hidden": true %>
7
+ <%= t(".back") %>
8
+ <% end %>
9
+ </div>
8
10
  <h2 class="section-heading"><%= t(".title") %></h2>
9
11
  </div>
10
12
 
11
13
  <div class="row">
12
14
  <div class="columns large-6 medium-centered">
13
15
  <div class="card">
14
- <% if translated_attribute(component_settings.new_proposal_help_text).present? %>
15
- <%= render partial: "decidim/shared/announcement", locals: { announcement: component_settings.new_proposal_help_text } %>
16
- <% end %>
16
+ <%= cell("decidim/announcement", component_settings.new_proposal_help_text) %>
17
17
 
18
18
  <div class="card__content">
19
19
  <%= decidim_form_for(@form) do |form| %>
@@ -3,9 +3,57 @@
3
3
  <div class="row">
4
4
  <%= render partial: "wizard_aside" %>
5
5
 
6
- <div class="columns large-6">
6
+ <div class="columns large-9">
7
7
  <%= render partial: "wizard_header", locals: { callout_help_text_class: "warning" } %>
8
- <%= render partial: "proposal_preview", locals: { proposal: @proposal } %>
8
+ <div class="card card__content">
9
+ <div class="row column view-header">
10
+ <h3 class="heading3"><%= present(@proposal).title(links: true, html_escape: true) %></h3>
11
+ <% unless component_settings.participatory_texts_enabled? %>
12
+ <%= cell("decidim/coauthorships", @proposal, has_actions: false, size: 3, context: { current_user: current_user }) %>
13
+ <% end %>
14
+
15
+ <%= render_proposal_body(@proposal) %>
16
+
17
+ </div>
18
+ <div class="row column">
19
+ <%= cell "decidim/proposals/proposal_tags", @proposal %>
20
+ </div>
21
+ </div>
22
+ <div class="row column">
23
+ <%= attachments_for @proposal %>
24
+ </div>
25
+
26
+ <% if component_settings.geocoding_enabled? %>
27
+ <% if has_position?(@proposal) %>
28
+ <%= render partial: "dynamic_map_instructions" %>
29
+ <%= dynamic_map_for proposal_preview_data_for_map(@proposal) do %>
30
+ <%= stylesheet_link_tag "decidim/map" %>
31
+ <%= javascript_include_tag "decidim/map" %>
32
+ <% end %>
33
+ <%= decidim_form_for(@form, url: update_draft_proposal_path(@form), html: { method: :patch }) do |form| %>
34
+ <%= form.hidden_field :title, value: form_presenter.title %>
35
+ <%= form.hidden_field :body, value: form_presenter.body %>
36
+ <%= form.hidden_field :address %>
37
+ <%= form.hidden_field :latitude, data: { type: "latitude" } %>
38
+ <%= form.hidden_field :longitude, data: { type: "longitude" } %>
39
+ <div class="preview--form__hidden">
40
+ <% if @form.categories&.any? %>
41
+ <%= form.categories_select :category_id, @form.categories %>
42
+ <% end %>
43
+ <% if current_participatory_space.has_subscopes? %>
44
+ <%= scopes_picker_field form, :scope_id %>
45
+ <% end %>
46
+ <% if current_user.user_groups.verified.any? %>
47
+ <%= form.select :user_group_id, current_user.user_groups.verified.map { |g| [g.name, g.id] }, prompt: current_user.name %>
48
+ <% end %>
49
+ </div>
50
+ <div class="actions">
51
+ <%= form.submit t(".update_position"), class: "button expanded", data: { disable: true } %>
52
+ </div>
53
+ <% end %>
54
+ <% end %>
55
+ <% end %>
56
+
9
57
  <div class="p-l">
10
58
  <div class="row column flex-center">
11
59
  <%= link_to t(".modify"), edit_draft_proposal_path(@proposal) %>
@@ -34,10 +34,12 @@ extra_admin_link(
34
34
  <%= emendation_announcement_for @proposal %>
35
35
  <div class="row column view-header">
36
36
 
37
- <%= link_to proposals_path(filter_link_params), class: "small hollow" do %>
38
- <%= icon "chevron-left", class: "icon--small", role: "img", "aria-hidden": true %>
39
- <%= t(".back_to_list") %>
40
- <% end %>
37
+ <div class="m-bottom">
38
+ <%= link_to proposals_path(filter_link_params), class: "small hollow" do %>
39
+ <%= icon "chevron-left", class: "icon--small", role: "img", "aria-hidden": true %>
40
+ <%= t(".back_to_list") %>
41
+ <% end %>
42
+ </div>
41
43
 
42
44
  <% if @proposal.emendation? %>
43
45
  <h3 class="heading3"><%= t(".changes_at_title", title: present(@proposal.amendable).title(links: true, html_escape: true)) %></h3>
@@ -66,7 +68,7 @@ extra_admin_link(
66
68
  <%= cell "decidim/proposals/proposal_tags", @proposal %>
67
69
  </div>
68
70
 
69
- <%= cell("decidim/announcement", proposal_reason_callout_args) if @proposal.answered? && @proposal.published_state? %>
71
+ <%= cell("decidim/announcement", proposal_reason_callout_announcement, callout_class: proposal_reason_callout_class) if @proposal.answered? && @proposal.published_state? %>
70
72
 
71
73
  <%= linked_resources_for @proposal, :results, "included_proposals" %>
72
74
  <%= linked_resources_for @proposal, :projects, "included_proposals" %>
@@ -136,10 +138,4 @@ extra_admin_link(
136
138
 
137
139
  <%= comments_for @proposal %>
138
140
 
139
- <%=
140
- render partial: "decidim/shared/flag_modal", locals: {
141
- reportable: @proposal,
142
- form: @report_form,
143
- url: decidim.report_path(sgid: @proposal.to_sgid.to_s)
144
- }
145
- %>
141
+ <%= cell("decidim/flag_modal", @proposal) %>
@@ -283,10 +283,6 @@ ar:
283
283
  description: عدد الدعم للمقترحات
284
284
  object: الدعم
285
285
  title: الدعم
286
- participatory_processes:
287
- participatory_process_groups:
288
- highlighted_proposals:
289
- proposals: اقتراحات
290
286
  participatory_spaces:
291
287
  highlighted_proposals:
292
288
  see_all: شاهد الكل (%{count})
@@ -302,7 +298,6 @@ ar:
302
298
  actions:
303
299
  preview: معاينة
304
300
  exports:
305
- comments: تعليقات
306
301
  proposals: اقتراحات
307
302
  models:
308
303
  proposal:
@@ -325,9 +320,7 @@ ar:
325
320
  new_import:
326
321
  accepted_mime_types:
327
322
  md: تخفيض السعر
328
- odt: ODT
329
323
  bottom_hint: "(سوف تكون قادرًا على معاينة وفرز أقسام المستندات)"
330
- document_legend: 'أضف مستندًا أقل من 2 ميغابايت ، وسيتم تحليل كل قسم حتى عمق 3 مستويات في الاقتراحات. التنسيقات المدعومة هي: %{valid_mime_types}'
331
324
  title: إضافة وثيقة
332
325
  upload_document: تحميل المستند
333
326
  publish:
@@ -487,13 +480,6 @@ ar:
487
480
  ok: سحب المسودة التعاونية
488
481
  title: الإجراء التالي لا رجعة فيه
489
482
  success: تم سحب مشروع تعاوني بنجاح.
490
- compare:
491
- mine_is_different: مسودتي التعاونية مختلفة
492
- no_similars_found: أحسنت! لم يتم العثور على مسودات تعاونية مماثلة
493
- title: مسودات تعاونية مماثلة
494
- complete:
495
- send: إرسال
496
- title: أكمل مسودتك التعاونية
497
483
  count:
498
484
  drafts_count:
499
485
  zero: "%{count} مسودات تعاونية"
@@ -529,7 +515,6 @@ ar:
529
515
  unfold: كشف
530
516
  new:
531
517
  send: استمر
532
- title: إنشاء مسودتك التعاونية
533
518
  new_collaborative_draft_button:
534
519
  new_collaborative_draft: مشروع تعاوني جديد
535
520
  orders:
@@ -579,14 +564,9 @@ ar:
579
564
  error: حدثت مشكلة في حفظ المسودة التعاونية.
580
565
  success: تم تحديث المسودة التعاونية بنجاح.
581
566
  wizard_aside:
582
- back: الى الخلف
583
567
  info: إنك لعلى خلق <strong>مشروع تعاوني</strong>.
584
- wizard_steps:
585
- see_steps: عرض الخطوات
586
- step_1: إنشاء مسودتك التعاونية
587
- step_2: قارن مع المسودات التعاونية
588
- step_3: أكمل مسودتك التعاونية
589
- step_of: الخطوة %{current_step_num} من %{total_steps}
568
+ wizard_header:
569
+ title: إنشاء مسودتك التعاونية
590
570
  create:
591
571
  error: كانت هناك مشكلة في حفظ الاقتراح.
592
572
  success: تم إنشاء الاقتراح بنجاح. تم الحفظ كمسودة.
@@ -27,6 +27,9 @@ ca:
27
27
  user_group_id: Crea una proposta com a
28
28
  proposal_answer:
29
29
  answer: Respondre
30
+ cost: Cost
31
+ cost_report: Informe de cost
32
+ execution_period: Període d'execució
30
33
  proposals_copy:
31
34
  copy_proposals: Entenc que això importarà totes les propostes del component seleccionat a l'actual i que aquesta acció no es pot desfer.
32
35
  origin_component_id: Component des d'on importar les propostes
@@ -136,7 +139,11 @@ ca:
136
139
  participatory_texts_enabled: Texts participatius habilitats
137
140
  participatory_texts_enabled_readonly: No es pot interactuar amb aquesta configuració si hi ha propostes existents. Si us plau, crea un nou 'component de propostes' si vols habilitar aquesta característica o descarta totes les propostes importades al menú "textos participatius" si vols deshabilitar-lo.
138
141
  proposal_answering_enabled: Resposta a propostes habilitada
139
- proposal_edit_before_minutes: Les propostes poden ser editades per les autorrs abans que passin aquests minuts
142
+ proposal_edit_before_minutes: Les propostes poden ser editades per les autores abans que passin aquests minuts
143
+ proposal_edit_time: Edició de propostes
144
+ proposal_edit_time_choices:
145
+ infinite: Permet l'edició de propostes durant un període infinit
146
+ limited: Permet l'edició de propostes durant una finestra temporal específica
140
147
  proposal_length: Longitud màxima del cos de la proposta
141
148
  proposal_limit: Límit de propostes per participant
142
149
  proposal_wizard_step_1_help_text: Text d'ajuda pel pas "Crear" de l'assistent de propostes
@@ -336,10 +343,6 @@ ca:
336
343
  description: Nombre de suports a les propostes
337
344
  object: suports
338
345
  title: Suports
339
- participatory_processes:
340
- participatory_process_groups:
341
- highlighted_proposals:
342
- proposals: Propostes
343
346
  participatory_spaces:
344
347
  highlighted_proposals:
345
348
  see_all: Veure tots (%{count})
@@ -356,7 +359,7 @@ ca:
356
359
  actions:
357
360
  preview: Previsualitzar
358
361
  exports:
359
- comments: Comentaris
362
+ proposal_comments: Comentaris
360
363
  proposals: Propostes
361
364
  models:
362
365
  proposal:
@@ -380,9 +383,9 @@ ca:
380
383
  new_import:
381
384
  accepted_mime_types:
382
385
  md: Markdown
383
- odt: Odt
386
+ odt: ODT
384
387
  bottom_hint: "(Podràs previsualitzar i ordenar les seccions del document)"
385
- document_legend: 'Afegeix un document de menys de 2 MB, cadascuna de les seccions (fins a 3 nivells de profunditat) es convertiran a propostes. Els formats suportats són: %{valid_mime_types}'
388
+ document_legend: 'Afegeix un document de menys de 2 Mb, cadascuna de les seccions (fins a 3 nivells de profunditat) es convertiran a propostes. Els formats suportats són: %{valid_mime_types}'
386
389
  title: AFEGIR DOCUMENT
387
390
  upload_document: Puja el document
388
391
  publish:
@@ -423,6 +426,7 @@ ca:
423
426
  form:
424
427
  attachment_legend: "(Opcional) Afegiu un fitxer adjunt"
425
428
  created_in_meeting: Aquesta proposta prové d'una trobada
429
+ delete_attachment: Suprimeix l'adjunt
426
430
  select_a_category: Selecciona una categoria
427
431
  select_a_meeting: Selecciona una trobada
428
432
  index:
@@ -432,7 +436,7 @@ ca:
432
436
  cancel: Cancel·lar
433
437
  change_category: Canvia la categoria
434
438
  change_scope: Canviar àmbit
435
- merge: Uneix-te a un de nou
439
+ merge: Fusionar a una nova
436
440
  merge_button: Fusionar
437
441
  publish: Publica
438
442
  publish_answers: Publica respostes
@@ -497,6 +501,7 @@ ca:
497
501
  no_components: No hi ha cap altre component de propostes en aquest espai participatiu des d'on importar-les.
498
502
  select_component: Escull un component
499
503
  select_states: Consulta els estats de les propostes a importar
504
+ title: Importar propostes
500
505
  proposals_merges:
501
506
  create:
502
507
  invalid: S'ha produït un error en fusionar les propostes seleccionades.
@@ -522,7 +527,7 @@ ca:
522
527
  create: "%{user_name} ha deixat una nota privada a la proposta %{resource_name} dins l'espai %{space_name}"
523
528
  valuation_assignment:
524
529
  create: "%{user_name} ha assignat la proposta %{resource_name} a una avaluadora"
525
- delete: "%{user_name} ha desfet l'assignació a una avaluadora de la proposta %{resource_name}"
530
+ delete: "%{user_name} ha desfet l'assignació a una avaluadora de la proposta %{proposal_title}"
526
531
  answers:
527
532
  accepted: Acceptades
528
533
  evaluating: En avaluació
@@ -569,13 +574,6 @@ ca:
569
574
  ok: Retira l'esborrany col·laboratiu
570
575
  title: La següent acció és irreversible
571
576
  success: L'esborrany col·laboratiu s'ha retirat correctamente.
572
- compare:
573
- mine_is_different: El meu esborrany col·laboratiu és diferent
574
- no_similars_found: Enhorabona! No s'han trobat esborranys col·laboratius similars
575
- title: Esborranys col·laboratius similars
576
- complete:
577
- send: Enviar
578
- title: Completa el teu esborrany col·laboratiu
579
577
  count:
580
578
  drafts_count:
581
579
  one: "%{count} esborrany de col·laboració"
@@ -607,7 +605,6 @@ ca:
607
605
  unfold: Desplega
608
606
  new:
609
607
  send: Continua
610
- title: Crea el teu esborrany col·laboratiu
611
608
  new_collaborative_draft_button:
612
609
  new_collaborative_draft: Nou esborrany col·laboratiu
613
610
  orders:
@@ -652,23 +649,14 @@ ca:
652
649
  update:
653
650
  error: S'ha produït un error en desar l'esborrany col·laboratiu.
654
651
  success: L'esborrany col·laboratiu s'ha actualitzat correctament.
655
- title: Editar l'esborrany col·laboratiu
656
652
  wizard_aside:
657
- back: Torna
658
653
  back_from_collaborative_draft: Tornar a l'esborrany col·laboratiu
659
- back_from_step_1: Tornar a l'esborrany col·laboratiu
660
- back_from_step_2: Tornar a l'esborrany col·laboratiu
661
- back_from_step_3: Tornar a comparar els esborranys col·laboratius
662
- back_from_step_4: Tornar a editar l'esborrany
663
654
  info: Estàs creant un <strong>esborrany col·laboratiu</strong>.
664
- wizard_steps:
665
- current_step: Fase actual
666
- see_steps: veure els passos
667
- step_1: Crea el teu esborrany col·laboratiu
668
- step_2: Compara amb esborranys col·laboratius
669
- step_3: Completa el teu esborrany col·laboratiu
670
- step_of: Pas %{current_step_num} de %{total_steps}
671
- title: Passos per a la creació d'un esborrany col·laboratiu
655
+ wizard_header:
656
+ title: Crea el teu esborrany col·laboratiu
657
+ content_blocks:
658
+ highlighted_proposals:
659
+ proposals: Propostes
672
660
  create:
673
661
  error: Hi ha hagut un error en desar la proposta.
674
662
  success: La proposta s'ha creat correctament. S'ha desat com a esborrany.
@@ -677,6 +665,7 @@ ca:
677
665
  success: L'esborrany de proposta s'ha eliminat correctament.
678
666
  last_activity:
679
667
  new_proposal_at_html: "<span>Nova proposta a %{link}</span>"
668
+ proposal_updated_at_html: "<span>Proposta actualitzada a %{link}</span>"
680
669
  models:
681
670
  collaborative_draft:
682
671
  fields:
@@ -721,6 +710,8 @@ ca:
721
710
  proposals_count:
722
711
  one: "%{count} proposta"
723
712
  other: "%{count} propostes"
713
+ dynamic_map_instructions:
714
+ instructions: <h3>Pots moure el punt al mapa. </h3><p>No oblidis fer clic al botó "Actualitzar posició" abans de publicar la teva proposta.</p>
724
715
  edit:
725
716
  add_documents: Documents
726
717
  add_images: Arxiu
@@ -781,13 +772,18 @@ ca:
781
772
  document_index: Índex del document
782
773
  view_index:
783
774
  see_index: Veure índex
775
+ placeholder:
776
+ address: 37 Homewood Drive Brownsburg, IN 46112
784
777
  preview:
778
+ announcement_body: La teva proposta s'ha guardat com un esborrany. Necessita ser publicada perquè aparegui al lloc.
779
+ announcement_title: La teva proposta encara no s'ha publicat
785
780
  modify: Modifica la proposta
786
781
  proposal_edit_before_minutes:
787
782
  one: Podràs editar aquesta proposta durant el primer minut després de publicar-la. Un cop passat aquest temps, no podràs editar la proposta.
788
783
  other: Podràs editar aquesta proposta durant els primers %{count} minuts després de la publicació de la proposta. Un cop passada aquesta finestra de temps, no podràs editar la proposta.
789
784
  publish: Publica
790
785
  title: Publica la teva proposta
786
+ update_position: Actualitzar posició
791
787
  proposal:
792
788
  creation_date: 'Data de creació: %{date}'
793
789
  view_proposal: Veure proposta