From 83845c256ab26d81e7a4a2f4b9411a30b10f7821 Mon Sep 17 00:00:00 2001
From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com>
Date: Sat, 20 Aug 2022 10:55:27 +0200
Subject: [PATCH] Feature/add language selector (#1174)
* Add language selector
* Add translations (german)
* Update changelog
---
CHANGELOG.md | 4 +
angular.json | 7 +
.../pages/account/account-page.component.ts | 5 +
.../src/app/pages/account/account-page.html | 18 ++
apps/client/src/locales/messages.de.xlf | 172 +++++++++---------
5 files changed, 120 insertions(+), 86 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 6a21a2ef2..33cd65b0a 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## Unreleased
+### Added
+
+- Added a language selector to the account page
+
### Changed
- Integrated the commands `database:setup` and `database:migrate` into the container start
diff --git a/angular.json b/angular.json
index cfd2142f5..8f6f6e3de 100644
--- a/angular.json
+++ b/angular.json
@@ -128,6 +128,10 @@
"namedChunks": true
},
"configurations": {
+ "development-de": {
+ "baseHref": "/de/",
+ "localize": ["de"]
+ },
"development-en": {
"baseHref": "/en/",
"localize": ["en"]
@@ -170,6 +174,9 @@
"proxyConfig": "apps/client/proxy.conf.json"
},
"configurations": {
+ "development-de": {
+ "browserTarget": "client:build:development-de"
+ },
"development-en": {
"browserTarget": "client:build:development-en"
},
diff --git a/apps/client/src/app/pages/account/account-page.component.ts b/apps/client/src/app/pages/account/account-page.component.ts
index 5cdb2f624..3d0533164 100644
--- a/apps/client/src/app/pages/account/account-page.component.ts
+++ b/apps/client/src/app/pages/account/account-page.component.ts
@@ -53,6 +53,7 @@ export class AccountPageComponent implements OnDestroy, OnInit {
public hasPermissionToDeleteAccess: boolean;
public hasPermissionToUpdateViewMode: boolean;
public hasPermissionToUpdateUserSettings: boolean;
+ public language = document.documentElement.lang;
public locales = ['de', 'de-CH', 'en-GB', 'en-US'];
public price: number;
public priceId: string;
@@ -148,6 +149,10 @@ export class AccountPageComponent implements OnDestroy, OnInit {
this.update();
}
+ public onChangeLanguage(aLanguage: string) {
+ window.location.href = `../${aLanguage}/account`;
+ }
+
public onChangeUserSetting(aKey: string, aValue: string) {
this.dataService
.putUserSetting({ [aKey]: aValue })
diff --git a/apps/client/src/app/pages/account/account-page.html b/apps/client/src/app/pages/account/account-page.html
index 88a1ee620..69324b2d0 100644
--- a/apps/client/src/app/pages/account/account-page.html
+++ b/apps/client/src/app/pages/account/account-page.html
@@ -111,6 +111,24 @@
+
+
+
+
+
+ Deutsch
+ English
+
+
+
+
Locale
diff --git a/apps/client/src/locales/messages.de.xlf b/apps/client/src/locales/messages.de.xlf
index 5f6cd86e9..7c3191df7 100644
--- a/apps/client/src/locales/messages.de.xlf
+++ b/apps/client/src/locales/messages.de.xlf
@@ -39,7 +39,7 @@
- Type
+ Typ
apps/client/src/app/components/access-table/access-table.component.html
10
@@ -87,7 +87,7 @@
- Activities
+ Aktivitäten
apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html
41
@@ -127,7 +127,7 @@
- Total
+ Total
apps/client/src/app/components/accounts-table/accounts-table.component.html
18
@@ -139,7 +139,7 @@
- Currency
+ Währung
apps/client/src/app/components/accounts-table/accounts-table.component.html
27,29
@@ -147,7 +147,7 @@
- Platform
+ Plattform
apps/client/src/app/components/accounts-table/accounts-table.component.html
44,46
@@ -155,7 +155,7 @@
- Cash Balance
+ Cash-Bestand
apps/client/src/app/components/accounts-table/accounts-table.component.html
86,88
@@ -163,7 +163,7 @@
- Value
+ Wert
apps/client/src/app/components/accounts-table/accounts-table.component.html
121,123
@@ -339,7 +339,7 @@
- Date
+ Datum
apps/client/src/app/components/admin-market-data-detail/market-data-detail-dialog/market-data-detail-dialog.html
6
@@ -359,7 +359,7 @@
- Cancel
+ Abbrechen
apps/client/src/app/components/admin-market-data-detail/market-data-detail-dialog/market-data-detail-dialog.html
45
@@ -383,7 +383,7 @@
- Save
+ Speichern
apps/client/src/app/components/admin-market-data-detail/market-data-detail-dialog/market-data-detail-dialog.html
46,48
@@ -551,7 +551,7 @@
- Add Currency
+ Währung hinzufügen
apps/client/src/app/components/admin-overview/admin-overview.html
106
@@ -755,7 +755,7 @@
- Pricing
+ Preise
apps/client/src/app/components/header/header.component.html
80
@@ -799,7 +799,7 @@
- About Ghostfolio
+ Über Ghostfolio
apps/client/src/app/components/header/header.component.html
222
@@ -811,7 +811,7 @@
- Features
+ Features
apps/client/src/app/components/header/header.component.html
246
@@ -819,7 +819,7 @@
- Markets
+ Märkte
apps/client/src/app/components/header/header.component.html
280
@@ -1151,7 +1151,7 @@
- Symbol
+ Symbol
apps/client/src/app/components/positions-table/positions-table.component.html
21,23
@@ -1159,7 +1159,7 @@
- Name
+ Name
apps/client/src/app/components/positions-table/positions-table.component.html
36,38
@@ -1167,7 +1167,7 @@
- Allocation
+ Allokation
apps/client/src/app/components/positions-table/positions-table.component.html
74,76
@@ -1415,7 +1415,7 @@
- Account
+ Konto
apps/client/src/app/pages/account/account-page.html
4
@@ -1431,7 +1431,7 @@
- Membership
+ Mitgliedschaft
apps/client/src/app/pages/account/account-page.html
15
@@ -1491,7 +1491,7 @@
- Base Currency
+ Basiswährung
apps/client/src/app/pages/account/account-page.html
94,96
@@ -1579,7 +1579,7 @@
- Add account
+ Konto hinzufügen
apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html
3
@@ -1603,7 +1603,7 @@
- Currency
+ Währung
apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html
22
@@ -1615,7 +1615,7 @@
- Cash Balance
+ Cash-Bestand
apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html
32
@@ -1623,7 +1623,7 @@
- Platform
+ Plattform
apps/client/src/app/pages/accounts/create-or-update-account-dialog/create-or-update-account-dialog.html
44
@@ -1871,7 +1871,7 @@
- Features
+ Features
apps/client/src/app/pages/features/features-page-routing.module.ts
12
@@ -1951,7 +1951,7 @@
- Portfolio Allocations
+ Portfolio Allokationen
apps/client/src/app/pages/features/features-page.html
128
@@ -2075,7 +2075,7 @@
- Markets
+ Märkte
apps/client/src/app/pages/markets/markets-page-routing.module.ts
12
@@ -2083,7 +2083,7 @@
- Allocations
+ Allokationen
apps/client/src/app/pages/portfolio/allocations/allocations-page-routing.module.ts
12
@@ -2091,7 +2091,7 @@
- Allocations
+ Allokationen
apps/client/src/app/pages/portfolio/allocations/allocations-page.html
4
@@ -2103,7 +2103,7 @@
- By Account
+ Nach Konto
apps/client/src/app/pages/portfolio/allocations/allocations-page.html
17
@@ -2111,7 +2111,7 @@
- By Currency
+ Nach Währung
apps/client/src/app/pages/portfolio/allocations/allocations-page.html
42
@@ -2119,7 +2119,7 @@
- By Asset Class
+ Nach Asset Class
apps/client/src/app/pages/portfolio/allocations/allocations-page.html
70
@@ -2127,7 +2127,7 @@
- By Holding
+ Nach Position
apps/client/src/app/pages/portfolio/allocations/allocations-page.html
97,98
@@ -2135,7 +2135,7 @@
- By Sector
+ Nach Sektor
apps/client/src/app/pages/portfolio/allocations/allocations-page.html
126
@@ -2143,7 +2143,7 @@
- By Continent
+ Nach Kontinent
apps/client/src/app/pages/portfolio/allocations/allocations-page.html
155
@@ -2151,7 +2151,7 @@
- By Country
+ Nach Land
apps/client/src/app/pages/portfolio/allocations/allocations-page.html
183
@@ -2159,7 +2159,7 @@
- Regions
+ Regionen
apps/client/src/app/pages/portfolio/allocations/allocations-page.html
214
@@ -2171,7 +2171,7 @@
- Analysis
+ Analyse
apps/client/src/app/pages/portfolio/analysis/analysis-page-routing.module.ts
12
@@ -2179,7 +2179,7 @@
- Analysis
+ Analyse
apps/client/src/app/pages/portfolio/analysis/analysis-page.html
4
@@ -2191,7 +2191,7 @@
- Investment Timeline
+ Zeitstrahl der Investitionen
apps/client/src/app/pages/portfolio/analysis/analysis-page.html
10
@@ -2199,7 +2199,7 @@
- Top 3
+ Gewinner
apps/client/src/app/pages/portfolio/analysis/analysis-page.html
55
@@ -2207,7 +2207,7 @@
- Bottom 3
+ Verlierer
apps/client/src/app/pages/portfolio/analysis/analysis-page.html
91
@@ -2235,7 +2235,7 @@
- Calculator
+ Rechner
apps/client/src/app/pages/portfolio/fire/fire-page.html
6
@@ -2243,7 +2243,7 @@
- 4% Rule
+ 4% Regel
apps/client/src/app/pages/portfolio/fire/fire-page.html
20
@@ -2251,7 +2251,7 @@
- Holdings
+ Positionen
apps/client/src/app/pages/portfolio/holdings/holdings-page-routing.module.ts
12
@@ -2259,7 +2259,7 @@
- Holdings
+ Positionen
apps/client/src/app/pages/portfolio/holdings/holdings-page.html
4
@@ -2275,7 +2275,7 @@
- Get an overview of your current holdings.
+
apps/client/src/app/pages/portfolio/portfolio-page.html
7,9
@@ -2283,7 +2283,7 @@
- Open Holdings
+ Positionen öffnen
apps/client/src/app/pages/portfolio/portfolio-page.html
16
@@ -2291,7 +2291,7 @@
- Manage your activities: stocks, ETFs, cryptocurrencies, dividend, and valuables.
+
apps/client/src/app/pages/portfolio/portfolio-page.html
25,28
@@ -2299,7 +2299,7 @@
- Open Activities
+ Aktivitäten öffnen
apps/client/src/app/pages/portfolio/portfolio-page.html
35
@@ -2307,7 +2307,7 @@
- Check the allocations of your portfolio by account, asset class, currency, sector and region.
+
apps/client/src/app/pages/portfolio/portfolio-page.html
50,53
@@ -2315,7 +2315,7 @@
- Open Allocations
+ Allokationen öffnen
apps/client/src/app/pages/portfolio/portfolio-page.html
60
@@ -2323,7 +2323,7 @@
- Ghostfolio Analysis visualizes your portfolio and shows your top and bottom performers.
+
apps/client/src/app/pages/portfolio/portfolio-page.html
75,78
@@ -2331,7 +2331,7 @@
- Open Analysis
+ Analyse öffnen
apps/client/src/app/pages/portfolio/portfolio-page.html
85
@@ -2347,7 +2347,7 @@
- Ghostfolio X-ray uses static analysis to identify potential issues and risks in your portfolio.
+
apps/client/src/app/pages/portfolio/portfolio-page.html
100,103
@@ -2355,7 +2355,7 @@
- Open X-ray
+ X-ray öffnen
apps/client/src/app/pages/portfolio/portfolio-page.html
106
@@ -2363,7 +2363,7 @@
- Ghostfolio FIRE calculates metrics for the Financial Independence, Retire Early lifestyle.
+
apps/client/src/app/pages/portfolio/portfolio-page.html
121,124
@@ -2371,7 +2371,7 @@
- Open FIRE
+ FIRE öffnen
apps/client/src/app/pages/portfolio/portfolio-page.html
127
@@ -2419,7 +2419,7 @@
- Update activity
+ Aktivität bearbeiten
apps/client/src/app/pages/portfolio/transactions/create-or-update-transaction-dialog/create-or-update-transaction-dialog.html
7,8
@@ -2427,7 +2427,7 @@
- Add activity
+ Aktivität hinzufügen
apps/client/src/app/pages/portfolio/transactions/create-or-update-transaction-dialog/create-or-update-transaction-dialog.html
8,11
@@ -2467,7 +2467,7 @@
- Name, symbol or ISIN
+ Name, Symbol oder ISIN
apps/client/src/app/pages/portfolio/transactions/create-or-update-transaction-dialog/create-or-update-transaction-dialog.html
37,40
@@ -2475,7 +2475,7 @@
- Quantity
+ Anzahl
apps/client/src/app/pages/portfolio/transactions/create-or-update-transaction-dialog/create-or-update-transaction-dialog.html
106,107
@@ -2483,7 +2483,7 @@
- Unit Price
+ Stückpreis
apps/client/src/app/pages/portfolio/transactions/create-or-update-transaction-dialog/create-or-update-transaction-dialog.html
112,113
@@ -2491,7 +2491,7 @@
- Fee
+ Gebühr
apps/client/src/app/pages/portfolio/transactions/create-or-update-transaction-dialog/create-or-update-transaction-dialog.html
131,132
@@ -2499,7 +2499,7 @@
- Note
+ Kommentar
apps/client/src/app/pages/portfolio/transactions/create-or-update-transaction-dialog/create-or-update-transaction-dialog.html
140,143
@@ -2523,7 +2523,7 @@
- Save
+ Speichern
apps/client/src/app/pages/portfolio/transactions/create-or-update-transaction-dialog/create-or-update-transaction-dialog.html
209,214
@@ -2531,7 +2531,7 @@
- Activities
+ Aktivitäten
apps/client/src/app/pages/portfolio/transactions/transactions-page-routing.module.ts
12
@@ -2555,7 +2555,7 @@
- Pricing
+ Preise
apps/client/src/app/pages/pricing/pricing-page-routing.module.ts
12
@@ -2739,7 +2739,7 @@
- Date
+ Datum
libs/ui/src/lib/activities-table/activities-table.component.html
39,41
@@ -2747,7 +2747,7 @@
- Type
+ Typ
libs/ui/src/lib/activities-table/activities-table.component.html
51,53
@@ -2755,7 +2755,7 @@
- Symbol
+ Symbol
libs/ui/src/lib/activities-table/activities-table.component.html
83,85
@@ -2771,7 +2771,7 @@
- Currency
+ Währung
libs/ui/src/lib/activities-table/activities-table.component.html
109,111
@@ -2779,7 +2779,7 @@
- Quantity
+ Anzahl
libs/ui/src/lib/activities-table/activities-table.component.html
131,133
@@ -2787,7 +2787,7 @@
- Unit Price
+ Stückpreis
libs/ui/src/lib/activities-table/activities-table.component.html
161,163
@@ -2795,7 +2795,7 @@
- Fee
+ Gebühr
libs/ui/src/lib/activities-table/activities-table.component.html
191,193
@@ -2803,7 +2803,7 @@
- Value
+ Wert
libs/ui/src/lib/activities-table/activities-table.component.html
225,227
@@ -2815,7 +2815,7 @@
- Import Activities
+ Aktivitäten importieren
libs/ui/src/lib/activities-table/activities-table.component.html
325
@@ -2823,7 +2823,7 @@
- Export Activities
+ Aktivitäten exportieren
libs/ui/src/lib/activities-table/activities-table.component.html
335
@@ -2863,7 +2863,7 @@
- Index
+ Index
libs/ui/src/lib/benchmark/benchmark.component.html
3
@@ -2871,7 +2871,7 @@
- Change from All Time High
+ Änderung vom Allzeithoch
libs/ui/src/lib/benchmark/benchmark.component.html
12
@@ -2879,7 +2879,7 @@
- from ATH
+ vom AZH
libs/ui/src/lib/benchmark/benchmark.component.html
14
@@ -2887,7 +2887,7 @@
- Savings Rate
+ Sparrate
libs/ui/src/lib/fire-calculator/fire-calculator.component.html
10
@@ -2903,7 +2903,7 @@
- Investment Horizon
+ Anlagehorizont
libs/ui/src/lib/fire-calculator/fire-calculator.component.html
21
@@ -2911,7 +2911,7 @@
- years
+ Jahre
libs/ui/src/lib/fire-calculator/fire-calculator.component.html
23
@@ -2919,7 +2919,7 @@
- Annual Interest Rate
+ Jahreszinssatz
libs/ui/src/lib/fire-calculator/fire-calculator.component.html
27