Polish settings and auth flows

This commit is contained in:
2026-03-27 21:51:15 +01:00
parent b46a0c121d
commit b53b2b5a35
10 changed files with 315 additions and 156 deletions
+40 -24
View File
@@ -145,13 +145,16 @@ export const translations = {
settingsColumnDateApplied: "Date applied",
settingsColumnDays: "Days",
settingsColumnJobUrl: "Job URL",
settingsFollowUpsTitle: "Follow-up rules",
settingsFollowUpsBody: "Set when applied, offer, and feedback stages should surface follow-up work or be treated as ghosted. These rules drive the reminder inbox and the job table flags.",
settingsOpenReminderInbox: "Open reminders",
settingsReviewJobs: "Review jobs",
settingsNotificationsTitle: "Email notifications",
settingsNotificationsBody: "Choose how follow-up and account emails are delivered.",
settingsNotificationsFollowUpsTitle: "Follow-up reminders",
settingsNotificationsFollowUpsBody: "Reminder and ghosting emails use the server SMTP configuration. Delivery follows the timing rules from the Follow-ups tab.",
settingsNotificationsAccountTitle: "Account and security emails",
settingsNotificationsAccountBody: "Password resets and other account notices are also sent from the system mailer so delivery stays reliable even if no personal mailbox is linked.",
settingsNotificationsDeliveryNote: "Per-user mailboxes are not selectable yet; the current behavior is one system sender for notifications and reset flows.",
settingsNotificationsBody: "Notifications are sent via SMTP. Configure the API with `Email:*` settings or env vars like `EMAIL_SMTP_HOST`, then Jobbjakt can deliver password reset and reminder emails.",
settingsNotificationsDelivery: "Use the system status page to confirm SMTP is configured before testing outbound email.",
settingsNotificationsWhatYouGetTitle: "What gets sent",
settingsNotificationsWhatYouGetBody: "Right now the app sends password reset mail and can surface reminder-driven follow-up workflows. Gmail OAuth stays separate from SMTP delivery.",
settingsCheckSystemStatus: "Check system status",
profileTitle: "Profile",
profileHeadlinePlaceholder: "Add a short headline to personalize your account view.",
profileLocalAccount: "Local account",
@@ -522,6 +525,9 @@ export const translations = {
googleAvailableToLink: "Available to link",
googleLinkedDate: "Linked {date}",
googleSignInHint: "Sign in with a Google account that has already been linked to your Jobbjakt user.",
continueWithGoogle: "Continue with Google",
signInWithGoogle: "Sign in with Google",
linkWithGoogle: "Link with Google",
googleLinkedTo: "Linked to {email}.",
googleLinkedToYourAccount: "Linked to your Google account.",
googleBindHint: "Bind a Google account to this user so you can sign in with Google and still keep your normal app roles and data.",
@@ -571,13 +577,15 @@ export const translations = {
google: "Google",
createAccount: "Create account",
signedIn: "Signed in.",
loginFailed: "Login failed.",
rememberMe: "Remember me on this device",
rememberMe: "Remember me",
rememberMeHelpPersistent: "Keeps you signed in on this device until you sign out.",
rememberMeHelpSession: "Keeps you signed in only for this browser session.",
forgotPassword: "Forgot password?",
loginResetEmailRequired: "Enter your email first so we know where to send the reset link.",
loginRequestingReset: "Sending reset link",
loginResetRequested: "If that account exists, a reset link has been sent.",
loginResetRequestFailed: "Could not request a password reset.",
passwordResetEnterEmail: "Enter your email first, then request a reset link.",
passwordResetRequestSending: "Sending reset link...",
passwordResetRequestSent: "If that account exists, a reset link has been sent.",
passwordResetRequestFailed: "Could not send the reset link.",
loginFailed: "Login failed.",
resetPasswordTitle: "Reset password",
resetPasswordBody: "Set a new password for your account.",
missingResetLinkInfo: "Missing email/token in link.",
@@ -969,13 +977,16 @@ export const translations = {
settingsColumnDateApplied: "Søkt dato",
settingsColumnDays: "Dager",
settingsColumnJobUrl: "Jobb-URL",
settingsFollowUpsTitle: "Regler for oppfølging",
settingsFollowUpsBody: "Velg når søknader, tilbud og tilbakemeldinger skal dukke opp som oppfølgingsarbeid eller regnes som ghostet. Disse reglene styrer påminnelsesinnboksen og flaggene i jobblisten.",
settingsOpenReminderInbox: "Åpne påminnelser",
settingsReviewJobs: "Gå til jobber",
settingsNotificationsTitle: "E-postvarsler",
settingsNotificationsBody: "Velg hvordan oppfølgings- og kontovarsler leveres.",
settingsNotificationsFollowUpsTitle: "Oppfølgingspåminnelser",
settingsNotificationsFollowUpsBody: "Påminnelser og ghosting-e-poster bruker serverens SMTP-oppsett. Leveringen følger tidsreglene på fanen Oppfølging.",
settingsNotificationsAccountTitle: "Konto- og sikkerhetsmailer",
settingsNotificationsAccountBody: "Tilbakestilling av passord og andre kontovarsler sendes også fra systemets avsender, slik at leveringen er stabil selv uten en personlig postkasse koblet til.",
settingsNotificationsDeliveryNote: "Per-bruker avsendere kan ikke velges ennå; i dag brukes én systemavsender for varsler og tilbakestilling av passord.",
settingsNotificationsBody: "Varsler sendes via SMTP. Konfigurer API-et med `Email:*`-innstillinger eller miljøvariabler som `EMAIL_SMTP_HOST`, så kan Jobbjakt sende passord-nullstilling og påminnelsesepost.",
settingsNotificationsDelivery: "Bruk siden for systemstatus for å bekrefte at SMTP er konfigurert før du tester utgående e-post.",
settingsNotificationsWhatYouGetTitle: "Hva som sendes",
settingsNotificationsWhatYouGetBody: "Akkurat nå sender appen passord-nullstilling og kan støtte oppfølgingsflyt drevet av påminnelser. Gmail OAuth er fortsatt separat fra SMTP-levering.",
settingsCheckSystemStatus: "Sjekk systemstatus",
profileTitle: "Profil",
profileHeadlinePlaceholder: "Legg til en kort overskrift for å gjøre kontovisningen mer personlig.",
profileLocalAccount: "Lokal konto",
@@ -1346,6 +1357,9 @@ export const translations = {
googleAvailableToLink: "Tilgjengelig for kobling",
googleLinkedDate: "Koblet {date}",
googleSignInHint: "Logg inn med en Google-konto som allerede er koblet til Jobbjakt-brukeren din.",
continueWithGoogle: "Fortsett med Google",
signInWithGoogle: "Logg inn med Google",
linkWithGoogle: "Koble til med Google",
googleLinkedTo: "Koblet til {email}.",
googleLinkedToYourAccount: "Koblet til Google-kontoen din.",
googleBindHint: "Koble en Google-konto til denne brukeren slik at du kan logge inn med Google og fortsatt beholde vanlige approller og data.",
@@ -1395,13 +1409,15 @@ export const translations = {
google: "Google",
createAccount: "Opprett konto",
signedIn: "Logget inn.",
loginFailed: "Innlogging mislyktes.",
rememberMe: "Husk meg på denne enheten",
rememberMe: "Husk meg",
rememberMeHelpPersistent: "Holder deg innlogget på denne enheten til du logger ut.",
rememberMeHelpSession: "Holder deg innlogget bare i denne nettleserøkten.",
forgotPassword: "Glemt passord?",
loginResetEmailRequired: "Skriv inn e-postadressen først, så vet vi hvor vi skal sende lenken.",
loginRequestingReset: "Sender tilbakestillingslenke",
loginResetRequested: "Hvis kontoen finnes, er en tilbakestillingslenke sendt.",
loginResetRequestFailed: "Kunne ikke be om tilbakestilling av passord.",
passwordResetEnterEmail: "Skriv inn e-post først, og be deretter om en nullstillingslenke.",
passwordResetRequestSending: "Sender nullstillingslenke...",
passwordResetRequestSent: "Hvis kontoen finnes, er en nullstillingslenke sendt.",
passwordResetRequestFailed: "Kunne ikke sende nullstillingslenken.",
loginFailed: "Innlogging mislyktes.",
resetPasswordTitle: "Tilbakestill passord",
resetPasswordBody: "Sett et nytt passord for kontoen din.",
missingResetLinkInfo: "Mangler e-post/token i lenken.",