decidim-core 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (151) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/decidim.js.es6 +2 -0
  3. data/app/assets/javascripts/decidim/account_form.js.es6 +27 -0
  4. data/app/assets/javascripts/decidim/editor.js.es6 +9 -2
  5. data/app/assets/javascripts/decidim/form_filter.component.js.es6 +1 -1
  6. data/app/assets/javascripts/decidim/form_filter.component.test.js +2 -2
  7. data/app/assets/javascripts/decidim/history.js.es6 +7 -4
  8. data/app/commands/decidim/create_registration.rb +2 -1
  9. data/app/commands/decidim/destroy_account.rb +47 -0
  10. data/app/constraints/decidim/current_feature.rb +4 -5
  11. data/app/controllers/concerns/decidim/needs_participatory_process.rb +6 -1
  12. data/app/controllers/decidim/account_controller.rb +25 -2
  13. data/app/controllers/decidim/authorizations_controller.rb +2 -2
  14. data/app/controllers/decidim/pages_controller.rb +4 -2
  15. data/app/forms/decidim/delete_account_form.rb +8 -0
  16. data/app/forms/decidim/registration_form.rb +13 -0
  17. data/app/helpers/decidim/action_authorization_helper.rb +10 -4
  18. data/app/helpers/decidim/decidim_form_helper.rb +96 -0
  19. data/app/helpers/decidim/omniauth_helper.rb +1 -1
  20. data/app/helpers/decidim/resource_helper.rb +3 -36
  21. data/app/mailers/decidim/reported_mailer.rb +5 -3
  22. data/app/models/decidim/attachment.rb +1 -1
  23. data/app/models/decidim/authorization.rb +1 -1
  24. data/app/models/decidim/categorization.rb +8 -0
  25. data/app/models/decidim/category.rb +7 -2
  26. data/app/models/decidim/feature.rb +3 -5
  27. data/app/models/decidim/identity.rb +0 -1
  28. data/app/models/decidim/moderation.rb +0 -2
  29. data/app/models/decidim/participatory_process.rb +4 -2
  30. data/app/models/decidim/report.rb +1 -1
  31. data/app/models/decidim/resource_link.rb +1 -2
  32. data/app/models/decidim/static_page.rb +1 -2
  33. data/app/models/decidim/user.rb +16 -3
  34. data/app/models/decidim/user_group.rb +5 -3
  35. data/app/presenters/decidim/resource_locator_presenter.rb +48 -0
  36. data/app/services/decidim/authorization_handler.rb +4 -7
  37. data/app/services/decidim/resource_search.rb +3 -1
  38. data/app/uploaders/decidim/avatar_uploader.rb +2 -2
  39. data/app/uploaders/decidim/image_uploader.rb +1 -1
  40. data/app/uploaders/decidim/official_image_footer_uploader.rb +1 -5
  41. data/app/uploaders/decidim/official_image_header_uploader.rb +1 -5
  42. data/app/uploaders/decidim/organization_logo_uploader.rb +1 -1
  43. data/app/views/decidim/account/delete.html.erb +30 -0
  44. data/app/views/decidim/devise/shared/_omniauth_buttons.html.erb +2 -2
  45. data/app/views/decidim/reported_mailer/hide.html.erb +5 -1
  46. data/app/views/decidim/reported_mailer/report.html.erb +5 -1
  47. data/app/views/layouts/decidim/user_profile.html.erb +2 -1
  48. data/config/initializers/devise.rb +9 -9
  49. data/config/locales/ca.yml +20 -3
  50. data/config/locales/en.yml +20 -3
  51. data/config/locales/es.yml +20 -3
  52. data/config/locales/eu.yml +0 -3
  53. data/config/locales/fi.yml +0 -2
  54. data/config/locales/fr.yml +0 -3
  55. data/config/locales/it.yml +350 -0
  56. data/config/locales/nl.yml +0 -2
  57. data/config/routes.rb +5 -1
  58. data/db/migrate/20160817115213_devise_create_decidim_users.rb +1 -0
  59. data/db/migrate/20160919104837_create_decidim_organizations.rb +2 -0
  60. data/db/migrate/20160920140207_devise_invitable_add_to_decidim_users.rb +2 -0
  61. data/db/migrate/20160920141039_user_belongs_to_organization.rb +2 -0
  62. data/db/migrate/20160920141151_user_has_roles.rb +2 -0
  63. data/db/migrate/20161005130108_add_participatory_processes.rb +4 -2
  64. data/db/migrate/20161005153007_add_description_to_organizations.rb +2 -0
  65. data/db/migrate/20161006085629_add_confirmable_to_devise.rb +2 -0
  66. data/db/migrate/20161010085443_add_name_to_users.rb +2 -0
  67. data/db/migrate/20161010102356_translate_processes.rb +2 -0
  68. data/db/migrate/20161010131544_add_locale_to_users.rb +2 -0
  69. data/db/migrate/20161011125616_add_hero_image_to_processes.rb +2 -0
  70. data/db/migrate/20161011141033_add_banner_image_to_processes.rb +2 -0
  71. data/db/migrate/20161013134732_add_promoted_flag_to_processes.rb +2 -0
  72. data/db/migrate/20161017085822_add_participatory_process_steps.rb +4 -2
  73. data/db/migrate/20161018091013_create_decidim_authorizations.rb +2 -0
  74. data/db/migrate/20161019072016_add_active_flag_to_step.rb +7 -1
  75. data/db/migrate/20161020080756_add_position_to_steps.rb +2 -0
  76. data/db/migrate/20161025125300_add_published_at_to_processes.rb +2 -0
  77. data/db/migrate/20161107152228_remove_not_null_on_step_position.rb +2 -0
  78. data/db/migrate/20161108093802_create_decidim_static_pages.rb +2 -0
  79. data/db/migrate/20161110092735_add_index_for_process_slug_organization.rb +5 -3
  80. data/db/migrate/20161110105712_create_decidim_features.rb +2 -0
  81. data/db/migrate/20161116115156_create_attachments.rb +4 -2
  82. data/db/migrate/20161123085134_add_categories.rb +2 -0
  83. data/db/migrate/20161130105257_create_decidim_scopes.rb +2 -0
  84. data/db/migrate/20161209134715_make_organization_description_optional.rb +2 -0
  85. data/db/migrate/20161213094244_add_avatar_to_users.rb +2 -0
  86. data/db/migrate/20161214152811_add_logo_to_organizations.rb +2 -0
  87. data/db/migrate/20170110133113_add_configuration_to_features.rb +2 -0
  88. data/db/migrate/20170110153807_add_handler_to_organization.rb +2 -0
  89. data/db/migrate/20170113150627_create_resource_links.rb +2 -0
  90. data/db/migrate/20170116110851_create_identities.rb +2 -0
  91. data/db/migrate/20170116135237_loosen_step_requirements.rb +2 -0
  92. data/db/migrate/20170117142904_add_uniqueness_field_to_authorizations.rb +2 -0
  93. data/db/migrate/20170119145359_create_user_groups.rb +2 -0
  94. data/db/migrate/20170119150255_create_user_group_memberships.rb +2 -0
  95. data/db/migrate/20170119150649_add_show_statistics_to_organization.rb +3 -1
  96. data/db/migrate/20170120120733_add_user_groups_verified.rb +2 -0
  97. data/db/migrate/20170123134023_make_attachments_polymorphic.rb +2 -0
  98. data/db/migrate/20170123140857_add_avatar_to_user_groups.rb +2 -0
  99. data/db/migrate/20170125135937_rename_attachable_to_attached_to.rb +3 -1
  100. data/db/migrate/20170125152026_add_weight_to_features.rb +2 -0
  101. data/db/migrate/20170126151123_add_extra_info_to_processes.rb +6 -4
  102. data/db/migrate/20170128140553_add_timestamps_to_identities.rb +2 -0
  103. data/db/migrate/20170130132833_add_favicon_to_decidim_organizations.rb +2 -0
  104. data/db/migrate/20170131134349_add_action_permissions_to_decidim_features.rb +2 -0
  105. data/db/migrate/20170202084913_add_comments_and_replies_notifications_to_users.rb +2 -0
  106. data/db/migrate/20170203150545_add_newsletter_notifications_to_users.rb +2 -0
  107. data/db/migrate/20170206083118_rename_extra_info_on_processes.rb +2 -0
  108. data/db/migrate/20170206142116_add_published_at_to_decidim_features.rb +2 -0
  109. data/db/migrate/20170207091021_add_social_media_handlers_to_organization.rb +2 -0
  110. data/db/migrate/20170207093048_add_organization_logo_and_url.rb +3 -1
  111. data/db/migrate/20170213081133_create_decidim_newsletters.rb +2 -0
  112. data/db/migrate/20170215115407_add_organization_custom_reference.rb +2 -0
  113. data/db/migrate/20170220110740_remove_steps_short_description.rb +2 -0
  114. data/db/migrate/20170221094835_add_scopes_to_processes.rb +2 -0
  115. data/db/migrate/20170228142440_add_participatory_process_groups.rb +2 -0
  116. data/db/migrate/20170306144354_add_secondary_hosts_to_organizations.rb +2 -0
  117. data/db/migrate/20170307084957_create_reports.rb +2 -0
  118. data/db/migrate/20170308091316_create_moderations.rb +2 -0
  119. data/db/migrate/20170313095436_add_available_authorizations_to_organization.rb +2 -0
  120. data/db/migrate/20170404132616_change_steps_end_and_start_date_to_date.rb +2 -0
  121. data/db/migrate/20170405091801_change_decidim_user_email_index_uniqueness.rb +2 -0
  122. data/db/migrate/20170405094028_add_organization_to_identities.rb +2 -0
  123. data/db/migrate/20170405094258_change_decidim_identities_provider_uid_index_uniqueness.rb +3 -1
  124. data/db/migrate/20170529150743_add_rejected_at_to_user_groups.rb +2 -0
  125. data/db/migrate/20170605140421_add_deleted_fields_to_users.rb +8 -0
  126. data/db/migrate/20170606102659_set_email_unique_in_organization_conditional.rb +8 -0
  127. data/db/migrate/20170608142521_add_organization_to_user_groups.rb +14 -0
  128. data/db/migrate/20170612070905_add_uniqueness_to_name_and_document_number_to_user_groups.rb +8 -0
  129. data/db/migrate/20170612100253_create_decidim_categorizations.rb +12 -0
  130. data/db/seeds.rb +10 -8
  131. data/lib/decidim/authorable.rb +2 -2
  132. data/lib/decidim/core.rb +1 -1
  133. data/lib/decidim/core/api/author_interface.rb +6 -0
  134. data/lib/decidim/core/api/user_group_type.rb +14 -0
  135. data/lib/decidim/core/api/user_type.rb +10 -0
  136. data/lib/decidim/core/engine.rb +1 -1
  137. data/lib/decidim/core/test/factories.rb +12 -0
  138. data/lib/decidim/core/test/shared_examples/manage_moderations_examples.rb +3 -3
  139. data/lib/decidim/core/version.rb +2 -2
  140. data/lib/decidim/feature_manifest.rb +2 -3
  141. data/lib/decidim/form_builder.rb +3 -2
  142. data/lib/decidim/has_category.rb +3 -1
  143. data/lib/decidim/has_scope.rb +5 -2
  144. data/lib/decidim/query_extensions.rb +2 -2
  145. data/lib/decidim/reportable.rb +3 -3
  146. data/lib/decidim/stats_registry.rb +2 -2
  147. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.fr.js +14 -0
  148. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.it.js +14 -0
  149. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.nl.js +14 -0
  150. metadata +45 -17
  151. data/app/models/decidim/component.rb +0 -52
@@ -4,7 +4,7 @@ module Decidim
4
4
  # This class deals with uploading the organization's logo.
5
5
  class OrganizationLogoUploader < ImageUploader
6
6
  version :medium do
7
- process resize_to_limit: [600, 160]
7
+ process resize_to_fit: [600, 160]
8
8
  end
9
9
  end
10
10
  end
@@ -0,0 +1,30 @@
1
+ <div class="row">
2
+ <div class="columns large-8 end">
3
+ <div class="callout alert">
4
+ <p><%= t('.alert') %></p>
5
+ </div>
6
+ <p><%= t('.explanation') %></p>
7
+ <%= decidim_form_for(@form, url: account_path, method: :delete, html: { class: "user-form delete-account" }) do |f| %>
8
+ <div>
9
+ <label>
10
+ <span class="user-form__label"><%= t('activemodel.attributes.account.delete_reason') %></span>
11
+ <%= f.text_area :delete_reason, rows: 2 %>
12
+ </label>
13
+ </div>
14
+ <input type="submit" class="button open-modal-button" value="<%= t('.confirm.title') %>" />
15
+ <% end %>
16
+ <div class="tiny reveal" id="deleteConfirm" data-reveal>
17
+ <%= decidim_form_for(@form, url: account_path, method: :delete, html: { class: "user-form delete-account-modal" }) do |f| %>
18
+ <%= f.hidden_field :delete_reason %>
19
+
20
+ <p><%= t('.confirm.question') %></p>
21
+
22
+ <input type="submit" class="button expanded" value="<%= t('.confirm.ok') %>" />
23
+
24
+ <button class="close-button" data-close aria-label="<%= t('.confirm.close') %>" type="button">
25
+ <span aria-hidden="true">&times;</span>
26
+ </button>
27
+ <% end %>
28
+ </div>
29
+ </div>
30
+ </div>
@@ -1,4 +1,4 @@
1
- <%- if devise_mapping.omniauthable? && any_social_provider_enabled? %>
1
+ <% if devise_mapping.omniauthable? && any_social_provider_enabled? %>
2
2
  <div class="row">
3
3
  <div class="columns large-4 mediumlarge-6 medium-8 medium-centered">
4
4
  <span class="register__separator">
@@ -18,4 +18,4 @@
18
18
  <% end %>
19
19
  </div>
20
20
  </div>
21
- <% end %>
21
+ <% end %>
@@ -1,5 +1,9 @@
1
1
  <p><%= t(".hello", name: @user.name) %></p>
2
2
 
3
3
  <p>
4
- <%= t(".report_html", { content: reported_content.html_safe }) %>
4
+ <%= t(".report_html", { url: reported_content_url }) %>
5
5
  </p>
6
+
7
+ <p>
8
+ <%= link_to t(".manage_moderations"), decidim_admin.participatory_process_moderations_path(@participatory_process.id) %>
9
+ </p>
@@ -1,5 +1,9 @@
1
1
  <p><%= t(".hello", name: @user.name) %></p>
2
2
 
3
3
  <p>
4
- <%= t(".report_html", { content: reported_content.html_safe }) %>
4
+ <%= t(".report_html", { url: reported_content_url }) %>
5
5
  </p>
6
+
7
+ <p>
8
+ <%= link_to t(".manage_moderations"), decidim_admin.participatory_process_moderations_path(@participatory_process.id) %>
9
+ </p>
@@ -11,7 +11,7 @@
11
11
  <div class="columns medium-4 large-3">
12
12
  <div class="side-panel">
13
13
  <ul class="tabs vertical side-panel__tabs" id="user-settings-tabs">
14
- <%= user_profile_tab t("account", scope: "layouts.decidim.user_profile"), account_path %>
14
+ <%= user_profile_tab t("account", scope: "layouts.decidim.user_profile"), account_path, aria_link_type: :exact %>
15
15
  <%= user_profile_tab t("notifications_settings", scope: "layouts.decidim.user_profile"), notifications_settings_path %>
16
16
  <% if available_authorization_handlers.any? %>
17
17
  <%= user_profile_tab t("authorizations", scope: "layouts.decidim.user_profile"), authorizations_path %>
@@ -19,6 +19,7 @@
19
19
  <% if user_groups.any? %>
20
20
  <%= user_profile_tab t("user_groups", scope: "layouts.decidim.user_profile"), own_user_groups_path %>
21
21
  <% end %>
22
+ <%= user_profile_tab t("delete_my_account", scope: "layouts.decidim.user_profile"), delete_account_path, aria_link_type: :exact %>
22
23
  </ul>
23
24
  </div>
24
25
  </div>
@@ -300,22 +300,22 @@ Devise.setup do |config|
300
300
  # ==> OmniAuth
301
301
  # Add a new OmniAuth provider. Check the wiki for more information on setting
302
302
  # up on your models and hooks.
303
- if Rails.application.secrets.dig(:omniauth, "facebook").present?
303
+ if Rails.application.secrets.dig(:omniauth, :facebook).present?
304
304
  config.omniauth :facebook,
305
- Rails.application.secrets.omniauth["facebook"]["app_id"],
306
- Rails.application.secrets.omniauth["facebook"]["app_secret"],
305
+ Rails.application.secrets.omniauth[:facebook][:app_id],
306
+ Rails.application.secrets.omniauth[:facebook][:app_secret],
307
307
  scope: :email,
308
308
  info_fields: "name,email,verified"
309
309
  end
310
- if Rails.application.secrets.dig(:omniauth, "twitter").present?
310
+ if Rails.application.secrets.dig(:omniauth, :twitter).present?
311
311
  config.omniauth :twitter,
312
- Rails.application.secrets.omniauth["twitter"]["api_key"],
313
- Rails.application.secrets.omniauth["twitter"]["api_secret"]
312
+ Rails.application.secrets.omniauth[:twitter][:api_key],
313
+ Rails.application.secrets.omniauth[:twitter][:api_secret]
314
314
  end
315
- if Rails.application.secrets.dig(:omniauth, "google_oauth2").present?
315
+ if Rails.application.secrets.dig(:omniauth, :google_oauth2).present?
316
316
  config.omniauth :google_oauth2,
317
- Rails.application.secrets.omniauth["google_oauth2"]["client_id"],
318
- Rails.application.secrets.omniauth["google_oauth2"]["client_secret"]
317
+ Rails.application.secrets.omniauth[:google_oauth2][:client_id],
318
+ Rails.application.secrets.omniauth[:google_oauth2][:client_secret]
319
319
  end
320
320
 
321
321
  # ==> Warden configuration
@@ -1,6 +1,8 @@
1
1
  ca:
2
2
  activemodel:
3
3
  attributes:
4
+ account:
5
+ delete_reason: Raó per eliminar el teu compte
4
6
  report:
5
7
  details: Comentaris addicionals
6
8
  user:
@@ -8,6 +10,7 @@ ca:
8
10
  name: El teu nom
9
11
  password: Contrasenya
10
12
  password_confirmation: Confirma la teva contrasenya
13
+ remove_avatar: Elimina la imatge d'usuari
11
14
  user_group_document_number: Número de document acreditatiu
12
15
  user_group_name: Nom de l'organització
13
16
  user_group_phone: Telèfon de l'organització
@@ -31,6 +34,17 @@ ca:
31
34
  image_too_big: La imatge és massa gran
32
35
  decidim:
33
36
  account:
37
+ delete:
38
+ alert: Aquesta acció no es pot desfer. Si elimines el teu compte no seràs capaç d'iniciar sessió.
39
+ confirm:
40
+ close: Tanca la finestra
41
+ ok: Sí, vull eliminar el meu compte
42
+ question: Estàs segur que vols eliminar el teu compte?
43
+ title: Eliminar el meu compte
44
+ explanation: Si us plau, omple la raó per la qual vols eliminar el teu compte (opcional).
45
+ destroy:
46
+ error: Hi ha hagut un error en eliminar el teu compte.
47
+ success: El teu compte s'ha eliminat correctament.
34
48
  show:
35
49
  change_password: Canvia la contrasenya
36
50
  update_account: Actualitzar compte
@@ -183,11 +197,13 @@ ca:
183
197
  reported_mailer:
184
198
  hide:
185
199
  hello: Hola %{name},
186
- report_html: "<p>El següent contingut:</p>%{content}<p>ha estat amagat automàticament.</p>"
200
+ manage_moderations: Gestionar moderacions
201
+ report_html: <p>El següent <a href="%{url}">contingut</a> s'ha ocultat automàticament.</p>
187
202
  subject: Un contingut ha estat amagat automàticament
188
203
  report:
189
204
  hello: Hola %{name},
190
- report_html: "<p>El següent contingut:</p>%{content}<p>ha estat denunciat.</p>"
205
+ manage_moderations: Gestionar moderacions
206
+ report_html: <p>El següent <a href="%{url}">contingut</a> ha estat reportat.</p>
191
207
  subject: Un contingut ha estat denunciat
192
208
  reports:
193
209
  create:
@@ -320,6 +336,7 @@ ca:
320
336
  user_profile:
321
337
  account: Compte
322
338
  authorizations: Autoritzacions
339
+ delete_my_account: Eliminar el meu compte
323
340
  notifications_settings: Configuració de les notificacions
324
341
  title: Configuració d'usuari
325
342
  user_groups: Organitzacions
@@ -363,7 +380,7 @@ ca:
363
380
  processes_count: Processos
364
381
  proposals_count: Propostes
365
382
  results_count: Resultats
366
- users_count: Usuaris
383
+ users_count: Participants
367
384
  votes_count: Suports
368
385
  sub_hero:
369
386
  register: Registre
@@ -2,6 +2,8 @@
2
2
  en:
3
3
  activemodel:
4
4
  attributes:
5
+ account:
6
+ delete_reason: Reason to delete your account
5
7
  report:
6
8
  details: Additional comments
7
9
  user:
@@ -9,6 +11,7 @@ en:
9
11
  name: Your name
10
12
  password: New password
11
13
  password_confirmation: Confirm your new password
14
+ remove_avatar: Remove avatar
12
15
  user_group_document_number: Organization document number
13
16
  user_group_name: Organization name
14
17
  user_group_phone: Organization phone
@@ -32,6 +35,17 @@ en:
32
35
  image_too_big: The image is too big
33
36
  decidim:
34
37
  account:
38
+ delete:
39
+ alert: This action cannot be undone. If you delete your account you won't be able to log in.
40
+ confirm:
41
+ close: Close window
42
+ ok: Yes, I want to delete my account
43
+ question: Are you sure you want to delete your account?
44
+ title: Delete my account
45
+ explanation: Please, fill in the reason you want to delete your account (optional).
46
+ destroy:
47
+ error: There's been an error deleting your account.
48
+ success: Your account was deleted successfully.
35
49
  show:
36
50
  change_password: Change password
37
51
  update_account: Update account
@@ -184,11 +198,13 @@ en:
184
198
  reported_mailer:
185
199
  hide:
186
200
  hello: Hello %{name},
187
- report_html: "<p>The following content:<p>%{content}<p>has been hidden automatically.</p>"
201
+ manage_moderations: Manage moderations
202
+ report_html: <p>The following <a href="%{url}">content</a> has been hidden automatically.</p>
188
203
  subject: A resource has been hidden automatically
189
204
  report:
190
205
  hello: Hello %{name},
191
- report_html: "<p>The following content:<p>%{content}<p>has been reported.</p>"
206
+ manage_moderations: Manage moderations
207
+ report_html: <p>The following <a href="%{url}">content</a> has been reported.</p>
192
208
  subject: A resource has been reported
193
209
  reports:
194
210
  create:
@@ -321,6 +337,7 @@ en:
321
337
  user_profile:
322
338
  account: Account
323
339
  authorizations: Authorizations
340
+ delete_my_account: Delete my account
324
341
  notifications_settings: Notifications settings
325
342
  title: User settings
326
343
  user_groups: Organizations
@@ -364,7 +381,7 @@ en:
364
381
  processes_count: Processes
365
382
  proposals_count: Proposals
366
383
  results_count: Results
367
- users_count: Users
384
+ users_count: Participants
368
385
  votes_count: Votes
369
386
  sub_hero:
370
387
  register: Register
@@ -1,6 +1,8 @@
1
1
  es:
2
2
  activemodel:
3
3
  attributes:
4
+ account:
5
+ delete_reason: Motivo de eliminar tu cuenta
4
6
  report:
5
7
  details: Comentarios adicionales
6
8
  user:
@@ -8,6 +10,7 @@ es:
8
10
  name: Tu nombre
9
11
  password: Contraseña
10
12
  password_confirmation: Confirma tu contraseña
13
+ remove_avatar: Eliminar imagen de perfil
11
14
  user_group_document_number: Número de documento acreditativo
12
15
  user_group_name: Nombre de la Organización
13
16
  user_group_phone: Teléfono de la organización
@@ -31,6 +34,17 @@ es:
31
34
  image_too_big: La imagen es demasiado grande
32
35
  decidim:
33
36
  account:
37
+ delete:
38
+ alert: Esta acción no se puede deshacer. Si eliminas tu cuenta, no podrás iniciar sesión.
39
+ confirm:
40
+ close: Cerrar ventana
41
+ ok: Sí, quiero eliminar mi cuenta
42
+ question: '¿Seguro que quieres eliminar tu cuenta?'
43
+ title: Eliminar mi cuenta
44
+ explanation: Por favor, rellena el motivo por el que deseas eliminar tu cuenta (opcional).
45
+ destroy:
46
+ error: Se ha producido un error al eliminar tu cuenta.
47
+ success: Tu cuenta se ha eliminado correctamente.
34
48
  show:
35
49
  change_password: Cambia la contraseña
36
50
  update_account: Actualizar cuenta
@@ -183,11 +197,13 @@ es:
183
197
  reported_mailer:
184
198
  hide:
185
199
  hello: Hola %{name},
186
- report_html: "<p>El siguiente contenido: <p>%{content} <p>ha sido ocultado automáticamente.</p>"
200
+ manage_moderations: Gestionar moderaciones
201
+ report_html: <p>El siguiente <a href="%{url}">contenido</a> se ha ocultado automáticamente.</p>
187
202
  subject: Un contenido se ha ocultado de forma automática
188
203
  report:
189
204
  hello: Hola %{name},
190
- report_html: "<p>El siguiente contenido: <p>%{content} <p>ha sido denunciado.</p>"
205
+ manage_moderations: Gestionar moderaciones
206
+ report_html: <p>El siguiente <a href="%{url}">contenido</a> ha sido reportado.</p>
191
207
  subject: Un contenido ha sido denunciado
192
208
  reports:
193
209
  create:
@@ -320,6 +336,7 @@ es:
320
336
  user_profile:
321
337
  account: Cuenta
322
338
  authorizations: Autorizaciones
339
+ delete_my_account: Eliminar mi cuenta
323
340
  notifications_settings: Configuracion de notificaciones
324
341
  title: Ajustes de usuario
325
342
  user_groups: Organizaciones
@@ -363,7 +380,7 @@ es:
363
380
  processes_count: Procesos
364
381
  proposals_count: Propuestas
365
382
  results_count: Resultados
366
- users_count: Usuarios
383
+ users_count: Participantes
367
384
  votes_count: Votos
368
385
  sub_hero:
369
386
  register: Registro
@@ -181,11 +181,9 @@ eu:
181
181
  reported_mailer:
182
182
  hide:
183
183
  hello: Kaixo, %{name},
184
- report_html: "<p>Honako eduki hau automatikoki ezkutatu da: <p>%{content} <p>.</p>"
185
184
  subject: Eduki bat automatikoki ezkutatu da
186
185
  report:
187
186
  hello: Kaixo, %{name},
188
- report_html: "<p>Honako eduki hau salatua izan da: <p>%{content}<p></p>"
189
187
  subject: Eduki bat salatua izan da
190
188
  reports:
191
189
  create:
@@ -360,7 +358,6 @@ eu:
360
358
  processes_count: Prozesuak
361
359
  proposals_count: Proposamenak
362
360
  results_count: Emaitzak
363
- users_count: Erabiltzaileak
364
361
  votes_count: Botoak
365
362
  sub_hero:
366
363
  register: Erregistroa
@@ -177,11 +177,9 @@ fi:
177
177
  reported_mailer:
178
178
  hide:
179
179
  hello: Hei %{name},
180
- report_html: "<p>Seuraava sisältö:<p>%{content}<p>on lisätty automaattisesti.</p>"
181
180
  subject: Resurssi on piilotettu automaattisesti
182
181
  report:
183
182
  hello: Hei %{name},
184
- report_html: "<p>Seuraava sisältö:<p>%{content}<p>on raportoitu.</p>"
185
183
  subject: Resurssi on raportoitu
186
184
  reports:
187
185
  create:
@@ -181,11 +181,9 @@ fr:
181
181
  reported_mailer:
182
182
  hide:
183
183
  hello: Bonjour %{name},
184
- report_html: "<p>Le contenu suivant: <p>%{content}<p> a été masqué automatiquement.</p>"
185
184
  subject: Une ressource a été cachée automatiquement
186
185
  report:
187
186
  hello: Bonjour %{name},
188
- report_html: "<p>Le contenu suivant: <p>%{content}<p> a été signalé.</p>"
189
187
  subject: Une ressource a été signalée
190
188
  reports:
191
189
  create:
@@ -360,7 +358,6 @@ fr:
360
358
  processes_count: Processus participatifs
361
359
  proposals_count: Propositions
362
360
  results_count: Résultats
363
- users_count: Utilisateurs
364
361
  votes_count: Votes
365
362
  sub_hero:
366
363
  register: S'inscrire
@@ -0,0 +1,350 @@
1
+ it:
2
+ activemodel:
3
+ attributes:
4
+ report:
5
+ details: Commenti aggiuntivi
6
+ user:
7
+ email: La tua email
8
+ name: Il tuo nome
9
+ password: Nuova password
10
+ password_confirmation: Conferma la nuova password
11
+ user_group_document_number: Numero del documento dell'organizzazione
12
+ user_group_name: Nome dell'organizzazione
13
+ user_group_phone: Numero di telefono dell'organizzazione
14
+ activerecord:
15
+ attributes:
16
+ decidim/user:
17
+ current_password: Password attuale
18
+ name: Nome Utente
19
+ password_confirmation: Conferma della password
20
+ remember_me: Ricordami (rimani collegato)
21
+ user_group_document_number: Numero del documento dell'organizzazione
22
+ user_group_name: Nome dell'organizzazione
23
+ user_group_phone: Numero di telefono dell'organizzazione
24
+ booleans:
25
+ 'true': 'Si'
26
+ carrierwave:
27
+ errors:
28
+ image_too_big: La dimensione dell'immagine è troppo grande
29
+ decidim:
30
+ account:
31
+ show:
32
+ change_password: Cambio della password
33
+ update_account: Aggiorna l'account
34
+ update:
35
+ error: Si è verificato un errore durante l'aggiornamento del tuo account.
36
+ success: OK, il tuo account è stato aggiornato.
37
+ application:
38
+ documents:
39
+ related_documents: Documenti correlati
40
+ photos:
41
+ related_photos: Immagini correlate
42
+ authorization_handlers:
43
+ decidim/dummy_authorization_handler:
44
+ fields:
45
+ document_number: Documento n.
46
+ postal_code: C.A.P.
47
+ name: Esempio di autorizzazione
48
+ errors:
49
+ duplicate_authorization: Esiste già un utente autorizzato con questi dati.
50
+ authorizations:
51
+ create:
52
+ error: Siè verificato un errore durante la fase di creazione dell'autenticazione.
53
+ success: OK, la fase di autorizzazione si è conclusa positivamente.
54
+ current_participatory_processes: Guarda il processo corrente.
55
+ first_login:
56
+ actions:
57
+ decidim/dummy_authorization_handler: Verifica rispetto all'autorizzazione blanda
58
+ title: Verifica della tua identità
59
+ verify_with_these_options: 'Opzioni per la verifica dell''autorizzazione:'
60
+ new:
61
+ authorize: Invia
62
+ authorize_with: Verifica con %{authorizer}
63
+ skip_verification: Se preferisci puoi saltare questa verifica per il momento e %{link}
64
+ core:
65
+ actions:
66
+ unauthorized: Non hai permessi sufficienti per effetuare questa azione
67
+ devise:
68
+ omniauth_registrations:
69
+ create:
70
+ email_already_exists: Questo indirizzo email è già utilizzato per un altro account
71
+ new:
72
+ complete_profile: Completa il profilo
73
+ sign_up: Per cortesia completa il tuo profilo utente
74
+ subtitle: Per cortesia riempi i campi del seguente modulo al fine di completare la registrazione
75
+ username_help: Nome "pubblico" che comparirà per i tuoi post. Usa un nome di fantasia se vuoi garantirti un certo grado di anonimato.
76
+ registrations:
77
+ new:
78
+ already_have_an_account?: Hai già un account?
79
+ newsletter_notifications: Ricevi informazioni su attività rilevanti effettuate con il tuo account
80
+ sign_up: Registrazione
81
+ sign_up_as:
82
+ legend: Registrati come
83
+ user: Individuo
84
+ user_group: Organizzazione/Gruppo di persone
85
+ subtitle: Registrati per partecipare alle discussioni e per votare le proposte.
86
+ terms: Termini e condizioni di utilizzo del servizio
87
+ tos_agreement: Effettuando la registrazione automaticamente accetti le seguenti condizioni %{link}.
88
+ username_help: Nome "pubblico" che comparirà per i tuoi post. Usa un nome di fantasia se vuoi garantirti un certo grado di anonimato.
89
+ sessions:
90
+ new:
91
+ are_you_new?: Non conosci bene questa piattaforma? Sei un neofita?
92
+ register: Crea un account
93
+ shared:
94
+ omniauth_buttons:
95
+ or: oppure
96
+ export_mailer:
97
+ export:
98
+ ready: Trovi in allegato una versione compressa (ZIP) dei dati esportati .
99
+ subject: Ecco i dati che hai chiesto di esportare per "%{name}"
100
+ features:
101
+ dummy:
102
+ name: Funzionalità fittizia
103
+ settings:
104
+ global:
105
+ comments_enabled: Commenti abilitati
106
+ dummy_global_attribute_1: Attributo fittizio 1
107
+ dummy_global_attribute_2: Attributo fittizio 2
108
+ step:
109
+ comments_blocked: Commenti bloccati
110
+ dummy_step_attribute_1: Attributo 1 della fase fittizia
111
+ dummy_step_attribute_2: Attributo 2 della fase fittizia
112
+ filters:
113
+ linked_classes:
114
+ all: Tutto
115
+ meeting: Incontri
116
+ project: Progetti
117
+ proposal: Proposte
118
+ result: Votazioni
119
+ forms:
120
+ errors:
121
+ error: Si è verificato un errore in questo campo.
122
+ menu:
123
+ more_information: Ulteriori informazioni
124
+ processes: Processi
125
+ newsletter_mailer:
126
+ newsletter:
127
+ note: Hai ricevuto questa email perché ti sei iscritto alla newsletter su %{organization_name}. Puoi modificare le impostazioni di ricezione delle notifiche sulla tua <a href="%{link}">pagina delle notifiche</a>.
128
+ notifications_settings:
129
+ show:
130
+ comments_notifications: Desidero ricevere un'email di notifica quando qualcuno mi scrive un commento.
131
+ newsletter_notifications: Desidero ricevere informazioni sulle attività rilevanti.
132
+ replies_notifications: Desidero ricevere notifiche tramite email quando qualcuno risponde ai miei commenti.
133
+ update_notifications_settings: Salva le modifiche
134
+ update:
135
+ error: Si è verificato un errore durante l'aggiornamento delle impostazioni di notifica.
136
+ success: OK, le impostazioni per le notifiche sono state modificate.
137
+ own_user_groups:
138
+ index:
139
+ verified: Verificato
140
+ pages:
141
+ index:
142
+ title: Ulteriori informazioni
143
+ participatory_process_groups:
144
+ show:
145
+ group_participatory_processes: Processi per il gruppo %{group}
146
+ title: Titolo
147
+ participatory_process_steps:
148
+ index:
149
+ process_steps: Fasi del processo
150
+ title: Fasi del processo participatorio
151
+ participatory_processes:
152
+ index:
153
+ title: Processo participatorio
154
+ participatory_process_groups:
155
+ none: Nessuno
156
+ scopes:
157
+ global: Ambito globale
158
+ show:
159
+ developer_group: Gruppo di sviluppo
160
+ end_date: Data di fine
161
+ local_area: Area locale
162
+ participatory_scope: Ambito partecipativo
163
+ participatory_structure: Struttura partecipativa
164
+ scope: Ambito
165
+ reported_mailer:
166
+ hide:
167
+ hello: Ciao %{name},
168
+ subject: Una risorsa è stata cancellata automaticamente
169
+ report:
170
+ hello: Ciao %{name},
171
+ subject: Una risorsa è stata riportata
172
+ reports:
173
+ create:
174
+ error: Si è verificato un errore durante la creazione del report. Per cortesia, prova ad effettuare nuovamente l'operazione.
175
+ success: OK, il report è stato creato e sarà revisionato da un amministratore.
176
+ shared:
177
+ action_authorization_modal:
178
+ incomplete:
179
+ cancel: Annulla
180
+ explanation: 'Anche se attualmente sei autorizzato con "%{authorization}", abbiamo bisogno che tu richieda una nuova autorizzazione poiché risultano mancanti i seguenti dati:'
181
+ reauthorize: Ri-autorizza
182
+ title: Per cortesia, occorre una nuova autorizzazione
183
+ missing:
184
+ authorize: Autorizza con "%{authorization}"
185
+ explanation: Per effettuare questa operazione occorre che tu sia autorizzato con "%{authorization}".
186
+ title: E' necessaria l'autorizzazione
187
+ unauthorized:
188
+ explanation: Mi spiace, non puoi effettuare questa operazione poiché i tuoi dati di autorizzazione non corrispondono.
189
+ invalid: "Il campo %{field} non risulta valido."
190
+ title: Non autorizzato
191
+ embed_modal:
192
+ close_window: Chiudi la finestra
193
+ embed: Per cortesia incolla questo codice nella tua pagina
194
+ embed_link: Incorpora
195
+ flag_modal:
196
+ already_reported: Questo contenuto è già stato riportato e sarà revisionato da parte di un amministratore.
197
+ close: Chiudi
198
+ description: Questo contenuto è inappropriato?
199
+ does_not_belong: Contiene attività illegati, istigazione al suicidio, informazioni personali o riservate, minacce o altro che tu pensi che non sia appropriato per %{organization_name}.
200
+ offensive: Contiene contenuti razzisti, diffamatori, sessisti, insulti o attacchi personali, minacce di morte, istigazioni al suicidio o altre forme di odio verbale.
201
+ spam: Contiene pubblicità, truffe, spam oppure ha come intento di attirare traffico internet e "click".
202
+ title: Segnala un problema
203
+ login_modal:
204
+ please_sign_in: Per cortesia effettua l'accesso.
205
+ sign_up: Registrazione
206
+ share_modal:
207
+ close_window: Chiudi questa finestra
208
+ share: Condividi
209
+ share_link: Condividi questo link
210
+ devise:
211
+ invitations:
212
+ edit:
213
+ header: Imposta la password
214
+ submit_button: Salva
215
+ mailer:
216
+ invitation_instructions:
217
+ accept: Accetta l'invito
218
+ accept_until: Questo invito sarà valido fino al %{due_date}.
219
+ hello: Ciao %{email},
220
+ ignore: |-
221
+ Se non hai intenzione di accettare l'invito, per cortesia ignora questa email.<br />
222
+ Non verrà un account relativo al tuo profilo fino a che non effettuerai l'accesso al link precedente ed imposterai la tua password.
223
+ invited_you_as_admin: "%{invited_by} ti ha invitato come amministratore di %{application}, puoi accettare l'invito tramite il seguente link."
224
+ someone_invited_you: Sei stato invitato per %{application}, puoi accettare l'invito tramite il seguente link.
225
+ invite_admin:
226
+ subject: Sei stato invitato per la gestione della sezione relativa all'organizzazione %{organization}
227
+ invite_collaborator:
228
+ subject: Sei stato invitato a collaborare per la sezione relativa all'organizzazione %{organization}
229
+ organization_admin_invitation_instructions:
230
+ subject: Sei stato invitato a gestire la sezione relativa all'organizzazione %{organization}
231
+ password_change:
232
+ greeting: Ciao %{recipient}!
233
+ message: ti contattiamo per informarti che la tua password è stata modificata.
234
+ subject: Password modificata
235
+ errors:
236
+ messages:
237
+ content_type_whitelist_error: Il tipo di file non è valido.
238
+ file_size_is_less_than_or_equal_to: La dimensione del file deve essere minore o uguale a %{count}
239
+ invalid_manifest: Manifesto non valido
240
+ invalid_participatory_process: Processo partecipativo non valido
241
+ long_words: Contiene parole troppo lunghe
242
+ must_start_with_caps: Deve iniziare in maiuscolo
243
+ nesting_too_deep: Non può essere all'interno di una categoria (annidamento eccessivo)
244
+ too_many_marks: Uilizza troppi segni
245
+ too_much_caps: Utilizza troppe MAIUSCOLE
246
+ too_short: Il contenuto è troppo breve
247
+ invisible_captcha:
248
+ sentence_for_humans: Se sei una persona e non un computer, ignora questo campo
249
+ timestamp_error_message: Mi spiace, troppo veloce! Per cortesia sottoponi nuovamente il contenuto.
250
+ layouts:
251
+ decidim:
252
+ cookie_warning:
253
+ description_html: Questo sito utilizza dei cookies. Se continui la navigazione significa che approvi i nostri termini di utilizzo dei cookies. Per ulteriori dettagli in proposito leggi %{link}.
254
+ link_label: qui
255
+ ok: OK, accetto
256
+ footer:
257
+ made_with_open_source: 'Questo sito è su GitHub <a target="_blank" href="https://github.com/decidim/decidim">software libero</a>.'
258
+ header:
259
+ close_menu: Chiudi questo menu
260
+ navigation: Navigazione
261
+ sign_in: Accedi
262
+ sign_up: Registrati
263
+ participatory_process_groups:
264
+ participatory_process_group:
265
+ browse: Naviga
266
+ participatory_process_widgets:
267
+ show:
268
+ active_step: Fasi attive
269
+ take_part: Unisciti
270
+ participatory_processes:
271
+ index:
272
+ promoted_processes: Processi evidenziati
273
+ no_processes_yet:
274
+ no_processes_yet: Non ci sono ancora dei processi partecipativi!
275
+ order_by_processes:
276
+ processes:
277
+ one: "%{count} processo"
278
+ other: "%{count} processi"
279
+ participatory_process:
280
+ active_step: 'Fase attuale:'
281
+ take_part: Unisciti
282
+ promoted_process:
283
+ active_step: 'Fase attuale:'
284
+ more_info: Più informazioni
285
+ take_part: Unisciti
286
+ process_header:
287
+ process_menu_item: Il processo
288
+ unfold: Espandi
289
+ process_header_steps:
290
+ step: Fase %{current} di %{total}
291
+ view_steps: Visualizza le fasi
292
+ user_menu:
293
+ admin_dashboard: Cruscotto per gli amministratori (Admin dashboard)
294
+ profile: Il mio account
295
+ sign_out: Esci
296
+ user_profile:
297
+ authorizations: Authorizzazioni
298
+ notifications_settings: Impostazioni delle notifiche
299
+ title: Impostazioni utente
300
+ user_groups: Organizzazioni
301
+ widget:
302
+ see_more: vedi di più
303
+ locale:
304
+ name: Italiano
305
+ pages:
306
+ '404':
307
+ back_home: Torna alla home page
308
+ content_doesnt_exist: Questo indirizzo non è corretto oppure è stato rimosso.
309
+ title: La pagina che stai cercando non esiste oppure non è disponibile
310
+ '500':
311
+ title: Si è verificato un problema da parte del server
312
+ try_later: Per cortesia riprova più tardi.
313
+ home:
314
+ extended:
315
+ debates: Dibattiti
316
+ debates_explanation: Incontriamoci, discutiamo e condividiamo le nostre opinioni sulle cose che riteniamo importanti per la nostra Città.
317
+ how_to_participate: Come posso partecipare ad un processo?
318
+ meetings: Incontri, meeting
319
+ meetings_explanation: Incontriamoci, discutiamo e condividiamo le nostre opinioni sulle cose che riteniamo importanti per la nostra Città.
320
+ more_info: Maggiori informazioni
321
+ proposals: Proposte
322
+ proposals_explanation: Spazio aperto per le proposte dei cittadini in merito al tipo di Città ideale in cui vorrebbero vivere.
323
+ footer_sub_hero:
324
+ footer_sub_hero_body: Costruiamo una società più aperta, trasparente e collaborativa.<br /> Unisciti, participa e decidi.
325
+ footer_sub_hero_headline: Benvenuto sulla piattaforma partecipativa di %{organization}.
326
+ register: Registrati
327
+ hero:
328
+ participate: Partecipa
329
+ welcome: Benvenuto su %{organization}!
330
+ highlighted_processes:
331
+ active_processes: Processi attivi
332
+ active_step: Fase attiva
333
+ see_all_processes: Vedi tutti i processi
334
+ statistics:
335
+ headline: Stato attuale dell'organizzazione %{organization}
336
+ meetings_count: Meeting
337
+ processes_count: Processi
338
+ proposals_count: Proposte
339
+ results_count: Resultati
340
+ votes_count: Voti
341
+ sub_hero:
342
+ register: Registrati
343
+ social_share_button:
344
+ wechat_footer: Apri il tuo WeChat, clicca il pulsante "Discover", infine clicca sul menu "Scan QR Code".
345
+ views:
346
+ pagination:
347
+ first: "&laquo; Primo"
348
+ last: Ultimo &raquo;
349
+ next: Successivo &rsaquo;
350
+ previous: "&lsaquo; Precedente"