Translation project
### Description
Currently the code can be messy with german bits in the code.
### Goal
Rid the code of german text bits, lead the refs to yang.de.yml
### Solution
Search all vue and js files for non translated strings.
* in **JavaScript** the referrer is: `this.$i18n('KEY.KEY')`
* in **vue parameters**: `"$i18n('KEY.KEY')"`
* in **vue templates**: `{{ $i18n('KEY.KEY') }}` ... see examples for all three in GenderList.vue
* in **twig**: `'KEY.KEY|trans'` ... see events.twig
* in **symfony** components: `'KEY.KEY'` ... see ForumCreateThreadForm.php
also *php* would eventually need to be addressed: `$this->translator->trans(`
---
PHP language file statistics:
```
wc -l lang/DE/*
8 lang/DE/Basket.lang.php
6 lang/DE/Blog.lang.php
3 lang/DE/BusinessCard.lang.php
3 lang/DE/Content.lang.php
151 lang/DE/de.php
5 lang/DE/Email.lang.php
5 lang/DE/Event.lang.php
13 lang/DE/Foodsaver.lang.php
12 lang/DE/FoodSharePoint.lang.php
7 lang/DE/Login.lang.php
3 lang/DE/Map.lang.php
6 lang/DE/Message.lang.php
3 lang/DE/Profile.lang.php
14 lang/DE/Quiz.lang.php
3 lang/DE/RegionAdmin.lang.php
9 lang/DE/Report.lang.php
50 lang/DE/Settings.lang.php
16 lang/DE/Statistics.lang.php
44 lang/DE/Store.lang.php
59 lang/DE/StoreUser.lang.php
10 lang/DE/WorkGroup.lang.php
= 430 total
```
(some Store and StoreUser are part of foodsharing!1469 / Settings are probably in foodsharing#961)
List tasks/files to process here:
* [ ] move the RegionControl to the Control class and check if it is still working
/lib-folders won't be touched, also JqueryUI.
Concerning View files see in the comments. It just remains here so we don't forget the information:
* adding it to the View class. In other classes the developer could inject it on demand
* ~~removing the duplicated inputs of the legacy translation style from ...View.php classes as these are duplicated
-> use 'Foodsharing\Helpers\TranslationHelper;' in SettingsView.php could be a start. Just checking afterwards if translations still work fine.~~
* Settingsview.php, row 165, something is up with the male/female choice in the translation helper, that might be old code, row 219, row 221, row 232, 236, 240, 246, 287, 291, 315, 318, 322, 327, 330, 338-407, (all quiz stuff), 422 (mail), 430ff (calendar), 449 (delete account), 454 hat deutsche Variablen drin, 501ff (quiz stuff again), 639 (picture)
---
**DONE:**
vue files with hardcoded strings:
* [x] [/client/src/components/Topbar/SearchResults.vue](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/client/src/components/Topbar/SearchResults.vue)
* [x] [/client/src/components/Topbar/MenuRegion.vue](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/client/src/components/Topbar/MenuRegion.vue)
* [x] [/client/src/components/Topbar/MenuMessages.vue](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/client/src/components/Topbar/MenuMessages.vue) Row 34
* [x] [/client/src/components/Topbar/MenuInformation.vue](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/client/src/components/Topbar/MenuInformation.vue)
* [x] [/client/src/components/Topbar/MenuGroups.vue](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/client/src/components/Topbar/MenuGroups.vue)
* [x] [/client/src/components/Topbar/MenuEnvelope.vue](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/client/src/components/Topbar/MenuEnvelope.vue)
* [x] [/client/src/components/Topbar/MenuBullhorn.vue](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/client/src/components/Topbar/MenuBullhorn.vue)
* [x] [/client/src/components/Topbar/MenuBells.vue](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/client/src/components/Topbar/MenuBells.vue) Row 23
* [x] [/client/src/components/Topbar/Login.vue](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/client/src/components/Topbar/Login.vue) Row 121
* [x] [/client/src/components/Topbar/index.vue](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/client/src/components/Topbar/index.vue) Row 80,118
* [x] [/src/Modules/Basket/components/RequestForm.vue](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/src/Modules/Basket/components/RequestForm.vue)
* [x] [/src/Modules/Region/components/Thread.vue](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/src/Modules/Region/components/Thread.vue)
* [x] [/src/Modules/Region/components/ThreadForm.vue](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/src/Modules/Region/components/ThreadForm.vue)
* [x] [/src/Modules/Region/components/ThreadPostAction.vue](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/src/Modules/Region/components/ThreadPostAction.vue)
* [x] [/src/Modules/Register/components/RegisterMobilephone.vue](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/src/Modules/Register/components/RegisterMobilephone.vue)
* [x] [/src/Modules/WallPost/components/Wall.vue](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/src/Modules/WallPost/components/Wall.vue)
* [x] [/src/Modules/StoreUser/components/PickupList.vue](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/src/Modules/StoreUser/components/PickupList.vue)
* [x] [/src/Modules/Store/components/StoreStatusIcon.vue](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/src/Modules/Store/components/StoreStatusIcon.vue)
* [x] [/src/Modules/Stores/components/storelist.vue](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/src/Modules/Store/components/StoreList.vue#L116)
---
twig files with hardcoded strings:
* [x] [/views/emailTemplates/basket/request.de-de.body.html.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/basket/request.de-de.body.html.twig)
* [x] [/views/emailTemplates/basket/request.de-de.subject.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/basket/request.de-de.subject.twig)
* [x] [/views/emailTemplates/chat/fetch_warning.de-de.body.html.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/chat/fetch_warning.de-de.body.html.twig)
* [x] [/views/emailTemplates/chat/fetch_warning.de-de.subject.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/chat/fetch_warning.de-de.subject.twig)
* [x] [/views/emailTemplates/chat/message.de-de.body.html.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/chat/message.de-de.body.html.twig)
* [x] [/views/emailTemplates/foodSharePoint/new_message.de-de.body.html.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/foodSharePoint/new_message.de-de.body.html.twig)
* [x] [/views/emailTemplates/forum/activation.de-de.body.html.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/forum/activation.de-de.body.html.twig)
* [x] [/views/emailTemplates/forum/activation.de-de.subject.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/forum/activation.de-de.subject.twig)
* [x] [/views/emailTemplates/forum/answer.de-de.body.html.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/forum/answer.de-de.body.html.twig)
* [x] [/views/emailTemplates/forum/new_message.de-de.body.html.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/forum/new_message.de-de.body.html.twig)
* [x] [/views/emailTemplates/forum/new_region_ambassador_message.de-de.body.html.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/forum/new_region_ambassador_message.de-de.body.html.twig)
* [x] [/views/emailTemplates/general/body.html.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/general/body.html.twig)
* [x] [/views/emailTemplates/general/invalid_email_address.de-de.body.html.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/general/invalid_email_address.de-de.body.html.twig)
* [x] [/views/emailTemplates/general/invalid_email_address.de-de.subject.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/general/invalid_email_address.de-de.subject.twig)
* [x] [/views/emailTemplates/general/unsubscribe_newsletter.html.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/general/unsubscribe_newsletter.html.twig)
* [x] [/views/emailTemplates/general/unsubscribe.html.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/general/unsubscribe.html.twig)
* [x] [/views/emailTemplates/general/workgroup_contact.de-de.body.html.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/general/workgroup_contact.de-de.body.html.twig)
* [x] [/views/emailTemplates/general/workgroup_contact.de-de.subject.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/general/workgroup_contact.de-de.subject.twig)
* [x] [/views/emailTemplates/user/change_email.de-de.body.html.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/user/change_email.de-de.body.html.twig)
* [x] [/views/emailTemplates/user/change_email.de-de.subject.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/user/change_email.de-de.subject.twig)
* [x] [/views/emailTemplates/user/join.de-de.body.html.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/user/join.de-de.body.html.twig)
* [x] [/views/emailTemplates/user/join.de-de.subject.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/user/join.de-de.subject.twig)
* [x] [/views/emailTemplates/user/privacy_notice.de-de.body.html.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/user/privacy_notice.de-de.body.html.twig)
* [x] [/views/emailTemplates/user/privacy_notice.de-de.subject.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/user/privacy_notice.de-de.subject.twig)
* [x] [/views/emailTemplates/user/reset_password.de-de.body.html.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/user/reset_password.de-de.body.html.twig)
* [x] [/views/emailTemplates/user/reset_password.de-de.subject.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/user/reset_password.de-de.subject.twig)
* [x] [/views/emailTemplates/user/sleeping_automated.de-de.body.html.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/user/sleeping_automated.de-de.body.html.twig)
* [x] [/views/emailTemplates/user/sleeping_automated.de-de.subject.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/user/sleeping_automated.de-de.subject.twig)
* [x] [/views/emailTemplates/user/sleeping_warning.de-de.body.html.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/user/sleeping_warning.de-de.body.html.twig)
* [x] [/views/emailTemplates/user/reset_password.de-de.subject.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/user/reset_password.de-de.subject.twig)
* [x] [/views/emailTemplates/user/sleeping_automated.de-de.body.html.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/user/sleeping_automated.de-de.body.html.twig)
* [x] [/views/emailTemplates/user/sleeping_automated.de-de.subject.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/user/sleeping_automated.de-de.subject.twig)
* [x] [/views/emailTemplates/user/sleeping_warning.de-de.body.html.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/user/sleeping_warning.de-de.body.html.twig)
* [x] [/views/emailTemplates/user/sleeping_warning.de-de.subject.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/emailTemplates/user/sleeping_warning.de-de.subject.twig)
* [x] [/views/layouts/base.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/layouts/base.twig)
* [x] [/views/pages/ForgotPassword/ForgotPasswordForm.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/pages/ForgotPassword/ForgotPasswordForm.twig)
* [x] [/views/pages/Index/page.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/pages/Index/page.twig)
* [x] [/views/pages/WorkGroup/sidenav.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/pages/WorkGroup/sidenav.twig)
* [x] [/views/partials/becomeBezirk.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/partials/becomeBezirk.twig)
* [x] [/views/partials/footer.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/partials/footer.twig)
* [x] [/views/partials/tablesorter.twig](https://gitlab.com/foodsharing-dev/foodsharing/-/blob/master/views/partials/tablesorter.twig)
---
### Links / references
(Here you can add references to related issues, best-practice examples, and links to anything you feel is relevant)
**Reasoning with details in Slack:**
https://yunity.slack.com/archives/C1T1ZM9A4/p1584400015349700
epic