decidim-proposals 0.23.0 → 0.23.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (54) hide show
  1. checksums.yaml +4 -4
  2. data/app/cells/decidim/proposals/proposal_activity_cell.rb +13 -5
  3. data/app/commands/decidim/proposals/admin/update_proposal.rb +2 -0
  4. data/app/controllers/decidim/proposals/admin/proposals_controller.rb +1 -1
  5. data/app/forms/decidim/proposals/admin/proposal_form.rb +13 -0
  6. data/app/forms/decidim/proposals/proposal_wizard_create_step_form.rb +0 -8
  7. data/app/models/decidim/proposals/proposal.rb +3 -1
  8. data/app/presenters/decidim/proposals/admin_log/proposal_presenter.rb +2 -2
  9. data/app/presenters/decidim/proposals/admin_log/valuation_assignment_presenter.rb +2 -2
  10. data/app/presenters/decidim/proposals/proposal_presenter.rb +31 -12
  11. data/app/validators/proposal_length_validator.rb +4 -2
  12. data/app/views/decidim/proposals/admin/proposals/_form.html.erb +8 -2
  13. data/app/views/decidim/proposals/collaborative_drafts/edit.html.erb +6 -4
  14. data/app/views/decidim/proposals/collaborative_drafts/show.html.erb +6 -4
  15. data/app/views/decidim/proposals/proposals/edit.html.erb +6 -4
  16. data/app/views/decidim/proposals/proposals/show.html.erb +6 -4
  17. data/config/locales/ar.yml +1 -0
  18. data/config/locales/bg.yml +4 -0
  19. data/config/locales/ca.yml +10 -8
  20. data/config/locales/cs.yml +26 -24
  21. data/config/locales/de.yml +107 -78
  22. data/config/locales/el.yml +1 -1
  23. data/config/locales/en.yml +2 -0
  24. data/config/locales/es-MX.yml +4 -3
  25. data/config/locales/es-PY.yml +4 -3
  26. data/config/locales/es.yml +4 -3
  27. data/config/locales/eu.yml +5 -2
  28. data/config/locales/fi-plain.yml +3 -1
  29. data/config/locales/fi.yml +10 -8
  30. data/config/locales/fr-CA.yml +6 -4
  31. data/config/locales/fr.yml +6 -4
  32. data/config/locales/gl.yml +6 -3
  33. data/config/locales/hu.yml +1 -0
  34. data/config/locales/id-ID.yml +1 -0
  35. data/config/locales/is-IS.yml +4 -1
  36. data/config/locales/it.yml +3 -3
  37. data/config/locales/ja.yml +1 -1
  38. data/config/locales/lv.yml +1 -0
  39. data/config/locales/nl.yml +18 -16
  40. data/config/locales/no.yml +3 -2
  41. data/config/locales/pl.yml +9 -3
  42. data/config/locales/pt-BR.yml +2 -1
  43. data/config/locales/ro-RO.yml +5 -0
  44. data/config/locales/ru.yml +4 -1
  45. data/config/locales/si-LK.yml +1 -0
  46. data/config/locales/sk.yml +2 -1
  47. data/config/locales/sv.yml +5 -5
  48. data/config/locales/sw-KE.yml +1 -0
  49. data/config/locales/tr-TR.yml +381 -217
  50. data/config/locales/uk.yml +4 -1
  51. data/db/migrate/20200708091228_move_proposals_fields_to_i18n.rb +8 -2
  52. data/lib/decidim/proposals/version.rb +1 -1
  53. metadata +23 -22
  54. data/db/migrate/20200915151348_fix_proposals_data_to_ensure_title_and_body_are_hashes.rb +0 -37
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0b1d702c001eb32792810f175a1963d5c80edba5f12b34d062247fc4de24cedc
4
- data.tar.gz: 66e7742e5eb0a37943cafd5fada525162e66dfa8409f5cb270b8a456bbd1328a
3
+ metadata.gz: 637cdd20a4aaaaa7cbba8c154c6d0dfb7f2dbbe955473cc62873925c3272741c
4
+ data.tar.gz: 48646382d74a0dd40410dd89b595ffafce42ff3099c6202fe023658bb930fc2d
5
5
  SHA512:
6
- metadata.gz: 67449c4a1dd0831103bd357783f509fdf4408eb0908ea6c0d0a43bee0ea949efdf2a9c83d720d46a2a45f80ff24493c6d2ab3c4ec193606ba821eae2b36a8a76
7
- data.tar.gz: a435ebb30917953b418a20f01d4ee99da0fc4c268210489552c6c4806030d1239c3e84036d9dd3aa529d90f2da3481a35f6702c124c466cd117a451d2361b74f
6
+ metadata.gz: '0779bca6ce193269caef33d769c9104a74564b0612e127130aad29d71a3f1d7c6683105b1ba82920f01cfe5f744bf9ea4910ed27a5104728ce2ceda78f3327d1'
7
+ data.tar.gz: 00b88574a67ceddb64df0610bf879b40d467536bacaad9f3df78c87be5044a7057f5c19e309efea9166afdb2a5876c78be806c85dc210bb652b1da6da9107aba
@@ -2,13 +2,21 @@
2
2
 
3
3
  module Decidim
4
4
  module Proposals
5
- # A cell to display when a proposal has been published.
5
+ # A cell to display when actions happen on a proposal.
6
6
  class ProposalActivityCell < ActivityCell
7
7
  def title
8
- I18n.t(
9
- "decidim.proposals.last_activity.new_proposal_at_html",
10
- link: participatory_space_link
11
- )
8
+ case action
9
+ when "update"
10
+ I18n.t(
11
+ "decidim.proposals.last_activity.proposal_updated_at_html",
12
+ link: participatory_space_link
13
+ )
14
+ else
15
+ I18n.t(
16
+ "decidim.proposals.last_activity.new_proposal_at_html",
17
+ link: participatory_space_link
18
+ )
19
+ end
12
20
  end
13
21
 
14
22
  def resource_link_text
@@ -28,6 +28,8 @@ module Decidim
28
28
  def call
29
29
  return broadcast(:invalid) if form.invalid?
30
30
 
31
+ delete_attachment(form.attachment) if delete_attachment?
32
+
31
33
  if process_attachments?
32
34
  @proposal.attachments.destroy_all
33
35
 
@@ -124,13 +124,13 @@ module Decidim
124
124
  def edit
125
125
  enforce_permission_to :edit, :proposal, proposal: proposal
126
126
  @form = form(Admin::ProposalForm).from_model(proposal)
127
- @form.attachment = form(AttachmentForm).from_params({})
128
127
  end
129
128
 
130
129
  def update
131
130
  enforce_permission_to :edit, :proposal, proposal: proposal
132
131
 
133
132
  @form = form(Admin::ProposalForm).from_params(params)
133
+
134
134
  Admin::UpdateProposal.call(@form, @proposal) do
135
135
  on(:ok) do |_proposal|
136
136
  flash[:notice] = t("proposals.update.success", scope: "decidim")
@@ -13,6 +13,19 @@ module Decidim
13
13
  validates :title, :body, translatable_presence: true
14
14
 
15
15
  validate :notify_missing_attachment_if_errored
16
+
17
+ def map_model(model)
18
+ super(model)
19
+ presenter = ProposalPresenter.new(model)
20
+
21
+ self.title = presenter.title(all_locales: title.is_a?(Hash))
22
+ self.body = presenter.body(all_locales: body.is_a?(Hash))
23
+ self.attachment = if model.documents.first.present?
24
+ { file: model.documents.first.file, title: translated_attribute(model.documents.first.title) }
25
+ else
26
+ {}
27
+ end
28
+ end
16
29
  end
17
30
  end
18
31
  end
@@ -18,7 +18,6 @@ module Decidim
18
18
  maximum: ->(record) { record.component.settings.proposal_length }
19
19
  }
20
20
 
21
- validate :proposal_length
22
21
  validate :body_is_not_bare_template
23
22
 
24
23
  alias component current_component
@@ -32,13 +31,6 @@ module Decidim
32
31
 
33
32
  private
34
33
 
35
- def proposal_length
36
- return unless body.presence
37
-
38
- length = current_component.settings.proposal_length
39
- errors.add(:body, :too_long, count: length) if body.length > length
40
- end
41
-
42
34
  def body_is_not_bare_template
43
35
  return if body_template.blank?
44
36
 
@@ -130,7 +130,9 @@ module Decidim
130
130
  .where(decidim_author_type: "Decidim::UserBaseEntity")
131
131
  .pluck(:decidim_author_id).to_a.compact.uniq
132
132
 
133
- (endorsements_participants_ids + participants_has_voted_ids + coauthors_recipients_ids).flatten.compact.uniq
133
+ commentators_ids = Decidim::Comments::Comment.user_commentators_ids_in(proposals)
134
+
135
+ (endorsements_participants_ids + participants_has_voted_ids + coauthors_recipients_ids + commentators_ids).flatten.compact.uniq
134
136
  end
135
137
 
136
138
  # Public: Updates the vote count of this proposal.
@@ -42,8 +42,8 @@ module Decidim
42
42
  "activemodel.attributes.proposal"
43
43
  end
44
44
 
45
- def has_diff?
46
- action == "answer" || super
45
+ def diff_actions
46
+ super + %w(answer)
47
47
  end
48
48
  end
49
49
  end
@@ -38,8 +38,8 @@ module Decidim
38
38
  "activemodel.attributes.valuation_assignment.admin_log"
39
39
  end
40
40
 
41
- def has_diff?
42
- %w(create delete).include?(action) || super
41
+ def diff_actions
42
+ super + %w(create delete)
43
43
  end
44
44
 
45
45
  def i18n_params
@@ -38,28 +38,33 @@ module Decidim
38
38
  # extras - should include extra hashtags?
39
39
  #
40
40
  # Returns a String.
41
- def title(links: false, extras: true, html_escape: false)
42
- text = translated_attribute(proposal.title)
43
- text = decidim_html_escape(text) if html_escape
41
+ def title(links: false, extras: true, html_escape: false, all_locales: false)
42
+ return unless proposal
44
43
 
45
- renderer = Decidim::ContentRenderers::HashtagRenderer.new(text)
46
- renderer.render(links: links, extras: extras).html_safe
44
+ handle_locales(proposal.title, all_locales) do |content|
45
+ content = decidim_html_escape(content) if html_escape
46
+
47
+ renderer = Decidim::ContentRenderers::HashtagRenderer.new(content)
48
+ renderer.render(links: links, extras: extras).html_safe
49
+ end
47
50
  end
48
51
 
49
52
  def id_and_title(links: false, extras: true, html_escape: false)
50
53
  "##{proposal.id} - #{title(links: links, extras: extras, html_escape: html_escape)}"
51
54
  end
52
55
 
53
- def body(links: false, extras: true, strip_tags: false)
54
- text = translated_attribute(proposal.body)
56
+ def body(links: false, extras: true, strip_tags: false, all_locales: false)
57
+ return unless proposal
55
58
 
56
- text = strip_tags(sanitize_text(text)) if strip_tags
59
+ handle_locales(proposal.body, all_locales) do |content|
60
+ content = strip_tags(sanitize_text(content)) if strip_tags
57
61
 
58
- renderer = Decidim::ContentRenderers::HashtagRenderer.new(text)
59
- text = renderer.render(links: links, extras: extras).html_safe
62
+ renderer = Decidim::ContentRenderers::HashtagRenderer.new(content)
63
+ content = renderer.render(links: links, extras: extras).html_safe
60
64
 
61
- text = Decidim::ContentRenderers::LinkRenderer.new(text).render if links
62
- text
65
+ content = Decidim::ContentRenderers::LinkRenderer.new(content).render if links
66
+ content
67
+ end
63
68
  end
64
69
 
65
70
  # Returns the proposal versions, hiding not published answers
@@ -130,6 +135,20 @@ module Decidim
130
135
  def sanitize_text(text)
131
136
  add_line_feeds(sanitize_ordered_lists(sanitize_unordered_lists(text)))
132
137
  end
138
+
139
+ def handle_locales(content, all_locales, &block)
140
+ if all_locales
141
+ content.each_with_object({}) do |(key, value), parsed_content|
142
+ parsed_content[key] = if key == "machine_translations"
143
+ handle_locales(value, all_locales, &block)
144
+ else
145
+ block.call(value)
146
+ end
147
+ end
148
+ else
149
+ yield(translated_attribute(content))
150
+ end
151
+ end
133
152
  end
134
153
  end
135
154
  end
@@ -20,7 +20,8 @@ class ProposalLengthValidator < ActiveModel::EachValidator
20
20
  if min && min.positive? && value.length < min
21
21
  record.errors.add(
22
22
  attribute,
23
- options[:message] || :too_short
23
+ options[:message] || :too_short,
24
+ count: min
24
25
  )
25
26
  end
26
27
  end
@@ -31,7 +32,8 @@ class ProposalLengthValidator < ActiveModel::EachValidator
31
32
  if max && max.positive? && value.length > max
32
33
  record.errors.add(
33
34
  attribute,
34
- options[:message] || :too_long
35
+ options[:message] || :too_long,
36
+ count: max
35
37
  )
36
38
  end
37
39
  end
@@ -5,11 +5,11 @@
5
5
 
6
6
  <div class="card-section">
7
7
  <div class="row column hashtags__container">
8
- <%= form.translated :text_field, :title, class: "js-hashtags", value: form_presenter.title(extras: false).strip, hashtaggable: true %>
8
+ <%= form.translated :text_field, :title, autofocus: true, class: "js-hashtags", hashtaggable: true %>
9
9
  </div>
10
10
 
11
11
  <div class="row column hashtags__container">
12
- <%= form.translated :editor, :body, hashtaggable: true, value: form_presenter.body(extras: false).strip %>
12
+ <%= form.translated :editor, :body, hashtaggable: true %>
13
13
  </div>
14
14
 
15
15
  <% if @form.component_automatic_hashtags.any? %>
@@ -84,6 +84,12 @@
84
84
 
85
85
  <div class="row column">
86
86
  <%= form.upload :file, optional: false %>
87
+ <% if params[:id].present? %>
88
+ <% if proposal.documents.present? %>
89
+ <%= form.hidden_field :id, value: proposal.documents.first.id %>
90
+ <%= form.check_box :delete_file, label: t(".delete_attachment"), value: proposal.documents.first.id %>
91
+ <% end %>
92
+ <% end %>
87
93
  </div>
88
94
  <% end %>
89
95
  </fieldset>
@@ -1,10 +1,12 @@
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
 
@@ -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) %>
@@ -1,10 +1,12 @@
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
 
@@ -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>
@@ -578,6 +578,7 @@ ar:
578
578
  update:
579
579
  error: حدثت مشكلة في حفظ المسودة التعاونية.
580
580
  success: تم تحديث المسودة التعاونية بنجاح.
581
+ title: تحرير المسودة التعاونية
581
582
  wizard_aside:
582
583
  back: الى الخلف
583
584
  info: إنك لعلى خلق <strong>مشروع تعاوني</strong>.
@@ -229,6 +229,10 @@ bg:
229
229
  proposal_published_for_space:
230
230
  email_intro: Предложението "%{resource_title}" беше добавено в "%{participatory_space_title}", което следвате.
231
231
  email_outro: Получавате това известие, защото следвате "%{participatory_space_title}". Може да прекратите известията чрез предната връзка.
232
+ participatory_processes:
233
+ participatory_process_groups:
234
+ highlighted_proposals:
235
+ proposals: Предложения
232
236
  proposals:
233
237
  versions:
234
238
  collaborative_drafts:
@@ -136,7 +136,7 @@ ca:
136
136
  participatory_texts_enabled: Texts participatius habilitats
137
137
  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
138
  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
139
+ proposal_edit_before_minutes: Les propostes poden ser editades per les autores abans que passin aquests minuts
140
140
  proposal_length: Longitud màxima del cos de la proposta
141
141
  proposal_limit: Límit de propostes per participant
142
142
  proposal_wizard_step_1_help_text: Text d'ajuda pel pas "Crear" de l'assistent de propostes
@@ -423,6 +423,7 @@ ca:
423
423
  form:
424
424
  attachment_legend: "(Opcional) Afegiu un fitxer adjunt"
425
425
  created_in_meeting: Aquesta proposta prové d'una trobada
426
+ delete_attachment: Suprimeix l'adjunt
426
427
  select_a_category: Selecciona una categoria
427
428
  select_a_meeting: Selecciona una trobada
428
429
  index:
@@ -432,7 +433,7 @@ ca:
432
433
  cancel: Cancel·lar
433
434
  change_category: Canvia la categoria
434
435
  change_scope: Canviar àmbit
435
- merge: Uneix-te a un de nou
436
+ merge: Fusionar a una nova
436
437
  merge_button: Fusionar
437
438
  publish: Publica
438
439
  publish_answers: Publica respostes
@@ -522,7 +523,7 @@ ca:
522
523
  create: "%{user_name} ha deixat una nota privada a la proposta %{resource_name} dins l'espai %{space_name}"
523
524
  valuation_assignment:
524
525
  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}"
526
+ delete: "%{user_name} ha desfet l'assignació a una avaluadora de la proposta %{proposal_title}"
526
527
  answers:
527
528
  accepted: Acceptades
528
529
  evaluating: En avaluació
@@ -574,7 +575,7 @@ ca:
574
575
  no_similars_found: Enhorabona! No s'han trobat esborranys col·laboratius similars
575
576
  title: Esborranys col·laboratius similars
576
577
  complete:
577
- send: Enviar
578
+ send: Envia
578
579
  title: Completa el teu esborrany col·laboratiu
579
580
  count:
580
581
  drafts_count:
@@ -652,7 +653,7 @@ ca:
652
653
  update:
653
654
  error: S'ha produït un error en desar l'esborrany col·laboratiu.
654
655
  success: L'esborrany col·laboratiu s'ha actualitzat correctament.
655
- title: Editar l'esborrany col·laboratiu
656
+ title: Edita l'esborrany col·laboratiu
656
657
  wizard_aside:
657
658
  back: Torna
658
659
  back_from_collaborative_draft: Tornar a l'esborrany col·laboratiu
@@ -662,12 +663,12 @@ ca:
662
663
  back_from_step_4: Tornar a editar l'esborrany
663
664
  info: Estàs creant un <strong>esborrany col·laboratiu</strong>.
664
665
  wizard_steps:
665
- current_step: Fase actual
666
- see_steps: veure els passos
666
+ current_step: Pas actual
667
+ see_steps: veure les fases
667
668
  step_1: Crea el teu esborrany col·laboratiu
668
669
  step_2: Compara amb esborranys col·laboratius
669
670
  step_3: Completa el teu esborrany col·laboratiu
670
- step_of: Pas %{current_step_num} de %{total_steps}
671
+ step_of: Fase %{current_step_num} de %{total_steps}
671
672
  title: Passos per a la creació d'un esborrany col·laboratiu
672
673
  create:
673
674
  error: Hi ha hagut un error en desar la proposta.
@@ -677,6 +678,7 @@ ca:
677
678
  success: L'esborrany de proposta s'ha eliminat correctament.
678
679
  last_activity:
679
680
  new_proposal_at_html: "<span>Nova proposta a %{link}</span>"
681
+ proposal_updated_at_html: "<span>Proposta actualitzada a %{link}</span>"
680
682
  models:
681
683
  collaborative_draft:
682
684
  fields:
@@ -8,7 +8,7 @@ cs:
8
8
  decidim_scope_id: Rozsah
9
9
  has_address: Má adresu
10
10
  scope_id: Oblast působnosti
11
- state: Stát
11
+ state: Stav
12
12
  title: Titul
13
13
  user_group_id: Vytvořit návrh spolupráce jako
14
14
  proposal:
@@ -21,7 +21,7 @@ cs:
21
21
  decidim_scope_id: Rozsah
22
22
  has_address: Má adresu
23
23
  scope_id: Oblast působnosti
24
- state: Stát
24
+ state: Stav
25
25
  suggested_hashtags: Navrhované hashtags
26
26
  title: Titul
27
27
  user_group_id: Vytvořit návrh jako
@@ -147,10 +147,10 @@ cs:
147
147
  proposal_edit_before_minutes: Návrhy mohou být editovány autory před tím, než projde hodně minut
148
148
  proposal_length: Maximální délka návrhu
149
149
  proposal_limit: Limit návrhu na uživatele
150
- proposal_wizard_step_1_help_text: Návrh průvodce "Vytvořit" pomocný text kroku
151
- proposal_wizard_step_2_help_text: Průvodce návrhem "Porovnat" krok nápovědy
152
- proposal_wizard_step_3_help_text: Návrh průvodce "Kompletní" pomocný text kroku
153
- proposal_wizard_step_4_help_text: Průvodce návrhem "Publikovat" pomocný text kroku
150
+ proposal_wizard_step_1_help_text: Text průvodce kroku nápovědy "Vytvořit" Návrh
151
+ proposal_wizard_step_2_help_text: Text průvodce kroku nápovědy "Porovnat" návrhy
152
+ proposal_wizard_step_3_help_text: Text průvodce kroku nápovědy „Dokončit“ Návrh
153
+ proposal_wizard_step_4_help_text: Text průvodce kroku nápovědy "Publikovat" Návrh
154
154
  resources_permissions_enabled: Pro každý návrh lze nastavit oprávnění akce
155
155
  scope_id: Oblast působnosti
156
156
  scopes_enabled: Oblasti působnosti povoleny
@@ -169,7 +169,7 @@ cs:
169
169
  participants: Pozměňovací návrhy jsou viditelné pouze pro jejich autory
170
170
  amendments_visibility_help: Pokud je zvolena možnost "pozměňovací návrhy jsou viditelné pouze jejich autorům", musí být účastník přihlášen, aby se seznámil s provedenými pozměňovacími návrhy.
171
171
  announcement: Oznámení
172
- answers_with_costs: Povolit náklady na odpovědi návrhu
172
+ answers_with_costs: Povolit finanční náklady v odpovědích návrhu
173
173
  automatic_hashtags: Do všech návrhů byly přidány značky Hashtags
174
174
  comments_blocked: Komentáře byly blokovány
175
175
  creation_enabled: Vytváření návrhu je povoleno
@@ -177,7 +177,7 @@ cs:
177
177
  endorsements_enabled: Schvalování povoleno
178
178
  proposal_answering_enabled: Odpovídání návrhu je povoleno
179
179
  publish_answers_immediately: Okamžitě publikovat odpovědi návrhu
180
- suggested_hashtags: Hashtags navrhl uživatelům nové návrhy
180
+ suggested_hashtags: Hashtagy navržené uživatelům pro nové návrhy
181
181
  votes_blocked: Hlasování bylo blokováno
182
182
  votes_enabled: Hlasování povoleno
183
183
  votes_hidden: Hlasy skryté (pokud jsou povoleny hlasy, při kontrole se skryje počet hlasů)
@@ -384,14 +384,14 @@ cs:
384
384
  info_1: Následující oddíly byly analyzovány z importovaného dokumentu, byly převedeny na návrhy. Nyní můžete před publikováním zkontrolovat a upravit vše, co potřebujete.
385
385
  publish_document: Publikujte dokument
386
386
  save_draft: Uložit koncept
387
- title: PŘEHLED ÚČASTNÍHO TEXTU
387
+ title: Náhled participačního textu
388
388
  new_import:
389
389
  accepted_mime_types:
390
390
  md: Markdown
391
391
  odt: Odt
392
392
  bottom_hint: "(Budete mít možnost zobrazit a třídit sekce dokumentů)"
393
393
  document_legend: 'Přidejte dokument nižší než 2 MB, každá sekce až do hloubky 3 úrovní bude analyzována do návrhů. Podporované formáty jsou: %{valid_mime_types}'
394
- title: PŘIDAT DOKUMENT
394
+ title: Přidat dokument
395
395
  upload_document: Nahrát dokument
396
396
  publish:
397
397
  invalid: Nelze publikovat návrhy
@@ -431,6 +431,7 @@ cs:
431
431
  form:
432
432
  attachment_legend: "(Volitelné) Přidání přílohy"
433
433
  created_in_meeting: Tento návrh pochází z jednání
434
+ delete_attachment: Smazat přílohu
434
435
  select_a_category: Vyberte kategorii
435
436
  select_a_meeting: Vyberte schůzku
436
437
  index:
@@ -610,7 +611,7 @@ cs:
610
611
  related_to: Související s
611
612
  scope: Rozsah
612
613
  search: Vyhledávání
613
- state: Stát
614
+ state: Stav
614
615
  withdrawn: Staženo
615
616
  filters_small_view:
616
617
  close_modal: Zavřít modální
@@ -623,10 +624,10 @@ cs:
623
624
  new_collaborative_draft_button:
624
625
  new_collaborative_draft: Nový návrh spolupráce
625
626
  orders:
626
- label: 'Objednejte návrhy podle:'
627
- most_contributed: Většina přispěla
628
- random: Náhodný
629
- recent: Nedávno
627
+ label: 'Řazení konceptů podle:'
628
+ most_contributed: Nejvíce příspěvků
629
+ random: Náhodně
630
+ recent: Nedávné
630
631
  requests:
631
632
  accepted_request:
632
633
  error: Nelze přijmout jako spolupracovník, zkuste to znovu později.
@@ -666,7 +667,7 @@ cs:
666
667
  update:
667
668
  error: Při ukládání schématu spolupráce došlo k chybám.
668
669
  success: Protokol o spolupráci byl úspěšně aktualizován.
669
- title: Upravit koncept spolupráce
670
+ title: Úprava konceptu spolupráce
670
671
  wizard_aside:
671
672
  back: Zadní
672
673
  back_from_collaborative_draft: Zpět na koncepty spolupráce
@@ -691,6 +692,7 @@ cs:
691
692
  success: Koncept návrhu byl úspěšně smazán.
692
693
  last_activity:
693
694
  new_proposal_at_html: "<span>Nový návrh na %{link}</span>"
695
+ proposal_updated_at_html: "<span>Návrh byl aktualizován na %{link}</span>"
694
696
  models:
695
697
  collaborative_draft:
696
698
  fields:
@@ -707,7 +709,7 @@ cs:
707
709
  published_answer: Publikovaná odpověď
708
710
  published_at: Publikováno v
709
711
  scope: Rozsah
710
- state: Stát
712
+ state: Stav
711
713
  title: Titul
712
714
  valuator: Hodnotitel
713
715
  valuators: Hodnotitelé
@@ -763,7 +765,7 @@ cs:
763
765
  related_to: Související s
764
766
  scope: Rozsah
765
767
  search: Vyhledávání
766
- state: Stát
768
+ state: Stav
767
769
  type: Typ
768
770
  voted: Hlasoval
769
771
  filters_small_view:
@@ -786,19 +788,19 @@ cs:
786
788
  send: Pokračovat
787
789
  title: Vytvořte svůj návrh
788
790
  orders:
789
- label: 'Objednejte návrhy podle:'
791
+ label: 'Seřadit návrhy podle:'
790
792
  most_commented: Nejvíce komentované
791
793
  most_endorsed: Nejvíce schválené
792
794
  most_followed: Nejvíce sledované
793
- most_voted: Nejvíce hlasovalo
794
- random: Náhodný
795
- recent: Nedávno
795
+ most_voted: Nejvíce podporované
796
+ random: Náhodně
797
+ recent: Nedávné
796
798
  with_more_authors: S více autory
797
799
  participatory_texts:
798
800
  index:
799
801
  document_index: Index dokumentů
800
802
  view_index:
801
- see_index: Viz index
803
+ see_index: Prohlédnout seznam
802
804
  preview:
803
805
  modify: Upravte návrh
804
806
  proposal_edit_before_minutes:
@@ -890,7 +892,7 @@ cs:
890
892
  see_steps: viz kroky
891
893
  step_1: Vytvořte svůj návrh
892
894
  step_2: Porovnejte
893
- step_3: Kompletní
895
+ step_3: Dokončete
894
896
  step_4: Publikujte svůj návrh
895
897
  step_of: Krok %{current_step_num} z %{total_steps}
896
898
  title: Kroky vytváření návrhů