decidim-system 0.19.0 → 0.22.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of decidim-system might be problematic. Click here for more details.

Files changed (59) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/decidim/system/application.js.es6 +2 -1
  3. data/app/assets/stylesheets/decidim/system/_foundation_and_overrides.scss +1 -0
  4. data/app/assets/stylesheets/decidim/system/_sidebar.scss +0 -2
  5. data/app/commands/decidim/system/create_default_content_blocks.rb +1 -1
  6. data/app/commands/decidim/system/register_organization.rb +1 -0
  7. data/app/commands/decidim/system/update_organization.rb +1 -0
  8. data/app/controllers/decidim/system/organizations_controller.rb +8 -1
  9. data/app/forms/decidim/system/update_organization_form.rb +31 -0
  10. data/app/views/decidim/system/devise/shared/_links.html.erb +1 -1
  11. data/app/views/decidim/system/organizations/_omniauth_provider.html.erb +23 -0
  12. data/app/views/decidim/system/organizations/_omniauth_settings.html.erb +11 -0
  13. data/app/views/decidim/system/organizations/_smtp_settings.html.erb +5 -1
  14. data/app/views/decidim/system/organizations/edit.html.erb +1 -0
  15. data/app/views/decidim/system/organizations/new.html.erb +1 -0
  16. data/app/views/layouts/decidim/system/_header.html.erb +1 -0
  17. data/app/views/layouts/decidim/system/_js_configuration.html.erb +9 -0
  18. data/app/views/layouts/decidim/system/application.html.erb +2 -0
  19. data/config/locales/ar.yml +11 -0
  20. data/config/locales/bg-BG.yml +8 -0
  21. data/config/locales/ca.yml +25 -0
  22. data/config/locales/cs.yml +26 -1
  23. data/config/locales/da-DK.yml +1 -0
  24. data/config/locales/de.yml +26 -0
  25. data/config/locales/el-GR.yml +1 -0
  26. data/config/locales/el.yml +101 -0
  27. data/config/locales/en.yml +25 -0
  28. data/config/locales/es-MX.yml +25 -0
  29. data/config/locales/es-PY.yml +25 -0
  30. data/config/locales/es.yml +25 -0
  31. data/config/locales/et-EE.yml +1 -0
  32. data/config/locales/fi-plain.yml +25 -0
  33. data/config/locales/fi.yml +25 -0
  34. data/config/locales/fr-CA.yml +101 -0
  35. data/config/locales/fr.yml +25 -0
  36. data/config/locales/ga-IE.yml +1 -0
  37. data/config/locales/hr-HR.yml +1 -0
  38. data/config/locales/hu.yml +18 -0
  39. data/config/locales/is-IS.yml +55 -0
  40. data/config/locales/it.yml +26 -1
  41. data/config/locales/ja-JP.yml +101 -0
  42. data/config/locales/lt-LT.yml +1 -0
  43. data/config/locales/lv-LV.yml +101 -0
  44. data/config/locales/mt-MT.yml +1 -0
  45. data/config/locales/nl.yml +25 -0
  46. data/config/locales/no.yml +83 -0
  47. data/config/locales/pl.yml +29 -3
  48. data/config/locales/pt-BR.yml +1 -1
  49. data/config/locales/pt.yml +50 -24
  50. data/config/locales/ro-RO.yml +101 -0
  51. data/config/locales/ru.yml +5 -0
  52. data/config/locales/sk-SK.yml +90 -0
  53. data/config/locales/sk.yml +95 -0
  54. data/config/locales/sl.yml +51 -0
  55. data/config/locales/sr-CS.yml +26 -0
  56. data/config/locales/sv.yml +25 -0
  57. data/lib/decidim/system/test/factories.rb +11 -0
  58. data/lib/decidim/system/version.rb +1 -1
  59. metadata +33 -17
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e5d758de1f3a09c4ad6cad68bd4ea27329e9d7d6e4bce89b2f16ffd70b3df0e7
4
- data.tar.gz: 480943b81bca5597146e07d413bbffc2bc9600f38eb39c4fcf4ae83658101ee4
3
+ metadata.gz: 8103f6222debfb3b86ee92339d04758f15ef9b6ec07f2961d7fb53ebf20af4f6
4
+ data.tar.gz: 8da892fcaa36e60f8f0fbaf11d60f181b3eb4a32b3b96105d036d5433a1f9cf6
5
5
  SHA512:
6
- metadata.gz: 31acfb8359e26941f16df97c9bd167c75078699870f150de531c9ec8fc5852ff75718c18a27c236f3049e7287223197b6c7938a89a2019566b96577596340af4
7
- data.tar.gz: bea0fac7779a57096841d283f9b771a4c5352c1595fd9103677419c5210ed9e0b3462f86a45bbf03e77a29a4fc261ba16117da33434437eae3491fe5246c003f
6
+ metadata.gz: 27534a161e2412f2df26801398bc42ab001c2ad15fc6d96b13f6700ffd77827d6edb8069b69f6d2352cd876ebcaa5e09d0f43ed914227a18b0a252a4df16370e
7
+ data.tar.gz: f76449afdcf89dd432ba104cb5b74cb8c227a6841f2826d29821da3b18ab4a147c60ab8806cf7fe2c97514c3f4b3eb16ade7cb2db0759d8e3417c83184204cfa
@@ -1,8 +1,9 @@
1
- // = require jquery
1
+ // = require jquery3
2
2
  // = require foundation
3
3
  // = require rails-ujs
4
4
  // = require decidim/editor
5
5
  // = require_self
6
+ // = require decidim/configuration
6
7
 
7
8
  $(() => {
8
9
  $(document).foundation();
@@ -2,6 +2,7 @@
2
2
 
3
3
  @import "settings";
4
4
  @import "foundation";
5
+ @import "foundation-overrides/components/button-group";
5
6
 
6
7
  // If you'd like to include motion-ui the foundation-rails gem comes prepackaged with it, uncomment the 3 @imports, if you are not using the gem you need to install the motion-ui sass package.
7
8
  //
@@ -1,5 +1,4 @@
1
1
  @mixin menu-title{
2
- text-transform: uppercase;
3
2
  letter-spacing: 5px;
4
3
  }
5
4
 
@@ -48,7 +47,6 @@
48
47
  }
49
48
 
50
49
  li{
51
- text-transform: uppercase;
52
50
  font-weight: bold;
53
51
  font-size: .9em;
54
52
  border-left: 2px solid transparent;
@@ -24,7 +24,7 @@ module Decidim
24
24
  Decidim::ContentBlock.create(
25
25
  decidim_organization_id: organization.id,
26
26
  weight: weight,
27
- scope: :homepage,
27
+ scope_name: :homepage,
28
28
  manifest_name: manifest.name,
29
29
  published_at: Time.current
30
30
  )
@@ -57,6 +57,7 @@ module Decidim
57
57
  badges_enabled: true,
58
58
  user_groups_enabled: true,
59
59
  default_locale: form.default_locale,
60
+ omniauth_settings: form.encrypted_omniauth_settings,
60
61
  smtp_settings: form.encrypted_smtp_settings,
61
62
  send_welcome_notification: true
62
63
  )
@@ -47,6 +47,7 @@ module Decidim
47
47
  organization.force_users_to_authenticate_before_access_organization = form.force_users_to_authenticate_before_access_organization
48
48
  organization.available_authorizations = form.clean_available_authorizations
49
49
  organization.users_registration_mode = form.users_registration_mode
50
+ organization.omniauth_settings = form.encrypted_omniauth_settings
50
51
  organization.smtp_settings = form.encrypted_smtp_settings
51
52
 
52
53
  organization.save!
@@ -5,7 +5,8 @@ module Decidim
5
5
  # Controller to manage Organizations (tenants).
6
6
  #
7
7
  class OrganizationsController < Decidim::System::ApplicationController
8
- helper_method :current_organization
8
+ helper_method :current_organization, :provider_enabled?
9
+ helper Decidim::OmniauthHelper
9
10
 
10
11
  def new
11
12
  @form = form(RegisterOrganizationForm).instance
@@ -56,12 +57,18 @@ module Decidim
56
57
  end
57
58
  end
58
59
 
60
+ private
61
+
59
62
  # The current organization for the request.
60
63
  #
61
64
  # Returns an Organization.
62
65
  def current_organization
63
66
  @organization
64
67
  end
68
+
69
+ def provider_enabled?(provider)
70
+ Rails.application.secrets.dig(:omniauth, provider, :enabled)
71
+ end
65
72
  end
66
73
  end
67
74
  end
@@ -20,6 +20,8 @@ module Decidim
20
20
  attribute :users_registration_mode, String
21
21
  jsonb_attribute :smtp_settings, [
22
22
  [:from, String],
23
+ [:from_email, String],
24
+ [:from_label, String],
23
25
  [:user_name, String],
24
26
  [:encrypted_password, String],
25
27
  [:address, String],
@@ -28,6 +30,18 @@ module Decidim
28
30
  [:enable_starttls_auto, Boolean]
29
31
  ]
30
32
 
33
+ OMNIATH_PROVIDERS_ATTRIBUTES = Decidim::User.omniauth_providers.map do |provider|
34
+ Rails.application.secrets.dig(:omniauth, provider).keys.map do |setting|
35
+ if setting == :enabled
36
+ ["omniauth_settings_#{provider}_enabled".to_sym, Boolean]
37
+ else
38
+ ["omniauth_settings_#{provider}_#{setting}".to_sym, String]
39
+ end
40
+ end
41
+ end.flatten(1)
42
+
43
+ jsonb_attribute :omniauth_settings, OMNIATH_PROVIDERS_ATTRIBUTES
44
+
31
45
  attr_writer :password
32
46
 
33
47
  validates :name, :host, :users_registration_mode, presence: true
@@ -36,6 +50,9 @@ module Decidim
36
50
 
37
51
  def map_model(model)
38
52
  self.secondary_hosts = model.secondary_hosts.join("\n")
53
+ self.omniauth_settings = Hash[(model.omniauth_settings || []).map do |k, v|
54
+ [k, Decidim::OmniauthProvider.value_defined?(v) ? Decidim::AttributeEncryptor.decrypt(v) : v]
55
+ end]
39
56
  end
40
57
 
41
58
  def clean_secondary_hosts
@@ -55,9 +72,23 @@ module Decidim
55
72
  end
56
73
 
57
74
  def encrypted_smtp_settings
75
+ smtp_settings["from"] = set_from
76
+
58
77
  smtp_settings.merge(encrypted_password: Decidim::AttributeEncryptor.encrypt(@password))
59
78
  end
60
79
 
80
+ def set_from
81
+ return smtp_settings["from_email"] if smtp_settings["from_label"].blank?
82
+
83
+ "#{smtp_settings["from_label"]} <#{smtp_settings["from_email"]}>"
84
+ end
85
+
86
+ def encrypted_omniauth_settings
87
+ Hash[omniauth_settings.map do |k, v|
88
+ [k, Decidim::OmniauthProvider.value_defined?(v) ? Decidim::AttributeEncryptor.encrypt(v) : v]
89
+ end]
90
+ end
91
+
61
92
  private
62
93
 
63
94
  def validate_organization_uniqueness
@@ -19,7 +19,7 @@
19
19
  <% end -%>
20
20
 
21
21
  <%- if devise_mapping.omniauthable? %>
22
- <%- resource_class.omniauth_providers.each do |provider| %>
22
+ <%- current_organization.enabled_omniauth_providers.keys.each do |provider| %>
23
23
  <%= link_to "Sign in with #{OmniAuth::Utils.camelize(provider)}", omniauth_authorize_path(resource_name, provider) %><br>
24
24
  <% end -%>
25
25
  <% end -%>
@@ -0,0 +1,23 @@
1
+ <% i18n_scope = "decidim.system.organizations.omniauth_settings" %>
2
+
3
+ <div class="card">
4
+ <h5><%= provider_name(provider) %></h5>
5
+
6
+ <% if provider_enabled?(provider) %>
7
+ <p class="help-text"><%= t("enabled_by_default", scope: i18n_scope) %></p>
8
+ <% end %>
9
+
10
+ <div class="card-section">
11
+ <%= f.check_box(
12
+ "omniauth_settings_#{provider}_enabled",
13
+ label: t("enabled", scope: i18n_scope)
14
+ ) %>
15
+
16
+ <% Rails.application.secrets.dig(:omniauth, provider.to_sym).keys.select { |k| k != :enabled }.each do |setting| %>
17
+ <%= f.text_field("omniauth_settings_#{provider}_#{setting}", label: I18n.t(
18
+ ".#{setting}",
19
+ scope: [:icon, :icon_path].include?(setting) ? i18n_scope : "#{i18n_scope}.#{provider}"
20
+ )) %>
21
+ <% end %>
22
+ </div>
23
+ </div>
@@ -0,0 +1,11 @@
1
+ <div class="fieldset">
2
+ <h4><%= t("decidim.system.models.organization.fields.omniauth_settings") %></h4>
3
+
4
+ <%= f.fields_for :omniauth_settings do %>
5
+ <% providers = Decidim::OmniauthProvider.available.keys %>
6
+
7
+ <% providers.each do |provider| %>
8
+ <%= render partial: "omniauth_provider", locals: { f: f, provider: provider } %>
9
+ <% end %>
10
+ <% end %>
11
+ </div>
@@ -2,7 +2,11 @@
2
2
  <h4><%= t("decidim.system.models.organization.fields.smtp_settings") %></h4>
3
3
  <%= f.fields_for :smtp_settings do %>
4
4
  <div class="field">
5
- <%= f.email_field :from %>
5
+ <%= f.email_field :from_email, placeholder: t(".placeholder.from_email") %>
6
+ </div>
7
+ <div class="field">
8
+ <%= f.email_field :from_label, placeholder: t(".placeholder.from_label") %>
9
+ <p><%= t(".instructions.from_label") %></p>
6
10
  </div>
7
11
  <div class="field">
8
12
  <%= f.text_field :user_name %>
@@ -31,6 +31,7 @@
31
31
  </div>
32
32
 
33
33
  <%= render partial: "smtp_settings", locals: { f: f } %>
34
+ <%= render partial: "omniauth_settings", locals: { f: f } %>
34
35
 
35
36
  <div class="actions">
36
37
  <%= f.submit t("decidim.system.actions.save") %>
@@ -72,6 +72,7 @@
72
72
  </div>
73
73
 
74
74
  <%= render partial: "smtp_settings", locals: { f: f } %>
75
+ <%= render partial: "omniauth_settings", locals: { f: f } %>
75
76
 
76
77
  <div class="actions">
77
78
  <%= f.submit t("decidim.system.models.organization.actions.save_and_invite") %>
@@ -1,4 +1,5 @@
1
1
  <meta name="viewport" content="width=device-width, initial-scale=1">
2
2
  <%= csrf_meta_tags %>
3
3
  <%= stylesheet_link_tag "decidim/system/application", media: "all" %>
4
+ <%= javascript_include_tag "decidim/confirm" %>
4
5
  <%= javascript_include_tag "decidim/system/application" %>
@@ -0,0 +1,9 @@
1
+ <%
2
+ js_configs = {
3
+ icons_path: image_path("decidim/icons.svg")
4
+ }
5
+ %>
6
+
7
+ <script>
8
+ Decidim.config.set(<%== js_configs.to_json %>);
9
+ </script>
@@ -36,5 +36,7 @@
36
36
  </div>
37
37
  </div>
38
38
  </div>
39
+ <%= render partial: "decidim/shared/confirm_modal" %>
40
+ <%= render partial: "layouts/decidim/system/js_configuration" %>
39
41
  </body>
40
42
  </html>
@@ -61,6 +61,17 @@ ar:
61
61
  reference_prefix_hint: يتم استخدام بادئة المرجع لتعريف الموارد بشكل فريد في كل المؤسسة
62
62
  secondary_hosts_hint: أدخل كل واحد منهم في سطر جديد
63
63
  title: منظمة جديدة
64
+ omniauth_settings:
65
+ facebook:
66
+ app_secret: سر التطبيق
67
+ google_oauth2:
68
+ client_id: معرف العميل ID
69
+ client_secret: الرمز السري للعميل
70
+ icon: الأيقونة
71
+ icon_path: مسار الأيقونة
72
+ twitter:
73
+ api_key: مفتاح API
74
+ api_secret: سر API
64
75
  update:
65
76
  error: حدثت مشكلة أثناء تحديث هذه المؤسسة.
66
77
  success: تم تحديث المنظمة بنجاح.
@@ -0,0 +1,8 @@
1
+ bg:
2
+ decidim:
3
+ system:
4
+ actions:
5
+ confirm_destroy: Сигурни ли сте, че желаете да изтриете това?
6
+ destroy: Изтрий
7
+ edit: Редактирай
8
+ new: Нов
@@ -47,6 +47,7 @@ ca:
47
47
  fields:
48
48
  created_at: Data de creació
49
49
  name: Nom
50
+ omniauth_settings: Configuració de l'Omniauth
50
51
  smtp_settings: Configuració d'SMTP
51
52
  name: Organització
52
53
  organizations:
@@ -61,6 +62,30 @@ ca:
61
62
  reference_prefix_hint: El prefix de la referència s'utilitza per identificar de forma única els recursos de tota la organització
62
63
  secondary_hosts_hint: Introdueix cada un d'ells en una nova línia
63
64
  title: Nova organització
65
+ omniauth_settings:
66
+ decidim:
67
+ client_id: ID del client
68
+ client_secret: Secret del client
69
+ site_url: URL del lloc web
70
+ enabled: Habilitat
71
+ enabled_by_default: Aquest proveïdor està habilitat per defecte. Es pot editar però no es pot desactivar.
72
+ facebook:
73
+ app_id: App ID
74
+ app_secret: App secret
75
+ google_oauth2:
76
+ client_id: ID del Client
77
+ client_secret: Client secret
78
+ icon: Icona
79
+ icon_path: Ruta de la icona
80
+ twitter:
81
+ api_key: Clau de l'API
82
+ api_secret: Clau secreta de l'API
83
+ smtp_settings:
84
+ instructions:
85
+ from_label: 'L''adreça electrònica d''enviament serà: "el-nom-de-la-vostra-organització <la-vostra-organització@el-vostre-proveidor.org>". Deixeu-ho en blanc per a usar el "des de" com a etiqueta'
86
+ placeholder:
87
+ from_email: la-vostra-organitzacio@el-vostre-proveidor.org
88
+ from_label: el-nom-de-la-vostra-organitzacio
64
89
  update:
65
90
  error: S'ha produït un error en actualitzar aquesta organització.
66
91
  success: L'organització s'ha actualitzat correctament.
@@ -45,8 +45,9 @@ cs:
45
45
  actions:
46
46
  save_and_invite: Vytvořit organizaci a pozvat administrátora
47
47
  fields:
48
- created_at: Vytvořeno u
48
+ created_at: Vytvořeno v
49
49
  name: název
50
+ omniauth_settings: Nastavení Omniauth
50
51
  smtp_settings: SMTP nastavení
51
52
  name: Organizace
52
53
  organizations:
@@ -61,6 +62,30 @@ cs:
61
62
  reference_prefix_hint: Předpona reference se používá k jednoznačné identifikaci zdrojů ve všech organizacích
62
63
  secondary_hosts_hint: Zadejte každý z nich do nového řádku
63
64
  title: Nová organizace
65
+ omniauth_settings:
66
+ decidim:
67
+ client_id: Client ID
68
+ client_secret: Tajný klíč klienta
69
+ site_url: URL webu
70
+ enabled: Povoleno
71
+ enabled_by_default: Tento poskytovatel je ve výchozím nastavení povolen. Může být upraven, ale ne zakázán.
72
+ facebook:
73
+ app_id: ID aplikace
74
+ app_secret: Tajný klíč aplikace
75
+ google_oauth2:
76
+ client_id: Client ID
77
+ client_secret: Tajný klíč klienta
78
+ icon: Ikona
79
+ icon_path: Cesta k ikonám
80
+ twitter:
81
+ api_key: Klíč API
82
+ api_secret: API heslo
83
+ smtp_settings:
84
+ instructions:
85
+ from_label: 'Odesílatel e-mailu bude: "jméno-vaší-organizace <your-organization@your-provider.org>". Nechte prázdné pro použití štítku ''from_email'''
86
+ placeholder:
87
+ from_email: vaše-organizace@váš-poskytovatel-domény.org
88
+ from_label: jméno vaší organizace
64
89
  update:
65
90
  error: Při aktualizaci této organizace došlo k chybě.
66
91
  success: Organizace byla úspěšně aktualizována.
@@ -0,0 +1 @@
1
+ da:
@@ -47,6 +47,8 @@ de:
47
47
  fields:
48
48
  created_at: Hergestellt in
49
49
  name: Name
50
+ omniauth_settings: Omniauth-Einstellungen
51
+ smtp_settings: SMTP-Einstellungen
50
52
  name: Organisation
51
53
  organizations:
52
54
  create:
@@ -60,6 +62,30 @@ de:
60
62
  reference_prefix_hint: Das Referenzpräfix wird zur eindeutigen Identifizierung von Ressourcen in allen Organisationen verwendet
61
63
  secondary_hosts_hint: Geben Sie jede von ihnen in einer neuen Zeile ein
62
64
  title: Neue Organisation
65
+ omniauth_settings:
66
+ decidim:
67
+ client_id: Kunden-ID
68
+ client_secret: Kundengeheimnis
69
+ site_url: Website-URL
70
+ enabled: Aktiviert
71
+ enabled_by_default: Dieser Anbieter ist standardmäßig aktiviert. Er kann bearbeitet aber nicht deaktiviert werden.
72
+ facebook:
73
+ app_id: App-ID
74
+ app_secret: App-Geheimnis
75
+ google_oauth2:
76
+ client_id: Kunden-ID
77
+ client_secret: Kundengeheimnis
78
+ icon: Symbol
79
+ icon_path: Icon-Pfad
80
+ twitter:
81
+ api_key: API-Schlüssel
82
+ api_secret: API-Geheimnis
83
+ smtp_settings:
84
+ instructions:
85
+ from_label: 'Der Sender der E-Mail ist: „name-ihrer-organisation <ihrer-organisation@ihr-anbieter.org>". Lassen Sie das Feld leer, damit „von_email“ als Bezeichnung verwendet wird'
86
+ placeholder:
87
+ from_email: ihre-organisation@ihr-anbieter.org
88
+ from_label: name-ihrer-organisation
63
89
  update:
64
90
  error: Beim Aktualisieren dieser Organisation ist ein Fehler aufgetreten.
65
91
  success: Die Organisation wurde erfolgreich aktualisiert.
@@ -0,0 +1 @@
1
+ el:
@@ -0,0 +1,101 @@
1
+ el:
2
+ decidim:
3
+ system:
4
+ actions:
5
+ confirm_destroy: Είστε βέβαιοι ότι θέλετε να την διαγράψετε;
6
+ destroy: Διαγραφή
7
+ edit: Επεξεργασία
8
+ new: Νέα
9
+ save: Αποθήκευση
10
+ title: Ενέργειες
11
+ admins:
12
+ create:
13
+ error: Υπήρξε ένα πρόβλημα κατά τη δημιουργία ενός νέου διαχειριστή.
14
+ success: Ο διαχειριστής δημιουργήθηκε με επιτυχία
15
+ destroy:
16
+ success: Ο διαχειριστής διαγράφηκε με επιτυχία
17
+ edit:
18
+ title: Επεξεργασία διαχειριστή
19
+ update: Ενημέρωση
20
+ index:
21
+ title: Διαχειριστές
22
+ new:
23
+ create: Δημιουργία
24
+ title: Νέος διαχειριστής
25
+ update:
26
+ error: Υπήρξε ένα πρόβλημα κατά την ενημέρωση αυτού του διαχειριστή.
27
+ success: Ο διαχειριστής ενημερώθηκε με επιτυχία
28
+ default_pages:
29
+ placeholders:
30
+ content: Προσθέστε ουσιαστικό περιεχόμενο στη στατική σελίδα %{page} στον πίνακα εργαλείων διαχειριστή.
31
+ title: Προεπιλεγμένος τίτλος για τη σελίδα %{page}
32
+ menu:
33
+ admins: Διαχειριστές
34
+ dashboard: Πίνακας εργαλείων
35
+ organizations: Οργανισμοί
36
+ models:
37
+ admin:
38
+ fields:
39
+ created_at: Δημιουργήθηκε στις
40
+ email: Email
41
+ name: Διαχειριστής
42
+ validations:
43
+ email_uniqueness: υπάρχει ήδη άλλος διαχειριστής με την ίδια διεύθυνση email
44
+ organization:
45
+ actions:
46
+ save_and_invite: Δημιουργία οργανισμού και πρόσκληση διαχειριστή
47
+ fields:
48
+ created_at: Δημιουργήθηκε στις
49
+ name: Όνομα
50
+ omniauth_settings: Ρυθμίσεις Omniauth
51
+ smtp_settings: Ρυθμίσεις SMTP
52
+ name: Οργανισμός
53
+ organizations:
54
+ create:
55
+ error: Υπήρξε ένα πρόβλημα κατά τη δημιουργία ενός νέου οργανισμού.
56
+ success: Ο οργανισμός δημιουργήθηκε με επιτυχία.
57
+ edit:
58
+ secondary_hosts_hint: Εισαγάγετε κάθε ένα από αυτά σε μια νέα γραμμή
59
+ index:
60
+ title: Οργανισμοί
61
+ new:
62
+ reference_prefix_hint: Το πρόθεμα αναφοράς χρησιμοποιείται για τον μοναδικό προσδιορισμό πόρων σε ολόκληρο τον οργανισμό
63
+ secondary_hosts_hint: Εισαγάγετε κάθε ένα από αυτά σε μια νέα γραμμή
64
+ title: Νέος οργανισμός
65
+ omniauth_settings:
66
+ decidim:
67
+ client_id: Αναγνωριστικό προγράμματος-πελάτη
68
+ client_secret: Μυστικός κωδικός προγράμματος-πελάτη
69
+ site_url: Διεύθυνση URL τοποθεσίας
70
+ enabled: Ενεργοποιήθηκε
71
+ enabled_by_default: Αυτός ο πάροχος είναι ενεργοποιημένος από προεπιλογή. Μπορεί να υποβληθεί σε επεξεργασία αλλά όχι να απενεργοποιηθεί.
72
+ facebook:
73
+ app_id: Αναγνωριστικό εφαρμογής
74
+ app_secret: Μυστικός κωδικός εφαρμογής
75
+ google_oauth2:
76
+ client_id: Αναγνωριστικό προγράμματος-πελάτη
77
+ client_secret: Μυστικός κωδικός προγράμματος-πελάτη
78
+ icon: Εικονίδιο
79
+ icon_path: Διαδρομή εικονιδίου
80
+ twitter:
81
+ api_key: Κλειδί API
82
+ api_secret: Μυστικός κωδικός API
83
+ smtp_settings:
84
+ instructions:
85
+ from_label: 'Ο αποστολέας email θα είναι: «το-όνομα-του-οργανισμού-σας <your-organization@your-provider.org>». Αφήστε κενό για να χρησιμοποιήσετε το πεδίο «από_email» ως ετικέτα'
86
+ placeholder:
87
+ from_email: Ο-οργανισμός-σας@ο-πάροχός σας.org
88
+ from_label: το-όνομα-του-οργανισμού-σας
89
+ update:
90
+ error: Υπήρξε ένα πρόβλημα κατά την ενημέρωση αυτού του οργανισμού.
91
+ success: Ο οργανισμός ενημερώθηκε με επιτυχία.
92
+ users_registration_mode:
93
+ disabled: Η πρόσβαση μπορεί να γίνει μόνο με εξωτερικούς λογαριασμούς
94
+ enabled: Να επιτρέπεται στους συμμετέχοντες η εγγραφή και η σύνδεση
95
+ existing: Να μην επιτρέπεται στους συμμετέχοντες η εγγραφή, αλλά να επιτρέπεται στους υπάρχοντες συμμετέχοντες η σύνδεση
96
+ shared:
97
+ notices:
98
+ no_organization_warning_html: Πρέπει να δημιουργήσετε έναν οργανισμό για να ξεκινήσετε. Βεβαιωθείτε ότι έχετε διαβάσει τον οδηγό %{guide} προτού συνεχίσετε.
99
+ our_getting_started_guide: ο οδηγός μας γρήγορης έναρξης
100
+ titles:
101
+ dashboard: Πίνακας εργαλείων