From acf1c167431384d785aa496021eaecef9a2df261 Mon Sep 17 00:00:00 2001
From: Maxime Rainville <maxime@silverstripe.com>
Date: Wed, 9 Jun 2021 14:25:59 +1200
Subject: [PATCH] MNT Update translations (#1079)

* MNT Update translations

* MNT Update translation

* MNT Update translation
---
 client/lang/src/bg.js    |  16 ++++++
 client/lang/src/de.js    |  16 ++++++
 client/lang/src/es.js    |  16 ++++++
 client/lang/src/et.js    |  16 ++++++
 client/lang/src/fa.js    |  16 ++++++
 client/lang/src/fa_IR.js |  16 ++++++
 client/lang/src/fr.js    |  16 ++++++
 client/lang/src/hr.js    |  16 ++++++
 client/lang/src/ms.js    |  16 ++++++
 client/lang/src/nb.js    |  16 ++++++
 client/lang/src/nl.js    |  16 ++++++
 client/lang/src/pl.js    |  16 ++++++
 client/lang/src/pt.js    |  16 ++++++
 client/lang/src/pt_BR.js |  16 ++++++
 client/lang/src/ru.js    |  16 ++++++
 client/lang/src/sk_SK.js |  16 ++++++
 client/lang/src/sl.js    |  16 ++++++
 client/lang/src/sl_SI.js |  16 ++++++
 client/lang/src/sr.js    |  16 ++++++
 client/lang/src/tr.js    |  16 ++++++
 lang/ar.yml              |   6 +--
 lang/bg.yml              |   1 +
 lang/de.yml              |   1 +
 lang/de_DE.yml           |  71 +++++++++++++-------------
 lang/en.yml              |   3 +-
 lang/eo.yml              |  23 ++++-----
 lang/es.yml              |   1 +
 lang/es_ES.yml           |   9 ++--
 lang/et.yml              |   1 +
 lang/et_EE.yml           |   4 +-
 lang/fa.yml              |   1 +
 lang/fa_IR.yml           |   4 +-
 lang/fi_FI.yml           |   6 +--
 lang/fr.yml              |   1 +
 lang/hr.yml              |   1 +
 lang/id.yml              |  22 ---------
 lang/it.yml              |  13 +++--
 lang/ja.yml              |  30 +++++------
 lang/mi.yml              |   6 +--
 lang/ms.yml              |   1 +
 lang/nb.yml              |   1 +
 lang/nb_NO.yml           |  16 +++---
 lang/nl.yml              |   1 +
 lang/nl_NL.yml           |  11 ++---
 lang/pl.yml              |   1 +
 lang/pl_PL.yml           |   7 ++-
 lang/pt.yml              |   1 +
 lang/pt_BR.yml           |   1 +
 lang/ru.yml              |   1 +
 lang/sk.yml              |  25 +++++-----
 lang/sk_SK.yml           |   1 +
 lang/sl.yml              |   1 +
 lang/sl_SI.yml           |   1 +
 lang/sr.yml              |   1 +
 lang/sv.yml              |  45 +++++++++--------
 lang/tr.yml              |   1 +
 lang/zh.yml              | 104 +++++++++++++++++++--------------------
 57 files changed, 524 insertions(+), 220 deletions(-)
 create mode 100644 client/lang/src/bg.js
 create mode 100644 client/lang/src/de.js
 create mode 100644 client/lang/src/es.js
 create mode 100644 client/lang/src/et.js
 create mode 100644 client/lang/src/fa.js
 create mode 100644 client/lang/src/fa_IR.js
 create mode 100644 client/lang/src/fr.js
 create mode 100644 client/lang/src/hr.js
 create mode 100644 client/lang/src/ms.js
 create mode 100644 client/lang/src/nb.js
 create mode 100644 client/lang/src/nl.js
 create mode 100644 client/lang/src/pl.js
 create mode 100644 client/lang/src/pt.js
 create mode 100644 client/lang/src/pt_BR.js
 create mode 100644 client/lang/src/ru.js
 create mode 100644 client/lang/src/sk_SK.js
 create mode 100644 client/lang/src/sl.js
 create mode 100644 client/lang/src/sl_SI.js
 create mode 100644 client/lang/src/sr.js
 create mode 100644 client/lang/src/tr.js
 create mode 100644 lang/bg.yml
 create mode 100644 lang/de.yml
 create mode 100644 lang/es.yml
 create mode 100644 lang/et.yml
 create mode 100644 lang/fa.yml
 create mode 100644 lang/fr.yml
 create mode 100644 lang/hr.yml
 create mode 100644 lang/ms.yml
 create mode 100644 lang/nb.yml
 create mode 100644 lang/nl.yml
 create mode 100644 lang/pl.yml
 create mode 100644 lang/pt.yml
 create mode 100644 lang/pt_BR.yml
 create mode 100644 lang/ru.yml
 create mode 100644 lang/sk_SK.yml
 create mode 100644 lang/sl.yml
 create mode 100644 lang/sl_SI.yml
 create mode 100644 lang/sr.yml
 create mode 100644 lang/tr.yml

diff --git a/client/lang/src/bg.js b/client/lang/src/bg.js
new file mode 100644
index 0000000..3aa5ae1
--- /dev/null
+++ b/client/lang/src/bg.js
@@ -0,0 +1,16 @@
+{
+    "GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.",
+    "UserForms.ADDED_FIELD": "Added new field",
+    "UserForms.ADDED_OPTION": "Added option",
+    "UserForms.ADDING_FIELD": "Adding new field",
+    "UserForms.ADDING_OPTION": "Adding option",
+    "UserForms.ADDING_RULE": "Adding rule",
+    "UserForms.CONFIRM_DELETE_ALL_SUBMISSIONS": "All submissions will be permanently removed. Continue?",
+    "UserForms.ERROR_CONTAINER_HEADER": "Please correct the following errors and try again:",
+    "UserForms.ERROR_CREATING_FIELD": "Error creating field",
+    "UserForms.ERROR_CREATING_OPTION": "Error creating option",
+    "UserForms.HIDE_OPTIONS": "Hide options",
+    "UserForms.LEAVE_CONFIRMATION": "You have unsaved changes!",
+    "UserForms.REMOVED_OPTION": "Removed option",
+    "UserForms.SHOW_OPTIONS": "Show options"
+}
\ No newline at end of file
diff --git a/client/lang/src/de.js b/client/lang/src/de.js
new file mode 100644
index 0000000..3aa5ae1
--- /dev/null
+++ b/client/lang/src/de.js
@@ -0,0 +1,16 @@
+{
+    "GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.",
+    "UserForms.ADDED_FIELD": "Added new field",
+    "UserForms.ADDED_OPTION": "Added option",
+    "UserForms.ADDING_FIELD": "Adding new field",
+    "UserForms.ADDING_OPTION": "Adding option",
+    "UserForms.ADDING_RULE": "Adding rule",
+    "UserForms.CONFIRM_DELETE_ALL_SUBMISSIONS": "All submissions will be permanently removed. Continue?",
+    "UserForms.ERROR_CONTAINER_HEADER": "Please correct the following errors and try again:",
+    "UserForms.ERROR_CREATING_FIELD": "Error creating field",
+    "UserForms.ERROR_CREATING_OPTION": "Error creating option",
+    "UserForms.HIDE_OPTIONS": "Hide options",
+    "UserForms.LEAVE_CONFIRMATION": "You have unsaved changes!",
+    "UserForms.REMOVED_OPTION": "Removed option",
+    "UserForms.SHOW_OPTIONS": "Show options"
+}
\ No newline at end of file
diff --git a/client/lang/src/es.js b/client/lang/src/es.js
new file mode 100644
index 0000000..3aa5ae1
--- /dev/null
+++ b/client/lang/src/es.js
@@ -0,0 +1,16 @@
+{
+    "GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.",
+    "UserForms.ADDED_FIELD": "Added new field",
+    "UserForms.ADDED_OPTION": "Added option",
+    "UserForms.ADDING_FIELD": "Adding new field",
+    "UserForms.ADDING_OPTION": "Adding option",
+    "UserForms.ADDING_RULE": "Adding rule",
+    "UserForms.CONFIRM_DELETE_ALL_SUBMISSIONS": "All submissions will be permanently removed. Continue?",
+    "UserForms.ERROR_CONTAINER_HEADER": "Please correct the following errors and try again:",
+    "UserForms.ERROR_CREATING_FIELD": "Error creating field",
+    "UserForms.ERROR_CREATING_OPTION": "Error creating option",
+    "UserForms.HIDE_OPTIONS": "Hide options",
+    "UserForms.LEAVE_CONFIRMATION": "You have unsaved changes!",
+    "UserForms.REMOVED_OPTION": "Removed option",
+    "UserForms.SHOW_OPTIONS": "Show options"
+}
\ No newline at end of file
diff --git a/client/lang/src/et.js b/client/lang/src/et.js
new file mode 100644
index 0000000..3aa5ae1
--- /dev/null
+++ b/client/lang/src/et.js
@@ -0,0 +1,16 @@
+{
+    "GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.",
+    "UserForms.ADDED_FIELD": "Added new field",
+    "UserForms.ADDED_OPTION": "Added option",
+    "UserForms.ADDING_FIELD": "Adding new field",
+    "UserForms.ADDING_OPTION": "Adding option",
+    "UserForms.ADDING_RULE": "Adding rule",
+    "UserForms.CONFIRM_DELETE_ALL_SUBMISSIONS": "All submissions will be permanently removed. Continue?",
+    "UserForms.ERROR_CONTAINER_HEADER": "Please correct the following errors and try again:",
+    "UserForms.ERROR_CREATING_FIELD": "Error creating field",
+    "UserForms.ERROR_CREATING_OPTION": "Error creating option",
+    "UserForms.HIDE_OPTIONS": "Hide options",
+    "UserForms.LEAVE_CONFIRMATION": "You have unsaved changes!",
+    "UserForms.REMOVED_OPTION": "Removed option",
+    "UserForms.SHOW_OPTIONS": "Show options"
+}
\ No newline at end of file
diff --git a/client/lang/src/fa.js b/client/lang/src/fa.js
new file mode 100644
index 0000000..3aa5ae1
--- /dev/null
+++ b/client/lang/src/fa.js
@@ -0,0 +1,16 @@
+{
+    "GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.",
+    "UserForms.ADDED_FIELD": "Added new field",
+    "UserForms.ADDED_OPTION": "Added option",
+    "UserForms.ADDING_FIELD": "Adding new field",
+    "UserForms.ADDING_OPTION": "Adding option",
+    "UserForms.ADDING_RULE": "Adding rule",
+    "UserForms.CONFIRM_DELETE_ALL_SUBMISSIONS": "All submissions will be permanently removed. Continue?",
+    "UserForms.ERROR_CONTAINER_HEADER": "Please correct the following errors and try again:",
+    "UserForms.ERROR_CREATING_FIELD": "Error creating field",
+    "UserForms.ERROR_CREATING_OPTION": "Error creating option",
+    "UserForms.HIDE_OPTIONS": "Hide options",
+    "UserForms.LEAVE_CONFIRMATION": "You have unsaved changes!",
+    "UserForms.REMOVED_OPTION": "Removed option",
+    "UserForms.SHOW_OPTIONS": "Show options"
+}
\ No newline at end of file
diff --git a/client/lang/src/fa_IR.js b/client/lang/src/fa_IR.js
new file mode 100644
index 0000000..3aa5ae1
--- /dev/null
+++ b/client/lang/src/fa_IR.js
@@ -0,0 +1,16 @@
+{
+    "GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.",
+    "UserForms.ADDED_FIELD": "Added new field",
+    "UserForms.ADDED_OPTION": "Added option",
+    "UserForms.ADDING_FIELD": "Adding new field",
+    "UserForms.ADDING_OPTION": "Adding option",
+    "UserForms.ADDING_RULE": "Adding rule",
+    "UserForms.CONFIRM_DELETE_ALL_SUBMISSIONS": "All submissions will be permanently removed. Continue?",
+    "UserForms.ERROR_CONTAINER_HEADER": "Please correct the following errors and try again:",
+    "UserForms.ERROR_CREATING_FIELD": "Error creating field",
+    "UserForms.ERROR_CREATING_OPTION": "Error creating option",
+    "UserForms.HIDE_OPTIONS": "Hide options",
+    "UserForms.LEAVE_CONFIRMATION": "You have unsaved changes!",
+    "UserForms.REMOVED_OPTION": "Removed option",
+    "UserForms.SHOW_OPTIONS": "Show options"
+}
\ No newline at end of file
diff --git a/client/lang/src/fr.js b/client/lang/src/fr.js
new file mode 100644
index 0000000..3aa5ae1
--- /dev/null
+++ b/client/lang/src/fr.js
@@ -0,0 +1,16 @@
+{
+    "GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.",
+    "UserForms.ADDED_FIELD": "Added new field",
+    "UserForms.ADDED_OPTION": "Added option",
+    "UserForms.ADDING_FIELD": "Adding new field",
+    "UserForms.ADDING_OPTION": "Adding option",
+    "UserForms.ADDING_RULE": "Adding rule",
+    "UserForms.CONFIRM_DELETE_ALL_SUBMISSIONS": "All submissions will be permanently removed. Continue?",
+    "UserForms.ERROR_CONTAINER_HEADER": "Please correct the following errors and try again:",
+    "UserForms.ERROR_CREATING_FIELD": "Error creating field",
+    "UserForms.ERROR_CREATING_OPTION": "Error creating option",
+    "UserForms.HIDE_OPTIONS": "Hide options",
+    "UserForms.LEAVE_CONFIRMATION": "You have unsaved changes!",
+    "UserForms.REMOVED_OPTION": "Removed option",
+    "UserForms.SHOW_OPTIONS": "Show options"
+}
\ No newline at end of file
diff --git a/client/lang/src/hr.js b/client/lang/src/hr.js
new file mode 100644
index 0000000..3aa5ae1
--- /dev/null
+++ b/client/lang/src/hr.js
@@ -0,0 +1,16 @@
+{
+    "GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.",
+    "UserForms.ADDED_FIELD": "Added new field",
+    "UserForms.ADDED_OPTION": "Added option",
+    "UserForms.ADDING_FIELD": "Adding new field",
+    "UserForms.ADDING_OPTION": "Adding option",
+    "UserForms.ADDING_RULE": "Adding rule",
+    "UserForms.CONFIRM_DELETE_ALL_SUBMISSIONS": "All submissions will be permanently removed. Continue?",
+    "UserForms.ERROR_CONTAINER_HEADER": "Please correct the following errors and try again:",
+    "UserForms.ERROR_CREATING_FIELD": "Error creating field",
+    "UserForms.ERROR_CREATING_OPTION": "Error creating option",
+    "UserForms.HIDE_OPTIONS": "Hide options",
+    "UserForms.LEAVE_CONFIRMATION": "You have unsaved changes!",
+    "UserForms.REMOVED_OPTION": "Removed option",
+    "UserForms.SHOW_OPTIONS": "Show options"
+}
\ No newline at end of file
diff --git a/client/lang/src/ms.js b/client/lang/src/ms.js
new file mode 100644
index 0000000..3aa5ae1
--- /dev/null
+++ b/client/lang/src/ms.js
@@ -0,0 +1,16 @@
+{
+    "GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.",
+    "UserForms.ADDED_FIELD": "Added new field",
+    "UserForms.ADDED_OPTION": "Added option",
+    "UserForms.ADDING_FIELD": "Adding new field",
+    "UserForms.ADDING_OPTION": "Adding option",
+    "UserForms.ADDING_RULE": "Adding rule",
+    "UserForms.CONFIRM_DELETE_ALL_SUBMISSIONS": "All submissions will be permanently removed. Continue?",
+    "UserForms.ERROR_CONTAINER_HEADER": "Please correct the following errors and try again:",
+    "UserForms.ERROR_CREATING_FIELD": "Error creating field",
+    "UserForms.ERROR_CREATING_OPTION": "Error creating option",
+    "UserForms.HIDE_OPTIONS": "Hide options",
+    "UserForms.LEAVE_CONFIRMATION": "You have unsaved changes!",
+    "UserForms.REMOVED_OPTION": "Removed option",
+    "UserForms.SHOW_OPTIONS": "Show options"
+}
\ No newline at end of file
diff --git a/client/lang/src/nb.js b/client/lang/src/nb.js
new file mode 100644
index 0000000..3aa5ae1
--- /dev/null
+++ b/client/lang/src/nb.js
@@ -0,0 +1,16 @@
+{
+    "GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.",
+    "UserForms.ADDED_FIELD": "Added new field",
+    "UserForms.ADDED_OPTION": "Added option",
+    "UserForms.ADDING_FIELD": "Adding new field",
+    "UserForms.ADDING_OPTION": "Adding option",
+    "UserForms.ADDING_RULE": "Adding rule",
+    "UserForms.CONFIRM_DELETE_ALL_SUBMISSIONS": "All submissions will be permanently removed. Continue?",
+    "UserForms.ERROR_CONTAINER_HEADER": "Please correct the following errors and try again:",
+    "UserForms.ERROR_CREATING_FIELD": "Error creating field",
+    "UserForms.ERROR_CREATING_OPTION": "Error creating option",
+    "UserForms.HIDE_OPTIONS": "Hide options",
+    "UserForms.LEAVE_CONFIRMATION": "You have unsaved changes!",
+    "UserForms.REMOVED_OPTION": "Removed option",
+    "UserForms.SHOW_OPTIONS": "Show options"
+}
\ No newline at end of file
diff --git a/client/lang/src/nl.js b/client/lang/src/nl.js
new file mode 100644
index 0000000..3aa5ae1
--- /dev/null
+++ b/client/lang/src/nl.js
@@ -0,0 +1,16 @@
+{
+    "GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.",
+    "UserForms.ADDED_FIELD": "Added new field",
+    "UserForms.ADDED_OPTION": "Added option",
+    "UserForms.ADDING_FIELD": "Adding new field",
+    "UserForms.ADDING_OPTION": "Adding option",
+    "UserForms.ADDING_RULE": "Adding rule",
+    "UserForms.CONFIRM_DELETE_ALL_SUBMISSIONS": "All submissions will be permanently removed. Continue?",
+    "UserForms.ERROR_CONTAINER_HEADER": "Please correct the following errors and try again:",
+    "UserForms.ERROR_CREATING_FIELD": "Error creating field",
+    "UserForms.ERROR_CREATING_OPTION": "Error creating option",
+    "UserForms.HIDE_OPTIONS": "Hide options",
+    "UserForms.LEAVE_CONFIRMATION": "You have unsaved changes!",
+    "UserForms.REMOVED_OPTION": "Removed option",
+    "UserForms.SHOW_OPTIONS": "Show options"
+}
\ No newline at end of file
diff --git a/client/lang/src/pl.js b/client/lang/src/pl.js
new file mode 100644
index 0000000..3aa5ae1
--- /dev/null
+++ b/client/lang/src/pl.js
@@ -0,0 +1,16 @@
+{
+    "GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.",
+    "UserForms.ADDED_FIELD": "Added new field",
+    "UserForms.ADDED_OPTION": "Added option",
+    "UserForms.ADDING_FIELD": "Adding new field",
+    "UserForms.ADDING_OPTION": "Adding option",
+    "UserForms.ADDING_RULE": "Adding rule",
+    "UserForms.CONFIRM_DELETE_ALL_SUBMISSIONS": "All submissions will be permanently removed. Continue?",
+    "UserForms.ERROR_CONTAINER_HEADER": "Please correct the following errors and try again:",
+    "UserForms.ERROR_CREATING_FIELD": "Error creating field",
+    "UserForms.ERROR_CREATING_OPTION": "Error creating option",
+    "UserForms.HIDE_OPTIONS": "Hide options",
+    "UserForms.LEAVE_CONFIRMATION": "You have unsaved changes!",
+    "UserForms.REMOVED_OPTION": "Removed option",
+    "UserForms.SHOW_OPTIONS": "Show options"
+}
\ No newline at end of file
diff --git a/client/lang/src/pt.js b/client/lang/src/pt.js
new file mode 100644
index 0000000..3aa5ae1
--- /dev/null
+++ b/client/lang/src/pt.js
@@ -0,0 +1,16 @@
+{
+    "GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.",
+    "UserForms.ADDED_FIELD": "Added new field",
+    "UserForms.ADDED_OPTION": "Added option",
+    "UserForms.ADDING_FIELD": "Adding new field",
+    "UserForms.ADDING_OPTION": "Adding option",
+    "UserForms.ADDING_RULE": "Adding rule",
+    "UserForms.CONFIRM_DELETE_ALL_SUBMISSIONS": "All submissions will be permanently removed. Continue?",
+    "UserForms.ERROR_CONTAINER_HEADER": "Please correct the following errors and try again:",
+    "UserForms.ERROR_CREATING_FIELD": "Error creating field",
+    "UserForms.ERROR_CREATING_OPTION": "Error creating option",
+    "UserForms.HIDE_OPTIONS": "Hide options",
+    "UserForms.LEAVE_CONFIRMATION": "You have unsaved changes!",
+    "UserForms.REMOVED_OPTION": "Removed option",
+    "UserForms.SHOW_OPTIONS": "Show options"
+}
\ No newline at end of file
diff --git a/client/lang/src/pt_BR.js b/client/lang/src/pt_BR.js
new file mode 100644
index 0000000..3aa5ae1
--- /dev/null
+++ b/client/lang/src/pt_BR.js
@@ -0,0 +1,16 @@
+{
+    "GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.",
+    "UserForms.ADDED_FIELD": "Added new field",
+    "UserForms.ADDED_OPTION": "Added option",
+    "UserForms.ADDING_FIELD": "Adding new field",
+    "UserForms.ADDING_OPTION": "Adding option",
+    "UserForms.ADDING_RULE": "Adding rule",
+    "UserForms.CONFIRM_DELETE_ALL_SUBMISSIONS": "All submissions will be permanently removed. Continue?",
+    "UserForms.ERROR_CONTAINER_HEADER": "Please correct the following errors and try again:",
+    "UserForms.ERROR_CREATING_FIELD": "Error creating field",
+    "UserForms.ERROR_CREATING_OPTION": "Error creating option",
+    "UserForms.HIDE_OPTIONS": "Hide options",
+    "UserForms.LEAVE_CONFIRMATION": "You have unsaved changes!",
+    "UserForms.REMOVED_OPTION": "Removed option",
+    "UserForms.SHOW_OPTIONS": "Show options"
+}
\ No newline at end of file
diff --git a/client/lang/src/ru.js b/client/lang/src/ru.js
new file mode 100644
index 0000000..3aa5ae1
--- /dev/null
+++ b/client/lang/src/ru.js
@@ -0,0 +1,16 @@
+{
+    "GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.",
+    "UserForms.ADDED_FIELD": "Added new field",
+    "UserForms.ADDED_OPTION": "Added option",
+    "UserForms.ADDING_FIELD": "Adding new field",
+    "UserForms.ADDING_OPTION": "Adding option",
+    "UserForms.ADDING_RULE": "Adding rule",
+    "UserForms.CONFIRM_DELETE_ALL_SUBMISSIONS": "All submissions will be permanently removed. Continue?",
+    "UserForms.ERROR_CONTAINER_HEADER": "Please correct the following errors and try again:",
+    "UserForms.ERROR_CREATING_FIELD": "Error creating field",
+    "UserForms.ERROR_CREATING_OPTION": "Error creating option",
+    "UserForms.HIDE_OPTIONS": "Hide options",
+    "UserForms.LEAVE_CONFIRMATION": "You have unsaved changes!",
+    "UserForms.REMOVED_OPTION": "Removed option",
+    "UserForms.SHOW_OPTIONS": "Show options"
+}
\ No newline at end of file
diff --git a/client/lang/src/sk_SK.js b/client/lang/src/sk_SK.js
new file mode 100644
index 0000000..3aa5ae1
--- /dev/null
+++ b/client/lang/src/sk_SK.js
@@ -0,0 +1,16 @@
+{
+    "GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.",
+    "UserForms.ADDED_FIELD": "Added new field",
+    "UserForms.ADDED_OPTION": "Added option",
+    "UserForms.ADDING_FIELD": "Adding new field",
+    "UserForms.ADDING_OPTION": "Adding option",
+    "UserForms.ADDING_RULE": "Adding rule",
+    "UserForms.CONFIRM_DELETE_ALL_SUBMISSIONS": "All submissions will be permanently removed. Continue?",
+    "UserForms.ERROR_CONTAINER_HEADER": "Please correct the following errors and try again:",
+    "UserForms.ERROR_CREATING_FIELD": "Error creating field",
+    "UserForms.ERROR_CREATING_OPTION": "Error creating option",
+    "UserForms.HIDE_OPTIONS": "Hide options",
+    "UserForms.LEAVE_CONFIRMATION": "You have unsaved changes!",
+    "UserForms.REMOVED_OPTION": "Removed option",
+    "UserForms.SHOW_OPTIONS": "Show options"
+}
\ No newline at end of file
diff --git a/client/lang/src/sl.js b/client/lang/src/sl.js
new file mode 100644
index 0000000..3aa5ae1
--- /dev/null
+++ b/client/lang/src/sl.js
@@ -0,0 +1,16 @@
+{
+    "GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.",
+    "UserForms.ADDED_FIELD": "Added new field",
+    "UserForms.ADDED_OPTION": "Added option",
+    "UserForms.ADDING_FIELD": "Adding new field",
+    "UserForms.ADDING_OPTION": "Adding option",
+    "UserForms.ADDING_RULE": "Adding rule",
+    "UserForms.CONFIRM_DELETE_ALL_SUBMISSIONS": "All submissions will be permanently removed. Continue?",
+    "UserForms.ERROR_CONTAINER_HEADER": "Please correct the following errors and try again:",
+    "UserForms.ERROR_CREATING_FIELD": "Error creating field",
+    "UserForms.ERROR_CREATING_OPTION": "Error creating option",
+    "UserForms.HIDE_OPTIONS": "Hide options",
+    "UserForms.LEAVE_CONFIRMATION": "You have unsaved changes!",
+    "UserForms.REMOVED_OPTION": "Removed option",
+    "UserForms.SHOW_OPTIONS": "Show options"
+}
\ No newline at end of file
diff --git a/client/lang/src/sl_SI.js b/client/lang/src/sl_SI.js
new file mode 100644
index 0000000..3aa5ae1
--- /dev/null
+++ b/client/lang/src/sl_SI.js
@@ -0,0 +1,16 @@
+{
+    "GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.",
+    "UserForms.ADDED_FIELD": "Added new field",
+    "UserForms.ADDED_OPTION": "Added option",
+    "UserForms.ADDING_FIELD": "Adding new field",
+    "UserForms.ADDING_OPTION": "Adding option",
+    "UserForms.ADDING_RULE": "Adding rule",
+    "UserForms.CONFIRM_DELETE_ALL_SUBMISSIONS": "All submissions will be permanently removed. Continue?",
+    "UserForms.ERROR_CONTAINER_HEADER": "Please correct the following errors and try again:",
+    "UserForms.ERROR_CREATING_FIELD": "Error creating field",
+    "UserForms.ERROR_CREATING_OPTION": "Error creating option",
+    "UserForms.HIDE_OPTIONS": "Hide options",
+    "UserForms.LEAVE_CONFIRMATION": "You have unsaved changes!",
+    "UserForms.REMOVED_OPTION": "Removed option",
+    "UserForms.SHOW_OPTIONS": "Show options"
+}
\ No newline at end of file
diff --git a/client/lang/src/sr.js b/client/lang/src/sr.js
new file mode 100644
index 0000000..3aa5ae1
--- /dev/null
+++ b/client/lang/src/sr.js
@@ -0,0 +1,16 @@
+{
+    "GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.",
+    "UserForms.ADDED_FIELD": "Added new field",
+    "UserForms.ADDED_OPTION": "Added option",
+    "UserForms.ADDING_FIELD": "Adding new field",
+    "UserForms.ADDING_OPTION": "Adding option",
+    "UserForms.ADDING_RULE": "Adding rule",
+    "UserForms.CONFIRM_DELETE_ALL_SUBMISSIONS": "All submissions will be permanently removed. Continue?",
+    "UserForms.ERROR_CONTAINER_HEADER": "Please correct the following errors and try again:",
+    "UserForms.ERROR_CREATING_FIELD": "Error creating field",
+    "UserForms.ERROR_CREATING_OPTION": "Error creating option",
+    "UserForms.HIDE_OPTIONS": "Hide options",
+    "UserForms.LEAVE_CONFIRMATION": "You have unsaved changes!",
+    "UserForms.REMOVED_OPTION": "Removed option",
+    "UserForms.SHOW_OPTIONS": "Show options"
+}
\ No newline at end of file
diff --git a/client/lang/src/tr.js b/client/lang/src/tr.js
new file mode 100644
index 0000000..3aa5ae1
--- /dev/null
+++ b/client/lang/src/tr.js
@@ -0,0 +1,16 @@
+{
+    "GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.",
+    "UserForms.ADDED_FIELD": "Added new field",
+    "UserForms.ADDED_OPTION": "Added option",
+    "UserForms.ADDING_FIELD": "Adding new field",
+    "UserForms.ADDING_OPTION": "Adding option",
+    "UserForms.ADDING_RULE": "Adding rule",
+    "UserForms.CONFIRM_DELETE_ALL_SUBMISSIONS": "All submissions will be permanently removed. Continue?",
+    "UserForms.ERROR_CONTAINER_HEADER": "Please correct the following errors and try again:",
+    "UserForms.ERROR_CREATING_FIELD": "Error creating field",
+    "UserForms.ERROR_CREATING_OPTION": "Error creating option",
+    "UserForms.HIDE_OPTIONS": "Hide options",
+    "UserForms.LEAVE_CONFIRMATION": "You have unsaved changes!",
+    "UserForms.REMOVED_OPTION": "Removed option",
+    "UserForms.SHOW_OPTIONS": "Show options"
+}
\ No newline at end of file
diff --git a/lang/ar.yml b/lang/ar.yml
index bcdec4e..f773889 100644
--- a/lang/ar.yml
+++ b/lang/ar.yml
@@ -15,7 +15,7 @@ ar:
     SINGULARNAME: 'حقل استمارة قابل للتحرير'
     VALIDATION: المصادقة
   SilverStripe\UserForms\Model\EditableFormField\EditableCheckbox:
-    PLURALNAME: 'مربعات لوضع إشارة'
+    PLURALNAME: مربعات لوضع إشارة
     SINGULARNAME: 'حقل ذات مربع لوضع إشارة'
   SilverStripe\UserForms\Model\EditableFormField\EditableCheckboxGroupField:
     PLURALNAME: 'مجموعات ذات مربعات لوضع إشارة'
@@ -27,7 +27,7 @@ ar:
     PLURALNAME: 'حقول التاريخ'
     SINGULARNAME: 'حقل التاريخ'
   SilverStripe\UserForms\Model\EditableFormField\EditableDropdown:
-    PLURALNAME: 'القائمات المنسدلة للروابط'
+    PLURALNAME: القائمات المنسدلة للروابط
     SINGULARNAME: 'حقل القائمة المنسدلة'
   SilverStripe\UserForms\Model\EditableFormField\EditableEmailField:
     PLURALNAME: 'حقول البريد الإلكتروني'
@@ -75,7 +75,7 @@ ar:
     SINGULARNAME: 'حقل الاستمارة الذي تمّ تقديمه'
   SilverStripe\UserForms\Model\UserDefinedForm:
     DESCRIPTION: 'يضيف استمارة مخصصة.'
-    EMAILADDRESS: 'البريد الإلكتروني'
+    EMAILADDRESS: البريد الإلكتروني
     EMAILBODY: هيئة
     EMAILFROM: من
     EMAILSUBJECT: 'موضوع البريد الإلكتروني'
diff --git a/lang/bg.yml b/lang/bg.yml
new file mode 100644
index 0000000..79bfcf7
--- /dev/null
+++ b/lang/bg.yml
@@ -0,0 +1 @@
+bg: {}
diff --git a/lang/de.yml b/lang/de.yml
new file mode 100644
index 0000000..9dfb631
--- /dev/null
+++ b/lang/de.yml
@@ -0,0 +1 @@
+de: {}
diff --git a/lang/de_DE.yml b/lang/de_DE.yml
index aafa6ba..41d16d3 100644
--- a/lang/de_DE.yml
+++ b/lang/de_DE.yml
@@ -1,10 +1,4 @@
 de_DE:
-  SilverStripe\UserForms\Model\EditableFormField:
-    TYPE_EMPTY: 'Wähle Feld-Typ'
-  SilverStripe\UserForms\Model\EditableTextField:
-    MINMAXLENGTHCHECK: 'Minimale Länge sollte kleiner als maximale Länge sein'
-  SilverStripe\UserForms\Model\EditableFileField:
-    SELECTUPLOADFOLDER: 'Ordner für den Upload auswählen'
   SilverStripe\UserForms:
     ADDEMAILRECIPIENT: 'E-Mail-Empfänger hinzufügen'
     CLEARBUTTON: Löschen
@@ -27,7 +21,7 @@ de_DE:
     ADD_FIELD: 'Feld hinzufügen'
     ADD_FIELD_GROUP: 'Gruppe hinzufügen'
     ADD_PAGE_BREAK: 'Seite hinzufügen'
-    FORMFIELDS: Formularfelder
+    FORMFIELDS: 'Formularfelder'
   SilverStripe\UserForms\Form\UserFormsGridFieldFilterHeader:
     FILTER: Filter
     FILTERSUBMISSIONS: 'Einreichungen filtern..'
@@ -42,7 +36,7 @@ de_DE:
     CUSTOMERROR: 'Eigene Fehlermeldung'
     CUSTOMOPTIONS: Optionen
     CUSTOMRULES: 'Eigene Regeln'
-    DEFAULT: Standardwert
+    DEFAULT: 'Standardwert'
     DEFAULTTOTODAY: 'Standardmäßig auf heute'
     DISPLAYIF: 'Sichtbarkeit ändern wenn'
     EXTRACLASS_MULTIPLE: 'Mehrere CSS-Klassen mit Leerzeichen trennen'
@@ -53,7 +47,7 @@ de_DE:
     GROUP: Gruppe
     INITIALVISIBILITY: 'Interne Sichtbarkeit'
     NAME: Name
-    'NO': Nein
+    'NO': 'Nein'
     PLACEHOLDER: Platzhalter
     PLURALNAME: 'Editierbare Formularfelder'
     REQUIRED: 'Pflichtfeld?'
@@ -62,8 +56,9 @@ de_DE:
     SINGULARNAME: 'Editierbares Formularfeld'
     TITLE: Titel
     TYPE: Typ
+    TYPE_EMPTY: 'Wähle Feld-Typ'
     VALIDATION: Validierung
-    'YES': Ja
+    'YES': 'Ja'
   SilverStripe\UserForms\Model\EditableFormField\EditableCheckbox:
     PLURALNAME: Checkboxen
     SINGULARNAME: 'Checkbox Feld'
@@ -71,34 +66,35 @@ de_DE:
     PLURALNAME: 'Checkbox Gruppen'
     SINGULARNAME: 'Checkbox Gruppe'
   SilverStripe\UserForms\Model\EditableFormField\EditableCountryDropdownField:
-    DEFAULT: Standardwert
+    DEFAULT: 'Standardwert'
     EMPTY_STRING: 'Leere Zeichenkette'
-    PLURALNAME: Länder-Dropdowns
-    SINGULARNAME: Länder-Dropdown
+    PLURALNAME: 'Länder-Dropdowns'
+    SINGULARNAME: 'Länder-Dropdown'
   SilverStripe\UserForms\Model\EditableFormField\EditableDateField:
-    PLURALNAME: Datumsfelder
-    SINGULARNAME: Datumsfeld
+    PLURALNAME: 'Datumsfelder'
+    SINGULARNAME: 'Datumsfeld'
   SilverStripe\UserForms\Model\EditableFormField\EditableDropdown:
     PLURALNAME: Dropdowns
     SINGULARNAME: 'Dropdown Feld'
   SilverStripe\UserForms\Model\EditableFormField\EditableEmailField:
-    PLURALNAME: E-Mail-Felder
-    SINGULARNAME: E-Mail-Feld
+    PLURALNAME: 'E-Mail-Felder'
+    SINGULARNAME: 'E-Mail-Feld'
   SilverStripe\UserForms\Model\EditableFormField\EditableFieldGroup:
     PLURALNAME: 'Editierbare Feld-Gruppen'
     SINGULARNAME: 'Editierbare Feld-Gruppe'
   SilverStripe\UserForms\Model\EditableFormField\EditableFieldGroupEnd:
     FIELD_GROUP_START: 'Gruppe {group}'
   SilverStripe\UserForms\Model\EditableFormField\EditableFileField:
-    PLURALNAME: Dateiupload-Felder
-    SINGULARNAME: Dateiupload-Feld
+    PLURALNAME: 'Dateiupload-Felder'
+    SELECTUPLOADFOLDER: 'Ordner für den Upload auswählen'
+    SINGULARNAME: 'Dateiupload-Feld'
   SilverStripe\UserForms\Model\EditableFormField\EditableFormHeading:
     LEVEL: 'Überschriftsebene auswählen'
     PLURALNAME: Überschriften
     SINGULARNAME: Überschrift
   SilverStripe\UserForms\Model\EditableFormField\EditableFormStep:
-    PLURALNAME: Seiten
-    SINGULARNAME: Seiten
+    PLURALNAME: 'Seiten'
+    SINGULARNAME: 'Seiten'
     STEP_NEXT: Nächste
     STEP_PREV: Vorherige
     STEP_TITLE: 'Seite {page}'
@@ -107,8 +103,8 @@ de_DE:
     CONTENT: HTML
     HIDEFROMREPORT: 'Nicht in Berichten anzeigen?'
     HIDELABEL: '''Titel''-Label in Frontend verbergen?'
-    PLURALNAME: HTML-Blöcke
-    SINGULARNAME: HTML-Block
+    PLURALNAME: 'HTML-Blöcke'
+    SINGULARNAME: 'HTML-Block'
   SilverStripe\UserForms\Model\EditableFormField\EditableMemberListField:
     PLURALNAME: 'Member List Felder'
     SINGULARNAME: 'Member List Feld'
@@ -121,33 +117,34 @@ de_DE:
     VALUE: Wert
   SilverStripe\UserForms\Model\EditableFormField\EditableNumericField:
     ORDER_WARNING: 'Minimale Länge sollte unter maximaler Länge liegen.'
-    PLURALNAME: Zahlenfelder
+    PLURALNAME: 'Zahlenfelder'
     RANGE: 'Erlaubte nummerische Range'
     RANGE_TO: an
-    SINGULARNAME: Zahlenfeld
+    SINGULARNAME: 'Zahlenfeld'
   SilverStripe\UserForms\Model\EditableFormField\EditableOption:
     PLURALNAME: 'Editierbare Optionen'
     SINGULARNAME: 'Editierbare Option'
   SilverStripe\UserForms\Model\EditableFormField\EditableRadioField:
-    PLURALNAME: Radio-Groups
-    SINGULARNAME: Radio-Button
+    PLURALNAME: 'Radio-Groups'
+    SINGULARNAME: 'Radio-Button'
   SilverStripe\UserForms\Model\EditableFormField\EditableTextField:
     AUTOCOMPLETE: Auto-Vervollständigung
     MAX_LENGTH: 'Maximale Textlänge'
+    MINMAXLENGTHCHECK: 'Minimale Länge sollte kleiner als maximale Länge sein'
     MIN_LENGTH: 'Minimale Textlänge'
     NUMBERROWS: 'Anzahl der Zeilen'
     NUMBERROWS_DESCRIPTION: 'Felder mit mehr als einer Zeile werden als Text-Area generiert'
-    PLURALNAME: Textfelder
+    PLURALNAME: 'Textfelder'
     RANGE_TO: an
-    SINGULARNAME: Textfeld
-    TEXTLENGTH: Textlänge
+    SINGULARNAME: 'Textfeld'
+    TEXTLENGTH: 'Textlänge'
   SilverStripe\UserForms\Model\Recipient\EmailRecipient:
     CUSTOMRULESTAB: 'Eigene Regeln'
-    EMAILCONTENTTAB: E-Mail-Inhalt
-    EMAILDETAILSTAB: E-Mail-Details
+    EMAILCONTENTTAB: 'E-Mail-Inhalt'
+    EMAILDETAILSTAB: 'E-Mail-Details'
     EMAILFROMREQUIRED: 'Absender-Adresse ist erforderlich'
     EMAILTOREQUIRED: 'Empfänger-Adresse ist erforderlich'
-    PLURALNAME: E-Mail-Empfänger
+    PLURALNAME: 'E-Mail-Empfänger'
     SINGULARNAME: 'Anpassbares Formular E-Mail Empfänger'
   SilverStripe\UserForms\Model\Recipient\EmailRecipientCondition:
     PLURALNAME: 'Bedingungen für E-Mail-Empfänger'
@@ -169,15 +166,15 @@ de_DE:
     EMAILADDRESS: E-Mail
     EMAILBODY: Inhalt
     EMAILFROM: Von
-    EMAILSUBJECT: Betreff
-    EMAILTEMPLATE: E-Mail-Template
+    EMAILSUBJECT: 'Betreff'
+    EMAILTEMPLATE: 'E-Mail-Template'
     EmailFromContent: 'Mit der Absender-Adresse können Sie bestimmen, von welcher Adresse aus die E-Mail versendet wird. Meistens ist es eine Adresse der selben Domain wie die Webseite. Die Webseite meineseite.com benötigt z.B. irgendwas@meineseite.com. Sie können zusätzlich jede Adresse als "Antworten an" eintragen.'
     FROMADDRESS: 'E-Mail versendet von'
     HIDEFORMDATA: 'Formulardaten in E-Mail nicht anzeigen'
     ORSELECTAFIELDTOUSEASFROM: '.. oder ein Feld für Antwort-Adresse wählen'
     ORSELECTAFIELDTOUSEASTO: '.. oder wähle ein Feld als Empfänger-Adresse'
     PLURALNAME: 'Benutzerdefinierte Formulare'
-    PREVIEW_EMAIL: E-Mail-Vorschau
+    PREVIEW_EMAIL: 'E-Mail-Vorschau'
     PREVIEW_EMAIL_DESCRIPTION: 'Hinweis: Ungespeicherte Änderungen werde nicht in der Vorschau angezeigt.'
     PREVIEW_EMAIL_UNAVAILABLE: 'Sie können die Vorschau dieser E-Mail ansehen, wenn der Empfänger gespeichert wurde.'
     REPLYADDRESS: 'E-Mail-Adresse für "Antworten an"'
@@ -185,7 +182,7 @@ de_DE:
     SELECTAFIELDTOSETSUBJECT: '.. oder ein Feld als Betreff wählen'
     SENDEMAILTO: 'E-Mail senden an'
     SENDEMAILTO_DESCRIPTION: 'Sie können mehrere E-Mail-Adressen kommasepariert eingeben'
-    SENDIF: Versand-Bedingung
+    SENDIF: 'Versand-Bedingung'
     SENDIFAND: 'Alle Bedingungen sind wahr'
     SENDIFOR: 'Beliebige Bedingung ist wahr'
     SENDPLAIN: 'E-Mail als Text versenden (HTML wird entfernt)'
diff --git a/lang/en.yml b/lang/en.yml
index af2e20a..38b90e7 100644
--- a/lang/en.yml
+++ b/lang/en.yml
@@ -1,6 +1,4 @@
 en:
-  SilverStripe\UserForms\Model\SilverStripe\UserForms\Model\EditableFileField:
-    SELECTUPLOADFOLDER: 'Select upload folder'
   SilverStripe\CMS\Model\SiteTree:
     TABMAIN: Main
   SilverStripe\UserForms:
@@ -149,6 +147,7 @@ en:
     PLURALS:
       one: 'A File Upload Field'
       other: '{count} File Upload Fields'
+    SELECTUPLOADFOLDER: 'Select upload folder'
     SINGULARNAME: 'File Upload Field'
   SilverStripe\UserForms\Model\EditableFormField\EditableFormHeading:
     LEVEL: 'Select Heading Level'
diff --git a/lang/eo.yml b/lang/eo.yml
index 6e39dc4..98bc578 100644
--- a/lang/eo.yml
+++ b/lang/eo.yml
@@ -1,10 +1,4 @@
 eo:
-  SilverStripe\UserForms\Model\EditableFormField:
-    TYPE_EMPTY: 'Elekti tipon de kampo'
-  SilverStripe\UserForms\Model\EditableTextField:
-    MINMAXLENGTHCHECK: 'La minimuma longo devus esti malpli ol la maksimuma longo.'
-  SilverStripe\UserForms\Model\EditableFileField:
-    SELECTUPLOADFOLDER: 'Elekti alŝutan dosierujon'
   SilverStripe\CMS\Model\SiteTree:
     TABMAIN: Ĉefa
   SilverStripe\UserForms:
@@ -74,7 +68,7 @@ eo:
     INITIALVISIBILITY: 'Komenca videbleco'
     MERGEFIELDNAME: 'Kunfandi kapon'
     NAME: Nomo
-    'NO': Ne
+    'NO': 'Ne'
     PLACEHOLDER: Lokokupilo
     PLURALNAME: 'Redakteblaj formularaj kampoj'
     PLURALS:
@@ -87,8 +81,9 @@ eo:
     SINGULARNAME: 'Redaktebla formulara kampo'
     TITLE: Titolo
     TYPE: Tipo
+    TYPE_EMPTY: 'Elekti tipon de kampo'
     VALIDATION: Validigo
-    'YES': Jes
+    'YES': 'Jes'
   SilverStripe\UserForms\Model\EditableFormField\EditableCheckbox:
     PLURALNAME: Markobutonoj
     PLURALS:
@@ -151,6 +146,7 @@ eo:
     PLURALS:
       one: 'Unu kampo por dosiera alŝuto'
       other: '{count} kampoj por dosiera alŝuto'
+    SELECTUPLOADFOLDER: 'Elekti alŝutan dosierujon'
     SINGULARNAME: 'Kampo por dosiera alŝuto'
   SilverStripe\UserForms\Model\EditableFormField\EditableFormHeading:
     LEVEL: 'Elekti titolan nivelon'
@@ -160,11 +156,11 @@ eo:
       other: '{count} titoloj'
     SINGULARNAME: Titolo
   SilverStripe\UserForms\Model\EditableFormField\EditableFormStep:
-    PLURALNAME: Paĝosaltoj
+    PLURALNAME: 'Paĝosaltoj'
     PLURALS:
       one: 'Unu paĝosalto'
       other: '{count} paĝosaltoj'
-    SINGULARNAME: Paĝosalto
+    SINGULARNAME: 'Paĝosalto'
     STEP_NEXT: Sekva
     STEP_PREV: Antaŭa
     STEP_TITLE: 'Paĝo {paĝo}'
@@ -173,11 +169,11 @@ eo:
     CONTENT: HTML
     HIDEFROMREPORT: 'Ĉu kaŝi de raportoj?'
     HIDELABEL: 'Ĉu kaŝi etikedon ''Titolo'' en fasado?'
-    PLURALNAME: HTML-blokoj
+    PLURALNAME: 'HTML-blokoj'
     PLURALS:
       one: 'Unu HTML-bloko'
       other: '{count} HTML-blokoj'
-    SINGULARNAME: HTML-bloko
+    SINGULARNAME: 'HTML-bloko'
   SilverStripe\UserForms\Model\EditableFormField\EditableMemberListField:
     PLURALNAME: 'Kampoj por membrolisto'
     PLURALS:
@@ -216,9 +212,10 @@ eo:
       other: '{count} radiobutonaj grupoj'
     SINGULARNAME: 'Radiobutona grupo'
   SilverStripe\UserForms\Model\EditableFormField\EditableTextField:
-    AUTOCOMPLETE: 'Aŭtomate kompletigi'
+    AUTOCOMPLETE: Aŭtomate kompletigi
     AUTOCOMPLETE_DESCRIPTION: 'Subtenataj TTT-legiloj provos aŭtomate plenigi ĉi tiun kampon per uzantinformo, uzu ĝin por agordi la enan valoron'
     MAX_LENGTH: 'Maksimuma longo de teksto'
+    MINMAXLENGTHCHECK: 'La minimuma longo devus esti malpli ol la maksimuma longo.'
     MIN_LENGTH: 'Minimuma longo de teksto'
     NUMBERROWS: 'Nombro da vicoj'
     NUMBERROWS_DESCRIPTION: 'Kampoj kun pli ol unu vico generiĝos kiel tekstareo'
diff --git a/lang/es.yml b/lang/es.yml
new file mode 100644
index 0000000..6497549
--- /dev/null
+++ b/lang/es.yml
@@ -0,0 +1 @@
+es: {}
diff --git a/lang/es_ES.yml b/lang/es_ES.yml
index 1eeb040..b827afc 100644
--- a/lang/es_ES.yml
+++ b/lang/es_ES.yml
@@ -1,6 +1,4 @@
 es_ES:
-  SilverStripe\UserForms\Model\EditableFileField:
-    SELECTUPLOADFOLDER: 'Seleccionar carpeta de carga'
   SilverStripe\UserForms\Form\UserFormsGridFieldFilterHeader:
     FILTERSUBMISSIONS: 'Filtrar envíos.'
     WHEREVALUEIS: 'donde el valor es'
@@ -20,9 +18,9 @@ es_ES:
     REQUIRED: 'Este campo es necesario para este formulario y no puede ser borrado'
     SINGULARNAME: 'Campo de formulario editable'
     VALIDATION: Validación
-    'YES': Sí
+    'YES': 'Sí'
   SilverStripe\UserForms\Model\EditableFormField\EditableCheckbox:
-    PLURALNAME: 'Casillas de verificación'
+    PLURALNAME: Casillas de verificación
     SINGULARNAME: 'Campo de casillas de verificación'
   SilverStripe\UserForms\Model\EditableFormField\EditableCheckboxGroupField:
     PLURALNAME: 'Grupos de casillas de verificación'
@@ -34,7 +32,7 @@ es_ES:
     PLURALNAME: 'Campos de fecha'
     SINGULARNAME: 'Campo de fecha'
   SilverStripe\UserForms\Model\EditableFormField\EditableDropdown:
-    PLURALNAME: 'Listas desplegables'
+    PLURALNAME: Listas desplegables
   SilverStripe\UserForms\Model\EditableFormField\EditableEmailField:
     PLURALNAME: 'Correos electrónicos'
     SINGULARNAME: 'Campo de correo electrónico'
@@ -44,6 +42,7 @@ es_ES:
     FIELD_GROUP_START: 'Grupo {group}'
   SilverStripe\UserForms\Model\EditableFormField\EditableFileField:
     PLURALNAME: 'Campos subir archivo'
+    SELECTUPLOADFOLDER: 'Seleccionar carpeta de carga'
     SINGULARNAME: 'Campo subir archivo'
   SilverStripe\UserForms\Model\EditableFormField\EditableFormHeading:
     LEVEL: 'Selecionar el nivel del encabezado'
diff --git a/lang/et.yml b/lang/et.yml
new file mode 100644
index 0000000..8ccab4f
--- /dev/null
+++ b/lang/et.yml
@@ -0,0 +1 @@
+et: {}
diff --git a/lang/et_EE.yml b/lang/et_EE.yml
index f48a956..a2da8dd 100644
--- a/lang/et_EE.yml
+++ b/lang/et_EE.yml
@@ -1,10 +1,10 @@
 et_EE:
   SilverStripe\UserForms\Model\EditableFormField:
     CUSTOMRULES: 'Custom Rules'
-    'NO': Ei
+    'NO': 'Ei'
     REQUIRED: 'See väli on vormis vajalik ja seda ei saa kustutada'
     VALIDATION: Validation
-    'YES': Jah
+    'YES': 'Jah'
   SilverStripe\UserForms\Model\EditableFormField\EditableCountryDropdownField:
     PLURALNAME: 'Country Dropdowns'
     SINGULARNAME: 'Country Dropdown'
diff --git a/lang/fa.yml b/lang/fa.yml
new file mode 100644
index 0000000..ab29e2f
--- /dev/null
+++ b/lang/fa.yml
@@ -0,0 +1 @@
+fa: {}
diff --git a/lang/fa_IR.yml b/lang/fa_IR.yml
index a0b3dfc..91f51a5 100644
--- a/lang/fa_IR.yml
+++ b/lang/fa_IR.yml
@@ -9,7 +9,7 @@ fa_IR:
     REQUIRED: 'آیا این فیلد الزامی است؟'
     RIGHTTITLE: 'عنوان سمت راست'
     TITLE: عنوان
-    'YES': بله
+    'YES': 'بله'
   SilverStripe\UserForms\Model\EditableFormField\EditableDateField:
     PLURALNAME: 'فیلدهای تاریخ'
     SINGULARNAME: 'فیلد تاریخ'
@@ -40,4 +40,4 @@ fa_IR:
     EMAILTEMPLATE: 'قالب پست الکترونیک'
     PLURALNAME: 'صفحه اصلی'
     SENDEMAILTO: 'ارسال ایمیل به'
-    SUBMITBUTTON: 'ثبت کردن'
+    SUBMITBUTTON: ثبت کردن
diff --git a/lang/fi_FI.yml b/lang/fi_FI.yml
index b0bee67..39c95be 100644
--- a/lang/fi_FI.yml
+++ b/lang/fi_FI.yml
@@ -1,6 +1,4 @@
 fi_FI:
-  SilverStripe\UserForms\Model\EditableFileField:
-    SELECTUPLOADFOLDER: 'Valitse siirtokansio'
   SilverStripe\CMS\Model\SiteTree:
     TABMAIN: Päätaso
   SilverStripe\UserForms:
@@ -14,9 +12,11 @@ fi_FI:
     ADD_FIELD: 'Lisää kenttä'
     ADD_FIELD_GROUP: 'Lisää kenttäryhmä'
     ADD_PAGE_BREAK: 'Lisää sivunvaihto'
-    FORMFIELDS: Lomakekentät
+    FORMFIELDS: 'Lomakekentät'
   SilverStripe\UserForms\Model\EditableFormField:
     REQUIRED_DESCRIPTION: 'Huomioi, että ehdolliset kentät eivät voi olla pakollisia'
+  SilverStripe\UserForms\Model\EditableFormField\EditableFileField:
+    SELECTUPLOADFOLDER: 'Valitse siirtokansio'
   SilverStripe\UserForms\Model\Submission\SubmittedFileField:
     DOWNLOADFILE: 'Lataa tiedosto'
   SilverStripe\UserForms\Model\UserDefinedForm:
diff --git a/lang/fr.yml b/lang/fr.yml
new file mode 100644
index 0000000..2b6c926
--- /dev/null
+++ b/lang/fr.yml
@@ -0,0 +1 @@
+fr: {}
diff --git a/lang/hr.yml b/lang/hr.yml
new file mode 100644
index 0000000..3514438
--- /dev/null
+++ b/lang/hr.yml
@@ -0,0 +1 @@
+hr: {}
diff --git a/lang/id.yml b/lang/id.yml
index ea79a0e..be50a39 100644
--- a/lang/id.yml
+++ b/lang/id.yml
@@ -1,26 +1,4 @@
 id:
-  CustomRule:
-    BLANK: Kosong
-    DELETE: Hapus
-    GREATERTHAN: 'Nilai Lebih Besar Dari'
-    GREATERTHANEQUAL: 'Nilai Lebih Besar atau sama'
-    HIDETHISFIELD: 'Sembunyikan Ruas Ini'
-    LESSTHAN: 'Nilai Kurang Dari'
-    NOTBLANK: 'Tidak Kosong'
-    VALUE: Nilai
-    WHEN: Ketika
-  SilverStripe\CMS\Model\SiteTree:
-    PLURALNAME: Halaman
-    SINGULARNAME: Halaman
   SilverStripe\UserForms\Model\EditableFormField:
-    ADD: Tambah
-    ADDLabel: 'Tambah pilihan'
-    BLANK: Kosong
-    DELETE: Hapus
-    ENTERQUESTION: 'Masukkan Pertanyaan'
     GROUP: Grup
-    HIDE: Sembunyikan
-    MAXVALUE: 'Nilai Maks'
-    MINVALUE: 'Nilai Min'
-    SHOW: Tampilkan
     VALIDATION: Validasi
diff --git a/lang/it.yml b/lang/it.yml
index 4cc0a16..ff1211b 100644
--- a/lang/it.yml
+++ b/lang/it.yml
@@ -1,6 +1,4 @@
 it:
-  SilverStripe\UserForms\Model\EditableFileField:
-    SELECTUPLOADFOLDER: 'Seleziona la cartella di caricamento'
   SilverStripe\UserForms\Extension\UserFormFieldEditorExtension:
     ADD_FIELD: 'Aggiungi campo'
     ADD_FIELD_GROUP: 'Aggiungi gruppo di campi'
@@ -15,7 +13,7 @@ it:
   SilverStripe\UserForms\Form\UserFormsGridFieldFilterHeader:
     FILTERSUBMISSIONS: 'Filtra invii..'
     FROM: Da
-    TILL: 'Fino a'
+    TILL: Fino a
     WHEREVALUEIS: 'dove il valore è..'
   SilverStripe\UserForms\Model\EditableCustomRule:
     PLURALNAME: 'Regole personalizzate modificabili'
@@ -42,9 +40,9 @@ it:
     TITLE: Titolo
     TYPE: Tipo
     VALIDATION: Validazione
-    'YES': Si
+    'YES': 'Si'
   SilverStripe\UserForms\Model\EditableFormField\EditableCheckbox:
-    PLURALNAME: 'Caselle di controllo'
+    PLURALNAME: Caselle di controllo
     SINGULARNAME: 'Campo casella di controllo'
   SilverStripe\UserForms\Model\EditableFormField\EditableCheckboxGroupField:
     PLURALNAME: 'Gruppi di caselle di controllo'
@@ -56,7 +54,7 @@ it:
     PLURALNAME: 'Campi date'
     SINGULARNAME: 'Campo data'
   SilverStripe\UserForms\Model\EditableFormField\EditableDropdown:
-    PLURALNAME: 'Menù a tendina'
+    PLURALNAME: Menù a tendina
     SINGULARNAME: 'Campo menù a tendina'
   SilverStripe\UserForms\Model\EditableFormField\EditableEmailField:
     PLURALNAME: 'Campi e-mail'
@@ -71,6 +69,7 @@ it:
     SINGULARNAME: 'Fine del gruppo di campi modificabili'
   SilverStripe\UserForms\Model\EditableFormField\EditableFileField:
     PLURALNAME: 'Campi di caricamento file'
+    SELECTUPLOADFOLDER: 'Seleziona la cartella di caricamento'
     SINGULARNAME: 'Campo di caricamento file'
   SilverStripe\UserForms\Model\EditableFormField\EditableFormHeading:
     LEVEL: 'Seleziona livello di intestazione'
@@ -100,7 +99,7 @@ it:
   SilverStripe\UserForms\Model\EditableFormField\EditableNumericField:
     PLURALNAME: 'Campi numerici'
     RANGE: 'Intervallo numerico ammesso'
-    RANGE_TO: 'fino a'
+    RANGE_TO: fino a
     SINGULARNAME: 'Campo numerico'
   SilverStripe\UserForms\Model\EditableFormField\EditableOption:
     PLURALNAME: 'Opzioni modificabili'
diff --git a/lang/ja.yml b/lang/ja.yml
index 112d3b0..3de118b 100644
--- a/lang/ja.yml
+++ b/lang/ja.yml
@@ -1,29 +1,29 @@
 ja:
   SilverStripe\UserForms\Model\EditableFormField\EditableEmailField:
-    PLURALNAME: メールフィールド
-    SINGULARNAME: メールフィールド
+    PLURALNAME: 'メールフィールド'
+    SINGULARNAME: 'メールフィールド'
   SilverStripe\UserForms\Model\EditableFormField\EditableLiteralField:
     HIDEFROMREPORT: 'レポートから隠しますか?'
-    PLURALNAME: HTMLブロック
-    SINGULARNAME: HTMLブロック
+    PLURALNAME: 'HTMLブロック'
+    SINGULARNAME: 'HTMLブロック'
   SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField:
-    PLURALNAME: 編集可能なマルチオプションフィールド
-    SINGULARNAME: 編集可能なマルチオプションフィールド
+    PLURALNAME: '編集可能なマルチオプションフィールド'
+    SINGULARNAME: '編集可能なマルチオプションフィールド'
   SilverStripe\UserForms\Model\Recipient\EmailRecipient:
-    PLURALNAME: ユーザー定義フォームのメール受信者
-    SINGULARNAME: ユーザー定義フォームのメール受信者
+    PLURALNAME: 'ユーザー定義フォームのメール受信者'
+    SINGULARNAME: 'ユーザー定義フォームのメール受信者'
   SilverStripe\UserForms\Model\UserDefinedForm:
     EMAILADDRESS: メール
     EMAILBODY: ボディ
     EMAILFROM: 送信者
-    EMAILSUBJECT: メールの件名
+    EMAILSUBJECT: 'メールの件名'
     EmailFromContent: '送信元アドレスでどこからメールを送信するのか設定することができます。多くのサーバーではこれはあなたのサイトのドメイン名と同じメールアドレスに設定する必要があります。たとえば yoursite.com では送信元アドレスは something@yoursite.com としなければいけません。ただし、返信先アドレスは好きなメールアドレスを設定することができます。'
-    FROMADDRESS: メールの送信元
+    FROMADDRESS: 'メールの送信元'
     HIDEFORMDATA: 'メールからフォームデータを見えないようにしますか?'
-    ORSELECTAFIELDTOUSEASFROM: ..またはフィールドを選択して返信先アドレスとして使用
-    ORSELECTAFIELDTOUSEASTO: ..またはフィールドを選択して宛先アドレスとして使用
-    REPLYADDRESS: 以下への返信メール
-    SENDEMAILTO: メールを送信
+    ORSELECTAFIELDTOUSEASFROM: '..またはフィールドを選択して返信先アドレスとして使用'
+    ORSELECTAFIELDTOUSEASTO: '..またはフィールドを選択して宛先アドレスとして使用'
+    REPLYADDRESS: '以下への返信メール'
+    SENDEMAILTO: 'メールを送信'
     SENDPLAIN: 'プレーンテキストとしてメールを送信しますか? (HTMLは取り除かれます)'
-    SINGULARNAME: ユーザー定義フォーム
+    SINGULARNAME: 'ユーザー定義フォーム'
     SUBMITBUTTON: 送信
diff --git a/lang/mi.yml b/lang/mi.yml
index 59b4f7e..bfb26eb 100644
--- a/lang/mi.yml
+++ b/lang/mi.yml
@@ -15,7 +15,7 @@ mi:
     SINGULARNAME: 'Āpure Puka Ka Taea Te Whakatika'
     VALIDATION: Manatokonga
   SilverStripe\UserForms\Model\EditableFormField\EditableCheckbox:
-    PLURALNAME: 'Ngā Pouakataki'
+    PLURALNAME: Ngā Pouakataki
     SINGULARNAME: 'Āpure Pouakataki'
   SilverStripe\UserForms\Model\EditableFormField\EditableCheckboxGroupField:
     PLURALNAME: 'Ngā Rōpū Pouakataki'
@@ -27,7 +27,7 @@ mi:
     PLURALNAME: 'Ngā Āpure Rā'
     SINGULARNAME: 'Āpure Rā'
   SilverStripe\UserForms\Model\EditableFormField\EditableDropdown:
-    PLURALNAME: 'Ngā Takaiho'
+    PLURALNAME: Ngā Takaiho
     SINGULARNAME: 'Āpure Takaiho'
   SilverStripe\UserForms\Model\EditableFormField\EditableEmailField:
     PLURALNAME: 'Ngā Āpure Īmēra'
@@ -37,7 +37,7 @@ mi:
     SINGULARNAME: 'Āpure Tukuatu Kōnae'
   SilverStripe\UserForms\Model\EditableFormField\EditableFormHeading:
     LEVEL: 'Kōwhiri Taumata Pane'
-    PLURALNAME: 'Ngā Pane'
+    PLURALNAME: Ngā Pane
     SINGULARNAME: Pane
   SilverStripe\UserForms\Model\EditableFormField\EditableLiteralField:
     HIDEFROMREPORT: 'Hunaia i ngā pūrongo?'
diff --git a/lang/ms.yml b/lang/ms.yml
new file mode 100644
index 0000000..4429805
--- /dev/null
+++ b/lang/ms.yml
@@ -0,0 +1 @@
+ms: {}
diff --git a/lang/nb.yml b/lang/nb.yml
new file mode 100644
index 0000000..1a38c43
--- /dev/null
+++ b/lang/nb.yml
@@ -0,0 +1 @@
+nb: {}
diff --git a/lang/nb_NO.yml b/lang/nb_NO.yml
index a09244f..f2cbd6e 100644
--- a/lang/nb_NO.yml
+++ b/lang/nb_NO.yml
@@ -24,8 +24,8 @@ nb_NO:
     PLURALNAME: 'Land nedfellsmenyer'
     SINGULARNAME: 'Land nedfellsmeny'
   SilverStripe\UserForms\Model\EditableFormField\EditableDateField:
-    PLURALNAME: Datofelter
-    SINGULARNAME: Datofelt
+    PLURALNAME: 'Datofelter'
+    SINGULARNAME: 'Datofelt'
   SilverStripe\UserForms\Model\EditableFormField\EditableDropdown:
     PLURALNAME: Nedfellsmeny
     SINGULARNAME: 'Nedfellsmeny felt'
@@ -33,8 +33,8 @@ nb_NO:
     PLURALNAME: 'Epost felt'
     SINGULARNAME: 'Epost felt'
   SilverStripe\UserForms\Model\EditableFormField\EditableFileField:
-    PLURALNAME: Filopplastingsfelter
-    SINGULARNAME: Filopplastingsfelt
+    PLURALNAME: 'Filopplastingsfelter'
+    SINGULARNAME: 'Filopplastingsfelt'
   SilverStripe\UserForms\Model\EditableFormField\EditableFormHeading:
     LEVEL: 'Velg overskrift nivå'
     PLURALNAME: Overskrifter
@@ -53,12 +53,12 @@ nb_NO:
     PLURALNAME: 'Redigerbart alternativer'
     SINGULARNAME: 'Redigerbart alternativ'
   SilverStripe\UserForms\Model\EditableFormField\EditableRadioField:
-    PLURALNAME: Radiofelt
-    SINGULARNAME: Radiofelt
+    PLURALNAME: 'Radiofelt'
+    SINGULARNAME: 'Radiofelt'
   SilverStripe\UserForms\Model\EditableFormField\EditableTextField:
     NUMBERROWS: 'Antall rader'
-    PLURALNAME: Tekstfelt
-    SINGULARNAME: Tekstfelt
+    PLURALNAME: 'Tekstfelt'
+    SINGULARNAME: 'Tekstfelt'
     TEXTLENGTH: 'Tekst lengde'
   SilverStripe\UserForms\Model\Recipient\EmailRecipient:
     PLURALNAME: 'Bruker definert e-post mottakere'
diff --git a/lang/nl.yml b/lang/nl.yml
new file mode 100644
index 0000000..4149899
--- /dev/null
+++ b/lang/nl.yml
@@ -0,0 +1 @@
+nl: {}
diff --git a/lang/nl_NL.yml b/lang/nl_NL.yml
index c8a526e..fa96af7 100644
--- a/lang/nl_NL.yml
+++ b/lang/nl_NL.yml
@@ -1,6 +1,4 @@
 nl_NL:
-  SilverStripe\UserForms\Model\EditableFileField:
-    SELECTUPLOADFOLDER: 'Selecteer upload locatie'
   SilverStripe\UserForms\Form\UserFormsGridFieldFilterHeader:
     FILTERSUBMISSIONS: 'Inzendingen filteren'
     WHEREVALUEIS: 'waar waarde is...'
@@ -18,7 +16,7 @@ nl_NL:
     VALIDATION: Validatie
   SilverStripe\UserForms\Model\EditableFormField\EditableCheckbox:
     PLURALNAME: Selectievakjes
-    SINGULARNAME: Selectievakje
+    SINGULARNAME: 'Selectievakje'
   SilverStripe\UserForms\Model\EditableFormField\EditableCheckboxGroupField:
     PLURALNAME: 'Groepen van selectievakjes'
     SINGULARNAME: 'Groep van selectievakje'
@@ -26,8 +24,8 @@ nl_NL:
     PLURALNAME: 'Vervolgkeuzelijsten van landen'
     SINGULARNAME: 'Vervolgkeuzelijst van landen'
   SilverStripe\UserForms\Model\EditableFormField\EditableDateField:
-    PLURALNAME: Datumvelden
-    SINGULARNAME: Datumveld
+    PLURALNAME: 'Datumvelden'
+    SINGULARNAME: 'Datumveld'
   SilverStripe\UserForms\Model\EditableFormField\EditableDropdown:
     PLURALNAME: Vervolgkeuzelijsten
     SINGULARNAME: 'Vervolgkeuzelijst veld'
@@ -36,6 +34,7 @@ nl_NL:
     SINGULARNAME: 'Email veld'
   SilverStripe\UserForms\Model\EditableFormField\EditableFileField:
     PLURALNAME: 'Velden voor bestand uploaden'
+    SELECTUPLOADFOLDER: 'Selecteer upload locatie'
     SINGULARNAME: 'Veld voor bestand uploaden'
   SilverStripe\UserForms\Model\EditableFormField\EditableFormHeading:
     LEVEL: 'Kies grootte van kopje'
@@ -84,7 +83,7 @@ nl_NL:
     EMAILADDRESS: Email
     EMAILBODY: Tekst
     EMAILFROM: Van
-    EMAILSUBJECT: Onderwerp
+    EMAILSUBJECT: 'Onderwerp'
     EmailFromContent: 'Met het vanaf adres kunt u instellen waar het ingediende formulier vandaag komt. Op de meeste servers dien je een email in te vullen van hetzelfde domein als deze website. Bijvoorbeeld op jouwwebsite.nl dan dien je het volgende adres in te stellen iets@jouwwebsite.nl. Echter kunt u bij antwoorden op ieder email adres invullen.'
     FROMADDRESS: 'Email verzonden vanaf'
     HIDEFORMDATA: 'Verberg formulier gegevens in email?'
diff --git a/lang/pl.yml b/lang/pl.yml
new file mode 100644
index 0000000..a88be26
--- /dev/null
+++ b/lang/pl.yml
@@ -0,0 +1 @@
+pl: {}
diff --git a/lang/pl_PL.yml b/lang/pl_PL.yml
index d1f6a23..dec9738 100644
--- a/lang/pl_PL.yml
+++ b/lang/pl_PL.yml
@@ -1,6 +1,4 @@
 pl_PL:
-  SilverStripe\UserForms\Model\EditableFileField:
-    SELECTUPLOADFOLDER: 'Wybierz folder dla przesyłanych plików'
   SilverStripe\UserForms\Form\UserFormsGridFieldFilterHeader:
     FILTERSUBMISSIONS: 'Zgłoszenia filtrów ..'
     WHEREVALUEIS: 'których wartość jest ..'
@@ -10,13 +8,13 @@ pl_PL:
     CUSTOMRULES: 'Custom Rules'
     DEFAULTTOTODAY: 'Domyślnie to dzisiaj?'
     GROUP: Grupa
-    'NO': Nie
+    'NO': 'Nie'
     PLURALNAME: 'Edytowalne pole formularza'
     REQUIRED: 'To pole jest wymagane w tym formularzu i nie może zostać usunięte'
     RIGHTTITLE: 'Right Title'
     SINGULARNAME: 'Edytowalne pole formularza'
     VALIDATION: Validation
-    'YES': Tak
+    'YES': 'Tak'
   SilverStripe\UserForms\Model\EditableFormField\EditableCheckbox:
     PLURALNAME: Checkboxes
     SINGULARNAME: 'Checkbox Field'
@@ -37,6 +35,7 @@ pl_PL:
     SINGULARNAME: 'Email Field'
   SilverStripe\UserForms\Model\EditableFormField\EditableFileField:
     PLURALNAME: 'Pola przesyłania plików'
+    SELECTUPLOADFOLDER: 'Wybierz folder dla przesyłanych plików'
     SINGULARNAME: 'Pole przesyłania pliku'
   SilverStripe\UserForms\Model\EditableFormField\EditableFormHeading:
     LEVEL: 'Wybierzpoziom nagłówka'
diff --git a/lang/pt.yml b/lang/pt.yml
new file mode 100644
index 0000000..6b4993c
--- /dev/null
+++ b/lang/pt.yml
@@ -0,0 +1 @@
+pt: {}
diff --git a/lang/pt_BR.yml b/lang/pt_BR.yml
new file mode 100644
index 0000000..2ce9390
--- /dev/null
+++ b/lang/pt_BR.yml
@@ -0,0 +1 @@
+pt_BR: {}
diff --git a/lang/ru.yml b/lang/ru.yml
new file mode 100644
index 0000000..c50cc30
--- /dev/null
+++ b/lang/ru.yml
@@ -0,0 +1 @@
+ru: {}
diff --git a/lang/sk.yml b/lang/sk.yml
index 3215075..0c18ebb 100644
--- a/lang/sk.yml
+++ b/lang/sk.yml
@@ -1,11 +1,9 @@
 sk:
-  SilverStripe\UserForms\Model\EditableFileField:
-    SELECTUPLOADFOLDER: 'Priečinok na nahrávanie súborov'
   SilverStripe\UserForms\Extension\UserFormFieldEditorExtension:
     ADD_FIELD: 'Pridať políčko'
     ADD_FIELD_GROUP: 'Pridať obaľovaciu skupinu'
     ADD_PAGE_BREAK: 'Pridať ďalšiu stranu'
-    FORMFIELDS: Formulár
+    FORMFIELDS: 'Formulár'
   SilverStripe\UserForms\Extension\UserFormValidator:
     CONDITIONAL_REQUIRED: 'Vyžadované pole ''{name}'' nemôže byť umiestnené do podmienenej stránky'
     NO_PAGE: 'Pole ''{name}'' nájdené pred akoukoľvek stránkou'
@@ -33,7 +31,7 @@ sk:
     EXTRACLASS_Title: 'Extra CSS triedy'
     FIELDISREQUIRED: '{name} je vyžadované'
     GROUP: Skupina
-    'NO': ' Nie'
+    'NO': 'Nie'
     PLURALNAME: 'Formulárové polia'
     REQUIRED: 'Je pole povinné/vyžadované?'
     REQUIRED_DESCRIPTION: 'Všimnite si prosím, že podmienené polia nemôžu byť vyžadované.'
@@ -42,9 +40,9 @@ sk:
     TITLE: Názov
     TYPE: Typ
     VALIDATION: Validácia
-    'YES': Áno
+    'YES': 'Áno'
   SilverStripe\UserForms\Model\EditableFormField\EditableCheckbox:
-    PLURALNAME: 'Zaškrtávacie polia (checkbox)'
+    PLURALNAME: Zaškrtávacie polia (checkbox)
     SINGULARNAME: 'Zaškrtávacie pole (checkbox)'
   SilverStripe\UserForms\Model\EditableFormField\EditableCheckboxGroupField:
     PLURALNAME: 'Skupiny zaškrtávacích polí'
@@ -56,7 +54,7 @@ sk:
     PLURALNAME: 'Dátumové polia'
     SINGULARNAME: 'Dátumové pole'
   SilverStripe\UserForms\Model\EditableFormField\EditableDropdown:
-    PLURALNAME: 'Rozbaľovacie polia'
+    PLURALNAME: Rozbaľovacie polia
     SINGULARNAME: 'Rozbaľovacie pole'
   SilverStripe\UserForms\Model\EditableFormField\EditableEmailField:
     PLURALNAME: 'E-mailové polia'
@@ -71,6 +69,7 @@ sk:
     SINGULARNAME: 'Koniec skupiny polí'
   SilverStripe\UserForms\Model\EditableFormField\EditableFileField:
     PLURALNAME: 'Polia pre nahratie súboru'
+    SELECTUPLOADFOLDER: 'Priečinok na nahrávanie súborov'
     SINGULARNAME: 'Pole pre nahratie súboru'
   SilverStripe\UserForms\Model\EditableFormField\EditableFormHeading:
     LEVEL: 'Úroveň nadpisu'
@@ -103,8 +102,8 @@ sk:
     RANGE_TO: do
     SINGULARNAME: 'Numerické/číselné pole'
   SilverStripe\UserForms\Model\EditableFormField\EditableOption:
-    PLURALNAME: Možnosti
-    SINGULARNAME: Možnosť
+    PLURALNAME: 'Možnosti'
+    SINGULARNAME: 'Možnosť'
   SilverStripe\UserForms\Model\EditableFormField\EditableRadioField:
     PLURALNAME: 'Prepínacie polia (radio)'
     SINGULARNAME: 'Prepínacie pole (radio)'
@@ -141,13 +140,13 @@ sk:
     EMAILBODY: Správa
     EMAILBODYHTML: Správa
     EMAILFROM: Od
-    EMAILSUBJECT: Predmet
+    EMAILSUBJECT: 'Predmet'
     EMAILTEMPLATE: 'E-mailová šablóna'
     EmailFromContent: 'Políčko "E-mail odosielateľa" umožňuje nastaviť adresu, od koho príde e-mail. Na väčšine serverov musí mať táto adresa nastavenú rovnakú doménu ako je doména stránky. Napr. na stránke mojastranka.sk musí byť táto adresa nieco@mojastranka.sk. Avšak ako "Odpoveď na" môžete zadať ľubovoľnú e-mailovú adresu, na ktorú príde odpoveď.'
     FROMADDRESS: 'E-mail odosielateľa'
     HIDEFORMDATA: 'Skryť dáta z e-mailu?'
-    ORSELECTAFIELDTOUSEASFROM: '... alebo vyberte poľe, ktoré sa použije na odpoveď'
-    ORSELECTAFIELDTOUSEASTO: '... alebo vyberte poľe, ktoré sa použije ako E-mail príjemcu'
+    ORSELECTAFIELDTOUSEASFROM: '... alebo vyberte pole, ktoré sa použije na odpoveď'
+    ORSELECTAFIELDTOUSEASTO: '... alebo vyberte pole, ktoré sa použije ako E-mail príjemcu'
     PLURALNAME: 'Jednoduché formuláre'
     PREVIEW_EMAIL: 'Náhľad e-mailu'
     PREVIEW_EMAIL_DESCRIPTION: 'Poznámka: Neuložené zmeny sa v náhľade nezobrazujú.'
@@ -155,7 +154,7 @@ sk:
     REPLYADDRESS: 'Odpoveď na'
     REPLYADDRESS_DESCRIPTION: 'E-mailová adresa, na ktorú príde odpoveď od príjemcu.'
     RulesDescription: 'E-maily budú zasielane príjemcovi len vtedy, ak sú splnené vlastné pravidlá. Ak pravidlá nie sú definované, príjemca bude dostávať e-maily pri každom podanom formulári.'
-    SELECTAFIELDTOSETSUBJECT: '... alebo vyber poľe, ktoré sa použije ako predmet'
+    SELECTAFIELDTOSETSUBJECT: '... alebo vyberte pole, ktoré sa použije ako predmet'
     SENDEMAILTO: 'E-mail príjemcu'
     SENDEMAILTO_DESCRIPTION: 'Môžete zadať viac e-mailových adries, pričom jednotlivé adresy oddeľujte čiarkou.'
     SENDIF: 'Podmienka poslania'
diff --git a/lang/sk_SK.yml b/lang/sk_SK.yml
new file mode 100644
index 0000000..da7dfdf
--- /dev/null
+++ b/lang/sk_SK.yml
@@ -0,0 +1 @@
+sk_SK: {}
diff --git a/lang/sl.yml b/lang/sl.yml
new file mode 100644
index 0000000..9c3d88f
--- /dev/null
+++ b/lang/sl.yml
@@ -0,0 +1 @@
+sl: {}
diff --git a/lang/sl_SI.yml b/lang/sl_SI.yml
new file mode 100644
index 0000000..1d2af00
--- /dev/null
+++ b/lang/sl_SI.yml
@@ -0,0 +1 @@
+sl_SI: {}
diff --git a/lang/sr.yml b/lang/sr.yml
new file mode 100644
index 0000000..5380c47
--- /dev/null
+++ b/lang/sr.yml
@@ -0,0 +1 @@
+sr: {}
diff --git a/lang/sv.yml b/lang/sv.yml
index df30817..c45c05b 100644
--- a/lang/sv.yml
+++ b/lang/sv.yml
@@ -1,6 +1,4 @@
 sv:
-  SilverStripe\UserForms\Model\EditableFileField:
-    SELECTUPLOADFOLDER: 'Välj uppladdningsmapp'
   SilverStripe\UserForms\Form\UserFormsGridFieldFilterHeader:
     FILTERSUBMISSIONS: 'Filtrera inskickade svar'
     WHEREVALUEIS: 'när värdet är..'
@@ -13,31 +11,32 @@ sv:
     GROUP: Grupp
     PLURALNAME: 'Redigeringsbara formulärfält'
     REQUIRED: 'Är detta fält obligatoriskt?'
-    RIGHTTITLE: Högertitel
+    RIGHTTITLE: 'Högertitel'
     SINGULARNAME: 'Redigeringsbart formulärfält'
     TITLE: Titel
     VALIDATION: Validering
   SilverStripe\UserForms\Model\EditableFormField\EditableCheckbox:
     PLURALNAME: Kryssrutor
-    SINGULARNAME: Kryssrutefält
+    SINGULARNAME: 'Kryssrutefält'
   SilverStripe\UserForms\Model\EditableFormField\EditableCheckboxGroupField:
-    PLURALNAME: Kryssrutegrupper
-    SINGULARNAME: Kryssrutegrupp
+    PLURALNAME: 'Kryssrutegrupper'
+    SINGULARNAME: 'Kryssrutegrupp'
   SilverStripe\UserForms\Model\EditableFormField\EditableCountryDropdownField:
     PLURALNAME: 'Rullgardinsmenyer för länder'
     SINGULARNAME: 'Rullgardinsmeny för länder'
   SilverStripe\UserForms\Model\EditableFormField\EditableDateField:
-    PLURALNAME: Datumfält
-    SINGULARNAME: Datumfält
+    PLURALNAME: 'Datumfält'
+    SINGULARNAME: 'Datumfält'
   SilverStripe\UserForms\Model\EditableFormField\EditableDropdown:
     PLURALNAME: Rullgardinsmenyer
-    SINGULARNAME: Rullgardinsmenyfält
+    SINGULARNAME: 'Rullgardinsmenyfält'
   SilverStripe\UserForms\Model\EditableFormField\EditableEmailField:
-    PLURALNAME: E-postfält
-    SINGULARNAME: E-postfält
+    PLURALNAME: 'E-postfält'
+    SINGULARNAME: 'E-postfält'
   SilverStripe\UserForms\Model\EditableFormField\EditableFileField:
-    PLURALNAME: Filuppladdningsfält
-    SINGULARNAME: Filuppladdningsfält
+    PLURALNAME: 'Filuppladdningsfält'
+    SELECTUPLOADFOLDER: 'Välj uppladdningsmapp'
+    SINGULARNAME: 'Filuppladdningsfält'
   SilverStripe\UserForms\Model\EditableFormField\EditableFormHeading:
     LEVEL: 'Välj rubrikstorlek'
     PLURALNAME: Rubriker
@@ -46,11 +45,11 @@ sv:
     STEP_TITLE: 'Sida {page}'
   SilverStripe\UserForms\Model\EditableFormField\EditableLiteralField:
     HIDEFROMREPORT: 'Göm från rapport?'
-    PLURALNAME: HTML-block
-    SINGULARNAME: HTML-block
+    PLURALNAME: 'HTML-block'
+    SINGULARNAME: 'HTML-block'
   SilverStripe\UserForms\Model\EditableFormField\EditableMemberListField:
-    PLURALNAME: Medlemsfält
-    SINGULARNAME: Medlemsfält
+    PLURALNAME: 'Medlemsfält'
+    SINGULARNAME: 'Medlemsfält'
   SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField:
     PLURALNAME: 'Redigeringsbart multialternativfält'
     SINGULARNAME: 'Redigeringsbart multialternativfält'
@@ -61,13 +60,13 @@ sv:
     PLURALNAME: 'Redigeringsbara alternativ'
     SINGULARNAME: 'Redigeringsbart alternativ'
   SilverStripe\UserForms\Model\EditableFormField\EditableRadioField:
-    PLURALNAME: Radiofält
-    SINGULARNAME: Radiofält
+    PLURALNAME: 'Radiofält'
+    SINGULARNAME: 'Radiofält'
   SilverStripe\UserForms\Model\EditableFormField\EditableTextField:
     NUMBERROWS: 'Antal rader'
-    PLURALNAME: Textfält
-    SINGULARNAME: Textfält
-    TEXTLENGTH: Textlängd
+    PLURALNAME: 'Textfält'
+    SINGULARNAME: 'Textfält'
+    TEXTLENGTH: 'Textlängd'
   SilverStripe\UserForms\Model\Recipient\EmailRecipient:
     PLURALNAME: 'Mottagare av formulär'
     SINGULARNAME: 'Mottagare av formulär'
@@ -87,7 +86,7 @@ sv:
     EMAILADDRESS: E-post
     EMAILBODY: Innehåll
     EMAILFROM: Från
-    EMAILSUBJECT: E-postämne
+    EMAILSUBJECT: 'E-postämne'
     EmailFromContent: 'Från-adressen låter dig ställa in varifrån e-postmeddelandet skickas. På de flesta servrar måste adressen ha samma domännamn som din sajt. Till exempel på yoursite.com så måste adressen vara something@yoursite.com. Det är däremot möjligt att lägga valfri e-postadress under "E-postadress att svara till". '
     FROMADDRESS: 'E-postadress att skicka formulär från'
     HIDEFORMDATA: 'Göm formulärdata från e-post?'
diff --git a/lang/tr.yml b/lang/tr.yml
new file mode 100644
index 0000000..1d6f2fd
--- /dev/null
+++ b/lang/tr.yml
@@ -0,0 +1 @@
+tr: {}
diff --git a/lang/zh.yml b/lang/zh.yml
index 3ffcb45..f0fc4f6 100644
--- a/lang/zh.yml
+++ b/lang/zh.yml
@@ -1,91 +1,91 @@
 zh:
   SilverStripe\UserForms\Form\UserFormsGridFieldFilterHeader:
-    FILTERSUBMISSIONS: 筛选器提交……
-    WHEREVALUEIS: 当值为……
+    FILTERSUBMISSIONS: '筛选器提交……'
+    WHEREVALUEIS: '当值为……'
   SilverStripe\UserForms\Model\EditableFormField:
-    CHECKEDBYDEFAULT: 默认选中?
-    CUSTOMERROR: 自定义错误消息
-    CUSTOMRULES: 自定义规则
-    DEFAULTTOTODAY: 默认为今天?
+    CHECKEDBYDEFAULT: '默认选中?'
+    CUSTOMERROR: '自定义错误消息'
+    CUSTOMRULES: '自定义规则'
+    DEFAULTTOTODAY: '默认为今天?'
     FIELDISREQUIRED: '{name} 是必须的'
     GROUP: 小组
-    PLURALNAME: 可编辑的表格字段
-    REQUIRED: 这个字段是必须的吗?
-    RIGHTTITLE: 右标题
-    SINGULARNAME: 可编辑的表格字段
+    PLURALNAME: '可编辑的表格字段'
+    REQUIRED: '这个字段是必须的吗?'
+    RIGHTTITLE: '右标题'
+    SINGULARNAME: '可编辑的表格字段'
     VALIDATION: 验证
   SilverStripe\UserForms\Model\EditableFormField\EditableCheckbox:
     PLURALNAME: 复选框
-    SINGULARNAME: 复选框字段
+    SINGULARNAME: '复选框字段'
   SilverStripe\UserForms\Model\EditableFormField\EditableCheckboxGroupField:
-    PLURALNAME: 复选框组
-    SINGULARNAME: 复选框组
+    PLURALNAME: '复选框组'
+    SINGULARNAME: '复选框组'
   SilverStripe\UserForms\Model\EditableFormField\EditableCountryDropdownField:
-    PLURALNAME: 国家下拉列表
-    SINGULARNAME: 国家下拉列表
+    PLURALNAME: '国家下拉列表'
+    SINGULARNAME: '国家下拉列表'
   SilverStripe\UserForms\Model\EditableFormField\EditableDateField:
-    PLURALNAME: 日期字段
-    SINGULARNAME: 日期字段
+    PLURALNAME: '日期字段'
+    SINGULARNAME: '日期字段'
   SilverStripe\UserForms\Model\EditableFormField\EditableDropdown:
     PLURALNAME: 下拉列表
-    SINGULARNAME: 下拉列表字段
+    SINGULARNAME: '下拉列表字段'
   SilverStripe\UserForms\Model\EditableFormField\EditableEmailField:
-    PLURALNAME: 电子邮件字段
-    SINGULARNAME: 电子邮件字段
+    PLURALNAME: '电子邮件字段'
+    SINGULARNAME: '电子邮件字段'
   SilverStripe\UserForms\Model\EditableFormField\EditableFileField:
-    PLURALNAME: 文件上传字段
-    SINGULARNAME: 文件上传字段
+    PLURALNAME: '文件上传字段'
+    SINGULARNAME: '文件上传字段'
   SilverStripe\UserForms\Model\EditableFormField\EditableFormHeading:
-    LEVEL: 选择标题级别
+    LEVEL: '选择标题级别'
     PLURALNAME: 标题
     SINGULARNAME: 标题
   SilverStripe\UserForms\Model\EditableFormField\EditableLiteralField:
-    HIDEFROMREPORT: 从报告中隐藏?
+    HIDEFROMREPORT: '从报告中隐藏?'
     PLURALNAME: 'HTML 模块'
     SINGULARNAME: 'HTML 模块'
   SilverStripe\UserForms\Model\EditableFormField\EditableMemberListField:
-    PLURALNAME: 成员列表字段
-    SINGULARNAME: 成员列表字段
+    PLURALNAME: '成员列表字段'
+    SINGULARNAME: '成员列表字段'
   SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField:
-    PLURALNAME: 可编辑的多个选项字段
-    SINGULARNAME: 可编辑的多个选项字段
+    PLURALNAME: '可编辑的多个选项字段'
+    SINGULARNAME: '可编辑的多个选项字段'
   SilverStripe\UserForms\Model\EditableFormField\EditableOption:
-    PLURALNAME: 可编辑的选项
-    SINGULARNAME: 可编辑的选项
+    PLURALNAME: '可编辑的选项'
+    SINGULARNAME: '可编辑的选项'
   SilverStripe\UserForms\Model\EditableFormField\EditableRadioField:
-    PLURALNAME: 广播字段
-    SINGULARNAME: 广播字段
+    PLURALNAME: '广播字段'
+    SINGULARNAME: '广播字段'
   SilverStripe\UserForms\Model\EditableFormField\EditableTextField:
-    NUMBERROWS: 行数
-    PLURALNAME: 文本字段
-    SINGULARNAME: 文本字段
-    TEXTLENGTH: 文本长度
+    NUMBERROWS: '行数'
+    PLURALNAME: '文本字段'
+    SINGULARNAME: '文本字段'
+    TEXTLENGTH: '文本长度'
   SilverStripe\UserForms\Model\Recipient\EmailRecipient:
-    PLURALNAME: 用户定义的表格电子邮件接受者
-    SINGULARNAME: 用户定义的表格电子邮件接受者
+    PLURALNAME: '用户定义的表格电子邮件接受者'
+    SINGULARNAME: '用户定义的表格电子邮件接受者'
   SilverStripe\UserForms\Model\Submission\SubmittedFileField:
-    DOWNLOADFILE: 下载文件
-    PLURALNAME: 已提交的文件字段
-    SINGULARNAME: 已提交的文件字段
+    DOWNLOADFILE: '下载文件'
+    PLURALNAME: '已提交的文件字段'
+    SINGULARNAME: '已提交的文件字段'
   SilverStripe\UserForms\Model\Submission\SubmittedForm:
-    PLURALNAME: 已提交的表格
-    SINGULARNAME: 已提交的表格
+    PLURALNAME: '已提交的表格'
+    SINGULARNAME: '已提交的表格'
   SilverStripe\UserForms\Model\Submission\SubmittedFormField:
-    PLURALNAME: 已提交的表格字段
-    SINGULARNAME: 已提交的表格字段
+    PLURALNAME: '已提交的表格字段'
+    SINGULARNAME: '已提交的表格字段'
   SilverStripe\UserForms\Model\UserDefinedForm:
-    DESCRIPTION: 添加一个可定制的表格。
+    DESCRIPTION: '添加一个可定制的表格。'
     EMAILADDRESS: 电子邮件
     EMAILBODY: 正文
     EMAILFROM: 表格
-    EMAILSUBJECT: 电子邮件主题
+    EMAILSUBJECT: '电子邮件主题'
     EmailFromContent: '表格地址允许您设置电子邮件的发送人。在大多数服务器上这必须要设置成域名与您的站点域名一致的电子邮件地址。例如在 yoursite.com 上,发送人的电子邮件地址必须为 something@yoursite.com。但是您可以随意设置回复的电子邮件地址。'
-    FROMADDRESS: 发送人电子邮件
-    HIDEFORMDATA: 从电子邮件中隐藏表格数据?
+    FROMADDRESS: '发送人电子邮件'
+    HIDEFORMDATA: '从电子邮件中隐藏表格数据?'
     ORSELECTAFIELDTOUSEASFROM: '.. 或选择某字段作为回复地址'
     ORSELECTAFIELDTOUSEASTO: '.. 或选择某字段作为地址使用'
-    REPLYADDRESS: 用于回复的电子邮件
-    SENDEMAILTO: 发送电子邮件到
+    REPLYADDRESS: '用于回复的电子邮件'
+    SENDEMAILTO: '发送电子邮件到'
     SENDPLAIN: '以纯文本形式发送电子邮件?(HTML 将会被去除)'
-    SINGULARNAME: 用户定义表格
+    SINGULARNAME: '用户定义表格'
     SUBMITBUTTON: 提交