forked from tykayn/funky-framadate-front
add langs in enum
This commit is contained in:
parent
d181578893
commit
68e4823eed
@ -1,5 +1,13 @@
|
|||||||
# Framadate - funky version
|
# Framadate - funky version
|
||||||
![landing_page](docs/img/landing_page.png)
|
![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.
|
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.
|
EN: A libre polling software made by contributors around the French association Framasoft.
|
||||||
|
@ -1,5 +1,9 @@
|
|||||||
# Internationalisation - i18n
|
# 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
|
## Dans les templates HTML
|
||||||
|
|
||||||
Toutes les chaînes de texte doivent être disponible en minimum deux langues: Français et Anglais.
|
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)
|
Pour l'ajout de nouvelles traductions voir [la documentations des traductions.md](../traductions.md)
|
||||||
|
@ -1,4 +1,10 @@
|
|||||||
# Traductions
|
# 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
|
Les chaînes sont traduites via des clés de fichiers JSON
|
||||||
exemple: [src/assets/i18n/FR.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**
|
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.
|
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
|
``` typescript
|
||||||
import localeEn from '@angular/common/locales/en';
|
export enum Language {
|
||||||
import localeFr from '@angular/common/locales/fr';
|
FR = 'fr',
|
||||||
|
BR = 'br',
|
||||||
import { CommonModule, registerLocaleData } from '@angular/common';
|
EN = 'en',
|
||||||
|
//... etc
|
||||||
registerLocaleData(localeEn, 'en-EN');
|
}
|
||||||
registerLocaleData(localeFr, 'fr-FR');
|
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
import { CommonModule, registerLocaleData } from '@angular/common';
|
import { CommonModule } from '@angular/common';
|
||||||
import { HttpClient, HttpClientModule } from '@angular/common/http';
|
import { HttpClient, HttpClientModule } from '@angular/common/http';
|
||||||
|
|
||||||
import { NgModule } from '@angular/core';
|
import { NgModule } from '@angular/core';
|
||||||
@ -31,13 +31,13 @@ import { KeyboardShortcutsModule } from 'ng-keyboard-shortcuts';
|
|||||||
import { AdministrationModule } from './features/administration/administration.module';
|
import { AdministrationModule } from './features/administration/administration.module';
|
||||||
|
|
||||||
// register languages files for translation
|
// register languages files for translation
|
||||||
import localeEn from '@angular/common/locales/en';
|
// import localeEn from '@angular/common/locales/en';
|
||||||
import localeFr from '@angular/common/locales/fr';
|
// import localeFr from '@angular/common/locales/fr';
|
||||||
import localeEs from '@angular/common/locales/es';
|
// import localeEs from '@angular/common/locales/es';
|
||||||
// code for locale are listed by the ISO-639
|
// // code for locale are listed by the ISO-639
|
||||||
registerLocaleData(localeFr, 'fr-FR');
|
// registerLocaleData(localeFr, 'fr-FR');
|
||||||
registerLocaleData(localeEn, 'en-EN');
|
// registerLocaleData(localeEn, 'en-EN');
|
||||||
registerLocaleData(localeEs, 'ca-ES');
|
// registerLocaleData(localeEs, 'ca-ES');
|
||||||
|
|
||||||
export class MyMissingTranslationHandler implements MissingTranslationHandler {
|
export class MyMissingTranslationHandler implements MissingTranslationHandler {
|
||||||
public handle(params: MissingTranslationHandlerParams): string {
|
public handle(params: MissingTranslationHandlerParams): string {
|
||||||
|
@ -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 {
|
export enum Language {
|
||||||
FR = 'fr',
|
FR = 'fr',
|
||||||
// BR = 'br',
|
BR = 'br',
|
||||||
// CA = 'ca',
|
// CA = 'ca',
|
||||||
// DE = 'de',
|
// DE = 'de',
|
||||||
// EL = 'el',
|
// EL = 'el',
|
||||||
EN = 'en',
|
EN = 'en',
|
||||||
// ES = 'es',
|
ES = 'es',
|
||||||
// GL = 'gl',
|
// GL = 'gl',
|
||||||
// HU = 'hu',
|
// HU = 'hu',
|
||||||
// IT = 'it',
|
IT = 'it',
|
||||||
// NL = 'nl',
|
// NL = 'nl',
|
||||||
// OC = 'oc',
|
OC = 'oc',
|
||||||
// SV = 'sv',
|
// SV = 'sv',
|
||||||
}
|
}
|
||||||
|
3
src/assets/i18n/BR.json
Normal file
3
src/assets/i18n/BR.json
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
|
||||||
|
}
|
3
src/assets/i18n/IT.json
Normal file
3
src/assets/i18n/IT.json
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
|
||||||
|
}
|
3
src/assets/i18n/OC.json
Normal file
3
src/assets/i18n/OC.json
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user