diff --git a/app/views/layouts/auth.html.erb b/app/views/layouts/auth.html.erb
index 557128a04..c02ee861f 100644
--- a/app/views/layouts/auth.html.erb
+++ b/app/views/layouts/auth.html.erb
@@ -23,11 +23,11 @@
<% end %>
<% if controller_name == "sessions" %>
- <%= tag.span t(".no_account", product_name: product_name), class: "text-secondary" %> <%= link_to t(".sign_up"), new_registration_path, class: "font-medium text-primary hover:underline transition" %>
+ <%= tag.span t("layouts.auth.no_account", product_name: product_name), class: "text-secondary" %> <%= link_to t("layouts.auth.sign_up"), new_registration_path, class: "font-medium text-primary hover:underline transition" %>
<% elsif controller_name == "registrations" %>
- <%= t(".existing_account") %> <%= link_to t(".sign_in"), new_session_path, class: "font-medium text-primary hover:underline transition" %>
+ <%= t("layouts.auth.existing_account") %> <%= link_to t("layouts.auth.sign_in"), new_session_path, class: "font-medium text-primary hover:underline transition" %>
<% end %>
diff --git a/app/views/oidc_accounts/link.html.erb b/app/views/oidc_accounts/link.html.erb
index ae75e6d8e..c97c3cd3f 100644
--- a/app/views/oidc_accounts/link.html.erb
+++ b/app/views/oidc_accounts/link.html.erb
@@ -1,61 +1,60 @@
<%
- header_title @user_exists ? "Link OIDC Account" : "Create Account"
+ header_title @user_exists ? t("oidc_accounts.link.title_link") : t("oidc_accounts.link.title_create")
%>
<% if @user_exists %>
- <%= form.select :theme, [["System", "system"], ["Light", "light"], ["Dark", "dark"]], { label: "Color theme" }, data: { action: "onboarding#setTheme" } %>
+ <%= form.select :theme, [[t(".theme_system"), "system"], [t(".theme_light"), "light"], [t(".theme_dark"), "dark"]], { label: t(".color_theme") }, data: { action: "onboarding#setTheme" } %>
<%= form.fields_for :family do |family_form| %>
<%= family_form.select :locale,
- language_options,
- { label: t(".locale"), required: true, selected: params[:locale] || @user.locale || I18n.locale },
- { data: { action: "onboarding#setLocale" } } %>
+ language_options,
+ { label: t(".locale"), required: true, selected: params[:locale] || @user.locale || I18n.locale },
+ { data: { action: "onboarding#setLocale" } } %>
<%= family_form.select :currency,
- Money::Currency.as_options.map { |currency| [ "#{currency.name} (#{currency.iso_code})", currency.iso_code ] },
- { label: t(".currency"), required: true, selected: params[:currency] || @user.family.currency },
- { data: { action: "onboarding#setCurrency" } } %>
+ Money::Currency.as_options.map { |currency| [ "#{currency.name} (#{currency.iso_code})", currency.iso_code ] },
+ { label: t(".currency"), required: true, selected: params[:currency] || @user.family.currency },
+ { data: { action: "onboarding#setCurrency" } } %>
<%= family_form.select :date_format,
- Family::DATE_FORMATS,
- { label: t(".date_format"), required: true, selected: params[:date_format] || @user.family.date_format },
- { data: { action: "onboarding#setDateFormat" } } %>
+ Family::DATE_FORMATS,
+ { label: t(".date_format"), required: true, selected: params[:date_format] || @user.family.date_format },
+ { data: { action: "onboarding#setDateFormat" } } %>
<% end %>
diff --git a/app/views/onboardings/show.html.erb b/app/views/onboardings/show.html.erb
index 4ebe9bd37..29c55444f 100644
--- a/app/views/onboardings/show.html.erb
+++ b/app/views/onboardings/show.html.erb
@@ -13,8 +13,8 @@
- Starting today you can give the product a good look.
If you like it, self-host or contribute to continue using it here.
+ <%= t(".description_html").html_safe %>
<% if Current.family.can_start_trial? %>
<%= render DS::Button.new(
- text: "Try Sure for 45 days",
- href: subscription_path,
- full_width: true,
- data: { turbo: false }
- ) %>
+ text: t(".try_button"),
+ href: subscription_path,
+ full_width: true,
+ data: { turbo: false }
+ ) %>
<% elsif Current.family.trialing? %>
<%= render DS::Link.new(
- text: "Continue trial",
+ text: t(".continue_trial"),
href: root_path,
full_width: true,
- ) %>
+ ) %>
<% else %>
<%= render DS::Link.new(
- text: "Upgrade",
+ text: t(".upgrade"),
href: upgrade_subscription_path,
full_width: true,
- ) %>
+ ) %>
<% end %>
-
How things work here
+
<%= t(".how_it_works") %>
@@ -64,18 +64,18 @@
-
Today
-
You'll get free access to Sure for 45 days on our AWS.
+
<%= t(".today") %>
+
<%= t(".today_description") %>
-
In 40 days (<%= 40.days.from_now.strftime("%B %d") %>)
-
We'll notify you to remind you to export your data.
+
<%= t(".in_40_days", date: l(40.days.from_now.to_date, format: :long)) %>
+
<%= t(".in_40_days_description") %>
-
In 45 days (<%= 45.days.from_now.strftime("%B %d") %>)
-
We delete your data — contribute to continue using Sure here!
+
<%= t(".in_45_days", date: l(45.days.from_now.to_date, format: :long)) %>
+
<%= t(".in_45_days_description") %>
diff --git a/app/views/registrations/new.html.erb b/app/views/registrations/new.html.erb
index f1fb414ae..9c811087c 100644
--- a/app/views/registrations/new.html.erb
+++ b/app/views/registrations/new.html.erb
@@ -74,19 +74,19 @@
<%= icon("check", size: "sm") %>
- Minimum 8 characters
+ <%= t(".password_requirements.length") %>
<%= icon("check", size: "sm") %>
- Upper and lowercase letters
+ <%= t(".password_requirements.case") %>
<%= icon("check", size: "sm") %>
- A number (0-9)
+ <%= t(".password_requirements.number") %>
<%= icon("check", size: "sm") %>
- A special character (!, @, #, $, %, etc)
+ <%= t(".password_requirements.special") %>
diff --git a/app/views/sessions/new.html.erb b/app/views/sessions/new.html.erb
index ce92c5e54..c51f4977a 100644
--- a/app/views/sessions/new.html.erb
+++ b/app/views/sessions/new.html.erb
@@ -80,7 +80,7 @@
<% if provider[:icon].present? %>
<%= icon provider[:icon], size: "sm" %>
<% end %>
-
<%= provider[:label].presence || provider[:name].to_s.titleize %>
+
<%= provider[:label].presence || t(".#{provider_id}", default: provider[:name].to_s.titleize) %>
<% end %>
<% end %>
<% end %>
diff --git a/config/auth.yml b/config/auth.yml
index ebcbc6ea0..162364ea6 100644
--- a/config/auth.yml
+++ b/config/auth.yml
@@ -35,7 +35,7 @@ default: &default
- id: "oidc"
strategy: "openid_connect"
name: "openid_connect"
- label: <%= ENV.fetch("OIDC_BUTTON_LABEL", "Sign in with OpenID Connect") %>
+ label: <%= ENV.fetch("OIDC_BUTTON_LABEL", "") %>
icon: <%= ENV.fetch("OIDC_BUTTON_ICON", "key") %>
# Per-provider credentials (optional, falls back to global OIDC_* vars)
issuer: <%= ENV["OIDC_ISSUER"] %>
diff --git a/config/locales/views/oidc_accounts/ca.yml b/config/locales/views/oidc_accounts/ca.yml
index 27f6429a7..06ad64409 100644
--- a/config/locales/views/oidc_accounts/ca.yml
+++ b/config/locales/views/oidc_accounts/ca.yml
@@ -2,4 +2,32 @@
ca:
oidc_accounts:
link:
- account_creation_disabled: La creació de comptes nous mitjançant inici de sessió únic està inhabilitada. Contacta amb un administrador per crear el teu compte.
+ title_link: Enllaçar compte OIDC
+ title_create: Crear compte
+ verify_heading: Verificar la vostra identitat
+ verify_description_html: "Per enllaçar el vostre compte %{provider}%{email_suffix}, verifiqueu la vostra identitat introduint la contrasenya."
+ email_suffix_html: " (
%{email})"
+ email_label: Correu electrònic
+ email_placeholder: Introduïu el vostre correu electrònic
+ password_label: Contrasenya
+ password_placeholder: Introduïu la vostra contrasenya
+ verify_hint: Això garanteix que només vós pugueu enllaçar comptes externs al vostre perfil.
+ submit_link: Enllaçar compte
+ create_heading: Crear compte nou
+ create_description_html: "No s'ha trobat cap compte amb el correu electrònic
%{email}. Feu clic a baix per crear un compte nou amb la vostra identitat %{provider}."
+ info_email: "Correu electrònic:"
+ info_name: "Nom:"
+ submit_create: Crear compte
+ account_creation_disabled: La creació de comptes mitjançant l'inici de sessió únic està desactivada. Contacteu amb un administrador.
+ cancel: Cancel·lar
+ new_user:
+ title: Completar el compte
+ heading: Crear el compte
+ description: Confirmeu les vostres dades per completar la creació del compte amb la vostra identitat %{provider}.
+ email_label: Correu electrònic (del proveïdor SSO)
+ first_name_label: Nom
+ first_name_placeholder: Introduïu el vostre nom
+ last_name_label: Cognom
+ last_name_placeholder: Introduïu el vostre cognom
+ submit: Crear compte
+ cancel: Cancel·lar
\ No newline at end of file
diff --git a/config/locales/views/oidc_accounts/de.yml b/config/locales/views/oidc_accounts/de.yml
new file mode 100644
index 000000000..476197ec0
--- /dev/null
+++ b/config/locales/views/oidc_accounts/de.yml
@@ -0,0 +1,33 @@
+---
+de:
+ oidc_accounts:
+ link:
+ title_link: OIDC-Konto verknüpfen
+ title_create: Konto erstellen
+ verify_heading: Identität bestätigen
+ verify_description_html: "Um Ihr %{provider}-Konto%{email_suffix} zu verknüpfen, bestätigen Sie bitte Ihre Identität mit Ihrem Passwort."
+ email_suffix_html: " (
%{email})"
+ email_label: E-Mail
+ email_placeholder: E-Mail-Adresse eingeben
+ password_label: Passwort
+ password_placeholder: Passwort eingeben
+ verify_hint: Dies stellt sicher, dass nur Sie externe Konten mit Ihrem Profil verknüpfen können.
+ submit_link: Konto verknüpfen
+ create_heading: Neues Konto erstellen
+ create_description_html: "Kein Konto mit der E-Mail
%{email} gefunden. Klicken Sie unten, um ein neues Konto mit Ihrer %{provider}-Identität zu erstellen."
+ info_email: "E-Mail:"
+ info_name: "Name:"
+ submit_create: Konto erstellen
+ account_creation_disabled: Die Kontoerstellung über Single Sign-On ist deaktiviert. Bitte kontaktieren Sie einen Administrator.
+ cancel: Abbrechen
+ new_user:
+ title: Konto vervollständigen
+ heading: Konto erstellen
+ description: Bitte bestätigen Sie Ihre Daten, um die Kontoerstellung mit Ihrer %{provider}-Identität abzuschließen.
+ email_label: E-Mail (vom SSO-Anbieter)
+ first_name_label: Vorname
+ first_name_placeholder: Vorname eingeben
+ last_name_label: Nachname
+ last_name_placeholder: Nachname eingeben
+ submit: Konto erstellen
+ cancel: Abbrechen
\ No newline at end of file
diff --git a/config/locales/views/oidc_accounts/en.yml b/config/locales/views/oidc_accounts/en.yml
index 618baf7e2..4ed91677c 100644
--- a/config/locales/views/oidc_accounts/en.yml
+++ b/config/locales/views/oidc_accounts/en.yml
@@ -2,7 +2,24 @@
en:
oidc_accounts:
link:
+ title_link: Link OIDC Account
+ title_create: Create Account
+ verify_heading: Verify Your Identity
+ verify_description_html: "To link your %{provider} account%{email_suffix}, please verify your identity by entering your password."
+ email_suffix_html: " (
%{email})"
+ email_label: Email
+ email_placeholder: Enter your email
+ password_label: Password
+ password_placeholder: Enter your password
+ verify_hint: This helps ensure that only you can link external accounts to your profile.
+ submit_link: Link Account
+ create_heading: Create New Account
+ create_description_html: "No account found with the email
%{email}. Click below to create a new account using your %{provider} identity."
+ info_email: "Email:"
+ info_name: "Name:"
+ submit_create: Create Account
account_creation_disabled: New account creation via single sign-on is disabled. Please contact an administrator to create your account.
+ cancel: Cancel
new_user:
title: Complete Your Account
heading: Create Your Account
diff --git a/config/locales/views/oidc_accounts/es.yml b/config/locales/views/oidc_accounts/es.yml
new file mode 100644
index 000000000..22d9dd914
--- /dev/null
+++ b/config/locales/views/oidc_accounts/es.yml
@@ -0,0 +1,33 @@
+---
+es:
+ oidc_accounts:
+ link:
+ title_link: Vincular cuenta OIDC
+ title_create: Crear cuenta
+ verify_heading: Verificar su identidad
+ verify_description_html: "Para vincular su cuenta de %{provider}%{email_suffix}, verifique su identidad ingresando su contraseña."
+ email_suffix_html: " (
%{email})"
+ email_label: Correo electrónico
+ email_placeholder: Ingrese su correo electrónico
+ password_label: Contraseña
+ password_placeholder: Ingrese su contraseña
+ verify_hint: Esto garantiza que solo usted pueda vincular cuentas externas a su perfil.
+ submit_link: Vincular cuenta
+ create_heading: Crear cuenta nueva
+ create_description_html: "No se encontró ninguna cuenta con el correo electrónico
%{email}. Haga clic a continuación para crear una cuenta nueva con su identidad de %{provider}."
+ info_email: "Correo electrónico:"
+ info_name: "Nombre:"
+ submit_create: Crear cuenta
+ account_creation_disabled: La creación de cuentas mediante inicio de sesión único está desactivada. Contacte a un administrador.
+ cancel: Cancelar
+ new_user:
+ title: Completar su cuenta
+ heading: Crear su cuenta
+ description: Confirme sus datos para completar la creación de cuenta con su identidad de %{provider}.
+ email_label: Correo electrónico (del proveedor SSO)
+ first_name_label: Nombre
+ first_name_placeholder: Ingrese su nombre
+ last_name_label: Apellido
+ last_name_placeholder: Ingrese su apellido
+ submit: Crear cuenta
+ cancel: Cancelar
\ No newline at end of file
diff --git a/config/locales/views/oidc_accounts/fr.yml b/config/locales/views/oidc_accounts/fr.yml
index b06a5d3dd..9260f97af 100644
--- a/config/locales/views/oidc_accounts/fr.yml
+++ b/config/locales/views/oidc_accounts/fr.yml
@@ -2,4 +2,32 @@
fr:
oidc_accounts:
link:
- account_creation_disabled: La création de nouveaux comptes via l'authentification unique est désactivée. Veuillez contacter un administrateur pour créer votre compte.
+ title_link: Associer un compte OIDC
+ title_create: Créer un compte
+ verify_heading: Vérifier votre identité
+ verify_description_html: "Pour associer votre compte %{provider}%{email_suffix}, veuillez vérifier votre identité en saisissant votre mot de passe."
+ email_suffix_html: " (
%{email})"
+ email_label: Adresse e-mail
+ email_placeholder: Saisissez votre adresse e-mail
+ password_label: Mot de passe
+ password_placeholder: Saisissez votre mot de passe
+ verify_hint: Cela garantit que vous seul pouvez associer des comptes externes à votre profil.
+ submit_link: Associer le compte
+ create_heading: Créer un nouveau compte
+ create_description_html: "Aucun compte trouvé avec l'adresse e-mail
%{email}. Cliquez ci-dessous pour créer un nouveau compte avec votre identité %{provider}."
+ info_email: "E-mail :"
+ info_name: "Nom :"
+ submit_create: Créer un compte
+ account_creation_disabled: La création de compte via l'authentification unique est désactivée. Veuillez contacter un administrateur.
+ cancel: Annuler
+ new_user:
+ title: Compléter votre compte
+ heading: Créer votre compte
+ description: Veuillez confirmer vos informations pour finaliser la création de compte avec votre identité %{provider}.
+ email_label: E-mail (du fournisseur SSO)
+ first_name_label: Prénom
+ first_name_placeholder: Saisissez votre prénom
+ last_name_label: Nom de famille
+ last_name_placeholder: Saisissez votre nom de famille
+ submit: Créer un compte
+ cancel: Annuler
\ No newline at end of file
diff --git a/config/locales/views/oidc_accounts/nb.yml b/config/locales/views/oidc_accounts/nb.yml
new file mode 100644
index 000000000..806d3735f
--- /dev/null
+++ b/config/locales/views/oidc_accounts/nb.yml
@@ -0,0 +1,33 @@
+---
+nb:
+ oidc_accounts:
+ link:
+ title_link: Koble til OIDC-konto
+ title_create: Opprett konto
+ verify_heading: Bekreft identiteten din
+ verify_description_html: "For å koble til %{provider}-kontoen din%{email_suffix}, bekreft identiteten din ved å skrive inn passordet ditt."
+ email_suffix_html: " (
%{email})"
+ email_label: E-postadresse
+ email_placeholder: Skriv inn e-postadressen din
+ password_label: Passord
+ password_placeholder: Skriv inn passordet ditt
+ verify_hint: Dette sikrer at bare du kan koble eksterne kontoer til profilen din.
+ submit_link: Koble til konto
+ create_heading: Opprett ny konto
+ create_description_html: "Ingen konto funnet med e-postadressen
%{email}. Klikk nedenfor for å opprette en ny konto med din %{provider}-identitet."
+ info_email: "E-post:"
+ info_name: "Navn:"
+ submit_create: Opprett konto
+ account_creation_disabled: Kontooppretting via enkel pålogging er deaktivert. Kontakt en administrator.
+ cancel: Avbryt
+ new_user:
+ title: Fullfør kontoen din
+ heading: Opprett kontoen din
+ description: Bekreft opplysningene dine for å fullføre kontoopprettingen med din %{provider}-identitet.
+ email_label: E-post (fra SSO-leverandør)
+ first_name_label: Fornavn
+ first_name_placeholder: Skriv inn fornavnet ditt
+ last_name_label: Etternavn
+ last_name_placeholder: Skriv inn etternavnet ditt
+ submit: Opprett konto
+ cancel: Avbryt
\ No newline at end of file
diff --git a/config/locales/views/oidc_accounts/nl.yml b/config/locales/views/oidc_accounts/nl.yml
index b0c510dd9..31b48587c 100644
--- a/config/locales/views/oidc_accounts/nl.yml
+++ b/config/locales/views/oidc_accounts/nl.yml
@@ -2,11 +2,28 @@
nl:
oidc_accounts:
link:
- account_creation_disabled: Nieuwe accountaanmaak via single sign-on is uitgeschakeld. Neem contact op met een beheerder om uw account aan te maken.
+ title_link: OIDC-account koppelen
+ title_create: Account aanmaken
+ verify_heading: Verifieer uw identiteit
+ verify_description_html: "Om uw %{provider}-account%{email_suffix} te koppelen, verifieert u uw identiteit door uw wachtwoord in te voeren."
+ email_suffix_html: " (
%{email})"
+ email_label: E-mailadres
+ email_placeholder: Voer uw e-mailadres in
+ password_label: Wachtwoord
+ password_placeholder: Voer uw wachtwoord in
+ verify_hint: Dit zorgt ervoor dat alleen u externe accounts aan uw profiel kunt koppelen.
+ submit_link: Account koppelen
+ create_heading: Nieuw account aanmaken
+ create_description_html: "Geen account gevonden met het e-mailadres
%{email}. Klik hieronder om een nieuw account aan te maken met uw %{provider}-identiteit."
+ info_email: "E-mail:"
+ info_name: "Naam:"
+ submit_create: Account aanmaken
+ account_creation_disabled: Het aanmaken van accounts via single sign-on is uitgeschakeld. Neem contact op met een beheerder.
+ cancel: Annuleren
new_user:
- title: Voltooi uw account
+ title: Account voltooien
heading: Account aanmaken
- description: Bevestig uw gegevens om het aanmaken van uw account met uw %{provider} identiteit te voltooien.
+ description: Bevestig uw gegevens om het aanmaken van uw account met uw %{provider}-identiteit te voltooien.
email_label: E-mail (van SSO-provider)
first_name_label: Voornaam
first_name_placeholder: Voer uw voornaam in
diff --git a/config/locales/views/oidc_accounts/pt-BR.yml b/config/locales/views/oidc_accounts/pt-BR.yml
new file mode 100644
index 000000000..791f8a1e7
--- /dev/null
+++ b/config/locales/views/oidc_accounts/pt-BR.yml
@@ -0,0 +1,33 @@
+---
+pt-BR:
+ oidc_accounts:
+ link:
+ title_link: Vincular conta OIDC
+ title_create: Criar conta
+ verify_heading: Verificar sua identidade
+ verify_description_html: "Para vincular sua conta %{provider}%{email_suffix}, verifique sua identidade digitando sua senha."
+ email_suffix_html: " (
%{email})"
+ email_label: E-mail
+ email_placeholder: Digite seu e-mail
+ password_label: Senha
+ password_placeholder: Digite sua senha
+ verify_hint: Isso garante que apenas você possa vincular contas externas ao seu perfil.
+ submit_link: Vincular conta
+ create_heading: Criar nova conta
+ create_description_html: "Nenhuma conta encontrada com o e-mail
%{email}. Clique abaixo para criar uma nova conta usando sua identidade %{provider}."
+ info_email: "E-mail:"
+ info_name: "Nome:"
+ submit_create: Criar conta
+ account_creation_disabled: A criação de contas via login único está desativada. Entre em contato com um administrador.
+ cancel: Cancelar
+ new_user:
+ title: Completar sua conta
+ heading: Criar sua conta
+ description: Confirme seus dados para concluir a criação da conta com sua identidade %{provider}.
+ email_label: E-mail (do provedor SSO)
+ first_name_label: Nome
+ first_name_placeholder: Digite seu nome
+ last_name_label: Sobrenome
+ last_name_placeholder: Digite seu sobrenome
+ submit: Criar conta
+ cancel: Cancelar
\ No newline at end of file
diff --git a/config/locales/views/oidc_accounts/ro.yml b/config/locales/views/oidc_accounts/ro.yml
new file mode 100644
index 000000000..55cc8fe31
--- /dev/null
+++ b/config/locales/views/oidc_accounts/ro.yml
@@ -0,0 +1,33 @@
+---
+ro:
+ oidc_accounts:
+ link:
+ title_link: Asociază contul OIDC
+ title_create: Creează cont
+ verify_heading: Verifică-ți identitatea
+ verify_description_html: "Pentru a asocia contul tău %{provider}%{email_suffix}, verifică-ți identitatea introducând parola."
+ email_suffix_html: " (
%{email})"
+ email_label: Adresă de e-mail
+ email_placeholder: Introdu adresa de e-mail
+ password_label: Parolă
+ password_placeholder: Introdu parola
+ verify_hint: Aceasta asigură că doar tu poți asocia conturi externe la profilul tău.
+ submit_link: Asociază contul
+ create_heading: Creează cont nou
+ create_description_html: "Nu a fost găsit niciun cont cu adresa de e-mail
%{email}. Apasă mai jos pentru a crea un cont nou cu identitatea ta %{provider}."
+ info_email: "E-mail:"
+ info_name: "Nume:"
+ submit_create: Creează cont
+ account_creation_disabled: Crearea conturilor prin autentificare unică este dezactivată. Contactează un administrator.
+ cancel: Anulează
+ new_user:
+ title: Finalizează contul
+ heading: Creează-ți contul
+ description: Confirmă datele tale pentru a finaliza crearea contului cu identitatea ta %{provider}.
+ email_label: E-mail (de la furnizorul SSO)
+ first_name_label: Prenume
+ first_name_placeholder: Introdu prenumele
+ last_name_label: Nume de familie
+ last_name_placeholder: Introdu numele de familie
+ submit: Creează cont
+ cancel: Anulează
\ No newline at end of file
diff --git a/config/locales/views/oidc_accounts/tr.yml b/config/locales/views/oidc_accounts/tr.yml
new file mode 100644
index 000000000..d7f0d6e28
--- /dev/null
+++ b/config/locales/views/oidc_accounts/tr.yml
@@ -0,0 +1,33 @@
+---
+tr:
+ oidc_accounts:
+ link:
+ title_link: OIDC Hesabını Bağla
+ title_create: Hesap Oluştur
+ verify_heading: Kimliğinizi Doğrulayın
+ verify_description_html: "%{provider} hesabınızı%{email_suffix} bağlamak için şifrenizi girerek kimliğinizi doğrulayın."
+ email_suffix_html: " (
%{email})"
+ email_label: E-posta
+ email_placeholder: E-posta adresinizi girin
+ password_label: Şifre
+ password_placeholder: Şifrenizi girin
+ verify_hint: Bu, yalnızca sizin harici hesapları profilinize bağlayabilmenizi sağlar.
+ submit_link: Hesabı Bağla
+ create_heading: Yeni Hesap Oluştur
+ create_description_html: "
%{email} e-posta adresiyle bir hesap bulunamadı. %{provider} kimliğinizle yeni bir hesap oluşturmak için aşağıya tıklayın."
+ info_email: "E-posta:"
+ info_name: "Ad:"
+ submit_create: Hesap Oluştur
+ account_creation_disabled: Tek oturum açma ile hesap oluşturma devre dışı bırakıldı. Lütfen bir yöneticiyle iletişime geçin.
+ cancel: İptal
+ new_user:
+ title: Hesabınızı Tamamlayın
+ heading: Hesabınızı Oluşturun
+ description: "%{provider} kimliğinizle hesap oluşturmayı tamamlamak için bilgilerinizi onaylayın."
+ email_label: E-posta (SSO sağlayıcısından)
+ first_name_label: Ad
+ first_name_placeholder: Adınızı girin
+ last_name_label: Soyad
+ last_name_placeholder: Soyadınızı girin
+ submit: Hesap Oluştur
+ cancel: İptal
\ No newline at end of file
diff --git a/config/locales/views/oidc_accounts/zh-CN.yml b/config/locales/views/oidc_accounts/zh-CN.yml
new file mode 100644
index 000000000..06668b929
--- /dev/null
+++ b/config/locales/views/oidc_accounts/zh-CN.yml
@@ -0,0 +1,33 @@
+---
+zh-CN:
+ oidc_accounts:
+ link:
+ title_link: 关联 OIDC 账户
+ title_create: 创建账户
+ verify_heading: 验证您的身份
+ verify_description_html: "要关联您的 %{provider} 账户%{email_suffix},请输入密码验证您的身份。"
+ email_suffix_html: "(
%{email})"
+ email_label: 电子邮箱
+ email_placeholder: 请输入您的电子邮箱
+ password_label: 密码
+ password_placeholder: 请输入您的密码
+ verify_hint: 这可确保只有您本人能够将外部账户关联到您的个人资料。
+ submit_link: 关联账户
+ create_heading: 创建新账户
+ create_description_html: "未找到使用电子邮箱
%{email} 的账户。点击下方使用您的 %{provider} 身份创建新账户。"
+ info_email: 电子邮箱:
+ info_name: 姓名:
+ submit_create: 创建账户
+ account_creation_disabled: 通过单点登录创建账户已禁用。请联系管理员。
+ cancel: 取消
+ new_user:
+ title: 完善您的账户
+ heading: 创建您的账户
+ description: 请确认您的信息以完成使用 %{provider} 身份创建账户。
+ email_label: 电子邮箱(来自 SSO 提供商)
+ first_name_label: 名
+ first_name_placeholder: 请输入您的名
+ last_name_label: 姓
+ last_name_placeholder: 请输入您的姓
+ submit: 创建账户
+ cancel: 取消
\ No newline at end of file
diff --git a/config/locales/views/oidc_accounts/zh-TW.yml b/config/locales/views/oidc_accounts/zh-TW.yml
index 5a26ed67e..c643168fb 100644
--- a/config/locales/views/oidc_accounts/zh-TW.yml
+++ b/config/locales/views/oidc_accounts/zh-TW.yml
@@ -2,4 +2,32 @@
zh-TW:
oidc_accounts:
link:
- account_creation_disabled: 透過單一登入建立新帳戶的功能已被禁用。請聯絡管理員為您建立帳戶。
+ title_link: 連結 OIDC 帳戶
+ title_create: 建立帳戶
+ verify_heading: 驗證您的身分
+ verify_description_html: "若要連結您的 %{provider} 帳戶%{email_suffix},請輸入密碼驗證您的身分。"
+ email_suffix_html: "(
%{email})"
+ email_label: 電子郵件
+ email_placeholder: 請輸入您的電子郵件
+ password_label: 密碼
+ password_placeholder: 請輸入您的密碼
+ verify_hint: 這可確保只有您本人能夠將外部帳戶連結到您的個人檔案。
+ submit_link: 連結帳戶
+ create_heading: 建立新帳戶
+ create_description_html: "找不到使用電子郵件
%{email} 的帳戶。點擊下方使用您的 %{provider} 身分建立新帳戶。"
+ info_email: 電子郵件:
+ info_name: 姓名:
+ submit_create: 建立帳戶
+ account_creation_disabled: 透過單一登入建立帳戶已停用。請聯絡管理員。
+ cancel: 取消
+ new_user:
+ title: 完成您的帳戶
+ heading: 建立您的帳戶
+ description: 請確認您的資訊以完成使用 %{provider} 身分建立帳戶。
+ email_label: 電子郵件(來自 SSO 提供者)
+ first_name_label: 名
+ first_name_placeholder: 請輸入您的名
+ last_name_label: 姓
+ last_name_placeholder: 請輸入您的姓
+ submit: 建立帳戶
+ cancel: 取消
\ No newline at end of file
diff --git a/config/locales/views/onboardings/ca.yml b/config/locales/views/onboardings/ca.yml
index 9e2cdf146..9036a1efe 100644
--- a/config/locales/views/onboardings/ca.yml
+++ b/config/locales/views/onboardings/ca.yml
@@ -2,27 +2,60 @@
ca:
onboardings:
header:
- sign_out: Tanca la sessió
+ sign_out: Tancar sessió
+ setup: Configuració
+ preferences: Preferències
+ goals: Objectius
+ start: Inici
+ logout:
+ sign_out: Tancar sessió
+ show:
+ title: Configurem el teu compte
+ subtitle: Primer de tot, completem el teu perfil.
+ first_name: Nom
+ first_name_placeholder: Nom
+ last_name: Cognom
+ last_name_placeholder: Cognom
+ household_name: Nom de la llar
+ household_name_placeholder: Nom de la llar
+ country: País
+ submit: Continuar
preferences:
+ title: Configura les teves preferències
+ subtitle: Configurem les teves preferències.
+ example: Compte d'exemple
+ preview: Previsualitza com es mostren les dades segons les preferències.
+ color_theme: Tema de colors
+ theme_system: Sistema
+ theme_light: Clar
+ theme_dark: Fosc
+ locale: Idioma
currency: Moneda
date_format: Format de data
- example: Compte d'exemple
- locale: Idioma
- preview: Previsualitza com es mostren les dades segons les preferències.
- submit: Completa
- subtitle: Configurem les teves preferències.
- title: Configura les teves preferències
- profile:
- country: País
- first_name: Nom
- household_name: Nom de la llar
- last_name: Cognom
- profile_image: Imatge de perfil
- submit: Continua
- subtitle: Completem el teu perfil.
- title: Configurem el més bàsic
- show:
- message: Estem molt contents que siguis aquí. Al següent pas et farem unes preguntes
- per completar el teu perfil i deixar-ho tot a punt.
- setup: Configura el compte
- title: Benvingut/da a %{product_name}
+ submit: Completar
+ goals:
+ title: Què t'ha portat aquí?
+ subtitle: Selecciona un o més objectius que tens amb %{product_name} com a eina de finances personals.
+ unified_accounts: Veure tots els meus comptes en un sol lloc
+ cashflow: Entendre el flux de caixa i les despeses
+ budgeting: Gestionar plans financers i pressupostos
+ partner: Gestionar finances amb la parella
+ investments: Seguir les inversions
+ ai_insights: Deixar que la IA m'ajudi a entendre les meves finances
+ optimization: Analitzar i optimitzar comptes
+ reduce_stress: Reduir l'estrès financer o l'ansietat
+ submit: Següent
+ trial:
+ title: Prova Sure durant 45 dies
+ data_deletion: Les dades s'eliminaran després
+ description_html: A partir d'avui pots provar el producte a fons.
Si t'agrada, allotja'l tu mateix o contribueix per continuar usant-lo aquí.
+ try_button: Provar Sure durant 45 dies
+ continue_trial: Continuar la prova
+ upgrade: Actualitzar
+ how_it_works: Com funciona
+ today: Avui
+ today_description: Tindràs accés gratuït a Sure durant 45 dies al nostre AWS.
+ in_40_days: En 40 dies (%{date})
+ in_40_days_description: Et notificarem per recordar-te d'exportar les teves dades.
+ in_45_days: En 45 dies (%{date})
+ in_45_days_description: Eliminarem les teves dades — contribueix per continuar usant Sure aquí!
\ No newline at end of file
diff --git a/config/locales/views/onboardings/de.yml b/config/locales/views/onboardings/de.yml
index 79c46bcee..845e9a3fb 100644
--- a/config/locales/views/onboardings/de.yml
+++ b/config/locales/views/onboardings/de.yml
@@ -3,25 +3,59 @@ de:
onboardings:
header:
sign_out: Abmelden
+ setup: Setup
+ preferences: Einstellungen
+ goals: Ziele
+ start: Start
+ logout:
+ sign_out: Abmelden
+ show:
+ title: Lass uns dein Konto einrichten
+ subtitle: Zuerst vervollständigen wir dein Profil.
+ first_name: Vorname
+ first_name_placeholder: Vorname
+ last_name: Nachname
+ last_name_placeholder: Nachname
+ household_name: Haushaltsname
+ household_name_placeholder: Haushaltsname
+ country: Land
+ submit: Weiter
preferences:
+ title: Einstellungen konfigurieren
+ subtitle: Lass uns deine Einstellungen konfigurieren.
+ example: Beispielkonto
+ preview: Vorschau wie deine Daten basierend auf den Einstellungen angezeigt werden.
+ color_theme: Farbschema
+ theme_system: System
+ theme_light: Hell
+ theme_dark: Dunkel
+ locale: Sprache
currency: Währung
date_format: Datumsformat
- example: Beispielkonto
- locale: Sprache
- preview: Vorschau wie deine Daten basierend auf den Einstellungen angezeigt werden
submit: Abschließen
- subtitle: Lass uns deine Einstellungen konfigurieren
- title: Einstellungen konfigurieren
- profile:
- country: Land
- first_name: Vorname
- household_name: Haushaltsname
- last_name: Nachname
- profile_image: Profilbild
+ goals:
+ title: Was sind deine Ziele?
+ subtitle: Wähle ein oder mehrere Ziele aus, die du mit %{product_name} als dein persönliches Finanztool erreichen möchtest.
+ unified_accounts: Alle meine Konten an einem Ort sehen
+ cashflow: Cashflow und Ausgaben verstehen
+ budgeting: Finanzpläne und Budgets verwalten
+ partner: Finanzen gemeinsam mit Partner verwalten
+ investments: Investments verfolgen
+ ai_insights: KI nutzen um Einblicke zu erhalten
+ optimization: Konten analysieren und optimieren
+ reduce_stress: Finanziellen Stress reduzieren
submit: Weiter
- subtitle: Lass uns dein Profil vervollständigen
- title: Lass uns die Grundlagen einrichten
- show:
- message: Wir freuen uns sehr dass du hier bist Im nächsten Schritt stellen wir dir ein paar Fragen um dein Profil zu vervollständigen und alles für dich einzurichten
- setup: Konto einrichten
- title: Willkommen bei %{product_name}
+ trial:
+ title: Sure 45 Tage kostenlos testen
+ data_deletion: Daten werden danach gelöscht
+ description_html: Ab heute kannst du das Produkt ausgiebig testen.
Wenn es dir gefällt, hoste es selbst oder unterstütze uns, um es hier weiter zu nutzen.
+ try_button: Sure 45 Tage testen
+ continue_trial: Testversion fortsetzen
+ upgrade: Upgrade
+ how_it_works: So funktioniert es
+ today: Heute
+ today_description: Du erhältst 45 Tage kostenlos Zugang zu Sure auf unserer AWS.
+ in_40_days: In 40 Tagen (%{date})
+ in_40_days_description: Wir erinnern dich daran, deine Daten zu exportieren.
+ in_45_days: In 45 Tagen (%{date})
+ in_45_days_description: Wir löschen deine Daten — unterstütze uns, um Sure hier weiter zu nutzen!
\ No newline at end of file
diff --git a/config/locales/views/onboardings/en.yml b/config/locales/views/onboardings/en.yml
index 498aab469..296c0b80c 100644
--- a/config/locales/views/onboardings/en.yml
+++ b/config/locales/views/onboardings/en.yml
@@ -2,27 +2,60 @@
en:
onboardings:
header:
- sign_out: Log out
+ sign_out: Sign out
+ setup: Setup
+ preferences: Preferences
+ goals: Goals
+ start: Start
+ logout:
+ sign_out: Sign out
+ show:
+ title: Let's set up your account
+ subtitle: First things first, let's get your profile set up.
+ first_name: First name
+ first_name_placeholder: First name
+ last_name: Last name
+ last_name_placeholder: Last name
+ household_name: Household name
+ household_name_placeholder: Household name
+ country: Country
+ submit: Continue
preferences:
+ title: Configure your preferences
+ subtitle: Let's configure your preferences.
+ example: Example account
+ preview: Preview how data displays based on preferences.
+ color_theme: Color theme
+ theme_system: System
+ theme_light: Light
+ theme_dark: Dark
+ locale: Language
currency: Currency
date_format: Date format
- example: Example account
- locale: Language
- preview: Preview how data displays based on preferences.
submit: Complete
- subtitle: Let's configure your preferences.
- title: Configure your preferences
- profile:
- country: Country
- first_name: First Name
- household_name: Household Name
- last_name: Last Name
- profile_image: Profile Image
- submit: Continue
- subtitle: Let's complete your profile.
- title: Let's set up the basics
- show:
- message: We’re really excited you’re here. In the next step we’ll ask you a
- few questions to complete your profile and then get you all set up.
- setup: Set up account
- title: Meet %{product_name}
+ goals:
+ title: What brings you here?
+ subtitle: Select one or more goals that you have with using %{product_name} as your personal finance tool.
+ unified_accounts: See all my accounts in one place
+ cashflow: Understand cashflow and expenses
+ budgeting: Manage financial plans and budgeting
+ partner: Manage finances with a partner
+ investments: Track investments
+ ai_insights: Let AI help me understand my finances
+ optimization: Analyze and optimize accounts
+ reduce_stress: Reduce financial stress or anxiety
+ submit: Next
+ trial:
+ title: Try Sure for 45 days
+ data_deletion: Data will be deleted then
+ description_html: Starting today you can give the product a good look.
If you like it, self-host or contribute to continue using it here.
+ try_button: Try Sure for 45 days
+ continue_trial: Continue trial
+ upgrade: Upgrade
+ how_it_works: How things work here
+ today: Today
+ today_description: You'll get free access to Sure for 45 days on our AWS.
+ in_40_days: In 40 days (%{date})
+ in_40_days_description: We'll notify you to remind you to export your data.
+ in_45_days: In 45 days (%{date})
+ in_45_days_description: We delete your data — contribute to continue using Sure here!
\ No newline at end of file
diff --git a/config/locales/views/onboardings/es.yml b/config/locales/views/onboardings/es.yml
index 7c8265ac6..1fc48268a 100644
--- a/config/locales/views/onboardings/es.yml
+++ b/config/locales/views/onboardings/es.yml
@@ -3,26 +3,59 @@ es:
onboardings:
header:
sign_out: Cerrar sesión
+ setup: Configuración
+ preferences: Preferencias
+ goals: Objetivos
+ start: Inicio
+ logout:
+ sign_out: Cerrar sesión
+ show:
+ title: Configuremos tu cuenta
+ subtitle: Primero, completemos tu perfil.
+ first_name: Nombre
+ first_name_placeholder: Nombre
+ last_name: Apellido
+ last_name_placeholder: Apellido
+ household_name: Nombre del hogar
+ household_name_placeholder: Nombre del hogar
+ country: País
+ submit: Continuar
preferences:
+ title: Configura tus preferencias
+ subtitle: Configuremos tus preferencias.
+ example: Cuenta de ejemplo
+ preview: Vista previa de cómo se muestran los datos según las preferencias.
+ color_theme: Tema de color
+ theme_system: Sistema
+ theme_light: Claro
+ theme_dark: Oscuro
+ locale: Idioma
currency: Moneda
date_format: Formato de fecha
- example: Cuenta de ejemplo
- locale: Idioma
- preview: Previsualiza cómo se muestran los datos según tus preferencias.
submit: Completar
- subtitle: Vamos a configurar tus preferencias.
- title: Configura tus preferencias
- profile:
- country: País
- first_name: Nombre
- household_name: Nombre del grupo familiar
- last_name: Apellidos
- profile_image: Imagen de perfil
- submit: Continuar
- subtitle: Vamos a completar tu perfil.
- title: Vamos a configurar lo básico
- show:
- message: Estamos muy emocionados de que estés aquí. En el siguiente paso te
- haremos unas preguntas para completar tu perfil y luego configuraremos todo para ti.
- setup: Configurar cuenta
- title: Bienvenido a %{product_name}
+ goals:
+ title: ¿Qué te trae por aquí?
+ subtitle: Selecciona uno o más objetivos que tienes con %{product_name} como tu herramienta de finanzas personales.
+ unified_accounts: Ver todas mis cuentas en un solo lugar
+ cashflow: Entender el flujo de caja y los gastos
+ budgeting: Gestionar planes financieros y presupuestos
+ partner: Gestionar finanzas con mi pareja
+ investments: Seguir las inversiones
+ ai_insights: Dejar que la IA me ayude a entender mis finanzas
+ optimization: Analizar y optimizar cuentas
+ reduce_stress: Reducir el estrés financiero o la ansiedad
+ submit: Siguiente
+ trial:
+ title: Prueba Sure durante 45 días
+ data_deletion: Los datos se eliminarán después
+ description_html: A partir de hoy puedes probar el producto a fondo.
Si te gusta, alójalo tú mismo o contribuye para seguir usándolo aquí.
+ try_button: Probar Sure durante 45 días
+ continue_trial: Continuar prueba
+ upgrade: Actualizar
+ how_it_works: Cómo funciona
+ today: Hoy
+ today_description: Tendrás acceso gratuito a Sure durante 45 días en nuestro AWS.
+ in_40_days: En 40 días (%{date})
+ in_40_days_description: Te notificaremos para recordarte exportar tus datos.
+ in_45_days: En 45 días (%{date})
+ in_45_days_description: Eliminamos tus datos — ¡contribuye para seguir usando Sure aquí!
\ No newline at end of file
diff --git a/config/locales/views/onboardings/fr.yml b/config/locales/views/onboardings/fr.yml
index 64c4f3ead..72598204a 100644
--- a/config/locales/views/onboardings/fr.yml
+++ b/config/locales/views/onboardings/fr.yml
@@ -2,26 +2,60 @@
fr:
onboardings:
header:
- sign_out: Déconnexion
- preferences:
- currency: Monnaie
- date_format: Format de date
- example: Compte d'exemple
- locale: Langue
- preview: Prévisualiser la façon dont les données s'affichent en fonction des préférences.
- submit: Terminer
- subtitle: Configurons vos préférences.
- title: Configurez vos préférences
- profile:
- country: Pays
- first_name: Prénom
- household_name: Nom du foyer (si applicable)
- last_name: Nom de famille
- profile_image: Photo de profil
- submit: Continuer
- subtitle: Complétons votre profil.
- title: Configurons les bases
+ sign_out: Se déconnecter
+ setup: Configuration
+ preferences: Préférences
+ goals: Objectifs
+ start: Démarrer
+ logout:
+ sign_out: Se déconnecter
show:
- message: Nous sommes vraiment excités que vous soyez ici. Dans la prochaine étape, nous allons vous poser quelques questions pour compléter votre profil et ensuite configurer votre compte.
- setup: Configurer le compte
- title: Rencontrez %{product_name}
+ title: Configurons votre compte
+ subtitle: Commençons par compléter votre profil.
+ first_name: Prénom
+ first_name_placeholder: Prénom
+ last_name: Nom de famille
+ last_name_placeholder: Nom de famille
+ household_name: Nom du foyer
+ household_name_placeholder: Nom du foyer
+ country: Pays
+ submit: Continuer
+ preferences:
+ title: Configurez vos préférences
+ subtitle: Configurons vos préférences.
+ example: Compte exemple
+ preview: Aperçu de l'affichage des données selon vos préférences.
+ color_theme: Thème de couleur
+ theme_system: Système
+ theme_light: Clair
+ theme_dark: Sombre
+ locale: Langue
+ currency: Devise
+ date_format: Format de date
+ submit: Terminer
+ goals:
+ title: Qu'est-ce qui vous amène ici ?
+ subtitle: Sélectionnez un ou plusieurs objectifs que vous souhaitez atteindre avec %{product_name} comme outil de finances personnelles.
+ unified_accounts: Voir tous mes comptes en un seul endroit
+ cashflow: Comprendre les flux de trésorerie et les dépenses
+ budgeting: Gérer les plans financiers et les budgets
+ partner: Gérer les finances avec un partenaire
+ investments: Suivre les investissements
+ ai_insights: Laisser l'IA m'aider à comprendre mes finances
+ optimization: Analyser et optimiser les comptes
+ reduce_stress: Réduire le stress financier ou l'anxiété
+ submit: Suivant
+ trial:
+ title: Essayez Sure pendant 45 jours
+ data_deletion: Les données seront supprimées ensuite
+ description_html: À partir d'aujourd'hui, vous pouvez tester le produit en profondeur.
Si vous l'aimez, hébergez-le vous-même ou contribuez pour continuer à l'utiliser ici.
+ try_button: Essayer Sure pendant 45 jours
+ continue_trial: Continuer l'essai
+ upgrade: Mettre à niveau
+ how_it_works: Comment ça fonctionne
+ today: Aujourd'hui
+ today_description: Vous aurez un accès gratuit à Sure pendant 45 jours sur notre AWS.
+ in_40_days: Dans 40 jours (%{date})
+ in_40_days_description: Nous vous notifierons pour vous rappeler d'exporter vos données.
+ in_45_days: Dans 45 jours (%{date})
+ in_45_days_description: Nous supprimons vos données — contribuez pour continuer à utiliser Sure ici !
\ No newline at end of file
diff --git a/config/locales/views/onboardings/nb.yml b/config/locales/views/onboardings/nb.yml
index 1d0223d61..bac186108 100644
--- a/config/locales/views/onboardings/nb.yml
+++ b/config/locales/views/onboardings/nb.yml
@@ -3,26 +3,59 @@ nb:
onboardings:
header:
sign_out: Logg ut
+ setup: Oppsett
+ preferences: Innstillinger
+ goals: Mål
+ start: Start
+ logout:
+ sign_out: Logg ut
+ show:
+ title: La oss sette opp kontoen din
+ subtitle: Først, la oss fullføre profilen din.
+ first_name: Fornavn
+ first_name_placeholder: Fornavn
+ last_name: Etternavn
+ last_name_placeholder: Etternavn
+ household_name: Husholdningsnavn
+ household_name_placeholder: Husholdningsnavn
+ country: Land
+ submit: Fortsett
preferences:
+ title: Konfigurer innstillingene dine
+ subtitle: La oss konfigurere innstillingene dine.
+ example: Eksempelkonto
+ preview: Forhåndsvisning av hvordan data vises basert på innstillinger.
+ color_theme: Fargetema
+ theme_system: System
+ theme_light: Lys
+ theme_dark: Mørk
+ locale: Språk
currency: Valuta
date_format: Datoformat
- example: Eksempelkonto
- locale: Språk
- preview: Forhåndsvis hvordan data vises basert på preferanser.
submit: Fullfør
- subtitle: La oss konfigurere preferansene dine.
- title: Konfigurer preferansene dine
- profile:
- country: Land
- first_name: Fornavn
- household_name: Husholdningsnavn
- last_name: Etternavn
- profile_image: Profilbilde
- submit: Fortsett
- subtitle: La oss fullføre profilen din.
- title: La oss sette opp det grunnleggende
- show:
- message: Vi er veldig glade for at du er her. I neste trinn vil vi stille deg noen
- spørsmål for å fullføre profilen din og deretter få deg i gang.
- setup: Sett opp konto
- title: Møt %{product_name}
\ No newline at end of file
+ goals:
+ title: Hva bringer deg hit?
+ subtitle: Velg ett eller flere mål du har med %{product_name} som ditt personlige økonomverktøy.
+ unified_accounts: Se alle kontoene mine på ett sted
+ cashflow: Forstå kontantstrøm og utgifter
+ budgeting: Administrere økonomiplaner og budsjetter
+ partner: Administrere økonomi med en partner
+ investments: Følge investeringer
+ ai_insights: La AI hjelpe meg å forstå økonomien min
+ optimization: Analysere og optimalisere kontoer
+ reduce_stress: Redusere økonomisk stress eller angst
+ submit: Neste
+ trial:
+ title: Prøv Sure i 45 dager
+ data_deletion: Data slettes deretter
+ description_html: Fra i dag kan du teste produktet grundig.
Hvis du liker det, kan du hoste det selv eller bidra for å fortsette å bruke det her.
+ try_button: Prøv Sure i 45 dager
+ continue_trial: Fortsett prøveperioden
+ upgrade: Oppgrader
+ how_it_works: Slik fungerer det
+ today: I dag
+ today_description: Du får gratis tilgang til Sure i 45 dager på vår AWS.
+ in_40_days: Om 40 dager (%{date})
+ in_40_days_description: Vi varsler deg for å minne deg på å eksportere dataene dine.
+ in_45_days: Om 45 dager (%{date})
+ in_45_days_description: Vi sletter dataene dine — bidra for å fortsette å bruke Sure her!
\ No newline at end of file
diff --git a/config/locales/views/onboardings/nl.yml b/config/locales/views/onboardings/nl.yml
index ebe8727b7..8ee999f33 100644
--- a/config/locales/views/onboardings/nl.yml
+++ b/config/locales/views/onboardings/nl.yml
@@ -3,25 +3,59 @@ nl:
onboardings:
header:
sign_out: Uitloggen
+ setup: Instellen
+ preferences: Voorkeuren
+ goals: Doelen
+ start: Start
+ logout:
+ sign_out: Uitloggen
+ show:
+ title: Laten we je account instellen
+ subtitle: Laten we eerst je profiel voltooien.
+ first_name: Voornaam
+ first_name_placeholder: Voornaam
+ last_name: Achternaam
+ last_name_placeholder: Achternaam
+ household_name: Huishoudnaam
+ household_name_placeholder: Huishoudnaam
+ country: Land
+ submit: Doorgaan
preferences:
+ title: Configureer je voorkeuren
+ subtitle: Laten we je voorkeuren configureren.
+ example: Voorbeeldaccount
+ preview: Voorbeeld van hoe gegevens worden weergegeven op basis van voorkeuren.
+ color_theme: Kleurthema
+ theme_system: Systeem
+ theme_light: Licht
+ theme_dark: Donker
+ locale: Taal
currency: Valuta
date_format: Datumformaat
- example: Voorbeeldaccount
- locale: Taal
- preview: Voorbeeld van hoe gegevens worden weergegeven op basis van voorkeuren.
submit: Voltooien
- subtitle: Laten we uw voorkeuren configureren.
- title: Configureer uw voorkeuren
- profile:
- country: Land
- first_name: Voornaam
- household_name: Naam van huishouden
- last_name: Achternaam
- profile_image: Profielfoto
- submit: Doorgaan
- subtitle: Laten we uw profiel voltooien.
- title: Laten we de basis instellen
- show:
- message: We zijn erg blij dat u hier bent. In de volgende stap stellen we u een paar vragen om uw profiel te voltooien en u helemaal klaar te maken.
- setup: Account instellen
- title: Maak kennis met %{product_name}
+ goals:
+ title: Wat brengt je hier?
+ subtitle: Selecteer een of meer doelen die je hebt met %{product_name} als je persoonlijke financiële tool.
+ unified_accounts: Al mijn rekeningen op één plek zien
+ cashflow: Cashflow en uitgaven begrijpen
+ budgeting: Financiële plannen en budgetten beheren
+ partner: Financiën samen met een partner beheren
+ investments: Investeringen volgen
+ ai_insights: AI laten helpen om mijn financiën te begrijpen
+ optimization: Rekeningen analyseren en optimaliseren
+ reduce_stress: Financiële stress of angst verminderen
+ submit: Volgende
+ trial:
+ title: Probeer Sure 45 dagen
+ data_deletion: Gegevens worden daarna verwijderd
+ description_html: Vanaf vandaag kun je het product uitgebreid testen.
Als je het leuk vindt, host het zelf of draag bij om het hier te blijven gebruiken.
+ try_button: Probeer Sure 45 dagen
+ continue_trial: Proefperiode voortzetten
+ upgrade: Upgraden
+ how_it_works: Hoe het werkt
+ today: Vandaag
+ today_description: Je krijgt 45 dagen gratis toegang tot Sure op onze AWS.
+ in_40_days: Over 40 dagen (%{date})
+ in_40_days_description: We sturen je een herinnering om je gegevens te exporteren.
+ in_45_days: Over 45 dagen (%{date})
+ in_45_days_description: We verwijderen je gegevens — draag bij om Sure hier te blijven gebruiken!
\ No newline at end of file
diff --git a/config/locales/views/onboardings/pt-BR.yml b/config/locales/views/onboardings/pt-BR.yml
index b69ad4bc7..8b25f6a18 100644
--- a/config/locales/views/onboardings/pt-BR.yml
+++ b/config/locales/views/onboardings/pt-BR.yml
@@ -3,26 +3,59 @@ pt-BR:
onboardings:
header:
sign_out: Sair
+ setup: Configuração
+ preferences: Preferências
+ goals: Objetivos
+ start: Iniciar
+ logout:
+ sign_out: Sair
+ show:
+ title: Vamos configurar sua conta
+ subtitle: Primeiro, vamos completar seu perfil.
+ first_name: Nome
+ first_name_placeholder: Nome
+ last_name: Sobrenome
+ last_name_placeholder: Sobrenome
+ household_name: Nome da família
+ household_name_placeholder: Nome da família
+ country: País
+ submit: Continuar
preferences:
+ title: Configure suas preferências
+ subtitle: Vamos configurar suas preferências.
+ example: Conta de exemplo
+ preview: Visualização de como os dados são exibidos com base nas preferências.
+ color_theme: Tema de cores
+ theme_system: Sistema
+ theme_light: Claro
+ theme_dark: Escuro
+ locale: Idioma
currency: Moeda
date_format: Formato de data
- example: Conta exemplo
- locale: Idioma
- preview: Visualize como os dados são exibidos com base nas preferências.
submit: Concluir
- subtitle: Vamos configurar suas preferências.
- title: Configure suas preferências
- profile:
- country: País
- first_name: Primeiro Nome
- household_name: Nome da Família
- last_name: Sobrenome
- profile_image: Imagem do Perfil
- submit: Continuar
- subtitle: Vamos completar seu perfil.
- title: Vamos configurar o básico
- show:
- message: Estamos muito empolgados por você estar aqui. No próximo passo, faremos
- algumas perguntas para completar seu perfil e então deixar tudo configurado.
- setup: Configurar conta
- title: Conheça o %{product_name}
+ goals:
+ title: O que te traz aqui?
+ subtitle: Selecione um ou mais objetivos que você tem com o %{product_name} como sua ferramenta de finanças pessoais.
+ unified_accounts: Ver todas as minhas contas em um só lugar
+ cashflow: Entender fluxo de caixa e despesas
+ budgeting: Gerenciar planos financeiros e orçamentos
+ partner: Gerenciar finanças com um parceiro
+ investments: Acompanhar investimentos
+ ai_insights: Deixar a IA me ajudar a entender minhas finanças
+ optimization: Analisar e otimizar contas
+ reduce_stress: Reduzir estresse financeiro ou ansiedade
+ submit: Próximo
+ trial:
+ title: Experimente o Sure por 45 dias
+ data_deletion: Os dados serão excluídos depois
+ description_html: A partir de hoje você pode testar o produto a fundo.
Se gostar, hospede você mesmo ou contribua para continuar usando aqui.
+ try_button: Experimentar Sure por 45 dias
+ continue_trial: Continuar teste
+ upgrade: Atualizar
+ how_it_works: Como funciona
+ today: Hoje
+ today_description: Você terá acesso gratuito ao Sure por 45 dias em nosso AWS.
+ in_40_days: Em 40 dias (%{date})
+ in_40_days_description: Notificaremos você para lembrar de exportar seus dados.
+ in_45_days: Em 45 dias (%{date})
+ in_45_days_description: Excluímos seus dados — contribua para continuar usando o Sure aqui!
\ No newline at end of file
diff --git a/config/locales/views/onboardings/ro.yml b/config/locales/views/onboardings/ro.yml
index 4fd5e5dca..d79984012 100644
--- a/config/locales/views/onboardings/ro.yml
+++ b/config/locales/views/onboardings/ro.yml
@@ -3,25 +3,59 @@ ro:
onboardings:
header:
sign_out: Deconectare
+ setup: Configurare
+ preferences: Preferințe
+ goals: Obiective
+ start: Start
+ logout:
+ sign_out: Deconectare
+ show:
+ title: Să-ți configurăm contul
+ subtitle: Mai întâi, să-ți completăm profilul.
+ first_name: Prenume
+ first_name_placeholder: Prenume
+ last_name: Nume de familie
+ last_name_placeholder: Nume de familie
+ household_name: Numele gospodăriei
+ household_name_placeholder: Numele gospodăriei
+ country: Țară
+ submit: Continuă
preferences:
+ title: Configurează preferințele
+ subtitle: Să-ți configurăm preferințele.
+ example: Cont exemplu
+ preview: Previzualizare a modului în care sunt afișate datele pe baza preferințelor.
+ color_theme: Tema de culoare
+ theme_system: Sistem
+ theme_light: Deschis
+ theme_dark: Întunecat
+ locale: Limbă
currency: Monedă
date_format: Format dată
- example: Cont exemplu
- locale: Limbă
- preview: Previzualizează cum sunt afișate datele în funcție de preferințe.
- submit: Finalizează
- subtitle: Să configurăm preferințele tale.
- title: Configurează-ți preferințele
- profile:
- country: Țară
- first_name: Prenume
- household_name: Numele gospodăriei
- last_name: Nume de familie
- profile_image: Imagine de profil
- submit: Continuă
- subtitle: Să-ți completăm profilul.
- title: Să configurăm elementele de bază
- show:
- message: Suntem încântați că ești aici. În pasul următor îți vom pune câteva întrebări pentru a-ți completa profilul și apoi te vom pregăti.
- setup: Configurează contul
- title: Fă cunoștință cu %{product_name}
+ submit: Finalizare
+ goals:
+ title: Ce te aduce aici?
+ subtitle: Selectează unul sau mai multe obiective pe care le ai cu %{product_name} ca instrument de finanțe personale.
+ unified_accounts: Să-mi văd toate conturile într-un singur loc
+ cashflow: Să înțeleg fluxul de numerar și cheltuielile
+ budgeting: Să gestionez planuri financiare și bugete
+ partner: Să gestionez finanțele împreună cu partenerul
+ investments: Să urmăresc investițiile
+ ai_insights: Să las AI să mă ajute să-mi înțeleg finanțele
+ optimization: Să analizez și să optimizez conturile
+ reduce_stress: Să reduc stresul financiar sau anxietatea
+ submit: Următorul
+ trial:
+ title: Încearcă Sure timp de 45 de zile
+ data_deletion: Datele vor fi șterse după aceea
+ description_html: Începând de azi poți testa produsul în profunzime.
Dacă îți place, găzduiește-l singur sau contribuie pentru a continua să-l folosești aici.
+ try_button: Încearcă Sure timp de 45 de zile
+ continue_trial: Continuă perioada de probă
+ upgrade: Actualizează
+ how_it_works: Cum funcționează
+ today: Astăzi
+ today_description: Vei avea acces gratuit la Sure timp de 45 de zile pe AWS-ul nostru.
+ in_40_days: În 40 de zile (%{date})
+ in_40_days_description: Te vom notifica să-ți amintim să-ți exporți datele.
+ in_45_days: În 45 de zile (%{date})
+ in_45_days_description: Îți ștergem datele — contribuie pentru a continua să folosești Sure aici!
\ No newline at end of file
diff --git a/config/locales/views/onboardings/tr.yml b/config/locales/views/onboardings/tr.yml
index 8bf76abbb..351fedc9a 100644
--- a/config/locales/views/onboardings/tr.yml
+++ b/config/locales/views/onboardings/tr.yml
@@ -3,25 +3,59 @@ tr:
onboardings:
header:
sign_out: Çıkış yap
+ setup: Kurulum
+ preferences: Tercihler
+ goals: Hedefler
+ start: Başla
+ logout:
+ sign_out: Çıkış yap
+ show:
+ title: Hesabınızı kuralım
+ subtitle: Önce profilinizi tamamlayalım.
+ first_name: Ad
+ first_name_placeholder: Ad
+ last_name: Soyad
+ last_name_placeholder: Soyad
+ household_name: Hane adı
+ household_name_placeholder: Hane adı
+ country: Ülke
+ submit: Devam et
preferences:
+ title: Tercihlerinizi yapılandırın
+ subtitle: Tercihlerinizi yapılandıralım.
+ example: Örnek hesap
+ preview: Tercihlere göre verilerin nasıl görüntüleneceğinin önizlemesi.
+ color_theme: Renk teması
+ theme_system: Sistem
+ theme_light: Açık
+ theme_dark: Koyu
+ locale: Dil
currency: Para birimi
date_format: Tarih formatı
- example: Örnek hesap
- locale: Dil
- preview: Tercihlere göre verilerin nasıl görüneceğini önizleyin.
submit: Tamamla
- subtitle: Tercihlerinizi yapılandıralım.
- title: Tercihlerinizi yapılandırın
- profile:
- country: Ülke
- first_name: Ad
- household_name: Hane Adı
- last_name: Soyad
- profile_image: Profil Resmi
- submit: Devam et
- subtitle: Profilinizi tamamlayalım.
- title: Temel bilgileri ayarlayalım
- show:
- message: Burada olduğunuz için çok heyecanlıyız. Sonraki adımda profilinizi tamamlamak için size birkaç soru soracağız ve ardından her şeyi ayarlayacağız.
- setup: Hesabı ayarla
- title: Maybe ile Tanışın
\ No newline at end of file
+ goals:
+ title: Sizi buraya ne getirdi?
+ subtitle: "%{product_name}'i kişisel finans aracınız olarak kullanmak için bir veya daha fazla hedef seçin."
+ unified_accounts: Tüm hesaplarımı tek bir yerde görmek
+ cashflow: Nakit akışını ve harcamaları anlamak
+ budgeting: Finansal planları ve bütçeleri yönetmek
+ partner: Bir partnerle birlikte finansları yönetmek
+ investments: Yatırımları takip etmek
+ ai_insights: AI'ın finanslarımı anlamama yardım etmesini sağlamak
+ optimization: Hesapları analiz etmek ve optimize etmek
+ reduce_stress: Finansal stresi veya kaygıyı azaltmak
+ submit: Sonraki
+ trial:
+ title: Sure'u 45 gün deneyin
+ data_deletion: Veriler daha sonra silinecek
+ description_html: Bugünden itibaren ürünü detaylı test edebilirsiniz.
Beğenirseniz, kendiniz barındırın veya burada kullanmaya devam etmek için katkıda bulunun.
+ try_button: Sure'u 45 gün dene
+ continue_trial: Denemeye devam et
+ upgrade: Yükselt
+ how_it_works: Nasıl çalışır
+ today: Bugün
+ today_description: AWS'mizde Sure'a 45 gün ücretsiz erişim elde edeceksiniz.
+ in_40_days: 40 gün içinde (%{date})
+ in_40_days_description: Verilerinizi dışa aktarmanızı hatırlatmak için sizi bilgilendireceğiz.
+ in_45_days: 45 gün içinde (%{date})
+ in_45_days_description: Verilerinizi siliyoruz — Sure'u burada kullanmaya devam etmek için katkıda bulunun!
\ No newline at end of file
diff --git a/config/locales/views/onboardings/zh-CN.yml b/config/locales/views/onboardings/zh-CN.yml
index 7ee58a4d4..f2728ba95 100644
--- a/config/locales/views/onboardings/zh-CN.yml
+++ b/config/locales/views/onboardings/zh-CN.yml
@@ -3,25 +3,59 @@ zh-CN:
onboardings:
header:
sign_out: 退出登录
+ setup: 设置
+ preferences: 偏好设置
+ goals: 目标
+ start: 开始
+ logout:
+ sign_out: 退出登录
+ show:
+ title: 让我们设置您的账户
+ subtitle: 首先,让我们完善您的个人资料。
+ first_name: 名
+ first_name_placeholder: 名
+ last_name: 姓
+ last_name_placeholder: 姓
+ household_name: 家庭名称
+ household_name_placeholder: 家庭名称
+ country: 国家
+ submit: 继续
preferences:
+ title: 配置您的偏好设置
+ subtitle: 让我们配置您的偏好设置。
+ example: 示例账户
+ preview: 根据偏好设置预览数据显示方式。
+ color_theme: 颜色主题
+ theme_system: 跟随系统
+ theme_light: 浅色
+ theme_dark: 深色
+ locale: 语言
currency: 货币
date_format: 日期格式
- example: 示例账户
- locale: 语言
- preview: 预览偏好设置下的数据展示效果。
- submit: 完成设置
- subtitle: 现在来配置您的偏好设置。
- title: 配置偏好设置
- profile:
- country: 国家/地区
- first_name: 名字
- household_name: 家庭名称
- last_name: 姓氏
- profile_image: 个人头像
- submit: 继续
- subtitle: 现在来完成您的个人资料。
- title: 基础信息设置
- show:
- message: 很高兴您的加入!接下来我们将引导您完成几个步骤:完善个人资料,然后进行初始设置。
- setup: 开始设置
- title: 欢迎使用 %{product_name}
+ submit: 完成
+ goals:
+ title: 是什么让您来到这里?
+ subtitle: 选择一个或多个您使用 %{product_name} 作为个人财务工具的目标。
+ unified_accounts: 在一个地方查看所有账户
+ cashflow: 了解现金流和支出
+ budgeting: 管理财务计划和预算
+ partner: 与伴侣共同管理财务
+ investments: 跟踪投资
+ ai_insights: 让 AI 帮助我了解我的财务状况
+ optimization: 分析和优化账户
+ reduce_stress: 减轻财务压力或焦虑
+ submit: 下一步
+ trial:
+ title: 免费试用 Sure 45 天
+ data_deletion: 届时数据将被删除
+ description_html: 从今天开始,您可以深入体验产品。
如果您喜欢,可以自行托管或贡献以继续在这里使用。
+ try_button: 试用 Sure 45 天
+ continue_trial: 继续试用
+ upgrade: 升级
+ how_it_works: 运作方式
+ today: 今天
+ today_description: 您将在我们的 AWS 上获得 45 天免费访问 Sure 的权限。
+ in_40_days: 40 天后(%{date})
+ in_40_days_description: 我们会通知您提醒导出数据。
+ in_45_days: 45 天后(%{date})
+ in_45_days_description: 我们将删除您的数据 — 贡献以继续在这里使用 Sure!
\ No newline at end of file
diff --git a/config/locales/views/onboardings/zh-TW.yml b/config/locales/views/onboardings/zh-TW.yml
index 9846cd484..bf09e6294 100644
--- a/config/locales/views/onboardings/zh-TW.yml
+++ b/config/locales/views/onboardings/zh-TW.yml
@@ -3,25 +3,59 @@ zh-TW:
onboardings:
header:
sign_out: 登出
- preferences:
- currency: 幣別
- date_format: 日期格式
- example: 帳戶範例
- locale: 語言
- preview: 預覽根據偏好設定顯示的資料。
- submit: 完成
- subtitle: 讓我們來設定您的偏好設定。
- title: 設定您的偏好設定
- profile:
- country: 國家
- first_name: 名字
- household_name: 家戶名稱
- last_name: 姓氏
- profile_image: 個人頭像
- submit: 繼續
- subtitle: 讓我們完成您的個人資料。
- title: 進行基礎設定
+ setup: 設定
+ preferences: 偏好設定
+ goals: 目標
+ start: 開始
+ logout:
+ sign_out: 登出
show:
- message: 我們很高興您的加入!接下來我們會詢問幾個問題來完善您的個人資料,並完成所有設定。
- setup: 開始設定帳號
- title: 認識 %{product_name}
+ title: 讓我們設定您的帳戶
+ subtitle: 首先,讓我們完善您的個人檔案。
+ first_name: 名
+ first_name_placeholder: 名
+ last_name: 姓
+ last_name_placeholder: 姓
+ household_name: 家庭名稱
+ household_name_placeholder: 家庭名稱
+ country: 國家
+ submit: 繼續
+ preferences:
+ title: 設定您的偏好
+ subtitle: 讓我們設定您的偏好。
+ example: 範例帳戶
+ preview: 根據偏好設定預覽資料顯示方式。
+ color_theme: 顏色主題
+ theme_system: 跟隨系統
+ theme_light: 淺色
+ theme_dark: 深色
+ locale: 語言
+ currency: 貨幣
+ date_format: 日期格式
+ submit: 完成
+ goals:
+ title: 是什麼讓您來到這裡?
+ subtitle: 選擇一個或多個您使用 %{product_name} 作為個人財務工具的目標。
+ unified_accounts: 在一個地方查看所有帳戶
+ cashflow: 了解現金流和支出
+ budgeting: 管理財務計劃和預算
+ partner: 與伴侶共同管理財務
+ investments: 追蹤投資
+ ai_insights: 讓 AI 幫助我了解我的財務狀況
+ optimization: 分析和優化帳戶
+ reduce_stress: 減輕財務壓力或焦慮
+ submit: 下一步
+ trial:
+ title: 免費試用 Sure 45 天
+ data_deletion: 屆時資料將被刪除
+ description_html: 從今天開始,您可以深入體驗產品。
如果您喜歡,可以自行託管或貢獻以繼續在這裡使用。
+ try_button: 試用 Sure 45 天
+ continue_trial: 繼續試用
+ upgrade: 升級
+ how_it_works: 運作方式
+ today: 今天
+ today_description: 您將在我們的 AWS 上獲得 45 天免費存取 Sure 的權限。
+ in_40_days: 40 天後(%{date})
+ in_40_days_description: 我們會通知您提醒匯出資料。
+ in_45_days: 45 天後(%{date})
+ in_45_days_description: 我們將刪除您的資料 — 貢獻以繼續在這裡使用 Sure!
\ No newline at end of file
diff --git a/config/locales/views/registrations/ca.yml b/config/locales/views/registrations/ca.yml
index 1bd8668e9..5e977ef2f 100644
--- a/config/locales/views/registrations/ca.yml
+++ b/config/locales/views/registrations/ca.yml
@@ -24,3 +24,8 @@ ca:
welcome_body: Per començar, has de registrar un compte nou. Després podràs configurar
opcions addicionals dins l'aplicació.
welcome_title: Benvingut/da a Self Hosted %{product_name}!
+ password_requirements:
+ length: Mínim 8 caràcters
+ case: Majúscules i minúscules
+ number: Un número (0-9)
+ special: "Un caràcter especial (!, @, #, $, %, etc)"
diff --git a/config/locales/views/registrations/de.yml b/config/locales/views/registrations/de.yml
index 8fc0e85b1..f0747f360 100644
--- a/config/locales/views/registrations/de.yml
+++ b/config/locales/views/registrations/de.yml
@@ -8,6 +8,7 @@ de:
user:
create: Weiter
registrations:
+ closed: Die Anmeldung ist derzeit geschlossen.
create:
failure: Beim Registrieren ist ein Problem aufgetreten
invalid_invite_code: Ungültiger Einladungscode bitte versuche es erneut
@@ -22,3 +23,8 @@ de:
welcome_body: Um zu beginnen musst du ein neues Konto erstellen Danach kannst du zusätzliche Einstellungen in der App konfigurieren
welcome_title: Willkommen bei Self Hosted %{product_name}
password_placeholder: Passwort eingeben
+ password_requirements:
+ length: Mindestens 8 Zeichen
+ case: Groß- und Kleinbuchstaben
+ number: Eine Zahl (0-9)
+ special: "Ein Sonderzeichen (!, @, #, $, %, etc)"
diff --git a/config/locales/views/registrations/en.yml b/config/locales/views/registrations/en.yml
index 6b6d4f2ec..742044a02 100644
--- a/config/locales/views/registrations/en.yml
+++ b/config/locales/views/registrations/en.yml
@@ -24,3 +24,8 @@ en:
then be able to configure additional settings within the app.
welcome_title: Welcome to Self Hosted %{product_name}!
password_placeholder: Enter your password
+ password_requirements:
+ length: Minimum 8 characters
+ case: Upper and lowercase letters
+ number: A number (0-9)
+ special: "A special character (!, @, #, $, %, etc)"
diff --git a/config/locales/views/registrations/es.yml b/config/locales/views/registrations/es.yml
index b9d3b885c..fc4b1169d 100644
--- a/config/locales/views/registrations/es.yml
+++ b/config/locales/views/registrations/es.yml
@@ -24,3 +24,8 @@ es:
configurar ajustes adicionales dentro de la aplicación.
welcome_title: ¡Bienvenido a Self Hosted %{product_name}!
password_placeholder: Introduce tu contraseña
+ password_requirements:
+ length: Mínimo 8 caracteres
+ case: Mayúsculas y minúsculas
+ number: Un número (0-9)
+ special: "Un carácter especial (!, @, #, $, %, etc)"
diff --git a/config/locales/views/registrations/fr.yml b/config/locales/views/registrations/fr.yml
index 0a57616c8..06ec380f5 100644
--- a/config/locales/views/registrations/fr.yml
+++ b/config/locales/views/registrations/fr.yml
@@ -23,3 +23,8 @@ fr:
welcome_body: Pour commencer, vous devez créer un nouveau compte. Vous pourrez ensuite configurer des paramètres supplémentaires à l'intérieur de l'application.
welcome_title: Bienvenue sur %{product_name} !
password_placeholder: Entrez votre mot de passe
+ password_requirements:
+ length: Minimum 8 caractères
+ case: Majuscules et minuscules
+ number: Un chiffre (0-9)
+ special: "Un caractère spécial (!, @, #, $, %, etc)"
diff --git a/config/locales/views/registrations/nb.yml b/config/locales/views/registrations/nb.yml
index a915358cf..fb5852aec 100644
--- a/config/locales/views/registrations/nb.yml
+++ b/config/locales/views/registrations/nb.yml
@@ -24,3 +24,8 @@ nb:
da kunne konfigurere flere innstillinger i appen.
welcome_title: Velkommen til Self Hosted %{product_name}!
password_placeholder: Angi passordet ditt
+ password_requirements:
+ length: Minimum 8 tegn
+ case: Store og små bokstaver
+ number: Et tall (0-9)
+ special: "Et spesialtegn (!, @, #, $, %, etc)"
diff --git a/config/locales/views/registrations/nl.yml b/config/locales/views/registrations/nl.yml
index 320cd156b..fcdf5c985 100644
--- a/config/locales/views/registrations/nl.yml
+++ b/config/locales/views/registrations/nl.yml
@@ -23,3 +23,8 @@ nl:
welcome_body: Om te beginnen moet u zich aanmelden voor een nieuw account. U kunt daarna aanvullende instellingen binnen de app configureren.
welcome_title: Welkom bij Self Hosted %{product_name}!
password_placeholder: Voer uw wachtwoord in
+ password_requirements:
+ length: Minimaal 8 tekens
+ case: Hoofdletters en kleine letters
+ number: Een cijfer (0-9)
+ special: "Een speciaal teken (!, @, #, $, %, etc)"
diff --git a/config/locales/views/registrations/pt-BR.yml b/config/locales/views/registrations/pt-BR.yml
index 9aea20658..c39e455a1 100644
--- a/config/locales/views/registrations/pt-BR.yml
+++ b/config/locales/views/registrations/pt-BR.yml
@@ -23,3 +23,8 @@ pt-BR:
poderá configurar configurações adicionais dentro do aplicativo.
welcome_title: Bem-vindo ao Self Hosted %{product_name}!
password_placeholder: Digite sua senha
+ password_requirements:
+ length: Mínimo 8 caracteres
+ case: Letras maiúsculas e minúsculas
+ number: Um número (0-9)
+ special: "Um caractere especial (!, @, #, $, %, etc)"
diff --git a/config/locales/views/registrations/ro.yml b/config/locales/views/registrations/ro.yml
index 189b78c5a..5f3ece26b 100644
--- a/config/locales/views/registrations/ro.yml
+++ b/config/locales/views/registrations/ro.yml
@@ -23,3 +23,8 @@ ro:
welcome_body: Pentru a începe, trebuie să îți creezi un cont nou. Apoi vei putea configura setări suplimentare în aplicație.
welcome_title: Bine ai venit la Self Hosted Maybe!
password_placeholder: Introdu parola
+ password_requirements:
+ length: Minim 8 caractere
+ case: Litere mari și mici
+ number: O cifră (0-9)
+ special: "Un caracter special (!, @, #, $, %, etc)"
diff --git a/config/locales/views/registrations/tr.yml b/config/locales/views/registrations/tr.yml
index df236371d..61dc038aa 100644
--- a/config/locales/views/registrations/tr.yml
+++ b/config/locales/views/registrations/tr.yml
@@ -23,3 +23,8 @@ tr:
welcome_body: Başlamak için yeni bir hesap oluşturmalısınız. Daha sonra uygulama içinde ek ayarları yapılandırabileceksiniz.
welcome_title: Self Hosted %{product_name}'ye Hoş Geldiniz!
password_placeholder: Şifrenizi girin
+ password_requirements:
+ length: En az 8 karakter
+ case: Büyük ve küçük harfler
+ number: Bir rakam (0-9)
+ special: "Bir özel karakter (!, @, #, $, %, etc)"
diff --git a/config/locales/views/registrations/zh-CN.yml b/config/locales/views/registrations/zh-CN.yml
index d4344273a..84c3bd567 100644
--- a/config/locales/views/registrations/zh-CN.yml
+++ b/config/locales/views/registrations/zh-CN.yml
@@ -23,3 +23,8 @@ zh-CN:
title: 创建您的账户
welcome_body: 开始使用前,您需要注册一个新账户。注册后即可在应用内配置其他设置。
welcome_title: 欢迎使用自托管版 %{product_name}!
+ password_requirements:
+ length: 至少8个字符
+ case: 大写和小写字母
+ number: 一个数字 (0-9)
+ special: "一个特殊字符 (!, @, #, $, %, etc)"
diff --git a/config/locales/views/registrations/zh-TW.yml b/config/locales/views/registrations/zh-TW.yml
index 9912f0d72..b16b299ae 100644
--- a/config/locales/views/registrations/zh-TW.yml
+++ b/config/locales/views/registrations/zh-TW.yml
@@ -23,3 +23,8 @@ zh-TW:
welcome_body: 在開始之前,您必須註冊一個新帳號。註冊完成後,您將能在應用程式內進行進階設定。
welcome_title: 歡迎使用自行代管的 %{product_name}!
password_placeholder: 輸入您的密碼
+ password_requirements:
+ length: 至少8個字元
+ case: 大寫和小寫字母
+ number: 一個數字 (0-9)
+ special: "一個特殊字元 (!, @, #, $, %, etc)"
diff --git a/config/locales/views/sessions/ca.yml b/config/locales/views/sessions/ca.yml
index 2f2c28ba6..8e87f4b4a 100644
--- a/config/locales/views/sessions/ca.yml
+++ b/config/locales/views/sessions/ca.yml
@@ -25,6 +25,7 @@ ca:
no_auth_methods_enabled: Actualment no hi ha cap mètode d'autenticació habilitat. Contacta
amb un administrador.
openid_connect: Inicia sessió amb OpenID Connect
+ oidc: Inicia sessió amb OpenID Connect
password: Contrasenya
password_placeholder: Introdueix la teva contrasenya
submit: Inicia sessió
diff --git a/config/locales/views/sessions/de.yml b/config/locales/views/sessions/de.yml
index 99b95fa05..1d307a7de 100644
--- a/config/locales/views/sessions/de.yml
+++ b/config/locales/views/sessions/de.yml
@@ -18,4 +18,5 @@ de:
title: Melde dich bei deinem Konto an
password_placeholder: Passwort eingeben
openid_connect: Mit OpenID Connect anmelden
+ oidc: Mit OpenID Connect anmelden
google_auth_connect: Mit Google anmelden
diff --git a/config/locales/views/sessions/en.yml b/config/locales/views/sessions/en.yml
index 32bbeae7e..beb947b88 100644
--- a/config/locales/views/sessions/en.yml
+++ b/config/locales/views/sessions/en.yml
@@ -24,6 +24,7 @@ en:
title: Sure
password_placeholder: Enter your password
openid_connect: Sign in with OpenID Connect
+ oidc: Sign in with OpenID Connect
google_auth_connect: Sign in with Google
local_login_admin_only: Local login is restricted to administrators.
no_auth_methods_enabled: No authentication methods are currently enabled. Please contact an administrator.
diff --git a/config/locales/views/sessions/es.yml b/config/locales/views/sessions/es.yml
index 5eafcf9d7..d7dbbee6b 100644
--- a/config/locales/views/sessions/es.yml
+++ b/config/locales/views/sessions/es.yml
@@ -19,6 +19,7 @@ es:
title: Inicia sesión en tu cuenta
password_placeholder: Introduce tu contraseña
openid_connect: Inicia sesión con OpenID Connect
+ oidc: Inicia sesión con OpenID Connect
google_auth_connect: Inicia sesión con Google
local_login_admin_only: El inicio de sesión local está restringido a administradores.
no_auth_methods_enabled: No hay métodos de autenticación habilitados actualmente. Ponte en contacto con un administrador.
diff --git a/config/locales/views/sessions/fr.yml b/config/locales/views/sessions/fr.yml
index b56a355df..8e57be388 100644
--- a/config/locales/views/sessions/fr.yml
+++ b/config/locales/views/sessions/fr.yml
@@ -13,3 +13,5 @@ fr:
submit: Se connecter
title: Connectez-vous à votre compte
password_placeholder: Entrez votre mot de passe
+ openid_connect: Se connecter avec OpenID Connect
+ oidc: Se connecter avec OpenID Connect
diff --git a/config/locales/views/sessions/nb.yml b/config/locales/views/sessions/nb.yml
index c78d4a277..d3c88b1fe 100644
--- a/config/locales/views/sessions/nb.yml
+++ b/config/locales/views/sessions/nb.yml
@@ -1,8 +1,8 @@
----
-nb:
- sessions:
- create:
- invalid_credentials: Ugyldig e-post eller passord.
+---
+nb:
+ sessions:
+ create:
+ invalid_credentials: Ugyldig e-post eller passord.
destroy:
logout_successful: Du har blitt logget ut.
openid_connect:
@@ -16,3 +16,4 @@ nb:
title: Logg inn på kontoen din
password_placeholder: Angi passordet ditt
openid_connect: Logg inn med OpenID Connect
+ oidc: Logg inn med OpenID Connect
diff --git a/config/locales/views/sessions/nl.yml b/config/locales/views/sessions/nl.yml
index 6c7ff3397..4cefd4864 100644
--- a/config/locales/views/sessions/nl.yml
+++ b/config/locales/views/sessions/nl.yml
@@ -24,6 +24,7 @@ nl:
title: "%{product_name}"
password_placeholder: Voer uw wachtwoord in
openid_connect: Inloggen met OpenID Connect
+ oidc: Inloggen met OpenID Connect
google_auth_connect: Inloggen met Google
local_login_admin_only: Lokale login is beperkt tot beheerders.
no_auth_methods_enabled: Er zijn momenteel geen authenticatiemethoden ingeschakeld. Neem contact op met een beheerder.
diff --git a/config/locales/views/sessions/pt-BR.yml b/config/locales/views/sessions/pt-BR.yml
index 65691fb61..b9f85d83b 100644
--- a/config/locales/views/sessions/pt-BR.yml
+++ b/config/locales/views/sessions/pt-BR.yml
@@ -18,6 +18,7 @@ pt-BR:
title: Entre na sua conta
password_placeholder: Digite sua senha
openid_connect: Entrar com OpenID Connect
+ oidc: Entrar com OpenID Connect
google_auth_connect: Entrar com Google
demo_banner_title: "Modo de Demonstração Ativo"
demo_banner_message: "Este é um ambiente de demonstração. As credenciais de login foram preenchidas para sua conveniência. Por favor, não insira informações reais ou sensíveis."
diff --git a/config/locales/views/sessions/ro.yml b/config/locales/views/sessions/ro.yml
index a74d33b38..33ca3babd 100644
--- a/config/locales/views/sessions/ro.yml
+++ b/config/locales/views/sessions/ro.yml
@@ -18,4 +18,5 @@ ro:
title: Conectează-te la contul tău
password_placeholder: Introdu parola
openid_connect: Conectează-te cu OpenID Connect
+ oidc: Conectează-te cu OpenID Connect
google_auth_connect: Conectează-te cu Google
diff --git a/config/locales/views/sessions/tr.yml b/config/locales/views/sessions/tr.yml
index 91bd43b7b..f354dd02c 100644
--- a/config/locales/views/sessions/tr.yml
+++ b/config/locales/views/sessions/tr.yml
@@ -16,3 +16,4 @@ tr:
title: Hesabınıza giriş yapın
password_placeholder: Şifrenizi girin
openid_connect: OpenID Connect ile giriş yap
+ oidc: OpenID Connect ile giriş yap
diff --git a/config/locales/views/sessions/zh-CN.yml b/config/locales/views/sessions/zh-CN.yml
index d8ca1cba1..f683ee870 100644
--- a/config/locales/views/sessions/zh-CN.yml
+++ b/config/locales/views/sessions/zh-CN.yml
@@ -15,6 +15,7 @@ zh-CN:
forgot_password: 忘记密码?
google_auth_connect: 使用 Google 登录
openid_connect: 使用 OpenID Connect 登录
+ oidc: 使用 OpenID Connect 登录
password: 密码
password_placeholder: 请输入密码
submit: 登录
diff --git a/config/locales/views/sessions/zh-TW.yml b/config/locales/views/sessions/zh-TW.yml
index 31bdf64cc..e6aac1a71 100644
--- a/config/locales/views/sessions/zh-TW.yml
+++ b/config/locales/views/sessions/zh-TW.yml
@@ -19,6 +19,7 @@ zh-TW:
title: 登入
password_placeholder: 輸入您的密碼
openid_connect: 透過 OpenID Connect 登入
+ oidc: 透過 OpenID Connect 登入
google_auth_connect: 透過 Google 帳號登入
local_login_admin_only: 本地登入僅限管理員使用。
no_auth_methods_enabled: 目前未啟用任何驗證方式。請聯絡管理員。
diff --git a/test/system/onboardings_test.rb b/test/system/onboardings_test.rb
index 2bff29bdc..19410b53a 100644
--- a/test/system/onboardings_test.rb
+++ b/test/system/onboardings_test.rb
@@ -8,21 +8,28 @@ class OnboardingsTest < ApplicationSystemTestCase
# Reset onboarding state
@user.update!(set_onboarding_preferences_at: nil)
+ # Force English locale for tests
+ I18n.locale = :en
+
sign_in @user
end
+ teardown do
+ I18n.locale = I18n.default_locale
+ end
+
test "can complete the full onboarding flow" do
# Start at the main onboarding page
visit onboarding_path
- assert_text "Let's set up your account"
- assert_button "Continue"
+ assert_text I18n.t("onboardings.show.title")
+ assert_button I18n.t("onboardings.show.submit")
# Navigate to preferences
- click_button "Continue"
+ click_button I18n.t("onboardings.show.submit")
assert_current_path preferences_onboarding_path
- assert_text "Configure your preferences"
+ assert_text I18n.t("onboardings.preferences.title")
# Test that the chart renders without errors (this would catch the Series bug)
assert_selector "[data-controller='time-series-chart']"
@@ -31,14 +38,14 @@ class OnboardingsTest < ApplicationSystemTestCase
select "English (en)", from: "user_family_attributes_locale"
select "United States Dollar (USD)", from: "user_family_attributes_currency"
select "MM/DD/YYYY", from: "user_family_attributes_date_format"
- select "Light", from: "user_theme"
+ select_theme("light")
# Submit preferences
- click_button "Complete"
+ click_button I18n.t("onboardings.preferences.submit")
# Should redirect to goals page
assert_current_path goals_onboarding_path
- assert_text "What brings you here?"
+ assert_text I18n.t("onboardings.goals.title")
end
test "preferences page renders chart without errors" do
@@ -59,7 +66,7 @@ class OnboardingsTest < ApplicationSystemTestCase
end
# Verify the preview example shows
- assert_text "Example"
+ assert_text I18n.t("onboardings.preferences.example")
assert_text "$2,325.25"
assert_text "+$78.90"
end
@@ -72,7 +79,7 @@ class OnboardingsTest < ApplicationSystemTestCase
# The preview should update (this tests the JavaScript controller)
# Note: This would require the onboarding controller to handle currency changes
- assert_text "Example"
+ assert_text I18n.t("onboardings.preferences.example")
end
test "can change date format and see preview update" do
@@ -82,17 +89,17 @@ class OnboardingsTest < ApplicationSystemTestCase
select "DD/MM/YYYY", from: "user_family_attributes_date_format"
# The preview should update
- assert_text "Example"
+ assert_text I18n.t("onboardings.preferences.example")
end
test "can change theme" do
visit preferences_onboarding_path
- # Change theme
- select "Dark", from: "user_theme"
+ # Change theme using value instead of label
+ select_theme("dark")
# Theme should be applied (this tests the JavaScript controller)
- assert_text "Example"
+ assert_text I18n.t("onboardings.preferences.example")
end
test "preferences form validation" do
@@ -100,7 +107,7 @@ class OnboardingsTest < ApplicationSystemTestCase
# Clear required fields and try to submit
select "", from: "user_family_attributes_locale"
- click_button "Complete"
+ click_button I18n.t("onboardings.preferences.submit")
# Should stay on preferences page with validation errors (may have query params)
assert_match %r{/onboarding/preferences}, current_path
@@ -113,7 +120,7 @@ class OnboardingsTest < ApplicationSystemTestCase
select "Spanish (es)", from: "user_family_attributes_locale"
select "Euro (EUR)", from: "user_family_attributes_currency"
select "DD/MM/YYYY", from: "user_family_attributes_date_format"
- select "Dark", from: "user_theme"
+ select_theme("dark")
# Button text is in Spanish due to locale preview
click_button I18n.t("onboardings.preferences.submit", locale: :es)
@@ -138,20 +145,20 @@ class OnboardingsTest < ApplicationSystemTestCase
visit goals_onboarding_path
- assert_text "What brings you here?"
- assert_button "Next"
+ assert_text I18n.t("onboardings.goals.title")
+ assert_button I18n.t("onboardings.goals.submit")
end
test "trial page renders correctly" do
visit trial_onboarding_path
- assert_text "Try Sure"
+ assert_text "Sure"
end
test "navigation between onboarding steps" do
# Start at main onboarding
visit onboarding_path
- click_button "Continue"
+ click_button I18n.t("onboardings.show.submit")
# Should be at preferences
assert_current_path preferences_onboarding_path
@@ -160,7 +167,7 @@ class OnboardingsTest < ApplicationSystemTestCase
select "English (en)", from: "user_family_attributes_locale"
select "United States Dollar (USD)", from: "user_family_attributes_currency"
select "MM/DD/YYYY", from: "user_family_attributes_date_format"
- click_button "Complete"
+ click_button I18n.t("onboardings.preferences.submit")
# Should be at goals
assert_current_path goals_onboarding_path
@@ -177,17 +184,22 @@ class OnboardingsTest < ApplicationSystemTestCase
visit preferences_onboarding_path
# Should have logout option (rendered as a button component)
- assert_text "Sign out"
+ assert_text I18n.t("onboardings.logout.sign_out")
end
private
+ def select_theme(value)
+ find("#user_theme", visible: :all)
+ .find("option[value='#{value}']", visible: :all)
+ .select_option
+ end
def sign_in(user)
visit new_session_path
within %(form[action='#{sessions_path}']) do
- fill_in "Email", with: user.email
- fill_in "Password", with: user_password_test
- click_on "Log in"
+ fill_in I18n.t("sessions.new.email"), with: user.email
+ fill_in I18n.t("sessions.new.password"), with: user_password_test
+ click_on I18n.t("sessions.new.submit")
end
# Wait for successful login