decidim-core 0.30.5 → 0.30.6
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.
- checksums.yaml +4 -4
- data/app/cells/decidim/announcement_cell.rb +10 -2
- data/app/cells/decidim/attachments_file_tab/show.erb +1 -1
- data/app/cells/decidim/nav_links/show.erb +2 -2
- data/app/cells/decidim/upload_modal/files.erb +8 -4
- data/app/cells/decidim/upload_modal_cell.rb +7 -4
- data/app/controllers/concerns/decidim/direct_upload.rb +2 -12
- data/app/controllers/decidim/devise/sessions_controller.rb +7 -0
- data/app/helpers/concerns/decidim/flash_helper_extensions.rb +2 -2
- data/app/jobs/decidim/export_participatory_space_job.rb +1 -1
- data/app/models/decidim/attachment.rb +22 -1
- data/app/packs/stylesheets/decidim/_flash.scss +1 -1
- data/app/packs/stylesheets/decidim/_participatory_spaces.scss +1 -1
- data/app/services/decidim/open_data_exporter.rb +1 -1
- data/app/views/layouts/decidim/header/_main_links_mobile_account.html.erb +1 -1
- data/config/locales/ca-IT.yml +5 -0
- data/config/locales/ca.yml +5 -0
- data/config/locales/cs.yml +18 -0
- data/config/locales/el.yml +1 -0
- data/config/locales/en.yml +5 -0
- data/config/locales/es-MX.yml +5 -0
- data/config/locales/es-PY.yml +5 -0
- data/config/locales/es.yml +5 -0
- data/config/locales/eu.yml +8 -4
- data/config/locales/fr-CA.yml +4 -0
- data/config/locales/fr.yml +5 -0
- data/config/locales/ja.yml +4 -0
- data/config/locales/pt-BR.yml +25 -0
- data/config/locales/ro-RO.yml +4 -1
- data/config/locales/sv.yml +247 -25
- data/lib/decidim/core/version.rb +1 -1
- data/lib/decidim/form_builder.rb +15 -5
- metadata +6 -6
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 1d2d2e573802976d0b68a5ec56528a5ba499416c443101bba31fee2d2f1af9e6
|
|
4
|
+
data.tar.gz: f172339288312c74d88a376805b12eed9aea1ea97c7e049978c3d94a4ab99f38
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: eb126980873b650eaa4c89d208bbd0d266df4da01196f60621211e896501e615329f1e35e34251c66f8e7f67b71d4df6cfaefe38eb4343f69d7d65437b62f51e
|
|
7
|
+
data.tar.gz: 3204e02c1097ee49b967bfd558fd51b32f3faa6d3ee9352590e6c98c0020c86590c383756b0b5694c97fe3e4b6689fcbecb422e15b2bae929656533a5908af9b
|
|
@@ -68,15 +68,23 @@ module Decidim
|
|
|
68
68
|
def clean_body
|
|
69
69
|
return unless body
|
|
70
70
|
|
|
71
|
-
Array(body).map { |paragraph|
|
|
71
|
+
Array(body).map { |paragraph| clean(paragraph) }.join
|
|
72
72
|
end
|
|
73
73
|
|
|
74
74
|
def clean_announcement
|
|
75
|
+
return if announcement.is_a?(Hash) && announcement.values.all?(&:blank?)
|
|
76
|
+
|
|
75
77
|
clean(announcement)
|
|
76
78
|
end
|
|
77
79
|
|
|
78
80
|
def clean(value)
|
|
79
|
-
|
|
81
|
+
return if value.blank? || value.nil?
|
|
82
|
+
|
|
83
|
+
if value.include?("rich-text-display")
|
|
84
|
+
decidim_sanitize_admin(translated_attribute(value))
|
|
85
|
+
else
|
|
86
|
+
tag.p(decidim_sanitize_admin(translated_attribute(value)))
|
|
87
|
+
end
|
|
80
88
|
end
|
|
81
89
|
end
|
|
82
90
|
end
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
<div class="row column">
|
|
2
|
-
<%= form.upload :file, button_class: "button button__sm button__transparent-secondary" %>
|
|
2
|
+
<%= form.upload :file, attachments: form.object.file.present? ? [form.object.file] : [], button_class: "button button__sm button__transparent-secondary" %>
|
|
3
3
|
</div>
|
|
@@ -4,11 +4,11 @@
|
|
|
4
4
|
<%= icon "arrow-down-s-line" %>
|
|
5
5
|
<%= icon "arrow-up-s-line" %>
|
|
6
6
|
</button>
|
|
7
|
-
<ul id="dropdown-menu-participatory-space" class="participatory-space__nav">
|
|
7
|
+
<ul id="dropdown-menu-participatory-space" class="participatory-space__nav" aria-hidden="true">
|
|
8
8
|
<% model.each do |item| %>
|
|
9
9
|
<li role="menuitem">
|
|
10
10
|
<%= link_to item[:url], class: "participatory-space__nav-item" do %>
|
|
11
|
-
<%= item[:name] %>
|
|
11
|
+
<%= decidim_escape_translated(item[:name]) %>
|
|
12
12
|
<%= icon "arrow-right-line" %>
|
|
13
13
|
<% end %>
|
|
14
14
|
</li>
|
|
@@ -22,9 +22,11 @@
|
|
|
22
22
|
<div class="upload-modal__files" data-active-uploads="<%= modal_id %>">
|
|
23
23
|
<% attachments.each do |attachment| %>
|
|
24
24
|
<% next if [Array, Hash].any? { |klass| attachment.is_a? klass } %>
|
|
25
|
+
<% is_persisted_attachment = attachment.is_a?(Decidim::Attachment) && attachment.persisted? %>
|
|
26
|
+
<% attachment_blob = blob(attachment) %>
|
|
25
27
|
|
|
26
|
-
<div class="attachment-details" data-attachment-id="<%= attachment.id %>" data-title="<%= title_for(attachment) %>" data-filename="<%= file_name_for(attachment) %>" data-state="uploaded">
|
|
27
|
-
<% if file_attachment_path(attachment) &&
|
|
28
|
+
<div class="attachment-details"<% if is_persisted_attachment %> data-attachment-id="<%= attachment.id %>"<% end %> data-title="<%= title_for(attachment) %>" data-filename="<%= file_name_for(attachment) %>" data-state="uploaded" data-hidden-field="<%= attachment_blob&.signed_id %>">
|
|
29
|
+
<% if file_attachment_path(attachment) && attachment_blob&.image? %>
|
|
28
30
|
<div><%= image_tag(file_attachment_path(attachment), alt: "") %></div>
|
|
29
31
|
<% elsif uploader_default_image_path(attribute).present? %>
|
|
30
32
|
<div><%= image_tag uploader_default_image_path(attribute) %></div>
|
|
@@ -32,14 +34,16 @@
|
|
|
32
34
|
|
|
33
35
|
<% if has_title? %>
|
|
34
36
|
<span><%= title_for(attachment) %></span>
|
|
35
|
-
<%= form.hidden_field attribute, multiple: true, value: attachment.id, id: attachment.id %>
|
|
36
37
|
<% else %>
|
|
37
|
-
<% if
|
|
38
|
+
<% if attachment_blob&.image? %>
|
|
38
39
|
<span><%= title_for(attachment) %></span>
|
|
39
40
|
<% else %>
|
|
40
41
|
<%= link_to title_for(attachment), file_attachment_path(attachment), class: "w-full break-all mb-2" %>
|
|
41
42
|
<% end %>
|
|
42
43
|
<% end %>
|
|
44
|
+
<% if attachment_blob.present? %>
|
|
45
|
+
<%= form.hidden_field attribute, value: attachment_blob.signed_id, id: "hidden_#{attribute}_#{attachment_blob.id}" %>
|
|
46
|
+
<% end %>
|
|
43
47
|
</div>
|
|
44
48
|
<% end %>
|
|
45
49
|
</div>
|
|
@@ -71,13 +71,16 @@ module Decidim
|
|
|
71
71
|
end
|
|
72
72
|
|
|
73
73
|
# By default FoundationRailsHelper adds form errors next to input, but since input is in the modal
|
|
74
|
-
# and modal is hidden by default, we
|
|
74
|
+
# and modal is hidden by default, we add a hidden checkbox field to handle HTML5 validation.
|
|
75
75
|
# This should only be necessary when file is required by the form.
|
|
76
|
+
# Note: Validation errors are now displayed in the main form area, not inside the modal.
|
|
76
77
|
def input_validation_field
|
|
77
78
|
object_name = form.object.present? ? "#{form.object.model_name.param_key}[#{add_attribute}_validation]" : "#{add_attribute}_validation"
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
79
|
+
check_box_tag object_name, 1, attachments.present?, class: "reset-defaults", hidden: true, label: false, required: required?, id: validation_field_id
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
def validation_field_id
|
|
83
|
+
"#{attribute}_validation"
|
|
81
84
|
end
|
|
82
85
|
|
|
83
86
|
def explanation
|
|
@@ -9,8 +9,6 @@ module Decidim
|
|
|
9
9
|
skip_before_action :verify_organization
|
|
10
10
|
|
|
11
11
|
before_action :check_organization!,
|
|
12
|
-
:check_authenticated!,
|
|
13
|
-
:check_user_belongs_to_organization,
|
|
14
12
|
:validate_direct_upload
|
|
15
13
|
end
|
|
16
14
|
|
|
@@ -42,16 +40,6 @@ module Decidim
|
|
|
42
40
|
head :unauthorized if current_organization.blank? && current_admin.blank?
|
|
43
41
|
end
|
|
44
42
|
|
|
45
|
-
def check_authenticated!
|
|
46
|
-
head :unauthorized if current_user.blank? && current_admin.blank?
|
|
47
|
-
end
|
|
48
|
-
|
|
49
|
-
def check_user_belongs_to_organization
|
|
50
|
-
return if current_admin.present?
|
|
51
|
-
|
|
52
|
-
head :unauthorized unless current_organization == current_user.organization
|
|
53
|
-
end
|
|
54
|
-
|
|
55
43
|
def allowed_extensions
|
|
56
44
|
if user_has_elevated_role?
|
|
57
45
|
current_organization.settings.upload_allowed_file_extensions_admin
|
|
@@ -71,6 +59,8 @@ module Decidim
|
|
|
71
59
|
private
|
|
72
60
|
|
|
73
61
|
def user_has_elevated_role?
|
|
62
|
+
return false if current_user.blank? || current_organization.blank? || current_user.organization != current_organization
|
|
63
|
+
|
|
74
64
|
[
|
|
75
65
|
current_user&.admin?,
|
|
76
66
|
defined?(Decidim::Assemblies::AssembliesWithUserRole) && Decidim::Assemblies::AssembliesWithUserRole.for(current_user).any?,
|
|
@@ -9,6 +9,8 @@ module Decidim
|
|
|
9
9
|
|
|
10
10
|
before_action :check_sign_in_enabled, only: :create
|
|
11
11
|
|
|
12
|
+
rescue_from ActionController::InvalidAuthenticityToken, with: :redirect_to_referer_or_path
|
|
13
|
+
|
|
12
14
|
def create
|
|
13
15
|
super do |user|
|
|
14
16
|
if user.admin?
|
|
@@ -44,6 +46,11 @@ module Decidim
|
|
|
44
46
|
|
|
45
47
|
private
|
|
46
48
|
|
|
49
|
+
def redirect_to_referer_or_path
|
|
50
|
+
set_flash_message(:alert, "csrf_token", scope: "devise.failure")
|
|
51
|
+
redirect_back(fallback_location: root_path) && return
|
|
52
|
+
end
|
|
53
|
+
|
|
47
54
|
def check_sign_in_enabled
|
|
48
55
|
redirect_to new_user_session_path unless current_organization.sign_in_enabled?
|
|
49
56
|
end
|
|
@@ -117,9 +117,9 @@ module Decidim
|
|
|
117
117
|
end
|
|
118
118
|
|
|
119
119
|
def message(value)
|
|
120
|
-
return content_tag(:
|
|
120
|
+
return content_tag(:p, value, class: "flash__message") unless value.is_a?(Hash)
|
|
121
121
|
|
|
122
|
-
content_tag(:
|
|
122
|
+
content_tag(:p, class: "flash__message") do
|
|
123
123
|
concat value[:title]
|
|
124
124
|
concat content_tag(:span, value[:body], class: "flash__message-body")
|
|
125
125
|
end
|
|
@@ -11,7 +11,7 @@ module Decidim
|
|
|
11
11
|
manifest.name == name.to_sym
|
|
12
12
|
end
|
|
13
13
|
|
|
14
|
-
collection = export_manifest.collection.call(participatory_space)
|
|
14
|
+
collection = export_manifest.collection.call(participatory_space, user)
|
|
15
15
|
serializer = export_manifest.serializer
|
|
16
16
|
|
|
17
17
|
export_data = Decidim::Exporters.find_exporter(format).new(collection, serializer).export
|
|
@@ -9,7 +9,7 @@ module Decidim
|
|
|
9
9
|
include Traceable
|
|
10
10
|
|
|
11
11
|
before_save :set_content_type_and_size, if: :attached?
|
|
12
|
-
before_validation :set_link_content_type_and_size, if: :
|
|
12
|
+
before_validation :set_link_content_type_and_size, if: :editable_link?
|
|
13
13
|
|
|
14
14
|
translatable_fields :title, :description
|
|
15
15
|
belongs_to :attachment_collection, class_name: "Decidim::AttachmentCollection", optional: true
|
|
@@ -69,6 +69,20 @@ module Decidim
|
|
|
69
69
|
link.present?
|
|
70
70
|
end
|
|
71
71
|
|
|
72
|
+
# Whether this attachment is a link that can be edited or not.
|
|
73
|
+
#
|
|
74
|
+
# Returns Boolean.
|
|
75
|
+
def editable_link?
|
|
76
|
+
!destroyed? && !frozen? && link?
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
# Whether this attachment has a file or not.
|
|
80
|
+
#
|
|
81
|
+
# Returns Boolean.
|
|
82
|
+
def file?
|
|
83
|
+
file.attached?
|
|
84
|
+
end
|
|
85
|
+
|
|
72
86
|
# Which kind of file this is.
|
|
73
87
|
#
|
|
74
88
|
# Returns String.
|
|
@@ -123,5 +137,12 @@ module Decidim
|
|
|
123
137
|
def self.log_presenter_class_for(_log)
|
|
124
138
|
Decidim::AdminLog::AttachmentPresenter
|
|
125
139
|
end
|
|
140
|
+
|
|
141
|
+
def can_participate?(user)
|
|
142
|
+
return true unless attached_to
|
|
143
|
+
return true unless attached_to.respond_to?(:can_participate?)
|
|
144
|
+
|
|
145
|
+
attached_to.can_participate?(user)
|
|
146
|
+
end
|
|
126
147
|
end
|
|
127
148
|
end
|
|
@@ -99,7 +99,7 @@
|
|
|
99
99
|
@apply divide-y divide-white [&>li]:py-3.5 first:[&>li]:pt-0 last:[&>li]:pb-0;
|
|
100
100
|
|
|
101
101
|
&-container {
|
|
102
|
-
@apply ml-0 md:ml-6 bg-primary p-3 md:p-6 rounded w-full md:w-auto self-start;
|
|
102
|
+
@apply mb-8 ml-0 md:ml-6 bg-primary p-3 md:p-6 rounded w-full md:w-auto self-start;
|
|
103
103
|
|
|
104
104
|
[id*="dropdown-menu"] {
|
|
105
105
|
@apply mx-0;
|
|
@@ -117,7 +117,7 @@ module Decidim
|
|
|
117
117
|
|
|
118
118
|
def data_for_participatory_space(export_manifest)
|
|
119
119
|
collection = participatory_spaces.filter { |space| space.manifest.name == export_manifest.manifest.name }.flat_map do |participatory_space|
|
|
120
|
-
export_manifest.collection.call(participatory_space)
|
|
120
|
+
export_manifest.collection.call(participatory_space, nil)
|
|
121
121
|
end
|
|
122
122
|
|
|
123
123
|
serializer = export_manifest.open_data_serializer.nil? ? export_manifest.serializer : export_manifest.open_data_serializer
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
</div>
|
|
32
32
|
<% end %>
|
|
33
33
|
|
|
34
|
-
<p class="h3 mt-2"><%= t("decidim.
|
|
34
|
+
<p class="h3 mt-2"><%= t("layouts.decidim.header.mobile_account_greeting", user_name: current_user.name) %></p>
|
|
35
35
|
|
|
36
36
|
<ul>
|
|
37
37
|
<%= render partial: "layouts/decidim/header/main_links_dropdown" %>
|
data/config/locales/ca-IT.yml
CHANGED
|
@@ -1120,6 +1120,9 @@ ca-IT:
|
|
|
1120
1120
|
explanation: 'Instruccions per a la imatge:'
|
|
1121
1121
|
message_1: Preferiblement una imatge apaïsada que no tingui cap text.
|
|
1122
1122
|
message_2: El servei retalla la imatge.
|
|
1123
|
+
import_file:
|
|
1124
|
+
explanation: 'Instruccions per al fitxer d''importació:'
|
|
1125
|
+
message_1: Ha de ser un document JSON descarregat mitjançant la funció d'exportació.
|
|
1123
1126
|
file_validation:
|
|
1124
1127
|
allowed_file_extensions: 'Tipus de fitxers admesos: %{extensions}'
|
|
1125
1128
|
max_file_dimension: 'Mides máximes de l''arxiu: %{resolution} pixels'
|
|
@@ -1971,6 +1974,7 @@ ca-IT:
|
|
|
1971
1974
|
send_paranoid_instructions: Si la teva adreça de correu electrònic existeix a la nostra base de dades, rebràs un correu electrònic amb instruccions per confirmar la teva adreça en pocs minuts.
|
|
1972
1975
|
failure:
|
|
1973
1976
|
already_authenticated: Ja has iniciat la sessió.
|
|
1977
|
+
csrf_token: No es pot verificar la teva sol·licitud. Si us plau, torna a provar-ho.
|
|
1974
1978
|
inactive: El teu compte encara no està activat.
|
|
1975
1979
|
invalid: El %{authentication_keys} o la contrasenya no són vàlids.
|
|
1976
1980
|
invited: Tens una invitació pendent, accepta-la per acabar de crear el teu compte.
|
|
@@ -2296,6 +2300,7 @@ ca-IT:
|
|
|
2296
2300
|
confirm_close_ephemeral_session: Si navegues fora d'aquesta pàgina, la teva sessió es tancarà. Segur que vols sortir d'aquesta pàgina?
|
|
2297
2301
|
log_in: Entra
|
|
2298
2302
|
main_menu: Menú principal
|
|
2303
|
+
mobile_account_greeting: Hola %{user_name},
|
|
2299
2304
|
user_menu: Menú d'usuari
|
|
2300
2305
|
impersonation_warning:
|
|
2301
2306
|
close_session: Tanca la sessió
|
data/config/locales/ca.yml
CHANGED
|
@@ -1120,6 +1120,9 @@ ca:
|
|
|
1120
1120
|
explanation: 'Instruccions per a la imatge:'
|
|
1121
1121
|
message_1: Preferiblement una imatge apaïsada que no tingui cap text.
|
|
1122
1122
|
message_2: El servei retalla la imatge.
|
|
1123
|
+
import_file:
|
|
1124
|
+
explanation: 'Instruccions per al fitxer d''importació:'
|
|
1125
|
+
message_1: Ha de ser un document JSON descarregat mitjançant la funció d'exportació.
|
|
1123
1126
|
file_validation:
|
|
1124
1127
|
allowed_file_extensions: 'Tipus de fitxers admesos: %{extensions}'
|
|
1125
1128
|
max_file_dimension: 'Mides máximes de l''arxiu: %{resolution} pixels'
|
|
@@ -1971,6 +1974,7 @@ ca:
|
|
|
1971
1974
|
send_paranoid_instructions: Si la teva adreça de correu electrònic existeix a la nostra base de dades, rebràs un correu electrònic amb instruccions per confirmar la teva adreça en pocs minuts.
|
|
1972
1975
|
failure:
|
|
1973
1976
|
already_authenticated: Ja has iniciat la sessió.
|
|
1977
|
+
csrf_token: No es pot verificar la teva sol·licitud. Si us plau, torna a provar-ho.
|
|
1974
1978
|
inactive: El teu compte encara no està activat.
|
|
1975
1979
|
invalid: El %{authentication_keys} o la contrasenya no són vàlids.
|
|
1976
1980
|
invited: Tens una invitació pendent, accepta-la per acabar de crear el teu compte.
|
|
@@ -2296,6 +2300,7 @@ ca:
|
|
|
2296
2300
|
confirm_close_ephemeral_session: Si navegues fora d'aquesta pàgina, la teva sessió es tancarà. Segur que vols sortir d'aquesta pàgina?
|
|
2297
2301
|
log_in: Entra
|
|
2298
2302
|
main_menu: Menú principal
|
|
2303
|
+
mobile_account_greeting: Hola %{user_name},
|
|
2299
2304
|
user_menu: Menú d'usuari
|
|
2300
2305
|
impersonation_warning:
|
|
2301
2306
|
close_session: Tanca la sessió
|
data/config/locales/cs.yml
CHANGED
|
@@ -206,6 +206,7 @@ cs:
|
|
|
206
206
|
date: Vyberte datum pro %{label}
|
|
207
207
|
time: Vyberte čas pro %{label}
|
|
208
208
|
picker:
|
|
209
|
+
date_button: Otevřít výběr kalendáře pro %{label}
|
|
209
210
|
time_button: Otevřít výběr času pro %{label}
|
|
210
211
|
decidim:
|
|
211
212
|
accessibility:
|
|
@@ -231,6 +232,7 @@ cs:
|
|
|
231
232
|
success: Účet byl úspěšně smazán.
|
|
232
233
|
download_your_data_export:
|
|
233
234
|
export_expired: Export vypršel. Zkuste vytvořit nový export.
|
|
235
|
+
export_not_found: Export, ke kterému jste přistupovali, neexistuje, nebo nemáte přístup ke stažení
|
|
234
236
|
file_no_exists: Soubor neexistuje
|
|
235
237
|
notice: Probíhá stahování vašich dat. Po dokončení obdržíte e-mail.
|
|
236
238
|
email_change:
|
|
@@ -800,6 +802,7 @@ cs:
|
|
|
800
802
|
created_at: Datum, kdy byla konverzace vytvořena
|
|
801
803
|
id: Jedinečný identifikátor pro tuto konverzaci
|
|
802
804
|
messages: Zprávy této konverzace
|
|
805
|
+
updated_at: Datum, kdy byla tato konverzace naposledy aktualizována
|
|
803
806
|
notifications:
|
|
804
807
|
created_at: Datum a čas, kdy bylo oznámení vytvořeno
|
|
805
808
|
event_class: Třída události, která spustila oznámení
|
|
@@ -830,6 +833,7 @@ cs:
|
|
|
830
833
|
phone: Telefonní číslo této skupiny uživatelů
|
|
831
834
|
verified_at: Datum a čas, kdy byla tato skupina uživatelů ověřena
|
|
832
835
|
users:
|
|
836
|
+
about: Popis profilu tohoto účastníka
|
|
833
837
|
accepted_tos_version: Datum, kdy uživatel přijal podmínky poskytování služeb této platformy
|
|
834
838
|
admin: Zda je tento uživatel administrátorem
|
|
835
839
|
confirmation_sent_at: Datum a čas, kdy bylo potvrzení odesláno
|
|
@@ -847,12 +851,16 @@ cs:
|
|
|
847
851
|
invitation_sent_at: Datum a čas, kdy byla pozvánka odeslána
|
|
848
852
|
invitations_count: Počet pozvánek zaslaných tomuto uživateli
|
|
849
853
|
invited_by: Uživatel, který pozval tohoto uživatele
|
|
854
|
+
last_sign_in_at: Datum a čas předchozího přihlášení
|
|
855
|
+
last_sign_in_ip: IP adresa předchozího přihlášení
|
|
850
856
|
locale: Lokalizace (jazyk), kterou tento uživatel vybral
|
|
851
857
|
managed: Zda je tento uživatel spravován jiným uživatelem
|
|
852
858
|
name: Jméno tohoto uživatele
|
|
859
|
+
newsletter_notifications_at: Datum a čas, kdy se tento účastník přihlásil k odběru zpravodaje
|
|
853
860
|
nickname: Přezdívka tohoto uživatele
|
|
854
861
|
notification_settings: Nastavení oznámení, které tento uživatel vybral
|
|
855
862
|
notifications_sending_frequency: Četnost oznámení, která tento uživatel obdrží
|
|
863
|
+
officialized_as: Název funkce (radní, starosta atd.)
|
|
856
864
|
officialized_at: Datum a čas, kdy byl tento uživatel oficializován
|
|
857
865
|
organization: Organizace, do které tento uživatel patří,
|
|
858
866
|
password_updated_at: Datum poslední změny hesla
|
|
@@ -901,6 +909,7 @@ cs:
|
|
|
901
909
|
files:
|
|
902
910
|
file_cannot_be_processed: Soubor nelze zpracovat
|
|
903
911
|
file_resolution_too_large: Rozlišení souboru je příliš velké
|
|
912
|
+
not_inside_organization: Soubor není připojen k žádné organizaci.
|
|
904
913
|
internal_server_error:
|
|
905
914
|
copied: Text zkopírován!
|
|
906
915
|
copy_error_message_clarification: Kopírovat chybovou zprávu do schránky
|
|
@@ -1140,6 +1149,7 @@ cs:
|
|
|
1140
1149
|
file:
|
|
1141
1150
|
explanation: 'Pokyny pro soubor:'
|
|
1142
1151
|
message_1: Jedná se o obrázek nebo dokument.
|
|
1152
|
+
message_2: Pokud je to obrázek, ideální je obrázek na šířku, který nemá žádný text. Platforma ořízne obrázek.
|
|
1143
1153
|
icon:
|
|
1144
1154
|
explanation: 'Pokyny pro ikonu:'
|
|
1145
1155
|
message_1: Musí to být čtvercový obrázek.
|
|
@@ -1148,6 +1158,9 @@ cs:
|
|
|
1148
1158
|
explanation: 'Pokyny pro obrázek:'
|
|
1149
1159
|
message_1: Nejlépe obrázek na šířku bez textu.
|
|
1150
1160
|
message_2: Software tento obrázek ořízne.
|
|
1161
|
+
import_file:
|
|
1162
|
+
explanation: 'Pokyny pro import souboru:'
|
|
1163
|
+
message_1: Má to být JSON dokument stažený prostřednictvím exportní funce.
|
|
1151
1164
|
file_validation:
|
|
1152
1165
|
allowed_file_extensions: 'Povolené přípony souborů: %{extensions}'
|
|
1153
1166
|
max_file_dimension: 'Maximální rozměry souboru: %{resolution} pixelů'
|
|
@@ -1989,6 +2002,7 @@ cs:
|
|
|
1989
2002
|
send_paranoid_instructions: Pokud vaše e-mailová adresa existuje v naší databázi, během několika obdržíte e-mail s instrukcemi, jak potvrdit vaši e-mailovou adresu.
|
|
1990
2003
|
failure:
|
|
1991
2004
|
already_authenticated: Jste již přihlášen.
|
|
2005
|
+
csrf_token: Váš požadavek se nepodařilo ověřit. Opakujte akci.
|
|
1992
2006
|
inactive: Váš účet zatím nebyl aktivován.
|
|
1993
2007
|
invalid: Neplatný %{authentication_keys} nebo heslo.
|
|
1994
2008
|
invited: Máte pozvání, přijměte jej k dokončení tvorby účtu.
|
|
@@ -2040,6 +2054,8 @@ cs:
|
|
|
2040
2054
|
subject: Byli jste pozváni ke spravování organizace %{organization}
|
|
2041
2055
|
invite_collaborator:
|
|
2042
2056
|
subject: Byli jste pozváni ke spolupráci na organizaci %{organization}
|
|
2057
|
+
invite_private_user:
|
|
2058
|
+
subject: Byli jste pozváni do soukromého participačního procesu na %{organization}
|
|
2043
2059
|
organization_admin_invitation_instructions:
|
|
2044
2060
|
subject: Byli jste pozváni ke spravování organizace %{organization}
|
|
2045
2061
|
password_change:
|
|
@@ -2325,6 +2341,8 @@ cs:
|
|
|
2325
2341
|
expire_time_html: Platnost vaší relace vyprší za <b><span class="minutes">%{minutes}</span></b>.
|
|
2326
2342
|
language_chooser:
|
|
2327
2343
|
choose_language: Vyberte jazyk
|
|
2344
|
+
navigation:
|
|
2345
|
+
aria_label: 'Navigation menu: %{title}'
|
|
2328
2346
|
notifications_dashboard:
|
|
2329
2347
|
mark_all_as_read: Označit vše jako přečtené
|
|
2330
2348
|
mark_as_read: Označit jako přečtené
|
data/config/locales/el.yml
CHANGED
|
@@ -1308,6 +1308,7 @@ el:
|
|
|
1308
1308
|
made_with_open_source: Ο ιστότοπος δημιουργήθηκε με <a target="_blank" href="https://github.com/decidim/decidim">δωρεάν λογισμικό</a>.
|
|
1309
1309
|
header:
|
|
1310
1310
|
log_in: Σύνδεση
|
|
1311
|
+
mobile_account_greeting: Γεια σου, %{user_name}
|
|
1311
1312
|
impersonation_warning:
|
|
1312
1313
|
close_session: Κλείσιμο συνεδρίας
|
|
1313
1314
|
description_html: Διαχειρίζεστε τον συμμετέχοντα <b>%{user_name}</b>.
|
data/config/locales/en.yml
CHANGED
|
@@ -1127,6 +1127,9 @@ en:
|
|
|
1127
1127
|
explanation: 'Guidance for image:'
|
|
1128
1128
|
message_1: Preferably a landscape image that does not have any text.
|
|
1129
1129
|
message_2: The service crops the image.
|
|
1130
|
+
import_file:
|
|
1131
|
+
explanation: 'Guidance for import file:'
|
|
1132
|
+
message_1: Has to be a JSON document downloaded through the export feature.
|
|
1130
1133
|
file_validation:
|
|
1131
1134
|
allowed_file_extensions: 'Allowed file extensions: %{extensions}'
|
|
1132
1135
|
max_file_dimension: 'Maximum file dimensions: %{resolution} pixels'
|
|
@@ -1978,6 +1981,7 @@ en:
|
|
|
1978
1981
|
send_paranoid_instructions: If your email address exists in our database, you will receive an email with instructions for how to confirm your email address in a few minutes.
|
|
1979
1982
|
failure:
|
|
1980
1983
|
already_authenticated: You are already signed in.
|
|
1984
|
+
csrf_token: Unable to verify your request. Please retry.
|
|
1981
1985
|
inactive: Your account is not activated yet.
|
|
1982
1986
|
invalid: Invalid %{authentication_keys} or password.
|
|
1983
1987
|
invited: You have a pending invitation, accept it to finish creating your account.
|
|
@@ -2304,6 +2308,7 @@ en:
|
|
|
2304
2308
|
confirm_close_ephemeral_session: If you navigate out of this page, your session will be closed. Are you sure?
|
|
2305
2309
|
log_in: Log in
|
|
2306
2310
|
main_menu: Main menu
|
|
2311
|
+
mobile_account_greeting: Hello, %{user_name}
|
|
2307
2312
|
user_menu: User menu
|
|
2308
2313
|
impersonation_warning:
|
|
2309
2314
|
close_session: Close session
|
data/config/locales/es-MX.yml
CHANGED
|
@@ -1123,6 +1123,9 @@ es-MX:
|
|
|
1123
1123
|
explanation: 'Instrucciones para la imagen:'
|
|
1124
1124
|
message_1: Preferiblemente una imagen apaisada que no tenga ningún texto.
|
|
1125
1125
|
message_2: El servicio recorta la imagen.
|
|
1126
|
+
import_file:
|
|
1127
|
+
explanation: 'Guía para el archivo de importación:'
|
|
1128
|
+
message_1: Tiene que ser un documento JSON descargado a través de la función de exportación.
|
|
1126
1129
|
file_validation:
|
|
1127
1130
|
allowed_file_extensions: 'Formatos de archivo permitidos: %{extensions}'
|
|
1128
1131
|
max_file_dimension: 'Medidas máximas de archivo: %{resolution} píxeles'
|
|
@@ -1974,6 +1977,7 @@ es-MX:
|
|
|
1974
1977
|
send_paranoid_instructions: Si tu dirección de correo electrónico existe en nuestra base de datos, recibirás un correo electrónico con instrucciones sobre cómo confirmar tu dirección de correo electrónico en unos minutos.
|
|
1975
1978
|
failure:
|
|
1976
1979
|
already_authenticated: Ya has iniciado sesión.
|
|
1980
|
+
csrf_token: No se puede verificar tu solicitud. Por favor, vuelve a intentarlo.
|
|
1977
1981
|
inactive: Tu cuenta aún no está activada.
|
|
1978
1982
|
invalid: '%{authentication_keys} o contraseña inválida.'
|
|
1979
1983
|
invited: Tienes una invitación pendiente, acéptala para terminar de crear tu cuenta.
|
|
@@ -2296,6 +2300,7 @@ es-MX:
|
|
|
2296
2300
|
confirm_close_ephemeral_session: Si navegas fuera de esta página, tu sesión se cerrara. ¿Seguro que quieres salir de esta página?
|
|
2297
2301
|
log_in: Entra
|
|
2298
2302
|
main_menu: Menú principal
|
|
2303
|
+
mobile_account_greeting: Hola %{user_name},
|
|
2299
2304
|
user_menu: Menú de usuario
|
|
2300
2305
|
impersonation_warning:
|
|
2301
2306
|
close_session: Cerrar la sesión
|
data/config/locales/es-PY.yml
CHANGED
|
@@ -1123,6 +1123,9 @@ es-PY:
|
|
|
1123
1123
|
explanation: 'Instrucciones para la imagen:'
|
|
1124
1124
|
message_1: Preferiblemente una imagen apaisada que no tenga ningún texto.
|
|
1125
1125
|
message_2: El servicio recorta la imagen.
|
|
1126
|
+
import_file:
|
|
1127
|
+
explanation: 'Guía para el archivo de importación:'
|
|
1128
|
+
message_1: Tiene que ser un documento JSON descargado a través de la función de exportación.
|
|
1126
1129
|
file_validation:
|
|
1127
1130
|
allowed_file_extensions: 'Formatos de archivo permitidos: %{extensions}'
|
|
1128
1131
|
max_file_dimension: 'Medidas máximas de archivo: %{resolution} píxeles'
|
|
@@ -1974,6 +1977,7 @@ es-PY:
|
|
|
1974
1977
|
send_paranoid_instructions: Si su dirección de correo electrónico existe en nuestra base de datos, recibirá un correo electrónico con instrucciones sobre cómo confirmar su dirección de correo electrónico en unos minutos.
|
|
1975
1978
|
failure:
|
|
1976
1979
|
already_authenticated: Ya has iniciado sesión.
|
|
1980
|
+
csrf_token: No se puede verificar tu solicitud. Por favor, vuelve a intentarlo.
|
|
1977
1981
|
inactive: Tu cuenta aún no está activada.
|
|
1978
1982
|
invalid: '%{authentication_keys} inválido o contraseña.'
|
|
1979
1983
|
invited: Tienes una invitación pendiente, acéptala para terminar de crear tu cuenta.
|
|
@@ -2296,6 +2300,7 @@ es-PY:
|
|
|
2296
2300
|
confirm_close_ephemeral_session: Si navegas fuera de esta página, tu sesión se cerrara. ¿Seguro que quieres salir de esta página?
|
|
2297
2301
|
log_in: Entra
|
|
2298
2302
|
main_menu: Menú principal
|
|
2303
|
+
mobile_account_greeting: Hola %{user_name},
|
|
2299
2304
|
user_menu: Menú de usuario
|
|
2300
2305
|
impersonation_warning:
|
|
2301
2306
|
close_session: Cerrar la sesión
|
data/config/locales/es.yml
CHANGED
|
@@ -1120,6 +1120,9 @@ es:
|
|
|
1120
1120
|
explanation: 'Instrucciones para la imagen:'
|
|
1121
1121
|
message_1: Preferiblemente una imagen apaisada que no tenga ningún texto.
|
|
1122
1122
|
message_2: El servicio recorta la imagen.
|
|
1123
|
+
import_file:
|
|
1124
|
+
explanation: 'Guía para el archivo de importación:'
|
|
1125
|
+
message_1: Tiene que ser un documento JSON descargado a través de la función de exportación.
|
|
1123
1126
|
file_validation:
|
|
1124
1127
|
allowed_file_extensions: 'Formatos de archivo permitidos: %{extensions}'
|
|
1125
1128
|
max_file_dimension: 'Medidas máximas de archivo: %{resolution} píxeles'
|
|
@@ -1971,6 +1974,7 @@ es:
|
|
|
1971
1974
|
send_paranoid_instructions: Si tu dirección de correo electrónico existe en nuestra base de datos, recibirás un correo electrónico con instrucciones sobre cómo confirmar tu dirección de correo electrónico en unos minutos.
|
|
1972
1975
|
failure:
|
|
1973
1976
|
already_authenticated: Ya has iniciado sesión.
|
|
1977
|
+
csrf_token: No se puede verificar tu solicitud. Por favor, vuelve a intentarlo.
|
|
1974
1978
|
inactive: Tu cuenta aún no está activada.
|
|
1975
1979
|
invalid: '%{authentication_keys} o contraseña no son válidos.'
|
|
1976
1980
|
invited: Tienes una invitación pendiente, acéptala para acabar de crear tu cuenta.
|
|
@@ -2296,6 +2300,7 @@ es:
|
|
|
2296
2300
|
confirm_close_ephemeral_session: Si navegas fuera de esta página, tu sesión se cerrara. ¿Seguro que quieres salir de esta página?
|
|
2297
2301
|
log_in: Entra
|
|
2298
2302
|
main_menu: Menú principal
|
|
2303
|
+
mobile_account_greeting: Hola %{user_name},
|
|
2299
2304
|
user_menu: Menú de usuario
|
|
2300
2305
|
impersonation_warning:
|
|
2301
2306
|
close_session: Cerrar sesión
|
data/config/locales/eu.yml
CHANGED
|
@@ -940,15 +940,15 @@ eu:
|
|
|
940
940
|
attachments:
|
|
941
941
|
attachment_created:
|
|
942
942
|
email_intro: 'Dokumentu berri bat gehitu zaio %{resource_title}-ri. Orrialde honetan ikusi dezakezu:'
|
|
943
|
-
email_outro: Jakinarazpen hau jaso duzu %{resource_title} jarraitzen
|
|
943
|
+
email_outro: Jakinarazpen hau jaso duzu %{resource_title} jarraitzen ari zarelako. Aurreko estekan sartu jakinarazpenak jasotzeari uzteko.
|
|
944
944
|
email_subject: '%{resource_title} eguneratu da'
|
|
945
945
|
notification_title: '<a href="%{resource_path}"> dokumentu berri bat</a> gehitu zaio honi: <a href="%{attached_to_url}">%{resource_title}</a>'
|
|
946
946
|
components:
|
|
947
947
|
component_published:
|
|
948
|
-
email_intro: '%{resource_title} osagaia %{participatory_space_title}
|
|
948
|
+
email_intro: '%{resource_title} osagaia aktibatu da %{participatory_space_title} espazioan. Orrialde honetan ikus dezakezu:'
|
|
949
949
|
email_outro: Jakinarazpena jaso duzu %{participatory_space_title} jarraituz gero. Aurreko esteka jarraituz jakinarazpenak jasotzeari uztea erabaki dezakezu.
|
|
950
950
|
email_subject: '%{participatory_space_title} eguneratze bat'
|
|
951
|
-
notification_title: '%{resource_title} osagaia aktibo dago
|
|
951
|
+
notification_title: '%{resource_title} osagaia aktibo dago iadanik <a href="%{resource_path}">%{participatory_space_title}</a> espaziorako'
|
|
952
952
|
email_event:
|
|
953
953
|
email_greeting: Kaixo, %{user_name},
|
|
954
954
|
email_intro: '"%{resource_title}"eguneratu da. Orri honetan ikus dezakezu:'
|
|
@@ -1043,7 +1043,7 @@ eu:
|
|
|
1043
1043
|
users:
|
|
1044
1044
|
profile_updated:
|
|
1045
1045
|
email_intro: </a> de %{name} (%{nickname}) profilaren <a href="%{resource_url}"> orria, jarraitzen ari zarena, eguneratu egin da.
|
|
1046
|
-
email_outro:
|
|
1046
|
+
email_outro: Jakinarazpen hau jaso duzu %{nickname} jarraitzen ari zarelako. Aurreko estekan sartu jakinarazpenak jasotzeari uzteko.
|
|
1047
1047
|
email_subject: "%{nickname} k bere profila eguneratu du"
|
|
1048
1048
|
notification_title: </a> de %{name} (%{nickname}) profilaren <a href="%{resource_path}"> orria, jarraitzen ari zarena, eguneratu egin da.
|
|
1049
1049
|
user_officialized:
|
|
@@ -1120,6 +1120,9 @@ eu:
|
|
|
1120
1120
|
explanation: 'Jarraibideak irudirako:'
|
|
1121
1121
|
message_1: Testurik ez duen irudi etzan bat, ahal dela.
|
|
1122
1122
|
message_2: Zerbitzuak irudia moztu egiten du.
|
|
1123
|
+
import_file:
|
|
1124
|
+
explanation: 'Inportazio-fitxategirako jarraibideak:'
|
|
1125
|
+
message_1: JSON dokumentu bat izan behar du, esportazioaren bidez deskargatua.
|
|
1123
1126
|
file_validation:
|
|
1124
1127
|
allowed_file_extensions: 'Onartutako artxiboen formatua: %{extensions}'
|
|
1125
1128
|
max_file_dimension: 'Fitxategiaren gehieneko neurriak: %{resolution} pixel'
|
|
@@ -1971,6 +1974,7 @@ eu:
|
|
|
1971
1974
|
send_paranoid_instructions: Zure helbide elektronikoa gure datu-basean badago, mezu elektroniko bat jasoko duzu zure helbide elektronikoa minutu gutxi barru baieztatzeko jarraibideekin.
|
|
1972
1975
|
failure:
|
|
1973
1976
|
already_authenticated: Saioa hasi duzu.
|
|
1977
|
+
csrf_token: Ezin izan da zure eskaera egiaztatu. Mesedez, berriro saiatu.
|
|
1974
1978
|
inactive: Zure kontua ez dago oraindik aktibatuta.
|
|
1975
1979
|
invalid: '%{authentication_keys} edo pasahitza baliogabea.'
|
|
1976
1980
|
invited: Gonbidapen bat dago zain, onartu zure kontua sortzerakoan.
|
data/config/locales/fr-CA.yml
CHANGED
|
@@ -1013,6 +1013,9 @@ fr-CA:
|
|
|
1013
1013
|
explanation: 'Orientation pour l''image:'
|
|
1014
1014
|
message_1: De préférence une image au format paysage ne contenant pas de texte.
|
|
1015
1015
|
message_2: Le service récolte l'image.
|
|
1016
|
+
import_file:
|
|
1017
|
+
explanation: 'Instructions pour le fichier d''importation :'
|
|
1018
|
+
message_1: Doit être un document JSON téléchargé via la fonction d'exportation.
|
|
1016
1019
|
file_validation:
|
|
1017
1020
|
allowed_file_extensions: 'Extensions de fichier autorisées : %{extensions}'
|
|
1018
1021
|
max_file_dimension: 'Dimensions de fichier maximales : %{resolution} pixels'
|
|
@@ -1831,6 +1834,7 @@ fr-CA:
|
|
|
1831
1834
|
send_paranoid_instructions: Si votre adresse e-mail existe dans notre base de données, vous recevrez un e-mail avec les instructions pour confirmer votre adresse e-mail dans quelques minutes.
|
|
1832
1835
|
failure:
|
|
1833
1836
|
already_authenticated: Vous êtes déjà connecté.
|
|
1837
|
+
csrf_token: Impossible de vérifier votre demande. Veuillez réessayer.
|
|
1834
1838
|
inactive: Votre compte n'est pas encore activé.
|
|
1835
1839
|
invalid: '%{authentication_keys} ou mot de passe invalide.'
|
|
1836
1840
|
invited: Vous avez une invitation en attente, acceptez-la pour terminer la création de votre compte.
|
data/config/locales/fr.yml
CHANGED
|
@@ -1013,6 +1013,9 @@ fr:
|
|
|
1013
1013
|
explanation: 'Orientation pour l''image:'
|
|
1014
1014
|
message_1: De préférence une image au format paysage ne contenant pas de texte.
|
|
1015
1015
|
message_2: Le service recadre l'image.
|
|
1016
|
+
import_file:
|
|
1017
|
+
explanation: 'Instructions pour le fichier d''importation :'
|
|
1018
|
+
message_1: Doit être un document JSON téléchargé via la fonction d'exportation.
|
|
1016
1019
|
file_validation:
|
|
1017
1020
|
allowed_file_extensions: 'Extensions de fichier autorisées : %{extensions}'
|
|
1018
1021
|
max_file_dimension: 'Dimensions de fichier maximales : %{resolution} pixels'
|
|
@@ -1831,6 +1834,7 @@ fr:
|
|
|
1831
1834
|
send_paranoid_instructions: Si votre adresse e-mail existe dans notre base de données, vous recevrez un e-mail avec les instructions pour confirmer votre adresse e-mail dans quelques minutes.
|
|
1832
1835
|
failure:
|
|
1833
1836
|
already_authenticated: Vous êtes déjà connecté.
|
|
1837
|
+
csrf_token: Impossible de vérifier votre demande. Veuillez réessayer.
|
|
1834
1838
|
inactive: Votre compte n'est pas encore activé.
|
|
1835
1839
|
invalid: '%{authentication_keys} ou mot de passe invalide.'
|
|
1836
1840
|
invited: Vous avez une invitation en attente, acceptez-la pour terminer la création de votre compte.
|
|
@@ -2156,6 +2160,7 @@ fr:
|
|
|
2156
2160
|
confirm_close_ephemeral_session: Si vous quittez cette page, votre session sera fermée. Êtes-vous sûr(e)?
|
|
2157
2161
|
log_in: Se connecter
|
|
2158
2162
|
main_menu: Menu principal
|
|
2163
|
+
mobile_account_greeting: Bonjour %{user_name},
|
|
2159
2164
|
user_menu: Menu utilisateur
|
|
2160
2165
|
impersonation_warning:
|
|
2161
2166
|
close_session: Fermer la session
|