decidim-accountability 0.28.0 → 0.28.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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: