diff --git a/README.md b/README.md
index 8f2efe53..8c67857d 100644
--- a/README.md
+++ b/README.md
@@ -39,7 +39,7 @@ EN: All documentation is available in the "doc" folder, mainly in French because
## LIBRARIES USED
-| status | lib name | usage |
+| status | lib choice_label | usage |
| :-------------: | -------------------------------------------------------------- | --------------------------------------------------------- |
| | [axios](https://github.com/axios/axios) | http client |
| | [bulma](https://bulma.io/) | CSS framework |
@@ -71,7 +71,7 @@ This project was generated with [Angular CLI](https://github.com/angular/angular
## Code scaffolding
-Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`.
+Run `ng generate component component-choice_label` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`.
## Build
diff --git a/angular.json b/angular.json
index a9606a6f..2f0d87cf 100644
--- a/angular.json
+++ b/angular.json
@@ -73,7 +73,8 @@
"serve": {
"builder": "@angular-devkit/build-angular:dev-server",
"options": {
- "browserTarget": "framadate:build"
+ "browserTarget": "framadate:build",
+ "proxyConfig": "src/proxy.conf.json"
},
"configurations": {
"production": {
diff --git a/doc/cadrage/backend-api-endpoints-doc.txt b/doc/cadrage/backend-api-endpoints-doc.txt
index 65f3afa5..e805c7d1 100644
--- a/doc/cadrage/backend-api-endpoints-doc.txt
+++ b/doc/cadrage/backend-api-endpoints-doc.txt
@@ -1,32 +1,41 @@
// TODO: File to be deleted : just temporary documentation of backend API endpoints
-/**
- *
- * -------------------------- -------- -------- ------ ------------------------------------------------
- Name Method Scheme Host Path
- -------------------------- -------- -------- ------ ------------------------------------------------
-_twig_error_test ANY ANY ANY /_error/{code}.{_format}
-admin_homepage_get_default GET ANY ANY /admin/
-admin_homepage_clean_expired_polls GET ANY ANY /admin/polls/clean/{token}
-api_get_poll_comment GET ANY ANY /polls/{id}/comments
-api_new_comment POST ANY ANY /polls/{id}/comments
-api_poll_comments_delete DELETE ANY ANY /polls/{id}/comments
-user_homepageget_default GET ANY ANY /users/
-user_homepage_polls_send_by_email GET ANY ANY /users/{email}/polls/send-by-email
-api_get_all_polls GET ANY ANY /polls/
-api_get_poll GET ANY ANY /polls/{id}
-api_update_poll PUT ANY ANY /polls/{id}/{token}
-api_new_poll POST ANY ANY /polls/
-api_test-mail-polls GET ANY ANY /polls/mail/test-mail-polls/{emailChoice}
-api_poll_delete DELETE ANY ANY /polls/{id}
-api_check_slug_is_unique GET ANY ANY /polls/slugs/{slug}
-api_get_admin_config GET ANY ANY /polls/admin/{token}
-api_new_vote_stack POST ANY ANY /polls/{id}/votes
-api_update_vote_stack PATCH ANY ANY /votes-stacks/{id}/token/{modifierToken}
-api_poll_votes_delete DELETE ANY ANY /polls/{id}/votes/{accessToken}
-app.swagger GET ANY ANY /api/doc.json
- -------------------------- -------- -------- ------ ------------------------------------------------
- */
+ ------------------------------------------ ---------- -------- ------ ------------------------------------------------
+ Name Method Scheme Host Path
+ ------------------------------------------ ---------- -------- ------ ------------------------------------------------
+ _twig_error_test ANY ANY ANY /_error/{code}.{_format}
+ admin_homepage_get_default GET ANY ANY /admin/
+ admin_homepage_clean_expired_polls GET ANY ANY /admin/polls/clean/{token}
+ admin_homepage_migrate_framadate GET ANY ANY /admin/polls/migrate
+ api_get_poll_comment GET ANY ANY /api/v1/poll/{id}/comments
+ api_new_comment POST ANY ANY /api/v1/poll/{id}/comment
+ api_poll_comments_delete DELETE ANY ANY /api/v1/poll/{id}/comments
+ api_page_home GET ANY ANY /page/
+ user_homepageget_default GET ANY ANY /user/
+ user_homepage_polls_send_by_email GET ANY ANY /user/{email}/polls/send-by-email
+ poll_index GET ANY ANY /poll/
+ poll_new GET|POST ANY ANY /poll/new
+ poll_show GET ANY ANY /poll/{id}
+ poll_edit GET|POST ANY ANY /poll/{id}/edit
+ poll_delete DELETE ANY ANY /poll/{id}
+ api_new_vote_stack POST ANY ANY /api/v1/poll/{id}/answer
+ api_update_vote_stack PATCH ANY ANY /api/v1/vote-stack/{id}/token/{modifierToken}
+ api_poll_votes_delete DELETE ANY ANY /api/v1/poll/{id}/votes/{accessToken}
+ api_get_all_polls GET ANY ANY /api/v1/poll/
+ api_get_poll GET ANY ANY /api/v1/poll/{id}
+ api_update_poll PUT ANY ANY /api/v1/poll/{id}/{token}
+ api_new_poll POST ANY ANY /api/v1/poll/
+ api_test-mail-poll GET ANY ANY /api/v1/poll/mail/test-mail-poll/{emailChoice}
+ api_poll_delete DELETE ANY ANY /api/v1/poll/{id}
+ api_check_slug_is_unique GET ANY ANY /api/v1/poll/slug/{slug}
+ api_get_admin_config GET ANY ANY /api/v1/poll/admin/{token}
+ overblog_graphql_endpoint ANY ANY ANY /api/graphql/
+ overblog_graphql_batch_endpoint ANY ANY ANY /api/graphql/batch
+ overblog_graphql_multiple_endpoint ANY ANY ANY /api/graphql/graphql/{schemaName}
+ overblog_graphql_batch_multiple_endpoint ANY ANY ANY /api/graphql/graphql/{schemaName}/batch
+ app.swagger GET ANY ANY /api/doc.json
+ ------------------------------------------ ---------- -------- ------ ------------------------------------------------
+
/**
* WANTED CHANGES (seraf)
diff --git a/index.lokalize b/index.lokalize
new file mode 100644
index 00000000..cf94da76
--- /dev/null
+++ b/index.lokalize
@@ -0,0 +1,5 @@
+[General]
+LangCode=fr_FR
+PotBaseDir=src/assets/i18n
+ProjectID=funky-framadate-front
+TargetLangCode=fr_FR
diff --git a/lokalize-scripts/scripts.rc b/lokalize-scripts/scripts.rc
new file mode 100644
index 00000000..00a7472f
--- /dev/null
+++ b/lokalize-scripts/scripts.rc
@@ -0,0 +1,14 @@
+
\ No newline at end of file
diff --git a/main.lqa b/main.lqa
new file mode 100644
index 00000000..129f393a
--- /dev/null
+++ b/main.lqa
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/package.json b/package.json
index ef9d01a0..c95d9b98 100644
--- a/package.json
+++ b/package.json
@@ -20,8 +20,10 @@
"compodoc": "compodoc -p tsconfig.app.json",
"mock:server": "json-server --port 8000 --watch ./mocks/db.json --routes ./mocks/routes.json",
"start:proxy": "ng serve --proxy-config proxy.conf.json",
- "start:proxymock": "concurrently --kill-others \"yarn mock:server\" \"yarn start:proxy\""
- },
+ "start:proxymock": "concurrently --kill-others \"yarn mock:server\" \"yarn start:proxy\"",
+ "i18n:init": "ngx-translate-extract --input ./src --output ./src/assets/i18n/template.json --key-as-default-value --replace --format json",
+ "i18n:extract": "ngx-translate-extract --input ./src --output ./src/assets/i18n/{en,da,de,fi,nb,nl,sv}.json --clean --format json"
+ },
"private": false,
"dependencies": {
"@angular/animations": "^9.1.1",
@@ -35,6 +37,8 @@
"@angular/platform-browser": "^9.0.7",
"@angular/platform-browser-dynamic": "^9.0.7",
"@angular/router": "^9.0.7",
+ "@biesbjerg/ngx-translate-extract": "^7.0.3",
+ "@biesbjerg/ngx-translate-po-http-loader": "^3.1.0",
"@fullcalendar/core": "^4.4.0",
"@ngx-translate/core": "^12.1.2",
"@ngx-translate/http-loader": "^5.0.0",
@@ -53,6 +57,7 @@
"rxjs": "^6.5.5",
"rxjs-compat": "^6.5.5",
"short-unique-id": "^3.0.3",
+ "stream": "^0.0.2",
"tslib": "<2.0.0",
"zone.js": "^0.10.3"
},
diff --git a/src/app/app.module.ts b/src/app/app.module.ts
index 8cc30bc2..7db18013 100644
--- a/src/app/app.module.ts
+++ b/src/app/app.module.ts
@@ -52,6 +52,7 @@ export function HttpLoaderFactory(http: HttpClient): TranslateHttpLoader {
NgxWebstorageModule.forRoot({ prefix: environment.localStorage.key }),
SharedModule,
TranslateModule.forRoot({
+ defaultLanguage: 'FR',
loader: {
provide: TranslateLoader,
useFactory: HttpLoaderFactory,
@@ -61,7 +62,7 @@ export function HttpLoaderFactory(http: HttpClient): TranslateHttpLoader {
provide: MissingTranslationHandler,
useClass: MyMissingTranslationHandler,
},
- useDefaultLang: false,
+ useDefaultLang: true,
}),
],
providers: [Title, TranslateService],
diff --git a/src/app/core/components/footer/footer.component.html b/src/app/core/components/footer/footer.component.html
index b7f2fd96..fbf8ee53 100644
--- a/src/app/core/components/footer/footer.component.html
+++ b/src/app/core/components/footer/footer.component.html
@@ -1,8 +1,12 @@