add langs in enum

This commit is contained in:
Tykayn 2022-02-03 11:33:57 +01:00 committed by tykayn
parent d181578893
commit 68e4823eed
8 changed files with 50 additions and 20 deletions

View File

@ -1,5 +1,13 @@
# Framadate - funky version
![landing_page](docs/img/landing_page.png)
<a href="https://weblate.framasoft.org/engage/funky-framadate/">
<img src="https://weblate.framasoft.org/widgets/funky-framadate/-/funky-framadate-front/multi-auto.svg" alt="État de la traduction" />
</a>
<a href="https://weblate.framasoft.org/engage/funky-framadate/">
<img src="https://weblate.framasoft.org/widgets/funky-framadate/-/funky-framadate-front/open-graph.png" alt="État de la traduction" />
</a>
FR: Un logiciel libre de sondage fait par les contributeurs de l'association Framasoft, avec une API backend.
EN: A libre polling software made by contributors around the French association Framasoft.

View File

@ -1,5 +1,9 @@
# Internationalisation - i18n
<a href="https://weblate.framasoft.org/engage/funky-framadate/">
<img src="https://weblate.framasoft.org/widgets/funky-framadate/-/funky-framadate-front/svg-badge.svg" alt="État de la traduction" />
</a>
## Dans les templates HTML
Toutes les chaînes de texte doivent être disponible en minimum deux langues: Français et Anglais.
Pour l'ajout de nouvelles traductions voir [la documentations des traductions.md](../traductions.md)

View File

@ -1,4 +1,10 @@
# Traductions
<a href="https://weblate.framasoft.org/engage/funky-framadate/">
<img src="https://weblate.framasoft.org/widgets/funky-framadate/-/funky-framadate-front/svg-badge.svg" alt="État de la traduction" />
</a>
<a href="https://weblate.framasoft.org/engage/funky-framadate/">
<img src="https://weblate.framasoft.org/widgets/funky-framadate/-/funky-framadate-front/multi-auto.svg" alt="État de la traduction" />
</a>
Les chaînes sont traduites via des clés de fichiers JSON
exemple: [src/assets/i18n/FR.json]()
@ -12,16 +18,15 @@ Nous avons récupéré les chaînes de traduction du projet Framadate v1, il fau
Le Weblate effectue automatiquement des Merge Request vers Framagit, si une langue est nouvelle elle proposera de créer un fichier **nom_de_la_langue.json** dans le dossier **src/assets/i18n**
Pour que l'appli reconnaisse ces nouvelles langues il faut les enregistrer dans l'AppModule.
Chaque fichier de traduction est déclaré dans le [AppModule](../../src/app/app.module.ts) avec le module @ngx-translate. Examinez l'exemple pour rajouter votre propre traduction.
Chaque fichier de traduction est automatiquement chargé dans le [AppModule](../../src/app/app.module.ts) avec le Loader de @ngx-translate. Il faut ensuite ajouter le code de la langue dans l'énumération du fichier **/app/core/enums/language.enum.ts** Examinez l'exemple pour rajouter votre propre traduction.
``` typescript
import localeEn from '@angular/common/locales/en';
import localeFr from '@angular/common/locales/fr';
import { CommonModule, registerLocaleData } from '@angular/common';
registerLocaleData(localeEn, 'en-EN');
registerLocaleData(localeFr, 'fr-FR');
export enum Language {
FR = 'fr',
BR = 'br',
EN = 'en',
//... etc
}
```

View File

@ -1,4 +1,4 @@
import { CommonModule, registerLocaleData } from '@angular/common';
import { CommonModule } from '@angular/common';
import { HttpClient, HttpClientModule } from '@angular/common/http';
import { NgModule } from '@angular/core';
@ -31,13 +31,13 @@ import { KeyboardShortcutsModule } from 'ng-keyboard-shortcuts';
import { AdministrationModule } from './features/administration/administration.module';
// register languages files for translation
import localeEn from '@angular/common/locales/en';
import localeFr from '@angular/common/locales/fr';
import localeEs from '@angular/common/locales/es';
// code for locale are listed by the ISO-639
registerLocaleData(localeFr, 'fr-FR');
registerLocaleData(localeEn, 'en-EN');
registerLocaleData(localeEs, 'ca-ES');
// import localeEn from '@angular/common/locales/en';
// import localeFr from '@angular/common/locales/fr';
// import localeEs from '@angular/common/locales/es';
// // code for locale are listed by the ISO-639
// registerLocaleData(localeFr, 'fr-FR');
// registerLocaleData(localeEn, 'en-EN');
// registerLocaleData(localeEs, 'ca-ES');
export class MyMissingTranslationHandler implements MissingTranslationHandler {
public handle(params: MissingTranslationHandlerParams): string {

View File

@ -1,15 +1,19 @@
/**
* liste des fichiers JSON de traduction des textes dans l'appli à charger par ngx-translate et prposer aux utilisateurs et utilisatrices de Framdate.
* Cette enum est utilisé dans le composant de sélection de langue.
*/
export enum Language {
FR = 'fr',
// BR = 'br',
BR = 'br',
// CA = 'ca',
// DE = 'de',
// EL = 'el',
EN = 'en',
// ES = 'es',
ES = 'es',
// GL = 'gl',
// HU = 'hu',
// IT = 'it',
IT = 'it',
// NL = 'nl',
// OC = 'oc',
OC = 'oc',
// SV = 'sv',
}

3
src/assets/i18n/BR.json Normal file
View File

@ -0,0 +1,3 @@
{
}

3
src/assets/i18n/IT.json Normal file
View File

@ -0,0 +1,3 @@
{
}

3
src/assets/i18n/OC.json Normal file
View File

@ -0,0 +1,3 @@
{
}