diff --git a/.eslintignore b/.eslintignore
index 3278600389..11b456699f 100644
--- a/.eslintignore
+++ b/.eslintignore
@@ -17,3 +17,4 @@ logs/
/coverage
/build
.eslintrc
+test/files
diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md
index 28dd965678..ede6d5ee5c 100644
--- a/.github/ISSUE_TEMPLATE.md
+++ b/.github/ISSUE_TEMPLATE.md
@@ -1,13 +1,24 @@
-Please include the following information when submitting a bug report/issue:
+
-* NodeBB version and git hash (to find your git hash, execute `git rev-parse HEAD` from the main NodeBB directory)
-* Database (mongo or redis) and it's version.
-* Exact steps to cause this issue
- 1. First I did this...
- 2. Then, I clicked on this item...
-* What you expected
- * e.g. I expected *abc* to *xyz*
-* What happened instead
- * e.g. Instead, I got *zyx* and NodeBB set fire to my house
+
-Thank you!
+- **NodeBB version:**
+- **NodeBB git hash:**
+
+- **Database type:** mongo or redis
+- **Database version:**
+
+- **Exact steps to cause this issue:**
+
+- **What you expected:**
+
+- **What happened instead:**
+
+
+
diff --git a/.gitignore b/.gitignore
index dcda0224fc..028f91e53b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
+yarn.lock
npm-debug.log
node_modules/
sftp-config.json
@@ -26,6 +27,7 @@ pidfile
/public/templates
/public/sounds
+/public/uploads
# compiled files
/public/stylesheet.css
@@ -58,3 +60,5 @@ coverage
build
*.log
+test/files/normalise.jpg.png
+test/files/normalise-resized.jpg
diff --git a/.tx/config b/.tx/config
index d88ed808e1..f2e0db3200 100644
--- a/.tx/config
+++ b/.tx/config
@@ -21,6 +21,7 @@ trans.fi = public/language/fi/category.json
trans.fr = public/language/fr/category.json
trans.gl = public/language/gl/category.json
trans.he = public/language/he/category.json
+trans.hr = public/language/hr/category.json
trans.hu = public/language/hu/category.json
trans.id = public/language/id/category.json
trans.it = public/language/it/category.json
@@ -69,6 +70,7 @@ trans.fi = public/language/fi/login.json
trans.fr = public/language/fr/login.json
trans.gl = public/language/gl/login.json
trans.he = public/language/he/login.json
+trans.hr = public/language/hr/login.json
trans.hu = public/language/hu/login.json
trans.id = public/language/id/login.json
trans.it = public/language/it/login.json
@@ -117,6 +119,7 @@ trans.fi = public/language/fi/recent.json
trans.fr = public/language/fr/recent.json
trans.gl = public/language/gl/recent.json
trans.he = public/language/he/recent.json
+trans.hr = public/language/hr/recent.json
trans.hu = public/language/hu/recent.json
trans.id = public/language/id/recent.json
trans.it = public/language/it/recent.json
@@ -165,6 +168,7 @@ trans.fi = public/language/fi/unread.json
trans.fr = public/language/fr/unread.json
trans.gl = public/language/gl/unread.json
trans.he = public/language/he/unread.json
+trans.hr = public/language/hr/unread.json
trans.hu = public/language/hu/unread.json
trans.id = public/language/id/unread.json
trans.it = public/language/it/unread.json
@@ -213,6 +217,7 @@ trans.fi = public/language/fi/modules.json
trans.fr = public/language/fr/modules.json
trans.gl = public/language/gl/modules.json
trans.he = public/language/he/modules.json
+trans.hr = public/language/hr/modules.json
trans.hu = public/language/hu/modules.json
trans.id = public/language/id/modules.json
trans.it = public/language/it/modules.json
@@ -261,6 +266,7 @@ trans.fi = public/language/fi/register.json
trans.fr = public/language/fr/register.json
trans.gl = public/language/gl/register.json
trans.he = public/language/he/register.json
+trans.hr = public/language/hr/register.json
trans.hu = public/language/hu/register.json
trans.id = public/language/id/register.json
trans.it = public/language/it/register.json
@@ -309,6 +315,7 @@ trans.fi = public/language/fi/user.json
trans.fr = public/language/fr/user.json
trans.gl = public/language/gl/user.json
trans.he = public/language/he/user.json
+trans.hr = public/language/hr/user.json
trans.hu = public/language/hu/user.json
trans.id = public/language/id/user.json
trans.it = public/language/it/user.json
@@ -357,6 +364,7 @@ trans.fi = public/language/fi/global.json
trans.fr = public/language/fr/global.json
trans.gl = public/language/gl/global.json
trans.he = public/language/he/global.json
+trans.hr = public/language/hr/global.json
trans.hu = public/language/hu/global.json
trans.id = public/language/id/global.json
trans.it = public/language/it/global.json
@@ -405,6 +413,7 @@ trans.fi = public/language/fi/notifications.json
trans.fr = public/language/fr/notifications.json
trans.gl = public/language/gl/notifications.json
trans.he = public/language/he/notifications.json
+trans.hr = public/language/hr/notifications.json
trans.hu = public/language/hu/notifications.json
trans.id = public/language/id/notifications.json
trans.it = public/language/it/notifications.json
@@ -453,6 +462,7 @@ trans.fi = public/language/fi/reset_password.json
trans.fr = public/language/fr/reset_password.json
trans.gl = public/language/gl/reset_password.json
trans.he = public/language/he/reset_password.json
+trans.hr = public/language/hr/reset_password.json
trans.hu = public/language/hu/reset_password.json
trans.id = public/language/id/reset_password.json
trans.it = public/language/it/reset_password.json
@@ -501,6 +511,7 @@ trans.fi = public/language/fi/users.json
trans.fr = public/language/fr/users.json
trans.gl = public/language/gl/users.json
trans.he = public/language/he/users.json
+trans.hr = public/language/hr/users.json
trans.hu = public/language/hu/users.json
trans.id = public/language/id/users.json
trans.it = public/language/it/users.json
@@ -549,6 +560,7 @@ trans.fi = public/language/fi/language.json
trans.fr = public/language/fr/language.json
trans.gl = public/language/gl/language.json
trans.he = public/language/he/language.json
+trans.hr = public/language/hr/language.json
trans.hu = public/language/hu/language.json
trans.id = public/language/id/language.json
trans.it = public/language/it/language.json
@@ -597,6 +609,7 @@ trans.fi = public/language/fi/pages.json
trans.fr = public/language/fr/pages.json
trans.gl = public/language/gl/pages.json
trans.he = public/language/he/pages.json
+trans.hr = public/language/hr/pages.json
trans.hu = public/language/hu/pages.json
trans.id = public/language/id/pages.json
trans.it = public/language/it/pages.json
@@ -645,6 +658,7 @@ trans.fi = public/language/fi/topic.json
trans.fr = public/language/fr/topic.json
trans.gl = public/language/gl/topic.json
trans.he = public/language/he/topic.json
+trans.hr = public/language/hr/topic.json
trans.hu = public/language/hu/topic.json
trans.id = public/language/id/topic.json
trans.it = public/language/it/topic.json
@@ -693,6 +707,7 @@ trans.fi = public/language/fi/success.json
trans.fr = public/language/fr/success.json
trans.gl = public/language/gl/success.json
trans.he = public/language/he/success.json
+trans.hr = public/language/hr/success.json
trans.hu = public/language/hu/success.json
trans.id = public/language/id/success.json
trans.it = public/language/it/success.json
@@ -741,6 +756,7 @@ trans.fi = public/language/fi/error.json
trans.fr = public/language/fr/error.json
trans.gl = public/language/gl/error.json
trans.he = public/language/he/error.json
+trans.hr = public/language/hr/error.json
trans.hu = public/language/hu/error.json
trans.id = public/language/id/error.json
trans.it = public/language/it/error.json
@@ -789,6 +805,7 @@ trans.fi = public/language/fi/flags.json
trans.fr = public/language/fr/flags.json
trans.gl = public/language/gl/flags.json
trans.he = public/language/he/flags.json
+trans.hr = public/language/hr/flags.json
trans.hu = public/language/hu/flags.json
trans.id = public/language/id/flags.json
trans.it = public/language/it/flags.json
@@ -836,6 +853,7 @@ trans.fi = public/language/fi/tags.json
trans.fr = public/language/fr/tags.json
trans.gl = public/language/gl/tags.json
trans.he = public/language/he/tags.json
+trans.hr = public/language/hr/tags.json
trans.hu = public/language/hu/tags.json
trans.id = public/language/id/tags.json
trans.it = public/language/it/tags.json
@@ -884,6 +902,7 @@ trans.fi = public/language/fi/email.json
trans.fr = public/language/fr/email.json
trans.gl = public/language/gl/email.json
trans.he = public/language/he/email.json
+trans.hr = public/language/hr/email.json
trans.hu = public/language/hu/email.json
trans.id = public/language/id/email.json
trans.it = public/language/it/email.json
@@ -932,6 +951,7 @@ trans.fi = public/language/fi/search.json
trans.fr = public/language/fr/search.json
trans.gl = public/language/gl/search.json
trans.he = public/language/he/search.json
+trans.hr = public/language/hr/search.json
trans.hu = public/language/hu/search.json
trans.id = public/language/id/search.json
trans.it = public/language/it/search.json
@@ -980,6 +1000,7 @@ trans.fi = public/language/fi/groups.json
trans.fr = public/language/fr/groups.json
trans.gl = public/language/gl/groups.json
trans.he = public/language/he/groups.json
+trans.hr = public/language/hr/groups.json
trans.hu = public/language/hu/groups.json
trans.id = public/language/id/groups.json
trans.it = public/language/it/groups.json
@@ -1028,6 +1049,7 @@ trans.fi = public/language/fi/uploads.json
trans.fr = public/language/fr/uploads.json
trans.gl = public/language/gl/uploads.json
trans.he = public/language/he/uploads.json
+trans.hr = public/language/hr/uploads.json
trans.hu = public/language/hu/uploads.json
trans.id = public/language/id/uploads.json
trans.it = public/language/it/uploads.json
@@ -1076,6 +1098,7 @@ trans.fi = public/language/fi/admin/admin.json
trans.fr = public/language/fr/admin/admin.json
trans.gl = public/language/gl/admin/admin.json
trans.he = public/language/he/admin/admin.json
+trans.hr = public/language/hr/admin/admin.json
trans.hu = public/language/hu/admin/admin.json
trans.id = public/language/id/admin/admin.json
trans.it = public/language/it/admin/admin.json
@@ -1124,6 +1147,7 @@ trans.fi = public/language/fi/admin/menu.json
trans.fr = public/language/fr/admin/menu.json
trans.gl = public/language/gl/admin/menu.json
trans.he = public/language/he/admin/menu.json
+trans.hr = public/language/hr/admin/menu.json
trans.hu = public/language/hu/admin/menu.json
trans.id = public/language/id/admin/menu.json
trans.it = public/language/it/admin/menu.json
@@ -1172,6 +1196,7 @@ trans.fi = public/language/fi/admin/advanced/cache.json
trans.fr = public/language/fr/admin/advanced/cache.json
trans.gl = public/language/gl/admin/advanced/cache.json
trans.he = public/language/he/admin/advanced/cache.json
+trans.hr = public/language/hr/admin/advanced/cache.json
trans.hu = public/language/hu/admin/advanced/cache.json
trans.id = public/language/id/admin/advanced/cache.json
trans.it = public/language/it/admin/advanced/cache.json
@@ -1220,6 +1245,7 @@ trans.fi = public/language/fi/admin/advanced/database.json
trans.fr = public/language/fr/admin/advanced/database.json
trans.gl = public/language/gl/admin/advanced/database.json
trans.he = public/language/he/admin/advanced/database.json
+trans.hr = public/language/hr/admin/advanced/database.json
trans.hu = public/language/hu/admin/advanced/database.json
trans.id = public/language/id/admin/advanced/database.json
trans.it = public/language/it/admin/advanced/database.json
@@ -1268,6 +1294,7 @@ trans.fi = public/language/fi/admin/advanced/errors.json
trans.fr = public/language/fr/admin/advanced/errors.json
trans.gl = public/language/gl/admin/advanced/errors.json
trans.he = public/language/he/admin/advanced/errors.json
+trans.hr = public/language/hr/admin/advanced/errors.json
trans.hu = public/language/hu/admin/advanced/errors.json
trans.id = public/language/id/admin/advanced/errors.json
trans.it = public/language/it/admin/advanced/errors.json
@@ -1316,6 +1343,7 @@ trans.fi = public/language/fi/admin/advanced/events.json
trans.fr = public/language/fr/admin/advanced/events.json
trans.gl = public/language/gl/admin/advanced/events.json
trans.he = public/language/he/admin/advanced/events.json
+trans.hr = public/language/hr/admin/advanced/events.json
trans.hu = public/language/hu/admin/advanced/events.json
trans.id = public/language/id/admin/advanced/events.json
trans.it = public/language/it/admin/advanced/events.json
@@ -1364,6 +1392,7 @@ trans.fi = public/language/fi/admin/advanced/logs.json
trans.fr = public/language/fr/admin/advanced/logs.json
trans.gl = public/language/gl/admin/advanced/logs.json
trans.he = public/language/he/admin/advanced/logs.json
+trans.hr = public/language/hr/admin/advanced/logs.json
trans.hu = public/language/hu/admin/advanced/logs.json
trans.id = public/language/id/admin/advanced/logs.json
trans.it = public/language/it/admin/advanced/logs.json
@@ -1412,6 +1441,7 @@ trans.fi = public/language/fi/admin/appearance/customise.json
trans.fr = public/language/fr/admin/appearance/customise.json
trans.gl = public/language/gl/admin/appearance/customise.json
trans.he = public/language/he/admin/appearance/customise.json
+trans.hr = public/language/hr/admin/appearance/customise.json
trans.hu = public/language/hu/admin/appearance/customise.json
trans.id = public/language/id/admin/appearance/customise.json
trans.it = public/language/it/admin/appearance/customise.json
@@ -1460,6 +1490,7 @@ trans.fi = public/language/fi/admin/appearance/skins.json
trans.fr = public/language/fr/admin/appearance/skins.json
trans.gl = public/language/gl/admin/appearance/skins.json
trans.he = public/language/he/admin/appearance/skins.json
+trans.hr = public/language/hr/admin/appearance/skins.json
trans.hu = public/language/hu/admin/appearance/skins.json
trans.id = public/language/id/admin/appearance/skins.json
trans.it = public/language/it/admin/appearance/skins.json
@@ -1508,6 +1539,7 @@ trans.fi = public/language/fi/admin/appearance/themes.json
trans.fr = public/language/fr/admin/appearance/themes.json
trans.gl = public/language/gl/admin/appearance/themes.json
trans.he = public/language/he/admin/appearance/themes.json
+trans.hr = public/language/hr/admin/appearance/themes.json
trans.hu = public/language/hu/admin/appearance/themes.json
trans.id = public/language/id/admin/appearance/themes.json
trans.it = public/language/it/admin/appearance/themes.json
@@ -1556,6 +1588,7 @@ trans.fi = public/language/fi/admin/development/info.json
trans.fr = public/language/fr/admin/development/info.json
trans.gl = public/language/gl/admin/development/info.json
trans.he = public/language/he/admin/development/info.json
+trans.hr = public/language/hr/admin/development/info.json
trans.hu = public/language/hu/admin/development/info.json
trans.id = public/language/id/admin/development/info.json
trans.it = public/language/it/admin/development/info.json
@@ -1604,6 +1637,7 @@ trans.fi = public/language/fi/admin/development/logger.json
trans.fr = public/language/fr/admin/development/logger.json
trans.gl = public/language/gl/admin/development/logger.json
trans.he = public/language/he/admin/development/logger.json
+trans.hr = public/language/hr/admin/development/logger.json
trans.hu = public/language/hu/admin/development/logger.json
trans.id = public/language/id/admin/development/logger.json
trans.it = public/language/it/admin/development/logger.json
@@ -1652,6 +1686,7 @@ trans.fi = public/language/fi/admin/extend/plugins.json
trans.fr = public/language/fr/admin/extend/plugins.json
trans.gl = public/language/gl/admin/extend/plugins.json
trans.he = public/language/he/admin/extend/plugins.json
+trans.hr = public/language/hr/admin/extend/plugins.json
trans.hu = public/language/hu/admin/extend/plugins.json
trans.id = public/language/id/admin/extend/plugins.json
trans.it = public/language/it/admin/extend/plugins.json
@@ -1700,6 +1735,7 @@ trans.fi = public/language/fi/admin/extend/rewards.json
trans.fr = public/language/fr/admin/extend/rewards.json
trans.gl = public/language/gl/admin/extend/rewards.json
trans.he = public/language/he/admin/extend/rewards.json
+trans.hr = public/language/hr/admin/extend/rewards.json
trans.hu = public/language/hu/admin/extend/rewards.json
trans.id = public/language/id/admin/extend/rewards.json
trans.it = public/language/it/admin/extend/rewards.json
@@ -1748,6 +1784,7 @@ trans.fi = public/language/fi/admin/extend/widgets.json
trans.fr = public/language/fr/admin/extend/widgets.json
trans.gl = public/language/gl/admin/extend/widgets.json
trans.he = public/language/he/admin/extend/widgets.json
+trans.hr = public/language/hr/admin/extend/widgets.json
trans.hu = public/language/hu/admin/extend/widgets.json
trans.id = public/language/id/admin/extend/widgets.json
trans.it = public/language/it/admin/extend/widgets.json
@@ -1796,6 +1833,7 @@ trans.fi = public/language/fi/admin/general/dashboard.json
trans.fr = public/language/fr/admin/general/dashboard.json
trans.gl = public/language/gl/admin/general/dashboard.json
trans.he = public/language/he/admin/general/dashboard.json
+trans.hr = public/language/hr/admin/general/dashboard.json
trans.hu = public/language/hu/admin/general/dashboard.json
trans.id = public/language/id/admin/general/dashboard.json
trans.it = public/language/it/admin/general/dashboard.json
@@ -1844,6 +1882,7 @@ trans.fi = public/language/fi/admin/general/homepage.json
trans.fr = public/language/fr/admin/general/homepage.json
trans.gl = public/language/gl/admin/general/homepage.json
trans.he = public/language/he/admin/general/homepage.json
+trans.hr = public/language/hr/admin/general/homepage.json
trans.hu = public/language/hu/admin/general/homepage.json
trans.id = public/language/id/admin/general/homepage.json
trans.it = public/language/it/admin/general/homepage.json
@@ -1892,6 +1931,7 @@ trans.fi = public/language/fi/admin/general/languages.json
trans.fr = public/language/fr/admin/general/languages.json
trans.gl = public/language/gl/admin/general/languages.json
trans.he = public/language/he/admin/general/languages.json
+trans.hr = public/language/hr/admin/general/languages.json
trans.hu = public/language/hu/admin/general/languages.json
trans.id = public/language/id/admin/general/languages.json
trans.it = public/language/it/admin/general/languages.json
@@ -1940,6 +1980,7 @@ trans.fi = public/language/fi/admin/general/navigation.json
trans.fr = public/language/fr/admin/general/navigation.json
trans.gl = public/language/gl/admin/general/navigation.json
trans.he = public/language/he/admin/general/navigation.json
+trans.hr = public/language/hr/admin/general/navigation.json
trans.hu = public/language/hu/admin/general/navigation.json
trans.id = public/language/id/admin/general/navigation.json
trans.it = public/language/it/admin/general/navigation.json
@@ -1988,6 +2029,7 @@ trans.fi = public/language/fi/admin/general/social.json
trans.fr = public/language/fr/admin/general/social.json
trans.gl = public/language/gl/admin/general/social.json
trans.he = public/language/he/admin/general/social.json
+trans.hr = public/language/hr/admin/general/social.json
trans.hu = public/language/hu/admin/general/social.json
trans.id = public/language/id/admin/general/social.json
trans.it = public/language/it/admin/general/social.json
@@ -2036,6 +2078,7 @@ trans.fi = public/language/fi/admin/general/sounds.json
trans.fr = public/language/fr/admin/general/sounds.json
trans.gl = public/language/gl/admin/general/sounds.json
trans.he = public/language/he/admin/general/sounds.json
+trans.hr = public/language/hr/admin/general/sounds.json
trans.hu = public/language/hu/admin/general/sounds.json
trans.id = public/language/id/admin/general/sounds.json
trans.it = public/language/it/admin/general/sounds.json
@@ -2084,6 +2127,7 @@ trans.fi = public/language/fi/admin/manage/categories.json
trans.fr = public/language/fr/admin/manage/categories.json
trans.gl = public/language/gl/admin/manage/categories.json
trans.he = public/language/he/admin/manage/categories.json
+trans.hr = public/language/hr/admin/manage/categories.json
trans.hu = public/language/hu/admin/manage/categories.json
trans.id = public/language/id/admin/manage/categories.json
trans.it = public/language/it/admin/manage/categories.json
@@ -2132,6 +2176,7 @@ trans.fi = public/language/fi/admin/manage/groups.json
trans.fr = public/language/fr/admin/manage/groups.json
trans.gl = public/language/gl/admin/manage/groups.json
trans.he = public/language/he/admin/manage/groups.json
+trans.hr = public/language/hr/admin/manage/groups.json
trans.hu = public/language/hu/admin/manage/groups.json
trans.id = public/language/id/admin/manage/groups.json
trans.it = public/language/it/admin/manage/groups.json
@@ -2180,6 +2225,7 @@ trans.fi = public/language/fi/admin/manage/ip-blacklist.json
trans.fr = public/language/fr/admin/manage/ip-blacklist.json
trans.gl = public/language/gl/admin/manage/ip-blacklist.json
trans.he = public/language/he/admin/manage/ip-blacklist.json
+trans.hr = public/language/hr/admin/manage/ip-blacklist.json
trans.hu = public/language/hu/admin/manage/ip-blacklist.json
trans.id = public/language/id/admin/manage/ip-blacklist.json
trans.it = public/language/it/admin/manage/ip-blacklist.json
@@ -2228,6 +2274,7 @@ trans.fi = public/language/fi/admin/manage/registration.json
trans.fr = public/language/fr/admin/manage/registration.json
trans.gl = public/language/gl/admin/manage/registration.json
trans.he = public/language/he/admin/manage/registration.json
+trans.hr = public/language/hr/admin/manage/registration.json
trans.hu = public/language/hu/admin/manage/registration.json
trans.id = public/language/id/admin/manage/registration.json
trans.it = public/language/it/admin/manage/registration.json
@@ -2276,6 +2323,7 @@ trans.fi = public/language/fi/admin/manage/tags.json
trans.fr = public/language/fr/admin/manage/tags.json
trans.gl = public/language/gl/admin/manage/tags.json
trans.he = public/language/he/admin/manage/tags.json
+trans.hr = public/language/hr/admin/manage/tags.json
trans.hu = public/language/hu/admin/manage/tags.json
trans.id = public/language/id/admin/manage/tags.json
trans.it = public/language/it/admin/manage/tags.json
@@ -2324,6 +2372,7 @@ trans.fi = public/language/fi/admin/manage/users.json
trans.fr = public/language/fr/admin/manage/users.json
trans.gl = public/language/gl/admin/manage/users.json
trans.he = public/language/he/admin/manage/users.json
+trans.hr = public/language/hr/admin/manage/users.json
trans.hu = public/language/hu/admin/manage/users.json
trans.id = public/language/id/admin/manage/users.json
trans.it = public/language/it/admin/manage/users.json
@@ -2372,6 +2421,7 @@ trans.fi = public/language/fi/admin/settings/advanced.json
trans.fr = public/language/fr/admin/settings/advanced.json
trans.gl = public/language/gl/admin/settings/advanced.json
trans.he = public/language/he/admin/settings/advanced.json
+trans.hr = public/language/hr/admin/settings/advanced.json
trans.hu = public/language/hu/admin/settings/advanced.json
trans.id = public/language/id/admin/settings/advanced.json
trans.it = public/language/it/admin/settings/advanced.json
@@ -2420,6 +2470,7 @@ trans.fi = public/language/fi/admin/settings/cookies.json
trans.fr = public/language/fr/admin/settings/cookies.json
trans.gl = public/language/gl/admin/settings/cookies.json
trans.he = public/language/he/admin/settings/cookies.json
+trans.hr = public/language/hr/admin/settings/cookies.json
trans.hu = public/language/hu/admin/settings/cookies.json
trans.id = public/language/id/admin/settings/cookies.json
trans.it = public/language/it/admin/settings/cookies.json
@@ -2468,6 +2519,7 @@ trans.fi = public/language/fi/admin/settings/general.json
trans.fr = public/language/fr/admin/settings/general.json
trans.gl = public/language/gl/admin/settings/general.json
trans.he = public/language/he/admin/settings/general.json
+trans.hr = public/language/hr/admin/settings/general.json
trans.hu = public/language/hu/admin/settings/general.json
trans.id = public/language/id/admin/settings/general.json
trans.it = public/language/it/admin/settings/general.json
@@ -2516,6 +2568,7 @@ trans.fi = public/language/fi/admin/settings/guest.json
trans.fr = public/language/fr/admin/settings/guest.json
trans.gl = public/language/gl/admin/settings/guest.json
trans.he = public/language/he/admin/settings/guest.json
+trans.hr = public/language/hr/admin/settings/guest.json
trans.hu = public/language/hu/admin/settings/guest.json
trans.id = public/language/id/admin/settings/guest.json
trans.it = public/language/it/admin/settings/guest.json
@@ -2564,6 +2617,7 @@ trans.fi = public/language/fi/admin/settings/pagination.json
trans.fr = public/language/fr/admin/settings/pagination.json
trans.gl = public/language/gl/admin/settings/pagination.json
trans.he = public/language/he/admin/settings/pagination.json
+trans.hr = public/language/hr/admin/settings/pagination.json
trans.hu = public/language/hu/admin/settings/pagination.json
trans.id = public/language/id/admin/settings/pagination.json
trans.it = public/language/it/admin/settings/pagination.json
@@ -2612,6 +2666,7 @@ trans.fi = public/language/fi/admin/settings/reputation.json
trans.fr = public/language/fr/admin/settings/reputation.json
trans.gl = public/language/gl/admin/settings/reputation.json
trans.he = public/language/he/admin/settings/reputation.json
+trans.hr = public/language/hr/admin/settings/reputation.json
trans.hu = public/language/hu/admin/settings/reputation.json
trans.id = public/language/id/admin/settings/reputation.json
trans.it = public/language/it/admin/settings/reputation.json
@@ -2660,6 +2715,7 @@ trans.fi = public/language/fi/admin/settings/tags.json
trans.fr = public/language/fr/admin/settings/tags.json
trans.gl = public/language/gl/admin/settings/tags.json
trans.he = public/language/he/admin/settings/tags.json
+trans.hr = public/language/hr/admin/settings/tags.json
trans.hu = public/language/hu/admin/settings/tags.json
trans.id = public/language/id/admin/settings/tags.json
trans.it = public/language/it/admin/settings/tags.json
@@ -2708,6 +2764,7 @@ trans.fi = public/language/fi/admin/settings/user.json
trans.fr = public/language/fr/admin/settings/user.json
trans.gl = public/language/gl/admin/settings/user.json
trans.he = public/language/he/admin/settings/user.json
+trans.hr = public/language/hr/admin/settings/user.json
trans.hu = public/language/hu/admin/settings/user.json
trans.id = public/language/id/admin/settings/user.json
trans.it = public/language/it/admin/settings/user.json
@@ -2756,6 +2813,7 @@ trans.fi = public/language/fi/admin/settings/chat.json
trans.fr = public/language/fr/admin/settings/chat.json
trans.gl = public/language/gl/admin/settings/chat.json
trans.he = public/language/he/admin/settings/chat.json
+trans.hr = public/language/hr/admin/settings/chat.json
trans.hu = public/language/hu/admin/settings/chat.json
trans.id = public/language/id/admin/settings/chat.json
trans.it = public/language/it/admin/settings/chat.json
@@ -2804,6 +2862,7 @@ trans.fi = public/language/fi/admin/settings/email.json
trans.fr = public/language/fr/admin/settings/email.json
trans.gl = public/language/gl/admin/settings/email.json
trans.he = public/language/he/admin/settings/email.json
+trans.hr = public/language/hr/admin/settings/email.json
trans.hu = public/language/hu/admin/settings/email.json
trans.id = public/language/id/admin/settings/email.json
trans.it = public/language/it/admin/settings/email.json
@@ -2852,6 +2911,7 @@ trans.fi = public/language/fi/admin/settings/group.json
trans.fr = public/language/fr/admin/settings/group.json
trans.gl = public/language/gl/admin/settings/group.json
trans.he = public/language/he/admin/settings/group.json
+trans.hr = public/language/hr/admin/settings/group.json
trans.hu = public/language/hu/admin/settings/group.json
trans.id = public/language/id/admin/settings/group.json
trans.it = public/language/it/admin/settings/group.json
@@ -2900,6 +2960,7 @@ trans.fi = public/language/fi/admin/settings/notifications.json
trans.fr = public/language/fr/admin/settings/notifications.json
trans.gl = public/language/gl/admin/settings/notifications.json
trans.he = public/language/he/admin/settings/notifications.json
+trans.hr = public/language/hr/admin/settings/notifications.json
trans.hu = public/language/hu/admin/settings/notifications.json
trans.id = public/language/id/admin/settings/notifications.json
trans.it = public/language/it/admin/settings/notifications.json
@@ -2948,6 +3009,7 @@ trans.fi = public/language/fi/admin/settings/post.json
trans.fr = public/language/fr/admin/settings/post.json
trans.gl = public/language/gl/admin/settings/post.json
trans.he = public/language/he/admin/settings/post.json
+trans.hr = public/language/hr/admin/settings/post.json
trans.hu = public/language/hu/admin/settings/post.json
trans.id = public/language/id/admin/settings/post.json
trans.it = public/language/it/admin/settings/post.json
@@ -2996,6 +3058,7 @@ trans.fi = public/language/fi/admin/settings/sockets.json
trans.fr = public/language/fr/admin/settings/sockets.json
trans.gl = public/language/gl/admin/settings/sockets.json
trans.he = public/language/he/admin/settings/sockets.json
+trans.hr = public/language/hr/admin/settings/sockets.json
trans.hu = public/language/hu/admin/settings/sockets.json
trans.id = public/language/id/admin/settings/sockets.json
trans.it = public/language/it/admin/settings/sockets.json
@@ -3044,6 +3107,7 @@ trans.fi = public/language/fi/admin/settings/uploads.json
trans.fr = public/language/fr/admin/settings/uploads.json
trans.gl = public/language/gl/admin/settings/uploads.json
trans.he = public/language/he/admin/settings/uploads.json
+trans.hr = public/language/hr/admin/settings/uploads.json
trans.hu = public/language/hu/admin/settings/uploads.json
trans.id = public/language/id/admin/settings/uploads.json
trans.it = public/language/it/admin/settings/uploads.json
@@ -3092,6 +3156,7 @@ trans.fi = public/language/fi/admin/settings/web-crawler.json
trans.fr = public/language/fr/admin/settings/web-crawler.json
trans.gl = public/language/gl/admin/settings/web-crawler.json
trans.he = public/language/he/admin/settings/web-crawler.json
+trans.hr = public/language/hr/admin/settings/web-crawler.json
trans.hu = public/language/hu/admin/settings/web-crawler.json
trans.id = public/language/id/admin/settings/web-crawler.json
trans.it = public/language/it/admin/settings/web-crawler.json
diff --git a/Gruntfile.js b/Gruntfile.js
index c97795e743..9a84c15aa0 100644
--- a/Gruntfile.js
+++ b/Gruntfile.js
@@ -8,6 +8,8 @@ var initWorker;
var incomplete = [];
var running = 0;
+env.NODE_ENV = env.NODE_ENV || 'development';
+
module.exports = function (grunt) {
var args = [];
var initArgs = ['--build'];
diff --git a/app.js b/app.js
index 26336a74c8..edb8565559 100644
--- a/app.js
+++ b/app.js
@@ -203,7 +203,8 @@ function upgrade() {
// Skip build
tasks.pop();
}
-
+ // disable mongo timeouts during upgrade
+ nconf.set('mongo:options:socketTimeoutMS', 0);
async.series(tasks, function (err) {
if (err) {
winston.error(err.stack);
diff --git a/nodebb b/nodebb
index 22051bb810..2b71185d4e 100755
--- a/nodebb
+++ b/nodebb
@@ -2,10 +2,28 @@
'use strict';
-var cproc;
-var args;
-var fs;
-var path;
+var fs = require('fs');
+var path = require('path');
+var cproc = require('child_process');
+
+// check to make sure dependencies are installed
+try {
+ fs.readFileSync(path.join(__dirname, 'node_modules/async/package.json'));
+} catch (e) {
+ if (e.code === 'ENOENT') {
+ process.stdout.write('Dependencies not yet installed.\n');
+ process.stdout.write('Installing them now...\n\n');
+
+ cproc.execSync('npm i --production', {
+ cwd: __dirname,
+ stdio: [0, 1, 2],
+ });
+ } else {
+ throw e;
+ }
+}
+
+var minimist;
var request;
var semver;
var prompt;
@@ -13,25 +31,23 @@ var async;
try {
require('colors');
- cproc = require('child_process');
- args = require('minimist')(process.argv.slice(2));
- fs = require('fs');
- path = require('path');
+ minimist = require('minimist');
request = require('request');
semver = require('semver');
prompt = require('prompt');
async = require('async');
} catch (e) {
- if (e.code === 'MODULE_NOT_FOUND') {
- process.stdout.write('NodeBB could not be started because it\'s dependencies have not been installed.\n');
- process.stdout.write('Please ensure that you have executed "npm install --production" prior to running NodeBB.\n\n');
- process.stdout.write('For more information, please see: https://docs.nodebb.org/en/latest/installing/os.html\n\n');
- process.stdout.write('Could not start: ' + e.code + '\n');
+ process.stdout.write(
+ '\x1b[31mNodeBB could not be initialised because there was an error while loading dependencies.\n' +
+ 'Please run "\x1b[33mnpm install --production\x1b[31m" and try again.\x1b[0m\n\n' +
+ 'For more information, please see: https://docs.nodebb.org/en/latest/installing/os.html\n\n'
+ );
- process.exit(1);
- }
+ throw e;
}
+var args = minimist(process.argv.slice(2));
+
var loaderPath = path.join(__dirname, 'loader.js');
var appPath = path.join(__dirname, 'app.js');
diff --git a/package.json b/package.json
index 7eb27cf003..0277e827cb 100644
--- a/package.json
+++ b/package.json
@@ -17,10 +17,10 @@
"coveralls": "istanbul cover _mocha --report lcovonly -- -R dot && cat ./coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js && rm -rf ./coverage"
},
"dependencies": {
- "async": "^2.1.4",
"ace-builds": "^1.2.6",
- "autoprefixer": "^6.2.3",
- "bcryptjs": "~2.3.0",
+ "async": "2.4.1",
+ "autoprefixer": "7.1.1",
+ "bcryptjs": "2.4.3",
"body-parser": "^1.9.0",
"bootstrap": "^3.3.7",
"chart.js": "^2.4.0",
@@ -30,7 +30,7 @@
"connect-flash": "^0.1.1",
"connect-mongo": "1.3.2",
"connect-multiparty": "^2.0.0",
- "connect-redis": "~3.1.0",
+ "connect-redis": "3.3.0",
"cookie-parser": "^1.3.3",
"cron": "^1.0.5",
"cropperjs": "^0.8.1",
@@ -39,65 +39,65 @@
"express": "^4.14.0",
"express-session": "^1.8.2",
"express-useragent": "1.0.7",
- "html-to-text": "2.1.3",
- "ip": "1.1.3",
- "jimp": "0.2.27",
+ "html-to-text": "3.3.0",
+ "ip": "1.1.5",
+ "jimp": "0.2.28",
"jquery": "^3.1.0",
"json-2-csv": "^2.0.22",
"less": "^2.0.0",
+ "lodash": "^4.17.4",
+ "lodash.padstart": "^4.6.1",
"logrotate-stream": "^0.2.3",
"lru-cache": "4.0.2",
"mime": "^1.3.4",
"minimist": "^1.1.1",
"mkdirp": "~0.5.0",
- "mongodb": "2.2.25",
+ "mongodb": "2.2.27",
"morgan": "^1.3.2",
"mousetrap": "^1.5.3",
"nconf": "~0.8.2",
- "nodebb-plugin-composer-default": "4.4.7",
+ "nodebb-plugin-composer-default": "4.4.10",
"nodebb-plugin-dbsearch": "2.0.2",
"nodebb-plugin-emoji-extended": "1.1.1",
"nodebb-plugin-emoji-one": "1.2.1",
"nodebb-plugin-markdown": "7.1.1",
"nodebb-plugin-mentions": "2.0.3",
"nodebb-plugin-soundpack-default": "1.0.0",
- "nodebb-plugin-spam-be-gone": "0.4.13",
+ "nodebb-plugin-spam-be-gone": "0.5.0",
"nodebb-rewards-essentials": "0.0.9",
"nodebb-theme-lavender": "4.0.0",
- "nodebb-theme-persona": "5.0.0",
- "nodebb-theme-vanilla": "6.0.0",
+ "nodebb-theme-persona": "5.0.3",
+ "nodebb-theme-vanilla": "6.0.3",
"nodebb-widget-essentials": "3.0.0",
"nodemailer": "2.6.4",
"nodemailer-sendmail-transport": "1.0.0",
"nodemailer-smtp-transport": "^2.4.1",
"passport": "^0.3.0",
"passport-local": "1.0.0",
- "postcss": "^5.0.13",
- "postcss-clean": "^1.0.0",
+ "postcss": "6.0.1",
+ "postcss-clean": "1.0.2",
"promise-polyfill": "^6.0.2",
"prompt": "^1.0.0",
- "redis": "~2.6.2",
+ "redis": "2.7.1",
"request": "2.81.0",
- "rimraf": "~2.5.0",
+ "rimraf": "2.6.1",
"rss": "^1.0.0",
"sanitize-html": "^1.13.0",
"semver": "^5.1.0",
"serve-favicon": "^2.1.5",
"sitemap": "^1.4.0",
- "socket.io": "1.7.2",
- "socket.io-client": "1.7.2",
- "socket.io-redis": "3.1.0",
- "socketio-wildcard": "~0.3.0",
+ "socket.io": "2.0.1",
+ "socket.io-client": "2.0.1",
+ "socket.io-redis": "5.0.1",
+ "socketio-wildcard": "2.0.0",
"string": "^3.0.0",
- "templates.js": "0.3.10",
+ "templates.js": "0.3.11",
"toobusy-js": "^0.5.1",
- "uglify-js": "^2.6.0",
- "underscore": "^1.8.3",
- "underscore.deep": "^0.5.1",
- "validator": "^6.1.0",
+ "uglify-js": "^3.0.11",
+ "validator": "7.0.0",
"winston": "^2.1.0",
"xml": "^1.0.1",
- "xregexp": "~3.1.0",
+ "xregexp": "3.2.0",
"zxcvbn": "^4.4.2"
},
"devDependencies": {
@@ -108,6 +108,7 @@
"grunt": "~1.0.0",
"grunt-contrib-watch": "^1.0.0",
"istanbul": "^0.4.2",
+ "jsdom": "9.12.0",
"mocha": "~3.2.0",
"mocha-lcov-reporter": "^1.2.0",
"xmlhttprequest": "1.8.0",
diff --git a/public/language/ar/admin/general/dashboard.json b/public/language/ar/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/ar/admin/general/dashboard.json
+++ b/public/language/ar/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/bg/admin/general/dashboard.json b/public/language/bg/admin/general/dashboard.json
index 871f61f7b0..23335e4652 100644
--- a/public/language/bg/admin/general/dashboard.json
+++ b/public/language/bg/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Потребители",
"posts": "Публикации",
"topics": "Теми",
- "page-views-last-month": "Преглеждания на страниците през последния месец",
- "page-views-this-month": "Преглеждания на страниците този месец",
- "page-views-last-day": "Преглеждания на страниците през последните 24 часа",
+ "page-views-seven": "Последните 7 дни",
+ "page-views-thirty": "Последните 30 дни",
+ "page-views-last-day": "Последните 24 часа",
+ "page-views-custom": "Интервал по избор",
+ "page-views-custom-start": "Начална дата",
+ "page-views-custom-end": "Крайна дата",
+ "page-views-custom-help": "Въведете интервал от дати, за които искате да видите преглежданията на страниците. Ако не се появи календар за избор, можете да въведете датите във формат: ГГГГ-ММ-ДД",
+ "page-views-custom-error": "Моля, въведете правилен интервал от дати във формата: ГГГГ-ММ-ДД",
"stats.day": "Ден",
"stats.week": "Седмица",
diff --git a/public/language/bn/admin/general/dashboard.json b/public/language/bn/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/bn/admin/general/dashboard.json
+++ b/public/language/bn/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/cs/admin/general/dashboard.json b/public/language/cs/admin/general/dashboard.json
index fd3e417771..eb269bc916 100644
--- a/public/language/cs/admin/general/dashboard.json
+++ b/public/language/cs/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/cs/flags.json b/public/language/cs/flags.json
index c4bfed6f23..aea0e868e4 100644
--- a/public/language/cs/flags.json
+++ b/public/language/cs/flags.json
@@ -54,7 +54,7 @@
"modal-body": "Please specify your reason for flagging %1 %2 for review. Alternatively, use one of the quick report buttons if applicable.",
"modal-reason-spam": "Spam",
"modal-reason-offensive": "Offensive",
- "modal-reason-custom": "Reason for reporting this content...",
+ "modal-reason-custom": "Důvod nahlášení tohoto obsahu…",
"modal-submit": "Submit Report",
"modal-submit-success": "Content has been flagged for moderation."
}
\ No newline at end of file
diff --git a/public/language/da/admin/general/dashboard.json b/public/language/da/admin/general/dashboard.json
index 19c1bc9f75..07714e37e8 100644
--- a/public/language/da/admin/general/dashboard.json
+++ b/public/language/da/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Side Visninger Sidste Måned",
- "page-views-this-month": "Side Visninger Denne Måned",
- "page-views-last-day": "Side visninger i de sidste 24 timer",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Dag",
"stats.week": "Uge",
diff --git a/public/language/de/admin/general/dashboard.json b/public/language/de/admin/general/dashboard.json
index 29772ca3e6..79e3006735 100644
--- a/public/language/de/admin/general/dashboard.json
+++ b/public/language/de/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Benutzer",
"posts": "Beiträge",
"topics": "Themen",
- "page-views-last-month": "Aufrufe im letzten Monat",
- "page-views-this-month": "Aufrufe in diesem Monat",
- "page-views-last-day": "Aufrufe in den letzten 24 Stunden",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Diesen Tag",
"stats.week": "Diese Woche",
diff --git a/public/language/de/admin/manage/groups.json b/public/language/de/admin/manage/groups.json
index f6df5ca99e..fa7244a3e5 100644
--- a/public/language/de/admin/manage/groups.json
+++ b/public/language/de/admin/manage/groups.json
@@ -1,7 +1,7 @@
{
"name": "Gruppenname",
"description": "Gruppenbeschreibung",
- "member-count": "Member Count",
+ "member-count": "Mitglieder Anzahl",
"system": "System-Gruppe",
"edit": "Ändern",
"search-placeholder": "Suchen",
diff --git a/public/language/de/admin/settings/advanced.json b/public/language/de/admin/settings/advanced.json
index cca15102cc..87c5b2ca21 100644
--- a/public/language/de/admin/settings/advanced.json
+++ b/public/language/de/admin/settings/advanced.json
@@ -6,7 +6,7 @@
"headers.allow-from": "ALLOW-FROM setzen um NodeBB in einem iFrame zu platzieren",
"headers.powered-by": "Anpassen des \"Powered By\" Headers von NodeBB",
"headers.acao": "Access-Control-Allow-Origin",
- "headers.acao-help": "To deny access to all sites, leave empty",
+ "headers.acao-help": "Um den Zugriff zu allen Seiten zu verbieten, leer lassen.",
"headers.acam": "Access-Control-Allow-Methods",
"headers.acah": "Access-Control-Allow-Headers",
"traffic-management": "Traffic Management",
diff --git a/public/language/de/email.json b/public/language/de/email.json
index 490001d405..1ade727750 100644
--- a/public/language/de/email.json
+++ b/public/language/de/email.json
@@ -32,8 +32,8 @@
"notif.post.unsub.info": "Diese Mitteilung wurde dir aufgrund deiner Abonnement-Einstellungen gesendet.",
"test.text1": "Dies ist eine Test-E-Mail, um zu überprüfen, ob der E-Mailer deines NodeBB korrekt eingestellt wurde.",
"unsub.cta": "Klicke hier, um diese Einstellungen zu ändern.",
- "banned.subject": "You have been banned from %1",
- "banned.text1": "The user %1 has been banned from %2.",
+ "banned.subject": "Du wurdest von %1 gebannt.",
+ "banned.text1": "Der Benutzer %1 wurde von %2 gebannt.",
"banned.text2": "This ban will last until %1.",
"banned.text3": "This is the reason why you have been banned:",
"closing": "Danke!"
diff --git a/public/language/de/error.json b/public/language/de/error.json
index ea969f8284..51526a9041 100644
--- a/public/language/de/error.json
+++ b/public/language/de/error.json
@@ -30,7 +30,7 @@
"password-too-long": "Passwort ist zu lang",
"user-banned": "Benutzer ist gesperrt",
"user-banned-reason": "Entschuldige, dieses Konto wurde gebannt (Grund: %1)",
- "user-banned-reason-until": "Sorry, this account has been banned until %1 (Reason: %2)",
+ "user-banned-reason-until": "Entschuldigung, dieser Account wurde bis %1 (Reason: %2) gebannt.",
"user-too-new": "Entschuldigung, du musst %1 Sekunde(n) warten, bevor du deinen ersten Beitrag schreiben kannst.",
"blacklisted-ip": "Deine IP-Adresse ist für diese Plattform gesperrt. Sollte dies ein Irrtum sein, dann kontaktiere bitte einen Administrator.",
"ban-expiry-missing": "Bitte gebe ein Enddatum für diesen Ban an",
@@ -105,7 +105,7 @@
"chat-disabled": "Das Chatsystem deaktiviert",
"too-many-messages": "Du hast zu viele Nachrichten versandt, bitte warte eine Weile.",
"invalid-chat-message": "Ungültige Nachricht",
- "chat-message-too-long": "Chat messages can not be longer than %1 characters.",
+ "chat-message-too-long": "Chat Nachricht darf nicht länger als %1 Zeichen sein.",
"cant-edit-chat-message": "Du darfst diese Nachricht nicht ändern",
"cant-remove-last-user": "Du kannst den letzten Benutzer nicht entfernen",
"cant-delete-chat-message": "Du darfst diese Nachricht nicht löschen",
diff --git a/public/language/de/flags.json b/public/language/de/flags.json
index c4bfed6f23..974ba725ff 100644
--- a/public/language/de/flags.json
+++ b/public/language/de/flags.json
@@ -1,60 +1,60 @@
{
- "state": "State",
- "reporter": "Reporter",
- "reported-at": "Reported At",
- "description": "Description",
- "no-flags": "Hooray! No flags found.",
- "assignee": "Assignee",
- "update": "Update",
- "updated": "Updated",
- "target-purged": "The content this flag referred to has been purged and is no longer available.",
+ "state": "Zustand",
+ "reporter": "Meldender",
+ "reported-at": "Gemeldet am",
+ "description": "Beschreibung",
+ "no-flags": "Hurra! Keine Meldungen gefunden.",
+ "assignee": "Zugeordneter Benutzer",
+ "update": "Aktualisieren",
+ "updated": "Aktualisiert",
+ "target-purged": "Der Inhalt auf den diese Meldung hingewiesen hat, wurde gelöscht und ist nicht mehr verfügbar.",
- "quick-filters": "Quick Filters",
- "filter-active": "There are one or more filters active in this list of flags",
- "filter-reset": "Remove Filters",
- "filters": "Filter Options",
- "filter-reporterId": "Reporter UID",
- "filter-targetUid": "Flagged UID",
- "filter-type": "Flag Type",
- "filter-type-all": "All Content",
- "filter-type-post": "Post",
- "filter-state": "State",
- "filter-assignee": "Assignee UID",
- "filter-cid": "Category",
- "filter-quick-mine": "Assigned to me",
- "filter-cid-all": "All categories",
- "apply-filters": "Apply Filters",
+ "quick-filters": "Schnell-Filter",
+ "filter-active": "Ein oder mehrere Filter sind in dieser Meldungs-Liste aktiv",
+ "filter-reset": "Filter Entfernen",
+ "filters": "Filter Optionen",
+ "filter-reporterId": "Melder UID",
+ "filter-targetUid": "Gemeldete UID",
+ "filter-type": "Meldungstyp",
+ "filter-type-all": "Gesamter Inhalt",
+ "filter-type-post": "Beitrag",
+ "filter-state": "Status",
+ "filter-assignee": "UID des Zugewiesenen",
+ "filter-cid": "Kategorie",
+ "filter-quick-mine": "Mir zugewiesen",
+ "filter-cid-all": "Alle Kategorien",
+ "apply-filters": "Filter anwenden",
- "quick-links": "Quick Links",
- "flagged-user": "Flagged User",
- "view-profile": "View Profile",
- "start-new-chat": "Start New Chat",
- "go-to-target": "View Flag Target",
+ "quick-links": "Schnellnavigation",
+ "flagged-user": "Gemeldeter Benutzer",
+ "view-profile": "Profil ansehen",
+ "start-new-chat": "Neuen Chat beginnen",
+ "go-to-target": "Meldungsziel ansehen",
- "user-view": "View Profile",
- "user-edit": "Edit Profile",
+ "user-view": "Profil ansehen",
+ "user-edit": "Profil bearbeiten",
- "notes": "Flag Notes",
- "add-note": "Add Note",
- "no-notes": "No shared notes.",
+ "notes": "Meldungsnotizen",
+ "add-note": "Notiz hinzufügen",
+ "no-notes": "Keine geteilten Notizen",
- "history": "Flag History",
- "back": "Back to Flags List",
- "no-history": "No flag history.",
+ "history": "Meldungsverlauf",
+ "back": "Zurück zur Meldungsliste",
+ "no-history": "Kein Meldungsverlauf",
- "state-all": "All states",
- "state-open": "New/Open",
- "state-wip": "Work in Progress",
- "state-resolved": "Resolved",
- "state-rejected": "Rejected",
- "no-assignee": "Not Assigned",
- "note-added": "Note Added",
+ "state-all": "Alle Status",
+ "state-open": "Neu/Öffnen",
+ "state-wip": "In Arbeit",
+ "state-resolved": "Gelöst",
+ "state-rejected": "Abgelehnt",
+ "no-assignee": "Nicht zugewiesen",
+ "note-added": "Notiz hinzugefügt",
- "modal-title": "Report Inappropriate Content",
- "modal-body": "Please specify your reason for flagging %1 %2 for review. Alternatively, use one of the quick report buttons if applicable.",
+ "modal-title": "Anstößige Inhalte Melden",
+ "modal-body": "Bitte geben Sie den Grund an, weshalb Sie %1 %2 melden wollen. Alternativ können Sie einen der Schnell-Meldungs-Knöpfe verwenden, wenn anwendbar.",
"modal-reason-spam": "Spam",
- "modal-reason-offensive": "Offensive",
- "modal-reason-custom": "Reason for reporting this content...",
- "modal-submit": "Submit Report",
- "modal-submit-success": "Content has been flagged for moderation."
+ "modal-reason-offensive": "Beleidigend",
+ "modal-reason-custom": "Grund für die Meldung dieses Inhalts...",
+ "modal-submit": "Meldung abschicken",
+ "modal-submit-success": "Der Inhalt wurde gemeldet."
}
\ No newline at end of file
diff --git a/public/language/de/modules.json b/public/language/de/modules.json
index a1cf19cea0..bb53b0fb87 100644
--- a/public/language/de/modules.json
+++ b/public/language/de/modules.json
@@ -20,7 +20,7 @@
"chat.three_months": "3 Monate",
"chat.delete_message_confirm": "Bist du sicher, dass du diese Nachricht löschen möchtest?",
"chat.add-users-to-room": "Benutzer zum Raum hinzufügen",
- "chat.confirm-chat-with-dnd-user": "This user has set their status to DnD(Do not disturb). Do you still want to chat with them?",
+ "chat.confirm-chat-with-dnd-user": "Dieser Benutzer hat seinen Status auf DnD(Bitte nicht stören) gesetzt. Möchtest du noch immer mit ihm chatten?",
"composer.compose": "Verfassen",
"composer.show_preview": "Vorschau zeigen",
"composer.hide_preview": "Vorschau ausblenden",
diff --git a/public/language/de/user.json b/public/language/de/user.json
index afcbb48c96..22dd586842 100644
--- a/public/language/de/user.json
+++ b/public/language/de/user.json
@@ -60,7 +60,7 @@
"username_taken_workaround": "Der gewünschte Benutzername ist bereits vergeben, deshalb haben wir ihn ein wenig verändert. Du bist jetzt unter dem Namen %1 bekannt.",
"password_same_as_username": "Dein Passwort entspricht deinem Benutzernamen, bitte wähle ein anderes Passwort.",
"password_same_as_email": "Dein Passwort entspricht deiner E-Mail-Adresse, bitte wähle ein anderes Passwort.",
- "weak_password": "Weak password.",
+ "weak_password": "Schwaches Password.",
"upload_picture": "Bild hochladen",
"upload_a_picture": "Ein Bild hochladen",
"remove_uploaded_picture": "Hochgeladenes Bild entfernen",
diff --git a/public/language/el/admin/general/dashboard.json b/public/language/el/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/el/admin/general/dashboard.json
+++ b/public/language/el/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/en-GB/admin/appearance/customise.json b/public/language/en-GB/admin/appearance/customise.json
index 767d443e29..5095f7a937 100644
--- a/public/language/en-GB/admin/appearance/customise.json
+++ b/public/language/en-GB/admin/appearance/customise.json
@@ -5,5 +5,8 @@
"custom-header": "Custom Header",
"custom-header.description": "Enter custom HTML here (ex. JavaScript, Meta Tags, etc.), which will be appended to the <head> section of your forum's markup.",
- "custom-header.enable": "Enable Custom Header"
+ "custom-header.enable": "Enable Custom Header",
+
+ "custom-css.livereload": "Enable Live Reload",
+ "custom-css.livereload.description": "Enable this to force all sessions on every device under your account to refresh whenever you click save"
}
\ No newline at end of file
diff --git a/public/language/en-GB/admin/development/info.json b/public/language/en-GB/admin/development/info.json
index 24bf179655..0a4ae6fe2c 100644
--- a/public/language/en-GB/admin/development/info.json
+++ b/public/language/en-GB/admin/development/info.json
@@ -6,6 +6,7 @@
"nodejs": "nodejs",
"online": "online",
"git": "git",
+ "memory": "memory",
"load": "load",
"uptime": "uptime",
diff --git a/public/language/en-GB/admin/general/dashboard.json b/public/language/en-GB/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/en-GB/admin/general/dashboard.json
+++ b/public/language/en-GB/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/en-GB/admin/settings/user.json b/public/language/en-GB/admin/settings/user.json
index b8f51c9288..fa8049c3a9 100644
--- a/public/language/en-GB/admin/settings/user.json
+++ b/public/language/en-GB/admin/settings/user.json
@@ -34,6 +34,8 @@
"registration.max-invites": "Maximum Invitations per User",
"max-invites": "Maximum Invitations per User",
"max-invites-help": "0 for no restriction. Admins get infinite invitations Only applicable for \"Invite Only\"",
+ "invite-expiration": "Invite expiration",
+ "invite-expiration-help": "# of days invitations expire in.",
"min-username-length": "Minimum Username Length",
"max-username-length": "Maximum Username Length",
"min-password-length": "Minimum Password Length",
diff --git a/public/language/en-GB/error.json b/public/language/en-GB/error.json
index 89222f622f..8d106b6a79 100644
--- a/public/language/en-GB/error.json
+++ b/public/language/en-GB/error.json
@@ -1,5 +1,6 @@
{
"invalid-data": "Invalid Data",
+ "invalid-json": "Invalid JSON",
"not-logged-in": "You don't seem to be logged in.",
"account-locked": "Your account has been locked temporarily",
diff --git a/public/language/en-GB/topic.json b/public/language/en-GB/topic.json
index b960fb0fba..727417ca5f 100644
--- a/public/language/en-GB/topic.json
+++ b/public/language/en-GB/topic.json
@@ -17,6 +17,7 @@
"quote": "Quote",
"reply": "Reply",
"replies_to_this_post": "%1 Replies",
+ "one_reply_to_this_post": "1 Reply",
"last_reply_time": "Last reply",
"reply-as-topic": "Reply as topic",
"guest-login-reply": "Log in to reply",
diff --git a/public/language/en-US/admin/general/dashboard.json b/public/language/en-US/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/en-US/admin/general/dashboard.json
+++ b/public/language/en-US/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/en-x-pirate/admin/general/dashboard.json b/public/language/en-x-pirate/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/en-x-pirate/admin/general/dashboard.json
+++ b/public/language/en-x-pirate/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/es/admin/extend/plugins.json b/public/language/es/admin/extend/plugins.json
index dba3e65d87..c2414d3a25 100644
--- a/public/language/es/admin/extend/plugins.json
+++ b/public/language/es/admin/extend/plugins.json
@@ -7,7 +7,7 @@
"none-active": "No hay Plug-ins activos",
"find-plugins": "Buscar Plug-in",
- "plugin-search": "Plug-in de Búsqueda",
+ "plugin-search": "Buscar",
"plugin-search-placeholder": "Búscando Plug-in",
"reorder-plugins": "Re-ordenar Plug-ins",
"order-active": "Ordenar Plug-ins Activos",
@@ -18,14 +18,14 @@
"order.explanation": "Los plug-in son cargados en el orden especificado, de arriba a abajo.",
"plugin-item.themes": "Temas",
- "plugin-item.deactivate": "Desactivado",
- "plugin-item.activate": "Activado",
+ "plugin-item.deactivate": "Desactivar",
+ "plugin-item.activate": "Activar",
"plugin-item.install": "Instalar",
"plugin-item.uninstall": "Desinstalar",
"plugin-item.settings": "Configuraciones",
"plugin-item.installed": "Instalados",
"plugin-item.latest": "Ultimos",
- "plugin-item.upgrade": "Actualizado",
+ "plugin-item.upgrade": "Actualizar",
"plugin-item.more-info": "Para mas información:",
"plugin-item.unknown": "Desconocido",
"plugin-item.unknown-explanation": "El estado de este plug-in no puede determinsarse, posiblemente es debido a un error de configuración.",
@@ -35,9 +35,9 @@
"alert.upgraded": "Plug-in Actualizado",
"alert.installed": "Plug-in Instalado",
"alert.uninstalled": "Plug-in Desinstalado",
- "alert.activate-success": "Por favor reinicia NodeBB para activar el plug-in por completo",
+ "alert.activate-success": "Por favor reiniciá NodeBB para activar el plug-in por completo",
"alert.deactivate-success": "Plugin successfully deactivated",
- "alert.upgrade-success": "Please reload your NodeBB to fully upgrade this plugin",
+ "alert.upgrade-success": "Por favor recargá NodeBB para actualizar el plug-in por completo",
"alert.install-success": "Plugin successfully installed, please activate the plugin.",
"alert.uninstall-success": "The plugin has been successfully deactivated and uninstalled.",
"alert.suggest-error": "
NodeBB could not reach the package manager, proceed with installation of latest version?
Server returned (%1): %2
",
diff --git a/public/language/es/admin/general/dashboard.json b/public/language/es/admin/general/dashboard.json
index c68d48da21..28bb5a07eb 100644
--- a/public/language/es/admin/general/dashboard.json
+++ b/public/language/es/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Usuario",
"posts": "Publicación",
"topics": "Temas",
- "page-views-last-month": "Vistas de la Pagina del Mes Pasado",
- "page-views-this-month": "Vistas de la Pagina de este Mes.",
- "page-views-last-day": "Vistas de la Pagina en las ultimas 24 horas",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Día",
"stats.week": "Semana",
diff --git a/public/language/es/flags.json b/public/language/es/flags.json
index c4bfed6f23..012d3181b0 100644
--- a/public/language/es/flags.json
+++ b/public/language/es/flags.json
@@ -1,60 +1,60 @@
{
- "state": "State",
- "reporter": "Reporter",
- "reported-at": "Reported At",
- "description": "Description",
- "no-flags": "Hooray! No flags found.",
- "assignee": "Assignee",
- "update": "Update",
- "updated": "Updated",
- "target-purged": "The content this flag referred to has been purged and is no longer available.",
+ "state": "Estado",
+ "reporter": "Reportador",
+ "reported-at": "Reportado en",
+ "description": "Descripción",
+ "no-flags": "Yeah! No se encontraron indicadores",
+ "assignee": "Asignado",
+ "update": "Actualizar",
+ "updated": "Actualizado",
+ "target-purged": "El contenido al que se refiere este indicador ha sido purgado y ya no está disponible.",
- "quick-filters": "Quick Filters",
- "filter-active": "There are one or more filters active in this list of flags",
- "filter-reset": "Remove Filters",
- "filters": "Filter Options",
- "filter-reporterId": "Reporter UID",
- "filter-targetUid": "Flagged UID",
- "filter-type": "Flag Type",
- "filter-type-all": "All Content",
+ "quick-filters": "Filtros rapidos",
+ "filter-active": "Hay uno o más filtros activos en esta lista de indicadores.",
+ "filter-reset": "Quitar filtros",
+ "filters": "Opciones de filtros",
+ "filter-reporterId": "UID del reportador",
+ "filter-targetUid": "Indicador UID",
+ "filter-type": "Tipo de indicador",
+ "filter-type-all": "Todo el contenido",
"filter-type-post": "Post",
- "filter-state": "State",
- "filter-assignee": "Assignee UID",
- "filter-cid": "Category",
- "filter-quick-mine": "Assigned to me",
- "filter-cid-all": "All categories",
- "apply-filters": "Apply Filters",
+ "filter-state": "estado",
+ "filter-assignee": "UID asignado",
+ "filter-cid": "Categoria",
+ "filter-quick-mine": "Asignado a mí",
+ "filter-cid-all": "Todas las categorias",
+ "apply-filters": "Aplicar filtros",
- "quick-links": "Quick Links",
- "flagged-user": "Flagged User",
- "view-profile": "View Profile",
- "start-new-chat": "Start New Chat",
- "go-to-target": "View Flag Target",
+ "quick-links": "Links rapidos",
+ "flagged-user": "Usuario marcado",
+ "view-profile": "Ver perfil",
+ "start-new-chat": "Empezar nuevo chat",
+ "go-to-target": "Ver objetivo marcado",
- "user-view": "View Profile",
- "user-edit": "Edit Profile",
+ "user-view": "Ver perfil",
+ "user-edit": "Editar perfil",
- "notes": "Flag Notes",
- "add-note": "Add Note",
- "no-notes": "No shared notes.",
+ "notes": "Marcar notas",
+ "add-note": "Añadir nota",
+ "no-notes": "No hay notas compartidas",
- "history": "Flag History",
- "back": "Back to Flags List",
- "no-history": "No flag history.",
+ "history": "Historico de marcadores",
+ "back": "Volver a la lista de marcadores",
+ "no-history": "No hay registro de marcadores",
- "state-all": "All states",
- "state-open": "New/Open",
- "state-wip": "Work in Progress",
- "state-resolved": "Resolved",
- "state-rejected": "Rejected",
- "no-assignee": "Not Assigned",
- "note-added": "Note Added",
+ "state-all": "Todos los estados",
+ "state-open": "Nuevo/Abrir",
+ "state-wip": "Trabajo en proceso",
+ "state-resolved": "Resuelto",
+ "state-rejected": "Rechazado",
+ "no-assignee": "Sin asignar",
+ "note-added": "Nota añadida",
- "modal-title": "Report Inappropriate Content",
- "modal-body": "Please specify your reason for flagging %1 %2 for review. Alternatively, use one of the quick report buttons if applicable.",
- "modal-reason-spam": "Spam",
- "modal-reason-offensive": "Offensive",
- "modal-reason-custom": "Reason for reporting this content...",
- "modal-submit": "Submit Report",
+ "modal-title": "Reportar contenido inapropiado",
+ "modal-body": "Por favor especifica tu razón para marcar %1 %2 para revisar. Alternativamente, usa una de los botones de reporte rápido si corresponde.",
+ "modal-reason-spam": "Correo no deseado",
+ "modal-reason-offensive": "Ofensivo",
+ "modal-reason-custom": "Razón para reportar este contenido...",
+ "modal-submit": "Enviar reporte",
"modal-submit-success": "Content has been flagged for moderation."
}
\ No newline at end of file
diff --git a/public/language/et/admin/general/dashboard.json b/public/language/et/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/et/admin/general/dashboard.json
+++ b/public/language/et/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/fa-IR/admin/general/dashboard.json b/public/language/fa-IR/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/fa-IR/admin/general/dashboard.json
+++ b/public/language/fa-IR/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/fi/admin/general/dashboard.json b/public/language/fi/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/fi/admin/general/dashboard.json
+++ b/public/language/fi/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/fr/admin/advanced/database.json b/public/language/fr/admin/advanced/database.json
index ee2103cf4f..38f97bbd33 100644
--- a/public/language/fr/admin/advanced/database.json
+++ b/public/language/fr/admin/advanced/database.json
@@ -1,7 +1,7 @@
{
"x-b": "%1 octets",
"x-mb": "%1 Mo",
- "x-gb": "%1 gb",
+ "x-gb": "%1 Go",
"uptime-seconds": "Disponibilité en secondes",
"uptime-days": "Disponibilité en jours",
diff --git a/public/language/fr/admin/advanced/errors.json b/public/language/fr/admin/advanced/errors.json
index 2884db0eaf..10b7ea5d33 100644
--- a/public/language/fr/admin/advanced/errors.json
+++ b/public/language/fr/admin/advanced/errors.json
@@ -8,7 +8,7 @@
"clear-error-log": "Effacer les journaux d'erreurs",
"route": "Route",
"count": "Nombre",
- "no-routes-not-found": "Hooray! No 404 errors!",
+ "no-routes-not-found": "Hourrah ! Aucune erreur 404 !",
"clear404-confirm": "Êtes-vous sûr de vouloir effacer les journaux d'erreurs 404 ?",
"clear404-success": "Erreurs \"404 non trouvé\" effacées"
}
\ No newline at end of file
diff --git a/public/language/fr/admin/general/dashboard.json b/public/language/fr/admin/general/dashboard.json
index b89e291b74..af8a030b01 100644
--- a/public/language/fr/admin/general/dashboard.json
+++ b/public/language/fr/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Utilisateurs",
"posts": "Messages",
"topics": "Sujets",
- "page-views-last-month": "Pages vues le mois dernier",
- "page-views-this-month": "Pages vues ce mois-ci",
- "page-views-last-day": "Pages vues ces dernières 24 heures",
+ "page-views-seven": "7 derniers jours",
+ "page-views-thirty": "30 derniers jours",
+ "page-views-last-day": "Dernières 24 heures",
+ "page-views-custom": "Dates personnalisées",
+ "page-views-custom-start": "Début",
+ "page-views-custom-end": "Fin",
+ "page-views-custom-help": "Entrez une plage de date pour les vues que vous souhaitez afficher. Si aucun sélecteur de date n'est disponible, le format de date accepté est YYYY-MM-DD.",
+ "page-views-custom-error": "Veuillez entrer une plage de date valide dans le format suivant : YYYY-MM-DD",
"stats.day": "Jour",
"stats.week": "Semaine",
@@ -21,7 +26,7 @@
"upgrade-available": "
Ceci est une version préliminaire de NodeBB. Des bugs inattendus peuvent se produire.
",
- "running-in-development": "Forum is running in development mode. The forum may be open to potential vulnerabilities; please contact your system administrator.",
+ "running-in-development": "Le forum est en mode développement. Il peut être sujet à certaines vulnérabilités, veuillez contacter votre administrateur système.",
"notices": "Informations",
"restart-not-required": "Pas de redémarrage nécessaire",
diff --git a/public/language/fr/admin/manage/groups.json b/public/language/fr/admin/manage/groups.json
index ec1898fbcb..6a6f6d6d36 100644
--- a/public/language/fr/admin/manage/groups.json
+++ b/public/language/fr/admin/manage/groups.json
@@ -1,7 +1,7 @@
{
"name": "Nom du groupe",
"description": "Description du groupe",
- "member-count": "Member Count",
+ "member-count": "Nombre de membres",
"system": "Groupe système",
"edit": "Éditer",
"search-placeholder": "Rechercher",
diff --git a/public/language/fr/admin/settings/advanced.json b/public/language/fr/admin/settings/advanced.json
index 42fa98183f..28d42fbc5e 100644
--- a/public/language/fr/admin/settings/advanced.json
+++ b/public/language/fr/admin/settings/advanced.json
@@ -6,7 +6,7 @@
"headers.allow-from": "Définissez ALLOW-FROM pour afficher NodeBB dans un iFrame",
"headers.powered-by": "Personnaliser l'en-tête \"Propulsé par\" envoyé par NodeBB",
"headers.acao": "Access-Control-Allow-Origin",
- "headers.acao-help": "To deny access to all sites, leave empty",
+ "headers.acao-help": "Pour refuser l'accès à tous les sites, laissez vide",
"headers.acam": "\nAccess-Control-Allow-Methods",
"headers.acah": "\nAccess-Control-Allow-Headers",
"traffic-management": "Gestion du trafic",
diff --git a/public/language/fr/admin/settings/general.json b/public/language/fr/admin/settings/general.json
index d16c22e4a3..35b67e48be 100644
--- a/public/language/fr/admin/settings/general.json
+++ b/public/language/fr/admin/settings/general.json
@@ -27,6 +27,6 @@
"touch-icon.help": "Taille et format recommandés : 192x192, format PNG uniquement. Si aucune icône n'est spécifiée, NodeBB utilisera le favicon.",
"outgoing-links": "Liens sortants",
"outgoing-links.warning-page": "Utiliser la page d'avertissement pour liens sortants",
- "search-default-sort-by": "Search default sort by",
- "outgoing-links.whitelist": "Domains to whitelist for bypassing the warning page"
+ "search-default-sort-by": "Tri par défaut de la recherche",
+ "outgoing-links.whitelist": "Domaines à inclure dans la liste blanche pour passer la page d'avertissement."
}
\ No newline at end of file
diff --git a/public/language/fr/admin/settings/post.json b/public/language/fr/admin/settings/post.json
index 5fb72189c8..5b8581552f 100644
--- a/public/language/fr/admin/settings/post.json
+++ b/public/language/fr/admin/settings/post.json
@@ -29,8 +29,8 @@
"unread": "Paramètres des messages non lus",
"unread.cutoff": "Nombre de jours pour les messages non-lus",
"unread.min-track-last": "Nombre minimum de messages dans le sujet avant de garder en mémoire le dernier message lu",
- "recent": "Recent Settings",
- "recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
+ "recent": "Réglages récents",
+ "recent.categoryFilter.disable": "Désactiver le filtrage des sujets dans les catégories ignorées sur la page /recent",
"signature": "Paramètres de signature",
"signature.disable": "Désactiver les signatures",
"signature.no-links": "Désactiver les liens en signature",
diff --git a/public/language/fr/admin/settings/reputation.json b/public/language/fr/admin/settings/reputation.json
index 0757c8a9a5..21573e7f76 100644
--- a/public/language/fr/admin/settings/reputation.json
+++ b/public/language/fr/admin/settings/reputation.json
@@ -2,7 +2,7 @@
"reputation": "Paramètre de réputation",
"disable": "Désactiver le système de réputation",
"disable-down-voting": "Désactiver les votes négatifs",
- "votes-are-public": "All Votes Are Public",
+ "votes-are-public": "Tous les votes sont publics",
"thresholds": "Seuils d'activité",
"min-rep-downvote": "Réputation minimum pour les votes négatifs",
"min-rep-flag": "Réputation minimum pour signaler un message"
diff --git a/public/language/fr/admin/settings/user.json b/public/language/fr/admin/settings/user.json
index d6c9fb0c23..b99fc08439 100644
--- a/public/language/fr/admin/settings/user.json
+++ b/public/language/fr/admin/settings/user.json
@@ -37,7 +37,7 @@
"min-username-length": "Longueur minimum du nom d'utilisateur",
"max-username-length": "Longueur maxmum du nom d'utilisateur",
"min-password-length": "Longueur minimum du mot de passe",
- "min-password-strength": "Minimum Password Strength",
+ "min-password-strength": "Sécurité minimale du mot de passe",
"max-about-me-length": "Longueur maximum du À propos de moi",
"terms-of-use": "Conditions générales d'utilisation du forum (Laisser vide pour désactiver)",
"user-search": "Rechercher un utilisateur",
diff --git a/public/language/fr/email.json b/public/language/fr/email.json
index 73634e14f3..cd244af52f 100644
--- a/public/language/fr/email.json
+++ b/public/language/fr/email.json
@@ -32,9 +32,9 @@
"notif.post.unsub.info": "La notification de ce message vous a été envoyé en raison de vos paramètres d'abonnement.",
"test.text1": "Ceci est un e-mail de test pour vérifier que l'e-mailer est correctement configuré pour NodeBB.",
"unsub.cta": "Cliquez ici pour modifier ces paramètres",
- "banned.subject": "You have been banned from %1",
- "banned.text1": "The user %1 has been banned from %2.",
- "banned.text2": "This ban will last until %1.",
- "banned.text3": "This is the reason why you have been banned:",
+ "banned.subject": "Vous avez été banni de %1",
+ "banned.text1": "L'utilisateur %1 a été banni de %2.",
+ "banned.text2": "Ce ban est effectif jusqu'au %1.",
+ "banned.text3": "Voici la raison pour laquelle vous avez été banni : ",
"closing": "Merci !"
}
\ No newline at end of file
diff --git a/public/language/fr/error.json b/public/language/fr/error.json
index a158d6f83b..9b8d880ae7 100644
--- a/public/language/fr/error.json
+++ b/public/language/fr/error.json
@@ -30,7 +30,7 @@
"password-too-long": "Mot de passe trop long",
"user-banned": "Utilisateur banni",
"user-banned-reason": "Désolé, ce compte a été banni (Raison : %1)",
- "user-banned-reason-until": "Sorry, this account has been banned until %1 (Reason: %2)",
+ "user-banned-reason-until": "Désolé, ce compte a été banni jusque %1 (Raison : %2).",
"user-too-new": "Désolé, vous devez attendre encore %1 seconde(s) avant d'envoyer votre premier message",
"blacklisted-ip": "Désolé, votre adresse IP a été bannie de cette communauté. Si vous pensez que c'est une erreur, veuillez contacter un administrateur.",
"ban-expiry-missing": "Veuillez entrer une date de fin de banissement.",
@@ -105,7 +105,7 @@
"chat-disabled": "Système de chat désactivé",
"too-many-messages": "Vous avez envoyé trop de messages, veuillez patienter un instant.",
"invalid-chat-message": "Message de Chat invalide",
- "chat-message-too-long": "Chat messages can not be longer than %1 characters.",
+ "chat-message-too-long": "Les messages de discussion ne peuvent pas être plus longs que %1 caractères.",
"cant-edit-chat-message": "Vous n'avez pas l'autorisation de modifier ce message",
"cant-remove-last-user": "Vous ne pouvez pas supprimer le dernier utilisateur",
"cant-delete-chat-message": "Vous n'avez pas l'autorisation de supprimer ce message",
diff --git a/public/language/fr/flags.json b/public/language/fr/flags.json
index c4bfed6f23..c4d031cca4 100644
--- a/public/language/fr/flags.json
+++ b/public/language/fr/flags.json
@@ -1,60 +1,60 @@
{
- "state": "State",
- "reporter": "Reporter",
- "reported-at": "Reported At",
+ "state": "Etat",
+ "reporter": "Rapporteur",
+ "reported-at": "Reporté à",
"description": "Description",
- "no-flags": "Hooray! No flags found.",
- "assignee": "Assignee",
- "update": "Update",
- "updated": "Updated",
- "target-purged": "The content this flag referred to has been purged and is no longer available.",
+ "no-flags": "Hourra ! Aucun signalement trouvé.",
+ "assignee": "Assigné",
+ "update": "Mise à jour",
+ "updated": "Mis à jour",
+ "target-purged": "Le contenu référencé par ce signalement a été supprimé et n'est plus accessible",
- "quick-filters": "Quick Filters",
- "filter-active": "There are one or more filters active in this list of flags",
- "filter-reset": "Remove Filters",
- "filters": "Filter Options",
- "filter-reporterId": "Reporter UID",
- "filter-targetUid": "Flagged UID",
- "filter-type": "Flag Type",
- "filter-type-all": "All Content",
- "filter-type-post": "Post",
- "filter-state": "State",
- "filter-assignee": "Assignee UID",
- "filter-cid": "Category",
- "filter-quick-mine": "Assigned to me",
- "filter-cid-all": "All categories",
- "apply-filters": "Apply Filters",
+ "quick-filters": "Filtres rapides",
+ "filter-active": "Il y a un ou plusieurs filtres actifs dans cette liste de signalements",
+ "filter-reset": "Supprimer les filtres",
+ "filters": "Options de filtre",
+ "filter-reporterId": "UID du reporteur",
+ "filter-targetUid": "UID signalé",
+ "filter-type": "Type de signalement",
+ "filter-type-all": "Tout le contenu",
+ "filter-type-post": "Message",
+ "filter-state": "Etat",
+ "filter-assignee": "UID assigné",
+ "filter-cid": "Catégorie",
+ "filter-quick-mine": "Assigné à moi",
+ "filter-cid-all": "Toutes les catégories",
+ "apply-filters": "Appliquer les filtres",
- "quick-links": "Quick Links",
- "flagged-user": "Flagged User",
- "view-profile": "View Profile",
- "start-new-chat": "Start New Chat",
- "go-to-target": "View Flag Target",
+ "quick-links": "Permaliens",
+ "flagged-user": "Utilisateurs signalés",
+ "view-profile": "Voir le profil",
+ "start-new-chat": "Démarrer un nouveau Chat",
+ "go-to-target": "Voir le signalement cible",
- "user-view": "View Profile",
- "user-edit": "Edit Profile",
+ "user-view": "Voir le profil",
+ "user-edit": "Éditer le profil",
- "notes": "Flag Notes",
- "add-note": "Add Note",
- "no-notes": "No shared notes.",
+ "notes": "Notes de signalement",
+ "add-note": "Ajouter une note",
+ "no-notes": "aucune note partagée",
- "history": "Flag History",
- "back": "Back to Flags List",
- "no-history": "No flag history.",
+ "history": "Historiques des signalements",
+ "back": "Revenir à la liste des signalements",
+ "no-history": "aucun historique de signalements",
- "state-all": "All states",
- "state-open": "New/Open",
- "state-wip": "Work in Progress",
- "state-resolved": "Resolved",
- "state-rejected": "Rejected",
- "no-assignee": "Not Assigned",
- "note-added": "Note Added",
+ "state-all": "Tous les états",
+ "state-open": "Nouveau/Ouvert",
+ "state-wip": "En cours",
+ "state-resolved": "Résolu",
+ "state-rejected": "Rejeté",
+ "no-assignee": "Non assigné",
+ "note-added": "Note ajoutée",
- "modal-title": "Report Inappropriate Content",
- "modal-body": "Please specify your reason for flagging %1 %2 for review. Alternatively, use one of the quick report buttons if applicable.",
+ "modal-title": "Signaler un contenu inapproprié",
+ "modal-body": "Veuillez spécifier votre raison de signaler %1 %2 pour une révision. Vous pouvez utiliser un des boutons de report rapide si c'est plus approprié",
"modal-reason-spam": "Spam",
- "modal-reason-offensive": "Offensive",
- "modal-reason-custom": "Reason for reporting this content...",
- "modal-submit": "Submit Report",
- "modal-submit-success": "Content has been flagged for moderation."
+ "modal-reason-offensive": "Choquant",
+ "modal-reason-custom": "Motif du signalement...",
+ "modal-submit": "Soumettre le signalement",
+ "modal-submit-success": "Le contenu a été soumis pour examen."
}
\ No newline at end of file
diff --git a/public/language/fr/groups.json b/public/language/fr/groups.json
index f9596e6493..84bcf7a529 100644
--- a/public/language/fr/groups.json
+++ b/public/language/fr/groups.json
@@ -27,7 +27,7 @@
"details.disableJoinRequests": "Désactiver les demandes d'adhésion",
"details.grant": "Promouvoir/rétrograder comme propriétaire",
"details.kick": "Exclure",
- "details.kick_confirm": "Are you sure you want to remove this member from the group?",
+ "details.kick_confirm": "Voulez-vous vraiment supprimer ce membre du groupe ?",
"details.owner_options": "Administration du groupe",
"details.group_name": "Nom du groupe",
"details.member_count": "Nombre de membres",
diff --git a/public/language/fr/modules.json b/public/language/fr/modules.json
index 5f3c253db7..bb99ae9031 100644
--- a/public/language/fr/modules.json
+++ b/public/language/fr/modules.json
@@ -20,7 +20,7 @@
"chat.three_months": "3 Mois",
"chat.delete_message_confirm": "Êtes-vous sûr de vouloir supprimer ce message ?",
"chat.add-users-to-room": "Ajouter des participants",
- "chat.confirm-chat-with-dnd-user": "This user has set their status to DnD(Do not disturb). Do you still want to chat with them?",
+ "chat.confirm-chat-with-dnd-user": "Cet utilisateur a son statut en mode \"Ne pas déranger\". Voulez-vous quand même discuter avec lui ?",
"composer.compose": "Écrire",
"composer.show_preview": "Afficher l'aperçu",
"composer.hide_preview": "Masquer l'aperçu",
diff --git a/public/language/fr/notifications.json b/public/language/fr/notifications.json
index e802422df5..2deb6b63db 100644
--- a/public/language/fr/notifications.json
+++ b/public/language/fr/notifications.json
@@ -10,15 +10,15 @@
"return_to": "Revenir à %1",
"new_notification": "Nouvelle notification",
"you_have_unread_notifications": "Vous avez des notifications non-lues",
- "all": "All",
- "topics": "Topics",
- "replies": "Replies",
- "chat": "Chats",
- "follows": "Follows",
- "upvote": "Upvotes",
- "new-flags": "New Flags",
- "my-flags": "Flags assigned to me",
- "bans": "Bans",
+ "all": "Tout",
+ "topics": "Sujets",
+ "replies": "Réponses",
+ "chat": "Discussions",
+ "follows": "Suivis",
+ "upvote": "Votes pour",
+ "new-flags": "Nouveaux drapeaux",
+ "my-flags": "Drapeaux assignés à moi",
+ "bans": "Bannissements",
"new_message_from": "Nouveau message de %1",
"upvoted_your_post_in": "%1 a voté pour votre message dans %2.",
"upvoted_your_post_in_dual": "%1 et %2 ont voté pour votre message dans %3.",
@@ -40,7 +40,7 @@
"user_started_following_you_multiple": "%1 et %2 autres se sont abonnés à votre compte.",
"new_register": "%1 a envoyé une demande d'incription.",
"new_register_multiple": "%1 inscription(s) est en attente de validation.",
- "flag_assigned_to_you": "Flag %1 has been assigned to you",
+ "flag_assigned_to_you": "Drapeau %1 vous a été assigné",
"email-confirmed": "Email vérifié",
"email-confirmed-message": "Merci pour la validation de votre adresse email. Votre compte est désormais activé.",
"email-confirm-error-message": "Il y a un un problème dans la vérification de votre adresse email. Le code est peut être invalide ou a expiré.",
diff --git a/public/language/fr/search.json b/public/language/fr/search.json
index 139a6e512e..f429040908 100644
--- a/public/language/fr/search.json
+++ b/public/language/fr/search.json
@@ -12,7 +12,7 @@
"reply-count": "Nombre de réponses",
"at-least": "Au moins",
"at-most": "Au plus",
- "relevance": "Relevance",
+ "relevance": "Pertinence",
"post-time": "Date de message",
"newer-than": "Plus récent que",
"older-than": "Plus vieux que",
diff --git a/public/language/fr/topic.json b/public/language/fr/topic.json
index 71efbb71c5..0c21952b4f 100644
--- a/public/language/fr/topic.json
+++ b/public/language/fr/topic.json
@@ -13,8 +13,8 @@
"notify_me": "Être notifié des réponses dans ce sujet",
"quote": "Citer",
"reply": "Répondre",
- "replies_to_this_post": "%1 Replies",
- "last_reply_time": "Last reply",
+ "replies_to_this_post": "%1 réponses",
+ "last_reply_time": "Dernière réponse",
"reply-as-topic": "Répondre à l'aide d'un sujet",
"guest-login-reply": "Se connecter pour répondre",
"edit": "Éditer",
diff --git a/public/language/fr/user.json b/public/language/fr/user.json
index f09cefe60b..d8b53361b3 100644
--- a/public/language/fr/user.json
+++ b/public/language/fr/user.json
@@ -60,7 +60,7 @@
"username_taken_workaround": "Le nom d'utilisateur désiré est déjà utilisé, nous l'avons donc légèrement modifié. Vous êtes maintenant connu comme %1",
"password_same_as_username": "Votre mot de passe est identique à votre nom d'utilisateur. Veuillez en choisir un autre.",
"password_same_as_email": "Votre mot de passe est identique à votre adresse email. Veuillez en choisir un autre.",
- "weak_password": "Weak password.",
+ "weak_password": "Sécurité du mot de passe faible.",
"upload_picture": "Envoyer l'image",
"upload_a_picture": "Envoyer une image",
"remove_uploaded_picture": "Supprimer l'image envoyée",
@@ -132,5 +132,5 @@
"info.email-history": "Historique des adresses email",
"info.moderation-note": "Note de modération",
"info.moderation-note.success": "Note de modération enregistrée",
- "info.moderation-note.add": "Add note"
+ "info.moderation-note.add": "Ajouter une note"
}
\ No newline at end of file
diff --git a/public/language/gl/admin/general/dashboard.json b/public/language/gl/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/gl/admin/general/dashboard.json
+++ b/public/language/gl/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/gl/flags.json b/public/language/gl/flags.json
index c4bfed6f23..0fda38ff5a 100644
--- a/public/language/gl/flags.json
+++ b/public/language/gl/flags.json
@@ -1,60 +1,60 @@
{
- "state": "State",
- "reporter": "Reporter",
- "reported-at": "Reported At",
- "description": "Description",
- "no-flags": "Hooray! No flags found.",
- "assignee": "Assignee",
- "update": "Update",
- "updated": "Updated",
- "target-purged": "The content this flag referred to has been purged and is no longer available.",
+ "state": "Estado",
+ "reporter": "Reportador",
+ "reported-at": "Reportado en",
+ "description": "Descripción",
+ "no-flags": "Un licorca, que non hai nada marcado para revisión.",
+ "assignee": "Encargado",
+ "update": "Actualizar",
+ "updated": "Actualizado",
+ "target-purged": "O contido marcado foi purgado e xa non está dispoñible",
- "quick-filters": "Quick Filters",
- "filter-active": "There are one or more filters active in this list of flags",
- "filter-reset": "Remove Filters",
- "filters": "Filter Options",
- "filter-reporterId": "Reporter UID",
- "filter-targetUid": "Flagged UID",
- "filter-type": "Flag Type",
- "filter-type-all": "All Content",
- "filter-type-post": "Post",
- "filter-state": "State",
- "filter-assignee": "Assignee UID",
- "filter-cid": "Category",
- "filter-quick-mine": "Assigned to me",
- "filter-cid-all": "All categories",
- "apply-filters": "Apply Filters",
+ "quick-filters": "Filtros rápidos",
+ "filter-active": "Hai un ou máis filtros na lista de avisos",
+ "filter-reset": "Eliminar filtros",
+ "filters": "Filtrar opcións",
+ "filter-reporterId": "UID do reportador",
+ "filter-targetUid": "UID marcada",
+ "filter-type": "Tipo de aviso",
+ "filter-type-all": "Todo o contido",
+ "filter-type-post": "Publicar",
+ "filter-state": "Estado",
+ "filter-assignee": "UID do encargado",
+ "filter-cid": "Categoría",
+ "filter-quick-mine": "Asignado a min",
+ "filter-cid-all": "Tódalas categorías",
+ "apply-filters": "Aplicar filtros",
- "quick-links": "Quick Links",
- "flagged-user": "Flagged User",
- "view-profile": "View Profile",
- "start-new-chat": "Start New Chat",
- "go-to-target": "View Flag Target",
+ "quick-links": "Ligazóns rápidas",
+ "flagged-user": "Usuario marcado",
+ "view-profile": "Ver perfil",
+ "start-new-chat": "Comezar novo chat",
+ "go-to-target": "Ver contido marcado",
- "user-view": "View Profile",
- "user-edit": "Edit Profile",
+ "user-view": "Ver perfil",
+ "user-edit": "Editar perfil",
- "notes": "Flag Notes",
- "add-note": "Add Note",
- "no-notes": "No shared notes.",
+ "notes": "Notas do aviso",
+ "add-note": "Engadir nota",
+ "no-notes": "Ningunha nota foi compartida",
- "history": "Flag History",
- "back": "Back to Flags List",
- "no-history": "No flag history.",
+ "history": "Historial de avisos",
+ "back": "Voltar á lista de avisos",
+ "no-history": "Non hai historial de avisos",
- "state-all": "All states",
- "state-open": "New/Open",
- "state-wip": "Work in Progress",
- "state-resolved": "Resolved",
- "state-rejected": "Rejected",
- "no-assignee": "Not Assigned",
- "note-added": "Note Added",
+ "state-all": "Tódolos estados",
+ "state-open": "Novo/Abrir",
+ "state-wip": "Traballo en progreso",
+ "state-resolved": "Resolto",
+ "state-rejected": "Rexeitado",
+ "no-assignee": "Non asignado",
+ "note-added": "Nota engadida",
- "modal-title": "Report Inappropriate Content",
- "modal-body": "Please specify your reason for flagging %1 %2 for review. Alternatively, use one of the quick report buttons if applicable.",
+ "modal-title": "Reportar Contido Inapropiado",
+ "modal-body": "Por favor, especifique o seu motivo para marcar %1 %2 para revisión. Alternativamente, empregue un dos botóns de reporte rápido se fose pertinente.",
"modal-reason-spam": "Spam",
- "modal-reason-offensive": "Offensive",
- "modal-reason-custom": "Reason for reporting this content...",
- "modal-submit": "Submit Report",
- "modal-submit-success": "Content has been flagged for moderation."
+ "modal-reason-offensive": "Ofensivo",
+ "modal-reason-custom": "Motivo para reportar este contido...",
+ "modal-submit": "Enviar Reporte",
+ "modal-submit-success": "Contido marcado para moderación"
}
\ No newline at end of file
diff --git a/public/language/he/admin/general/dashboard.json b/public/language/he/admin/general/dashboard.json
index d341cd9fcf..5c05b1aab7 100644
--- a/public/language/he/admin/general/dashboard.json
+++ b/public/language/he/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "יום",
"stats.week": "שבוע",
diff --git a/public/language/hr/admin/admin.json b/public/language/hr/admin/admin.json
new file mode 100644
index 0000000000..fef743caf9
--- /dev/null
+++ b/public/language/hr/admin/admin.json
@@ -0,0 +1,7 @@
+{
+ "alert.confirm-reload": "Sigurni ste da želite ponovno pokrenuti NodeBB?",
+ "alert.confirm-restart": "Sigurni ste da želite ponovno pokrenuti NodeBB?",
+
+ "acp-title": "%1 | NodeBB Administratorska kontrolna ploča",
+ "settings-header-contents": "Sadržaj"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/advanced/cache.json b/public/language/hr/admin/advanced/cache.json
new file mode 100644
index 0000000000..937db239bf
--- /dev/null
+++ b/public/language/hr/admin/advanced/cache.json
@@ -0,0 +1,11 @@
+{
+ "post-cache": "Objava predmemorija",
+ "posts-in-cache": "Objave u predmemoriji",
+ "average-post-size": "Prosječna veličina objave",
+ "length-to-max": "Dužina / Maksimum",
+ "percent-full": "%1% Puno",
+ "post-cache-size": "Veličina predmemorije objave",
+ "items-in-cache": "Artikli u predmemoriji",
+ "control-panel": "Kontrolna ploča",
+ "update-settings": "Obnovi postavke predmemorije"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/advanced/database.json b/public/language/hr/admin/advanced/database.json
new file mode 100644
index 0000000000..e79a4b6192
--- /dev/null
+++ b/public/language/hr/admin/advanced/database.json
@@ -0,0 +1,36 @@
+{
+ "x-b": "%1 b",
+ "x-mb": "%1 mb",
+ "x-gb": "%1 gb",
+ "uptime-seconds": "Na mreži u sekundama",
+ "uptime-days": "Na mreži u danima",
+
+ "mongo": "Mongo",
+ "mongo.version": "Verzija MongoDB",
+ "mongo.storage-engine": "Način pohrane",
+ "mongo.collections": "Kolekcije",
+ "mongo.objects": "Objekti",
+ "mongo.avg-object-size": "Avg. Object Size",
+ "mongo.data-size": "Veličina datoteke",
+ "mongo.storage-size": "Veličina pohrane",
+ "mongo.index-size": "Veličina indexa",
+ "mongo.file-size": "Veličina datoteke",
+ "mongo.resident-memory": "Rezidentna memorija",
+ "mongo.virtual-memory": "Virtualna memorija",
+ "mongo.mapped-memory": "Mapirana memorija",
+ "mongo.raw-info": "MongoDB sirove informacije",
+
+ "redis": "Redis",
+ "redis.version": "Redis verzija",
+ "redis.connected-clients": "Spojeni klijenti",
+ "redis.connected-slaves": "Povezani robovi",
+ "redis.blocked-clients": "Blokirani klijenti",
+ "redis.used-memory": "Iskorištena memorija",
+ "redis.memory-frag-ratio": "Omjer fragmentiranja memorije",
+ "redis.total-connections-recieved": "Ukupno primljeni veza",
+ "redis.total-commands-processed": "Ukupne prcesirane komande",
+ "redis.iops": "Instante operacije po sekundi",
+ "redis.keyspace-hits": "Keyspace Hits",
+ "redis.keyspace-misses": "Keyspace Misses",
+ "redis.raw-info": "Redis sirova informacija"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/advanced/errors.json b/public/language/hr/admin/advanced/errors.json
new file mode 100644
index 0000000000..04e9e32776
--- /dev/null
+++ b/public/language/hr/admin/advanced/errors.json
@@ -0,0 +1,14 @@
+{
+ "figure-x": "Figura %1",
+ "error-events-per-day": "%1 događaja po danu",
+ "error.404": "404 Nije pronađeno",
+ "error.503": "503 Usluga nedostupna",
+ "manage-error-log": "Upravljaj dnevnikom grešaka",
+ "export-error-log": "Izvedi dnevnik grešaka (CSV)",
+ "clear-error-log": "Očisti dnevnik grešaka",
+ "route": "Putanja",
+ "count": "Zbroj",
+ "no-routes-not-found": "Huura! Nema 404 grešaka!",
+ "clear404-confirm": "Sigurni ste da želite očistiti 404 greše iz dnevnika?",
+ "clear404-success": "\"404 Nije pronađen\" greške očišćene"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/advanced/events.json b/public/language/hr/admin/advanced/events.json
new file mode 100644
index 0000000000..a113f933e4
--- /dev/null
+++ b/public/language/hr/admin/advanced/events.json
@@ -0,0 +1,6 @@
+{
+ "events": "Događanja",
+ "no-events": "Nema događaja",
+ "control-panel": "Kontrolna ploča događanja",
+ "delete-events": "Obriši događanja"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/advanced/logs.json b/public/language/hr/admin/advanced/logs.json
new file mode 100644
index 0000000000..8d87365ce6
--- /dev/null
+++ b/public/language/hr/admin/advanced/logs.json
@@ -0,0 +1,7 @@
+{
+ "logs": "Dnevnik",
+ "control-panel": "Dnevnik kontrolne ploče",
+ "reload": "Učitaj dnevnik ponovno",
+ "clear": "Očisti dnevnik ",
+ "clear-success": "Dnevnik čist!"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/appearance/customise.json b/public/language/hr/admin/appearance/customise.json
new file mode 100644
index 0000000000..0809a8e20c
--- /dev/null
+++ b/public/language/hr/admin/appearance/customise.json
@@ -0,0 +1,9 @@
+{
+ "custom-css": "CSS po narudžbi",
+ "custom-css.description": "Unesi CSS deklaracije koje će biti upisane poslije svih stilova.",
+ "custom-css.enable": "Omogući dodatni CSS",
+
+ "custom-header": "Uobičajno zaglavlje",
+ "custom-header.description": "Unesite Vaš HTML ovdje(npr. JavaScript Meta Tags itd.)koji će biti dodani <head> sekciji marže Vašeg foruma.",
+ "custom-header.enable": "Omogući uobičajeno zaglavlje"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/appearance/skins.json b/public/language/hr/admin/appearance/skins.json
new file mode 100644
index 0000000000..1b68ae2ecd
--- /dev/null
+++ b/public/language/hr/admin/appearance/skins.json
@@ -0,0 +1,9 @@
+{
+ "loading": "Učitavam Izgled ...",
+ "homepage": "Naslovnica",
+ "select-skin": "Odaberi izgled",
+ "current-skin": "Trenutni izgled",
+ "skin-updated": "Izgled promijenjen",
+ "applied-success": "%1 izgled je primjenjen",
+ "revert-success": "Izgled povraćen na osnovne boje"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/appearance/themes.json b/public/language/hr/admin/appearance/themes.json
new file mode 100644
index 0000000000..593a589aca
--- /dev/null
+++ b/public/language/hr/admin/appearance/themes.json
@@ -0,0 +1,11 @@
+{
+ "checking-for-installed": "Provjeravam instalirane teme ...",
+ "homepage": "Naslovnica",
+ "select-theme": "Odaberi temu",
+ "current-theme": "Trenutna tema",
+ "no-themes": "Nisu pronađene instalirane teme",
+ "revert-confirm": "Sigurni ste da želite povratiti zadani NodeBB izgled ?",
+ "theme-changed": "Tema promijenjena",
+ "revert-success": "Uspješno ste vratili vaš NodeBB u početno zadanu temu.",
+ "restart-to-activate": "Ponovno pokrenite NodeBB da bi aktivirali izgled"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/development/info.json b/public/language/hr/admin/development/info.json
new file mode 100644
index 0000000000..0d7b3eae8e
--- /dev/null
+++ b/public/language/hr/admin/development/info.json
@@ -0,0 +1,16 @@
+{
+ "you-are-on": "Info - Vi ste %1:%2",
+ "host": "Domaćin",
+ "pid": "pid",
+ "nodejs": "nodejs",
+ "online": "Na mreži",
+ "git": "git",
+ "load": "učitaj",
+ "uptime": "uptime",
+
+ "registered": "Registriran",
+ "sockets": "Sockets",
+ "guests": "Gosti",
+
+ "info": "Info"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/development/logger.json b/public/language/hr/admin/development/logger.json
new file mode 100644
index 0000000000..e4c9b130f6
--- /dev/null
+++ b/public/language/hr/admin/development/logger.json
@@ -0,0 +1,12 @@
+{
+ "logger-settings": "Postavke dnevnika",
+ "description": "By enabling the check boxes, you will receive logs to your terminal. If you specify a path, logs will then be saved to a file instead. HTTP logging is useful for collecting statistics about who, when, and what people access on your forum. In addition to logging HTTP requests, we can also log socket.io events. Socket.io logging, in combination with redis-cli monitor, can be very helpful for learning NodeBB's internals.",
+ "explanation": "Jednostavno potvrdite ili onemogućite postavke prijave da upalite ili ugasite prijave na brzinu.Ponovno pokretanje nije potrebno.",
+ "enable-http": "Dozvoli HTTP dnevnik",
+ "enable-socket": "Omogući socket.io dnevnik događanja ",
+ "file-path": "Putanja da datoteke dnevnika",
+ "file-path-placeholder": "/path/to/log/file.log ::: Ostavite prazno kako bi ste se mogli ulogirati u vaš terminal",
+
+ "control-panel": "Kontrolna ploča dnevnika",
+ "update-settings": "Obnovi postavke dnevnika "
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/extend/plugins.json b/public/language/hr/admin/extend/plugins.json
new file mode 100644
index 0000000000..31dc0981d0
--- /dev/null
+++ b/public/language/hr/admin/extend/plugins.json
@@ -0,0 +1,47 @@
+{
+ "installed": "Instalirano",
+ "active": "Aktivno",
+ "inactive": "Neaktivan",
+ "out-of-date": "Izvan datuma",
+ "none-found": "Dodatci nisu pronađeni.",
+ "none-active": "Nema aktivnih dodataka",
+ "find-plugins": "Pronađi dodatke",
+
+ "plugin-search": "Pretraga dodataka",
+ "plugin-search-placeholder": "Pretraži za dodatak ...",
+ "reorder-plugins": "Promjenite redosljed dodataka",
+ "order-active": "Posloži aktivne dodatke",
+ "dev-interested": "Interesira vas pisanje dodataka za NodeBB?",
+ "docs-info": "Punu dokumentaciju u vezi autorstva dodatka mogu biti nađeni na target=\"_blank\" href=\"https://docs.nodebb.org/en/latest/plugins/create.html\">NodeBB Docs Portal.",
+
+ "order.description": "Određeni dodatci rade idealno kada su pokrenuti prije/poslije drugih dodataka.",
+ "order.explanation": "Dodatci se učitavaju u slijedu zadanom ovdje,od vrha prema dnu.",
+
+ "plugin-item.themes": "Predlošci",
+ "plugin-item.deactivate": "Deaktiviraj",
+ "plugin-item.activate": "Aktiviraj",
+ "plugin-item.install": "Instaliraj",
+ "plugin-item.uninstall": "Deinstaliraj",
+ "plugin-item.settings": "Postavke",
+ "plugin-item.installed": "Instalirano",
+ "plugin-item.latest": "Najnovije",
+ "plugin-item.upgrade": "Nadogradnja",
+ "plugin-item.more-info": "Za više informacija:",
+ "plugin-item.unknown": "Nepoznato",
+ "plugin-item.unknown-explanation": "Stanje ovog dodatka se nemože utvrditi, vjerovatno zbog greške u konfiguraciji.",
+
+ "alert.enabled": "Dodatak omogućen",
+ "alert.disabled": "Dodatak onemogućen",
+ "alert.upgraded": "Dodatak nadograđen",
+ "alert.installed": "Dodatak instaliran",
+ "alert.uninstalled": "Dodatak deinstaliran",
+ "alert.activate-success": "Pokrenite NodeBB za aktivaciju dodataka",
+ "alert.deactivate-success": "Dodatak uspjepno deaktiviran",
+ "alert.upgrade-success": "Ponovno pokrenite NodeBB da bi potpuno nadogradili dodatke",
+ "alert.install-success": "Dodatak instaliran, aktivirajte ga.",
+ "alert.uninstall-success": "Dodatak je uspješno deaktiviran i deinstaliran.",
+ "alert.suggest-error": "
NodeBB could not reach the package manager, proceed with installation of latest version?
Server returned (%1): %2
",
+ "alert.package-manager-unreachable": "
NodeBB nemože uspostaviti komunikaciju sa upraviteljem paketa, nadogradnja se ne preporučuje u ovom trenutku.
",
+ "alert.incompatible": "
Your version of NodeBB (v%1) is only cleared to upgrade to v%2 of this plugin. Please update your NodeBB if you wish to install a newer version of this plugin.
",
+ "alert.possibly-incompatible": "
No Compatibility Information Found
This plugin did not specify a specific version for installation given your NodeBB version. Full compatibility cannot be guaranteed, and may cause your NodeBB to no longer start properly.
In the event that NodeBB cannot boot properly:
$ ./nodebb reset plugin=\"%1\"
Continue installation of latest version of this plugin?
"
+}
diff --git a/public/language/hr/admin/extend/rewards.json b/public/language/hr/admin/extend/rewards.json
new file mode 100644
index 0000000000..5e20c3872f
--- /dev/null
+++ b/public/language/hr/admin/extend/rewards.json
@@ -0,0 +1,17 @@
+{
+ "rewards": "Nagrade",
+ "condition-if-users": "Ako korisnici",
+ "condition-is": "ls:",
+ "condition-then": "Tada:",
+ "max-claims": "Koliko puta nagrada može biti osvojena.",
+ "zero-infinite": "Upišite 0 za beskonačno",
+ "delete": "Obriši",
+ "enable": "Omogući",
+ "disable": "onemogući",
+ "control-panel": "Kontrola nagrada",
+ "new-reward": "Nova nagrada",
+
+ "alert.delete-success": "Uspješno obrisana nagrada",
+ "alert.no-inputs-found": "Ilegalna nagrada - nije pronađen unos!",
+ "alert.save-success": "Uspješno spremljene nagrade"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/extend/widgets.json b/public/language/hr/admin/extend/widgets.json
new file mode 100644
index 0000000000..72362aafa0
--- /dev/null
+++ b/public/language/hr/admin/extend/widgets.json
@@ -0,0 +1,19 @@
+{
+ "available": "Dostupni dodatci",
+ "explanation": "Select a widget from the dropdown menu and then drag and drop it into a template's widget area on the left.",
+ "none-installed": "No widgets found! Activate the essential widgets plugin in the plugins control panel.",
+ "containers.available": "Dostupni kontejneri",
+ "containers.explanation": "Povucite i ispustite na vrhu bilo kojeg aktivnog widgeta",
+ "containers.none": "Ništa",
+ "container.well": "`",
+ "container.jumbotron": "Jumbotron",
+ "container.panel": "Ploča",
+ "container.panel-header": "Ploča zaglavlja",
+ "container.panel-body": "Tijelo ploče",
+ "container.alert": "Upozorenje",
+
+ "alert.confirm-delete": "Sigurni ste da želite obrisati ovaj widget?",
+ "alert.updated": "Widgeti ažurirani",
+ "alert.update-success": "Uspješno promijenjeni widgeti"
+
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/general/dashboard.json b/public/language/hr/admin/general/dashboard.json
new file mode 100644
index 0000000000..d29ba8dd1e
--- /dev/null
+++ b/public/language/hr/admin/general/dashboard.json
@@ -0,0 +1,69 @@
+{
+ "forum-traffic": "Promet foruma",
+ "page-views": "Broj pogleda",
+ "unique-visitors": "Jedinstveni posjetitelji",
+ "users": "Korisnici",
+ "posts": "Objave",
+ "topics": "Teme",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
+
+ "stats.day": "Dan",
+ "stats.week": "Tjedan",
+ "stats.month": "Mjesec",
+ "stats.all": "Sve vrijeme",
+
+ "updates": "Nadogradnje",
+ "running-version": "Ovo je verzija NodeBB v%1.",
+ "keep-updated": "Uvijek se pobrinite da je Vaš NodeBB na najnovijoj verziji za najnovije sigurnosne mjere i popravke grešaka.",
+ "up-to-date": "
Ovo je zastarjela verzija NodeBB. Nova verzija (v%1) je izašla.Razmotrite nadogradnju Vašeg NodeBB.
\n",
+ "prerelease-warning": "
Ovo je pre-release verzija NodeBB. Nenamjerne greške su moguće.
",
+ "running-in-development": "Forum je u razvojnom stanju. Forum bi mogao biti otvoren za napade; Molimo kontaktirajte vašeg sistemskog administratora",
+
+ "notices": "Obavijest",
+ "restart-not-required": "Restart nije potreban",
+ "restart-required": "Potrebno je ponovno pokretanje",
+ "search-plugin-installed": "Dodatak pretrage instaliran",
+ "search-plugin-not-installed": "Dodatak pretrage nije instaliran",
+ "search-plugin-tooltip": "Instalirajte dodatak za pretragu sa stranice za upravljanje dodatcima da aktivirate mogućnost pretrage foruma.",
+
+ "control-panel": "Kontrola sistema",
+ "reload": "Ponovno učitaj",
+ "restart": "Pokreni ponovno",
+ "restart-warning": "Ponovno pokretanje NodeBB će odbaciti sve uspostavljene veze na par sekundi.",
+ "maintenance-mode": "Održavanje",
+ "maintenance-mode-title": "Postavite mod za održavanje foruma",
+ "realtime-chart-updates": "Ažuriranja u stvarnom vremenu",
+
+ "active-users": "Aktivni korisnici",
+ "active-users.users": "Korisnici",
+ "active-users.guests": "Gosti",
+ "active-users.total": "Ukupno",
+ "active-users.connections": "Veze",
+
+ "anonymous-registered-users": "Anonimni vs Registrirani korisnici",
+ "anonymous": "Anomiman",
+ "registered": "Registriran",
+
+ "user-presence": "Korisnik prisutan",
+ "on-categories": "Na listi kategorija",
+ "reading-posts": "Čita objave",
+ "browsing-topics": "Pretražuj teme",
+ "recent": "Nedavno",
+ "unread": "Nepročitano",
+
+ "high-presence-topics": "Teme visoke prisutnosti",
+
+ "graphs.page-views": "Pregled stranica",
+ "graphs.unique-visitors": "Jedninstveni posjetitelji",
+ "graphs.registered-users": "Registrirani korisnici",
+ "graphs.anonymous-users": "Anonimni korisnici"
+}
diff --git a/public/language/hr/admin/general/homepage.json b/public/language/hr/admin/general/homepage.json
new file mode 100644
index 0000000000..a42652183e
--- /dev/null
+++ b/public/language/hr/admin/general/homepage.json
@@ -0,0 +1,7 @@
+{
+ "home-page": "Naslovnica",
+ "description": "Izaberi koja stranica će se prikazivati kada korisnici navigiraju u root URL Vašeg foruma",
+ "home-page-route": "Putanja naslovnice",
+ "custom-route": "Uobičajna putanja",
+ "allow-user-home-pages": "Dozvoli korisničke naslovnice"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/general/languages.json b/public/language/hr/admin/general/languages.json
new file mode 100644
index 0000000000..fc0d958019
--- /dev/null
+++ b/public/language/hr/admin/general/languages.json
@@ -0,0 +1,5 @@
+{
+ "language-settings": "Postavke jezika",
+ "description": "Zadani jezik odlučuje o postavkama jezika za sve korisnike foruma. .Korisnici mogu sami odabrati jezik na stranici postavki jezika.",
+ "default-language": "Zadani jezik"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/general/navigation.json b/public/language/hr/admin/general/navigation.json
new file mode 100644
index 0000000000..c49c255bb6
--- /dev/null
+++ b/public/language/hr/admin/general/navigation.json
@@ -0,0 +1,27 @@
+{
+ "icon": "Ikona:",
+ "change-icon": "promjena",
+ "route": "Putanja:",
+ "tooltip": "Napomena:",
+ "text": "Tekst:",
+ "text-class": "Text Class: opcija",
+ "id": "ID: opcionalno",
+
+ "properties": "Postavke",
+ "only-admins": "Prikaži samo administratorima",
+ "only-global-mods-and-admins": "Prikazuj samo globalnim moderatorima i administratorima",
+ "only-logged-in": "Prikaži samo prijavljenim korisnicima",
+ "open-new-window": "Otvori u novom prozoru",
+
+ "installed-plugins-required": "Potrebni su instalirani dodatci:",
+ "search-plugin": "Dodatak pretrage",
+
+ "btn.delete": "Obriši",
+ "btn.disable": "Onemogući",
+ "btn.enable": "Omogući",
+
+ "available-menu-items": "Dostupni artikli menija",
+ "custom-route": "Uobičajna putanja",
+ "core": "jezgra",
+ "plugin": "dodatak"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/general/social.json b/public/language/hr/admin/general/social.json
new file mode 100644
index 0000000000..b6f1c3ee29
--- /dev/null
+++ b/public/language/hr/admin/general/social.json
@@ -0,0 +1,5 @@
+{
+ "post-sharing": "Dijeljenje objave",
+ "info-plugins-additional": "Dodaci mogu dodati dodatne mreže za dijeljenje objava.",
+ "save-success": "Uspješno spremljene mreže za razmjenu objava!"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/general/sounds.json b/public/language/hr/admin/general/sounds.json
new file mode 100644
index 0000000000..21bf8e26ff
--- /dev/null
+++ b/public/language/hr/admin/general/sounds.json
@@ -0,0 +1,9 @@
+{
+ "notifications": "Obavijesti",
+ "chat-messages": "Poruke",
+ "play-sound": "Pokreni",
+ "incoming-message": "Dolazna poruka",
+ "outgoing-message": "Odlazna poruka",
+ "upload-new-sound": "Učitaj novi zvuk",
+ "saved": "Postavke spremljene"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/manage/categories.json b/public/language/hr/admin/manage/categories.json
new file mode 100644
index 0000000000..f87dfb28f8
--- /dev/null
+++ b/public/language/hr/admin/manage/categories.json
@@ -0,0 +1,68 @@
+{
+ "settings": "Postavke kategorije",
+ "privileges": "Privilegije",
+
+ "name": "Ime kategorije",
+ "description": "Opis kategorije",
+ "bg-color": "Pozadniska boja",
+ "text-color": "Boja teksta",
+ "bg-image-size": "Veličina pozadinske slike",
+ "custom-class": "Obična klasa",
+ "num-recent-replies": "# nedavnih objava",
+ "ext-link": "Vanjska poveznica",
+ "upload-image": "Učitaj sliku",
+ "delete-image": "Ukloni",
+ "category-image": "Slika kategorije",
+ "parent-category": "Roditeljska kategorija",
+ "optional-parent-category": "(Opcionalno) Roditeljska kategorija",
+ "parent-category-none": "(Ništa)",
+ "copy-settings": "Kopiraj postavke iz ",
+ "optional-clone-settings": "(Opcionalno) Kloniraj postavke iz kategorije",
+ "purge": "Odbaci kategoriju",
+
+ "enable": "Omogući",
+ "disable": "Onemogući",
+ "edit": "Uredi",
+
+ "select-category": "Odabri kategoriju",
+ "set-parent-category": "Postavi roditeljsku kategoriju ",
+
+ "privileges.description": "Možete konfigurirati pristup kontrolnim privilegijama u ovoj kategoriji unutar ove sekcije.Privilegije mogu biti dane bazirane na korisnicima ili grupama.Možete dodati nove korisnike u ovu tabelu pretragom u polju ispod.",
+ "privileges.warning": "Note: Privilege settings take effect immediately. It is not necessary to save the category after adjusting these settings.",
+ "privileges.section-viewing": "Privilegije pogleda",
+ "privileges.section-posting": "Privilegije objave",
+ "privileges.section-moderation": "Dozvole moderiranja",
+ "privileges.section-user": "Korisnik",
+ "privileges.search-user": "Dodaj korisnika",
+ "privileges.no-users": "U ovoj kategoriji nema privilegije za korisnika.",
+ "privileges.section-group": "Grupa",
+ "privileges.group-private": "Ova grupa je privatna",
+ "privileges.search-group": "Dodaj grupu",
+ "privileges.copy-to-children": "Kopiraj u dijete",
+ "privileges.copy-from-category": "Kopiraj iz kategorije",
+ "privileges.inherit": "If the registered-users group is granted a specific privilege, all other groups receive an implicit privilege, even if they are not explicitly defined/checked. This implicit privilege is shown to you because all users are part of the registered-users user group, and so, privileges for additional groups need not be explicitly granted.",
+
+ "analytics.back": "Povratak na listu kategorija",
+ "analytics.title": "Analitika za \"%1\" kategoriju",
+ "analytics.pageviews-hourly": "Figure 1 – Hourly page views for this category",
+ "analytics.pageviews-daily": "Oblik 2 – Pregledi po danu za ovu kategoriju",
+ "analytics.topics-daily": "Oblik 3 – Dnevne teme kreirane u ovoj kategoriji",
+ "analytics.posts-daily": "Oblik 4 – Dnevne objave u ovoj kategoriji",
+
+ "alert.created": "Kreirano",
+ "alert.create-success": "Kategorija uspješno kreirana!",
+ "alert.none-active": "Nemate aktivnih kategorija.",
+ "alert.create": "Napravi kategoriju",
+ "alert.confirm-moderate": "Are you sure you wish to grant the moderation privilege to this user group? This group is public, and any users can join at will.",
+ "alert.confirm-purge": "
Do you really want to purge this category \"%1\"?
Warning! All topics and posts in this category will be purged!
Purging a category will remove all topics and posts, and delete the category from the database. If you want to remove a category temporarily, you'll want to \"disable\" the category instead.
Nastao je problem sa stvaranjem Vaše grupe.Molimo probajte ponovo kasnije!
",
+ "alerts.confirm-delete": "Sigurni ste da želite obrisati ovu grupu?",
+
+ "edit.name": "Ime",
+ "edit.description": "Opis",
+ "edit.user-title": "Naslov članova",
+ "edit.icon": "Ikona grupe",
+ "edit.label-color": "Boja oznake grupe",
+ "edit.show-badge": "Prikaži beđ",
+ "edit.private-details": "Ako je omogućeno, pridruživanje grupi zahtjeva dozvolu vlasnika grupe.",
+ "edit.private-override": "Upozorenje:Privatne grupe su onemogućene na sistemskoj razini,koje onemogućavaju ovu opciju",
+ "edit.disable-requests": "Onemogući zahtjeve za priključenje",
+ "edit.hidden": "Skriveno",
+ "edit.hidden-details": "Ako je uključeno,ova grupa neće biti prikazana u listi grupa i korisnici će morati biti pozvani ručno",
+ "edit.add-user": "Dodaj korisnika u grupu",
+ "edit.add-user-search": "Pretraži korisnike",
+ "edit.members": "Lista članova",
+ "control-panel": "Kontrolna ploča grupa",
+ "revert": "Povrati",
+
+ "edit.no-users-found": "Korisnik nije pronađen",
+ "edit.confirm-remove-user": "Sigurni ste da želite ukloniti ovog korisnika?",
+ "edit.save-success": "Promjene spremljene!"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/manage/ip-blacklist.json b/public/language/hr/admin/manage/ip-blacklist.json
new file mode 100644
index 0000000000..374b5029d5
--- /dev/null
+++ b/public/language/hr/admin/manage/ip-blacklist.json
@@ -0,0 +1,15 @@
+{
+ "lead": "Upišite IP za blokiranje ovdje.",
+ "description": "Blokiranje korisničkog računa neki put nije dovoljno za odbiti nepoželjno osobu.U tom slučaju najbolji način da se zaštiti forum je onemogućavanje spajanja na forum sa određene IP adrese ili spektrom IP adresa.",
+ "active-rules": "Aktivna pravila",
+ "validate": "Potvrdite blokade ",
+ "apply": "Primjeni blokade",
+ "hints": "Sintaktički savjeti",
+ "hint-1": "Odredite jednu IP adresu po liniji. Možete dodati IP blokove dokle god su upisani u CIDR formatu (npr. 192.168.100.0/22).",
+ "hint-2": "Možete dodati komentare tako da u početku reda upišete simbol ljestvi code>#",
+
+ "validate.x-valid": "%1 od %2 pravila valjano.",
+ "validate.x-invalid": "Sljedeća %1 pravila su nevažeća:",
+
+ "alerts.applied-success": "Blokiranje omogućeno"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/manage/registration.json b/public/language/hr/admin/manage/registration.json
new file mode 100644
index 0000000000..aba7529be9
--- /dev/null
+++ b/public/language/hr/admin/manage/registration.json
@@ -0,0 +1,20 @@
+{
+ "queue": "Na čekanju",
+ "description": "Nema korisnika na čekanju za registraciju. Za pokretanje ove mogućnosti odite na Settings → User → User Registration i postavite tip registracije u \"Admin Approval\".",
+
+ "list.name": "Ime",
+ "list.email": "Email",
+ "list.ip": "IP",
+ "list.time": "Vrijeme",
+ "list.username-spam": "Učestalost %1 Pojavljivanje %2 Samouvjerenost %3",
+ "list.email-spam": "Učestalost %1 Pojavljivanje %2",
+ "list.ip-spam": "Učestalost: %1 Pojavljivanje: %2",
+
+ "invitations": "Pozivnice",
+ "invitations.description": "Ispod je potpuni popis poslanih pozivnica.Koristite ctrl + f za pretragu liste po emailu ili korisničkom imenu.
Korisničko ime će biti prikazano na desno od emaila za korisnike koji su iskoristili svoje pozivnice.",
+ "invitations.inviter-username": "Korisničko ime pozivatelja",
+ "invitations.invitee-email": "Email adresa pozivatelja",
+ "invitations.invitee-username": "Korisničko ime pozivatelja (ako je registriran)",
+
+ "invitations.confirm-delete": "Sigurni ste da želite obrisati ovu pozivnicu?"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/manage/tags.json b/public/language/hr/admin/manage/tags.json
new file mode 100644
index 0000000000..9976f4d310
--- /dev/null
+++ b/public/language/hr/admin/manage/tags.json
@@ -0,0 +1,18 @@
+{
+ "none": "Vaš forum nema tema sa oznakama",
+ "bg-color": "Pozadinska boja",
+ "text-color": "Boja teksta",
+ "create-modify": "Napravi i uredi oznake",
+ "description": "Odaberite oznake klikom ili povlačenjem, koristite SHIFT za višestruki odabir.",
+ "create": "Napravi oznaku",
+ "modify": "Uredi oznake",
+ "delete": "Obriši odabrane oznake",
+ "search": "Pretraži za oznake ...",
+ "settings": "Kliknite ovdje za posjetu postavki oznaka",
+ "name": "Ime oznake",
+
+ "alerts.editing-multiple": "Uređivanje više oznaka",
+ "alerts.editing-x": "Uredi \"%1\" oznake",
+ "alerts.confirm-delete": "Želite li obrisati odabrane oznake?",
+ "alerts.update-success": "Oznake promijenjene!"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/manage/users.json b/public/language/hr/admin/manage/users.json
new file mode 100644
index 0000000000..67d5981583
--- /dev/null
+++ b/public/language/hr/admin/manage/users.json
@@ -0,0 +1,91 @@
+{
+ "users": "Korisnici",
+ "edit": "Uredi",
+ "make-admin": "Dodaj administratora",
+ "remove-admin": "Makni administratora",
+ "validate-email": "Potvrdite email",
+ "send-validation-email": "Pošalji email potvrde",
+ "password-reset-email": "Poslan email zahtjev za resetiranje lozinke",
+ "ban": "Blokiraj korisnika",
+ "temp-ban": "Blokiraj korisnika privremeno",
+ "unban": "Odblokiraj korisnika",
+ "reset-lockout": "Resetiraj zaključavanje",
+ "reset-flags": "Resetiraj zastave",
+ "delete": "Obriši korisnika",
+ "purge": "Obriši korisnike i sadržaj",
+ "download-csv": "Preuzmi CSV",
+ "invite": "Pozivnica",
+ "new": "Novi korisnik",
+
+ "pills.latest": "Posljednji korisnici",
+ "pills.unvalidated": "Nije potvrđen",
+ "pills.no-posts": "Nema objava",
+ "pills.top-posters": "Najviše objava",
+ "pills.top-rep": "Najviše reputacije",
+ "pills.inactive": "Neaktivan",
+ "pills.flagged": "Najviše zastava",
+ "pills.banned": "Blokirani",
+ "pills.search": "Pretraga korisnika",
+
+ "search.username": "Po korisničkom imenu",
+ "search.username-placeholder": "Unesite korisničko ime za pretragu",
+ "search.email": "Sa email-om",
+ "search.email-placeholder": "Unesite email za pretragu",
+ "search.ip": "Po IP adresi",
+ "search.ip-placeholder": "Unesite IP adresu za pretragu",
+ "search.not-found": "Korisnik nije pronađen!",
+
+ "inactive.3-months": "3 mjeseca",
+ "inactive.6-months": "6 mjeseci",
+ "inactive.12-months": "12 mjeseci",
+
+ "users.uid": "uid",
+ "users.username": "korisničko ime",
+ "users.email": "email",
+ "users.postcount": "postcount",
+ "users.reputation": "reputacija",
+ "users.flags": "flags",
+ "users.joined": "joined",
+ "users.last-online": "Zadnji online",
+ "users.banned": "blokiran",
+
+ "create.username": "Korisničko ime",
+ "create.email": "Email",
+ "create.email-placeholder": "Email korisnika",
+ "create.password": "Lozinka",
+ "create.password-confirm": "Potvdri lozinku",
+
+ "temp-ban.length": "Dužina blokade",
+ "temp-ban.reason": "Razlog (Opcionalno)",
+ "temp-ban.hours": "Sati",
+ "temp-ban.days": "Dani",
+ "temp-ban.explanation": "Unesite dužinu trajana blokade. Ukoliko je vrijeme 0 smatra se permanentnom blokadom.",
+
+ "alerts.confirm-ban": "Sigurni ste da želite blokirati ovo korisnika trajno?",
+ "alerts.confirm-ban-multi": "Sigurni ste da želite blokirati korisnika permanentno?",
+ "alerts.ban-success": "Korisnik blokiran!",
+ "alerts.button-ban-x": "Blokiraj %1 korisnika",
+ "alerts.unban-success": "Korisnik odblokiran!",
+ "alerts.lockout-reset-success": "Zaključavanje resetirano!",
+ "alerts.flag-reset-success": "Flags(s) reset!",
+ "alerts.no-remove-yourself-admin": "Nemoguće je maknuti samog sebe iz administracije!",
+ "alerts.make-admin-success": "Korisnik je sada administrator.",
+ "alerts.confirm-remove-admin": "Sigurni ste da želite ukloniti administratora?",
+ "alerts.remove-admin-success": "Korisnik više nije administrator!",
+ "alerts.confirm-validate-email": "Želite li potvrditi email ovih korisnika?",
+ "alerts.validate-email-success": "Email potvrđen",
+ "alerts.password-reset-confirm": "Želite li poslati email za reset lozinke korisniku ?",
+ "alerts.confirm-delete": "Warning! Do you really want to delete user(s)? This action is not reversable! Only the user account will be deleted, their posts and topics will remain.",
+ "alerts.delete-success": "Korisnici obrisani!",
+ "alerts.confirm-purge": "Warning! Do you really want to delete user(s) and their content? This action is not reversable! All user data and content will be erased!",
+ "alerts.create": "Napravi korisnika",
+ "alerts.button-create": "Napravi",
+ "alerts.button-cancel": "Odustani",
+ "alerts.error-passwords-different": "Lozinke se moraju podudarati!",
+ "alerts.error-x": "Greška
%1
",
+ "alerts.create-success": "Korisnik kreiran!",
+
+ "alerts.prompt-email": "Email:",
+ "alerts.email-sent-to": "Email pozivnica je poslana %1",
+ "alerts.x-users-found": "%1 korisnik pronađen! Vrijeme pretrage: %2 ms"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/menu.json b/public/language/hr/admin/menu.json
new file mode 100644
index 0000000000..088c6a06ef
--- /dev/null
+++ b/public/language/hr/admin/menu.json
@@ -0,0 +1,74 @@
+{
+ "section-general": "Glavno",
+ "general/dashboard": "Glavna ploča",
+ "general/homepage": "Naslovnica",
+ "general/navigation": "Navigacija",
+ "general/languages": "Jezici",
+ "general/sounds": "Zvukovi",
+ "general/social": "Socijalno",
+
+ "section-manage": "Upravljanje",
+ "manage/categories": "Kategorije",
+ "manage/tags": "Oznake",
+ "manage/users": "Korisnici",
+ "manage/registration": "Lista zahtjeva za registraciju",
+ "manage/groups": "Grupe",
+ "manage/ip-blacklist": "IP blokade",
+
+ "section-settings": "Postavke",
+ "settings/general": "Generalno",
+ "settings/reputation": "Reputacija",
+ "settings/email": "Email",
+ "settings/user": "Korisnik",
+ "settings/group": "Grupa",
+ "settings/guest": "Gosti",
+ "settings/uploads": "Slanje",
+ "settings/post": "Objave",
+ "settings/chat": "Razgovor",
+ "settings/pagination": "Numeriranje",
+ "settings/tags": "Oznake",
+ "settings/notifications": "Obavijesti",
+ "settings/cookies": "Kolačići",
+ "settings/web-crawler": "Web puzač",
+ "settings/sockets": "Utičnice",
+ "settings/advanced": "Napredno",
+
+ "settings.page-title": "%1 Postavke",
+
+ "section-appearance": "Izgled",
+ "appearance/themes": "Predlošci",
+ "appearance/skins": "Izgled",
+ "appearance/customise": "Uobičajni HTML i CSS",
+
+ "section-extend": "Proširi",
+ "extend/plugins": "Dodatci",
+ "extend/widgets": "Widgeti",
+ "extend/rewards": "Nagrade",
+
+ "section-social-auth": "Socijalna provjera autentičnosti",
+
+ "section-plugins": "Dodatci",
+ "extend/plugins.install": "Instaliraj dodatke",
+
+ "section-advanced": "Napredno",
+ "advanced/database": "Baza podataka",
+ "advanced/events": "Događanja",
+ "advanced/logs": "Dnevnik",
+ "advanced/errors": "Greške",
+ "advanced/cache": "Cache",
+ "development/logger": "Dnevnik",
+ "development/info": "Info",
+
+ "reload-forum": "Ponovno učitaj forum",
+ "restart-forum": "ponovno pokreni forum",
+ "logout": "Odjava",
+ "view-forum": "Pogledaj forum",
+
+ "search.placeholder": "Pretraga...",
+ "search.no-results": "Nema rezultata ...",
+ "search.search-forum": "Pretraži forum za ",
+ "search.keep-typing": "Upiši više da vidiš rezultate ...",
+ "search.start-typing": "Počni pisati da bi vidio rezultate...",
+
+ "connection-lost": "Veza sa %1 je prekinuta, pokušavam se spojiti ..."
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/settings/advanced.json b/public/language/hr/admin/settings/advanced.json
new file mode 100644
index 0000000000..3bd50b1a1e
--- /dev/null
+++ b/public/language/hr/admin/settings/advanced.json
@@ -0,0 +1,19 @@
+{
+ "maintenance-mode": "Održavanje u toku",
+ "maintenance-mode.help": "Kada je forum u stanju održavanja,svi zahtjevi će biti preusmjereni statičnoj stranici.Administratori su izuzeti od ovog preusmjerenja i mogu normalno koristiti stranicu.",
+ "maintenance-mode.message": "Poruka održavanja",
+ "headers": "Zaglavlje",
+ "headers.allow-from": "Izaberi ALLOW-FROM da bi ste postavili NodeBB u iFrame.",
+ "headers.powered-by": "Uredi \"Powered by\" zaglavlje koje šalje NodeBB",
+ "headers.acao": "Pristup-Kontrola-Dozvoli-Izvor",
+ "headers.acao-help": "Za zabranu pristupa svim stranicama ostavi prazno",
+ "headers.acam": "Access-Control-Allow-Methods",
+ "headers.acah": "Access-Control-Allow-Headers",
+ "traffic-management": "Upravljanje prometom",
+ "traffic.help": "NodeBB koristi modul koji automatski odbija zahtjeve u situacijama visokog prometa.Možete ove postavke izmjeniti ovdje,iako su već zadane postavke dobra početna točka.",
+ "traffic.enable": "Omogući upravljanje prometom",
+ "traffic.event-lag": "Event Loop Lag Threshold (in milliseconds)",
+ "traffic.event-lag-help": "Smanjivanje ove vrijednosti smanjuje vrijeme čekanja za učitavanje stranica,ali će također pokazivati poruku \"prekomjerno opterećenje\" više korisnika(u takvim slučajevima potrebno je ponovo pokretanje).",
+ "traffic.lag-check-interval": "Provjeri interval (u milisekundama)",
+ "traffic.lag-check-interval-help": "Smanjivanje ove vrijednosti uzrokuje da NodeBB postane osjetljivji na oscilacije u prometu,takodjer može uzrokovati da provjere postanu preosjetljive(Biti će potrebno ponovno pokretanje)."
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/settings/chat.json b/public/language/hr/admin/settings/chat.json
new file mode 100644
index 0000000000..2ec0c9147e
--- /dev/null
+++ b/public/language/hr/admin/settings/chat.json
@@ -0,0 +1,9 @@
+{
+ "chat-settings": "Postavke razgovora",
+ "disable": "Onemogući razgovor",
+ "disable-editing": "Onemogući uređivanje/brisanje poruka razgovora",
+ "disable-editing-help": "Administratori i moderatori su izuzeti od ovih restrikcija",
+ "max-length": "Maksimalna dužina poruka u razgovoru",
+ "max-room-size": "Maksimalan broj korisnika u sobama za razgovor",
+ "delay": "Vrijeme između poruka razgovora u milisekundama"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/settings/cookies.json b/public/language/hr/admin/settings/cookies.json
new file mode 100644
index 0000000000..b38e7b223a
--- /dev/null
+++ b/public/language/hr/admin/settings/cookies.json
@@ -0,0 +1,11 @@
+{
+ "eu-consent": "Suglasnost EU",
+ "consent.enabled": "Omogućeno",
+ "consent.message": "Poruka obavijesti",
+ "consent.acceptance": "Poruka prihvaćanja",
+ "consent.link-text": "Odrednice Poveznice Tekst",
+ "consent.blank-localised-default": "Pusti prazno za zadanu NodeBB lokalizaciju",
+ "settings": "Postavke",
+ "cookie-domain": "Sesija kolačić domene",
+ "blank-default": "Ostavi prazno za osnovno"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/settings/email.json b/public/language/hr/admin/settings/email.json
new file mode 100644
index 0000000000..67ef2941c5
--- /dev/null
+++ b/public/language/hr/admin/settings/email.json
@@ -0,0 +1,25 @@
+{
+ "email-settings": "Postavke emaila",
+ "address": "Email adresa",
+ "address-help": "Sljedeća email adresa je adresa koju će primatelj vidjeti u \"Od\" i \"Odgovori na\" poljima.",
+ "from": "Od imena",
+ "from-help": "Ime prikazano u dolaznom emailu.",
+ "gmail-routing": "Gmail putanja",
+ "gmail-routing-help1": "Postoje prijave da je Gmail Routing onemogućen na računima sa povišenom sigurnosti. U tom slučaju morati ćete konfigurirati vaš GMail račun da dozvoljava manje sigurne aplikacije.",
+ "gmail-routing-help2": "Za više informacija o ovom rješenju href=\"https://nodemailer.com/using-gmail/\"> molimo pročitajte NodeMailer članak o tom problemu .Alternativa je korištenje email dodatak treće strane poput SendGrid,MailGun itd. Pretražite moguće email dodatke ovdje.",
+ "gmail-transport": "Prosljedite email kroz Gmail/Google Apps račun",
+ "gmail-transport.username": "Korisničko ime",
+ "gmail-transport.username-help": "Unesite punu email adresu ovdje,naročito ako koristite domenu upravljanu preko Google Appsa.",
+ "gmail-transport.password": "Lozinka",
+ "template": "Uredi predložak emaila",
+ "template.select": "Odaberi predložak emaila",
+ "template.revert": "Povrati na original ",
+ "testing": "Testiranje emaila",
+ "testing.select": "Odaberi email predložak ",
+ "testing.send": "Pošalji testni email",
+ "testing.send-help": "Ovaj test mail će biti poslan svim trenutačno prijavljenim korisnicima na njihovu email adresu.",
+ "subscriptions": "Email pretplate",
+ "subscriptions.disable": "Onemogući obavijesti emailom za pretplatnika ",
+ "subscriptions.hour": "Pregled Sati.",
+ "subscriptions.hour-help": "Unesite broj koji pretstavlja vrijeme kada će se poslati pregled mailom (npr. 0 za ponoć, 17za 5 popodne).Imajte na umu da to vrijeme predstavlja vrijeme servera te ne mora predstavljati vrijeme na Vašem sistemu. Vrijeme servera je: Sljedeći pregled će biti poslan ."
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/settings/general.json b/public/language/hr/admin/settings/general.json
new file mode 100644
index 0000000000..37c16a92b5
--- /dev/null
+++ b/public/language/hr/admin/settings/general.json
@@ -0,0 +1,32 @@
+{
+ "site-settings": "Postavke stranice",
+ "title": "Naslov stranice",
+ "title.name": "Ime Vaše zajednice",
+ "title.show-in-header": "Prikaži naslov stranice u zaglavlju",
+ "browser-title": "Naslov pretraživača",
+ "browser-title-help": "Ako naslov pretraživača nije postavljen, koristit će se naziv foruma",
+ "title-layout": "Raspored naslova",
+ "title-layout-help": "Definiraj kako će naslov pretraživača biti strukturiran npr.: {pageTitle} | {browserTitle}",
+ "description.placeholder": "Kratak opis zajednice",
+ "description": "Opis foruma",
+ "keywords": "Ključne riječi",
+ "keywords-placeholder": "Ključne riječi koje opisuju Vašu zajednicu, odvojeni zarezom",
+ "logo": "Logo foruma",
+ "logo.image": "Slika",
+ "logo.image-placeholder": "Putanja logotipa za zaglavlje foruma",
+ "logo.upload": "Učitaj",
+ "logo.url": "URL",
+ "logo.url-placeholder": "URL loga stranice",
+ "logo.url-help": "U slučaju klika na logo,pošalji korisnike na ovu adresu.U slučaju praznog polja,korisnik će biti poslan na index foruma.",
+ "logo.alt-text": "Alt tekst",
+ "log.alt-text-placeholder": "Alternativni tekst za dostupnost",
+ "favicon": "Favicon",
+ "favicon.upload": "Učitaj",
+ "touch-icon": "Naslovnica/Touch ikona",
+ "touch-icon.upload": "Učitaj",
+ "touch-icon.help": "Recommended size and format: 192x192, PNG format only. If no touch icon is specified, NodeBB will fall back to using the favicon.",
+ "outgoing-links": "Odlazne poveznice",
+ "outgoing-links.warning-page": "Koristi upozorenje za odlazne poveznice",
+ "search-default-sort-by": "Pretraži zadani poredak",
+ "outgoing-links.whitelist": "Domene za koje se ne koristi odlazno upozorenje"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/settings/group.json b/public/language/hr/admin/settings/group.json
new file mode 100644
index 0000000000..c621da8cb1
--- /dev/null
+++ b/public/language/hr/admin/settings/group.json
@@ -0,0 +1,12 @@
+{
+ "general": "Glavno",
+ "private-groups": "Privatne grupe",
+ "private-groups.help": "Ako je uključeno,ulazak u grupe zahtjevati će odobrenje vlasnika grupe (Default: enabled)",
+ "private-groups.warning": "Pazi! Ako je ova opcija isključena,a imate privatne grupe,automatski će postati javne.",
+ "allow-creation": "Dozvoli kreiranje grupe",
+ "allow-creation-help": "Ako je uključeno,korisnicima će biti omogućeno stvaranje grupa (Default: disabled)",
+ "max-name-length": "Maksimalna dužina imena grupe",
+ "cover-image": "Slika grupe",
+ "default-cover": " ",
+ "default-cover-help": "Dodaj slike sa zarezima između za grupe koje nemaju učitanu naslovnu sliku"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/settings/guest.json b/public/language/hr/admin/settings/guest.json
new file mode 100644
index 0000000000..8cc284acb4
--- /dev/null
+++ b/public/language/hr/admin/settings/guest.json
@@ -0,0 +1,8 @@
+{
+ "handles": "Upravljanje gostima",
+ "handles.enabled": "Dozvoli upravljanje gostima",
+ "handles.enabled-help": "Ova opcija omogućava gostima da izaberi ime za svaku objavu koju naprave.Ako je onemogućena gosti će se zvati \"gost\".",
+ "privileges": "Privilegije gosta",
+ "privileges.can-search": "Dozvoli gostima pretragu bez prijave",
+ "privileges.can-search-users": "Dopusti gostima pretragu korisnika bez prijave"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/settings/notifications.json b/public/language/hr/admin/settings/notifications.json
new file mode 100644
index 0000000000..1d1c969f34
--- /dev/null
+++ b/public/language/hr/admin/settings/notifications.json
@@ -0,0 +1,5 @@
+{
+ "notifications": "Obavijesti",
+ "welcome-notification": "Obavijest dobrodošlice",
+ "welcome-notification-link": "Poveznica objave dobrodošlice"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/settings/pagination.json b/public/language/hr/admin/settings/pagination.json
new file mode 100644
index 0000000000..3a38d2bfe9
--- /dev/null
+++ b/public/language/hr/admin/settings/pagination.json
@@ -0,0 +1,9 @@
+{
+ "pagination": "Postavke numeriranja",
+ "enable": "Numeriraj teme i objave umjesto beskrajnog skrolanja.",
+ "topics": "Numeriranje tema",
+ "posts-per-page": "Objava po stranici ",
+ "categories": "Numeriranje kategorija",
+ "topics-per-page": "Tema po stranici",
+ "initial-num-load": "Početni broj tema za učitati u sekcijama nepročitano,nedavno i popularno."
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/settings/post.json b/public/language/hr/admin/settings/post.json
new file mode 100644
index 0000000000..e97f8d77e8
--- /dev/null
+++ b/public/language/hr/admin/settings/post.json
@@ -0,0 +1,46 @@
+{
+ "sorting": "Redosljed objava",
+ "sorting.post-default": "Zadano sortiranje objava",
+ "sorting.oldest-to-newest": "Starije prema Novijem",
+ "sorting.newest-to-oldest": "Novije prema Starijem",
+ "sorting.most-votes": "Najviše glasova",
+ "sorting.topic-default": "Uobičajeno sortiranje tema",
+ "restrictions": "Restrikcije objave",
+ "restrictions.seconds-between": "Sekunde između objava",
+ "restrictions.seconds-between-new": "Sekunde prije objave za nove korisnike",
+ "restrictions.rep-threshold": "Prag reputacije prije nego je ova restrikcija maknuta.",
+ "restrictions.seconds-defore-new": "Sekunde prije novi korisnik može objavljivati",
+ "restrictions.seconds-edit-after": "Broj sekundi koje su korisnicima dozvoljene za mijenjanje objava nakon objavljivanja(u slučaju 0 ova postavka je ugašena).",
+ "restrictions.seconds-delete-after": "Broj sekundi koji korisnik ima za obrisati objavu nakon objavljivanja(u slučaju 0 ova postavka je ugašena).",
+ "restrictions.replies-no-delete": "Broj odgovora nakon što je korisniku zabranjeno brisati njegovu temu(u slučaju 0 ova postavka je ugašena).",
+ "restrictions.min-title-length": "Minimalna dužina naslova",
+ "restrictions.max-title-length": "Maksimalna dužina naslova",
+ "restrictions.min-post-length": "Minimalna dužina objave",
+ "restrictions.max-post-length": "Maksimalna dužina objave",
+ "restrictions.days-until-stale": "Dani do kad se tema smatra neaktivnom",
+ "restrictions.stale-help": "Ako je tema smatran neaktivnim,upozorenje će biti prikazano svim korisnicima koji pokušaju odgovoriti na temu",
+ "timestamp": "Vremenska oznaka",
+ "timestamp.cut-off": "Datum prekida (u danima)",
+ "timestamp.cut-off-help": "Dates & times will be shown in a relative manner (e.g. \"3 hours ago\" / \"5 days ago\"), and localised into various\n\t\t\t\t\tlanguages. After a certain point, this text can be switched to display the localised date itself\n\t\t\t\t\t(e.g. 5 Nov 2016 15:30). (Default: 30, or one month). Set to 0 to always display dates, leave blank to always display relative times.",
+ "teaser": "Zadirkivač objava",
+ "teaser.last-post": "Last – Show the latest post, including the original post, if no replies",
+ "teaser.last-reply": "Last – Show the latest reply, or a \"No replies\" placeholder if no replies",
+ "teaser.first": "Prvi",
+ "unread": "Nepročitane postavke",
+ "unread.cutoff": "Nepročitano dani prekinutosti",
+ "unread.min-track-last": "Minimalni broj objava u temi prije praćenja zadnje pročitanog",
+ "recent": "Nedavne postavke",
+ "recent.categoryFilter.disable": "onemogući filtriranje tema u ignoriranim kategorijama na stranici /nedavno",
+ "signature": "Postavke potpisa",
+ "signature.disable": "Onemogući potpise",
+ "signature.no-links": "Onemogući odlazne poveznice u potpisima ",
+ "signature.no-images": "Onemogući slike u potpisima",
+ "signature.max-length": "Minimalna dužina potpisa",
+ "composer": "Postavke Composer-a",
+ "composer-help": "The following settings govern the functionality and/or appearance of the post composer shown\n\t\t\t\tto users when they create new topics, or reply to existing topics.",
+ "composer.show-help": "Prikaži \"Pomoć\"",
+ "composer.enable-plugin-help": "Dozvoli dodatcima da dodaju sadržaj u \"Pomoć\"",
+ "composer.custom-help": "Tekst \"Pomoć\"",
+ "ip-tracking": "IP praćenje",
+ "ip-tracking.each-post": "Prati IP adresu za svaku objavu"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/settings/reputation.json b/public/language/hr/admin/settings/reputation.json
new file mode 100644
index 0000000000..71e4fab8b6
--- /dev/null
+++ b/public/language/hr/admin/settings/reputation.json
@@ -0,0 +1,9 @@
+{
+ "reputation": "Postavke reputacije",
+ "disable": "Onemogući reputacije",
+ "disable-down-voting": "Onemogući oduzimanje glasova",
+ "votes-are-public": "Svi glasovi su javni",
+ "thresholds": "Prag aktivnosti",
+ "min-rep-downvote": "Minimalna reputacija za glasanje protiv",
+ "min-rep-flag": "Minimalna reputacija za označavanje objava"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/settings/sockets.json b/public/language/hr/admin/settings/sockets.json
new file mode 100644
index 0000000000..7528fef036
--- /dev/null
+++ b/public/language/hr/admin/settings/sockets.json
@@ -0,0 +1,6 @@
+{
+ "reconnection": "Postavke ponovnog spajanja",
+ "max-attempts": "Max pokušaji spajanja",
+ "default-placeholder": "Zadano: %1",
+ "delay": "Stanka u ponovnom spajanju"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/settings/tags.json b/public/language/hr/admin/settings/tags.json
new file mode 100644
index 0000000000..ea7284a928
--- /dev/null
+++ b/public/language/hr/admin/settings/tags.json
@@ -0,0 +1,12 @@
+{
+ "tag": "Postavke oznaka",
+ "min-per-topic": "Najmanje oznaka za temu",
+ "max-per-topic": "Maksimalno oznaka po temi",
+ "min-length": "Minimalna dužina oznake",
+ "max-length": "Maksimalna dužina oznaka",
+ "goto-manage": "Klikni ovdje za upravljanje oznakama.",
+ "privacy": "Privatnost",
+ "list-private": "Postavi listu oznaka privatno",
+ "related-topics": "Slične teme",
+ "max-related-topics": "Maksimalni broj povezanih tema za prikaz(ako je podržano unutar predloška)"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/settings/uploads.json b/public/language/hr/admin/settings/uploads.json
new file mode 100644
index 0000000000..ced5c66195
--- /dev/null
+++ b/public/language/hr/admin/settings/uploads.json
@@ -0,0 +1,28 @@
+{
+ "posts": "Objave",
+ "allow-files": "Dozvoli korisnicima učitavanje regularnih datoteka",
+ "private": "Učini datoteke privatnim",
+ "max-image-width": "Promjeni veličinu slike na zadanu širinu (u pikselima)",
+ "max-image-width-help": "(u pixelima,zadano:760 pixela,upiši 0 za onemogućiti opciju)",
+ "max-file-size": "Maksimalna veličina datoteka (in KiB)",
+ "max-file-size-help": "u kilobajtima,zadano:2048 kiB",
+ "allow-topic-thumbnails": "Dozvoli korisnicima da učitaju sliku teme",
+ "topic-thumb-size": "Veličina slike teme",
+ "allowed-file-extensions": "Dozvoljene ekstenzije datoteka",
+ "allowed-file-extensions-help": "Unesite popis dozvoljenih ekstenzija datoteka sa zarezima između (npr. pdf,xls,doc ).Prazan popis znači da su sve ekstenzije dozvoljene.",
+ "profile-avatars": "Avatar profila",
+ "allow-profile-image-uploads": "Dozvoli korisnicima da učitaju sliku profila",
+ "convert-profile-image-png": "Konvertiraj profilne slike u PNG",
+ "default-avatar": "Zadani osnovni avatar",
+ "upload": "Učitaj",
+ "profile-image-dimension": "Dimenzije slike profila",
+ "profile-image-dimension-help": "(u pikselima, zadano: 128 piksela)",
+ "max-profile-image-size": "Maksimalna veličina profilne slike",
+ "max-profile-image-size-help": "(u kilobajtima, početna postavka: 256 KiB)",
+ "max-cover-image-size": "Maksimalna veličina slike za naslovnicu",
+ "max-cover-image-size-help": "(in kilobytes, default: 2,048 KiB)",
+ "keep-all-user-images": "Zadrži stare verzije avatara i slike profila na serveru",
+ "profile-covers": "Slika profila",
+ "default-covers": "Osnovne slike naslovnica",
+ "default-covers-help": "Add comma-separated default cover images for accounts that don't have an uploaded cover image"
+}
diff --git a/public/language/hr/admin/settings/user.json b/public/language/hr/admin/settings/user.json
new file mode 100644
index 0000000000..7a012120b0
--- /dev/null
+++ b/public/language/hr/admin/settings/user.json
@@ -0,0 +1,60 @@
+{
+ "authentication": "Autentifikacija",
+ "allow-local-login": "Dozvoli lokalnu prijavu",
+ "require-email-confirmation": "Zahtjeva potvrdu email-om",
+ "email-confirm-interval": "Korisnik ne može ponovno poslati potvrdni email do ",
+ "email-confirm-email2": "prošlo je minuta",
+ "allow-login-with": "Dozvoli prijavu sa",
+ "allow-login-with.username-email": "Korisničko ime ili Email",
+ "allow-login-with.username": "Korisničko ime",
+ "allow-login-with.email": "Samo email",
+ "account-settings": "Postavke računa",
+ "disable-username-changes": "onemogući promjenu korisničkog imena",
+ "disable-email-changes": "Onemogući promjenu emaila",
+ "disable-password-changes": "Onemogući promjenu lozinke",
+ "allow-account-deletion": "Dozvoli brisanje računa korisnicima",
+ "user-info-private": "Postavi korisničke informacije privatne",
+ "themes": "Predlošci",
+ "disable-user-skins": "Onemogući korisnicima odabir predloška",
+ "account-protection": "Zaštita računa",
+ "login-attempts": "Pokušaji prijave po satu",
+ "login-attempts-help": "U slučaju pokušaja prijave na račun user's u tolikoj količini da prelazi ovaj prag,račun će biti zaključan na pre-konfigurirano vrijeme",
+ "lockout-duration": "Broj minuta u slučaju zaključavanja računa",
+ "login-days": "Dani za zapamtiti sesiju korisničke prijave",
+ "password-expiry-days": "Forsiraj reset lozinke nakon broja dana",
+ "registration": "Korisnička registracija",
+ "registration-type": "Tip registracije",
+ "registration-type.normal": "Nromalno",
+ "registration-type.admin-approval": "Administratorsko dopuštenje",
+ "registration-type.admin-approval-ip": "Administratorska dozovola za IP",
+ "registration-type.invite-only": "Samo uz pozivnicu",
+ "registration-type.admin-invite-only": "Samo uz pozivnicu administratora",
+ "registration-type.disabled": "Bez registracije",
+ "registration-type.help": "Normal - Users can register from the /register page. \nAdmin Approval - User registrations are placed in an approval queue for administrators. \nAdmin Approval for IPs - Normal for new users, Admin Approval for IP addresses that already have an account. \nInvite Only - Users can invite others from the users page. \nAdmin Invite Only - Only administrators can invite others from users and admin/manage/users pages. \nNo registration - No user registration. ",
+ "registration.max-invites": "Maksimalan broj pozivnica po korisniku",
+ "max-invites": "Maksimalan broj pozivnica po korisniku",
+ "max-invites-help": "0 bez restrikcija. Administrator ima neograničeno pozivnica Primjenjivo samo za \"poziv na forum\"",
+ "min-username-length": "Minimalna dužina korisničkog imena",
+ "max-username-length": "Maksimalna dužina korisničkog imena",
+ "min-password-length": "Minimalna dužina lozinke",
+ "min-password-strength": "Minimalna snaga lozinke",
+ "max-about-me-length": "Maksimalna dužina \"O meni\"",
+ "terms-of-use": "Pravila korištenja foruma (ostavi prazno za isključeno)",
+ "user-search": "Korisnička pretraga",
+ "user-search-results-per-page": "Broj rezultata za prikaz",
+ "default-user-settings": "Osnovne korisničke postavke",
+ "show-email": "Prikaži email",
+ "show-fullname": "Prikaži puno ime",
+ "restrict-chat": "Dozvoli poruke samo od ljudi koje praim",
+ "outgoing-new-tab": "Otvori odlazne poveznive u novom prozoru ",
+ "topic-search": "Dopusti pretragu po temama",
+ "digest-freq": "Pretplatite se na pregled",
+ "digest-freq.off": "Isključi",
+ "digest-freq.daily": "Dnevno",
+ "digest-freq.weekly": "Tjedno",
+ "digest-freq.monthly": "Mjesečno",
+ "email-chat-notifs": "Pošalji email ukoliko stigne nova poruka dok nisam na mreži",
+ "email-post-notif": "Pošalji email pri odgovoru u teme na koje pratim",
+ "follow-created-topics": "Prati teme koje kreiram",
+ "follow-replied-topics": "Prati teme na koje odgovorim"
+}
\ No newline at end of file
diff --git a/public/language/hr/admin/settings/web-crawler.json b/public/language/hr/admin/settings/web-crawler.json
new file mode 100644
index 0000000000..1bcfcd2409
--- /dev/null
+++ b/public/language/hr/admin/settings/web-crawler.json
@@ -0,0 +1,10 @@
+{
+ "crawlability-settings": "Postavke pretraživanja",
+ "robots-txt": "Obični Robots.txt ostavi prazno za osnovno",
+ "sitemap-feed-settings": "Sitemap i postavke feeda",
+ "disable-rss-feeds": "Onemogući RSS",
+ "disable-sitemap-xml": "Onemogući Sitemap.xml",
+ "sitemap-topics": "Broj tema za prikaz u mapi foruma",
+ "clear-sitemap-cache": "Očisti mapu foruma iz predmemorije",
+ "view-sitemap": "Pogledaj mapu foruma"
+}
\ No newline at end of file
diff --git a/public/language/hr/category.json b/public/language/hr/category.json
new file mode 100644
index 0000000000..c4eb7644fa
--- /dev/null
+++ b/public/language/hr/category.json
@@ -0,0 +1,20 @@
+{
+ "category": "Kategorija",
+ "subcategories": "Podkategorije",
+ "new_topic_button": "Nova Tema",
+ "guest-login-post": "Prijavi se za objavu",
+ "no_topics": "Nema tema u ovoj kategoriji. Zašto ne probate napisati novu?",
+ "browsing": "pregledavanje",
+ "no_replies": "Nema odgovora",
+ "no_new_posts": "Nema novih tema.",
+ "share_this_category": "Podijeli ovu kategoriju",
+ "watch": "Prati",
+ "ignore": "Ignoriraj",
+ "watching": "Pratim",
+ "ignoring": "Ignoriram",
+ "watching.description": "Prikaži nepročitane teme",
+ "ignoring.description": "Ne prikazuj nepročitane teme",
+ "watch.message": "Sada pratite nove objave iz ove kategorije i svih potkategorija",
+ "ignore.message": "Sada ignorirate nove objave iz ove kategorije i svih potkategorija",
+ "watched-categories": "Praćene Kategorije"
+}
\ No newline at end of file
diff --git a/public/language/hr/email.json b/public/language/hr/email.json
new file mode 100644
index 0000000000..cdf26cd74f
--- /dev/null
+++ b/public/language/hr/email.json
@@ -0,0 +1,40 @@
+{
+ "password-reset-requested": "Zatraženo ponovno kreiranje lozinke - %1!",
+ "welcome-to": "Dobrodošli na %1",
+ "invite": "Poziv s %1",
+ "greeting_no_name": "Zdravo",
+ "greeting_with_name": "Zdravo %1",
+ "welcome.text1": "Zahvaljujemo na registraciji na %1!",
+ "welcome.text2": "Da bi u potpunosti aktivirali Vaš račun, moramo provjeriti da li ste Vi pravi vlasnik email adrese sa kojom ste se registrirali.",
+ "welcome.text3": "Administrator je prihvatio vaš zahtjev za registraciju. Možete se prijaviti koristeći svoje korisničko ime i lozinku.",
+ "welcome.cta": "Kliknite ovdje da bi potvrdili email adresu",
+ "invitation.text1": "%1 vas je pozvao da se pridružite %2",
+ "invitation.ctr": "Kliknite ovdje kako biste stvorili korisnički račun.",
+ "reset.text1": "Dobili smo zahtjev za ponovnim kreiranjem lozinke, vjerojatno jer ste ju zaboravili. Ako niste, molimo vas da ignorirate ovaj email.",
+ "reset.text2": "Da bi nastavili sa ponovnim kreiranjem lozinke, kliknite na ovaj link:",
+ "reset.cta": "Kliknite ovdje kako biste postavili novu lozinku.",
+ "reset.notify.subject": "Lozinka uspješno promijenjena.",
+ "reset.notify.text1": "Obavještavamo vas da vam je lozinka na %1 uspješno promijenjena.",
+ "reset.notify.text2": "Ako niste ovo odobrili, molimo vas obavijestite administratora.",
+ "digest.notifications": "Imate nepročitane obavijesti s %1:",
+ "digest.latest_topics": "Posljednje teme s %1",
+ "digest.cta": "Kliknite ovdje kako biste posjetili %1",
+ "digest.unsub.info": "Ovaj pregled je poslan zbog Vaših postavki pretplata.",
+ "digest.no_topics": "Nije bilo aktivnih tema u posljednjih %1",
+ "digest.day": "Dan",
+ "digest.week": "Tjedan",
+ "digest.month": "Mjesec",
+ "digest.subject": "Pregled za %1",
+ "notif.chat.subject": "Nova poruka od %1",
+ "notif.chat.cta": "Klikni ovdje za nastavak razgovora ",
+ "notif.chat.unsub.info": "Ova obavijest razgovora Vam je poslana na temelju vaših postavki pretplate.",
+ "notif.post.cta": "Pročitaj temu",
+ "notif.post.unsub.info": "Ova objava Vam je poslana na temelju vaših postavki pretplate.",
+ "test.text1": "Ovo je test email za provjeru Vaše konfiguracije.",
+ "unsub.cta": "Klikni ovdje za promjenu postavki",
+ "banned.subject": "Blokirani se na %1",
+ "banned.text1": "Korisnik %2 je blokirao %1.",
+ "banned.text2": "Blok će trajati do %1.",
+ "banned.text3": "Blokirani ste zbog:",
+ "closing": "Hvala!"
+}
\ No newline at end of file
diff --git a/public/language/hr/error.json b/public/language/hr/error.json
new file mode 100644
index 0000000000..1a7b56feeb
--- /dev/null
+++ b/public/language/hr/error.json
@@ -0,0 +1,132 @@
+{
+ "invalid-data": "Nevažeći podaci",
+ "not-logged-in": "Izgleda da niste prijavljeni",
+ "account-locked": "Vaš račun je privremeno blokiran",
+ "search-requires-login": "Pretraga zahtijeva prijavu - prijavite se ili se registrirajte.",
+ "invalid-cid": "Netočan ID kategorije",
+ "invalid-tid": "Netočan ID teme",
+ "invalid-pid": "Netočan ID objave",
+ "invalid-uid": "Netočan ID korisnika",
+ "invalid-username": "Netočno korisničko ime",
+ "invalid-email": "Netočan email",
+ "invalid-title": "Netočan naslov!",
+ "invalid-user-data": "Netočni korisnički podatci",
+ "invalid-password": "Netočna lozinka",
+ "invalid-username-or-password": "Upišite oboje, korisničko ime i lozinku",
+ "invalid-search-term": "Netočan upit pretraživanja",
+ "csrf-invalid": "Nismo Vas uspijeli prijaviti, najvjerovatnije zbog istekle sesije. Molimo pokušajte ponovno",
+ "invalid-pagination-value": "Netočno numeriranje stranica, mora biti %1 ili %2",
+ "username-taken": "Korisničko ime je zauzeto",
+ "email-taken": "Email je zauzet",
+ "email-not-confirmed": "Vaš email još nije potvrđen, kliknite ovdje da bi potvrdili svoj email.",
+ "email-not-confirmed-chat": "Nemožete razgovarati dok Vaš email nije potvrđen, kliknite ovdje da bi potvrdili svoj email.",
+ "email-not-confirmed-email-sent": "Vaš email još nije potvrđen, provjerite svoj sandučić za potvrdni email.",
+ "no-email-to-confirm": "Ovaj forum zahtijeva potvrdu emaila, kliknite ovdje da bi potvrdili svoj email.",
+ "email-confirm-failed": "Nismo u mogućnosti potvrditi Vaš email, pokušajte ponovno kasnije.",
+ "confirm-email-already-sent": "Potvrdni email je poslan, počekajte %1 minuta za ponovni pokušaj.",
+ "sendmail-not-found": "Sendmail nije pronađen, provjerite da li je instaliran?",
+ "username-too-short": "Korisničko ime prekratko",
+ "username-too-long": "Korisničko ime predugo",
+ "password-too-long": "Lozinka je preduga",
+ "user-banned": "Korisnik blokiran",
+ "user-banned-reason": "Ovaj račun je blokiran (Razlog: %1)",
+ "user-banned-reason-until": "Ovaj račun je blokiran do %1 (Razlog: %2)",
+ "user-too-new": "Pričekajte %1 sekundi prije prve objave",
+ "blacklisted-ip": "Vaša IP adresa je blokirana. Ako mislite da je ovo greška, kontaktirajte administratora.",
+ "ban-expiry-missing": "Postavite datum isteka blokade",
+ "no-category": "Kategorija ne postoji",
+ "no-topic": "Tema ne postoji",
+ "no-post": "Objava ne postoji",
+ "no-group": "Grupa ne postoji",
+ "no-user": "Korisnik ne postoji",
+ "no-teaser": "Zadirkivač ne postoji",
+ "no-privileges": "Nemate privilegije za ovu radnju.",
+ "category-disabled": "Kategorija onemogućena",
+ "topic-locked": "Tema zaključana",
+ "post-edit-duration-expired": "Dozvoljeno vam je uređivanje %1 sekundi nakon objave",
+ "post-edit-duration-expired-minutes": "Dozvoljeno vam je uređivanje %1 minuta nakon objave",
+ "post-edit-duration-expired-minutes-seconds": "Dozvoljeno vam je uređivanje %1 minuta %2 sekunde nakon objave",
+ "post-edit-duration-expired-hours": "Dozvoljeno vam je uređivanje %1 sat nakon objave",
+ "post-edit-duration-expired-hours-minutes": "Dozvoljeno vam je uređivanje %1 sat %2 minute nakon objave",
+ "post-edit-duration-expired-days": "Dozvoljeno vam je uređivanje %1 dan nakon objave",
+ "post-edit-duration-expired-days-hours": "Dozvoljeno vam je uređivanje %1 dan %2 sata nakon objave",
+ "post-delete-duration-expired": "Dozvoljeno vam je brisanje %1 sekundi nakon objave",
+ "post-delete-duration-expired-minutes": "Dozvoljeno vam je brisanje %1 minute nakon objave",
+ "post-delete-duration-expired-minutes-seconds": "Dozvoljeno vam je brisanje %1 minute %2 sekunde nakon objave",
+ "post-delete-duration-expired-hours": "Dozvoljeno vam je brisanje %1 sat nakon objave",
+ "post-delete-duration-expired-hours-minutes": "Dozvoljeno vam je brisanje %1 sat i %2 minute nakon objave",
+ "post-delete-duration-expired-days": "Dozvoljeno vam je brisanje %1 dan nakon objave",
+ "post-delete-duration-expired-days-hours": "Dozvoljeno vam je brisanje %1 dan %2 sata nakon objave",
+ "cant-delete-topic-has-reply": "Nemožete obrisati temu nakon odgovora",
+ "cant-delete-topic-has-replies": "Nemožete obrisati temu nakon %1 odgovora",
+ "content-too-short": "Unesite dužu objavu. Objava mora sadržavati bar %1 znaka. ",
+ "content-too-long": "Unestie kraću objavu. Objave ne mogu biti duže od %1 znaka.",
+ "title-too-short": "Unesite duži naslov, minimalno %1 znakova.",
+ "title-too-long": "Unesite kraći naslov, maksimalno %1 znakova.",
+ "category-not-selected": "Kategorija nije odabrana.",
+ "too-many-posts": "Možete objavljivati svakih %1 skeundi, pričekajte prije ponovne objave",
+ "too-many-posts-newbie": "Kao novi korisnik možete objaviti svakih %1 sekundi dok ne steknete %2 reputaciju - pričekajte prije ponovne objave",
+ "tag-too-short": "Unesite dužu oznaku. Oznake moraju sadržavati minimalno %1 znakova",
+ "tag-too-long": "Unesite kraću oznaku. Oznake moraju sadržavati maksimalno %1 znakova",
+ "not-enough-tags": "Nema dovoljno oznaka. Teme moraju imate bar %1 oznaku",
+ "too-many-tags": "Previše oznaka. Teme ne mogu imati više od %1 oznaka",
+ "still-uploading": "Pričekajte da se prijenos završi.",
+ "file-too-big": "Maksimalna veličina datoteke je %1 kB - učitajte manju datoteku",
+ "guest-upload-disabled": "Učitavanje datoteka za goste je isključeno",
+ "already-bookmarked": "Već ste zabilježili ovu objavu",
+ "already-unbookmarked": "Već ste odbilježili ovu objavu",
+ "cant-ban-other-admins": "Nemožete blokirati ostale administratore!",
+ "cant-remove-last-admin": "Vi ste jedini administrator. Dodajte korisnika kao administratora prije nego sebe odjavite kao administratora.",
+ "cant-delete-admin": "Ukloni administratorske privilegije sa ovog računa prije brisanja.",
+ "invalid-image-type": "Pogrešan format slike. Dozvoljeni formati: %1",
+ "invalid-image-extension": "Kriva ekstezija slike",
+ "invalid-file-type": "Netočan tip datoteke. Dozvoljeni formati su: %1",
+ "group-name-too-short": "Prekratko ime grupe",
+ "group-name-too-long": "Predugo ime Grupe",
+ "group-already-exists": "Grupa postoji",
+ "group-name-change-not-allowed": "Promjena imena grupe nije dozvoljena",
+ "group-already-member": "Već ste član ove grupe",
+ "group-not-member": "Niste član ove grupe",
+ "group-needs-owner": "Ova grupa zahtjeva bar jednog vlasnika",
+ "group-already-invited": "Ovaj korisnik je već pozvan",
+ "group-already-requested": "Vaš zahtjev za članstvom je već podnesen",
+ "post-already-deleted": "Ova objava je već obrisana",
+ "post-already-restored": "Ova objava je povraćena",
+ "topic-already-deleted": "Ova tema je već obrisana",
+ "topic-already-restored": "Ova tema je povraćena",
+ "cant-purge-main-post": "Nemožete odbaciti glavnu objavu, obrišite temu za brisanje",
+ "topic-thumbnails-are-disabled": "Slike tema su onemogućene",
+ "invalid-file": "Pogrešna datoteka",
+ "uploads-are-disabled": "Pohrana je onemogućena",
+ "signature-too-long": "Vaš potpis neže biti duži od %1 znaka",
+ "about-me-too-long": "O vama nemože biti duže od %1 znaka",
+ "cant-chat-with-yourself": "Nemoguće je razgovarati sam sa sobom!",
+ "chat-restricted": "Korisnik je ograničio razgovore. Mora vas pratiti prije nego možete razgovarati",
+ "chat-disabled": "Razgovor onemogućen",
+ "too-many-messages": "Poslali ste previše poruka, pričekajte.",
+ "invalid-chat-message": "Netočna poruka.",
+ "chat-message-too-long": "Poruka je preduga.Mora imati manje od %1 znakova",
+ "cant-edit-chat-message": "Nemate dopuštenje uređivati ovu poruku",
+ "cant-remove-last-user": "Ne možete obrisati zadnjeg korisnika",
+ "cant-delete-chat-message": "Nije dozvoljeno brisanje ove poruke",
+ "already-voting-for-this-post": "Već ste glasali za ovu objavu",
+ "reputation-system-disabled": "Sistem reputacije onemogućen.",
+ "downvoting-disabled": "Oduzimanje glasova je onemogućeno",
+ "not-enough-reputation-to-downvote": "Nemate dovoljno reputacije da bi ste glasali",
+ "not-enough-reputation-to-flag": "Nemate dovoljno reputacije da bi stavili zastavicu na ovu objavu",
+ "already-flagged": "Već ste označili zastavicom ovu objavu",
+ "reload-failed": "Problem kod ponovnog podizanja: \"%1\" will continue to serve the existing client-side assets.",
+ "registration-error": "Greška prilikom registracije",
+ "parse-error": "Došlo je do pogreške u komunikaciji sa serverom",
+ "wrong-login-type-email": "Upišite Vaš email za prijavu",
+ "wrong-login-type-username": "Upišite Vaše korisničko ime za prijavu",
+ "invite-maximum-met": "Pozvali ste maksimalan broj ljudi (%1 od %2).",
+ "no-session-found": "Nije pronađena sesija prijave!",
+ "not-in-room": "Korisnik nije u sobi",
+ "no-users-in-room": "Nema korisnika u sobi",
+ "cant-kick-self": "Ne možete sebe izbaciti iz grupe",
+ "no-users-selected": "Korisnici nisu odabrani",
+ "invalid-home-page-route": "Netočna putanja naslovnice",
+ "invalid-session": "Pogreška sesije",
+ "invalid-session-text": "Vaša sesija nije više aktivna ili se više ne poklapa sa serverom. Molimo osvježite stranicu."
+}
\ No newline at end of file
diff --git a/public/language/hr/flags.json b/public/language/hr/flags.json
new file mode 100644
index 0000000000..f86d22916c
--- /dev/null
+++ b/public/language/hr/flags.json
@@ -0,0 +1,60 @@
+{
+ "state": "Stanje",
+ "reporter": "Reporter",
+ "reported-at": "Prijavljeno u",
+ "description": "Opis",
+ "no-flags": "Huura! Nema pronađenih zastavica.",
+ "assignee": "Dodijeljeni",
+ "update": "Nadogradnja",
+ "updated": "Nadograđeno",
+ "target-purged": "Sadržaj koji je označen zastavom je odbačen i više nije dostupan.",
+
+ "quick-filters": "Brzi filteri",
+ "filter-active": "Postoje jedan ili više filtera aktivnih u popisu zastava",
+ "filter-reset": "Ukloni filtere",
+ "filters": "Opcije filtera",
+ "filter-reporterId": "Reporter UID",
+ "filter-targetUid": "Flagged UID",
+ "filter-type": "Vrsta zastave",
+ "filter-type-all": "Sav sadržaj",
+ "filter-type-post": "Objave",
+ "filter-state": "Stanje",
+ "filter-assignee": "Asignee UID",
+ "filter-cid": "Kategorija",
+ "filter-quick-mine": "Dodijeljeno meni",
+ "filter-cid-all": "Sve kategorije",
+ "apply-filters": "Primjeni filtere",
+
+ "quick-links": "Brze poveznice",
+ "flagged-user": "Označeni korisnici",
+ "view-profile": "Pogledaj profil",
+ "start-new-chat": "Pokreni novi razgovor",
+ "go-to-target": "Pogledaj metu zastave",
+
+ "user-view": "Pogledaj profil",
+ "user-edit": "Uredi profil",
+
+ "notes": "Bilješke zastave",
+ "add-note": "Dodaj bilješku",
+ "no-notes": "Nema podijeljenih bilješki",
+
+ "history": "Povijest zastava",
+ "back": "Nazad na popis zastava",
+ "no-history": "Nema povijesti zastava.",
+
+ "state-all": "Sva stanja",
+ "state-open": "Novo/Otvori",
+ "state-wip": "Rad u tijeku",
+ "state-resolved": "Riješeno",
+ "state-rejected": "Odbijeno",
+ "no-assignee": "Nije dodijeljeno",
+ "note-added": "Bilješka dodana",
+
+ "modal-title": "Prijavi neprimjereni sadržaj",
+ "modal-body": "Navedite razlog označavanja zastavom %1 %2 .U suprotnom koristite jedan od dugmića za brzo prijavljivanje.",
+ "modal-reason-spam": "Spam",
+ "modal-reason-offensive": "Uvredljivo",
+ "modal-reason-custom": "Razlog prijavljivanja ovog sadržaja",
+ "modal-submit": "Podnesi izvještaj",
+ "modal-submit-success": "Ovaj sadržaj je označen zastavom u svrhu moderiranja,"
+}
\ No newline at end of file
diff --git a/public/language/hr/global.json b/public/language/hr/global.json
new file mode 100644
index 0000000000..8d02d5bc58
--- /dev/null
+++ b/public/language/hr/global.json
@@ -0,0 +1,107 @@
+{
+ "home": "Naslovna",
+ "search": "Pretraga",
+ "buttons.close": "Zatvori",
+ "403.title": "Pristup onemogućen",
+ "403.message": "Nemate pristup ovoj stranici .",
+ "403.login": "Pokušajte se prijaviti?",
+ "404.title": "Nije pronadjeno",
+ "404.message": "Ova stranica ne postoji. Vrati se na početnu.",
+ "500.title": "Interna greška.",
+ "500.message": "Ups! Čini se da nešto nije u redu.",
+ "400.title": "Krivi zahtjev.",
+ "400.message": "Izgleda da ovaj link nije ispravan, molimo provjerite i ponovo pokušajte. Ili se vratite na početnu stranicu.",
+ "register": "Registracija",
+ "login": "Prijava",
+ "please_log_in": "Molimo prijavite se.",
+ "logout": "Odjava",
+ "posting_restriction_info": "Objave su trenutačno omogućene samo registriranim korisnicima,kliknite ovdje za prijavu.",
+ "welcome_back": "Dobrodošli natrag",
+ "you_have_successfully_logged_in": "Uspješno ste se prijavili",
+ "save_changes": "Spremi promjene",
+ "save": "Spremi",
+ "close": "Zatvori",
+ "pagination": "Stranice",
+ "pagination.out_of": "%1 od %2",
+ "pagination.enter_index": "Unesi index",
+ "header.admin": "Admin",
+ "header.categories": "Kategorije",
+ "header.recent": "Posljednje",
+ "header.unread": "Nepročitano",
+ "header.tags": "Tagovi",
+ "header.popular": "Popularno",
+ "header.users": "Korisnici",
+ "header.groups": "Grupe",
+ "header.chats": "Razgovori",
+ "header.notifications": "Obavijesti",
+ "header.search": "Pretraga",
+ "header.profile": "Profil",
+ "header.navigation": "Navigacija",
+ "notifications.loading": "Učitavanje obavijesti",
+ "chats.loading": "Učitavam razgovore",
+ "motd.welcome": "Dobrodošli na Silicon Island Rijeka 2020 forum.",
+ "previouspage": "Prethodna stranica",
+ "nextpage": "Sljedeća stranica",
+ "alert.success": "Uspjeh!",
+ "alert.error": "Greška",
+ "alert.banned": "Blokiran",
+ "alert.banned.message": "Upravo ste banirani, sada ćete biti odjavljeni",
+ "alert.unfollow": "Više ne pratite %1",
+ "alert.follow": "Sada pratite %1",
+ "online": "Na mreži",
+ "users": "Korisnici",
+ "topics": "Teme",
+ "posts": "Objave",
+ "best": "Najbolje",
+ "upvoters": "Pozitivni glasači",
+ "upvoted": "Glasova za",
+ "downvoters": "Glasači protiv",
+ "downvoted": "Glasova protiv",
+ "views": "Pregleda",
+ "reputation": "Reputacija",
+ "read_more": "pročitaj više",
+ "more": "Više",
+ "posted_ago_by_guest": "postao gost prije %1",
+ "posted_ago_by": "postao %2 prije %1 ",
+ "posted_ago": "Objavljeno prije %1",
+ "posted_in": "Objavljeno u %1",
+ "posted_in_by": "Objavljeno u %1 od &2",
+ "posted_in_ago": "Objavljeno u %1 %2",
+ "posted_in_ago_by": "Objavljeno u %1 &2 od %3",
+ "user_posted_ago": "%1 je objavio %2",
+ "guest_posted_ago": "Gost je objavio %1",
+ "last_edited_by": "Zadnji put uređeno &1",
+ "norecentposts": "Nema nedavnih objava",
+ "norecenttopics": "Nema nedavnih tema",
+ "recentposts": "Posljednji postovi",
+ "recentips": "Posljednje prijavljeni IPovi",
+ "moderator_tools": "Moderatorski alati",
+ "away": "Odustan",
+ "dnd": "Ne smetaj",
+ "invisible": "Nevidljiv",
+ "offline": "Odjavljen",
+ "email": "Email",
+ "language": "Jezik",
+ "guest": "Gost",
+ "guests": "Gosti",
+ "updated.title": "Forum je nadograđen",
+ "updated.message": "Ovaj forum je upravo nadograđen na posljednju verziju. Klikni ovdje za ponovno učitavanje stranice.",
+ "privacy": "Privatnost",
+ "follow": "Prati",
+ "unfollow": "Prestani pratiti",
+ "delete_all": "Obriši sve",
+ "map": "Mapa",
+ "sessions": "Prijavljene sesije",
+ "ip_address": "IP adresa",
+ "enter_page_number": "Unesi broj stranice",
+ "upload_file": "Učitaj datoteku",
+ "upload": "Učitavanje",
+ "allowed-file-types": "Dozvoljeni tipovi datoteke su %1",
+ "unsaved-changes": "Imate nespremljenih promjena. Jeste li sigurni da želite napustiti stranicu?",
+ "reconnecting-message": "Izgleda da je veza na %1 prekinuta, molimo pričekajte dok se pokušamo ponovo spojiti.",
+ "play": "Pokreni",
+ "cookies.message": "Ova stranica koristi kolačiće kako bi osigurala najbolje korisničko iskustvo.",
+ "cookies.accept": "Shvaćam!",
+ "cookies.learn_more": "Saznaj više",
+ "edited": "Uređeno"
+}
\ No newline at end of file
diff --git a/public/language/hr/groups.json b/public/language/hr/groups.json
new file mode 100644
index 0000000000..a27c0cc6c9
--- /dev/null
+++ b/public/language/hr/groups.json
@@ -0,0 +1,58 @@
+{
+ "groups": "Grupe",
+ "view_group": "Pogledaj grupu",
+ "owner": "Vlasnik grupe",
+ "new_group": "Napravi novu grupu",
+ "no_groups_found": "Nema grupa za pregled",
+ "pending.accept": "Prihvaćam",
+ "pending.reject": "Odbij",
+ "pending.accept_all": "Prihvati sve",
+ "pending.reject_all": "Odbij sve",
+ "pending.none": "Trenutno nema korisnika na čekanju",
+ "invited.none": "Trenutno nema pozvanih članova",
+ "invited.uninvite": "Povuci pozivnicu",
+ "invited.search": "Pretraži korisnike za poziv u grupu",
+ "invited.notification_title": "Pozvani ste da se pridružite%1",
+ "request.notification_title": "Zahtjev za pristup grupi od %1",
+ "request.notification_text": "%1 je poslao zahtjev da postane član %2",
+ "cover-save": "Spremi",
+ "cover-saving": "Spremanje",
+ "details.title": "Detalji Grupe",
+ "details.members": "Popis članova",
+ "details.pending": "Korisnici na čekanju",
+ "details.invited": "Pozvani korisnici",
+ "details.has_no_posts": "Članovi ove grupe nisu objavljivali.",
+ "details.latest_posts": "Zadnje objave",
+ "details.private": "Privatno",
+ "details.disableJoinRequests": "Onemogući zahtjeve za pristup",
+ "details.grant": "Dozvoli/Ukini vlasništvo",
+ "details.kick": "Izbaci",
+ "details.kick_confirm": "Jeste li sigurni da želite izbaciti ovog člana iz grupe?",
+ "details.owner_options": "\"Administracija grupe",
+ "details.group_name": "Ime grupe",
+ "details.member_count": "Broj članova",
+ "details.creation_date": "Kreirano",
+ "details.description": "Opis",
+ "details.badge_preview": "Prikaz značke",
+ "details.change_icon": "Promjeni ikonu",
+ "details.change_colour": "Promjeni boju",
+ "details.badge_text": "Tekst značke",
+ "details.userTitleEnabled": "Pokaži značku",
+ "details.private_help": "Ako je uključeno, ulazak korisnika u grupu zahtjeva odobrenje vlasnika grupe",
+ "details.hidden": "Sakriveno",
+ "details.hidden_help": "Ako je uključeno, ova grupa neće biti na popisu grupa i korisnici će morati biti pozvani ručno",
+ "details.delete_group": "Obriši ovu grupu",
+ "details.private_system_help": "Privatne grupe su isključene na sistemskoj razini",
+ "event.updated": "Detalji grupe su promjenjeni",
+ "event.deleted": "Grupa \\\"%1\\\" je obrisana",
+ "membership.accept-invitation": "Prihvati pozivnicu",
+ "membership.invitation-pending": "Pozivnica na čekanju",
+ "membership.join-group": "Priključi se u grupu",
+ "membership.leave-group": "Izađi iz grupe",
+ "membership.reject": "Odbij",
+ "new-group.group_name": "Ime grupe:",
+ "upload-group-cover": "Promjeni naslovnicu grupe",
+ "bulk-invite-instructions": "Unesi popis korisnika sa zarezima između korisničkih imena za poziv u ovu grupu",
+ "bulk-invite": "Masovni poziv",
+ "remove_group_cover_confirm": "Jeste li sigurni da želite obrisati sliku naslovnice?"
+}
\ No newline at end of file
diff --git a/public/language/hr/language.json b/public/language/hr/language.json
new file mode 100644
index 0000000000..bdc95e799c
--- /dev/null
+++ b/public/language/hr/language.json
@@ -0,0 +1,5 @@
+{
+ "name": "Hrvatski",
+ "code": "hr",
+ "dir": "ltr"
+}
\ No newline at end of file
diff --git a/public/language/hr/login.json b/public/language/hr/login.json
new file mode 100644
index 0000000000..53c6fe313b
--- /dev/null
+++ b/public/language/hr/login.json
@@ -0,0 +1,12 @@
+{
+ "username-email": "Korisničko ime / Email",
+ "username": "Korisničko ime",
+ "email": "Email",
+ "remember_me": "Zapamti me?",
+ "forgot_password": "Zaboravljena lozinka?",
+ "alternative_logins": "Alternativne prijave",
+ "failed_login_attempt": "Neuspješna prijava",
+ "login_successful": "Uspješno ste prijavljeni!",
+ "dont_have_account": "Nemate korisnički račun?",
+ "logged-out-due-to-inactivity": "Odjavljeni ste iz administratorske kontrolne ploče zbog neaktivnosti."
+}
\ No newline at end of file
diff --git a/public/language/hr/modules.json b/public/language/hr/modules.json
new file mode 100644
index 0000000000..90a85d3450
--- /dev/null
+++ b/public/language/hr/modules.json
@@ -0,0 +1,49 @@
+{
+ "chat.chatting_with": "Razgovaraj sa ",
+ "chat.placeholder": "Upišite poruku ovdje, ENTER za slanje",
+ "chat.send": "Pošalji",
+ "chat.no_active": "Nemate aktivnih razgovora.",
+ "chat.user_typing": "%1 piše poruku ...",
+ "chat.user_has_messaged_you": "%1 vam je poslao poruku.",
+ "chat.see_all": "Pogledaj sve razgovore",
+ "chat.mark_all_read": "Označi sve razgovore kao pročitane",
+ "chat.no-messages": "Odaberite primatelja da vidite povijest razgovora",
+ "chat.no-users-in-room": "Nema korisnika u ovoj sobi",
+ "chat.recent-chats": "Nedavni razgovori",
+ "chat.contacts": "Kontakti",
+ "chat.message-history": "Povijest razgovora",
+ "chat.pop-out": "Pop out razgovor",
+ "chat.minimize": "Smanji",
+ "chat.maximize": "Povećaj",
+ "chat.seven_days": "7 Dana",
+ "chat.thirty_days": "30 Dana",
+ "chat.three_months": "3 Mjeseca",
+ "chat.delete_message_confirm": "Sigurni ste da želite izbrisati ovu poruku?",
+ "chat.add-users-to-room": "Dodaj korisnike u sobu",
+ "chat.confirm-chat-with-dnd-user": "Korisnik ne želi biti ometan. Jeste li sigurno da mu želite poslati poruku?",
+ "composer.compose": "Sastavi",
+ "composer.show_preview": "Prikaz",
+ "composer.hide_preview": "Sakrij prikaz",
+ "composer.user_said_in": "%1 je rekao u %2:",
+ "composer.user_said": "%1 je rekao:",
+ "composer.discard": "Sigurni ste da želite odbaciti ovu objavu?",
+ "composer.submit_and_lock": "Objavi i zaključaj",
+ "composer.toggle_dropdown": "Promjeni padajuće",
+ "composer.uploading": "Šaljem %1",
+ "composer.formatting.bold": "Bold",
+ "composer.formatting.italic": "Italic",
+ "composer.formatting.list": "Popis",
+ "composer.formatting.strikethrough": "Precrtano",
+ "composer.formatting.link": "Poveznica",
+ "composer.formatting.picture": "Slika",
+ "composer.upload-picture": "Učitaj sliku",
+ "composer.upload-file": "Učitaj datoteku",
+ "composer.zen_mode": "Zen",
+ "composer.select_category": "Odaberi kategoriju",
+ "bootbox.ok": "OK",
+ "bootbox.cancel": "Odbaci",
+ "bootbox.confirm": "Potvrdi",
+ "cover.dragging_title": "Pozicija naslovne slike",
+ "cover.dragging_message": "Povucite sliku na željenu poziciju i spremite \\\"Save\\\"",
+ "cover.saved": "Spremljeno"
+}
\ No newline at end of file
diff --git a/public/language/hr/notifications.json b/public/language/hr/notifications.json
new file mode 100644
index 0000000000..ba6c3cd24e
--- /dev/null
+++ b/public/language/hr/notifications.json
@@ -0,0 +1,48 @@
+{
+ "title": "Obavijesti",
+ "no_notifs": "Nema novih obavijesti",
+ "see_all": "Pogledaj sve obavijesti",
+ "mark_all_read": "Označi sve obavijesti kao pročitane",
+ "back_to_home": "Povratak na %1",
+ "outgoing_link": "Odlazna poveznica",
+ "outgoing_link_message": "Napuštate %1",
+ "continue_to": "Nastavite na %1",
+ "return_to": "Vratite se na %1",
+ "new_notification": "Nova obavijest",
+ "you_have_unread_notifications": "Nepročitane obavijesti.",
+ "all": "Sve",
+ "topics": "Teme",
+ "replies": "Odgovori",
+ "chat": "Razgovori",
+ "follows": "Pratitelji",
+ "upvote": "Glasači za",
+ "new-flags": "Nove zastave",
+ "my-flags": "Zastave označene na mene",
+ "bans": "Blokirani",
+ "new_message_from": "Poruka od %1",
+ "upvoted_your_post_in": "%1 je glasao za u %2.",
+ "upvoted_your_post_in_dual": "%1 i %2 Glasalo je za Vašu objavu in %3.",
+ "upvoted_your_post_in_multiple": "%1 i %2 ostalih glasalo je za Vašu objavu %3.",
+ "moved_your_post": "%1 je premjestio Vašu objavu u %2",
+ "moved_your_topic": "%1 je premjestio %2",
+ "user_flagged_post_in": "%1 je označio objavu u %2",
+ "user_flagged_post_in_dual": "%1 i %2 označio objavu u %3",
+ "user_flagged_post_in_multiple": "%1 i %2 ostalih označio objavu u %3",
+ "user_flagged_user": "%1 označio je profil (%2)",
+ "user_flagged_user_dual": "%1 i %2su označili profil (%3)",
+ "user_flagged_user_multiple": "%1 i %2 ostalih su označili korisnički profil (%3)",
+ "user_posted_to": "%1 i %2 su odgovorili na: %3",
+ "user_posted_to_dual": "%1 i %2 ostalih su odgovorili na objavu u: %3",
+ "user_posted_to_multiple": "%1 i %2 drugih su odgovorili na: %3",
+ "user_posted_topic": "%1 je otvorio novu temu: %2",
+ "user_started_following_you": "%1 Vas sada prati.",
+ "user_started_following_you_dual": "%1 i %2 vas sada prate.",
+ "user_started_following_you_multiple": "%1 i %2 ostalih vas sada prate.",
+ "new_register": "%1 je poslao zahtjev za registraciju.",
+ "new_register_multiple": "%1 registracija čeka odobrenje.",
+ "flag_assigned_to_you": "Zastava%1 je dodijeljena vama.",
+ "email-confirmed": "Email potvrđen",
+ "email-confirmed-message": "Hvala na potvrdi emaila. Vaš račun je sada aktivan.",
+ "email-confirm-error-message": "Nastao je problem pri potvrdi Vaše email adrese. Provjerite kod ili zatražite novi.",
+ "email-confirm-sent": "Provjera korisničkog emaila poslana."
+}
\ No newline at end of file
diff --git a/public/language/hr/pages.json b/public/language/hr/pages.json
new file mode 100644
index 0000000000..76cd7ae518
--- /dev/null
+++ b/public/language/hr/pages.json
@@ -0,0 +1,52 @@
+{
+ "home": "Naslovna",
+ "unread": "Nepročitane teme",
+ "popular-day": "Popularne teme danas",
+ "popular-week": "Popularne teme ovaj tjedan",
+ "popular-month": "Popularne teme ovaj mjesec",
+ "popular-alltime": "Najpopularnije teme ",
+ "recent": "Nedavne teme",
+ "flagged-content": "Označene objave",
+ "ip-blacklist": "IP crna lista",
+ "users/online": "Online korisnici",
+ "users/latest": "Posljednji korisnici",
+ "users/sort-posts": "Korisnici s najviše objava",
+ "users/sort-reputation": "Korisnici s najvećom reputacijom",
+ "users/banned": "Blokirani korisnici",
+ "users/most-flags": "Najviše označeni korisnici",
+ "users/search": "Pretraga korisnika",
+ "notifications": "Obavijesti",
+ "tags": "Oznake",
+ "tag": "Teme označene pod \\\"%1\\\"",
+ "register": "Registrirajte se",
+ "registration-complete": "Registracija uspješna",
+ "login": "Prijavite se na Vaš račun",
+ "reset": "Promijenite lozinku",
+ "categories": "Kategorije",
+ "groups": "Grupe",
+ "group": "%1 grupa",
+ "chats": "Razgovori",
+ "chat": "Razgovor s %1",
+ "flags": "Zastave",
+ "flag-details": "Detalji zastave %1",
+ "account/edit": "Uređivanje \\\"%1\\\"",
+ "account/edit/password": "Uređivanje lozinke \\\"%1\\",
+ "account/edit/username": "Uređivanje korisnika \\\"%1\\\"",
+ "account/edit/email": "Uređivanje email \\\"%1\\\"",
+ "account/info": "Informacija o računu",
+ "account/following": "Ljudi %1 prati",
+ "account/followers": "Ljudi koji prate %1",
+ "account/posts": "Objavio %1",
+ "account/topics": "Teme od %1",
+ "account/groups": "%1 grupe",
+ "account/bookmarks": "%1 zabilježene objave",
+ "account/settings": "Korisničke postavke",
+ "account/watched": "Teme prati %1",
+ "account/upvoted": "%1 glasao za",
+ "account/downvoted": "%1 glasao protiv",
+ "account/best": "Najbolje objave od %1",
+ "confirm": "Email potvrđen!",
+ "maintenance.text": "%1 Održavanje u toku. Posjetite nas uskoro.",
+ "maintenance.messageIntro": "Poruka administratora:",
+ "throttled.text": "%1: Preopterećenje sustava. Pričekajte nekoliko trenutaka."
+}
\ No newline at end of file
diff --git a/public/language/hr/recent.json b/public/language/hr/recent.json
new file mode 100644
index 0000000000..ac247883e2
--- /dev/null
+++ b/public/language/hr/recent.json
@@ -0,0 +1,19 @@
+{
+ "title": "Nedavno",
+ "day": "Dan",
+ "week": "Tjedan",
+ "month": "Mjesec",
+ "year": "Godina",
+ "alltime": "Sve vrijeme",
+ "no_recent_topics": "Nema nedavnih tema.",
+ "no_popular_topics": "Nema popularnih tema.",
+ "there-is-a-new-topic": "Nova tema.",
+ "there-is-a-new-topic-and-a-new-post": "Nova tema i nova objava.",
+ "there-is-a-new-topic-and-new-posts": "Nova tema i %1 nova objava",
+ "there-are-new-topics": "%1 nova tema",
+ "there-are-new-topics-and-a-new-post": "%1 nova tema i nova objava",
+ "there-are-new-topics-and-new-posts": "%1 nova tema i %2 nova objava",
+ "there-is-a-new-post": "Nova objava.",
+ "there-are-new-posts": "%1 nova objava.",
+ "click-here-to-reload": "Klikni ovdje za ponovno učitavanje."
+}
\ No newline at end of file
diff --git a/public/language/hr/register.json b/public/language/hr/register.json
new file mode 100644
index 0000000000..a518352cf3
--- /dev/null
+++ b/public/language/hr/register.json
@@ -0,0 +1,23 @@
+{
+ "register": "Registracija",
+ "cancel_registration": "Obustavi registraciju",
+ "help.email": "Vaš email će biti skriven od javnosti.",
+ "help.username_restrictions": "Unikatno korisničko ime između %1 i %2 znaka. Ostali Vas mogu spomenuti sa @username.",
+ "help.minimum_password_length": "Dužina lozinke mora biti %1 znakova.",
+ "email_address": "Email adresa",
+ "email_address_placeholder": "Unesite email adresu",
+ "username": "Korisničko ime",
+ "username_placeholder": "Unesite korisničko ime",
+ "password": "Lozinka",
+ "password_placeholder": "Unesite lozinku",
+ "confirm_password": "Potvrdite lozinku",
+ "confirm_password_placeholder": "Potvrdite lozinku",
+ "register_now_button": "Registrirajte se",
+ "alternative_registration": "Alternativna registracija:",
+ "terms_of_use": "Uvjeti korištenja",
+ "agree_to_terms_of_use": "Prihvaćam uvjete korištenja",
+ "terms_of_use_error": "Morate prihvatiti uvjete korištenja",
+ "registration-added-to-queue": "Vaša registracija je dodana u listu zahtjeva za registraciju. Biti ćete obaviješteni kad Vas administrator prihvati.",
+ "interstitial.intro": "Treba nam još par dodatnih informacija prije nego kreirate novi račun.",
+ "interstitial.errors-found": "Nismo uspijeli dovršiti registraciju:"
+}
\ No newline at end of file
diff --git a/public/language/hr/reset_password.json b/public/language/hr/reset_password.json
new file mode 100644
index 0000000000..a815beb932
--- /dev/null
+++ b/public/language/hr/reset_password.json
@@ -0,0 +1,17 @@
+{
+ "reset_password": "Resetiranje lozinke",
+ "update_password": "Promjeni lozinku",
+ "password_changed.title": "Lozinka promijenjena",
+ "password_changed.message": "
Lozink uspješno promijenjena, prijavite se ponovno!.",
+ "wrong_reset_code.title": "Netočan kod za resetiranje",
+ "wrong_reset_code.message": "Netočan kod za resetiranje. Probaj ponovno ili zatraži novi kod.",
+ "new_password": "Nova lozinka",
+ "repeat_password": "Potvrdi lozinku",
+ "enter_email": "Unesite Vašu email adresu i poslati ćemo Vam email sa uputstvima kako resetirati lozinku.",
+ "enter_email_address": "Unesite email adresu",
+ "password_reset_sent": "Poslan je zahtjev za resetiranje lozinke",
+ "invalid_email": "Netočan email / email ne postoji!",
+ "password_too_short": "Lozinka koju ste unijeli je prekratka, izaberite drugu lozinku.",
+ "passwords_do_not_match": "Lozinke se ne podudaraju!",
+ "password_expired": "Vaša lozinka je istekla, izaberite novu lozinku"
+}
\ No newline at end of file
diff --git a/public/language/hr/search.json b/public/language/hr/search.json
new file mode 100644
index 0000000000..a2e5fddedd
--- /dev/null
+++ b/public/language/hr/search.json
@@ -0,0 +1,42 @@
+{
+ "results_matching": "%1 rezultat odgovara \"%2\", (%3 sekunde)",
+ "no-matches": "Nema rezultata",
+ "advanced-search": "Napredna pretraga",
+ "in": "U",
+ "titles": "Naslovi",
+ "titles-posts": "Naslovi i objave",
+ "posted-by": "Objavio",
+ "in-categories": "U kategoriji",
+ "search-child-categories": "Pretraži podkategorije",
+ "has-tags": "Ima oznake",
+ "reply-count": "Broj odgovora",
+ "at-least": "Najmanje",
+ "at-most": "Najviše",
+ "relevance": "Relevantno",
+ "post-time": "Vrijeme objave",
+ "newer-than": "Novije od",
+ "older-than": "Starije od",
+ "any-date": "Bilo kada",
+ "yesterday": "Jučer",
+ "one-week": "Tjedan",
+ "two-weeks": "Dva tjedna",
+ "one-month": "Mjesec",
+ "three-months": "Tri mjeseca",
+ "six-months": "Šest mjeseci",
+ "one-year": "Godina",
+ "sort-by": "Sortiraj po",
+ "last-reply-time": "Vrijeme zadnje odgovora",
+ "topic-title": "Naslov teme",
+ "number-of-replies": "Broj odgovora",
+ "number-of-views": "Broj pogleda",
+ "topic-start-date": "Početak teme",
+ "username": "Korisničko ime",
+ "category": "Kategorija",
+ "descending": "U silaznom redu",
+ "ascending": "Po uzlaznom redu",
+ "save-preferences": "Spremi postavke",
+ "clear-preferences": "Očisti postavke",
+ "search-preferences-saved": "Postavke pretraživanja spremljene",
+ "search-preferences-cleared": "Postavke pretraživanja očišćene ",
+ "show-results-as": "Prikaži rezultate kao"
+}
\ No newline at end of file
diff --git a/public/language/hr/success.json b/public/language/hr/success.json
new file mode 100644
index 0000000000..55b303fba9
--- /dev/null
+++ b/public/language/hr/success.json
@@ -0,0 +1,6 @@
+{
+ "success": "Uspijeh",
+ "topic-post": "Uspješna objava",
+ "authentication-successful": "Autentifikacija uspješna",
+ "settings-saved": "Postavke spremljene!"
+}
\ No newline at end of file
diff --git a/public/language/hr/tags.json b/public/language/hr/tags.json
new file mode 100644
index 0000000000..ba0b9b5495
--- /dev/null
+++ b/public/language/hr/tags.json
@@ -0,0 +1,7 @@
+{
+ "no_tag_topics": "Nema tema sa ovom oznakom",
+ "tags": "Oznake",
+ "enter_tags_here": "Unesite oznake, između %1 i %2 znaka.",
+ "enter_tags_here_short": "Unestie oznake ...",
+ "no_tags": "Još nema oznaka."
+}
\ No newline at end of file
diff --git a/public/language/hr/topic.json b/public/language/hr/topic.json
new file mode 100644
index 0000000000..45b25f3e6c
--- /dev/null
+++ b/public/language/hr/topic.json
@@ -0,0 +1,119 @@
+{
+ "topic": "Tema",
+ "topic_id": "ID Teme",
+ "topic_id_placeholder": "Unesite ID teme",
+ "no_topics_found": "Tema nije pronađena!",
+ "no_posts_found": "Objave nisu pronađene!",
+ "post_is_deleted": "Ova objava je obrisana!",
+ "topic_is_deleted": "Ova tema je obrisana!",
+ "profile": "Profil",
+ "posted_by": "Objavio %1",
+ "posted_by_guest": "Objavio gost",
+ "chat": "Razgovor",
+ "notify_me": "Budi obavješten o novim odgovorima na ovu temu",
+ "quote": "Citat",
+ "reply": "Odgovor",
+ "replies_to_this_post": "%1 je odgovorio",
+ "last_reply_time": "Zadnji odgovor",
+ "reply-as-topic": "Odgovori kao temu",
+ "guest-login-reply": "Prijavi se za objavu",
+ "edit": "Uredi",
+ "delete": "Obriši",
+ "purge": "Očisti sve",
+ "restore": "Obnovi",
+ "move": "Premjesti",
+ "fork": "Dupliraj",
+ "link": "Poveznica",
+ "share": "Podijeli",
+ "tools": "Alati",
+ "locked": "Zaključano",
+ "pinned": "Zakačeno",
+ "moved": "Premješteno",
+ "bookmark_instructions": "Klikni ovdje za povratak na zadnji pročitani post.",
+ "flag_title": "Označi ovaj post za zastavom za moderaciju",
+ "deleted_message": "Ova tema je obrisana. Samo korisnici sa privilegijom upravljanja tema je mogu vidjeti.",
+ "following_topic.message": "Od sada ćete primati obavijesti kada netko objavi objavu u ovoj temi.",
+ "not_following_topic.message": "Od sada ćete vidjeti ovu temu u popisu nepročitanih tema,ali nećete dobivati obavijesti kada netko objavi objavu u temi.",
+ "ignoring_topic.message": "Od sada više nećete vidjeti ovu temu u popisu nepročitanih tema.Bit će te obaviješteni kada ste spomenuti ili je netko glasao za vašu objavu.",
+ "login_to_subscribe": "Registriraj se ili prijavi kako bi se mogao pretplatit na ovu temu.",
+ "markAsUnreadForAll.success": "Tema označena kao nepročitana za sve.",
+ "mark_unread": "Označi kao nepročitano",
+ "mark_unread.success": "Tema označena kao nepročitana",
+ "watch": "Prati",
+ "unwatch": "Prestani pratiti",
+ "watch.title": "Budi obaviješten o novim objavama u ovoj temi",
+ "unwatch.title": "Prestani pratiti ovu temu",
+ "share_this_post": "Podijeli ovu objavu",
+ "watching": "Prati",
+ "not-watching": "Ne pratiš",
+ "ignoring": "Ignoriraš",
+ "watching.description": "Obavijesti me o novim odgovorima . Prikaži temu u nepročitanim ako kategorija nije ignorirana.",
+ "ignoring.description": "Nemoj slati obavijesti o novim odgovorima. Ne prikazuj temu u nepročitanom.",
+ "thread_tools.title": "Alati teme",
+ "thread_tools.markAsUnreadForAll": "Označi kao nepročitano za sve",
+ "thread_tools.pin": "Zakači temu",
+ "thread_tools.unpin": "Otkači temu",
+ "thread_tools.lock": "Zaključaj temu",
+ "thread_tools.unlock": "Odključaj temu",
+ "thread_tools.move": "Premjesti temu",
+ "thread_tools.move_all": "Premjesti sve",
+ "thread_tools.fork": "Dupliraj temu",
+ "thread_tools.delete": "Obriši temu",
+ "thread_tools.delete-posts": "Obriši objavu",
+ "thread_tools.delete_confirm": "Sigurni ste da želite obrisati ovu temu?",
+ "thread_tools.restore": "Povrati temu",
+ "thread_tools.restore_confirm": "Sigurni ste da želite povratiti ovu temu?",
+ "thread_tools.purge": "Odbaci temu",
+ "thread_tools.purge_confirm": "Sigurni ste da želite odbaciti ovu temu?",
+ "topic_move_success": "Tema je uspješno pomaknuta u %1",
+ "post_delete_confirm": "Sigurni ste da želite obrisati ovu objavu?",
+ "post_restore_confirm": "Sigurni ste da želite povratiti ovu objavu?",
+ "post_purge_confirm": "Sigurni ste da želite odbaciti ovu objavu?",
+ "load_categories": "Učitavam kategorije",
+ "disabled_categories_note": "Onemogućene kategorije su izbljeđene",
+ "confirm_move": "Pomakni",
+ "confirm_fork": "Dupliraj",
+ "bookmark": "Zabilježi",
+ "bookmarks": "Zabilješke",
+ "bookmarks.has_no_bookmarks": "Nemate zabiježenih objava.",
+ "loading_more_posts": "Učitavam više objava",
+ "move_topic": "Pomakni temu",
+ "move_topics": "Pomakni teme",
+ "move_post": "Pomakni objavu",
+ "post_moved": "Objava pomaknuta!",
+ "fork_topic": "Dupliraj temu",
+ "topic_will_be_moved_to": "Ova tem će biti pomaknuta u kategoriju",
+ "fork_topic_instruction": "Označi objave koje želite duplirati",
+ "fork_no_pids": "Objave nisu odabrane!",
+ "fork_pid_count": "%1 objava odabrana",
+ "fork_success": "Uspješno duplirana tema. Kliknite ovdje za dupliranu temu.",
+ "delete_posts_instruction": "Označite objave koje želite obrisati/odbaciti",
+ "composer.title_placeholder": "Unesite naslov teme ovdje ...",
+ "composer.handle_placeholder": "Ime",
+ "composer.discard": "Odbaci",
+ "composer.submit": "Podnesi",
+ "composer.replying_to": "Odgovori na %1",
+ "composer.new_topic": "Nova tema",
+ "composer.uploading": "slanje...",
+ "composer.thumb_url_label": "Zaljepite URL slike za temu",
+ "composer.thumb_title": "Dodajte slike ovoj temi",
+ "composer.thumb_url_placeholder": "http://example.com/thumb.png",
+ "composer.thumb_file_label": "Ili učitajte datoteku",
+ "composer.thumb_remove": "Očisti polja",
+ "composer.drag_and_drop_images": "Dovuci i pusti sliku ovdje",
+ "more_users_and_guests": "%1 korisnik i %2 gosta",
+ "more_users": "%1 korisnik",
+ "more_guests": "%1 gost",
+ "users_and_others": "%1 i %2 druga",
+ "sort_by": "Sortitaj po",
+ "oldest_to_newest": "Starije prema Novom",
+ "newest_to_oldest": "Novije prema Starom",
+ "most_votes": "Najviše glasova",
+ "most_posts": "Najviše objava",
+ "stale.title": "Otvori novu temu?",
+ "stale.warning": "Tema na koju odgovarate je stara. Želite li otvoriti novu temu i postaviti referencu u vašem odgovoru?",
+ "stale.create": "Otvori novu temu",
+ "stale.reply_anyway": "Odgovori na ovu temu svejedno",
+ "link_back": "Re: [%1](%2)"
+}
\ No newline at end of file
diff --git a/public/language/hr/unread.json b/public/language/hr/unread.json
new file mode 100644
index 0000000000..2d8bd2128a
--- /dev/null
+++ b/public/language/hr/unread.json
@@ -0,0 +1,13 @@
+{
+ "title": "Nepročitano",
+ "no_unread_topics": "Sve teme su pročitane",
+ "load_more": "Učitaj više",
+ "mark_as_read": "Označi kao pročitano",
+ "selected": "Odabrano",
+ "all": "Sve",
+ "all_categories": "Sve kategorije",
+ "topics_marked_as_read.success": "Teme označene kao pročitane!",
+ "all-topics": "Sve teme",
+ "new-topics": "Nove teme",
+ "watched-topics": "Praćene teme"
+}
\ No newline at end of file
diff --git a/public/language/hr/uploads.json b/public/language/hr/uploads.json
new file mode 100644
index 0000000000..6a3655ad9b
--- /dev/null
+++ b/public/language/hr/uploads.json
@@ -0,0 +1,6 @@
+{
+ "uploading-file": "Učitavam datoteku ...",
+ "select-file-to-upload": "Izaberite datoteku!",
+ "upload-success": "Prijenos datoteka uspješan!",
+ "maximum-file-size": "Maksimum %1 kb"
+}
\ No newline at end of file
diff --git a/public/language/hr/user.json b/public/language/hr/user.json
new file mode 100644
index 0000000000..20ad62ec30
--- /dev/null
+++ b/public/language/hr/user.json
@@ -0,0 +1,136 @@
+{
+ "banned": "Blokiran",
+ "offline": "Nije na mreži",
+ "username": "Korisničko ime",
+ "joindate": "Datum prijave",
+ "postcount": "Broj objava",
+ "email": "Email",
+ "confirm_email": "Potvrdi email",
+ "account_info": "Informacije o računu",
+ "ban_account": "Blokiraj račun",
+ "ban_account_confirm": "Da li zaista želite blokirati ovog korisnika",
+ "unban_account": "Odblokiraj račun",
+ "delete_account": "Obriši račun",
+ "delete_account_confirm": "Jeste li sigurni da želite obrisati vaš račun? Ova radnja je nepovratna i nećete više moći pristupiti vašim podacima
Upišite svoje korisničko ime za potvrdu brisanja računa.",
+ "delete_this_account_confirm": "Jeste li sigurni da želite obrisati vaš račun? Ova radnja je nepovratna i nećete više moći pristupiti vašim podacima
",
+ "account-deleted": "Račun obrisan",
+ "fullname": "Puno ime",
+ "website": "Web stranica",
+ "location": "Lokacija",
+ "age": "Dob",
+ "joined": "Priključio",
+ "lastonline": "Viđen na mreži",
+ "profile": "Profil",
+ "profile_views": "Pregled profila",
+ "reputation": "Reputacija",
+ "bookmarks": "Zabilješke",
+ "watched": "Gledano",
+ "followers": "Pratitelji",
+ "following": "Prati",
+ "aboutme": "O meni",
+ "signature": "Potpis",
+ "birthday": "Rođendan",
+ "chat": "Razgovor",
+ "chat_with": "Nastavi razgovor sa %1!",
+ "new_chat_with": "Pokreni novi razgovor sa %1",
+ "flag-profile": "Označi profil",
+ "follow": "Prati",
+ "unfollow": "Prestani pratiti",
+ "more": "Više",
+ "profile_update_success": "Profil je uspješno promijenjen!",
+ "change_picture": "Promjeni sliku",
+ "change_username": "Promjeni korisničko ime",
+ "change_email": "Promjeni email",
+ "edit": "Uredi",
+ "edit-profile": "Uredi profil",
+ "default_picture": "Zadana ikona",
+ "uploaded_picture": "Učitaj sliku",
+ "upload_new_picture": "Učitaj novu sliku",
+ "upload_new_picture_from_url": "Učitaj sliku iz URL",
+ "current_password": "Sadašnja lozinka",
+ "change_password": "Promjeni lozinku",
+ "change_password_error": "Netočna lozinka!",
+ "change_password_error_wrong_current": "Vaša trenutačna lozinka nije točna!",
+ "change_password_error_length": "Lozinka prekratka!",
+ "change_password_error_match": "Lozinke se moraju podudarati!",
+ "change_password_error_privileges": "Nemate pravo mijenjati ovu lozinku.",
+ "change_password_success": "Vaša lozinka je promijenjena!",
+ "confirm_password": "Potvrdi lozinku",
+ "password": "Lozinka",
+ "username_taken_workaround": "Korisničko ime koje ste izabrali je već zauzeto. Zbog toga smo ga malo promjenili. Sada je vaše korisničko ime%1",
+ "password_same_as_username": "Vaša lozinka je ista kao i vaše korisničko ime, molimo upišite drugu lozinku.",
+ "password_same_as_email": "Vaša lozinka je ista kao vaš email, molimo upišite drugu lozinku.",
+ "weak_password": "Slaba lozinka",
+ "upload_picture": "Učitaj sliku",
+ "upload_a_picture": "Učitaj sliku",
+ "remove_uploaded_picture": "Ukloni učitanu sliku",
+ "upload_cover_picture": "Učitaj naslovnu sliku",
+ "remove_cover_picture_confirm": "Jeste li sigurno da želite ukloniti naslovnu sliku",
+ "crop_picture": "Skratite sliku",
+ "upload_cropped_picture": "Skrati i učitaj",
+ "settings": "Postavke",
+ "show_email": "Prikaži email",
+ "show_fullname": "Prikaži puno ime",
+ "restrict_chats": "Dopusti poruke o korisnika koje pratim",
+ "digest_label": "Pretplati se na izvještaje",
+ "digest_description": "Pretplati se na email izvještaje od ovog foruma (nove obavjesti i teme) prema zadanom rasporedu",
+ "digest_off": "Isključi",
+ "digest_daily": "Dnevno",
+ "digest_weekly": "Tjedno",
+ "digest_monthly": "Mjesečno",
+ "send_chat_notifications": "Pošalji email ako stigne nova poruka i nisam na mreži",
+ "send_post_notifications": "Pošalji email kada se objavi odgovor na teme koje sam pretplaćen",
+ "settings-require-reload": "Neke promjene zahtjevaju osvježenje. Kliknite ovdje za osvježavanje stranice.",
+ "has_no_follower": "Ovaj korisnik nema pratitelja :(.",
+ "follows_no_one": "Ovaj korisnik nikog ne prati :(",
+ "has_no_posts": "Ovaj korisnik nema objava.",
+ "has_no_topics": "Ovaj korisnik nema objavljenih tema.",
+ "has_no_watched_topics": "Ovaj korisnik ne prati teme.",
+ "has_no_upvoted_posts": "Ovaj korisnik nije glasao za na objavama.",
+ "has_no_downvoted_posts": "Ovaj korisnik nije glasao protiv na objavama.",
+ "has_no_voted_posts": "Ovaj korisnik nema glasanih objava",
+ "email_hidden": "Email sakriven",
+ "hidden": "Sakriven",
+ "paginate_description": "Numeriraj teme i objave umjesto scrollanja",
+ "topics_per_page": "Teme po stranici",
+ "posts_per_page": "Objave po stranici",
+ "notification_sounds": "Sviraj zvuk kada primim obavijest",
+ "notifications_and_sounds": "Obavijesti i zvukovi",
+ "incoming-message-sound": "Zvuk nadolazećih poruka",
+ "outgoing-message-sound": "Zvuk odlazećih poruka",
+ "notification-sound": "Zvuk obavijesti",
+ "no-sound": "Bez zvuka",
+ "browsing": "Postavke pretraživanja",
+ "open_links_in_new_tab": "Otvori odlazne poveznice u novom tabu",
+ "enable_topic_searching": "Omogući pretragu unutar tema",
+ "topic_search_help": "Ako uključeno,pretraga unutar tema će zamijeniti pretragu ključnih riječi vašeg pretraživača kojemu je omogućeno pretraživanje samo onoga što je na ekranu,za razliku od ove opcije koja omogućava pretragu na cijeloj temi",
+ "delay_image_loading": "Odgodi učitavanje slika.",
+ "image_load_delay_help": "Ako omogućeno,slike u ovoj temi se neće učitavati dok nisu u potpunosti unutar ruba ekrana.",
+ "scroll_to_my_post": "Nakon objavljivanja,prikaži objavu",
+ "follow_topics_you_reply_to": "Prati teme na koje objavljuješ",
+ "follow_topics_you_create": "Prati teme koje si napravio",
+ "grouptitle": "Ime Grupe",
+ "no-group-title": "Nema imena grupe",
+ "select-skin": "Izaberi izgled",
+ "select-homepage": "Izaberi naslovnu",
+ "homepage": "Naslovna",
+ "homepage_description": "Izaberi stranicu ",
+ "custom_route": "Uobičajena putanja naslovnice",
+ "custom_route_help": "Izaberi ime putanje ovdje",
+ "sso.title": "Jednokratne usluge prijave",
+ "sso.associated": "Povezano sa",
+ "sso.not-associated": "Klikni ovdje za povezivanje sa",
+ "info.latest-flags": "Zadnja zastava",
+ "info.no-flags": "Nema objava sa zastavama",
+ "info.ban-history": "Povijest nedavno blokiranih",
+ "info.no-ban-history": "Ovaj korisnik nikad nije bio blokiran",
+ "info.banned-until": "Blokiran do %1!",
+ "info.banned-permanently": "Trajno blokiran",
+ "info.banned-reason-label": "Razlog",
+ "info.banned-no-reason": "Razlog nije dan.",
+ "info.username-history": "Povijest korisničkog imena",
+ "info.email-history": "Povijest emaila",
+ "info.moderation-note": "Poruka moderiranja",
+ "info.moderation-note.success": "Poruka moderiranja spremljena",
+ "info.moderation-note.add": "Dodaj bilješku"
+}
\ No newline at end of file
diff --git a/public/language/hr/users.json b/public/language/hr/users.json
new file mode 100644
index 0000000000..cafe2c0412
--- /dev/null
+++ b/public/language/hr/users.json
@@ -0,0 +1,21 @@
+{
+ "latest_users": "Posljednji korisnici",
+ "top_posters": "Najviše objava",
+ "most_reputation": "Najveća reputacija",
+ "most_flags": "Najviše zastava",
+ "search": "Pretraga",
+ "enter_username": "Unesi korisničko ime za pretragu",
+ "load_more": "Učitaj više",
+ "users-found-search-took": "%1user(s) pronađeni! Pretraga je trajala %2 sekundi.",
+ "filter-by": "Filtriraj po",
+ "online-only": "Samo na mreži",
+ "invite": "Pozovi",
+ "invitation-email-sent": "Pozivnica poslana %1",
+ "user_list": "Popis korisnika",
+ "recent_topics": "Zadnje teme",
+ "popular_topics": "Popularne teme",
+ "unread_topics": "Nepročitane teme",
+ "categories": "Kategorije",
+ "tags": "Tagovi",
+ "no-users-found": "Korisnici nisu pronađeni!"
+}
\ No newline at end of file
diff --git a/public/language/hu/admin/general/dashboard.json b/public/language/hu/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/hu/admin/general/dashboard.json
+++ b/public/language/hu/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/id/admin/general/dashboard.json b/public/language/id/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/id/admin/general/dashboard.json
+++ b/public/language/id/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/it/admin/general/dashboard.json b/public/language/it/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/it/admin/general/dashboard.json
+++ b/public/language/it/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/ja/admin/general/dashboard.json b/public/language/ja/admin/general/dashboard.json
index 7dcb9e74ec..ed544afb51 100644
--- a/public/language/ja/admin/general/dashboard.json
+++ b/public/language/ja/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "ユーザー",
"posts": "投稿",
"topics": "スレッド",
- "page-views-last-month": "先月のページビュー数",
- "page-views-this-month": "今月のページビュー数",
- "page-views-last-day": "過去24時間のページビュー",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "日",
"stats.week": "週",
diff --git a/public/language/ja/flags.json b/public/language/ja/flags.json
index c4bfed6f23..90a2d96569 100644
--- a/public/language/ja/flags.json
+++ b/public/language/ja/flags.json
@@ -1,60 +1,60 @@
{
- "state": "State",
- "reporter": "Reporter",
- "reported-at": "Reported At",
- "description": "Description",
- "no-flags": "Hooray! No flags found.",
- "assignee": "Assignee",
- "update": "Update",
- "updated": "Updated",
- "target-purged": "The content this flag referred to has been purged and is no longer available.",
+ "state": "状態",
+ "reporter": "報告者",
+ "reported-at": "報告された",
+ "description": "説明",
+ "no-flags": "おめでとう!フラグは見つかりませんでした。",
+ "assignee": "譲受人",
+ "update": "更新",
+ "updated": "更新されました",
+ "target-purged": "このフラグが参照しているコンテンツは切り離されており、利用できません。",
- "quick-filters": "Quick Filters",
- "filter-active": "There are one or more filters active in this list of flags",
- "filter-reset": "Remove Filters",
- "filters": "Filter Options",
- "filter-reporterId": "Reporter UID",
- "filter-targetUid": "Flagged UID",
- "filter-type": "Flag Type",
- "filter-type-all": "All Content",
- "filter-type-post": "Post",
- "filter-state": "State",
- "filter-assignee": "Assignee UID",
- "filter-cid": "Category",
- "filter-quick-mine": "Assigned to me",
- "filter-cid-all": "All categories",
- "apply-filters": "Apply Filters",
+ "quick-filters": "クイックフィルター",
+ "filter-active": "このフラグのリストには1つまたは複数のフィルタが有効です。",
+ "filter-reset": "フィルターを削除",
+ "filters": "フィルターオプション",
+ "filter-reporterId": "報告者のユーザーID",
+ "filter-targetUid": "フラグを立てたユーザーID",
+ "filter-type": "フラグの種類",
+ "filter-type-all": "すべてのコンテンツ",
+ "filter-type-post": "投稿",
+ "filter-state": "状態",
+ "filter-assignee": "譲受人のユーザーID",
+ "filter-cid": "カテゴリ",
+ "filter-quick-mine": "私に割り当てられました",
+ "filter-cid-all": "全てのカテゴリ",
+ "apply-filters": "フィルターを追加",
- "quick-links": "Quick Links",
- "flagged-user": "Flagged User",
- "view-profile": "View Profile",
- "start-new-chat": "Start New Chat",
- "go-to-target": "View Flag Target",
+ "quick-links": "クイックリンク",
+ "flagged-user": "フラグを立てたユーザー",
+ "view-profile": "プロフィールを見る",
+ "start-new-chat": "新しいチャットを開始",
+ "go-to-target": "フラグのターゲットを表示",
- "user-view": "View Profile",
- "user-edit": "Edit Profile",
+ "user-view": "プロフィールを見る",
+ "user-edit": "プロフィールを編集",
- "notes": "Flag Notes",
- "add-note": "Add Note",
- "no-notes": "No shared notes.",
+ "notes": "ノートにフラグをつける",
+ "add-note": "ノートを追加",
+ "no-notes": "共有ノートはありません。",
- "history": "Flag History",
- "back": "Back to Flags List",
- "no-history": "No flag history.",
+ "history": "フラグ履歴",
+ "back": "フラグリストに戻る",
+ "no-history": "フラグ履歴がありません",
- "state-all": "All states",
- "state-open": "New/Open",
- "state-wip": "Work in Progress",
- "state-resolved": "Resolved",
- "state-rejected": "Rejected",
- "no-assignee": "Not Assigned",
- "note-added": "Note Added",
+ "state-all": "全ての状態",
+ "state-open": "新規/開く",
+ "state-wip": "進行中の作業",
+ "state-resolved": "解決済み",
+ "state-rejected": "拒否済",
+ "no-assignee": "割り当てられていない",
+ "note-added": "ノートが追加されました",
- "modal-title": "Report Inappropriate Content",
- "modal-body": "Please specify your reason for flagging %1 %2 for review. Alternatively, use one of the quick report buttons if applicable.",
- "modal-reason-spam": "Spam",
- "modal-reason-offensive": "Offensive",
- "modal-reason-custom": "Reason for reporting this content...",
- "modal-submit": "Submit Report",
- "modal-submit-success": "Content has been flagged for moderation."
+ "modal-title": "不適切なコンテンツを報告する",
+ "modal-body": "レビューのために%1 %2 にフラグを付ける理由を指定してください。または必要に応じてクイックレポートボタンの1つを使用します。",
+ "modal-reason-spam": "スパム",
+ "modal-reason-offensive": "攻撃",
+ "modal-reason-custom": "このコンテンツを報告する理由...",
+ "modal-submit": "レポートを提出",
+ "modal-submit-success": "コンテンツはモデレーションにフラグ付けされています。"
}
\ No newline at end of file
diff --git a/public/language/ko/admin/general/dashboard.json b/public/language/ko/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/ko/admin/general/dashboard.json
+++ b/public/language/ko/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/lt/admin/general/dashboard.json b/public/language/lt/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/lt/admin/general/dashboard.json
+++ b/public/language/lt/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/ms/admin/general/dashboard.json b/public/language/ms/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/ms/admin/general/dashboard.json
+++ b/public/language/ms/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/nb/admin/general/dashboard.json b/public/language/nb/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/nb/admin/general/dashboard.json
+++ b/public/language/nb/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/nl/admin/general/dashboard.json b/public/language/nl/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/nl/admin/general/dashboard.json
+++ b/public/language/nl/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/pl/admin/general/dashboard.json b/public/language/pl/admin/general/dashboard.json
index 1fc261cf9c..359d6eea49 100644
--- a/public/language/pl/admin/general/dashboard.json
+++ b/public/language/pl/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Wyświetlenia strony w ostatnim miesiącu",
- "page-views-this-month": "Wyświetlenia strony w tym miesiącu",
- "page-views-last-day": "Wyświetlenia strony z ostatnich 24 godzin",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Dzień",
"stats.week": "Tydzień",
diff --git a/public/language/pt-BR/admin/general/dashboard.json b/public/language/pt-BR/admin/general/dashboard.json
index 1722d960b0..c6621b2593 100644
--- a/public/language/pt-BR/admin/general/dashboard.json
+++ b/public/language/pt-BR/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Usuários",
"posts": "Posts",
"topics": "Tópicos",
- "page-views-last-month": "Visualizações de página no Último Mês",
- "page-views-this-month": "Visualizações de Página Este Mês",
- "page-views-last-day": "Visualizações de página nas últimas 24 horas",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Dia",
"stats.week": "Semana",
diff --git a/public/language/pt-BR/flags.json b/public/language/pt-BR/flags.json
index c4bfed6f23..802b042fa3 100644
--- a/public/language/pt-BR/flags.json
+++ b/public/language/pt-BR/flags.json
@@ -1,60 +1,60 @@
{
- "state": "State",
- "reporter": "Reporter",
- "reported-at": "Reported At",
- "description": "Description",
- "no-flags": "Hooray! No flags found.",
- "assignee": "Assignee",
- "update": "Update",
- "updated": "Updated",
- "target-purged": "The content this flag referred to has been purged and is no longer available.",
+ "state": "Estado",
+ "reporter": "Reportado por",
+ "reported-at": "Reportado Em",
+ "description": "Descrição",
+ "no-flags": "Ihuul! Nenhuma sinalização encontrada.",
+ "assignee": "Cessionário",
+ "update": "Atualizar",
+ "updated": "Atualizado",
+ "target-purged": "O conteúdo ao qual essa sinalização se referia foi removido e não está mais disponível.",
- "quick-filters": "Quick Filters",
- "filter-active": "There are one or more filters active in this list of flags",
- "filter-reset": "Remove Filters",
- "filters": "Filter Options",
- "filter-reporterId": "Reporter UID",
- "filter-targetUid": "Flagged UID",
- "filter-type": "Flag Type",
- "filter-type-all": "All Content",
+ "quick-filters": "Filtros Rápidos",
+ "filter-active": "Há um ou mais filtros ativos nesta lista de sinalizações",
+ "filter-reset": "Remover Filtros",
+ "filters": "Opções de Filtro",
+ "filter-reporterId": "UID do Reportador",
+ "filter-targetUid": "UID Sinalizado",
+ "filter-type": "Tipo de Sinalização",
+ "filter-type-all": "Todo o Conteúdo",
"filter-type-post": "Post",
- "filter-state": "State",
- "filter-assignee": "Assignee UID",
- "filter-cid": "Category",
- "filter-quick-mine": "Assigned to me",
- "filter-cid-all": "All categories",
- "apply-filters": "Apply Filters",
+ "filter-state": "Estado",
+ "filter-assignee": "UID do Cessionário",
+ "filter-cid": "Categoria",
+ "filter-quick-mine": "Procurado à mim",
+ "filter-cid-all": "Todas as categorias",
+ "apply-filters": "Aplicar Filtros",
- "quick-links": "Quick Links",
- "flagged-user": "Flagged User",
- "view-profile": "View Profile",
- "start-new-chat": "Start New Chat",
- "go-to-target": "View Flag Target",
+ "quick-links": "Links Rápidos",
+ "flagged-user": "Usuário Sinalizado",
+ "view-profile": "Ver Perfil",
+ "start-new-chat": "Iniciar Novo Chat",
+ "go-to-target": "Ver Sinalizado",
- "user-view": "View Profile",
- "user-edit": "Edit Profile",
+ "user-view": "Ver Perfil",
+ "user-edit": "Editar Perfil",
- "notes": "Flag Notes",
- "add-note": "Add Note",
- "no-notes": "No shared notes.",
+ "notes": "Notas da Sinalização",
+ "add-note": "Adicionar Nota",
+ "no-notes": "Nenhuma nota compartilhada.",
- "history": "Flag History",
- "back": "Back to Flags List",
- "no-history": "No flag history.",
+ "history": "Histórico de Sinalizações",
+ "back": "Voltar à Lista de Sinaliações",
+ "no-history": "Sem histórico de sinalizações.",
- "state-all": "All states",
- "state-open": "New/Open",
- "state-wip": "Work in Progress",
- "state-resolved": "Resolved",
- "state-rejected": "Rejected",
- "no-assignee": "Not Assigned",
- "note-added": "Note Added",
+ "state-all": "Todos os estados",
+ "state-open": "Novo/Aberto",
+ "state-wip": "Trabalho em Progresso",
+ "state-resolved": "Resolvido",
+ "state-rejected": "Rejeitado",
+ "no-assignee": "Não Procurado",
+ "note-added": "Nota Adicionada",
- "modal-title": "Report Inappropriate Content",
- "modal-body": "Please specify your reason for flagging %1 %2 for review. Alternatively, use one of the quick report buttons if applicable.",
+ "modal-title": "Reportar Conteúdo Inadequado",
+ "modal-body": "Por favor especifique sua razão para sinalizar %1 %2 para revisão. Alternativamente, use um dos botões de reporte rápido se for aplicável.",
"modal-reason-spam": "Spam",
- "modal-reason-offensive": "Offensive",
- "modal-reason-custom": "Reason for reporting this content...",
- "modal-submit": "Submit Report",
- "modal-submit-success": "Content has been flagged for moderation."
+ "modal-reason-offensive": "Ofensivo",
+ "modal-reason-custom": "Motivo para reportar este conteúdo...",
+ "modal-submit": "Enviar Reportagem",
+ "modal-submit-success": "O conteúdo foi sinalizado para moderação."
}
\ No newline at end of file
diff --git a/public/language/pt-PT/admin/general/dashboard.json b/public/language/pt-PT/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/pt-PT/admin/general/dashboard.json
+++ b/public/language/pt-PT/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/pt-PT/flags.json b/public/language/pt-PT/flags.json
index c4bfed6f23..8d1d58cbf4 100644
--- a/public/language/pt-PT/flags.json
+++ b/public/language/pt-PT/flags.json
@@ -2,59 +2,59 @@
"state": "State",
"reporter": "Reporter",
"reported-at": "Reported At",
- "description": "Description",
+ "description": "Descrição",
"no-flags": "Hooray! No flags found.",
"assignee": "Assignee",
- "update": "Update",
- "updated": "Updated",
+ "update": "Atualizar",
+ "updated": "Atualizado",
"target-purged": "The content this flag referred to has been purged and is no longer available.",
- "quick-filters": "Quick Filters",
+ "quick-filters": "Filtros Rápidos",
"filter-active": "There are one or more filters active in this list of flags",
- "filter-reset": "Remove Filters",
- "filters": "Filter Options",
+ "filter-reset": "Remover Filtros",
+ "filters": "Opções dos Filtros",
"filter-reporterId": "Reporter UID",
"filter-targetUid": "Flagged UID",
"filter-type": "Flag Type",
- "filter-type-all": "All Content",
- "filter-type-post": "Post",
+ "filter-type-all": "Todo o Conteúdo",
+ "filter-type-post": "Publicação",
"filter-state": "State",
"filter-assignee": "Assignee UID",
- "filter-cid": "Category",
- "filter-quick-mine": "Assigned to me",
- "filter-cid-all": "All categories",
- "apply-filters": "Apply Filters",
+ "filter-cid": "Categoria",
+ "filter-quick-mine": "Atribuído a mim",
+ "filter-cid-all": "Todas as categorias",
+ "apply-filters": "Aplicar Filtros",
- "quick-links": "Quick Links",
- "flagged-user": "Flagged User",
- "view-profile": "View Profile",
- "start-new-chat": "Start New Chat",
- "go-to-target": "View Flag Target",
+ "quick-links": "Links Rápidos",
+ "flagged-user": "Utilizador Sinalizado",
+ "view-profile": "Ver Perfil",
+ "start-new-chat": "Iniciar Nova Conversa",
+ "go-to-target": "Ver Alvo da Sinalização",
- "user-view": "View Profile",
- "user-edit": "Edit Profile",
+ "user-view": "Ver Perfil",
+ "user-edit": "Editar Perfil",
- "notes": "Flag Notes",
- "add-note": "Add Note",
- "no-notes": "No shared notes.",
+ "notes": "Sinalizar Notas",
+ "add-note": "Adicionar Nota",
+ "no-notes": "Não existem notas partilhadas.",
- "history": "Flag History",
- "back": "Back to Flags List",
- "no-history": "No flag history.",
+ "history": "Histórico de Sinalizações",
+ "back": "Voltar para a Lista de Sinalizações",
+ "no-history": "Não existe histórico de sinalizações.",
- "state-all": "All states",
- "state-open": "New/Open",
- "state-wip": "Work in Progress",
- "state-resolved": "Resolved",
- "state-rejected": "Rejected",
- "no-assignee": "Not Assigned",
- "note-added": "Note Added",
+ "state-all": "Todos os estados",
+ "state-open": "Novo/Abrir",
+ "state-wip": "Trabalho em Progresso",
+ "state-resolved": "Resolvido",
+ "state-rejected": "Rejeitado",
+ "no-assignee": "Não Atribuído",
+ "note-added": "Nota Adicionada.",
"modal-title": "Report Inappropriate Content",
"modal-body": "Please specify your reason for flagging %1 %2 for review. Alternatively, use one of the quick report buttons if applicable.",
"modal-reason-spam": "Spam",
- "modal-reason-offensive": "Offensive",
- "modal-reason-custom": "Reason for reporting this content...",
- "modal-submit": "Submit Report",
- "modal-submit-success": "Content has been flagged for moderation."
+ "modal-reason-offensive": "Ofensivo",
+ "modal-reason-custom": "Motivo para reportar este conteúdo...",
+ "modal-submit": "Submeter Relatório",
+ "modal-submit-success": "Conteúdo sinalizado para moderação."
}
\ No newline at end of file
diff --git a/public/language/ro/admin/general/dashboard.json b/public/language/ro/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/ro/admin/general/dashboard.json
+++ b/public/language/ro/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/ru/admin/general/dashboard.json b/public/language/ru/admin/general/dashboard.json
index 02e228ba2e..31eae5031a 100644
--- a/public/language/ru/admin/general/dashboard.json
+++ b/public/language/ru/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Просмотров за прошлый месяц",
- "page-views-this-month": "Просмотров за этот месяц",
- "page-views-last-day": "Просмотров за 24 часа",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "День",
"stats.week": "Неделя",
diff --git a/public/language/ru/flags.json b/public/language/ru/flags.json
index c4bfed6f23..6a5776a4f2 100644
--- a/public/language/ru/flags.json
+++ b/public/language/ru/flags.json
@@ -2,59 +2,59 @@
"state": "State",
"reporter": "Reporter",
"reported-at": "Reported At",
- "description": "Description",
+ "description": "Описание",
"no-flags": "Hooray! No flags found.",
"assignee": "Assignee",
- "update": "Update",
- "updated": "Updated",
+ "update": "Обновить",
+ "updated": "Обновлено",
"target-purged": "The content this flag referred to has been purged and is no longer available.",
"quick-filters": "Quick Filters",
"filter-active": "There are one or more filters active in this list of flags",
- "filter-reset": "Remove Filters",
+ "filter-reset": "Убрать фильтры",
"filters": "Filter Options",
"filter-reporterId": "Reporter UID",
"filter-targetUid": "Flagged UID",
"filter-type": "Flag Type",
- "filter-type-all": "All Content",
+ "filter-type-all": "Весь контент",
"filter-type-post": "Post",
"filter-state": "State",
"filter-assignee": "Assignee UID",
- "filter-cid": "Category",
+ "filter-cid": "Категория",
"filter-quick-mine": "Assigned to me",
- "filter-cid-all": "All categories",
+ "filter-cid-all": "Все категории",
"apply-filters": "Apply Filters",
"quick-links": "Quick Links",
"flagged-user": "Flagged User",
- "view-profile": "View Profile",
- "start-new-chat": "Start New Chat",
+ "view-profile": "Просмотреть профиль",
+ "start-new-chat": "Начать новый чат",
"go-to-target": "View Flag Target",
- "user-view": "View Profile",
- "user-edit": "Edit Profile",
+ "user-view": "Просмотреть профиль",
+ "user-edit": "Изменить Профиль",
"notes": "Flag Notes",
- "add-note": "Add Note",
+ "add-note": "Добавить примечание",
"no-notes": "No shared notes.",
"history": "Flag History",
"back": "Back to Flags List",
"no-history": "No flag history.",
- "state-all": "All states",
- "state-open": "New/Open",
+ "state-all": "Все государства",
+ "state-open": "Новый/Открыть",
"state-wip": "Work in Progress",
- "state-resolved": "Resolved",
- "state-rejected": "Rejected",
- "no-assignee": "Not Assigned",
+ "state-resolved": "Решен",
+ "state-rejected": "Отклонен",
+ "no-assignee": "Не назначенный ",
"note-added": "Note Added",
"modal-title": "Report Inappropriate Content",
"modal-body": "Please specify your reason for flagging %1 %2 for review. Alternatively, use one of the quick report buttons if applicable.",
- "modal-reason-spam": "Spam",
+ "modal-reason-spam": "Спам",
"modal-reason-offensive": "Offensive",
"modal-reason-custom": "Reason for reporting this content...",
- "modal-submit": "Submit Report",
+ "modal-submit": "Представить отчет",
"modal-submit-success": "Content has been flagged for moderation."
}
\ No newline at end of file
diff --git a/public/language/rw/admin/general/dashboard.json b/public/language/rw/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/rw/admin/general/dashboard.json
+++ b/public/language/rw/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/sc/admin/general/dashboard.json b/public/language/sc/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/sc/admin/general/dashboard.json
+++ b/public/language/sc/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/sk/admin/general/dashboard.json b/public/language/sk/admin/general/dashboard.json
index 1ffb1c8f76..6ef0ee9fc2 100644
--- a/public/language/sk/admin/general/dashboard.json
+++ b/public/language/sk/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Užívatelia",
"posts": "Príspevky",
"topics": "Témy",
- "page-views-last-month": "Zobrazenia stránok za posledný mesiac",
- "page-views-this-month": "Zobrazenia stránok za tento mesiac",
- "page-views-last-day": "Zobrazenia stránok za posledných 24 hodín",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Deň",
"stats.week": "Týždeň",
diff --git a/public/language/sk/admin/settings/post.json b/public/language/sk/admin/settings/post.json
index aca8b39d64..90c27cc606 100644
--- a/public/language/sk/admin/settings/post.json
+++ b/public/language/sk/admin/settings/post.json
@@ -3,7 +3,7 @@
"sorting.post-default": "Default Post Sorting",
"sorting.oldest-to-newest": "Oldest to Newest",
"sorting.newest-to-oldest": "Newest to Oldest",
- "sorting.most-votes": "Most Votes",
+ "sorting.most-votes": "Najviac hlasov",
"sorting.topic-default": "Default Topic Sorting",
"restrictions": "Posting Restrictions",
"restrictions.seconds-between": "Seconds between Posts",
diff --git a/public/language/sk/admin/settings/reputation.json b/public/language/sk/admin/settings/reputation.json
index f0e59e8db9..573d2609a1 100644
--- a/public/language/sk/admin/settings/reputation.json
+++ b/public/language/sk/admin/settings/reputation.json
@@ -2,7 +2,7 @@
"reputation": "Reputation Settings",
"disable": "Disable Reputation System",
"disable-down-voting": "Disable Down Voting",
- "votes-are-public": "All Votes Are Public",
+ "votes-are-public": "Všetky hlasy sú verejné",
"thresholds": "Activity Thresholds",
"min-rep-downvote": "Minimum reputation to downvote posts",
"min-rep-flag": "Minimum reputation to flag posts"
diff --git a/public/language/sk/admin/settings/uploads.json b/public/language/sk/admin/settings/uploads.json
index 35eaa5a58f..34848f06e5 100644
--- a/public/language/sk/admin/settings/uploads.json
+++ b/public/language/sk/admin/settings/uploads.json
@@ -1,5 +1,5 @@
{
- "posts": "Posts",
+ "posts": "Príspevky",
"allow-files": "Allow users to upload regular files",
"private": "Make uploaded files private",
"max-image-width": "Resize images down to specified width (in pixels)",
diff --git a/public/language/sk/flags.json b/public/language/sk/flags.json
index c4bfed6f23..21bdc1bf31 100644
--- a/public/language/sk/flags.json
+++ b/public/language/sk/flags.json
@@ -3,7 +3,7 @@
"reporter": "Reporter",
"reported-at": "Reported At",
"description": "Description",
- "no-flags": "Hooray! No flags found.",
+ "no-flags": "Hurá! Žiadne označenia neboli nájdené.",
"assignee": "Assignee",
"update": "Update",
"updated": "Updated",
@@ -26,7 +26,7 @@
"apply-filters": "Apply Filters",
"quick-links": "Quick Links",
- "flagged-user": "Flagged User",
+ "flagged-user": "Označený používateľ",
"view-profile": "View Profile",
"start-new-chat": "Start New Chat",
"go-to-target": "View Flag Target",
diff --git a/public/language/sl/admin/general/dashboard.json b/public/language/sl/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/sl/admin/general/dashboard.json
+++ b/public/language/sl/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/sr/admin/general/dashboard.json b/public/language/sr/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/sr/admin/general/dashboard.json
+++ b/public/language/sr/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/sr/flags.json b/public/language/sr/flags.json
index c4bfed6f23..e60225af70 100644
--- a/public/language/sr/flags.json
+++ b/public/language/sr/flags.json
@@ -1,60 +1,60 @@
{
- "state": "State",
- "reporter": "Reporter",
- "reported-at": "Reported At",
- "description": "Description",
- "no-flags": "Hooray! No flags found.",
- "assignee": "Assignee",
- "update": "Update",
- "updated": "Updated",
- "target-purged": "The content this flag referred to has been purged and is no longer available.",
+ "state": "Стање",
+ "reporter": "Извештач",
+ "reported-at": "Пријављено",
+ "description": "Опис",
+ "no-flags": "Ура! Нема заставица.",
+ "assignee": "Заступник",
+ "update": "Ажурирај",
+ "updated": "Ажурирано",
+ "target-purged": "Садржај на који се односи ова заставица је очишћен и није више доступан.",
- "quick-filters": "Quick Filters",
- "filter-active": "There are one or more filters active in this list of flags",
- "filter-reset": "Remove Filters",
- "filters": "Filter Options",
- "filter-reporterId": "Reporter UID",
- "filter-targetUid": "Flagged UID",
- "filter-type": "Flag Type",
- "filter-type-all": "All Content",
- "filter-type-post": "Post",
- "filter-state": "State",
- "filter-assignee": "Assignee UID",
- "filter-cid": "Category",
- "filter-quick-mine": "Assigned to me",
- "filter-cid-all": "All categories",
- "apply-filters": "Apply Filters",
+ "quick-filters": "Брзи филтери",
+ "filter-active": "Постоји један или више активних филтера на овом списку заставица",
+ "filter-reset": "Уклони заставице",
+ "filters": "Опције филтера",
+ "filter-reporterId": "UID извештача",
+ "filter-targetUid": "UID означеног",
+ "filter-type": "Тип заставице",
+ "filter-type-all": "Сав садржај",
+ "filter-type-post": "Порука",
+ "filter-state": "Стање",
+ "filter-assignee": "UID заступника",
+ "filter-cid": "Категорија",
+ "filter-quick-mine": "Додељено мени",
+ "filter-cid-all": "Све категорије",
+ "apply-filters": "Примени филтере",
- "quick-links": "Quick Links",
- "flagged-user": "Flagged User",
- "view-profile": "View Profile",
- "start-new-chat": "Start New Chat",
- "go-to-target": "View Flag Target",
+ "quick-links": "Брзе везе",
+ "flagged-user": "Означени корисник",
+ "view-profile": "Погледај профил",
+ "start-new-chat": "Започни ново ћаскање",
+ "go-to-target": "Погледај циљ означавања",
- "user-view": "View Profile",
- "user-edit": "Edit Profile",
+ "user-view": "Погледај профил",
+ "user-edit": "Уреди профил",
- "notes": "Flag Notes",
- "add-note": "Add Note",
- "no-notes": "No shared notes.",
+ "notes": "Белешке о заставицама",
+ "add-note": "Додај белешку",
+ "no-notes": "Нема дељених бележака.",
- "history": "Flag History",
- "back": "Back to Flags List",
- "no-history": "No flag history.",
+ "history": "Историја заставица",
+ "back": "Назад на списак заставица",
+ "no-history": "Нема историје заставица",
- "state-all": "All states",
- "state-open": "New/Open",
- "state-wip": "Work in Progress",
- "state-resolved": "Resolved",
- "state-rejected": "Rejected",
- "no-assignee": "Not Assigned",
- "note-added": "Note Added",
+ "state-all": "Сва стања",
+ "state-open": "Ново/Отвори",
+ "state-wip": "Рад у току",
+ "state-resolved": "Решено",
+ "state-rejected": "Одбијено",
+ "no-assignee": "Недодељено",
+ "note-added": "Белешка је додата",
- "modal-title": "Report Inappropriate Content",
- "modal-body": "Please specify your reason for flagging %1 %2 for review. Alternatively, use one of the quick report buttons if applicable.",
- "modal-reason-spam": "Spam",
- "modal-reason-offensive": "Offensive",
- "modal-reason-custom": "Reason for reporting this content...",
- "modal-submit": "Submit Report",
- "modal-submit-success": "Content has been flagged for moderation."
+ "modal-title": "Пријави неприкладан садржај",
+ "modal-body": "Наведите разлог за означавање %1 %2 за проверу. Алтернативно, користите један од тастера за брзу пријаву ко је применљиво.",
+ "modal-reason-spam": "Непожељно",
+ "modal-reason-offensive": "Увредљиво",
+ "modal-reason-custom": "Разлог за пријаву овог садржаја...",
+ "modal-submit": "Пошаљи извештај",
+ "modal-submit-success": "Садржај је означен за модерацију."
}
\ No newline at end of file
diff --git a/public/language/sv/admin/general/dashboard.json b/public/language/sv/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/sv/admin/general/dashboard.json
+++ b/public/language/sv/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/th/admin/general/dashboard.json b/public/language/th/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/th/admin/general/dashboard.json
+++ b/public/language/th/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/th/category.json b/public/language/th/category.json
index 1802bb7f1b..8daa641ba5 100644
--- a/public/language/th/category.json
+++ b/public/language/th/category.json
@@ -1,20 +1,20 @@
{
- "category": "Category",
- "subcategories": "Subcategories",
- "new_topic_button": "กระทู้",
- "guest-login-post": "เข้าสู่ระบบเพื่อโพส",
+ "category": "หมวดหมู่",
+ "subcategories": "หมวดหมู่ย่อย",
+ "new_topic_button": "ตั้งกระทู้",
+ "guest-login-post": "เข้าสู่ระบบเพื่อโพสต์",
"no_topics": "ยังไม่มีกระทู้ในหมวดนี้ โพสต์กระทู้แรก?",
"browsing": "เรียกดู",
"no_replies": "ยังไม่มีใครตอบ",
- "no_new_posts": "No new posts.",
- "share_this_category": "แชร์ Category นี้",
- "watch": "Watch",
+ "no_new_posts": "ไม่มีกระทู้ใหม่",
+ "share_this_category": "แชร์หมวดนี้",
+ "watch": "ตามดู",
"ignore": "ไม่ต้องสนใจอีก",
- "watching": "Watching",
- "ignoring": "Ignoring",
- "watching.description": "Show topics in unread",
- "ignoring.description": "Do not show topics in unread",
- "watch.message": "You are now watching updates from this category and all subcategories",
- "ignore.message": "You are now ignoring updates from this category and all subcategories",
- "watched-categories": "Watched categories"
+ "watching": "กำลังตามดู",
+ "ignoring": "เมินเฉย",
+ "watching.description": "แสดงกระทู้ที่ยังไม่ได้อ่าน",
+ "ignoring.description": "ไม่แสดงกระทู้ที่ยังไม่ได้อ่าน",
+ "watch.message": "ตอนนี้คุณกำลังตามดูอัพเดทจากกระทู้หมวดนี้และหมวดหมู่ย่อยทั้งหมดในนี้",
+ "ignore.message": "ตอนนี้คุณกำลังเมินเฉยต่ออัพเดทจากกระทู้หมวดนี้และหมวดหมู่ย่อยทั้งหมดในนี้",
+ "watched-categories": "หมวดหมู่ที่ดูแล้ว"
}
\ No newline at end of file
diff --git a/public/language/th/email.json b/public/language/th/email.json
index f6e3cd7e5b..16b41971a7 100644
--- a/public/language/th/email.json
+++ b/public/language/th/email.json
@@ -1,40 +1,40 @@
{
- "password-reset-requested": "Password Reset Requested - %1!",
+ "password-reset-requested": "ส่งคำขอตั้งค่ารหัสผ่านใหม่แล้ว - %1!",
"welcome-to": "ยินดีต้อนรับ %1",
- "invite": "Invitation from %1",
+ "invite": "คำเชิญจาก %1",
"greeting_no_name": "สวัสดี",
"greeting_with_name": "สวัสดี %1",
"welcome.text1": "ขอบคุณที่ลงทะเบียนกับ %1",
- "welcome.text2": "To fully activate your account, we need to verify that you own the email address you registered with.",
- "welcome.text3": "An administrator has accepted your registration application. You can login with your username/password now.",
+ "welcome.text2": "เพื่อให้การบัญชีของคุณใช้งานได้อย่างเสร็จสมบูรณ์ เราจำเป็นต้องยืนยันว่าคุณเป็นเจ้าของที่แท้จริงของอีเมล์ที่ใช้สมัครสมาชิก",
+ "welcome.text3": "ผู้ดูแลระบบได้ทำการยอมรับการสมัครสมาชิกของคุณแล้ว คุณสามารถเข้าสู่ระบบด้วย ชื่อผู้ใช้/รหัสผ่าน ได้แล้วตอนนี้",
"welcome.cta": "กดตรงนี้เพื่อยืนยันอีเมลของคุณ",
- "invitation.text1": "%1 has invited you to join %2",
- "invitation.ctr": "Click here to create your account.",
- "reset.text1": "We received a request to reset your password, possibly because you have forgotten it. If this is not the case, please ignore this email.",
+ "invitation.text1": "%1 ได้เชิญคุณให้เข้าร่วม %2",
+ "invitation.ctr": "คลิกที่นี่เพื่อสร้างบัญชีของคุณ",
+ "reset.text1": "เราได้รับคำร้องให้ตั้งค่ารหัสผ่านใหม่ของคุณ อาจจะเป็นเพราะว่าคุณลืมรหัสผ่านและได้ทำการส่งคำขอเข้ามา หากไม่ใช่ กรุณาเพิกเฉยต่ออีเมล์นี้และไม่ต้องดำเนินการใดๆทั้งสิ้น",
"reset.text2": "เพื่อดำเนินการตั้งรหัสผ่านใหม่ต่อไป, โปรดกดที่ลิ้งค์นี้:",
"reset.cta": "กดตรงนี้เพื่อตั้งรหัสผ่านใหม่",
- "reset.notify.subject": "Password successfully changed",
- "reset.notify.text1": "We are notifying you that on %1, your password was changed successfully.",
- "reset.notify.text2": "If you did not authorise this, please notify an administrator immediately.",
+ "reset.notify.subject": "ตั้งค่ารหัสผ่านใหม่เรียบร้อยแล้ว",
+ "reset.notify.text1": "เรากำลังแจ้งคุณว่าตอน %1 รหัสผ่านของคุณถูกเปลี่ยนเรียบร้อยแล้ว",
+ "reset.notify.text2": "หากคุณไม่ได้เป็นคนอนุญาตสิ่งนี้ กรุณาแจ้งไปยังผู้ดูแลระบบโดยทันที",
"digest.notifications": "คุณมีข้อความแจ้งเตือนที่ยังไม่ได้อ่านจาก %1:",
"digest.latest_topics": "หัวข้อสนทนาล่าสุดจาก %1",
"digest.cta": "กดตรงนี้เพื่อเข้าดู %1",
- "digest.unsub.info": "This digest was sent to you due to your subscription settings.",
- "digest.no_topics": "There have been no active topics in the past %1",
- "digest.day": "day",
- "digest.week": "week",
- "digest.month": "month",
- "digest.subject": "Digest for %1",
- "notif.chat.subject": "New chat message received from %1",
+ "digest.unsub.info": "คำชี้แจงถูกส่งไปให้คุณแล้ว เนื่องมาจากการตั้งค่าสมาชิกของคุณ",
+ "digest.no_topics": "ไม่มีกระทู้ใดๆเลยใน %1 ที่ผ่านมา",
+ "digest.day": "วัน",
+ "digest.week": "สัปดาห์",
+ "digest.month": "เดือน",
+ "digest.subject": "คำชี้แจงสำหรับ %1",
+ "notif.chat.subject": "ได้รับข้อความแชทใหม่จาก %1",
"notif.chat.cta": "กดตรงนี้เพื่อกลับไปยังบทสนทนา",
- "notif.chat.unsub.info": "This chat notification was sent to you due to your subscription settings.",
- "notif.post.cta": "Click here to read the full topic",
- "notif.post.unsub.info": "This post notification was sent to you due to your subscription settings.",
+ "notif.chat.unsub.info": "การแจ้งเตือนแชทนี้ถูกส่งไปหาคุณเนื่องจากการตั้งค่าสมาชิกของคุณ",
+ "notif.post.cta": "คลิกที่นี่เพื่ออ่านกระทู้ฉบับเต็ม",
+ "notif.post.unsub.info": "การแจ้งเตือนกระทู้นี้ถูกส่งไปยังคุณเนื่องการตั้งค่าสมาชิกของคุณ",
"test.text1": "นี่คืออีเมลทดสอบเพื่อยืนยันว่าระบบอีเมลมีการตั้งค่าที่ถูกต้องสำหรับ NodeBB ของคุณ",
"unsub.cta": "กดตรงนี้เพื่อเปลี่ยนแปลงการตั้งค่า",
- "banned.subject": "You have been banned from %1",
- "banned.text1": "The user %1 has been banned from %2.",
- "banned.text2": "This ban will last until %1.",
- "banned.text3": "This is the reason why you have been banned:",
+ "banned.subject": "คุณถูกแบนจาก %1 แล้ว",
+ "banned.text1": "ผู้ใช้ %1 ได้ถูกแบนจาก %2",
+ "banned.text2": "การแบนนี้จะใช้เวลาจนถึง %1",
+ "banned.text3": "นี่คือเหตุผลที่ทำไมคุณถึงถูกแบน",
"closing": "ขอบคุณ!"
}
\ No newline at end of file
diff --git a/public/language/th/error.json b/public/language/th/error.json
index 4d5cf25465..106c4ad90a 100644
--- a/public/language/th/error.json
+++ b/public/language/th/error.json
@@ -2,7 +2,7 @@
"invalid-data": "ข้อมูลไม่ถูกต้อง",
"not-logged-in": "คุณยังไม่ได้ลงชื่อเข้าระบบ",
"account-locked": "บัญชีของคุณถูกระงับการใช้งานชั่วคราว",
- "search-requires-login": "Searching requires an account - please login or register.",
+ "search-requires-login": "\"ฟังก์ชั่นการค้นหา\" ต้องการบัญชีผู้ใช้ กรุณาเข้าสู่ระบบหรือสมัครสมาชิก",
"invalid-cid": "Category ID ไม่ถูกต้อง",
"invalid-tid": "Topic ID ไม่ถูกต้อง",
"invalid-pid": "Post ID ไม่ถูกต้อง",
@@ -14,119 +14,119 @@
"invalid-password": "รหัสผ่านไม่ถูกต้อง",
"invalid-username-or-password": "กรุณาระบุชื่อผู้ใช้และรหัสผ่าน",
"invalid-search-term": "ข้อความค้นหาไม่ถูกต้อง",
- "csrf-invalid": "We were unable to log you in, likely due to an expired session. Please try again",
- "invalid-pagination-value": "Invalid pagination value, must be at least %1 and at most %2",
+ "csrf-invalid": "เราไม่สามารถนำท่านเข้าสู่ระบบได้ เหมือนกับว่าเซสชั่นหมดอายุแล้ว กรุณาลองใหม่อีกครั้ง",
+ "invalid-pagination-value": "หมายเลขหน้าไม่ถูกต้อง จำเป็นต้องเป็นตัวเลขอย่างน้อย %1 และอย่างมาก %2",
"username-taken": "ชื่อผู้ใช้นี้มีการใช้แล้ว",
"email-taken": "อีเมลนี้มีการใช้แล้ว",
"email-not-confirmed": "ยังไม่มีการยืนยันอีเมลของคุณ, โปรดกดยืนยันอีเมลของคุณตรงนี้",
- "email-not-confirmed-chat": "You are unable to chat until your email is confirmed, please click here to confirm your email.",
- "email-not-confirmed-email-sent": "Your email has not been confirmed yet, please check your inbox for the confirmation email.",
+ "email-not-confirmed-chat": "คุณไม่สามารถแชทได้จนกว่าอีเมล์ของคุณจะได้รับการยืนยัน กรุณาคลิกที่นี่เพื่อยืนยันอีกมเมล์ของคุณ",
+ "email-not-confirmed-email-sent": "อีเมล์ของคุณยังไม่ได้รับการยืนยัน กรุณาเช็คกล่องข้อความในอีเมล์เพื่อกดยืนยัน",
"no-email-to-confirm": "Forum นี้ต้องการการยืนยันอีเมล กรุณากดที่นี่เพื่อระบุอีเมล",
"email-confirm-failed": "เราไม่สามารถยืนยันอีเมลของคุณ ณ ขณะนี้ กรุณาลองใหม่อีกครั้งภายหลัง",
- "confirm-email-already-sent": "Confirmation email already sent, please wait %1 minute(s) to send another one.",
- "sendmail-not-found": "The sendmail executable could not be found, please ensure it is installed and executable by the user running NodeBB.",
+ "confirm-email-already-sent": "อีเมล์ยืนยันตัวตนถูกส่งไปยังคุณเรียบร้อยแล้ว กรุณารอ %1 นาที(s) ก่อนการตัดสินใจส่งอีกครั้ง",
+ "sendmail-not-found": "ไม่พบการประมวลผลสำหรับการส่งอีเมล์ กรุณาตรวจสอบให้แน่ใจว่าได้มีการติดตั้งโปรแกรมการประมวลผลแล้วโดยผู้ใช้ที่กำลังใช้ NodeBB",
"username-too-short": "ชื่อบัญชีผู้ใช้ สั้นเกินไป",
"username-too-long": "ชื่อบัญชีผู้ใช้ ยาวเกินไป",
- "password-too-long": "Password too long",
- "user-banned": "User banned",
- "user-banned-reason": "Sorry, this account has been banned (Reason: %1)",
- "user-banned-reason-until": "Sorry, this account has been banned until %1 (Reason: %2)",
- "user-too-new": "Sorry, you are required to wait %1 second(s) before making your first post",
- "blacklisted-ip": "Sorry, your IP address has been banned from this community. If you feel this is in error, please contact an administrator.",
- "ban-expiry-missing": "Please provide an end date for this ban",
+ "password-too-long": "รหัสผ่านยาวเกินไป",
+ "user-banned": "ผู้ใช้ได้รับการแบน",
+ "user-banned-reason": "ขออภัย บัญชีผู้ใช้นี้ได้รับการแบน (เหตุผล : %1)",
+ "user-banned-reason-until": "ขออภัย บัญชีผู้ใช้นี้ได้รับการแบนจนถึง %1 (เหตุผล : %2)",
+ "user-too-new": "ขออภัย คุณจำเป็นต้องรอ %1 วินาที(s) ก่อนการสร้างกระทู้แรกของคุณ",
+ "blacklisted-ip": "ขออภัย IP Address ของคุณถูกแบนจากชุมชนนี้ หากคุณคิดว่านี่เป็นเออเร่อของระบบ กรุณาติดต่อผู้ดูแลระบบ",
+ "ban-expiry-missing": "กรุณาระบุวันสิ้นสุดสำหรับการแบนในครั้งนี้",
"no-category": "ยังไม่มี Category นี้",
"no-topic": "ยังไม่มี Topic นี้",
"no-post": "ยังไม่มี Post นี้",
"no-group": "ยังไม่มี Group นี้",
"no-user": "ยังไม่มีผู้ใช้งานนี้",
- "no-teaser": "Teaser does not exist",
+ "no-teaser": "ยังไม่มีทีเซอร์นี้",
"no-privileges": "คุณมีสิทธิ์ไม่เพียงพอที่จะทำรายการนี้",
"category-disabled": "Category นี้ถูกปิดการใช้งานแล้ว",
- "topic-locked": "Topic Locked",
- "post-edit-duration-expired": "You are only allowed to edit posts for %1 second(s) after posting",
- "post-edit-duration-expired-minutes": "You are only allowed to edit posts for %1 minute(s) after posting",
- "post-edit-duration-expired-minutes-seconds": "You are only allowed to edit posts for %1 minute(s) %2 second(s) after posting",
- "post-edit-duration-expired-hours": "You are only allowed to edit posts for %1 hour(s) after posting",
- "post-edit-duration-expired-hours-minutes": "You are only allowed to edit posts for %1 hour(s) %2 minute(s) after posting",
- "post-edit-duration-expired-days": "You are only allowed to edit posts for %1 day(s) after posting",
- "post-edit-duration-expired-days-hours": "You are only allowed to edit posts for %1 day(s) %2 hour(s) after posting",
- "post-delete-duration-expired": "You are only allowed to delete posts for %1 second(s) after posting",
- "post-delete-duration-expired-minutes": "You are only allowed to delete posts for %1 minute(s) after posting",
- "post-delete-duration-expired-minutes-seconds": "You are only allowed to delete posts for %1 minute(s) %2 second(s) after posting",
- "post-delete-duration-expired-hours": "You are only allowed to delete posts for %1 hour(s) after posting",
- "post-delete-duration-expired-hours-minutes": "You are only allowed to delete posts for %1 hour(s) %2 minute(s) after posting",
- "post-delete-duration-expired-days": "You are only allowed to delete posts for %1 day(s) after posting",
- "post-delete-duration-expired-days-hours": "You are only allowed to delete posts for %1 day(s) %2 hour(s) after posting",
- "cant-delete-topic-has-reply": "You can't delete your topic after it has a reply",
- "cant-delete-topic-has-replies": "You can't delete your topic after it has %1 replies",
- "content-too-short": "Please enter a longer post. Posts should contain at least %1 character(s).",
- "content-too-long": "Please enter a shorter post. Posts can't be longer than %1 character(s).",
- "title-too-short": "Please enter a longer title. Titles should contain at least %1 character(s).",
- "title-too-long": "Please enter a shorter title. Titles can't be longer than %1 character(s).",
- "category-not-selected": "Category not selected.",
- "too-many-posts": "You can only post once every %1 second(s) - please wait before posting again",
- "too-many-posts-newbie": "As a new user, you can only post once every %1 second(s) until you have earned %2 reputation - please wait before posting again",
- "tag-too-short": "Please enter a longer tag. Tags should contain at least %1 character(s)",
- "tag-too-long": "Please enter a shorter tag. Tags can't be longer than %1 character(s)",
- "not-enough-tags": "Not enough tags. Topics must have at least %1 tag(s)",
- "too-many-tags": "Too many tags. Topics can't have more than %1 tag(s)",
- "still-uploading": "Please wait for uploads to complete.",
- "file-too-big": "Maximum allowed file size is %1 kB - please upload a smaller file",
- "guest-upload-disabled": "Guest uploading has been disabled",
- "already-bookmarked": "You have already bookmarked this post",
- "already-unbookmarked": "You have already unbookmarked this post",
- "cant-ban-other-admins": "You can't ban other admins!",
- "cant-remove-last-admin": "You are the only administrator. Add another user as an administrator before removing yourself as admin",
- "cant-delete-admin": "Remove administrator privileges from this account before attempting to delete it.",
- "invalid-image-type": "Invalid image type. Allowed types are: %1",
- "invalid-image-extension": "Invalid image extension",
- "invalid-file-type": "Invalid file type. Allowed types are: %1",
- "group-name-too-short": "Group name too short",
- "group-name-too-long": "Group name too long",
- "group-already-exists": "Group already exists",
- "group-name-change-not-allowed": "Group name change not allowed",
- "group-already-member": "Already part of this group",
- "group-not-member": "Not a member of this group",
- "group-needs-owner": "This group requires at least one owner",
- "group-already-invited": "This user has already been invited",
- "group-already-requested": "Your membership request has already been submitted",
- "post-already-deleted": "This post has already been deleted",
- "post-already-restored": "This post has already been restored",
- "topic-already-deleted": "This topic has already been deleted",
- "topic-already-restored": "This topic has already been restored",
- "cant-purge-main-post": "You can't purge the main post, please delete the topic instead",
- "topic-thumbnails-are-disabled": "Topic thumbnails are disabled.",
- "invalid-file": "Invalid File",
- "uploads-are-disabled": "Uploads are disabled",
- "signature-too-long": "Sorry, your signature cannot be longer than %1 character(s).",
- "about-me-too-long": "Sorry, your about me cannot be longer than %1 character(s).",
- "cant-chat-with-yourself": "You can't chat with yourself!",
- "chat-restricted": "This user has restricted their chat messages. They must follow you before you can chat with them",
- "chat-disabled": "Chat system disabled",
- "too-many-messages": "You have sent too many messages, please wait awhile.",
- "invalid-chat-message": "Invalid chat message",
- "chat-message-too-long": "Chat messages can not be longer than %1 characters.",
- "cant-edit-chat-message": "You are not allowed to edit this message",
- "cant-remove-last-user": "You can't remove the last user",
- "cant-delete-chat-message": "You are not allowed to delete this message",
- "already-voting-for-this-post": "You have already voted for this post.",
- "reputation-system-disabled": "Reputation system is disabled.",
- "downvoting-disabled": "Downvoting is disabled",
- "not-enough-reputation-to-downvote": "You do not have enough reputation to downvote this post",
- "not-enough-reputation-to-flag": "You do not have enough reputation to flag this post",
- "already-flagged": "You have already flagged this post",
+ "topic-locked": "กระทู้ถูกล็อก",
+ "post-edit-duration-expired": "คุณได้รับอนุญาตให้แก้ไขโพสต์ได้หลังจากโพสต์ไปแล้ว %1 วินาที (s)",
+ "post-edit-duration-expired-minutes": "คุณได้รับการอนุญาตให้แก้ไขโพสต์ได้หลังจากโพสต์ไปแล้ว %1 นาที (s)",
+ "post-edit-duration-expired-minutes-seconds": "คุณได้รับการอนุญาตให้แก้ไขโพสต์ได้หลังจากโพสต์ไปแล้ว %1 นาที(s) %2 วินาที(s) ",
+ "post-edit-duration-expired-hours": "คุณได้รับการอนุญาตให้แก้ไขโพสต์ได้หลังจากโพสต์ไปแล้ว %1 ชั่วโมง(s) ",
+ "post-edit-duration-expired-hours-minutes": "คุณได้รับการอนุญาตให้แก้ไขโพสต์ได้หลังจากโพสต์ไปแล้ว %1 ชั่วโมง(s) %2 นาที(s)",
+ "post-edit-duration-expired-days": "คุณได้รับการอนุญาตให้แก้ไขโพสต์ได้หลังจากโพสต์ไปแล้ว %1 วัน(s)",
+ "post-edit-duration-expired-days-hours": "คุณได้รับการอนุญาตให้แก้ไขโพสต์ได้หลังจากโพสต์ไปแล้ว %1 วัน(s) %2 ชั่วโมง(s) ",
+ "post-delete-duration-expired": "คุณได้รับการอนุญาตให้ลบโพสต์ได้หลังจากโพสต์ไปแล้ว %1 วินาที(s)",
+ "post-delete-duration-expired-minutes": "คุณได้รับการอนุญาตให้ลบโพสต์ได้หลังจากโพสต์ไปแล้ว %1 นาที(s)",
+ "post-delete-duration-expired-minutes-seconds": "คุณได้รับการอนุญาตให้ลบโพสต์ได้หลังจากโพสต์ไปแล้ว %1 นาที(s) %2 วินาที(s)",
+ "post-delete-duration-expired-hours": "คุณได้รับการอนุญาตให้ลบโพสต์ได้หลังจากโพสต์ไปแล้ว %1 ชั่วโมง(s)",
+ "post-delete-duration-expired-hours-minutes": "คุณได้รับการอนุญาตให้ลบโพสต์ได้หลังจากโพสต์ไปแล้ว %1 ชั่วโมง(s) %2 นาที(s)",
+ "post-delete-duration-expired-days": "คุณได้รับการอนุญาตให้ลบโพสต์ได้หลังจากโพสต์ไปแล้ว %1 วัน(s) ",
+ "post-delete-duration-expired-days-hours": "คุณได้รับการอนุญาตให้ลบโพสต์ได้หลังจากโพสต์ไปแล้ว %1 วัน(s) %2 ชั่วโมง(s) ",
+ "cant-delete-topic-has-reply": "คุณไม่สามารถลบกระทู้ได้หลังจากกระทู้ของคุณถูกตอบกลับ",
+ "cant-delete-topic-has-replies": "คุณไม่สามารถลบกระทู้ได้หลังจากกระทู้มีจำนวนตอบกลับ %1 ",
+ "content-too-short": "กรุณาโพสต์ข้อความให้ยาวขึ้น โพสต์ควรมีข้อความอย่างน้อย %1 ตัวอักษร(s)",
+ "content-too-long": "กรุณาโพสต์ข้อความให้สั้นลง โพสต์ไม่สามารถยาวกว่า %1 ตัวอักษร(s)",
+ "title-too-short": "กรุณากรอกชื่อให้ยาวขึ้น ชื่อควรมีข้อความอย่างน้อย %1 ตัวอักษร(s)",
+ "title-too-long": "กรุณากรอกชื่อให้สั้นลง ชื่อไม่สามารถยาวกว่า %1 ตัวอักษร(s)",
+ "category-not-selected": "ไม่มีการเลือกหมวดหมู่",
+ "too-many-posts": "คุณสามารถโพสต์ได้เพียงครั้งเดียวเท่านั้นในทุกๆ %1 วินาที(s) - โปรดรอสักครู่ก่อนการโพสต์อีกครั้ง",
+ "too-many-posts-newbie": "เนื่องด้วยการเป็นผู้ใช้งานใหม่ คุณสามารถโพสต์ได้เพียงครั้งเดียวเท่านั้นในทุกๆ %1 วินาที(s) จนกว่าคุณจะได้รับ %2 ชื่อเสียง - โปรดรอสักครู่ก่อนการโพสต์อีกครั้ง",
+ "tag-too-short": "กรุณากรอกแท็กให้ยาวขึ้น แท็กควรมีข้อความอย่างน้อย %1 ตัวอักษร(s)",
+ "tag-too-long": "กรุณากรอกแท็กให้สั้นลง แท็กไม่สามารถยาวกว่า %1 ตัวอักษร(s)",
+ "not-enough-tags": "จำนวนแท็กไม่พอ กระทู้ต้องมีอย่างน้อย %1 แท็ก(s)",
+ "too-many-tags": "แท็กเยอะเกินไป กระทู้ไม่สามารถมีแท็กมากกว่า %1 แท็ก(s)",
+ "still-uploading": "กรุณารอการอัพโหลดเพื่อเสร็จสิ้น",
+ "file-too-big": "ขนาดไฟล์ที่ใหญ่ที่สุดที่ได้รับการอนุญาตคือ %1 kB - กรุณาอัพโหลดไฟล์ที่เล็กลง",
+ "guest-upload-disabled": "การอัพโหลดของ Guest ถูกปิด",
+ "already-bookmarked": "คุณได้ติดบุ๊กมาร์คของโพสต์นี้แล้ว",
+ "already-unbookmarked": "คุณได้ลบบุ๊กมาร์คของโพสต์นี้แล้ว",
+ "cant-ban-other-admins": "คุณแบนแอดมินไม่ได้!!!",
+ "cant-remove-last-admin": "คุณเป็นแอดมินเพียงคนเดียว กรุณาเพิ่มผู้ใช้คนอื่นเป็นแอดมิน ก่อนการลบตัวเองออกจากแอดมิน",
+ "cant-delete-admin": "ลบสิทธิพิเศษของแอดมินจากบัญชีผู้ใช้นี้ ก่อนทำการลบ",
+ "invalid-image-type": "ประเภทรูปภาพไม่ถูกต้อง ประเภทที่ได้รับการอนุญาติคือ : %1",
+ "invalid-image-extension": "นามสกุลรูปภาพไม่ถูกต้อง",
+ "invalid-file-type": "ประเภทไฟล์ไม่ถูกต้อง ประเภทที่ได้รับการอนุญาติคือ : %1",
+ "group-name-too-short": "ชื่อกลุ่มสั้นเกินไป",
+ "group-name-too-long": "ชื่อกลุ่มยาวเกินไป",
+ "group-already-exists": "มีกลุ่มนี้อยู่แล้ว",
+ "group-name-change-not-allowed": "ชื่อกลุ่มที่เปลี่ยน ไม่ได้รับการอนุญาติ",
+ "group-already-member": "เป็นส่วนหนึ่งของกลุ่มนี้แล้ว",
+ "group-not-member": "ไม่ได้เป็นสมาชิกในกลุ่มนี้",
+ "group-needs-owner": "กลุ่มนี้ต้องการเจ้าของอย่างน้อย 1 คน",
+ "group-already-invited": "ผู้ใช้นี้ถูกเชิญแล้ว",
+ "group-already-requested": "คำร้องขอเป็นสมาชิกถูกส่งแล้ว",
+ "post-already-deleted": "โพสต์นี้ได้ถูกลบไปแล้ว",
+ "post-already-restored": "โพสต์นี้ถูกกู้คืนเรียบร้อยแล้ว",
+ "topic-already-deleted": "กระทู้นี้ถูกลบไปแล้ว",
+ "topic-already-restored": "กระทู้นี้ถูกกู้คืนเรียบร้อยแล้ว",
+ "cant-purge-main-post": "คุณไม่สามารถลบล้างโพสต์หลักได้ กรุณาลบกระทู้แทน ",
+ "topic-thumbnails-are-disabled": "ภาพตัวอย่างของกระทู้ถูกปิดใช้งาน",
+ "invalid-file": "ไฟล์ไม่ถูกต้อง",
+ "uploads-are-disabled": "การอัพโหลดถูกปิดใช้งาน",
+ "signature-too-long": "ขออภัย ลายเซ็นต์ของคุณไม่สามารถยาวเกิน %1 ตัวอักษร(s)ได้.",
+ "about-me-too-long": "ขออภัย \"เกี่ยวกับฉัน\" ของคุณไม่สามารถยาวเกิน %1 ตัวอักษร(s) ได้",
+ "cant-chat-with-yourself": "คุณไม่สามารถแชทกับตัวเองได้นะ!!!",
+ "chat-restricted": "ผู้ใช้นี้ถูกจำกัดข้อความแชท เขาต้องติดตามคุณก่อน คุณจึงจะสามารถแชทกับเขาได้",
+ "chat-disabled": "ระบบแชทถูกปิดใช้งาน",
+ "too-many-messages": "คุณได้ส่งข้อความมากเกินไป กรุณารอสักครู่",
+ "invalid-chat-message": "ข้อความแชทไม่ถูกต้อง",
+ "chat-message-too-long": "ข้อความแชทไม่สามารถยาวเกิน %1 ตัวอักษรได้",
+ "cant-edit-chat-message": "คุณไม่ได้รับอนุญาติให้แก้ไขข้อความ",
+ "cant-remove-last-user": "คุณไม่สามารถลบผู้ใช้งานล่าสุดได้",
+ "cant-delete-chat-message": "คุณไม่ได้รับอนุญาตให้ลบข้อความ",
+ "already-voting-for-this-post": "คุณได้โหวตโพสต์นี้แล้ว",
+ "reputation-system-disabled": "ระบบชื่อเสียงถูกปิดใช้งาน",
+ "downvoting-disabled": "\"การโหวตลง\" ถูกปิดใช้งาน",
+ "not-enough-reputation-to-downvote": "คุณไม่มีชื่อเสียงพอที่จะโหวตโพสต์นี้ลง",
+ "not-enough-reputation-to-flag": "คุณไม่มีชื่อเสียงพอที่จะปักธงให้โพสต์นี้",
+ "already-flagged": "คุณได้ปักธงให้โพสต์นี้แล้ว",
"reload-failed": "NodeBB encountered a problem while reloading: \"%1\". NodeBB will continue to serve the existing client-side assets, although you should undo what you did just prior to reloading.",
- "registration-error": "Registration Error",
- "parse-error": "Something went wrong while parsing server response",
- "wrong-login-type-email": "Please use your email to login",
- "wrong-login-type-username": "Please use your username to login",
- "invite-maximum-met": "You have invited the maximum amount of people (%1 out of %2).",
- "no-session-found": "No login session found!",
- "not-in-room": "User not in room",
- "no-users-in-room": "No users in this room",
- "cant-kick-self": "You can't kick yourself from the group",
- "no-users-selected": "No user(s) selected",
- "invalid-home-page-route": "Invalid home page route",
- "invalid-session": "Session Mismatch",
- "invalid-session-text": "It looks like your login session is no longer active, or no longer matches with the server. Please refresh this page."
+ "registration-error": "การสมัครสมาชิกผิดพลาด",
+ "parse-error": "มีบางอย่างผิดพลาดขณะรอการตอบกลับจากเซิร์ฟเวอร์",
+ "wrong-login-type-email": "กรุณาใช้อีเมล์ของคุณในการเข้าสู่ระบบ",
+ "wrong-login-type-username": "กรุณาใช้ชื่อผู้ใช้ของคุณในการเข้าสู่ระบบ",
+ "invite-maximum-met": "คุณได้ทำการเชิญผู้คนจำนวนมากที่สุด (%1 out of %2).",
+ "no-session-found": "ไม่พบการเข้าสู่ระบบ",
+ "not-in-room": "ผู้ใช้ไม่อยู่ในห้อง",
+ "no-users-in-room": "ผู้ใช้ไม่อยู่ในห้องนี้",
+ "cant-kick-self": "คุณไม่สามารถเตะตัวเองออกจากกลุ่มได้",
+ "no-users-selected": "ไม่มีผู้ใช้ที่เลือก",
+ "invalid-home-page-route": "เส้นทางไปหน้าแรกผิดพลาด",
+ "invalid-session": "เซสชั่นไม่ถูกต้อง",
+ "invalid-session-text": "เหมือนกับว่าการเข้าสู่ระบบของคุณไม่ได้มีอยู่ในระบบ หรือไม่ก็ไม่ได้รับการตอบกลับจากเซิร์ฟเวอร์ กรุณารีเฟรชหน้าเว็บนี้"
}
\ No newline at end of file
diff --git a/public/language/th/flags.json b/public/language/th/flags.json
index c4bfed6f23..7d33e77739 100644
--- a/public/language/th/flags.json
+++ b/public/language/th/flags.json
@@ -1,60 +1,60 @@
{
- "state": "State",
- "reporter": "Reporter",
- "reported-at": "Reported At",
- "description": "Description",
- "no-flags": "Hooray! No flags found.",
- "assignee": "Assignee",
- "update": "Update",
- "updated": "Updated",
- "target-purged": "The content this flag referred to has been purged and is no longer available.",
+ "state": "สถานะ",
+ "reporter": "ผู้รายงาน",
+ "reported-at": "ถูกรายงานที่",
+ "description": "คำอธิบาย",
+ "no-flags": "ไชโย ไม่เจอธงใดๆเลย",
+ "assignee": "ผู้ได้รับมอบหมาย",
+ "update": "อัพเดท",
+ "updated": "ได้รับการอัพเดท",
+ "target-purged": "เนื้อหาที่ธงนี้อ้างถึงถูกลบออกและไม่มีอยู่ในระบบอีกต่อไป",
- "quick-filters": "Quick Filters",
- "filter-active": "There are one or more filters active in this list of flags",
- "filter-reset": "Remove Filters",
- "filters": "Filter Options",
- "filter-reporterId": "Reporter UID",
- "filter-targetUid": "Flagged UID",
- "filter-type": "Flag Type",
- "filter-type-all": "All Content",
- "filter-type-post": "Post",
- "filter-state": "State",
- "filter-assignee": "Assignee UID",
- "filter-cid": "Category",
- "filter-quick-mine": "Assigned to me",
- "filter-cid-all": "All categories",
- "apply-filters": "Apply Filters",
+ "quick-filters": "ฟิลเตอร์แบบด่วน",
+ "filter-active": "ไม่มีฟิลเตอร์ใดๆในรายการปักธง",
+ "filter-reset": "ลบฟิลเตอร์ออก",
+ "filters": "ตัวเลือกฟิลเตอร์",
+ "filter-reporterId": "ไอดีผู้รายงาน",
+ "filter-targetUid": "ไอดีผู้ที่ถูกปักธง",
+ "filter-type": "ประเภทการปักธง",
+ "filter-type-all": "เนื้อหาทั้งหมด",
+ "filter-type-post": "โพสต์",
+ "filter-state": "สถานะ",
+ "filter-assignee": "ผู้ได้รับมอบหมาย",
+ "filter-cid": "หมวดหมู่",
+ "filter-quick-mine": "ถูกมอบหมายให้ฉัน",
+ "filter-cid-all": "ทุกหมวดหมู่",
+ "apply-filters": "ใช้งานฟิลเตอร์",
- "quick-links": "Quick Links",
- "flagged-user": "Flagged User",
- "view-profile": "View Profile",
- "start-new-chat": "Start New Chat",
- "go-to-target": "View Flag Target",
+ "quick-links": "ลิ้งค์ด่วน",
+ "flagged-user": "ผู้ใช้ที่ถูกปักธง",
+ "view-profile": "ดูโปรไฟล์",
+ "start-new-chat": "เริ่มแชทใหม่",
+ "go-to-target": "ดูเป้าหมายการปักธง",
- "user-view": "View Profile",
- "user-edit": "Edit Profile",
+ "user-view": "ดูโปรไฟล์",
+ "user-edit": "แก้ไขโปรไฟล์",
- "notes": "Flag Notes",
- "add-note": "Add Note",
- "no-notes": "No shared notes.",
+ "notes": "โน๊ตปักธง",
+ "add-note": "เพิ่มโน้ต",
+ "no-notes": "ไม่มีโน้ตที่แชร์",
- "history": "Flag History",
- "back": "Back to Flags List",
- "no-history": "No flag history.",
+ "history": "ประวัติการปักธง",
+ "back": "กลับไปยังรายการปักธง",
+ "no-history": "ไม่มีประวัติปักธง",
- "state-all": "All states",
- "state-open": "New/Open",
- "state-wip": "Work in Progress",
- "state-resolved": "Resolved",
- "state-rejected": "Rejected",
- "no-assignee": "Not Assigned",
- "note-added": "Note Added",
+ "state-all": "สถานะทั้งหมด",
+ "state-open": "เพิ่มใหม่/เปิด",
+ "state-wip": "อยู่ระหว่างการทำงาน",
+ "state-resolved": "แก้แล้ว",
+ "state-rejected": "ถูกปฏิเสธ",
+ "no-assignee": "ไม่ได้รับการมอบหมาย",
+ "note-added": "โน้ตถูกเพิ่มแล้ว",
- "modal-title": "Report Inappropriate Content",
- "modal-body": "Please specify your reason for flagging %1 %2 for review. Alternatively, use one of the quick report buttons if applicable.",
- "modal-reason-spam": "Spam",
- "modal-reason-offensive": "Offensive",
- "modal-reason-custom": "Reason for reporting this content...",
- "modal-submit": "Submit Report",
- "modal-submit-success": "Content has been flagged for moderation."
+ "modal-title": "รายงานเนื้อหาไม่เหมาะสม",
+ "modal-body": "กรุณาระเหตุผลสำหรับการปักธง %1 %2 สำหรับการรีวิว หรือไม่ก็ใช้หนึ่งในปุ่มกดรายงานด่วนถ้าเป็นไปได้",
+ "modal-reason-spam": "สแปม",
+ "modal-reason-offensive": "น่ารังเกียจ",
+ "modal-reason-custom": "เหตุผลว่าทำไมถึงรายงานเนื้อหานี้...",
+ "modal-submit": "ส่งรายงาน",
+ "modal-submit-success": "เนื้อหาถูกรายงานตามความเหมาะสมแล้ว"
}
\ No newline at end of file
diff --git a/public/language/th/global.json b/public/language/th/global.json
index 21e831157b..17b15b538c 100644
--- a/public/language/th/global.json
+++ b/public/language/th/global.json
@@ -3,40 +3,40 @@
"search": "ค้นหา",
"buttons.close": "ปิด",
"403.title": "คุณถูกปฏิเสธการเข้าใช้",
- "403.message": "You seem to have stumbled upon a page that you do not have access to.",
- "403.login": "Perhaps you should try logging in?",
+ "403.message": "ดูเหมือนว่าคุณจะได้รับการสกัดกั้นในหน้าเว็บที่คุณไม่สามารถเข้าถึงได้",
+ "403.login": "บางทีคุณควรจะ พยายามเข้าสู่ระบบภายใน ดูไหม ?",
"404.title": "ไม่พบ",
- "404.message": "You seem to have stumbled upon a page that does not exist. Return to the home page.",
- "500.title": "Internal Error.",
+ "404.message": "ดูเหมือนว่าคุณจะได้รับการสกัดกั้นในหน้าเว็บที่ไม่มีอยู่ กลับไปยัง หน้าแรก ",
+ "500.title": "ระบบภายในเกิดข้อผิดพลาด",
"500.message": "อุ่ย! มีสิ่งที่ไม่ถูกต้องเกิดขึ้น!",
- "400.title": "Bad Request.",
- "400.message": "It looks like this link is malformed, please double-check and try again. Otherwise, return to the home page.",
+ "400.title": "คำร้องขอที่เลวร้าย",
+ "400.message": "มันเหมือนว่าลิ้งค์นี้ไม่สมประกอบ กรุณาตรวจสอบอีกครั้งและลองอีกครั้ง หรือไม่ก็กลับไปยัง หน้าแรก ",
"register": "ลงทะเบียน",
"login": "เข้าสู่ระบบ",
"please_log_in": "กรุณาเข้าสู่ระบบ",
"logout": "ออกจากระบบ",
- "posting_restriction_info": "คุณต้องต้องเป็นสมาชิกเพื่อทำการโพสต์ คลิกที่นี่เพื่อเข้าสู่ระบบ",
+ "posting_restriction_info": "คุณต้องเป็นสมาชิกเพื่อทำการโพสต์ คลิกที่นี่เพื่อเข้าสู่ระบบ",
"welcome_back": "ยินดีต้อนรับ",
"you_have_successfully_logged_in": "คุณได้เข้าสู่ระบบแล้ว",
"save_changes": "บันทึกการเปลี่ยนแปลง",
- "save": "Save",
+ "save": "บันทึก",
"close": "ปิด",
- "pagination": "ให้เลขหน้า",
+ "pagination": "การแบ่งหน้า",
"pagination.out_of": "%1 จาก %2",
- "pagination.enter_index": "Enter index",
+ "pagination.enter_index": "กรอกหมายเลข",
"header.admin": "ผู้ดูแลระบบ",
- "header.categories": "Categories",
+ "header.categories": "หมวดหมู่",
"header.recent": "ล่าสุด",
"header.unread": "ไม่ได้อ่าน",
- "header.tags": "Tag",
+ "header.tags": "แท็ก",
"header.popular": "ฮิต",
"header.users": "ผู้ใช้",
- "header.groups": "Group",
+ "header.groups": "กลุ่ม",
"header.chats": "สนทนา",
"header.notifications": "แจ้งเตือน",
"header.search": "ค้นหา",
"header.profile": "รายละเอียด",
- "header.navigation": "Navigation",
+ "header.navigation": "เมนูนำทาง",
"notifications.loading": "กำลังโหลดข้อแจ้งเตือน",
"chats.loading": "กำลังโหลดหัวข้อสนทนา",
"motd.welcome": "ยินดีต้อนรับสู่ NodeBB แพลตฟอร์มการสนทนาแห่งอนาคต",
@@ -45,63 +45,63 @@
"alert.success": "สำเร็จ",
"alert.error": "ผิดพลาด",
"alert.banned": "เเบน",
- "alert.banned.message": "You have just been banned, you will now be logged out.",
+ "alert.banned.message": "คุณเพิ่งจะได้รับการแบน คุณจะถูกตัดออกจากระบบเลยตอนนี้",
"alert.unfollow": "คุณได้ยกเลิกติดตาม %1 !\n",
"alert.follow": "คุณกำลังติดตาม %1 !",
"online": "ออนไลน์",
- "users": "Users",
- "topics": "Topics",
+ "users": "ผู้ใช้",
+ "topics": "กระทู้",
"posts": "กระทู้",
- "best": "Best",
- "upvoters": "Upvoters",
- "upvoted": "Upvoted",
- "downvoters": "Downvoters",
- "downvoted": "Downvoted",
+ "best": "ดีที่สุด",
+ "upvoters": "ผู้ที่โหวดขึ้น",
+ "upvoted": "โหวตแล้ว",
+ "downvoters": "ผู้ที่โหวตลง",
+ "downvoted": "โหวตลง",
"views": "ดู",
- "reputation": "Reputation",
- "read_more": "read more",
- "more": "More",
- "posted_ago_by_guest": "posted %1 by Guest",
- "posted_ago_by": "posted %1 by %2",
- "posted_ago": "posted %1",
- "posted_in": "posted in %1",
- "posted_in_by": "posted in %1 by %2",
- "posted_in_ago": "posted in %1 %2",
- "posted_in_ago_by": "posted in %1 %2 by %3",
- "user_posted_ago": "%1 posted %2",
- "guest_posted_ago": "Guest posted %1",
- "last_edited_by": "last edited by %1",
+ "reputation": "ชื่อเสียง",
+ "read_more": "อ่านต่อ",
+ "more": "เพิ่มเติม",
+ "posted_ago_by_guest": "โพสต์ %1 โดย Guest",
+ "posted_ago_by": "โพสต์ %1 โดย %2 ",
+ "posted_ago": "โพสต์ %1 ",
+ "posted_in": "โพสต์ใน %1 ",
+ "posted_in_by": "โพสต์ใน %1 โดย %2",
+ "posted_in_ago": "โพสต์ใน %1 %2",
+ "posted_in_ago_by": "โพสต์ใน %1 %2 โดย %3",
+ "user_posted_ago": "%1 โพสต์ %2",
+ "guest_posted_ago": "Guest โพสต์ %1",
+ "last_edited_by": "แก้ไขล่าสุดโดย %1",
"norecentposts": "ไม่มีกระทู้ล่าสุด",
"norecenttopics": "ไม่มีกระทู้ล่าสุด",
"recentposts": "กระทู้ล่าสุด",
"recentips": "IP ที่ใช้เข้าสู่ระบบล่าสุด",
- "moderator_tools": "Moderator Tools",
+ "moderator_tools": "เครื่องมือผู้ดูแลระบบ",
"away": "ไม่อยู่",
- "dnd": "Do not disturb",
+ "dnd": "ห้ามรบกวน",
"invisible": "ไม่ปรากฏตัว",
"offline": "ออฟไลน์",
- "email": "Email",
- "language": "Language",
+ "email": "อีเมล์",
+ "language": "ภาษา",
"guest": "Guest",
"guests": "Guests",
- "updated.title": "Forum Updated",
- "updated.message": "This forum has just been updated to the latest version. Click here to refresh the page.",
- "privacy": "Privacy",
- "follow": "Follow",
- "unfollow": "Unfollow",
- "delete_all": "Delete All",
- "map": "Map",
- "sessions": "Login Sessions",
- "ip_address": "IP Address",
- "enter_page_number": "Enter page number",
- "upload_file": "Upload file",
- "upload": "Upload",
- "allowed-file-types": "Allowed file types are %1",
- "unsaved-changes": "You have unsaved changes. Are you sure you wish to navigate away?",
- "reconnecting-message": "Looks like your connection to %1 was lost, please wait while we try to reconnect.",
- "play": "Play",
- "cookies.message": "This website uses cookies to ensure you get the best experience on our website.",
- "cookies.accept": "Got it!",
- "cookies.learn_more": "Learn More",
- "edited": "Edited"
+ "updated.title": "ฟอรั่มที่ถูกอัพเดทแล้ว",
+ "updated.message": "ฟอรั่มนี้เพิ่งได้รับการอัพเดทให้เป็นเวอร์ชั่นล่าสุด คลิกที่นี่เพื่อรีเฟรชหน้าเพจ",
+ "privacy": "ความเป็นส่วนตัว",
+ "follow": "ติดตาม",
+ "unfollow": "เลิกติดตาม",
+ "delete_all": "ลบทั้งหมด",
+ "map": "แผนที่",
+ "sessions": "ข้อมูลการเข้าสู่ระบบ",
+ "ip_address": "ไอพีแอดเดรส",
+ "enter_page_number": "กรอกหมายเลขหน้า",
+ "upload_file": "อัพโหลดไฟล์",
+ "upload": "อัพโหลด",
+ "allowed-file-types": "ประเภทไฟล์ที่ได้รับการอนุญาติคือ %1",
+ "unsaved-changes": "การเปลี่ยนแปลงของคุณจะไม่ได้รับการบันทึก คุณแน่ใจหรือว่าต้องการออกจากที่นี่?",
+ "reconnecting-message": "เหมือนกับว่าการเชื่อมต่อของคุณเพื่อไปยัง %1 นั้นขาดหาย กรุณารอสักครู่ เรากำลังพยายามเชื่อมต่อใหม่",
+ "play": "เล่น",
+ "cookies.message": "เว็บไวต์นี้ใช้คุกกี้เพื่อที่จะทำให้แน่ใจว่า คุณได้รับประสบการณ์ที่เยี่ยมยอดที่สุดในการเข้าใช้เว็บไซต์ของเรา",
+ "cookies.accept": "เข้าใจแล้ว!!! ",
+ "cookies.learn_more": "เรียนรู้เพิ่มเติม",
+ "edited": "ถูกแก้ไขแล้ว"
}
\ No newline at end of file
diff --git a/public/language/th/groups.json b/public/language/th/groups.json
index af679cd8c3..1e1f235f9c 100644
--- a/public/language/th/groups.json
+++ b/public/language/th/groups.json
@@ -1,58 +1,58 @@
{
- "groups": "Group",
- "view_group": "ดู Group",
- "owner": "เจ้าของ Group",
- "new_group": "สร้าง Group ใหม่",
- "no_groups_found": "ยังไม่มี Group",
+ "groups": "กลุ่ม",
+ "view_group": "ดูกลุ่ม",
+ "owner": "เจ้าของกลุ่ม",
+ "new_group": "สร้างกลุ่มใหม่",
+ "no_groups_found": "ยังไม่มีกลุ่ม",
"pending.accept": "ยอมรับ",
"pending.reject": "ไม่ยอมรับ",
- "pending.accept_all": "Accept All",
- "pending.reject_all": "Reject All",
- "pending.none": "There are no pending members at this time",
- "invited.none": "There are no invited members at this time",
- "invited.uninvite": "Rescind Invitation",
- "invited.search": "Search for a user to invite to this group",
- "invited.notification_title": "You have been invited to join %1",
- "request.notification_title": "Group Membership Request from %1",
- "request.notification_text": "%1 has requested to become a member of %2",
+ "pending.accept_all": "ยอมรับทั้งหมด",
+ "pending.reject_all": "ปฏิเสธทั้งหมด",
+ "pending.none": "ไม่มีสมาชิกที่รอการอนุมัติอยู่ในขณะนี้",
+ "invited.none": "ไม่มีสมาชิกที่ได้รับการเชิญในขณะนี้",
+ "invited.uninvite": "ยกเลิกคำเชิญ",
+ "invited.search": "ค้นหาสมาชิกเพื่อเชิญเข้ากลุ่ม",
+ "invited.notification_title": "คุณถูกเชิญเข้ากลุ่ม %1",
+ "request.notification_title": "คำขอเข้ากลุ่มจาก %1",
+ "request.notification_text": "%1 ได้รับเชิญให้เข้าเป็นสมาชิกของ %2",
"cover-save": "บันทึก",
"cover-saving": "กำลังบันทึก",
- "details.title": "ข้อมูล Group",
+ "details.title": "ข้อมูลกลุ่ม",
"details.members": "รายชื่อสมาชิก",
"details.pending": "สมาชิกที่กำลังรอการตอบรับ",
- "details.invited": "Invited Members",
- "details.has_no_posts": "Group นี้ยังไม่มีโพสจากสมาชิก",
+ "details.invited": "สมาชิกที่ได้รับเชิญ",
+ "details.has_no_posts": "กลุ่มนี้ยังไม่มีโพสต์จากสมาชิก",
"details.latest_posts": "โพสล่าสุด",
"details.private": "ส่วนตัว",
- "details.disableJoinRequests": "Disable join requests",
- "details.grant": "Grant/Rescind Ownership",
+ "details.disableJoinRequests": "ปิดคำขอ",
+ "details.grant": "ให้ / ยกเลิกการเป็นเจ้าของ",
"details.kick": "เตะออก",
- "details.kick_confirm": "Are you sure you want to remove this member from the group?",
- "details.owner_options": "การจัดการ Group",
- "details.group_name": "ชื่อ Group",
- "details.member_count": "Member Count",
- "details.creation_date": "Creation Date",
+ "details.kick_confirm": "คุณแน่ใจใช่ไหมว่าต้องการลบสมาชิกคนนี้ออกจากกลุ่ม?",
+ "details.owner_options": "การจัดการกลุ่ม",
+ "details.group_name": "ชื่อกลุ่ม",
+ "details.member_count": "จำนวนสมาชิก",
+ "details.creation_date": "สร้างวันที่",
"details.description": "คำอธิบาย",
- "details.badge_preview": "Badge Preview",
+ "details.badge_preview": "สัญลักษณ์พรีวิว",
"details.change_icon": "เปลี่ยนไอคอน",
"details.change_colour": "เปลี่ยนสี",
- "details.badge_text": "Badge Text",
- "details.userTitleEnabled": "แสดง Badge",
- "details.private_help": "If enabled, joining of groups requires approval from a group owner",
+ "details.badge_text": "สัญลักษณ์ข้อความ",
+ "details.userTitleEnabled": "แสดงสัญลักษณ์",
+ "details.private_help": "หากเป็นไปได้ การเข้าร่วมกลุ่มต้องได้รับการอนุมัติจากเจ้าของกลุ่ม",
"details.hidden": "ซ่อน",
- "details.hidden_help": "If enabled, this group will not be found in the groups listing, and users will have to be invited manually",
- "details.delete_group": "Delete Group",
- "details.private_system_help": "Private groups is disabled at system level, this option does not do anything",
- "event.updated": "ข้อมูล Group ได้รับการบันทึกแล้ว",
- "event.deleted": "The group \"%1\" has been deleted",
- "membership.accept-invitation": "Accept Invitation",
- "membership.invitation-pending": "Invitation Pending",
- "membership.join-group": "Join Group",
- "membership.leave-group": "Leave Group",
- "membership.reject": "Reject",
- "new-group.group_name": "Group Name:",
- "upload-group-cover": "Upload group cover",
- "bulk-invite-instructions": "Enter a list of comma separated usernames to invite to this group",
- "bulk-invite": "Bulk Invite",
- "remove_group_cover_confirm": "Are you sure you want to remove the cover picture?"
+ "details.hidden_help": "หากเป็นไปได้ จะไม่แสดงในรายชื่อกลุ่ม และผู้ใช้จะต้องได้รับการเชิญเท่านั้นจึงจะเข้าเป็นสมาชิกได้",
+ "details.delete_group": "ลบกลุ่ม",
+ "details.private_system_help": "กลุ่มส่วนตัวถูกปิดใช้งานโดยเลเวลระบบ ตัวเลือกนี้จะไม่ได้ทำอะไรทั้งสิ้น",
+ "event.updated": "ข้อมูลกลุ่มได้รับการบันทึกแล้ว",
+ "event.deleted": "กลุ่ม \"%1\" ได้ถูกลบไปแล้ว",
+ "membership.accept-invitation": "ยอมรับคำเชิญ",
+ "membership.invitation-pending": "คำเชิญที่รอการอนุมัติ",
+ "membership.join-group": "เข้าร่วมกลุ่ม",
+ "membership.leave-group": "ออกจากกลุ่ม",
+ "membership.reject": "ปฏิเสธ",
+ "new-group.group_name": "ชื่อกลุ่ม:",
+ "upload-group-cover": "อัพโหลดหน้าปกกลุ่ม",
+ "bulk-invite-instructions": "กรอกรายชื่อผู้ใช้ที่ต้องการเชิญเข้ากลุ่ม ถ้ามีจำนวนมากกว่า 1 ให้ใช้เครื่องหมาย คอมม่า , ในการแบ่ง",
+ "bulk-invite": "เชิญจำนวนมาก",
+ "remove_group_cover_confirm": "คุณแน่ใจแล้วใช่ไหมว่าต้องการจะลบภาพหน้าปกนี้?"
}
\ No newline at end of file
diff --git a/public/language/th/language.json b/public/language/th/language.json
index 8af024bba9..19d323d650 100644
--- a/public/language/th/language.json
+++ b/public/language/th/language.json
@@ -1,5 +1,5 @@
{
- "name": "ภาษาเขียน",
+ "name": "ภาษาไทย (ไทย)",
"code": "th",
"dir": "ltr"
}
\ No newline at end of file
diff --git a/public/language/th/login.json b/public/language/th/login.json
index bb4729f5c6..86f51f948e 100644
--- a/public/language/th/login.json
+++ b/public/language/th/login.json
@@ -5,8 +5,8 @@
"remember_me": "จำไว้ในระบบ?",
"forgot_password": "ลืมรหัสผ่าน?",
"alternative_logins": "เข้าสู่ระบบโดยทางอื่น",
- "failed_login_attempt": "Login Unsuccessful",
+ "failed_login_attempt": "เข้าสู่ระบบสำเร็จ",
"login_successful": "คุณเข้าสู่ระบบเรียบร้อยแล้ว",
"dont_have_account": "คุณยังไม่มีบัญชีเข้าระบบ?",
- "logged-out-due-to-inactivity": "You have been logged out of the Admin Control Panel due to inactivity"
+ "logged-out-due-to-inactivity": "คุณได้ออกจากระบบ Admin Control Panel แล้ว เนื่องจากว่าไม่มีกิจกรรมใดๆมาสักระยะ"
}
\ No newline at end of file
diff --git a/public/language/th/modules.json b/public/language/th/modules.json
index 00a675c2f2..e48c2bb711 100644
--- a/public/language/th/modules.json
+++ b/public/language/th/modules.json
@@ -1,49 +1,49 @@
{
"chat.chatting_with": "แชทกับ ",
- "chat.placeholder": "Type chat message here, press enter to send",
+ "chat.placeholder": "พิมพ์ข้อความแชทที่นี่ กด enter เพื่อส่ง",
"chat.send": "ส่ง",
"chat.no_active": "คุณไม่มีแชทที่คุยอยู่",
- "chat.user_typing": "%1 is typing ...",
- "chat.user_has_messaged_you": "%1 has messaged you.",
- "chat.see_all": "See all chats",
- "chat.mark_all_read": "Mark all chats read",
- "chat.no-messages": "Please select a recipient to view chat message history",
- "chat.no-users-in-room": "No users in this room",
- "chat.recent-chats": "Recent Chats",
- "chat.contacts": "Contacts",
- "chat.message-history": "Message History",
- "chat.pop-out": "Pop out chat",
- "chat.minimize": "Minimize",
- "chat.maximize": "Maximize",
- "chat.seven_days": "7 Days",
- "chat.thirty_days": "30 Days",
- "chat.three_months": "3 Months",
- "chat.delete_message_confirm": "Are you sure you wish to delete this message?",
- "chat.add-users-to-room": "Add users to room",
- "chat.confirm-chat-with-dnd-user": "This user has set their status to DnD(Do not disturb). Do you still want to chat with them?",
- "composer.compose": "Compose",
- "composer.show_preview": "Show Preview",
- "composer.hide_preview": "Hide Preview",
- "composer.user_said_in": "%1 said in %2:",
- "composer.user_said": "%1 said:",
- "composer.discard": "Are you sure you wish to discard this post?",
- "composer.submit_and_lock": "Submit and Lock",
- "composer.toggle_dropdown": "Toggle Dropdown",
- "composer.uploading": "Uploading %1",
- "composer.formatting.bold": "Bold",
- "composer.formatting.italic": "Italic",
- "composer.formatting.list": "List",
- "composer.formatting.strikethrough": "Strikethrough",
- "composer.formatting.link": "Link",
- "composer.formatting.picture": "Picture",
- "composer.upload-picture": "Upload Image",
- "composer.upload-file": "Upload File",
- "composer.zen_mode": "Zen Mode",
- "composer.select_category": "Select a category",
- "bootbox.ok": "OK",
- "bootbox.cancel": "Cancel",
- "bootbox.confirm": "Confirm",
- "cover.dragging_title": "Cover Photo Positioning",
- "cover.dragging_message": "Drag the cover photo to the desired position and click \"Save\"",
- "cover.saved": "Cover photo image and position saved"
+ "chat.user_typing": "%1 กำลังพิมพ์อยู่ ...",
+ "chat.user_has_messaged_you": "%1 ได้ส่งข้อความถึงคุณ",
+ "chat.see_all": "ดูแชททั้งหมด",
+ "chat.mark_all_read": "เปลี่ยนเป็นอ่านแล้วทั้งหมด",
+ "chat.no-messages": "กรุณาเลือกผู้รับเพื่อดูประวัติข้อความ",
+ "chat.no-users-in-room": "ไม่มีผู้ใช้ในห้องนี้",
+ "chat.recent-chats": "แชทล่าสุด",
+ "chat.contacts": "ติดต่อ",
+ "chat.message-history": "ประวัติข้อความ",
+ "chat.pop-out": "Pop out แชท",
+ "chat.minimize": "ย่อเล็กสุด",
+ "chat.maximize": "ขยายใหญ่สุด",
+ "chat.seven_days": "7 วัน",
+ "chat.thirty_days": "30 วัน",
+ "chat.three_months": "3 เดือน",
+ "chat.delete_message_confirm": "คุณแน่ใจแล้วใช่ไหมว่าต้องการจะลบข้อความนี้?",
+ "chat.add-users-to-room": "เพิ่มผู้ใช้เข้ามาในห้องแชท",
+ "chat.confirm-chat-with-dnd-user": "ผู้ใช้นี้ได้ตั้งค่าสถานะเป็น (ห้ามรบกวน) คุณยังอยากจะคุยกับเขาอยู่ไหม?",
+ "composer.compose": "เขียน",
+ "composer.show_preview": "แสดงพรีวิว",
+ "composer.hide_preview": "ซ่อนพรีวิว",
+ "composer.user_said_in": "%1 พูดใน %2:",
+ "composer.user_said": "%1 พูด:",
+ "composer.discard": "คุณแน่ใจแล้วใช่ไหมว่าจะทิ้งโพสต์นี้?",
+ "composer.submit_and_lock": "ยืนยันและล็อก",
+ "composer.toggle_dropdown": "ท็อกเกิลดร็อปดาวน์",
+ "composer.uploading": "กำลังอัพโหลด %1",
+ "composer.formatting.bold": "ตัวหนา",
+ "composer.formatting.italic": "ตัวเอียง",
+ "composer.formatting.list": "รายการ",
+ "composer.formatting.strikethrough": "ขีดเส้นใต้",
+ "composer.formatting.link": "ลิ้งค์",
+ "composer.formatting.picture": "รูปภาพ",
+ "composer.upload-picture": "อัพโหลดรูปภาพ",
+ "composer.upload-file": "อัพโหลดไฟล์",
+ "composer.zen_mode": "เซ็นโหมด",
+ "composer.select_category": "เลือกหมวดหมู่",
+ "bootbox.ok": "ตกลง",
+ "bootbox.cancel": "ยกเลิก",
+ "bootbox.confirm": "ยืนยัน",
+ "cover.dragging_title": "ตำแหน่งภาพหน้าปก",
+ "cover.dragging_message": "ลากภาพหน้าปกเพื่อเลือกตำแหน่งแล้วกด \"บันทึก\"",
+ "cover.saved": "ภาพหน้าปกและตำแหน่งได้รับการบันทึกแล้ว"
}
\ No newline at end of file
diff --git a/public/language/th/notifications.json b/public/language/th/notifications.json
index b40a472c11..86993464d4 100644
--- a/public/language/th/notifications.json
+++ b/public/language/th/notifications.json
@@ -1,46 +1,46 @@
{
"title": "แจ้งเตือน",
"no_notifs": "คุณไม่มีข้อแจ้งเตือนใหม่",
- "see_all": "See all notifications",
- "mark_all_read": "Mark all notifications read",
- "back_to_home": "Back to %1",
+ "see_all": "ดูการแจ้งเตือนทั้งหมด",
+ "mark_all_read": "ทำให้การแจ้งเตือนทั้งหมดถูกอ่านแล้ว",
+ "back_to_home": "กลับสู่ %1",
"outgoing_link": "ลิงค์ออก",
- "outgoing_link_message": "You are now leaving %1",
- "continue_to": "Continue to %1",
- "return_to": "Return to %1",
+ "outgoing_link_message": "ตอนนี้คุณกำลังออกจาก %1",
+ "continue_to": "ดำเนินการต่อไปยัง %1",
+ "return_to": "กลับสู่ %1",
"new_notification": "ข้อความเตือนใหม่",
"you_have_unread_notifications": "คุณมีคำเตือนที่ยังไม่ได้อ่าน",
- "all": "All",
- "topics": "Topics",
- "replies": "Replies",
- "chat": "Chats",
- "follows": "Follows",
- "upvote": "Upvotes",
- "new-flags": "New Flags",
- "my-flags": "Flags assigned to me",
- "bans": "Bans",
- "new_message_from": "New message from %1",
- "upvoted_your_post_in": "%1 has upvoted your post in %2.",
- "upvoted_your_post_in_dual": "%1 and %2 have upvoted your post in %3.",
- "upvoted_your_post_in_multiple": "%1 and %2 others have upvoted your post in %3.",
- "moved_your_post": "%1 has moved your post to %2",
- "moved_your_topic": "%1 has moved %2",
- "user_flagged_post_in": "%1 flagged a post in %2",
- "user_flagged_post_in_dual": "%1 and %2 flagged a post in %3",
- "user_flagged_post_in_multiple": "%1 and %2 others flagged a post in %3",
- "user_flagged_user": "%1 flagged a user profile (%2)",
- "user_flagged_user_dual": "%1 and %2 flagged a user profile (%3)",
- "user_flagged_user_multiple": "%1 and %2 others flagged a user profile (%3)",
- "user_posted_to": "%1 has posted a reply to: %2",
- "user_posted_to_dual": "%1 and %2 have posted replies to: %3",
- "user_posted_to_multiple": "%1 and %2 others have posted replies to: %3",
- "user_posted_topic": "%1 has posted a new topic: %2",
- "user_started_following_you": "%1 started following you.",
- "user_started_following_you_dual": "%1 and %2 started following you.",
- "user_started_following_you_multiple": "%1 and %2 others started following you.",
- "new_register": "%1 sent a registration request.",
- "new_register_multiple": "There are %1 registration requests awaiting review.",
- "flag_assigned_to_you": "Flag %1 has been assigned to you",
+ "all": "ทั้งหมด",
+ "topics": "กระทู้",
+ "replies": "คำตอบ",
+ "chat": "แชท",
+ "follows": "ติดตาม",
+ "upvote": "โหวตขึ้น",
+ "new-flags": "ปักธงใหม่",
+ "my-flags": "ธงที่ถูกปักให้ฉัน",
+ "bans": "แบน",
+ "new_message_from": "ข้อความใหม่จาก %1",
+ "upvoted_your_post_in": "%1 ได้โหวตโพสต์ของคุณขึ้นใน %2",
+ "upvoted_your_post_in_dual": "%1 และ %2ได้โหวตโพสต์ของคุณขึ้นใน %3 ",
+ "upvoted_your_post_in_multiple": "%1 และคืนอื่นๆอีก %2 คน ได้โหวตโพสต์ของคุณขึ้นใน %3",
+ "moved_your_post": "%1 ได้ย้ายโพสต์ของคุณไปยัง %2",
+ "moved_your_topic": "%1 ได้ย้าย %2",
+ "user_flagged_post_in": "%1 ได้ปักธงโพสต์ใน %2",
+ "user_flagged_post_in_dual": "%1และ %2ได้ปักธงโพสต์ใน %3",
+ "user_flagged_post_in_multiple": "%1 และคนอื่นๆอีก %2 ได้ปักธงโพสต์ใน %3",
+ "user_flagged_user": "%1 ได้ปักธงโปรไฟล์ผู้ใช้ (%2)",
+ "user_flagged_user_dual": "%1และ%2ได้ปักธงโปรไฟล์ผู้ใช้ (%3)",
+ "user_flagged_user_multiple": "%1และคืนอื่นๆอีก %2 ได้ปักธงโปรไฟล์ผู้ใช้ (%3)",
+ "user_posted_to": "%1 ได้โพสต์คำตอบไปยัง : %2",
+ "user_posted_to_dual": "%1และ %2ได้โพสต์คำตอบไปยัง : %3 ",
+ "user_posted_to_multiple": "%1และคนอื่นๆอีก %2 ได้โพสต์คำตอบไปยัง : %3",
+ "user_posted_topic": "%1ได้โพสต์กระทู้ใหม่ : %2",
+ "user_started_following_you": "%1 ได้เริ่มติดตามคุณ",
+ "user_started_following_you_dual": "%1และ%2ได้เริ่มติดตามคุณ",
+ "user_started_following_you_multiple": "%1และคืนอื่นๆอีก %2 คนได้เริ่มติดตามคุณ",
+ "new_register": "%1ได้ส่งคำขอสมัครสมาชิก",
+ "new_register_multiple": "มี%1คำขอสมัครสมาชิกที่รอการรีวิว",
+ "flag_assigned_to_you": "ปักธง %1ได้ถูกปักธงให้คุณ",
"email-confirmed": "Email ได้รับการยืนยันแล้ว",
"email-confirmed-message": "ขอบคุณที่ยืนยัน Email ของคุณ บัญชีของคุณสามารถใช้งานได้แล้ว",
"email-confirm-error-message": "มีปัญหาในการยืนยัน Email ของคุณ บางทีรหัสไม่ถูกต้องหรือหมดอายุแล้ว",
diff --git a/public/language/th/pages.json b/public/language/th/pages.json
index 7a92d461eb..e1f1dd8a6a 100644
--- a/public/language/th/pages.json
+++ b/public/language/th/pages.json
@@ -1,52 +1,52 @@
{
"home": "หน้าแรก",
"unread": "กระทู้ที่ไม่ได้อ่าน",
- "popular-day": "Popular topics today",
- "popular-week": "Popular topics this week",
- "popular-month": "Popular topics this month",
- "popular-alltime": "All time popular topics",
+ "popular-day": "กระทู้ฮิตวันนี้",
+ "popular-week": "กระทู้ฮิตสัปดาห์นี้",
+ "popular-month": "กระทู้ฮิตเดือนนี้",
+ "popular-alltime": "กระทู้ฮิตตลาดกาล",
"recent": "กระทู้ล่าสุด",
- "flagged-content": "Flagged Content",
- "ip-blacklist": "IP Blacklist",
- "users/online": "Online Users",
- "users/latest": "Latest Users",
- "users/sort-posts": "Users with the most posts",
- "users/sort-reputation": "Users with the most reputation",
- "users/banned": "Banned Users",
- "users/most-flags": "Most flagged users",
- "users/search": "User Search",
- "notifications": "แจ้งเตือน",
- "tags": "Tags",
- "tag": "Topics tagged under \"%1\"",
- "register": "Register an account",
- "registration-complete": "Registration complete",
- "login": "Login to your account",
- "reset": "Reset your account password",
- "categories": "Categories",
- "groups": "Groups",
- "group": "%1 group",
- "chats": "Chats",
- "chat": "Chatting with %1",
- "flags": "Flags",
- "flag-details": "Flag %1 Details",
- "account/edit": "Editing \"%1\"",
- "account/edit/password": "Editing password of \"%1\"",
- "account/edit/username": "Editing username of \"%1\"",
- "account/edit/email": "Editing email of \"%1\"",
- "account/info": "Account Info",
- "account/following": "People %1 follows",
- "account/followers": "People who follow %1",
- "account/posts": "Posts made by %1",
- "account/topics": "Topics created by %1",
- "account/groups": "%1's Groups",
- "account/bookmarks": "%1's Bookmarked Posts",
- "account/settings": "User Settings",
- "account/watched": "Topics watched by %1",
- "account/upvoted": "Posts upvoted by %1",
- "account/downvoted": "Posts downvoted by %1",
- "account/best": "Best posts made by %1",
- "confirm": "Email Confirmed",
+ "flagged-content": "เนื้อหาที่ถูกปักธง",
+ "ip-blacklist": "ไอดีที่ถูกขึ้นบัญชีดำ",
+ "users/online": "ผู้ใช้ออนไลน์",
+ "users/latest": "ผู้ใช้ล่าสุด",
+ "users/sort-posts": "ผู้ใช้ที่โพสต์เยอะที่สุด",
+ "users/sort-reputation": "ผู้ใช้ที่มีชื่อเสียงโด่งดังที่สุด",
+ "users/banned": "ผู้ใช้ที่ถูกแบน",
+ "users/most-flags": "ผู้ใช้ที่ถูกปักธงมากที่สุด",
+ "users/search": "ค้นหาผู้ใช้",
+ "notifications": "การแจ้งเตือน",
+ "tags": "แท็ก",
+ "tag": "กระทู้ที่ถูกติดแท็กภายใต้ \"%1\"",
+ "register": "สมัครบัญชีผู้ใช้",
+ "registration-complete": "สมัครสมาชิกสำเร็จเรียบร้อย",
+ "login": "เข้าสู่ระบบบัญชีของคุณ",
+ "reset": "ตั้งค่ารหัสผ่านใหม่ให้บัญชีของคุณ",
+ "categories": "หมวดหมู่",
+ "groups": "กลุ่ม",
+ "group": "%1 กลุ่ม",
+ "chats": "แชท",
+ "chat": "กำลังแชทกับ %1 ",
+ "flags": "ธง",
+ "flag-details": "ธง %1 รายละเอียด",
+ "account/edit": "กำลังแก้ไข \"%1\"",
+ "account/edit/password": "กำลังแก้ไขรหัสผ่านของ \"%1\"",
+ "account/edit/username": "กำลังแก้ไขชื่อผู้ใช้ \"%1\"",
+ "account/edit/email": "กำลังแก้ไขอีเมล์ของ \"%1\"",
+ "account/info": "ข้อมูลบัญชี",
+ "account/following": "ผู้คน %1 ติดตาม",
+ "account/followers": "ผู้คนที่ติดตาม %1",
+ "account/posts": "โพสต์ถูกสร้างโดย %1",
+ "account/topics": "กระทู้ถูกสร้างโดย %1",
+ "account/groups": "กลุ่มของ %1",
+ "account/bookmarks": "บุ๊กมาร์คโพสต์ของ %1",
+ "account/settings": "การตั้งค่าผู้ใช้",
+ "account/watched": "กระทู้ที่ถูกดูโดย %1",
+ "account/upvoted": "โพสต์ที่ถูกโหวตขึ้นโดย %1",
+ "account/downvoted": "โพสต์ที่โหวตลงโดย %1",
+ "account/best": "โพสต์ดีที่สุดที่ถูกสร้างโดย %1",
+ "confirm": "อีเมล์ได้รับการยืนยันแล้ว",
"maintenance.text": "%1 กำลังอยู่ระหว่างการปิดปรับปรุงชั่วคราว กรุณาลองใหม่อีกครั้งในภายหลัง",
"maintenance.messageIntro": "ผู้ดูแลระบบได้ฝากข้อความต่อไปนี้เอาไว้",
- "throttled.text": "%1 is currently unavailable due to excessive load. Please come back another time."
+ "throttled.text": "%1 ไม่สามารถเข้าถึงได้ในขณะนี้เนื่องจากมีการโหลดที่หนักมากเกินไป กรุณากลับเข้ามาอีกครั้งในภายหลัง"
}
\ No newline at end of file
diff --git a/public/language/th/recent.json b/public/language/th/recent.json
index 2a6beb73f4..6e4d87131f 100644
--- a/public/language/th/recent.json
+++ b/public/language/th/recent.json
@@ -3,17 +3,17 @@
"day": "วัน",
"week": "สัปดาห์",
"month": "เดือน",
- "year": "Year",
- "alltime": "All Time",
+ "year": "ปี",
+ "alltime": "ตลอดกาล",
"no_recent_topics": "ไม่มีกระทู้ล่าสุด",
- "no_popular_topics": "There are no popular topics.",
- "there-is-a-new-topic": "There is a new topic.",
- "there-is-a-new-topic-and-a-new-post": "There is a new topic and a new post.",
- "there-is-a-new-topic-and-new-posts": "There is a new topic and %1 new posts.",
- "there-are-new-topics": "There are %1 new topics.",
- "there-are-new-topics-and-a-new-post": "There are %1 new topics and a new post.",
- "there-are-new-topics-and-new-posts": "There are %1 new topics and %2 new posts.",
- "there-is-a-new-post": "There is a new post.",
- "there-are-new-posts": "There are %1 new posts.",
- "click-here-to-reload": "Click here to reload."
+ "no_popular_topics": "ไม่มีกระทู้ฮิต",
+ "there-is-a-new-topic": "มีกระทู้ใหม่",
+ "there-is-a-new-topic-and-a-new-post": "มีกระทู้ใหม่และโพสต์ใหม่",
+ "there-is-a-new-topic-and-new-posts": "มีกระทู้ใหม่และ %1 โพสต์ใหม่",
+ "there-are-new-topics": "มี %1 กระทู้ใหม่",
+ "there-are-new-topics-and-a-new-post": "มี %1 กระทู้ใหม่และโพสต์ใหม่",
+ "there-are-new-topics-and-new-posts": "มี %1 กระทู้ใหม่และ %2 โพสต์ใหม่",
+ "there-is-a-new-post": "มีโพสต์ใหม่",
+ "there-are-new-posts": "มี %1 โพสต์ใหม่",
+ "click-here-to-reload": "คลิกที่นี่เพื่อโหลดใหม่อีกครั้ง"
}
\ No newline at end of file
diff --git a/public/language/th/register.json b/public/language/th/register.json
index 191d023847..bf51eefb19 100644
--- a/public/language/th/register.json
+++ b/public/language/th/register.json
@@ -1,6 +1,6 @@
{
"register": "ลงทะเบียน",
- "cancel_registration": "Cancel Registration",
+ "cancel_registration": "ยกเลิกการสมัคร",
"help.email": "ผู้ใช้อื่น ๆ จะไม่สามารถมองเห็นอีเมลของคุณโดยดีฟอลต์",
"help.username_restrictions": "ชื่อผู้ใช้ที่ไม่ซ้ำกับผู้อื่น จะต้องมีความยาวระหว่าง% 1% และ %2 ตัวอักษร ผู้ใช้อื่นๆ สามารถพูดถึงคุณโดย @ชื่อผู้ใช้ span>",
"help.minimum_password_length": "ความยาวรหัสผ่านของคุณต้องมีอย่างน้อย %1 ตัวอักษร",
@@ -16,8 +16,8 @@
"alternative_registration": "เข้าสู่ระบบโดยทางอื่น",
"terms_of_use": "เงื่อนไขการใช้งาน",
"agree_to_terms_of_use": "ยอมรับข้อตกลงในการใช้งาน",
- "terms_of_use_error": "You must agree to the Terms of Use",
- "registration-added-to-queue": "Your registration has been added to the approval queue. You will receive an email when it is accepted by an administrator.",
- "interstitial.intro": "We require some additional information before we can create your account.",
- "interstitial.errors-found": "We could not complete your registration:"
+ "terms_of_use_error": "คุณต้องยอมรับเงื่อนไขการใช้งานก่อน",
+ "registration-added-to-queue": "การสมัครใช้งานของถูกเพิ่มเข้าไปยังระบบเพิ่อรอการอนุมัติแล้ว คุณจะได้รับอีเมล์เมื่อการสมัครใช้งานของคุณถูกยอมรับโดยผู้ดูแลระบบหรือแอดมิน",
+ "interstitial.intro": "เราต้องการข้อมูลบางอย่างเพิ่มเติมก่อนที่เราจะสร้างบัญชีให้คุณ",
+ "interstitial.errors-found": "เราไม่สามารถทำให้การสมัครสมาชิกของคุณสำเร็จได้:"
}
\ No newline at end of file
diff --git a/public/language/th/reset_password.json b/public/language/th/reset_password.json
index b2a61b08d7..be04453dec 100644
--- a/public/language/th/reset_password.json
+++ b/public/language/th/reset_password.json
@@ -13,5 +13,5 @@
"invalid_email": "อีเมล์ไม่ถูกต้อง / อีเมล์ไม่มีอยู่!",
"password_too_short": "รหัสผ่านที่คุณกำหนดยังสั้นเกินไป กรุณากำหนดรหัสผ่านของคุณใหม่",
"passwords_do_not_match": "รหัสผ่านทั้ง 2 ที่ใส่ไม่ตรงกัน",
- "password_expired": "Your password has expired, please choose a new password"
+ "password_expired": "รหัสผ่านของคุณหมดอายุแล้ว กรุณาเลือกรหัสผ่านใหม่"
}
\ No newline at end of file
diff --git a/public/language/th/search.json b/public/language/th/search.json
index 4dafe32b18..fc250eb3dc 100644
--- a/public/language/th/search.json
+++ b/public/language/th/search.json
@@ -1,22 +1,22 @@
{
"results_matching": "%1 ผลลัพธ์ ตรงตามที่ระบุ \"%2\", (%3 วินาที)",
"no-matches": "ไม่พบผลลัพธ์ที่สอดคล้อง",
- "advanced-search": "Advanced Search",
- "in": "In",
+ "advanced-search": "การค้นหาแบบละเอียด",
+ "in": "ใน",
"titles": "หัวข้อ",
"titles-posts": "หัวข้อ และ ข้อความ",
"posted-by": "บันทึกโดย",
- "in-categories": "In Categories",
- "search-child-categories": "Search child categories",
- "has-tags": "Has tags",
+ "in-categories": "ในหมวดหมู่",
+ "search-child-categories": "ค้นหาหมวดหมู่ย่อย",
+ "has-tags": "มีแท็ก",
"reply-count": "จำนวนข้อความตอบกลับ",
"at-least": "อย่างน้อยที่สุด",
"at-most": "อย่างมากที่สุด",
- "relevance": "Relevance",
- "post-time": "Post time",
- "newer-than": "Newer than",
- "older-than": "Older than",
- "any-date": "Any date",
+ "relevance": "ที่เกี่ยวข้อง",
+ "post-time": "เวลาโพสต์",
+ "newer-than": "ใหม่กว่า",
+ "older-than": "เก่ากว่า",
+ "any-date": "วันที่ใดๆ",
"yesterday": "เมื่อวาน",
"one-week": "1 สัปดาห์",
"two-weeks": "2 สัปดาห์",
@@ -26,17 +26,17 @@
"one-year": "1 ปี",
"sort-by": "จัดเรียงโดย",
"last-reply-time": "เวลาตอบกลับล่าสุด",
- "topic-title": "Topic title",
+ "topic-title": "หัวข้อกระทู้",
"number-of-replies": "จำนวนข้อความตอบกลับ",
"number-of-views": "จำนวนดู",
- "topic-start-date": "Topic start date",
- "username": "Username",
- "category": "Category",
+ "topic-start-date": "วันที่เริ่มกระทู้",
+ "username": "ชื่อผู้ใช้",
+ "category": "หมวดหมู่",
"descending": "เรียงจากมากไปน้อย",
"ascending": "เรียงจากน้อยไปมาก",
- "save-preferences": "Save preferences",
- "clear-preferences": "Clear preferences",
- "search-preferences-saved": "Search preferences saved",
- "search-preferences-cleared": "Search preferences cleared",
+ "save-preferences": "บันทึกการตั้งค่า",
+ "clear-preferences": "ล้างการตั้งค่า",
+ "search-preferences-saved": "ค้นหาการตั้งค่าที่บันทึกไว้",
+ "search-preferences-cleared": "ค้นหาการตั้งค่าที่ลบล้างไป",
"show-results-as": "แสดงผลลัพธ์แบบ"
}
\ No newline at end of file
diff --git a/public/language/th/tags.json b/public/language/th/tags.json
index e8bf52df2e..ccafeff224 100644
--- a/public/language/th/tags.json
+++ b/public/language/th/tags.json
@@ -1,7 +1,7 @@
{
"no_tag_topics": "ไม่มีหัวข้อสนทนาที่เกี่ยวข้องกับป้ายคำศัพท์นี้",
"tags": "ป้ายคำศัพท์",
- "enter_tags_here": "Enter tags here, between %1 and %2 characters each.",
+ "enter_tags_here": "กรอกแท็กที่นี่ จำนวนอักขระอยู่ระหว่าง %1 และ %2 ตัวอักษรต่อ 1 แท็ก",
"enter_tags_here_short": "ใส่ป้ายคำศัพท์ ...",
"no_tags": "ยังไม่มีป้ายคำศัพท์"
}
\ No newline at end of file
diff --git a/public/language/th/topic.json b/public/language/th/topic.json
index 2cd850d1fb..edb408104c 100644
--- a/public/language/th/topic.json
+++ b/public/language/th/topic.json
@@ -5,7 +5,7 @@
"no_topics_found": "ไม่พบกระทู้",
"no_posts_found": "ไม่พบโพส",
"post_is_deleted": "ลบ Post นี้เรียบร้อยแล้ว!",
- "topic_is_deleted": "This topic is deleted!",
+ "topic_is_deleted": "กระทู้นี้ถูกลบไปแล้ว!",
"profile": "รายละเอียด",
"posted_by": "โพสโดย %1",
"posted_by_guest": "โพสโดย Guest",
@@ -13,45 +13,45 @@
"notify_me": "แจ้งเตือนเมื่อการตอบใหม่ในกระทู้นี้",
"quote": "คำอ้างอิง",
"reply": "ตอบ",
- "replies_to_this_post": "%1 Replies",
- "last_reply_time": "Last reply",
- "reply-as-topic": "Reply as topic",
+ "replies_to_this_post": " %1 คำตอบ",
+ "last_reply_time": "คำตอบล่าสุด",
+ "reply-as-topic": "ตอบโดยตั้งกระทู้ใหม่",
"guest-login-reply": "เข้าสู่ระบบเพื่อตอบกลับ",
"edit": "แก้ไข",
"delete": "ลบ",
- "purge": "Purge",
+ "purge": "ล้าง",
"restore": "กู้",
"move": "ย้าย",
"fork": "แยก",
"link": "ลิงค์",
"share": "แชร์",
"tools": "เครื่องมือ",
- "locked": "Locked",
- "pinned": "Pinned",
- "moved": "Moved",
- "bookmark_instructions": "Click here to return to the last read post in this thread.",
+ "locked": "ถูกล็อก",
+ "pinned": "ถูกปักหมุด",
+ "moved": "ถูกย้าย",
+ "bookmark_instructions": "คลิกที่นี่เพื่อกลับไปยังโพสต์ล่าสุดในหัวข้อนี้",
"flag_title": "ปักธงโพสต์นี้เพื่อดำเนินการ",
"deleted_message": "Topic นี้ถูกลบไปแล้ว เฉพาะผู้ใช้งานที่มีสิทธิ์ในการจัดการ Topic เท่านั้นที่จะมีสิทธิ์ในการเข้าชม",
"following_topic.message": "คุณจะได้รับการแจ้งเตือนเมื่อมีคนโพสต์ในกระทู้นี้",
- "not_following_topic.message": "You will see this topic in the unread topics list, but you will not receive notifications when somebody posts to this topic.",
- "ignoring_topic.message": "You will no longer see this topic in the unread topics list. You will be notified when you are mentioned or your post is up voted.",
+ "not_following_topic.message": "คุณจะเห็นกระทู้นี้ในรายการของกระทู้ที่ยังไม่ได้อ่าน แต่คุณจะไม่ได้รับการแจ้งเตือนเมื่่อมีคนตอบกระทู้นี้",
+ "ignoring_topic.message": "คุณจะไม่เห็นกระทู้นี้ในรายการของกระทู้ที่ยังไม่ได้อ่านอีกต่อไป คุณจะได้รับการแจ้งเตือนเมื่อมีคนกล่าวถึงคุณหรือโพสต์ของคุณถูกโหวตขึ้น",
"login_to_subscribe": "กรุณาลงทะเบียนหรือเข้าสู่ระบบเพื่อที่จะติดตามกระทู้นี้",
"markAsUnreadForAll.success": "ทำเครื่องหมายว่ายังไม่ได้อ่านทั้งหมด",
- "mark_unread": "Mark unread",
- "mark_unread.success": "Topic marked as unread.",
+ "mark_unread": "ถูกมาร์คว่ายังไม่ได้อ่าน",
+ "mark_unread.success": "กระทู้ที่ถูกมาร์คว่ายังไม่ได้อ่าน",
"watch": "ติดตาม",
"unwatch": "ยังไม่ได้ติดตาม",
"watch.title": "ให้แจ้งเตือนเมื่อมีการตอบกลับ Topic นี้",
"unwatch.title": "ยกเลิกการติดตาม Topic นี้",
"share_this_post": "แชร์โพสต์นี้",
- "watching": "Watching",
- "not-watching": "Not Watching",
- "ignoring": "Ignoring",
- "watching.description": "Notify me of new replies. Show topic in unread.",
- "not-watching.description": "Do not notify me of new replies. Show topic in unread if category is not ignored.",
- "ignoring.description": "Do not notify me of new replies. Do not show topic in unread.",
+ "watching": "กำลังดู",
+ "not-watching": "ไม่ดูแล้ว",
+ "ignoring": "ความเมินเฉย",
+ "watching.description": "เตือนฉันเมื่อมีคำตอบใหม่ แสดงกระทู้ในรายการที่ยังไม่ได้อ่าน",
+ "not-watching.description": "อย่าเตือนฉันเมือมีคำตอบใหม่ แสดงกระทู้ในรายการที่ยังไม่ได้อ่านหากหมวดหมู่นี้ไม่ได้รับการเมินเฉย",
+ "ignoring.description": "อย่าเตือนฉันเมื่อมีคำตอบใหม่ อย่าแสดงกระทู้ในรายการที่ยังไม่ได้อ่าน",
"thread_tools.title": "เครื่องมือช่วยจัดการ Topic",
- "thread_tools.markAsUnreadForAll": "Mark unread for all",
+ "thread_tools.markAsUnreadForAll": "มาร์คว่ายังไม่ยังอ่านทั้งหมด",
"thread_tools.pin": "ปักหมุดกระทู้",
"thread_tools.unpin": "เลิกปักหมุดกระทู้",
"thread_tools.lock": "ล็อคกระทู้",
@@ -60,40 +60,40 @@
"thread_tools.move_all": "ย้ายทั้งหมด",
"thread_tools.fork": "แยกกระทู้",
"thread_tools.delete": "ลบกระทู้",
- "thread_tools.delete-posts": "Delete Posts",
+ "thread_tools.delete-posts": "ลบโพสต์",
"thread_tools.delete_confirm": "มั่นใจแล้วหรือไม่ที่จะลบ Topic นี้?",
"thread_tools.restore": "กู้กระทู้",
"thread_tools.restore_confirm": "มั่นใจแล้วหรือไม่ที่จะกู้คืน Topic นี้?",
- "thread_tools.purge": "Purge Topic",
- "thread_tools.purge_confirm": "Are you sure you want to purge this topic?",
- "topic_move_success": "This topic has been successfully moved to %1",
- "post_delete_confirm": "Are you sure you want to delete this post?",
- "post_restore_confirm": "Are you sure you want to restore this post?",
- "post_purge_confirm": "Are you sure you want to purge this post?",
+ "thread_tools.purge": "ล้างกระทู้",
+ "thread_tools.purge_confirm": "คุณแน่ใจแล้วใช้ไมว่าต้องการล้างกระทู้นี้?",
+ "topic_move_success": "กระทู้นี้ได้รับการย้ายไปยัง %1 เรียบร้อยแล้ว",
+ "post_delete_confirm": "คุณแน่ใจแล้วใช่ไหมว่าต้องการลบโพสต์นี้",
+ "post_restore_confirm": "คุณแน่ใจแล้วใช้ไหมว่าต้องการกู้คืนโพสต์นี้",
+ "post_purge_confirm": "คุณแน่ใจแล้วใช่ไหมว่าต้องการล้างโพสต์นี้",
"load_categories": "กำลังโหลดหมวดหมู่",
"disabled_categories_note": "หมวดหมู่ที่ปิดใช้งานจะเป็นสีเทา",
"confirm_move": "ย้าย",
"confirm_fork": "แยก",
- "bookmark": "Bookmark",
- "bookmarks": "Bookmarks",
- "bookmarks.has_no_bookmarks": "You haven't bookmarked any posts yet.",
+ "bookmark": "บุ๊กมาร์ก",
+ "bookmarks": "บุ๊กมาร์ก",
+ "bookmarks.has_no_bookmarks": "คุณยังไม่มีบุ๊กมาร์กใดๆเลย",
"loading_more_posts": "โหลดโพสเพิ่มเติม",
"move_topic": "ย้ายกระทู้",
- "move_topics": "Move Topics",
+ "move_topics": "ย้ายกระทู้",
"move_post": "ย้ายโพส",
- "post_moved": "Post moved!",
+ "post_moved": "โพสต์ถูกย้ายแล้ว!",
"fork_topic": "แยกกระทู้",
"topic_will_be_moved_to": "กระทู้นี้จะถูกย้ายไปที่หมวดหมู่",
"fork_topic_instruction": "คลิกที่โพสที่คุณต้องการที่จะแยก",
"fork_no_pids": "ไม่มีโพสต์ที่เลือก!",
- "fork_pid_count": "%1 post(s) selected",
- "fork_success": "Successfully forked topic! Click here to go to the forked topic.",
- "delete_posts_instruction": "Click the posts you want to delete/purge",
+ "fork_pid_count": " %1 โพสต์(s) ที่เลือก",
+ "fork_success": "แตกกระทู้สำเร็จแล้ว! คลิกที่นี่เพื่อไปยั้งกระทู้ที่คุณแตกประเด็น",
+ "delete_posts_instruction": "คลิกโพสต์ที่คุณต้องการลบ/ล้าง",
"composer.title_placeholder": "ป้อนชื่อกระทู้ของคุณที่นี่ ...",
- "composer.handle_placeholder": "Name",
+ "composer.handle_placeholder": "ชื่อ",
"composer.discard": "ยกเลิก",
"composer.submit": "ส่ง",
- "composer.replying_to": "Replying to %1",
+ "composer.replying_to": "ตอบไปยัง %1",
"composer.new_topic": "กระทู้ใหม่",
"composer.uploading": "กำลังอัพโหลด ...",
"composer.thumb_url_label": "วาง URL ของภาพของกระทู้นี้",
@@ -102,18 +102,18 @@
"composer.thumb_file_label": "หรืออัปโหลดไฟล์",
"composer.thumb_remove": "ล้างฟิลด์",
"composer.drag_and_drop_images": "ลากและวางภาพที่นี่",
- "more_users_and_guests": "%1 more user(s) and %2 guest(s)",
- "more_users": "%1 more user(s)",
- "more_guests": "%1 more guest(s)",
- "users_and_others": "%1 and %2 others",
- "sort_by": "Sort by",
- "oldest_to_newest": "Oldest to Newest",
- "newest_to_oldest": "Newest to Oldest",
- "most_votes": "Most votes",
- "most_posts": "Most posts",
- "stale.title": "Create new topic instead?",
- "stale.warning": "The topic you are replying to is quite old. Would you like to create a new topic instead, and reference this one in your reply?",
- "stale.create": "Create a new topic",
- "stale.reply_anyway": "Reply to this topic anyway",
- "link_back": "Re: [%1](%2)"
+ "more_users_and_guests": "ผู้ใช้อีก %1 คน (s) และ %2 guest(s)",
+ "more_users": "อีก %1 ผู้ใช้(s)",
+ "more_guests": "อีก %1 guest(s)",
+ "users_and_others": " %1 และคนอื่นๆอีก %2 ",
+ "sort_by": "เรียงตาม",
+ "oldest_to_newest": "เก่าสุดไปยังใหม่สุด",
+ "newest_to_oldest": "ใหม่สุดไปยังเก่าสุด",
+ "most_votes": "โหวตมากสุด",
+ "most_posts": "โพสต์มากสุด",
+ "stale.title": "ตั้งกระทู้ใหม่แทนไหม?",
+ "stale.warning": "กระทู้ที่คุณกำลังตอบเก่าไปหน่อยนะ อยากจะลองตั้งกระทู้ใหม่แทนไหมล่ะ? แล้วก็อ้างอิงกระทู้นี้ไปยังคำตอบของคุณ",
+ "stale.create": "ตั้งกระทู้ใหม่",
+ "stale.reply_anyway": "ตอบกระทู้นี้ไม่ว่ายังไงก็ตาม",
+ "link_back": "ตอบกลับ: [%1](%2)"
}
\ No newline at end of file
diff --git a/public/language/th/unread.json b/public/language/th/unread.json
index 00f800a723..10d0de6c3e 100644
--- a/public/language/th/unread.json
+++ b/public/language/th/unread.json
@@ -5,9 +5,9 @@
"mark_as_read": "ทำเครื่องหมายว่าอ่านแล้ว",
"selected": "เลือก",
"all": "ทั้งหมด",
- "all_categories": "All categories",
+ "all_categories": "หมวดหมู่ทั้งหมด",
"topics_marked_as_read.success": "Topic ถูกทำเครื่องหมายว่าอ่านแล้วเรียบร้อย",
- "all-topics": "All Topics",
- "new-topics": "New Topics",
- "watched-topics": "Watched Topics"
+ "all-topics": "กระทู้ทั้งหมด",
+ "new-topics": "ตั้งกระทู้ใหม่",
+ "watched-topics": "กระทู้ที่ดูแล้ว"
}
\ No newline at end of file
diff --git a/public/language/th/uploads.json b/public/language/th/uploads.json
index 1622cb5693..b43c5bcae6 100644
--- a/public/language/th/uploads.json
+++ b/public/language/th/uploads.json
@@ -1,6 +1,6 @@
{
- "uploading-file": "Uploading the file...",
- "select-file-to-upload": "Select a file to upload!",
- "upload-success": "File uploaded successfully!",
- "maximum-file-size": "Maximum %1 kb"
+ "uploading-file": "กำลังอัพโหลดไฟล์ ...",
+ "select-file-to-upload": "กรุณาเลือกไฟล์ที่จะอัพโหลด",
+ "upload-success": "อัพโหลดไฟล์เรียบร้อยแล้ว",
+ "maximum-file-size": "มากที่สุดได้ %1 kb"
}
\ No newline at end of file
diff --git a/public/language/th/user.json b/public/language/th/user.json
index 345583ac68..6eafd81abe 100644
--- a/public/language/th/user.json
+++ b/public/language/th/user.json
@@ -4,8 +4,8 @@
"username": "ชื่อผู้ใช้",
"joindate": "วันที่เข้าร่วม",
"postcount": "จำนวนโพสต์",
- "email": "อีเมล",
- "confirm_email": "ยืนยันอีเมล",
+ "email": "อีเมล์",
+ "confirm_email": "ยืนยันอีเมล์",
"account_info": "ข้อมูลบัญชี",
"ban_account": "แบนบัญชี",
"ban_account_confirm": "คุณต้องการแบนผู้ใช้นี้หรือไม่?",
@@ -60,7 +60,7 @@
"username_taken_workaround": "ชื้อผู้ใช้นี้ถูกใช้แล้ว เราทำการแก้ไขชื่อผู้ใช้ของคุณเล็กน้อยเป็น %1",
"password_same_as_username": "คุณใช้รหัสผ่านเดียวกับชื่อผู้ใช้ กรุณาเปลี่ยนรหัสผ่านใหม่",
"password_same_as_email": "คุณใช้รหัสผ่านเดียวกับอีเมล กรุณาเปลี่ยนรหัสผ่านใหม่",
- "weak_password": "Weak password.",
+ "weak_password": "พาสเวิร์ดเดาได้ง่าย",
"upload_picture": "อัพโหลดรูป",
"upload_a_picture": "อัพโหลดรูป",
"remove_uploaded_picture": "ลบภาพที่อัพโหลดไว้",
@@ -103,34 +103,34 @@
"browsing": "เปิดดูการตั้งค่า",
"open_links_in_new_tab": "เปิดลิงค์ในแท็บใหม่",
"enable_topic_searching": "เปิดใช้การค้นหาแบบ In-Topic",
- "topic_search_help": "If enabled, in-topic searching will override the browser's default page search behaviour and allow you to search through the entire topic, instead of what is only shown on screen",
- "delay_image_loading": "Delay Image Loading",
- "image_load_delay_help": "If enabled, images in topics will not load until they are scrolled into view",
- "scroll_to_my_post": "After posting a reply, show the new post",
- "follow_topics_you_reply_to": "Watch topics that you reply to",
- "follow_topics_you_create": "Watch topics you create",
- "grouptitle": "Group Title",
- "no-group-title": "No group title",
- "select-skin": "Select a Skin",
- "select-homepage": "Select a Homepage",
- "homepage": "Homepage",
- "homepage_description": "Select a page to use as the forum homepage or 'None' to use the default homepage.",
- "custom_route": "Custom Homepage Route",
- "custom_route_help": "Enter a route name here, without any preceding slash (e.g. \"recent\", or \"popular\")",
- "sso.title": "Single Sign-on Services",
- "sso.associated": "Associated with",
- "sso.not-associated": "Click here to associate with",
- "info.latest-flags": "Latest Flags",
- "info.no-flags": "No Flagged Posts Found",
- "info.ban-history": "Recent Ban History",
- "info.no-ban-history": "This user has never been banned",
- "info.banned-until": "Banned until %1",
- "info.banned-permanently": "Banned permanently",
- "info.banned-reason-label": "Reason",
- "info.banned-no-reason": "No reason given.",
- "info.username-history": "Username History",
- "info.email-history": "Email History",
- "info.moderation-note": "Moderation Note",
- "info.moderation-note.success": "Moderation note saved",
- "info.moderation-note.add": "Add note"
+ "topic_search_help": "หากเปิดใช้งาน, \"การค้นหาภายในกระทู้\" จะแทนที่ระบบ \"การค้นหาจากค่าเริ่มต้นของเบราเซอร์\" และจะทำให้คุณค้นหาข้อมูลต่างๆภายในกระทู้ได้ แทนที่จะเป็นการหาแค่สิ่งที่แสดงบนหน้าจอเท่านั้น",
+ "delay_image_loading": "การโหลดรูปภาพช้าลง",
+ "image_load_delay_help": "หากเปิดใช้งาน, รูปภาพในกระทู้จะไม่โหลดจนกว่าจะมีการเลื่อนไปดู",
+ "scroll_to_my_post": "หลังจากได้ทำการโพสต์ตอบกลับ ให้แสดงโพสต์ใหม่",
+ "follow_topics_you_reply_to": "ดูกระทู้ที่คุณตอบ",
+ "follow_topics_you_create": "ดูกระทู้ที่คุณตั้ง",
+ "grouptitle": "ชื่อกลุ่ม",
+ "no-group-title": "ไม่มีชื่อกลุ่ม",
+ "select-skin": "เลือกสกิน",
+ "select-homepage": "เลือกหน้าแรก",
+ "homepage": "หน้าแรก",
+ "homepage_description": "เลือกหน้าที่จะใช้เป็นหน้าแรกของฟอรั่ม หรือเลือก None เพื่อใช้ค่าเริ่มต้น",
+ "custom_route": "กำหนดเส้นทางไปหน้าแรกเอง",
+ "custom_route_help": "กรอกเส้นทางที่นี่ โดยไม่มีเครื่องหมาย ทับ (เช่น \"recent\" หรือ \"popular\")",
+ "sso.title": "บริการ Single Sign-on ",
+ "sso.associated": "เกี่ยวข้องกับ",
+ "sso.not-associated": "คลิกที่นี่เพื่อเชื่อมโยงกับ",
+ "info.latest-flags": "ปักธงล่าสุด",
+ "info.no-flags": "ไม่พบโพสต์ที่ถูกปักธง",
+ "info.ban-history": "ประวัติแบนล่าสุด",
+ "info.no-ban-history": "ผู้ใช้นี้ถูกแบนแล้ว",
+ "info.banned-until": "แบนจนกว่า %1",
+ "info.banned-permanently": "แบนอย่างถาวร",
+ "info.banned-reason-label": "เหตุผล",
+ "info.banned-no-reason": "ไม่มีเหตุผล",
+ "info.username-history": "ประวัติผู้ใช้",
+ "info.email-history": "ประวัติอีเมล์",
+ "info.moderation-note": "โน๊ตของ Moderation",
+ "info.moderation-note.success": "โน้ตของ Moderation ถูกบันทึกแล้ว",
+ "info.moderation-note.add": "เพิ่มโน้ต"
}
\ No newline at end of file
diff --git a/public/language/th/users.json b/public/language/th/users.json
index 483057d5cd..c330f2416a 100644
--- a/public/language/th/users.json
+++ b/public/language/th/users.json
@@ -6,7 +6,7 @@
"search": "ค้นหา",
"enter_username": "กรอกชื่อผู้ใช้เพื่อค้นหา",
"load_more": "โหลดเพิ่มเติม",
- "users-found-search-took": "พบ %1 ผู้ใช้! การค้นหาใช้เวลาทั้งหมด %2 วินาที",
+ "users-found-search-took": "พบ %1 ผู้ใช้(s)! การค้นหาใช้เวลาทั้งหมด %2 วินาที",
"filter-by": "การกรอง",
"online-only": "กำลังออนไลน์เท่านั้น",
"invite": "เชิญ",
diff --git a/public/language/tr/admin/advanced/database.json b/public/language/tr/admin/advanced/database.json
index 25989418d7..39fccc540c 100644
--- a/public/language/tr/admin/advanced/database.json
+++ b/public/language/tr/admin/advanced/database.json
@@ -8,13 +8,13 @@
"mongo": "Mongo",
"mongo.version": "MongoDB Sürümü",
"mongo.storage-engine": "Storage Engine",
- "mongo.collections": "Collections",
- "mongo.objects": "Objects",
+ "mongo.collections": "Koleksiyonlar",
+ "mongo.objects": "Objeler",
"mongo.avg-object-size": "Avg. Object Size",
"mongo.data-size": "Veri Boyutu",
"mongo.storage-size": "Storage Size",
- "mongo.index-size": "Index Size",
- "mongo.file-size": "File Size",
+ "mongo.index-size": "İndex Boyutu",
+ "mongo.file-size": "Dosya Boyutu",
"mongo.resident-memory": "Resident Memory",
"mongo.virtual-memory": "Virtual Memory",
"mongo.mapped-memory": "Mapped Memory",
diff --git a/public/language/tr/admin/advanced/events.json b/public/language/tr/admin/advanced/events.json
index 5bac444857..bca47b6a68 100644
--- a/public/language/tr/admin/advanced/events.json
+++ b/public/language/tr/admin/advanced/events.json
@@ -1,6 +1,6 @@
{
"events": "Olaylar",
"no-events": "Olay yok",
- "control-panel": "Events Control Panel",
+ "control-panel": "Etkinlik Kontrol Paneli",
"delete-events": "Olayları Sil"
}
\ No newline at end of file
diff --git a/public/language/tr/admin/appearance/customise.json b/public/language/tr/admin/appearance/customise.json
index 83e506e854..afcc788881 100644
--- a/public/language/tr/admin/appearance/customise.json
+++ b/public/language/tr/admin/appearance/customise.json
@@ -1,9 +1,9 @@
{
"custom-css": "Özel CSS",
- "custom-css.description": "Enter your own CSS declarations here, which will be applied after all other styles.",
- "custom-css.enable": "Özel CSS Aktif",
+ "custom-css.description": "Özel CSS kodlarınızı bu alana girin.",
+ "custom-css.enable": "Özel CSS Etkinleştir",
"custom-header": "Özel Header",
- "custom-header.description": "Enter custom HTML here (ex. JavaScript, Meta Tags, etc.), which will be appended to the <head> section of your forum's markup.",
- "custom-header.enable": "Enable Custom Header"
+ "custom-header.description": "Forumunuzun biçimlendirmesini sağlayacak <head> bölümüne eklenecek özel HTML'yi (ör. JavaScript, Meta Etiketler vb.) Girin.",
+ "custom-header.enable": "Özel Header'ı Etkinleştir"
}
\ No newline at end of file
diff --git a/public/language/tr/admin/appearance/skins.json b/public/language/tr/admin/appearance/skins.json
index 57638271e7..335dd89547 100644
--- a/public/language/tr/admin/appearance/skins.json
+++ b/public/language/tr/admin/appearance/skins.json
@@ -2,8 +2,8 @@
"loading": "Deriler yükleniyor...",
"homepage": "Anasayfa",
"select-skin": "Deri Seç",
- "current-skin": "Current Skin",
- "skin-updated": "Skin Updated",
- "applied-success": "%1 skin was succesfully applied",
- "revert-success": "Skin reverted to base colours"
+ "current-skin": "Mevcut Deri",
+ "skin-updated": "Deri Güncellendi",
+ "applied-success": "%1 deri başarıyla uygulandı",
+ "revert-success": "Deri taban renkleri geri döndürüldü"
}
\ No newline at end of file
diff --git a/public/language/tr/admin/appearance/themes.json b/public/language/tr/admin/appearance/themes.json
index 9cdc64769e..e8df4d06b8 100644
--- a/public/language/tr/admin/appearance/themes.json
+++ b/public/language/tr/admin/appearance/themes.json
@@ -2,10 +2,10 @@
"checking-for-installed": "Yüklü temalar kontrol ediliyor...",
"homepage": "Anasayfa",
"select-theme": "Tema Seç",
- "current-theme": "Current Theme",
- "no-themes": "No installed themes found",
- "revert-confirm": "Are you sure you wish to restore the default NodeBB theme?",
- "theme-changed": "Theme Changed",
- "revert-success": "You have successfully reverted your NodeBB back to it's default theme.",
- "restart-to-activate": "Please restart your NodeBB to fully activate this theme"
+ "current-theme": "Geçerli Tema",
+ "no-themes": "Yüklü tema bulunamadı",
+ "revert-confirm": "Varsayılan NodeBB temasını geri yüklemek istediğinizden emin misiniz?",
+ "theme-changed": "Tema Değiştirildi",
+ "revert-success": "NodeBB'nin varsayılan temasına başarıyla geri dönüş yaptınız.",
+ "restart-to-activate": "Temayı tamamen aktif hale getirebilmek için NodeBB'yi yeniden başlat"
}
\ No newline at end of file
diff --git a/public/language/tr/admin/extend/rewards.json b/public/language/tr/admin/extend/rewards.json
index 624fae6151..efbeadada9 100644
--- a/public/language/tr/admin/extend/rewards.json
+++ b/public/language/tr/admin/extend/rewards.json
@@ -1,17 +1,17 @@
{
"rewards": "Ödüller",
"condition-if-users": "If User's",
- "condition-is": "Is:",
- "condition-then": "Then:",
+ "condition-is": "İse:",
+ "condition-then": "Sonra:",
"max-claims": "Amount of times reward is claimable",
"zero-infinite": "Enter 0 for infinite",
- "delete": "Delete",
- "enable": "Aktif",
- "disable": "Disable",
- "control-panel": "Rewards Control",
- "new-reward": "New Reward",
+ "delete": "Sil",
+ "enable": "Etkinleştir",
+ "disable": "Devredışı",
+ "control-panel": "Ödül Kontrol",
+ "new-reward": "Yeni Ödül",
- "alert.delete-success": "Successfully deleted reward",
+ "alert.delete-success": "Ödül başarıyla silindi",
"alert.no-inputs-found": "Illegal reward - no inputs found!",
- "alert.save-success": "Successfully saved rewards"
+ "alert.save-success": "Ödüller başarıyla kaydedildi"
}
\ No newline at end of file
diff --git a/public/language/tr/admin/general/dashboard.json b/public/language/tr/admin/general/dashboard.json
index fbc3d434d1..e1145a6e63 100644
--- a/public/language/tr/admin/general/dashboard.json
+++ b/public/language/tr/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Kullanıcılar",
"posts": "İletiler",
"topics": "Başlıklar",
- "page-views-last-month": "Geçen ay sayfa görüntüleme",
- "page-views-this-month": "Bu ay sayfa görüntüleme",
- "page-views-last-day": "Son 24 saatteki sayfa görüntüleme",
+ "page-views-seven": "Son 7 Gün",
+ "page-views-thirty": "Son 30 Gün",
+ "page-views-last-day": "Son 24 saat",
+ "page-views-custom": "Özel Tarih Aralığı",
+ "page-views-custom-start": "Başlangıç",
+ "page-views-custom-end": "Son",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Lütfen tarih aralığını geçerli formatta girin YYYY-MM-DD",
"stats.day": "Gün",
"stats.week": "Hafta",
@@ -31,9 +36,9 @@
"search-plugin-tooltip": "Install a search plugin from the plugin page in order to activate search functionality",
"control-panel": "Sistem Kontrol",
- "reload": "Tekrar Yükle",
- "restart": "Yeniden Başlat",
- "restart-warning": "Reloading or Restarting your NodeBB will drop all existing connections for a few seconds.",
+ "reload": "Reload",
+ "restart": "Restart",
+ "restart-warning": "NodeBB yeniden yüklemek veya yeniden başlatmak için mevcut tüm bağlantıları birkaç saniye düşürür.",
"maintenance-mode": "Bakım Modu",
"maintenance-mode-title": "NodeBB için bakım modunu ayarlamak için buraya tıklayın",
"realtime-chart-updates": "Gerçek Zamanlı Grafik Güncellemeleri",
@@ -55,7 +60,7 @@
"recent": "Yeni",
"unread": "Okunmamış",
- "high-presence-topics": "High Presence Topics",
+ "high-presence-topics": "Öne Çıkan Başlıklar",
"graphs.page-views": "Sayfa Gösterimi",
"graphs.unique-visitors": "Benzersiz Ziyaretçiler",
diff --git a/public/language/tr/admin/general/homepage.json b/public/language/tr/admin/general/homepage.json
index e38827a2b3..3dad8ecbce 100644
--- a/public/language/tr/admin/general/homepage.json
+++ b/public/language/tr/admin/general/homepage.json
@@ -1,7 +1,7 @@
{
"home-page": "Ana Sayfa",
- "description": "Choose what page is shown when users navigate to the root URL of your forum.",
- "home-page-route": "Home Page Route",
- "custom-route": "Custom Route",
- "allow-user-home-pages": "Allow User Home Pages"
+ "description": "Kullanıcıların, forumunuzun kök bağlantısına gittiğinde hangi sayfanın görüntüleneceğini seçin.",
+ "home-page-route": "Anasayfa Yolu",
+ "custom-route": "Özel Yol",
+ "allow-user-home-pages": "Kullanıcılara anasayfayı özelleştirmeye izin ver"
}
\ No newline at end of file
diff --git a/public/language/tr/admin/general/sounds.json b/public/language/tr/admin/general/sounds.json
index b2c52aa9f1..be203d3582 100644
--- a/public/language/tr/admin/general/sounds.json
+++ b/public/language/tr/admin/general/sounds.json
@@ -2,8 +2,8 @@
"notifications": "Bildiriler",
"chat-messages": "Sohbet Mesajları",
"play-sound": "Oynat",
- "incoming-message": "Incoming Message",
- "outgoing-message": "Outgoing Message",
+ "incoming-message": "Gelen İleti",
+ "outgoing-message": "Giden İleti",
"upload-new-sound": "Yeni Ses Yükle",
- "saved": "Settings Saved"
+ "saved": "Ayarlar Kaydedildi"
}
\ No newline at end of file
diff --git a/public/language/tr/admin/manage/categories.json b/public/language/tr/admin/manage/categories.json
index d5cb9e7729..930d9590bf 100644
--- a/public/language/tr/admin/manage/categories.json
+++ b/public/language/tr/admin/manage/categories.json
@@ -1,30 +1,30 @@
{
"settings": "Kategori Ayarları",
- "privileges": "Privileges",
+ "privileges": "İzinler",
"name": "Kategori Adı",
- "description": "Category Description",
- "bg-color": "Background Colour",
+ "description": "Kategori Açıklama",
+ "bg-color": "Arkaplan Rengi",
"text-color": "Yazı Rengi",
"bg-image-size": "Arkaplan Görseli Boyutu",
"custom-class": "Özel Sınıf",
"num-recent-replies": "# of Recent Replies",
- "ext-link": "External Link",
+ "ext-link": "Harici Bağlantı",
"upload-image": "Görsel Yükle",
- "delete-image": "Remove",
- "category-image": "Category Image",
+ "delete-image": "Sil",
+ "category-image": "Kategori Görseli",
"parent-category": "Parent Category",
"optional-parent-category": "(Optional) Parent Category",
- "parent-category-none": "(None)",
+ "parent-category-none": "(Hiçbiri)",
"copy-settings": "Copy Settings From",
"optional-clone-settings": "(Optional) Clone Settings From Category",
"purge": "Purge Category",
- "enable": "Enable",
- "disable": "Disable",
- "edit": "Edit",
+ "enable": "Etkinleştir",
+ "disable": "Devredışı",
+ "edit": "Düzenle",
- "select-category": "Select Category",
+ "select-category": "Kategori Seç",
"set-parent-category": "Set Parent Category",
"privileges.description": "You can configure the access control privileges for this category in this section. Privileges can be granted on a per-user or a per-group basis. You can add a new user to this table by searching for them in the form below.",
@@ -32,27 +32,27 @@
"privileges.section-viewing": "Viewing Privileges",
"privileges.section-posting": "Posting Privileges",
"privileges.section-moderation": "Moderation Privileges",
- "privileges.section-user": "User",
- "privileges.search-user": "Add User",
+ "privileges.section-user": "Kullanıcı",
+ "privileges.search-user": "Kullanıcı Ekle",
"privileges.no-users": "No user-specific privileges in this category.",
- "privileges.section-group": "Group",
- "privileges.group-private": "This group is private",
- "privileges.search-group": "Add Group",
+ "privileges.section-group": "Grup",
+ "privileges.group-private": "Bu grup gizlidir",
+ "privileges.search-group": "Grup Ekle",
"privileges.copy-to-children": "Copy to Children",
"privileges.copy-from-category": "Copy from Category",
"privileges.inherit": "If the registered-users group is granted a specific privilege, all other groups receive an implicit privilege, even if they are not explicitly defined/checked. This implicit privilege is shown to you because all users are part of the registered-users user group, and so, privileges for additional groups need not be explicitly granted.",
- "analytics.back": "Back to Categories List",
+ "analytics.back": "Kategori listesine geri dön",
"analytics.title": "Analytics for \"%1\" category",
"analytics.pageviews-hourly": "Figure 1 – Hourly page views for this category",
"analytics.pageviews-daily": "Figure 2 – Daily page views for this category",
"analytics.topics-daily": "Figure 3 – Daily topics created in this category",
"analytics.posts-daily": "Figure 4 – Daily posts made in this category",
- "alert.created": "Created",
+ "alert.created": "Yaratıldı",
"alert.create-success": "Category successfully created!",
"alert.none-active": "You have no active categories.",
- "alert.create": "Create a Category",
+ "alert.create": "Bir Kategori Yarat",
"alert.confirm-moderate": "Are you sure you wish to grant the moderation privilege to this user group? This group is public, and any users can join at will.",
"alert.confirm-purge": "
Do you really want to purge this category \"%1\"?
Warning! All topics and posts in this category will be purged!
Purging a category will remove all topics and posts, and delete the category from the database. If you want to remove a category temporarily, you'll want to \"disable\" the category instead.
",
"alert.purge-success": "Category purged!",
@@ -61,7 +61,7 @@
"alert.updated": "Updated Categories",
"alert.updated-success": "Category IDs %1 successfully updated.",
"alert.upload-image": "Kategori görseli yükle",
- "alert.find-user": "Find a User",
+ "alert.find-user": "Bir Kullanıcı Ara",
"alert.user-search": "Search for a user here...",
"alert.find-group": "Find a Group",
"alert.group-search": "Search for a group here..."
diff --git a/public/language/tr/admin/manage/users.json b/public/language/tr/admin/manage/users.json
index 0f1a1c7b8d..6cacd0e9b9 100644
--- a/public/language/tr/admin/manage/users.json
+++ b/public/language/tr/admin/manage/users.json
@@ -2,7 +2,7 @@
"users": "Kullanıcılar",
"edit": "Düzenle",
"make-admin": "Yönetici Yap",
- "remove-admin": "Remove Admin",
+ "remove-admin": "Yöneticiliği Sil",
"validate-email": "Validate Email",
"send-validation-email": "Send Validation Email",
"password-reset-email": "Send Password Reset Email",
@@ -10,7 +10,7 @@
"temp-ban": "Ban User(s) Temporarily",
"unban": "Unban User(s)",
"reset-lockout": "Reset Lockout",
- "reset-flags": "Reset Flags",
+ "reset-flags": "Bayrakları Sıfırla",
"delete": "Delete User(s)",
"purge": "Delete User(s) and Content",
"download-csv": "Download CSV",
@@ -24,7 +24,7 @@
"pills.top-rep": "Most Reputation",
"pills.inactive": "Inactive",
"pills.flagged": "Most Flagged",
- "pills.banned": "Banned",
+ "pills.banned": "Yasaklandı",
"pills.search": "User Search",
"search.username": "By User Name",
diff --git a/public/language/tr/admin/settings/sockets.json b/public/language/tr/admin/settings/sockets.json
index 38817dfed4..f0155deb5c 100644
--- a/public/language/tr/admin/settings/sockets.json
+++ b/public/language/tr/admin/settings/sockets.json
@@ -1,6 +1,6 @@
{
"reconnection": "Tekrar Bağlantı Ayarları",
- "max-attempts": "Max Reconnection Attempts",
+ "max-attempts": "Maks Tekrar Bağlanma Denemesi",
"default-placeholder": "Varsayılan: %1",
- "delay": "Reconnection Delay"
+ "delay": "Yeniden Bağlanma Gecikmesi"
}
\ No newline at end of file
diff --git a/public/language/tr/admin/settings/uploads.json b/public/language/tr/admin/settings/uploads.json
index 4daa55400b..b260563c77 100644
--- a/public/language/tr/admin/settings/uploads.json
+++ b/public/language/tr/admin/settings/uploads.json
@@ -8,19 +8,19 @@
"max-file-size-help": "(in kilobytes, default: 2048 KiB)",
"allow-topic-thumbnails": "Allow users to upload topic thumbnails",
"topic-thumb-size": "Topic Thumb Size",
- "allowed-file-extensions": "Allowed File Extensions",
+ "allowed-file-extensions": "İzin Verilen Dosya Uzantıları",
"allowed-file-extensions-help": "Enter comma-separated list of file extensions here (e.g. pdf,xls,doc). An empty list means all extensions are allowed.",
- "profile-avatars": "Profile Avatars",
+ "profile-avatars": "Profil Avatarları",
"allow-profile-image-uploads": "Allow users to upload profile images",
"convert-profile-image-png": "Convert profile image uploads to PNG",
"default-avatar": "Custom Default Avatar",
"upload": "Yükle",
- "profile-image-dimension": "Profile Image Dimension",
- "profile-image-dimension-help": "(in pixels, default: 128 pixels)",
+ "profile-image-dimension": "Profil Resmi Boyutu",
+ "profile-image-dimension-help": "(Piksel cinsinden, varsayılan: 128 piksel)",
"max-profile-image-size": "Maximum Profile Image File Size",
- "max-profile-image-size-help": "(in kilobytes, default: 256 KiB)",
+ "max-profile-image-size-help": "(Kilobayt, varsayılan: 256 KiB)",
"max-cover-image-size": "Maksimum Kapak Görseli Dosya Boyutu",
- "max-cover-image-size-help": "(in kilobytes, default: 2,048 KiB)",
+ "max-cover-image-size-help": "(Kilobayt, varsayılan: 2,048 KiB)",
"keep-all-user-images": "Keep old versions of avatars and profile covers on the server",
"profile-covers": "Profil Kapakları",
"default-covers": "Varsayılan Kapak Görseli",
diff --git a/public/language/tr/email.json b/public/language/tr/email.json
index 4cf508e292..5c1233f451 100644
--- a/public/language/tr/email.json
+++ b/public/language/tr/email.json
@@ -32,9 +32,9 @@
"notif.post.unsub.info": "Bu yazı bildirimi size abonelik ayarlarınız nedeni ile gönderilmiştir.",
"test.text1": "Bu ileti NodeBB e-posta ayarlarınızın doğru çalışıp çalışmadığını kontrol etmek için gönderildi.",
"unsub.cta": "Buraya tıklayarak ayarlarınızı değiştirebilirsiniz.",
- "banned.subject": "You have been banned from %1",
- "banned.text1": "The user %1 has been banned from %2.",
- "banned.text2": "This ban will last until %1.",
- "banned.text3": "This is the reason why you have been banned:",
+ "banned.subject": "%1 'den yasaklandınız",
+ "banned.text1": "%1 kullanıcısı %2 'den yasaklandı.",
+ "banned.text2": "Bu yasak %1 'e kadar sürecek.",
+ "banned.text3": "Yasaklanmanın nedeni:",
"closing": "Teşekkürler!"
}
\ No newline at end of file
diff --git a/public/language/tr/error.json b/public/language/tr/error.json
index 16c3a33815..f52f4aa8ea 100644
--- a/public/language/tr/error.json
+++ b/public/language/tr/error.json
@@ -30,7 +30,7 @@
"password-too-long": "Parola çok uzun",
"user-banned": "Kullanıcı Yasaklı",
"user-banned-reason": "Maalesef, bu hesap yasaklandı (Sebep:% 1)",
- "user-banned-reason-until": "Sorry, this account has been banned until %1 (Reason: %2)",
+ "user-banned-reason-until": "Maalesef, bu hesap %1 kadar yasaklandı (Sebep: %2)",
"user-too-new": "Özür dileriz, ilk iletinizi yapmadan önce %1 saniye beklemeniz gerekiyor",
"blacklisted-ip": "Üzgünüz, IP adresiniz, bu toplulukta yasaklandı. Bunun bir hata olduğunu düşünüyorsanız, bir yönetici ile irtibata geçiniz.",
"ban-expiry-missing": "Bu yasak için bir bitiş tarihi girin",
@@ -105,7 +105,7 @@
"chat-disabled": "Sohbet özelliği kapalı",
"too-many-messages": "Ardı ardına çok fazla mesaj yolladınız, lütfen biraz bekleyiniz.",
"invalid-chat-message": "Geçersiz sohbet mesajı",
- "chat-message-too-long": "Chat messages can not be longer than %1 characters.",
+ "chat-message-too-long": "Sohbet mesajı %1 karakterden daha uzun olamaz.",
"cant-edit-chat-message": "Bu mesajı düzenlemek için izin verilmez",
"cant-remove-last-user": "Son kullanıcıyı silemezsiniz",
"cant-delete-chat-message": "Bu mesajı silmek için izin verilmez",
diff --git a/public/language/tr/flags.json b/public/language/tr/flags.json
index c4bfed6f23..612ccb6500 100644
--- a/public/language/tr/flags.json
+++ b/public/language/tr/flags.json
@@ -1,60 +1,60 @@
{
- "state": "State",
- "reporter": "Reporter",
- "reported-at": "Reported At",
- "description": "Description",
- "no-flags": "Hooray! No flags found.",
- "assignee": "Assignee",
- "update": "Update",
- "updated": "Updated",
- "target-purged": "The content this flag referred to has been purged and is no longer available.",
+ "state": "Bildiri",
+ "reporter": "Muhabir",
+ "reported-at": "Bildirildi",
+ "description": "Açıklama",
+ "no-flags": "Yaşasın! Bayrak bulunamadı.",
+ "assignee": "Vekil",
+ "update": "Güncelle",
+ "updated": "Güncellendi",
+ "target-purged": "İlgili bayrağın içeriği temizlendi ve artık mevcut değil.",
- "quick-filters": "Quick Filters",
- "filter-active": "There are one or more filters active in this list of flags",
- "filter-reset": "Remove Filters",
- "filters": "Filter Options",
- "filter-reporterId": "Reporter UID",
- "filter-targetUid": "Flagged UID",
- "filter-type": "Flag Type",
- "filter-type-all": "All Content",
- "filter-type-post": "Post",
- "filter-state": "State",
- "filter-assignee": "Assignee UID",
- "filter-cid": "Category",
- "filter-quick-mine": "Assigned to me",
- "filter-cid-all": "All categories",
- "apply-filters": "Apply Filters",
+ "quick-filters": "Akıllı Filtre",
+ "filter-active": "Bayraklar listesinde etkin olan bir veya daha fazla filtre var",
+ "filter-reset": "Filtreleri Kaldır",
+ "filters": "Filtre Ayarı",
+ "filter-reporterId": "Muhabir UID",
+ "filter-targetUid": "Bayraklanan UID",
+ "filter-type": "Bayrak Tipi",
+ "filter-type-all": "Bütün İçerik",
+ "filter-type-post": "İleti",
+ "filter-state": "Bildiri",
+ "filter-assignee": "Vekil UID",
+ "filter-cid": "Kategori",
+ "filter-quick-mine": "Vekil atandı",
+ "filter-cid-all": "Bütün Kategoriler",
+ "apply-filters": "Filtreleri Onayla",
- "quick-links": "Quick Links",
- "flagged-user": "Flagged User",
- "view-profile": "View Profile",
- "start-new-chat": "Start New Chat",
- "go-to-target": "View Flag Target",
+ "quick-links": "Akıllı Bağlantılar",
+ "flagged-user": "Bayraklanan Kullanıcı",
+ "view-profile": "Profili Gör",
+ "start-new-chat": "Yeni Sohbet Başlat",
+ "go-to-target": "Bayrak Hedefini Gör",
- "user-view": "View Profile",
- "user-edit": "Edit Profile",
+ "user-view": "Profili Gör",
+ "user-edit": "Profili Düzenle",
- "notes": "Flag Notes",
- "add-note": "Add Note",
- "no-notes": "No shared notes.",
+ "notes": "Bayrak Notu",
+ "add-note": "Not Ekle",
+ "no-notes": "Not paylaşılmadı",
- "history": "Flag History",
- "back": "Back to Flags List",
- "no-history": "No flag history.",
+ "history": "Bayrak Geçmişi",
+ "back": "Bayrak Listesine Geri Dön",
+ "no-history": "Bayrak geçmişi yok",
- "state-all": "All states",
- "state-open": "New/Open",
- "state-wip": "Work in Progress",
- "state-resolved": "Resolved",
- "state-rejected": "Rejected",
- "no-assignee": "Not Assigned",
- "note-added": "Note Added",
+ "state-all": "Bütün Bildiriler",
+ "state-open": "Yeni/Açık",
+ "state-wip": "Yapım Aşamasında",
+ "state-resolved": "Çözüldü",
+ "state-rejected": "Reddedildi",
+ "no-assignee": "Atanmadı",
+ "note-added": "Not eklendi",
- "modal-title": "Report Inappropriate Content",
- "modal-body": "Please specify your reason for flagging %1 %2 for review. Alternatively, use one of the quick report buttons if applicable.",
- "modal-reason-spam": "Spam",
- "modal-reason-offensive": "Offensive",
- "modal-reason-custom": "Reason for reporting this content...",
- "modal-submit": "Submit Report",
- "modal-submit-success": "Content has been flagged for moderation."
+ "modal-title": "Uygunsuz İçeriği Rapor Et",
+ "modal-body": "%1 %2 için bayraklama nedenini belirtin. Alternatif olarak hızlı rapor butonlarından birinini kullanabilirsin.",
+ "modal-reason-spam": "Gereksiz",
+ "modal-reason-offensive": "Saldırgan",
+ "modal-reason-custom": "Bir içeriği bildirme nedeni...",
+ "modal-submit": "Raporu Gönder",
+ "modal-submit-success": "İçerik, denetlemek için bayraklandı."
}
\ No newline at end of file
diff --git a/public/language/tr/modules.json b/public/language/tr/modules.json
index a96b07be46..0ec408ba31 100644
--- a/public/language/tr/modules.json
+++ b/public/language/tr/modules.json
@@ -20,7 +20,7 @@
"chat.three_months": "3 Ay",
"chat.delete_message_confirm": "Bu mesajı silmek istediğinden emin misin?",
"chat.add-users-to-room": "Odaya Kullanıcı Ekle",
- "chat.confirm-chat-with-dnd-user": "This user has set their status to DnD(Do not disturb). Do you still want to chat with them?",
+ "chat.confirm-chat-with-dnd-user": "Bu kullanıcı durumunu rahatsız etmeyin olarak ayarladı. Hala onunla sohbet etmek istiyor musun?",
"composer.compose": "Yaz",
"composer.show_preview": "Önizleme Göster",
"composer.hide_preview": "Önizleme Sakla",
diff --git a/public/language/tr/notifications.json b/public/language/tr/notifications.json
index b4e317f224..dce29e6f2b 100644
--- a/public/language/tr/notifications.json
+++ b/public/language/tr/notifications.json
@@ -40,7 +40,7 @@
"user_started_following_you_multiple": "%1 ve %2 kişi daha seni takip etmeye başladı.",
"new_register": "%1 kayıt olma isteği gönderdi.",
"new_register_multiple": "Beklemede %1 kayıt olma isteği bulunmaktadır.",
- "flag_assigned_to_you": "Flag %1 has been assigned to you",
+ "flag_assigned_to_you": "Bayrak %1 strong> size devredildi",
"email-confirmed": "E-posta onaylandı",
"email-confirmed-message": "E-postanızı onaylandığınız için teşekkürler. Hesabınız tamamen aktive edildi.",
"email-confirm-error-message": "E-posta adresinizi onaylarken bir hata oluştu. Kodunuz geçersiz ya da eski olabilir.",
diff --git a/public/language/uk/admin/advanced/database.json b/public/language/uk/admin/advanced/database.json
index 66b2956c90..3c4dc1cd6f 100644
--- a/public/language/uk/admin/advanced/database.json
+++ b/public/language/uk/admin/advanced/database.json
@@ -1,7 +1,7 @@
{
"x-b": "%1 б",
"x-mb": "%1 мб",
- "x-gb": "%1 gb",
+ "x-gb": "%1 ГБ",
"uptime-seconds": "Uptime в секундах",
"uptime-days": "Uptime в днях",
diff --git a/public/language/uk/admin/general/dashboard.json b/public/language/uk/admin/general/dashboard.json
index a53c7f5ba9..9e90a211ea 100644
--- a/public/language/uk/admin/general/dashboard.json
+++ b/public/language/uk/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Користувачі",
"posts": "Пости",
"topics": "Теми",
- "page-views-last-month": "Переглядів останнього місяця",
- "page-views-this-month": "Переглядів цього місяця",
- "page-views-last-day": "Переглядів за останні 24 години",
+ "page-views-seven": "Останні 7 Днів",
+ "page-views-thirty": "Останні 30 Днів",
+ "page-views-last-day": "Останні 24 Години",
+ "page-views-custom": "Заданий Період",
+ "page-views-custom-start": "Початок Періоду",
+ "page-views-custom-end": "Кінець Періоду",
+ "page-views-custom-help": "Вкажіть календарний період, за який ви хочете побачити переглянуті сторінки. Якщо ви не можете використати селектор дат, допустимий формат дати YYYY-MM-DD",
+ "page-views-custom-error": "Будь-ласка вкажіть календарний період у форматі YYYY-MM-DD",
"stats.day": "День",
"stats.week": "Тиждень",
diff --git a/public/language/uk/admin/manage/groups.json b/public/language/uk/admin/manage/groups.json
index 9758b901c8..d3b65abb46 100644
--- a/public/language/uk/admin/manage/groups.json
+++ b/public/language/uk/admin/manage/groups.json
@@ -1,7 +1,7 @@
{
"name": "Назва групи",
"description": "Опис групи",
- "member-count": "Member Count",
+ "member-count": "Кількість Учасників",
"system": "Системна група",
"edit": "Редагувати",
"search-placeholder": "Пошук",
diff --git a/public/language/uk/admin/manage/users.json b/public/language/uk/admin/manage/users.json
index 9de068acca..e8559022b6 100644
--- a/public/language/uk/admin/manage/users.json
+++ b/public/language/uk/admin/manage/users.json
@@ -18,7 +18,7 @@
"new": "Новий користувач",
"pills.latest": "Останні користувачі",
- "pills.unvalidated": "Не підтвердженні",
+ "pills.unvalidated": "Не підтверджені",
"pills.no-posts": "Без постів",
"pills.top-posters": "Кращі автори",
"pills.top-rep": "Найбільша репутація",
diff --git a/public/language/uk/admin/settings/advanced.json b/public/language/uk/admin/settings/advanced.json
index 4f96f25c9b..e858adf80d 100644
--- a/public/language/uk/admin/settings/advanced.json
+++ b/public/language/uk/admin/settings/advanced.json
@@ -6,7 +6,7 @@
"headers.allow-from": "Задати ALLOW-FROM для розміщення NodeBB в iFrame",
"headers.powered-by": "Налаштувати заголовок \"Powered By\", котрий відправляє NodeBB",
"headers.acao": "Access-Control-Allow-Origin",
- "headers.acao-help": "To deny access to all sites, leave empty",
+ "headers.acao-help": "Щоб заборонити доступ до всіх сайтів, залиште незаповненим",
"headers.acam": "Access-Control-Allow-Methods",
"headers.acah": "Access-Control-Allow-Headers",
"traffic-management": "Керування трафіком",
diff --git a/public/language/uk/admin/settings/post.json b/public/language/uk/admin/settings/post.json
index ea770e1463..0be4036412 100644
--- a/public/language/uk/admin/settings/post.json
+++ b/public/language/uk/admin/settings/post.json
@@ -29,8 +29,8 @@
"unread": "Налаштування непрочитаних",
"unread.cutoff": "За скільки днів показувати непрочитані",
"unread.min-track-last": "Мінімальна кількість постів у темі перш ніж відслідковувати останні прочитані",
- "recent": "Recent Settings",
- "recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
+ "recent": "Останні Налаштування",
+ "recent.categoryFilter.disable": "Відключити фільтрування тем в ігнорованих категоріях на сторінці /recent",
"signature": "Налаштування підписів",
"signature.disable": "Вимкнути підписи",
"signature.no-links": "Вимкнути посилання в підписах",
diff --git a/public/language/uk/admin/settings/user.json b/public/language/uk/admin/settings/user.json
index dc463f9ecd..cdcff8f963 100644
--- a/public/language/uk/admin/settings/user.json
+++ b/public/language/uk/admin/settings/user.json
@@ -37,7 +37,7 @@
"min-username-length": "Мінімальна довжина імені користувача",
"max-username-length": "Максимальна довжина імені користувача",
"min-password-length": "Мінімальна довжина пароля",
- "min-password-strength": "Minimum Password Strength",
+ "min-password-strength": "Мінімальна Довжина Паролю",
"max-about-me-length": "Максимальна довжина розділу \"Про мене\"",
"terms-of-use": "Умови користування форумом (Залиште пустим, щоб вимкнути)",
"user-search": "Пошук користувачів",
diff --git a/public/language/uk/email.json b/public/language/uk/email.json
index 236a1f3978..eddbf7c236 100644
--- a/public/language/uk/email.json
+++ b/public/language/uk/email.json
@@ -32,9 +32,9 @@
"notif.post.unsub.info": "Це поштове повідомлення було вислано вам, згідно ваших налаштувань підписки",
"test.text1": "Це пробний лист для верифікації поштової служби. Всі налаштування вірні для NodeBB.",
"unsub.cta": "Натисніть тут, щоб змінити ці налаштування",
- "banned.subject": "You have been banned from %1",
- "banned.text1": "The user %1 has been banned from %2.",
- "banned.text2": "This ban will last until %1.",
- "banned.text3": "This is the reason why you have been banned:",
+ "banned.subject": "Ви були забанені на %1",
+ "banned.text1": "Користувач %1 був забанений на %2.",
+ "banned.text2": "Тривалість бану - до %1.",
+ "banned.text3": "Це причина, чому ви були забанені:",
"closing": "Дякуємо!"
}
\ No newline at end of file
diff --git a/public/language/uk/error.json b/public/language/uk/error.json
index 2cc9650c8e..0ae2e3a6f2 100644
--- a/public/language/uk/error.json
+++ b/public/language/uk/error.json
@@ -30,7 +30,7 @@
"password-too-long": "Пароль задовгий",
"user-banned": "Користувача забанено",
"user-banned-reason": "Вибачте, але цей акаунт було забанено (Причина: %1)",
- "user-banned-reason-until": "Sorry, this account has been banned until %1 (Reason: %2)",
+ "user-banned-reason-until": "Вибачте, цей акаунт забанений до %1 (Причина: %2)",
"user-too-new": "Вибачте, але вам необхідно зачекати %1 секунд(и), перед першим постом",
"blacklisted-ip": "Вибачте, але ваша IP-адреса була забанена в цій спільноті. Якщо ви гадаєте, що це сталось помилково, зв'яжіться з адміністратором.",
"ban-expiry-missing": "Вкажіть, будь ласка, кінцеву дату бану",
@@ -105,7 +105,7 @@
"chat-disabled": "Чат вимкнено",
"too-many-messages": "Ви надіслали забагато повідомлень, зачекайте трішки.",
"invalid-chat-message": "Невірне повідомлення чату",
- "chat-message-too-long": "Chat messages can not be longer than %1 characters.",
+ "chat-message-too-long": "Повідомлення чату не можуть бути довшими за %1 символів.",
"cant-edit-chat-message": "Ви не можете редагувати повідомлення",
"cant-remove-last-user": "Ви не можете видалити останнього користувача",
"cant-delete-chat-message": "Ви не можете видалити це повідомлення",
diff --git a/public/language/uk/modules.json b/public/language/uk/modules.json
index 6cb7697cc5..ef440ec8ff 100644
--- a/public/language/uk/modules.json
+++ b/public/language/uk/modules.json
@@ -20,7 +20,7 @@
"chat.three_months": "3 місяці",
"chat.delete_message_confirm": "Ви впевнені, що хочете видалити це повідомлення?",
"chat.add-users-to-room": "Додати користувачів до кімнати",
- "chat.confirm-chat-with-dnd-user": "This user has set their status to DnD(Do not disturb). Do you still want to chat with them?",
+ "chat.confirm-chat-with-dnd-user": "Користувач змінив свій статус на DnD (Не турбувати). Ви дійсно бажаєте надіслати йому повідомлення в чат?",
"composer.compose": "Редактор повідомлень",
"composer.show_preview": "Показати попередній перегляд",
"composer.hide_preview": "Сховати попередній перегляд",
diff --git a/public/language/uk/topic.json b/public/language/uk/topic.json
index 111efb25d9..b936e85ea5 100644
--- a/public/language/uk/topic.json
+++ b/public/language/uk/topic.json
@@ -30,7 +30,7 @@
"pinned": "Закріплена",
"moved": "Переміщена",
"bookmark_instructions": "Натисніть тут, щоб повернутися до останнього прочитаного посту у цій темі.",
- "flag_title": "Поскаржитись цей пост модератору",
+ "flag_title": "Поскаржитись на цей пост модератору",
"deleted_message": "Цю тему було видалено. Лише користувачі з правом керування темами можуть її бачити.",
"following_topic.message": "Відтепер ви будете отримувати сповіщення коли хтось постить в цю тему.",
"not_following_topic.message": "Ви будете бачити цю тему в списку непрочитаних, але ви не будете отримувати сповіщень, коли хтось постить до неї.",
diff --git a/public/language/uk/user.json b/public/language/uk/user.json
index 0d5e93857f..20d3dfe51f 100644
--- a/public/language/uk/user.json
+++ b/public/language/uk/user.json
@@ -60,7 +60,7 @@
"username_taken_workaround": "Ім'я користувача, що ви обрали, вже було зайняте, то ж ми його трішки змінили. Ви тепер відомі як %1",
"password_same_as_username": "Ваш пароль співпадає з іменем користувача. Оберіть інший пароль, будь ласка.",
"password_same_as_email": "Ваш пароль співпадає з електронною поштою. Оберіть інший пароль, будь ласка.",
- "weak_password": "Weak password.",
+ "weak_password": "Слабкий пароль",
"upload_picture": "Завантажити зображення",
"upload_a_picture": "Завантажити зображення",
"remove_uploaded_picture": "Видалити завантажене зображення",
diff --git a/public/language/vi/admin/general/dashboard.json b/public/language/vi/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/vi/admin/general/dashboard.json
+++ b/public/language/vi/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/zh-CN/admin/general/dashboard.json b/public/language/zh-CN/admin/general/dashboard.json
index 9a17c65e68..b99b3b2bcf 100644
--- a/public/language/zh-CN/admin/general/dashboard.json
+++ b/public/language/zh-CN/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "用户",
"posts": "发帖",
"topics": "主题",
- "page-views-last-month": "上个月 PV 数量",
- "page-views-this-month": "本月 PV 数量",
- "page-views-last-day": "过去24小时 PV 数量",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "日",
"stats.week": "周",
diff --git a/public/language/zh-CN/flags.json b/public/language/zh-CN/flags.json
index c4bfed6f23..189330bdfd 100644
--- a/public/language/zh-CN/flags.json
+++ b/public/language/zh-CN/flags.json
@@ -1,60 +1,60 @@
{
- "state": "State",
- "reporter": "Reporter",
- "reported-at": "Reported At",
- "description": "Description",
- "no-flags": "Hooray! No flags found.",
- "assignee": "Assignee",
- "update": "Update",
- "updated": "Updated",
- "target-purged": "The content this flag referred to has been purged and is no longer available.",
+ "state": "状态",
+ "reporter": "举报人",
+ "reported-at": "举报于",
+ "description": "描述",
+ "no-flags": "啊哈!没发现任何的举报。",
+ "assignee": "受委托人",
+ "update": "更新",
+ "updated": "已更新",
+ "target-purged": "被举报的内容已经被清除,不再可用。",
- "quick-filters": "Quick Filters",
- "filter-active": "There are one or more filters active in this list of flags",
- "filter-reset": "Remove Filters",
- "filters": "Filter Options",
- "filter-reporterId": "Reporter UID",
- "filter-targetUid": "Flagged UID",
- "filter-type": "Flag Type",
- "filter-type-all": "All Content",
- "filter-type-post": "Post",
- "filter-state": "State",
- "filter-assignee": "Assignee UID",
- "filter-cid": "Category",
- "filter-quick-mine": "Assigned to me",
- "filter-cid-all": "All categories",
- "apply-filters": "Apply Filters",
+ "quick-filters": "快速过滤器",
+ "filter-active": "该列中有一个或更多激活的过滤器",
+ "filter-reset": "删除过滤器",
+ "filters": "过滤器选项",
+ "filter-reporterId": "举报者UID",
+ "filter-targetUid": "被举报者 UID",
+ "filter-type": "举报类型",
+ "filter-type-all": "所有内容",
+ "filter-type-post": "帖子",
+ "filter-state": "状态",
+ "filter-assignee": "受委托人 UID",
+ "filter-cid": "版块",
+ "filter-quick-mine": "委托给我",
+ "filter-cid-all": "全部版块",
+ "apply-filters": "应用过滤器",
- "quick-links": "Quick Links",
- "flagged-user": "Flagged User",
- "view-profile": "View Profile",
- "start-new-chat": "Start New Chat",
- "go-to-target": "View Flag Target",
+ "quick-links": "快速链接",
+ "flagged-user": "被举报的用户",
+ "view-profile": "查看个人资料",
+ "start-new-chat": "开始新会话",
+ "go-to-target": "查看举报目标",
- "user-view": "View Profile",
- "user-edit": "Edit Profile",
+ "user-view": "查看资料",
+ "user-edit": "编辑资料",
- "notes": "Flag Notes",
- "add-note": "Add Note",
- "no-notes": "No shared notes.",
+ "notes": "举报备注",
+ "add-note": "添加备注",
+ "no-notes": "没有共享的备注内容。",
- "history": "Flag History",
- "back": "Back to Flags List",
- "no-history": "No flag history.",
+ "history": "举报历史",
+ "back": "返回举报列表",
+ "no-history": "没有举报历史。",
- "state-all": "All states",
- "state-open": "New/Open",
- "state-wip": "Work in Progress",
- "state-resolved": "Resolved",
- "state-rejected": "Rejected",
- "no-assignee": "Not Assigned",
- "note-added": "Note Added",
+ "state-all": "所有状态",
+ "state-open": "新建/打开",
+ "state-wip": "正在处理",
+ "state-resolved": "已解决",
+ "state-rejected": "已拒绝",
+ "no-assignee": "未指派",
+ "note-added": "备注已添加",
- "modal-title": "Report Inappropriate Content",
- "modal-body": "Please specify your reason for flagging %1 %2 for review. Alternatively, use one of the quick report buttons if applicable.",
- "modal-reason-spam": "Spam",
- "modal-reason-offensive": "Offensive",
- "modal-reason-custom": "Reason for reporting this content...",
- "modal-submit": "Submit Report",
- "modal-submit-success": "Content has been flagged for moderation."
+ "modal-title": "举报不适内容",
+ "modal-body": "请选择或者输入您举报 %1%2 的原因以便版主进行审核。",
+ "modal-reason-spam": "垃圾信息",
+ "modal-reason-offensive": "人身攻击",
+ "modal-reason-custom": "举报此内容的理由……",
+ "modal-submit": "提交举报",
+ "modal-submit-success": "已举报此内容。"
}
\ No newline at end of file
diff --git a/public/language/zh-TW/admin/appearance/themes.json b/public/language/zh-TW/admin/appearance/themes.json
index 3148a01337..6a3008132b 100644
--- a/public/language/zh-TW/admin/appearance/themes.json
+++ b/public/language/zh-TW/admin/appearance/themes.json
@@ -1,11 +1,11 @@
{
- "checking-for-installed": "Checking for installed themes...",
- "homepage": "Homepage",
- "select-theme": "Select Theme",
- "current-theme": "Current Theme",
- "no-themes": "No installed themes found",
- "revert-confirm": "Are you sure you wish to restore the default NodeBB theme?",
- "theme-changed": "Theme Changed",
- "revert-success": "You have successfully reverted your NodeBB back to it's default theme.",
- "restart-to-activate": "Please restart your NodeBB to fully activate this theme"
+ "checking-for-installed": "正在載入已安裝的主題...",
+ "homepage": "首頁",
+ "select-theme": "選擇主題",
+ "current-theme": "目前的主題",
+ "no-themes": "沒有找到任何已安裝的主題",
+ "revert-confirm": "你確定要回復預設的主題嗎?",
+ "theme-changed": "主題已更換",
+ "revert-success": "已經成功回復為預設主題。",
+ "restart-to-activate": "請重新啟動你的NodeBB以啟動主題。"
}
\ No newline at end of file
diff --git a/public/language/zh-TW/admin/extend/plugins.json b/public/language/zh-TW/admin/extend/plugins.json
index 1661a987b7..cb19a6761d 100644
--- a/public/language/zh-TW/admin/extend/plugins.json
+++ b/public/language/zh-TW/admin/extend/plugins.json
@@ -1,45 +1,45 @@
{
- "installed": "Installed",
- "active": "Active",
- "inactive": "Inactive",
- "out-of-date": "Out of Date",
- "none-found": "No plugins found.",
- "none-active": "No Active Plugins",
- "find-plugins": "Find Plugins",
+ "installed": "已安裝",
+ "active": "已啟用",
+ "inactive": "未啟用",
+ "out-of-date": "需要更新",
+ "none-found": "沒有找到外掛。",
+ "none-active": "沒有啟用中的外掛。",
+ "find-plugins": "搜尋外掛",
- "plugin-search": "Plugin Search",
- "plugin-search-placeholder": "Search for plugin...",
- "reorder-plugins": "Re-order Plugins",
- "order-active": "Order Active Plugins",
- "dev-interested": "Interested in writing plugins for NodeBB?",
+ "plugin-search": "搜尋外掛",
+ "plugin-search-placeholder": "搜尋想找的外掛...",
+ "reorder-plugins": "重新排序",
+ "order-active": "排序已啟用的外掛",
+ "dev-interested": "對開發NodeBB的外掛有興趣嗎?",
"docs-info": "Full documentation regarding plugin authoring can be found in the NodeBB Docs Portal.",
"order.description": "Certain plugins work ideally when they are initialised before/after other plugins.",
"order.explanation": "Plugins load in the order specified here, from top to bottom",
- "plugin-item.themes": "Themes",
- "plugin-item.deactivate": "Deactivate",
- "plugin-item.activate": "Activate",
- "plugin-item.install": "Install",
- "plugin-item.uninstall": "Uninstall",
- "plugin-item.settings": "Settings",
- "plugin-item.installed": "Installed",
- "plugin-item.latest": "Latest",
- "plugin-item.upgrade": "Upgrade",
- "plugin-item.more-info": "For more information:",
- "plugin-item.unknown": "Unknown",
- "plugin-item.unknown-explanation": "The state of this plugin could not be determined, possibly due to a misconfiguration error.",
+ "plugin-item.themes": "佈景主題",
+ "plugin-item.deactivate": "停用",
+ "plugin-item.activate": "啟用",
+ "plugin-item.install": "安裝",
+ "plugin-item.uninstall": "解除安裝",
+ "plugin-item.settings": "設定",
+ "plugin-item.installed": "已安裝",
+ "plugin-item.latest": "最新",
+ "plugin-item.upgrade": "升級",
+ "plugin-item.more-info": "更多資訊:",
+ "plugin-item.unknown": "未知",
+ "plugin-item.unknown-explanation": "無法取得此外掛的狀態,可能是由於設置錯誤。",
- "alert.enabled": "Plugin Enabled",
- "alert.disabled": "Plugin Disabled",
- "alert.upgraded": "Plugin Upgraded",
- "alert.installed": "Plugin Installed",
- "alert.uninstalled": "Plugin Uninstalled",
- "alert.activate-success": "Please restart your NodeBB to fully activate this plugin",
- "alert.deactivate-success": "Plugin successfully deactivated",
- "alert.upgrade-success": "Please reload your NodeBB to fully upgrade this plugin",
- "alert.install-success": "Plugin successfully installed, please activate the plugin.",
- "alert.uninstall-success": "The plugin has been successfully deactivated and uninstalled.",
+ "alert.enabled": "外掛已啟用",
+ "alert.disabled": "外掛已停用",
+ "alert.upgraded": "外掛已升級",
+ "alert.installed": "外掛已安裝",
+ "alert.uninstalled": "外掛已移除",
+ "alert.activate-success": "請重新啟動你的NodeBB來完成外掛的啟用",
+ "alert.deactivate-success": "外掛已成功停用",
+ "alert.upgrade-success": "請重新載入你的NodeBB來完成外掛的升級",
+ "alert.install-success": "外掛已成功安裝,請啟用外掛。",
+ "alert.uninstall-success": "外掛已成功停用並且移除。",
"alert.suggest-error": "
NodeBB could not reach the package manager, proceed with installation of latest version?
Server returned (%1): %2
",
"alert.package-manager-unreachable": "
NodeBB could not reach the package manager, an upgrade is not suggested at this time.
",
"alert.incompatible": "
Your version of NodeBB (v%1) is only cleared to upgrade to v%2 of this plugin. Please update your NodeBB if you wish to install a newer version of this plugin.
",
diff --git a/public/language/zh-TW/admin/extend/rewards.json b/public/language/zh-TW/admin/extend/rewards.json
index 5383a90b33..eb554e441c 100644
--- a/public/language/zh-TW/admin/extend/rewards.json
+++ b/public/language/zh-TW/admin/extend/rewards.json
@@ -1,15 +1,15 @@
{
- "rewards": "Rewards",
- "condition-if-users": "If User's",
- "condition-is": "Is:",
- "condition-then": "Then:",
- "max-claims": "Amount of times reward is claimable",
- "zero-infinite": "Enter 0 for infinite",
- "delete": "Delete",
- "enable": "Enable",
- "disable": "Disable",
- "control-panel": "Rewards Control",
- "new-reward": "New Reward",
+ "rewards": "獎勵",
+ "condition-if-users": "若用戶的",
+ "condition-is": "為:",
+ "condition-then": "那麼:",
+ "max-claims": "獎勵可以領取的次數",
+ "zero-infinite": "輸入 0 表示不限",
+ "delete": "刪除",
+ "enable": "啟用",
+ "disable": "停用",
+ "control-panel": "獎勵設定",
+ "new-reward": "新的獎勵",
"alert.delete-success": "Successfully deleted reward",
"alert.no-inputs-found": "Illegal reward - no inputs found!",
diff --git a/public/language/zh-TW/admin/general/dashboard.json b/public/language/zh-TW/admin/general/dashboard.json
index 02046bd17a..61f4421fb5 100644
--- a/public/language/zh-TW/admin/general/dashboard.json
+++ b/public/language/zh-TW/admin/general/dashboard.json
@@ -5,9 +5,14 @@
"users": "Users",
"posts": "Posts",
"topics": "Topics",
- "page-views-last-month": "Page views Last Month",
- "page-views-this-month": "Page views This Month",
- "page-views-last-day": "Page views in last 24 hours",
+ "page-views-seven": "Last 7 Days",
+ "page-views-thirty": "Last 30 Days",
+ "page-views-last-day": "Last 24 hours",
+ "page-views-custom": "Custom Date Range",
+ "page-views-custom-start": "Range Start",
+ "page-views-custom-end": "Range End",
+ "page-views-custom-help": "Enter a date range of page views you would like to view. If no date picker is available, the accepted format is YYYY-MM-DD",
+ "page-views-custom-error": "Please enter a valid date range in the format YYYY-MM-DD",
"stats.day": "Day",
"stats.week": "Week",
diff --git a/public/language/zh-TW/flags.json b/public/language/zh-TW/flags.json
index c4bfed6f23..ff94526eac 100644
--- a/public/language/zh-TW/flags.json
+++ b/public/language/zh-TW/flags.json
@@ -2,14 +2,14 @@
"state": "State",
"reporter": "Reporter",
"reported-at": "Reported At",
- "description": "Description",
+ "description": "描述",
"no-flags": "Hooray! No flags found.",
"assignee": "Assignee",
- "update": "Update",
+ "update": "更新",
"updated": "Updated",
"target-purged": "The content this flag referred to has been purged and is no longer available.",
- "quick-filters": "Quick Filters",
+ "quick-filters": "快速篩選",
"filter-active": "There are one or more filters active in this list of flags",
"filter-reset": "Remove Filters",
"filters": "Filter Options",
@@ -17,12 +17,12 @@
"filter-targetUid": "Flagged UID",
"filter-type": "Flag Type",
"filter-type-all": "All Content",
- "filter-type-post": "Post",
+ "filter-type-post": "文章",
"filter-state": "State",
"filter-assignee": "Assignee UID",
- "filter-cid": "Category",
+ "filter-cid": "分類",
"filter-quick-mine": "Assigned to me",
- "filter-cid-all": "All categories",
+ "filter-cid-all": "所有分類",
"apply-filters": "Apply Filters",
"quick-links": "Quick Links",
@@ -50,10 +50,10 @@
"no-assignee": "Not Assigned",
"note-added": "Note Added",
- "modal-title": "Report Inappropriate Content",
+ "modal-title": "回報不適當的內容",
"modal-body": "Please specify your reason for flagging %1 %2 for review. Alternatively, use one of the quick report buttons if applicable.",
- "modal-reason-spam": "Spam",
- "modal-reason-offensive": "Offensive",
+ "modal-reason-spam": "垃圾評論",
+ "modal-reason-offensive": "惡意評論",
"modal-reason-custom": "Reason for reporting this content...",
"modal-submit": "Submit Report",
"modal-submit-success": "Content has been flagged for moderation."
diff --git a/public/language/zh-TW/user.json b/public/language/zh-TW/user.json
index 3a1874a4a4..cc6df85986 100644
--- a/public/language/zh-TW/user.json
+++ b/public/language/zh-TW/user.json
@@ -60,14 +60,14 @@
"username_taken_workaround": "你想要註冊的帳號已經被使用了,所以我們將它略作改變。你現在的帳號名稱是 %1",
"password_same_as_username": "你的密碼和帳號是一樣的,請選擇另一組密碼。",
"password_same_as_email": "你的密碼和電子郵件是一樣的,請選擇另一組密碼。",
- "weak_password": "Weak password.",
+ "weak_password": "密碼強度過弱。",
"upload_picture": "上傳頭像",
"upload_a_picture": "上傳一張照片",
"remove_uploaded_picture": "移除上傳的圖片",
"upload_cover_picture": "上傳封面圖片",
- "remove_cover_picture_confirm": "Are you sure you want to remove the cover picture?",
- "crop_picture": "Crop picture",
- "upload_cropped_picture": "Crop and upload",
+ "remove_cover_picture_confirm": "你確定要移除封面圖片嗎?",
+ "crop_picture": "裁切圖片",
+ "upload_cropped_picture": "裁切並且上傳",
"settings": "設定",
"show_email": "顯示我的電子郵件地址",
"show_fullname": "顯示我的全名",
@@ -99,7 +99,7 @@
"incoming-message-sound": "收到訊息音效",
"outgoing-message-sound": "發出訊息音效",
"notification-sound": "通知音效",
- "no-sound": "No sound",
+ "no-sound": "沒有聲音",
"browsing": "瀏覽設定",
"open_links_in_new_tab": "在新的資料標籤裡打開外部的連結",
"enable_topic_searching": "啟用在主題中的搜尋",
diff --git a/public/less/admin/admin.less b/public/less/admin/admin.less
index a37682ab83..8f713028ed 100644
--- a/public/less/admin/admin.less
+++ b/public/less/admin/admin.less
@@ -1,4 +1,4 @@
-@import "../../node_modules/bootstrap/less/bootstrap";
+@import "bootstrap/less/bootstrap";
@import "./paper/variables";
@import "./paper/bootswatch";
@import "./mixins";
diff --git a/public/less/admin/general/dashboard.less b/public/less/admin/general/dashboard.less
index 12e542e32a..6bbb49fc86 100644
--- a/public/less/admin/general/dashboard.less
+++ b/public/less/admin/general/dashboard.less
@@ -130,8 +130,6 @@
}
.pageview-stats {
- width:33%;
-
strong {
font-size: 22px;
}
diff --git a/public/src/admin/appearance/customise.js b/public/src/admin/appearance/customise.js
index 268d8480af..e95ea5ba30 100644
--- a/public/src/admin/appearance/customise.js
+++ b/public/src/admin/appearance/customise.js
@@ -28,6 +28,12 @@ define('admin/appearance/customise', ['admin/settings', 'ace/ace'], function (Se
app.flags._unsaved = true;
$('#customHTML-holder').val(customHTML.getValue());
});
+
+ $('#save').on('click', function () {
+ if ($('#enableLiveReload').is(':checked')) {
+ socket.emit('admin.reloadAllSessions');
+ }
+ });
});
};
diff --git a/public/src/admin/general/dashboard.js b/public/src/admin/general/dashboard.js
index 71ad4e3738..6b544ae29c 100644
--- a/public/src/admin/general/dashboard.js
+++ b/public/src/admin/general/dashboard.js
@@ -294,17 +294,70 @@ define('admin/general/dashboard', ['semver', 'Chart', 'translator'], function (s
$(window).on('resize', adjustPieCharts);
adjustPieCharts();
- $('[data-action="updateGraph"]').on('click', function () {
- var until;
- switch ($(this).attr('data-until')) {
- case 'last-month':
- var lastMonth = new Date();
- lastMonth.setDate(lastMonth.getDate() - 30);
- until = lastMonth.getTime();
+ $('[data-action="updateGraph"]:not([data-units="custom"])').on('click', function () {
+ var until = new Date();
+ var amount = $(this).attr('data-amount');
+ if ($(this).attr('data-units') === 'days') {
+ until.setHours(0, 0, 0, 0);
}
- updateTrafficGraph($(this).attr('data-units'), until);
+ until = until.getTime();
+ updateTrafficGraph($(this).attr('data-units'), until, amount);
$('[data-action="updateGraph"]').removeClass('active');
$(this).addClass('active');
+
+ require(['translator'], function (translator) {
+ translator.translate('[[admin/general/dashboard:page-views-custom]]', function (translated) {
+ $('[data-action="updateGraph"][data-units="custom"]').text(translated);
+ });
+ });
+ });
+ $('[data-action="updateGraph"][data-units="custom"]').on('click', function () {
+ var targetEl = $(this);
+
+ templates.parse('admin/partials/pageviews-range-select', {}, function (html) {
+ var modal = bootbox.dialog({
+ title: '[[admin/general/dashboard:page-views-custom]]',
+ message: html,
+ buttons: {
+ submit: {
+ label: '[[global:search]]',
+ className: 'btn-primary',
+ callback: submit,
+ },
+ },
+ });
+
+ function submit() {
+ // NEED TO ADD VALIDATION HERE FOR YYYY-MM-DD
+ var formData = modal.find('form').serializeObject();
+ var validRegexp = /\d{4}-\d{2}-\d{2}/;
+
+ // Input validation
+ if (!formData.startRange && !formData.endRange) {
+ // No range? Assume last 30 days
+ updateTrafficGraph('days');
+ $('[data-action="updateGraph"]').removeClass('active');
+ $('[data-action="updateGraph"][data-units="days"]').addClass('active');
+ return;
+ } else if (!validRegexp.test(formData.startRange) || !validRegexp.test(formData.endRange)) {
+ // Invalid Input
+ modal.find('.alert-danger').removeClass('hidden');
+ return false;
+ }
+
+ var until = new Date(formData.endRange);
+ until.setDate(until.getDate() + 1);
+ until = until.getTime();
+ var amount = (until - new Date(formData.startRange).getTime()) / (1000 * 60 * 60 * 24);
+
+ updateTrafficGraph('days', until, amount);
+ $('[data-action="updateGraph"]').removeClass('active');
+ targetEl.addClass('active');
+
+ // Update "custom range" label
+ targetEl.html(formData.startRange + ' – ' + formData.endRange);
+ }
+ });
});
socket.emit('admin.rooms.getAll', Admin.updateRoomUsage);
@@ -325,7 +378,9 @@ define('admin/general/dashboard', ['semver', 'Chart', 'translator'], function (s
});
}
- function updateTrafficGraph(units, until) {
+ function updateTrafficGraph(units, until, amount) {
+ // until and amount are optional
+
if (!app.isFocused) {
return;
}
@@ -334,6 +389,7 @@ define('admin/general/dashboard', ['semver', 'Chart', 'translator'], function (s
graph: 'traffic',
units: units || 'hours',
until: until,
+ amount: amount,
}, function (err, data) {
if (err) {
return app.alertError(err.message);
@@ -345,15 +401,15 @@ define('admin/general/dashboard', ['semver', 'Chart', 'translator'], function (s
graphData.traffic = data;
if (units === 'days') {
- graphs.traffic.data.xLabels = utils.getDaysArray(until);
+ graphs.traffic.data.xLabels = utils.getDaysArray(until, amount);
} else {
graphs.traffic.data.xLabels = utils.getHoursArray();
- $('#pageViewsThisMonth').html(data.monthlyPageViews.thisMonth);
- $('#pageViewsLastMonth').html(data.monthlyPageViews.lastMonth);
+ $('#pageViewsThirty').html(data.summary.thirty);
+ $('#pageViewsSeven').html(data.summary.seven);
$('#pageViewsPastDay').html(data.pastDay);
- utils.addCommasToNumbers($('#pageViewsThisMonth'));
- utils.addCommasToNumbers($('#pageViewsLastMonth'));
+ utils.addCommasToNumbers($('#pageViewsThirty'));
+ utils.addCommasToNumbers($('#pageViewsSeven'));
utils.addCommasToNumbers($('#pageViewsPastDay'));
}
@@ -364,6 +420,7 @@ define('admin/general/dashboard', ['semver', 'Chart', 'translator'], function (s
graphs.traffic.update();
currentGraph.units = units;
currentGraph.until = until;
+ currentGraph.amount = amount;
});
}
@@ -450,7 +507,7 @@ define('admin/general/dashboard', ['semver', 'Chart', 'translator'], function (s
}, realtime ? DEFAULTS.realtimeInterval : DEFAULTS.roomInterval);
intervals.graphs = setInterval(function () {
- updateTrafficGraph(currentGraph.units, currentGraph.until);
+ updateTrafficGraph(currentGraph.units, currentGraph.until, currentGraph.amount);
}, realtime ? DEFAULTS.realtimeInterval : DEFAULTS.graphInterval);
}
diff --git a/public/src/admin/manage/category.js b/public/src/admin/manage/category.js
index 22fc5d77ec..1dbd31aaac 100644
--- a/public/src/admin/manage/category.js
+++ b/public/src/admin/manage/category.js
@@ -12,25 +12,15 @@ define('admin/manage/category', [
var modified_categories = {};
Category.init = function () {
- var modified_categories = {};
-
- function modified(el) {
- var cid = $(el).parents('form').attr('data-cid');
-
- if (cid) {
- modified_categories[cid] = modified_categories[cid] || {};
- modified_categories[cid][$(el).attr('data-name')] = $(el).val();
-
- app.flags = app.flags || {};
- app.flags._unsaved = true;
- }
- }
-
- $('.blockclass, form.category select').each(function () {
+ $('#category-settings select').each(function () {
var $this = $(this);
$this.val($this.attr('data-value'));
});
+ $('#category-selector').on('change', function () {
+ ajaxify.go('admin/manage/categories/' + $(this).val());
+ });
+
function enableColorPicker(idx, inputEl) {
var $inputEl = $(inputEl);
var previewEl = $inputEl.parents('[data-cid]').find('.category-preview');
@@ -47,7 +37,7 @@ define('admin/manage/category', [
}
- $('form.category input, form.category select').not($('.privilege-table-container input'))
+ $('#category-settings input, #category-settings select').not($('.privilege-table-container input'))
.on('change', function (ev) {
modified(ev.target);
})
@@ -452,6 +442,5 @@ define('admin/manage/category', [
});
}
-
return Category;
});
diff --git a/public/src/admin/settings/email.js b/public/src/admin/settings/email.js
index d25fa05c30..d6a1983102 100644
--- a/public/src/admin/settings/email.js
+++ b/public/src/admin/settings/email.js
@@ -8,6 +8,7 @@ define('admin/settings/email', ['ace/ace', 'admin/settings'], function (ace) {
module.init = function () {
configureEmailTester();
configureEmailEditor();
+ handleDigestHourChange();
$(window).on('action:admin.settingsLoaded action:admin.settingsSaved', handleDigestHourChange);
$(window).on('action:admin.settingsSaved', function () {
diff --git a/public/src/app.js b/public/src/app.js
index 81ebe4f891..ccd324b68c 100644
--- a/public/src/app.js
+++ b/public/src/app.js
@@ -72,6 +72,11 @@ app.cacheBuster = null;
});
}
});
+ socket.on('event:livereload', function () {
+ if (app.user.isAdmin && !ajaxify.currentPage.match(/admin/)) {
+ window.location.reload();
+ }
+ });
require(['taskbar', 'helpers', 'forum/pagination'], function (taskbar, helpers, pagination) {
taskbar.init();
diff --git a/public/src/client/account/edit.js b/public/src/client/account/edit.js
index 02c1e57200..dd8cbd8406 100644
--- a/public/src/client/account/edit.js
+++ b/public/src/client/account/edit.js
@@ -60,7 +60,9 @@ define('forum/account/edit', ['forum/account/header', 'translator', 'components'
if (parseInt(ajaxify.data.theirid, 10) !== parseInt(ajaxify.data.yourid, 10)) {
return;
}
-
+ if (!picture && ajaxify.data.defaultAvatar) {
+ picture = ajaxify.data.defaultAvatar;
+ }
components.get('header/userpicture')[picture ? 'show' : 'hide']();
components.get('header/usericon')[!picture ? 'show' : 'hide']();
if (picture) {
@@ -85,6 +87,8 @@ define('forum/account/edit', ['forum/account/header', 'translator', 'components'
templates.parse('partials/modals/change_picture_modal', {
pictures: pictures,
uploaded: uploaded,
+ icon: { text: ajaxify.data['icon:text'], bgColor: ajaxify.data['icon:bgColor'] },
+ defaultAvatar: ajaxify.data.defaultAvatar,
allowProfileImageUploads: ajaxify.data.allowProfileImageUploads,
}, function (html) {
translator.translate(html, function (html) {
@@ -115,12 +119,6 @@ define('forum/account/edit', ['forum/account/header', 'translator', 'components'
handleImageUpload(modal);
function updateImages() {
- var userIcon = modal.find('.user-icon');
-
- userIcon
- .css('background-color', ajaxify.data['icon:bgColor'])
- .text(ajaxify.data['icon:text']);
-
// Check to see which one is the active picture
if (!ajaxify.data.picture) {
modal.find('.list-group-item .user-icon').parents('.list-group-item').addClass('active');
@@ -219,8 +217,6 @@ define('forum/account/edit', ['forum/account/header', 'translator', 'components'
paramValue: ajaxify.data.theirid,
fileSize: ajaxify.data.maximumProfileImageSize,
allowSkippingCrop: false,
- restrictImageDimension: true,
- imageDimension: ajaxify.data.profileImageDimension,
title: '[[user:upload_picture]]',
description: '[[user:upload_a_picture]]',
accept: '.png,.jpg,.bmp',
@@ -258,8 +254,6 @@ define('forum/account/edit', ['forum/account/header', 'translator', 'components'
socketMethod: 'user.uploadCroppedPicture',
aspectRatio: '1 / 1',
allowSkippingCrop: false,
- restrictImageDimension: true,
- imageDimension: ajaxify.data.profileImageDimension,
paramName: 'uid',
paramValue: ajaxify.data.theirid,
}, onUploadComplete);
diff --git a/public/src/client/category.js b/public/src/client/category.js
index 504f132697..4cdd18ca2b 100644
--- a/public/src/client/category.js
+++ b/public/src/client/category.js
@@ -345,7 +345,7 @@ define('forum/category', [
}
if (!topicSelect.getSelectedTids().length) {
- infinitescroll.removeExtra($('[component="category/topic"]'), direction, 60);
+ infinitescroll.removeExtra($('[component="category/topic"]'), direction, config.topicsPerPage * 3);
}
html.find('.timeago').timeago();
diff --git a/public/src/client/footer.js b/public/src/client/footer.js
index dc10e84d1f..25444f0912 100644
--- a/public/src/client/footer.js
+++ b/public/src/client/footer.js
@@ -7,7 +7,7 @@ define('forum/footer', ['notifications', 'chat', 'components', 'translator'], fu
translator.prepareDOM();
function updateUnreadTopicCount(url, count) {
- $('#main-nav a[href="' + config.relative_path + url + '"] i')
+ $('a[href="' + config.relative_path + url + '"] i')
.toggleClass('unread-count', count > 0)
.attr('data-content', count > 99 ? '99+' : count);
}
diff --git a/public/src/client/topic/postTools.js b/public/src/client/topic/postTools.js
index 8bbda4d79c..707a9a5b0f 100644
--- a/public/src/client/topic/postTools.js
+++ b/public/src/client/topic/postTools.js
@@ -367,7 +367,8 @@ define('forum/topic/postTools', [
}
function showStaleWarning(callback) {
- if (staleReplyAnyway || ajaxify.data.lastposttime >= (Date.now() - (1000 * 60 * 60 * 24 * ajaxify.data.topicStaleDays))) {
+ var staleThreshold = Math.min(Date.now() - (1000 * 60 * 60 * 24 * ajaxify.data.topicStaleDays), 8640000000000000);
+ if (staleReplyAnyway || ajaxify.data.lastposttime >= staleThreshold) {
return callback();
}
diff --git a/public/src/client/topic/posts.js b/public/src/client/topic/posts.js
index fb9074b3be..1773357122 100644
--- a/public/src/client/topic/posts.js
+++ b/public/src/client/topic/posts.js
@@ -18,6 +18,11 @@ define('forum/topic/posts', [
data.loggedIn = !!app.user.uid;
data.privileges = ajaxify.data.privileges;
+
+ // prevent timeago in future by setting timestamp to 1 sec behind now
+ data.posts[0].timestamp = Date.now() - 1000;
+ data.posts[0].timestampISO = utils.toISOString(data.posts[0].timestamp);
+
Posts.modifyPostsByPrivileges(data.posts);
updatePostCounts(data.posts);
@@ -192,7 +197,7 @@ define('forum/topic/posts', [
components.get('topic').append(html);
}
- infinitescroll.removeExtra($('[component="post"]'), direction, 40);
+ infinitescroll.removeExtra($('[component="post"]'), direction, config.postsPerPage * 2);
$(window).trigger('action:posts.loaded', { posts: data.posts });
diff --git a/public/src/client/topic/replies.js b/public/src/client/topic/replies.js
index 7d9b9474bc..37ddd1912b 100644
--- a/public/src/client/topic/replies.js
+++ b/public/src/client/topic/replies.js
@@ -89,8 +89,19 @@ define('forum/topic/replies', ['navigator', 'components', 'forum/topic/posts'],
var timestamp = replyCount.find('.timeago').attr('title', post.timestampISO);
countEl.attr('data-replies', count);
- replyCount.toggleClass('hidden', !count);
- countEl.translateText('[[topic:replies_to_this_post, ' + count + ']]');
+ replyCount.toggleClass('hidden', count <= 0);
+ if (count > 1) {
+ countEl.translateText('[[topic:replies_to_this_post, ' + count + ']]');
+ } else {
+ countEl.translateText('[[topic:one_reply_to_this_post]]');
+ }
+
+ if (!avatars.find('[data-uid="' + post.uid + '"]').length && count < 7) {
+ app.parseAndTranslate('topic', 'posts', { posts: [{ replies: { users: [post.user] } }] }, function (html) {
+ avatars.prepend(html.find('[component="post/reply-count/avatars"] [component="user/picture"]'));
+ });
+ }
+
avatars.addClass('hasMore');
timestamp.data('timeago', null).timeago();
diff --git a/public/src/modules/pictureCropper.js b/public/src/modules/pictureCropper.js
index bbe0a76735..d413c3d156 100644
--- a/public/src/modules/pictureCropper.js
+++ b/public/src/modules/pictureCropper.js
@@ -37,9 +37,15 @@ define('pictureCropper', ['translator', 'cropper'], function (translator, croppe
}, function (cropperHtml) {
translator.translate(cropperHtml, function (translated) {
var cropperModal = $(translated);
- cropperModal.modal('show');
+ cropperModal.modal({
+ backdrop: 'static',
+ }).modal('show');
+ // Set cropper image max-height based on viewport
+ var cropBoxHeight = parseInt($(window).height() / 2, 10);
var img = document.getElementById('cropped-image');
+ $(img).css('max-height', cropBoxHeight);
+
var cropperTool = new cropper.default(img, {
aspectRatio: data.aspectRatio,
autoCropArea: 1,
diff --git a/public/src/modules/settings.js b/public/src/modules/settings.js
index ecd99a9521..93583d6ed9 100644
--- a/public/src/modules/settings.js
+++ b/public/src/modules/settings.js
@@ -461,7 +461,9 @@ define('settings', function () {
for (var key in values) {
if (values.hasOwnProperty(key)) {
try {
- values[key] = JSON.parse(values[key]);
+ if (!utils.isNumber(values[key])) {
+ values[key] = JSON.parse(values[key]);
+ }
} catch (e) {
// Leave the value as is
}
diff --git a/public/src/modules/translator.js b/public/src/modules/translator.js
index afd64317ef..5296e1eef4 100644
--- a/public/src/modules/translator.js
+++ b/public/src/modules/translator.js
@@ -304,7 +304,7 @@
* Load translation file (or use a cached version), and optionally return the translation of a certain key
* @param {string} namespace - The file name of the translation namespace
* @param {string} [key] - The key of the specific translation to getJSON
- * @returns {Promise