diff --git a/frontend/src/locales/de.json b/frontend/src/locales/de.json
index b297bfc81..f3897f112 100644
--- a/frontend/src/locales/de.json
+++ b/frontend/src/locales/de.json
@@ -44,7 +44,10 @@
"max_gdd_info":"maximale anzahl GDD zum versenden erreicht!",
"send_check":"Bestätige deine Zahlung. Prüfe bitte nochmal alle Daten!",
"thx":"Danke,",
- "send_success":"deine Transaktion wurde erfolgreich ausgeführt"
+ "send_success":"deine Transaktion wurde erfolgreich ausgeführt",
+ "validation": {
+ "double": "Das Feld {field} muss eine Dezimalzahl mit zwei Nachkommastellen sein"
+ }
},
"error": {
"error":"Fehler"
diff --git a/frontend/src/locales/en.json b/frontend/src/locales/en.json
index a49d6fc3d..a5173c2be 100644
--- a/frontend/src/locales/en.json
+++ b/frontend/src/locales/en.json
@@ -44,7 +44,10 @@
"max_gdd_info":"maximale anzahl GDD zum versenden erreicht!",
"send_check":"Bestätige deine Zahlung. Prüfe bitte nochmal alle Daten!",
"thx":"Thank you,",
- "send_success":"your transaction was successfully completed"
+ "send_success":"your transaction was successfully completed",
+ "validation": {
+ "double": "The {field} field must be a decimal with two digits"
+ }
},
"error": {
"error":"Error"
diff --git a/frontend/src/main.js b/frontend/src/main.js
index bd57c6e57..94889e390 100755
--- a/frontend/src/main.js
+++ b/frontend/src/main.js
@@ -2,6 +2,8 @@ import Vue from 'vue'
import DashboardPlugin from './plugins/dashboard-plugin'
import App from './App.vue'
import i18n from './i18n.js'
+import { configure, extend } from 'vee-validate'
+import { required, email, min, between, double } from 'vee-validate/dist/rules'
// store
import { store } from './store/store'
@@ -21,6 +23,38 @@ router.beforeEach((to, from, next) => {
}
})
+configure({
+ defaultMessage: (field, values) => {
+ values._field_ = i18n.t(`fields.${field}`)
+ return i18n.t(`validations.messages.${values._rule_}`, values)
+ },
+})
+
+extend('email', {
+ ...email,
+ message: (_, values) => i18n.t('validations.messages.email', values),
+})
+
+extend('required', {
+ ...required,
+ message: (_, values) => i18n.t('validations.messages.required', values),
+})
+
+extend('min', {
+ ...min,
+ message: (_, values) => i18n.t('validations.messages.min', values),
+})
+
+extend('double', {
+ ...double,
+ message: (_, values) => i18n.t('form.validation.double', values),
+})
+
+extend('between', {
+ ...between,
+ message: (_, values) => i18n.t('validations.messages.between', values),
+})
+
/* eslint-disable no-new */
new Vue({
el: '#app',
diff --git a/frontend/src/vee-validate.js b/frontend/src/vee-validate.js
deleted file mode 100644
index 42e4c9c94..000000000
--- a/frontend/src/vee-validate.js
+++ /dev/null
@@ -1,25 +0,0 @@
-import { configure, extend } from 'vee-validate'
-import { required, email, min } from 'vee-validate/dist/rules'
-import i18n from './i18n'
-
-configure({
- defaultMessage: (field, values) => {
- values._field_ = i18n.t(`fields.${field}`)
- return i18n.t(`validations.messages.${values._rule_}`, values)
- },
-})
-
-extend('email', {
- ...email,
- message: (_, values) => i18n.t('validations.messages.email', values),
-})
-
-extend('required', {
- ...required,
- message: (_, values) => i18n.t('validations.messages.required', values),
-})
-
-extend('min', {
- ...min,
- message: (_, values) => i18n.t('validations.messages.min', values),
-})
diff --git a/frontend/src/views/Pages/AccountOverview/GddSend.spec.js b/frontend/src/views/Pages/AccountOverview/GddSend.spec.js
index ffc8fd211..c281f5176 100644
--- a/frontend/src/views/Pages/AccountOverview/GddSend.spec.js
+++ b/frontend/src/views/Pages/AccountOverview/GddSend.spec.js
@@ -24,6 +24,10 @@ describe('GddSend', () => {
$moment: jest.fn((m) => ({
format: () => m,
})),
+ $i18n: {
+ locale: jest.fn(() => 'en'),
+ },
+ $n: jest.fn((n) => String(n)),
}
const Wrapper = () => {
diff --git a/frontend/src/views/Pages/AccountOverview/GddSend.vue b/frontend/src/views/Pages/AccountOverview/GddSend.vue
index b7d805988..3693e8930 100644
--- a/frontend/src/views/Pages/AccountOverview/GddSend.vue
+++ b/frontend/src/views/Pages/AccountOverview/GddSend.vue
@@ -53,69 +53,84 @@