decidim-accountability 0.28.0 → 0.28.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/app/cells/decidim/accountability/highlighted_results_for_component/show.erb +1 -1
  3. data/app/cells/decidim/accountability/project_cell.rb +2 -2
  4. data/app/cells/decidim/accountability/result_metadata_cell.rb +3 -3
  5. data/app/cells/decidim/accountability/status_cell.rb +2 -1
  6. data/app/events/decidim/accountability/base_result_event.rb +25 -0
  7. data/app/events/decidim/accountability/proposal_linked_event.rb +1 -18
  8. data/app/events/decidim/accountability/result_progress_updated_event.rb +2 -18
  9. data/app/views/decidim/accountability/admin/import_results/new.html.erb +2 -2
  10. data/app/views/decidim/accountability/admin/projects_import/new.html.erb +2 -2
  11. data/app/views/decidim/accountability/admin/results/edit.html.erb +2 -2
  12. data/app/views/decidim/accountability/admin/results/index.html.erb +2 -2
  13. data/app/views/decidim/accountability/admin/results/new.html.erb +2 -2
  14. data/app/views/decidim/accountability/admin/statuses/edit.html.erb +2 -2
  15. data/app/views/decidim/accountability/admin/statuses/index.html.erb +2 -2
  16. data/app/views/decidim/accountability/admin/statuses/new.html.erb +2 -2
  17. data/app/views/decidim/accountability/admin/timeline_entries/edit.html.erb +2 -2
  18. data/app/views/decidim/accountability/admin/timeline_entries/index.html.erb +2 -2
  19. data/app/views/decidim/accountability/admin/timeline_entries/new.html.erb +2 -2
  20. data/app/views/decidim/accountability/results/home.html.erb +1 -1
  21. data/app/views/decidim/accountability/results/index.html.erb +1 -1
  22. data/config/locales/ar.yml +1 -1
  23. data/config/locales/bg.yml +113 -0
  24. data/config/locales/ca.yml +1 -1
  25. data/config/locales/da.yml +0 -1
  26. data/config/locales/de.yml +1 -1
  27. data/config/locales/es.yml +2 -2
  28. data/config/locales/he-IL.yml +313 -0
  29. data/config/locales/hu.yml +11 -0
  30. data/config/locales/id-ID.yml +0 -1
  31. data/config/locales/it.yml +6 -0
  32. data/config/locales/ko.yml +249 -0
  33. data/config/locales/lb.yml +1 -1
  34. data/config/locales/lv.yml +0 -1
  35. data/config/locales/pt-BR.yml +11 -0
  36. data/config/locales/pt.yml +6 -0
  37. data/config/locales/ro-RO.yml +73 -24
  38. data/config/locales/ru.yml +0 -1
  39. data/config/locales/si-LK.yml +1 -0
  40. data/config/locales/sk.yml +0 -1
  41. data/config/locales/sq-AL.yml +6 -0
  42. data/config/locales/sr-CS.yml +0 -1
  43. data/config/locales/tr-TR.yml +80 -0
  44. data/config/locales/uk.yml +0 -1
  45. data/config/locales/zh-CN.yml +0 -1
  46. data/decidim-accountability.gemspec +45 -0
  47. data/lib/decidim/accountability/engine.rb +2 -0
  48. data/lib/decidim/accountability/test/factories.rb +29 -17
  49. data/lib/decidim/accountability/version.rb +1 -1
  50. data/lib/decidim/api/result_type.rb +0 -1
  51. metadata +29 -27
  52. data/config/environment.rb +0 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c44709e4f0be476fbe736b6aef8085a3d4d36096a6203d040b9b6c7b3f2c231d
4
- data.tar.gz: 2cd9462d29855ea54629141a81a4abc8e7cbbff3bdfadb26c093d1200b5ea3a7
3
+ metadata.gz: 0f038d00f69235d4f8043b7d6d8ba45845dea666b9212c9609d5cfc17c7337d7
4
+ data.tar.gz: fa99865a267c8fdce223c1bbb86234548c3189ad45cdf6624db8534f25ca1a2e
5
5
  SHA512:
6
- metadata.gz: 50ca660426ef73e3dc827e98aa438b1a94e1e83226e7f70ac5ad8ee79e471430dc2a8be0283727fc97b6dbefa01f75f69be7248a9e9a1be7dcd13cea3058f553
7
- data.tar.gz: 6558d7f669c3c34ef96f8266d0e5cdb323b70311fc00b6a515e0e3adb4ae21779d3867994c2105e4b1a934f8f205a352bfe4cc13c7990246c1401988b8dfa8ad
6
+ metadata.gz: fcf45e9a7cb9e20827540563af00ec4e492618ff080dae0a074f27c664dae3dabb01b53a4d9ac7d14b54c0a3f99af0d627048a7cad3082b22be13de4dcf9be13
7
+ data.tar.gz: 30a4dadb2ec7c6e839ab1e81f26694564fad720a983f835e533c92e98823b1b6109e14899bf0991cfe58d62e71fb2f36083dfa655eb4905fe58201c224162396
@@ -3,7 +3,7 @@
3
3
 
4
4
  <div class="content-block__title">
5
5
  <h2 class="h2 decorator">
6
- <%= single_component? ? translated_attribute(model.name) : t("decidim.accountability.content_blocks.highlighted_results.results") %>
6
+ <%= single_component? ? decidim_escape_translated(model.name) : t("decidim.accountability.content_blocks.highlighted_results.results") %>
7
7
  </h2>
8
8
  <div class="label text-lg"><%= results_count %></div>
9
9
  <% if single_component? %>
@@ -23,11 +23,11 @@ module Decidim
23
23
  private
24
24
 
25
25
  def title
26
- translated_attribute result.title
26
+ decidim_escape_translated result.title
27
27
  end
28
28
 
29
29
  def description
30
- translated_attribute(result.description).html_safe
30
+ decidim_sanitize_admin translated_attribute(result.description)
31
31
  end
32
32
 
33
33
  def scope
@@ -75,7 +75,7 @@ module Decidim
75
75
  return if status.blank?
76
76
 
77
77
  {
78
- text: translated_attribute(status.name),
78
+ text: decidim_escape_translated(status.name),
79
79
  icon: "focus-2-line"
80
80
  }
81
81
  end
@@ -114,12 +114,12 @@ module Decidim
114
114
  {
115
115
  text: t("models.result.fields.status", scope: "decidim.accountability"),
116
116
  icon: "focus-2-line",
117
- value: translated_attribute(status.name)
117
+ value: decidim_escape_translated(status.name)
118
118
  }
119
119
  end
120
120
 
121
121
  def status_description
122
- return unless status.present? && (description = translated_attribute(status.description)).present?
122
+ return unless status.present? && (description = decidim_escape_translated(status.description)).present?
123
123
 
124
124
  {
125
125
  text: t("models.status.fields.description", scope: "decidim.accountability"),
@@ -8,6 +8,7 @@ module Decidim
8
8
  class StatusCell < Decidim::ViewModel
9
9
  include ApplicationHelper
10
10
  include BreadcrumbHelper
11
+ include Decidim::SanitizeHelper
11
12
  include Decidim::TranslationsHelper
12
13
  include ActiveSupport::NumberHelper
13
14
 
@@ -39,7 +40,7 @@ module Decidim
39
40
 
40
41
  def title
41
42
  if model.is_a? Decidim::Category
42
- translated_attribute(model.name)
43
+ decidim_html_escape translated_attribute(model.name)
43
44
  else
44
45
  options[:title]
45
46
  end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module Accountability
5
+ class BaseResultEvent < Decidim::Events::SimpleEvent
6
+ i18n_attributes :proposal_title, :proposal_path
7
+
8
+ def resource_text
9
+ translated_attribute(resource.description)
10
+ end
11
+
12
+ def proposal_title
13
+ @proposal_title ||= decidim_sanitize_translated(proposal.title)
14
+ end
15
+
16
+ def proposal_path
17
+ @proposal_path ||= Decidim::ResourceLocatorPresenter.new(proposal).path
18
+ end
19
+
20
+ def proposal
21
+ @proposal ||= resource.linked_resources(:proposals, "included_proposals").find_by(id: extra[:proposal_id])
22
+ end
23
+ end
24
+ end
25
+ end
@@ -2,24 +2,7 @@
2
2
 
3
3
  module Decidim
4
4
  module Accountability
5
- class ProposalLinkedEvent < Decidim::Events::SimpleEvent
6
- i18n_attributes :proposal_title, :proposal_path
7
-
8
- def proposal_path
9
- @proposal_path ||= Decidim::ResourceLocatorPresenter.new(proposal).path
10
- end
11
-
12
- def proposal_title
13
- @proposal_title ||= translated_attribute(proposal.title)
14
- end
15
-
16
- def proposal
17
- @proposal ||= resource.linked_resources(:proposals, "included_proposals").find_by(id: extra[:proposal_id])
18
- end
19
-
20
- def resource_text
21
- translated_attribute(resource.description)
22
- end
5
+ class ProposalLinkedEvent < BaseResultEvent
23
6
  end
24
7
  end
25
8
  end
@@ -2,28 +2,12 @@
2
2
 
3
3
  module Decidim
4
4
  module Accountability
5
- class ResultProgressUpdatedEvent < Decidim::Events::SimpleEvent
6
- i18n_attributes :proposal_title, :proposal_path, :progress
7
-
8
- def proposal_path
9
- @proposal_path ||= Decidim::ResourceLocatorPresenter.new(proposal).path
10
- end
11
-
12
- def proposal_title
13
- @proposal_title ||= translated_attribute(proposal.title)
14
- end
15
-
16
- def proposal
17
- @proposal ||= resource.linked_resources(:proposals, "included_proposals").find_by(id: extra[:proposal_id])
18
- end
5
+ class ResultProgressUpdatedEvent < BaseResultEvent
6
+ i18n_attributes :progress
19
7
 
20
8
  def progress
21
9
  extra[:progress]
22
10
  end
23
-
24
- def resource_text
25
- translated_attribute(resource.description)
26
- end
27
11
  end
28
12
  end
29
13
  end
@@ -1,8 +1,8 @@
1
1
  <% add_decidim_page_title(t(".title")) %>
2
2
  <div class="item_show__header">
3
- <h2 class="item_show__header-title">
3
+ <h1 class="item_show__header-title">
4
4
  <%= t(".title") %>
5
- </h2>
5
+ </h1>
6
6
  </div>
7
7
  <div class="item__edit item__edit-1col">
8
8
  <div class="item__edit-form">
@@ -1,8 +1,8 @@
1
1
  <% add_decidim_page_title(t(".title")) %>
2
2
  <div class="item_show__header">
3
- <h2 class="item_show__header-title">
3
+ <h1 class="item_show__header-title">
4
4
  <%= t(".title") %>
5
- </h2>
5
+ </h1>
6
6
  </div>
7
7
 
8
8
  <div class="item__edit item__edit-1col">
@@ -1,8 +1,8 @@
1
1
  <% add_decidim_page_title(t(".title")) %>
2
2
  <div class="item_show__header">
3
- <h2 class="item_show__header-title">
3
+ <h1 class="item_show__header-title">
4
4
  <%= t(".title") %>
5
- </h2>
5
+ </h1>
6
6
  </div>
7
7
 
8
8
  <div class="item__edit item__edit-1col">
@@ -1,7 +1,7 @@
1
1
  <% add_decidim_page_title(t(".title")) %>
2
2
  <div class="card">
3
3
  <div class="item_show__header">
4
- <h2 class="item_show__header-title">
4
+ <h1 class="item_show__header-title">
5
5
  <% if parent_result %>
6
6
  <%= "#{translated_attribute(parent_result.title)} > " %>
7
7
  <% end %>
@@ -19,7 +19,7 @@
19
19
  <%= render partial: "decidim/accountability/admin/shared/subnav" unless parent_result %>
20
20
  <%= link_to t("actions.new_result", scope: "decidim.accountability"), new_result_path(parent_id: parent_result), class: "button button__sm button__secondary" if allowed_to? :create, :result %>
21
21
  <%= render partial: "decidim/admin/components/resource_action" %>
22
- </h2>
22
+ </h1>
23
23
  </div>
24
24
 
25
25
  <%= admin_filter_selector(:results) %>
@@ -1,8 +1,8 @@
1
1
  <% add_decidim_page_title(t(".title")) %>
2
2
  <div class="item_show__header">
3
- <h2 class="item_show__header-title">
3
+ <h1 class="item_show__header-title">
4
4
  <%= t(".title") %>
5
- </h2>
5
+ </h1>
6
6
  </div>
7
7
 
8
8
  <div class="item__edit item__edit-1col">
@@ -1,8 +1,8 @@
1
1
  <% add_decidim_page_title(t(".title")) %>
2
2
  <div class="item_show__header">
3
- <h2 class="item_show__header-title">
3
+ <h1 class="item_show__header-title">
4
4
  <%= t(".title") %>
5
- </h2>
5
+ </h1>
6
6
  </div>
7
7
  <div class="item__edit item__edit-1col">
8
8
  <div class="item__edit-form">
@@ -1,10 +1,10 @@
1
1
  <% add_decidim_page_title(t(".title")) %>
2
2
  <div class="card">
3
3
  <div class="item_show__header">
4
- <h2 class="item_show__header-title">
4
+ <h1 class="item_show__header-title">
5
5
  <%= t(".title") %>
6
6
  <%= link_to t("actions.new_status", scope: "decidim.accountability"), new_status_path, class: "button button__sm button__secondary" if allowed_to? :create, :status %>
7
- </h2>
7
+ </h1>
8
8
  </div>
9
9
  <div class="table-scroll">
10
10
  <table class="table-list">
@@ -1,8 +1,8 @@
1
1
  <% add_decidim_page_title(t(".title")) %>
2
2
  <div class="item_show__header">
3
- <h2 class="item_show__header-title">
3
+ <h1 class="item_show__header-title">
4
4
  <%= t(".title") %>
5
- </h2>
5
+ </h1>
6
6
  </div>
7
7
  <div class="item__edit item__edit-1col">
8
8
  <div class="item__edit-form">
@@ -1,8 +1,8 @@
1
1
  <% add_decidim_page_title(t(".title")) %>
2
2
  <div class="item_show__header">
3
- <h2 class="item_show__header-title">
3
+ <h1 class="item_show__header-title">
4
4
  <%= t(".title") %>
5
- </h2>
5
+ </h1>
6
6
  </div>
7
7
  <div class="item__edit item__edit-1col">
8
8
  <div class="item__edit-form">
@@ -2,13 +2,13 @@
2
2
  <% add_decidim_page_title(translated_attribute(result.title)) %>
3
3
  <div class="card">
4
4
  <div class="item_show__header">
5
- <h2 class="item_show__header-title">
5
+ <h1 class="item_show__header-title">
6
6
  <div>
7
7
  <%= link_to "#{translated_attribute(result.title)} > ", edit_result_path(result) %>
8
8
  <%= t(".title") %>
9
9
  </div>
10
10
  <%= link_to t("actions.new_timeline_entry", scope: "decidim.accountability"), new_result_timeline_entry_path(result), class: "button button__sm button__secondary button--title" if allowed_to? :create, :timeline_entry %>
11
- </h2>
11
+ </h1>
12
12
  </div>
13
13
  <div class="table-scroll">
14
14
  <table class="table-list">
@@ -1,8 +1,8 @@
1
1
  <% add_decidim_page_title(t(".title")) %>
2
2
  <div class="item_show__header">
3
- <h2 class="item_show__header-title">
3
+ <h1 class="item_show__header-title">
4
4
  <%= t(".title") %>
5
- </h2>
5
+ </h1>
6
6
  </div>
7
7
  <div class="item__edit item__edit-1col">
8
8
  <div class="item__edit-form">
@@ -21,7 +21,7 @@
21
21
  <%= render layout: "layouts/decidim/shared/layout_two_col" do %>
22
22
 
23
23
  <section class="layout-main__section">
24
- <div class="editor-content"><%== translated_attribute component_settings.intro %></div>
24
+ <div class="editor-content"><%= decidim_sanitize_admin translated_attribute(component_settings.intro) %></div>
25
25
  </section>
26
26
 
27
27
  <section class="layout-main__section">
@@ -7,7 +7,7 @@
7
7
 
8
8
  <%= render layout: "layouts/decidim/shared/layout_two_col" do %>
9
9
  <section class="layout-main__section">
10
- <h2 class="h4"><%= category.present? ? translated_attribute(category.name) : t("decidim.accountability.results.home_header.global_status") %></h2>
10
+ <h2 class="h4"><%= category.present? ? decidim_escape_translated(category.name) : t("decidim.accountability.results.home_header.global_status") %></h2>
11
11
  </section>
12
12
 
13
13
  <section id="results" class="layout-main__section">
@@ -183,7 +183,7 @@ ar:
183
183
  stats:
184
184
  attendees: الحضور
185
185
  back_to_resource: العودة إلى النتيجة
186
- comments: تعليقات
186
+ comments: التعليقات
187
187
  contributions: مساهمات
188
188
  last_edited_by: التعديل الأخير تم بواسطة
189
189
  last_updated_at: آخر تحديث في
@@ -8,6 +8,7 @@ bg:
8
8
  decidim_scope_id: Сфера
9
9
  description: Описание
10
10
  end_date: Крайна дата
11
+ meetings_ids: Включени срещи
11
12
  progress: Напредък
12
13
  project_ids: Включени проекти
13
14
  proposals: Включени предложения
@@ -22,6 +23,7 @@ bg:
22
23
  timeline_entry:
23
24
  description: Описание
24
25
  entry_date: Дата
26
+ title: Заглавие
25
27
  models:
26
28
  decidim/accountability/proposal_linked_event: Предложение, включено в резултата
27
29
  decidim/accountability/result_progress_updated_event: Напредъкът на резултатите е актуализиран
@@ -33,24 +35,74 @@ bg:
33
35
  decidim:
34
36
  accountability:
35
37
  actions:
38
+ attachment_collections: Папки
39
+ attachments: Прикачени файлове
36
40
  confirm_destroy: Сигурни ли сте, че искате да изтриете това %{name}?
37
41
  destroy: Изтрий
38
42
  edit: Редактирай
43
+ import: Импортирайте проекти от друг компонент
44
+ import_csv: Импортирай резултати от CSV файл
45
+ new_result: Нов резултат
46
+ new_status: Нов статус
47
+ new_timeline_entry: Нов запис във времевата линия
39
48
  preview: Преглед
40
49
  timeline_entries: Развитие на проекта
41
50
  title: Действия
42
51
  admin:
43
52
  exports:
53
+ result_comments: Коментари
44
54
  results: Резултати
45
55
  import_results:
46
56
  new:
57
+ download_export: Свалете експорта в CSV формат
47
58
  import: Внасяне
59
+ info: |
60
+ <p>Препоръчваме ви да следвате следните стъпки:</p>
61
+ <ol>
62
+ <li><a href='%{link_new_status}' target='_blank'>Създайте статусите за резултатите</a>, които искате да добавите</li>
63
+ <li><a href='%{link_new_result}' target='_blank'>Създайте поне един резултат ръчно</a> чрез този административен панел, преди да използвате Импортиране, за да разберете по-добре формата и това, което ще се нуждае от попълване.</li>
64
+ <li>%{link_export_csv}</li>
65
+ <li>Направете промените локално. Можете да промените само следните колони в CSV:
66
+ <ul>
67
+ <li><b>category/id:</b> ID за категорията</li>
68
+ <li><b>scope/id:</b> ID за обхвата</li>
69
+ <li><b>parent/id:</b> ID на родителя (за свързани резултати). По избор</li>
70
+ <li><b>title/en:</b> Заглавие на английски език. Това ще зависи от езиковата конфигурация на вашата платформа.</li>
71
+ <li><b>description/en:</b> Описание на английски език. Това ще зависи от езиковата конфигурация на вашата платформа.</li>
72
+ <li><b>начална_дата:</b> дата, когато резултатът започва да се изпълнява (формат ГГГГ-ММ-ДД)</li>
73
+ <li><b>крайна_дата:</b> дата, на която резултатът приключва изпълнението (формат ГГГГ-ММ-ДД)</li>
74
+ <li><b>status/id:</b> ID на състоянието за този резултат</li>
75
+ <li><b>напредък:</b> Процент (от 0 до 100) на изпълнението</li>
76
+ <li><b>proposals_ids:</b> вътрешен идентификатор на свързаните предложения (разделени със запетая). Той автоматично се преобразува в <span class='attribute-name'>proposal_url</span></li>
77
+ </ul>
78
+ </li>
79
+ </ol>
80
+ title: Импортирай резултати от CSV файл
81
+ imports:
82
+ create:
83
+ invalid: Възникна проблем при импортирането на резултатите.
84
+ success: Файлът започна да се импортира. В следващите минути ще получите имейл с резултата от импортирането.
48
85
  models:
49
86
  result:
50
87
  name: Резултат
51
88
  status:
52
89
  name: Статус
90
+ projects_import:
91
+ create:
92
+ invalid: Възникна проблем при импортирането на проектите в резултатите, моля, следвайте внимателно инструкциите и се уверете, че сте избрали проекти за изпълнение.
93
+ new:
94
+ create: Импортиране
95
+ import_all_selected_projects: Импортирайте всички избрани за изпълнение проекти
96
+ no_components: В това пространство за участие няма бюджетни компоненти, за да се импортират проектите в резултати.
97
+ origin_component_id: Компонент за произход
98
+ select_component: Избери компонент
99
+ title: Импортирайте проекти от друг компонент
53
100
  results:
101
+ create:
102
+ invalid: Възникна проблем при създаването на този резултат.
103
+ success: Резултатът беше създаден успешно.
104
+ destroy:
105
+ success: Резултатът беше изтрит успешно.
54
106
  edit:
55
107
  title: Редактирай резултат
56
108
  update: Обнови резултат
@@ -59,10 +111,18 @@ bg:
59
111
  new:
60
112
  create: Създай резултат
61
113
  title: Нови резултати
114
+ update:
115
+ invalid: Възникна проблем при актуализирането на този резултат.
116
+ success: Резултатът беше актуализиран успешно.
62
117
  shared:
63
118
  subnav:
64
119
  statuses: Статуси
65
120
  statuses:
121
+ create:
122
+ invalid: Възникна проблем при създаването на този статус.
123
+ success: Статуса е създаден успешно.
124
+ destroy:
125
+ success: Статуса е изтрит успешно.
66
126
  edit:
67
127
  title: Редактирай на статуса
68
128
  update: Обнови на статус
@@ -71,7 +131,15 @@ bg:
71
131
  new:
72
132
  create: Създай статус
73
133
  title: Нов статус
134
+ update:
135
+ invalid: Възникна проблем при обновяването на този статус.
136
+ success: Статуса беше обновен успешно.
74
137
  timeline_entries:
138
+ create:
139
+ invalid: Възникна проблем при създаването на този запис.
140
+ success: Записът беше създаден успешно.
141
+ destroy:
142
+ success: Записът беше изтрит успешно.
75
143
  edit:
76
144
  title: Редактирай на запис
77
145
  update: Обнови на запис
@@ -80,25 +148,53 @@ bg:
80
148
  new:
81
149
  create: Създай запис
82
150
  title: Нов запис
151
+ update:
152
+ invalid: Възникна проблем при актуализирането на този запис.
153
+ success: Записът беше актуализиран успешно.
83
154
  admin_log:
84
155
  result:
85
156
  create: "%{user_name} създаде резултата %{resource_name} в %{space_name}"
86
157
  delete: "%{user_name} изтри резултата %{resource_name} в %{space_name}"
87
158
  update: "%{user_name} обнови резултата %{resource_name} в %{space_name}"
159
+ status:
160
+ create: "Статусът е създаден"
161
+ delete: "Статусът е изтрит"
162
+ update: "Статусът е обновен"
163
+ timeline_entry:
164
+ create: "Създаде запис във времевата линия"
165
+ delete: "Изтри запис от времевата линия"
166
+ update: "Обнови запис във времевата линия"
88
167
  value_types:
89
168
  parent_presenter:
90
169
  not_found: 'Родителя липсва в базата данни (ID: %{id})'
170
+ content_blocks:
171
+ highlighted_results:
172
+ results: Резултати
91
173
  import_mailer:
92
174
  import:
93
175
  errors: Грешки
176
+ errors_present: Възникна проблем при импортирането на резултатите.
94
177
  row_number: Редове
95
178
  subject: Успешно внасяне на резултати
96
179
  success: Успешно внасяне на резултати. Може да ги прегледате в администраторския интерфейс.
180
+ import_projects_mailer:
181
+ import:
182
+ added_projects:
183
+ one: Един резултат беше импортиран от проекти.
184
+ other: "%{count} резултата бяха импортирани от проекти."
185
+ subject: Успешен импорт на проекти
186
+ success: Успешно импортирани проекти в резултати към компонента %{component_name}. Можете да прегледате резултатите в административния интерфейс.
187
+ last_activity:
188
+ new_result: 'Нов резултат:'
97
189
  models:
98
190
  result:
99
191
  fields:
192
+ category: Категория
193
+ created_at: Създаден
100
194
  end_date: Крайна дата
195
+ id: ID
101
196
  progress: Напредък
197
+ scope: Обхват
102
198
  start_date: Начална дата
103
199
  status: Статус
104
200
  title: Заглавие
@@ -111,6 +207,7 @@ bg:
111
207
  timeline_entry:
112
208
  fields:
113
209
  entry_date: Дата
210
+ title: Заглавие
114
211
  results:
115
212
  count:
116
213
  results_count:
@@ -120,11 +217,14 @@ bg:
120
217
  all: Всички
121
218
  home:
122
219
  categories_label: Категории
220
+ empty: Все още няма резултати.
221
+ empty_filters: Няма резултати по този критерий.
123
222
  subcategories_label: Подкатегории
124
223
  home_header:
125
224
  global_status: Общо състояние на изпълнение
126
225
  nav_breadcrumb:
127
226
  global: Общо изпълнение
227
+ no_results: Няма проекти
128
228
  search:
129
229
  search: Търсене на действия
130
230
  show:
@@ -140,8 +240,19 @@ bg:
140
240
  votes: Поддръжки
141
241
  timeline:
142
242
  title: Развитие на проекта
243
+ admin:
244
+ filters:
245
+ results:
246
+ category_id_eq:
247
+ label: Категория
248
+ scope_id_eq:
249
+ label: Обхват
250
+ status_id_eq:
251
+ label: Статус
143
252
  components:
144
253
  accountability:
254
+ actions:
255
+ comment: Коментар
145
256
  name: Отговорност
146
257
  settings:
147
258
  global:
@@ -182,3 +293,5 @@ bg:
182
293
  result_project: Проекти, включени в резултата
183
294
  included_proposals:
184
295
  result_proposal: Предложения, включени в резултата
296
+ statistics:
297
+ results_count: Резултати
@@ -283,7 +283,7 @@ ca:
283
283
  notification_title: La proposta <a href="%{proposal_path}">%{proposal_title}</a> s'ha inclòs al resultat <a href="%{resource_path}">%{resource_title}</a>.
284
284
  result_progress_updated:
285
285
  email_intro: 'El resultat "%{resource_title}", que inclou la proposta "%{proposal_title}", s''ha completat en un %{progress}%. Pots veure-ho des d''aquesta pàgina:'
286
- email_outro: Has rebut aquesta notificació perquè estàs seguint "%{proposal_title}", i aquesta proposta s'inclou al resultat "%{resource_title}". Pots deixar de rebre notificacions seguint l'enllaç anterior.
286
+ email_outro: Has rebut aquesta notificació perquè estàs seguint la proposta "%{proposal_title}", i aquesta s'inclou al resultat "%{resource_title}". Pots deixar de rebre notificacions seguint l'enllaç anterior.
287
287
  email_subject: Una actualització sobre el progrés de %{resource_title}
288
288
  notification_title: El resultat <a href="%{resource_path}">%{resource_title}</a>, que inclou la proposta <a href="%{proposal_path}">%{proposal_title}</a>, s'ha completat en un %{progress}%.
289
289
  metrics:
@@ -131,7 +131,6 @@ da:
131
131
  stats:
132
132
  attendees: Mødedeltagere
133
133
  back_to_resource: Tilbage til resultater
134
- comments: Kommentarer
135
134
  contributions: Bidrag
136
135
  last_edited_by: Sidst redigeret af
137
136
  last_updated_at: Senest opdateret den
@@ -96,7 +96,7 @@ de:
96
96
  new_items:
97
97
  one: 1 ausgewähltes Projekt wird importiert
98
98
  other: "%{count} ausgewählte Projekte werden importiert"
99
- no_components: Es gibt keine weiteren Budgetkomponenten in diesem partizipativen Raum, um die Projekte in Ergebnisse zu importieren.
99
+ no_components: Es gibt keine weiteren Budgetkomponenten in diesem Beteiligunsgbereich, um die Projekte in Ergebnisse zu importieren.
100
100
  origin_component_id: Ursprungskomponente
101
101
  select_component: Komponente auswählen
102
102
  success:
@@ -278,12 +278,12 @@ es:
278
278
  accountability:
279
279
  proposal_linked:
280
280
  email_intro: 'La propuesta "%{proposal_title}" se ha incluido en un resultado. Puedes verlo desde esta página:'
281
- email_outro: Has recibido esta notificación porque estás siguiendo "%{proposal_title}". Puedes dejar de recibir notificaciones siguiendo el enlace anterior.
281
+ email_outro: Has recibido esta notificación porque estás siguiendo la propuesta "%{proposal_title}". Puedes dejar de recibir notificaciones siguiendo el enlace anterior.
282
282
  email_subject: Una actualización en %{proposal_title}
283
283
  notification_title: Se ha incluido la propuesta <a href="%{proposal_path}">%{proposal_title}</a> en el resultado <a href="%{resource_path}">%{resource_title}</a>.
284
284
  result_progress_updated:
285
285
  email_intro: 'El resultado "%{resource_title}", que incluye la propuesta "%{proposal_title}", está completado al %{progress}%. Puedes verlo desde esta página:'
286
- email_outro: Has recibido esta notificación porque estás siguiendo "%{proposal_title}" y esta propuesta se incluye en el resultado "%{resource_title}". Puedes dejar de recibir notificaciones siguiendo el enlace anterior.
286
+ email_outro: Has recibido esta notificación porque estás siguiendo la propuesta "%{proposal_title}" y esta se incluye en el resultado "%{resource_title}". Puedes dejar de recibir notificaciones siguiendo el enlace anterior.
287
287
  email_subject: Una actualización sobre el progreso de %{resource_title}
288
288
  notification_title: El resultado <a href="%{resource_path}">%{resource_title}</a>, que incluye la propuesta <a href="%{proposal_path}">%{proposal_title}</a>, ahora está completado al %{progress}%.
289
289
  metrics: