mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-12-25 09:50:35 +01:00
Compare commits
11 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ec4754078b | ||
|
|
93c6b014b0 | ||
|
|
12337302a7 | ||
|
|
f2011aafac | ||
|
|
74caf7e70d | ||
|
|
6d3278cc23 | ||
|
|
2b68baf438 | ||
|
|
2e002c257e | ||
|
|
da38b1fac2 | ||
|
|
cf9de8a0c7 | ||
|
|
136aa65d1b |
@@ -1,22 +1,8 @@
|
||||
# Save as .codeclimate.yml (note leading .) in project root directory
|
||||
version: "2"
|
||||
languages:
|
||||
Ruby: false
|
||||
Ruby: true
|
||||
JavaScript: true
|
||||
PHP: false
|
||||
checks:
|
||||
file-lines:
|
||||
config:
|
||||
threshold: 500
|
||||
method-lines:
|
||||
config:
|
||||
threshold: 50
|
||||
method-complexity:
|
||||
config:
|
||||
threshold: 10
|
||||
similar-code:
|
||||
config:
|
||||
threshold: 65
|
||||
PHP: true
|
||||
exclude_paths:
|
||||
- "public/vendor/*"
|
||||
- "test/*"
|
||||
@@ -18,4 +18,3 @@ logs/
|
||||
/build
|
||||
.eslintrc
|
||||
test/files
|
||||
*.min.js
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
}],
|
||||
"no-empty": ["error", { "allowEmptyCatch": true }],
|
||||
"no-underscore-dangle": "off",
|
||||
"newline-per-chained-call": "off",
|
||||
"no-console": "off",
|
||||
"no-mixed-operators": ["error", { "allowSamePrecedence": true }],
|
||||
"strict": ["error", "global"],
|
||||
@@ -35,12 +36,6 @@
|
||||
"no-restricted-globals": "off",
|
||||
"function-paren-newline": "off",
|
||||
"import/no-unresolved": "error",
|
||||
"quotes": ["error", "single", {
|
||||
"avoidEscape": true,
|
||||
"allowTemplateLiterals": true
|
||||
}],
|
||||
"no-else-return": [ "error", { "allowElseIf": true } ],
|
||||
"operator-linebreak": [ "error", "after" ],
|
||||
|
||||
// ES6
|
||||
"prefer-rest-params": "off",
|
||||
|
||||
4
.github/ISSUE_TEMPLATE.md
vendored
4
.github/ISSUE_TEMPLATE.md
vendored
@@ -10,9 +10,9 @@
|
||||
- **NodeBB version:**
|
||||
- **NodeBB git hash:**
|
||||
<!-- (to find your git hash, execute `git rev-parse HEAD` from the main NodeBB directory) -->
|
||||
- **Database type:** mongo, redis, or postgres
|
||||
- **Database type:** mongo or redis
|
||||
- **Database version:**
|
||||
<!-- `mongod --version`, `redis-server --version`, or `postgres --version` -->
|
||||
<!-- `mongod --version` or `redis-server --version` -->
|
||||
- **Exact steps to cause this issue:**
|
||||
<!--
|
||||
1. First I did this...
|
||||
|
||||
@@ -4,8 +4,6 @@
|
||||
|
||||
"maxerr" : 50, // {int} Maximum error before stopping
|
||||
|
||||
"esversion": 6,
|
||||
|
||||
// Enforcing
|
||||
"bitwise" : true, // true: Prohibit bitwise operators (&, |, ^, etc.)
|
||||
"camelcase" : false, // true: Identifiers must be in camelCase
|
||||
|
||||
21
.travis.yml
21
.travis.yml
@@ -1,25 +1,23 @@
|
||||
services:
|
||||
- mongodb
|
||||
- redis-server
|
||||
- postgresql
|
||||
before_install:
|
||||
- cp install/package.json package.json
|
||||
cache:
|
||||
directories:
|
||||
- node_modules
|
||||
before_script:
|
||||
- sleep 15 # wait for mongodb to be ready
|
||||
- "mongo mydb_test --eval 'db.createUser({user:\"travis\", pwd: \"test\", roles: []});'"
|
||||
- sh -c "if [ '$DB' = 'mongodb' ]; then node app --setup=\"{\\\"url\\\":\\\"http://127.0.0.1:4567\\\",\\\"secret\\\":\\\"abcdef\\\",\\\"database\\\":\\\"mongo\\\",\\\"mongo:host\\\":\\\"127.0.0.1\\\",\\\"mongo:port\\\":27017,\\\"mongo:username\\\":\\\"\\\",\\\"mongo:password\\\":\\\"\\\",\\\"mongo:database\\\":0,\\\"admin:username\\\":\\\"admin\\\",\\\"admin:email\\\":\\\"test@example.org\\\",\\\"admin:password\\\":\\\"hAN3Eg8W\\\",\\\"admin:password:confirm\\\":\\\"hAN3Eg8W\\\"}\" --ci=\"{\\\"host\\\":\\\"127.0.0.1\\\",\\\"port\\\":27017,\\\"database\\\":0}\"; fi"
|
||||
- sh -c "if [ '$DB' = 'redis' ]; then node app --setup=\"{\\\"url\\\":\\\"http://127.0.0.1:4567/forum\\\",\\\"secret\\\":\\\"abcdef\\\",\\\"database\\\":\\\"redis\\\",\\\"redis:host\\\":\\\"127.0.0.1\\\",\\\"redis:port\\\":6379,\\\"redis:password\\\":\\\"\\\",\\\"redis:database\\\":0,\\\"admin:username\\\":\\\"admin\\\",\\\"admin:email\\\":\\\"test@example.org\\\",\\\"admin:password\\\":\\\"hAN3Eg8W\\\",\\\"admin:password:confirm\\\":\\\"hAN3Eg8W\\\"}\" --ci=\"{\\\"host\\\":\\\"127.0.0.1\\\",\\\"port\\\":6379,\\\"database\\\":0}\"; fi"
|
||||
- sh -c "if [ '$DB' = 'postgres' ]; then psql -c 'create database nodebb;' -U postgres; psql -c 'create database travis_ci_test;' -U postgres; node app --setup=\"{\\\"url\\\":\\\"http://127.0.0.1:4567\\\",\\\"secret\\\":\\\"abcdef\\\",\\\"database\\\":\\\"postgres\\\",\\\"postgres:host\\\":\\\"127.0.0.1\\\",\\\"postgres:port\\\":5432,\\\"postgres:password\\\":\\\"\\\",\\\"postgres:database\\\":\\\"nodebb\\\",\\\"admin:username\\\":\\\"admin\\\",\\\"admin:email\\\":\\\"test@example.org\\\",\\\"admin:password\\\":\\\"hAN3Eg8W\\\",\\\"admin:password:confirm\\\":\\\"hAN3Eg8W\\\"}\" --ci=\"{\\\"host\\\":\\\"127.0.0.1\\\",\\\"port\\\":5432,\\\"username\\\":\\\"postgres\\\",\\\"database\\\":\\\"travis_ci_test\\\"}\"; fi"
|
||||
- sh -c "if [ '$DB' = 'mongodb' ]; then node app --setup=\"{\\\"url\\\":\\\"http://127.0.0.1:4567\\\",\\\"secret\\\":\\\"abcdef\\\",\\\"database\\\":\\\"mongo\\\",\\\"mongo:host\\\":\\\"127.0.0.1\\\",\\\"mongo:port\\\":27017,\\\"mongo:username\\\":\\\"\\\",\\\"mongo:password\\\":\\\"\\\",\\\"mongo:database\\\":0,\\\"redis:host\\\":\\\"127.0.0.1\\\",\\\"redis:port\\\":6379,\\\"redis:password\\\":\\\"\\\",\\\"redis:database\\\":0,\\\"admin:username\\\":\\\"admin\\\",\\\"admin:email\\\":\\\"test@example.org\\\",\\\"admin:password\\\":\\\"abcdef\\\",\\\"admin:password:confirm\\\":\\\"abcdef\\\"}\" --ci=\"{\\\"host\\\":\\\"127.0.0.1\\\",\\\"port\\\":27017,\\\"database\\\":0}\"; fi"
|
||||
- sh -c "if [ '$DB' = 'redis' ]; then node app --setup=\"{\\\"url\\\":\\\"http://127.0.0.1:4567\\\",\\\"secret\\\":\\\"abcdef\\\",\\\"database\\\":\\\"redis\\\",\\\"mongo:host\\\":\\\"127.0.0.1\\\",\\\"mongo:port\\\":27017,\\\"mongo:username\\\":\\\"\\\",\\\"mongo:password\\\":\\\"\\\",\\\"mongo:database\\\":0,\\\"redis:host\\\":\\\"127.0.0.1\\\",\\\"redis:port\\\":6379,\\\"redis:password\\\":\\\"\\\",\\\"redis:database\\\":0,\\\"admin:username\\\":\\\"admin\\\",\\\"admin:email\\\":\\\"test@example.org\\\",\\\"admin:password\\\":\\\"abcdef\\\",\\\"admin:password:confirm\\\":\\\"abcdef\\\"}\" --ci=\"{\\\"host\\\":\\\"127.0.0.1\\\",\\\"port\\\":6379,\\\"database\\\":0}\"; fi"
|
||||
after_success:
|
||||
- "npm run coveralls"
|
||||
language: node_js
|
||||
sudo: false
|
||||
dist: trusty
|
||||
env:
|
||||
- CXX=g++-4.8 DB=mongodb TEST_ENV=production
|
||||
- CXX=g++-4.8 DB=mongodb TEST_ENV=development
|
||||
- CXX=g++-4.8 DB=redis TEST_ENV=production
|
||||
- CXX=g++-4.8 DB=postgres TEST_ENV=production
|
||||
- CXX=g++-4.8 DB=mongodb
|
||||
- CXX=g++-4.8 DB=redis
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
@@ -28,10 +26,11 @@ addons:
|
||||
packages:
|
||||
- g++-4.8
|
||||
- mongodb-org-server
|
||||
postgresql: "9.5"
|
||||
node_js:
|
||||
- "10"
|
||||
- "9"
|
||||
- "8"
|
||||
- "7"
|
||||
- "6"
|
||||
branches:
|
||||
only:
|
||||
- master
|
||||
|
||||
167
.tx/config
167
.tx/config
@@ -28,7 +28,6 @@ trans.it = public/language/it/category.json
|
||||
trans.ja = public/language/ja/category.json
|
||||
trans.ko = public/language/ko/category.json
|
||||
trans.lt = public/language/lt/category.json
|
||||
trans.lv = public/language/lv/category.json
|
||||
trans.ms = public/language/ms/category.json
|
||||
trans.nb = public/language/nb/category.json
|
||||
trans.nl = public/language/nl/category.json
|
||||
@@ -78,7 +77,6 @@ trans.it = public/language/it/login.json
|
||||
trans.ja = public/language/ja/login.json
|
||||
trans.ko = public/language/ko/login.json
|
||||
trans.lt = public/language/lt/login.json
|
||||
trans.lv = public/language/lv/login.json
|
||||
trans.ms = public/language/ms/login.json
|
||||
trans.nb = public/language/nb/login.json
|
||||
trans.nl = public/language/nl/login.json
|
||||
@@ -128,7 +126,6 @@ trans.it = public/language/it/recent.json
|
||||
trans.ja = public/language/ja/recent.json
|
||||
trans.ko = public/language/ko/recent.json
|
||||
trans.lt = public/language/lt/recent.json
|
||||
trans.lv = public/language/lv/recent.json
|
||||
trans.ms = public/language/ms/recent.json
|
||||
trans.nb = public/language/nb/recent.json
|
||||
trans.nl = public/language/nl/recent.json
|
||||
@@ -178,7 +175,6 @@ trans.it = public/language/it/unread.json
|
||||
trans.ja = public/language/ja/unread.json
|
||||
trans.ko = public/language/ko/unread.json
|
||||
trans.lt = public/language/lt/unread.json
|
||||
trans.lv = public/language/lv/unread.json
|
||||
trans.ms = public/language/ms/unread.json
|
||||
trans.nb = public/language/nb/unread.json
|
||||
trans.nl = public/language/nl/unread.json
|
||||
@@ -228,7 +224,6 @@ trans.it = public/language/it/modules.json
|
||||
trans.ja = public/language/ja/modules.json
|
||||
trans.ko = public/language/ko/modules.json
|
||||
trans.lt = public/language/lt/modules.json
|
||||
trans.lv = public/language/lv/modules.json
|
||||
trans.ms = public/language/ms/modules.json
|
||||
trans.nb = public/language/nb/modules.json
|
||||
trans.nl = public/language/nl/modules.json
|
||||
@@ -278,7 +273,6 @@ trans.it = public/language/it/register.json
|
||||
trans.ja = public/language/ja/register.json
|
||||
trans.ko = public/language/ko/register.json
|
||||
trans.lt = public/language/lt/register.json
|
||||
trans.lv = public/language/lv/register.json
|
||||
trans.ms = public/language/ms/register.json
|
||||
trans.nb = public/language/nb/register.json
|
||||
trans.nl = public/language/nl/register.json
|
||||
@@ -328,7 +322,6 @@ trans.it = public/language/it/user.json
|
||||
trans.ja = public/language/ja/user.json
|
||||
trans.ko = public/language/ko/user.json
|
||||
trans.lt = public/language/lt/user.json
|
||||
trans.lv = public/language/lv/user.json
|
||||
trans.ms = public/language/ms/user.json
|
||||
trans.nb = public/language/nb/user.json
|
||||
trans.nl = public/language/nl/user.json
|
||||
@@ -378,7 +371,6 @@ trans.it = public/language/it/global.json
|
||||
trans.ja = public/language/ja/global.json
|
||||
trans.ko = public/language/ko/global.json
|
||||
trans.lt = public/language/lt/global.json
|
||||
trans.lv = public/language/lv/global.json
|
||||
trans.ms = public/language/ms/global.json
|
||||
trans.nb = public/language/nb/global.json
|
||||
trans.nl = public/language/nl/global.json
|
||||
@@ -428,7 +420,6 @@ trans.it = public/language/it/notifications.json
|
||||
trans.ja = public/language/ja/notifications.json
|
||||
trans.ko = public/language/ko/notifications.json
|
||||
trans.lt = public/language/lt/notifications.json
|
||||
trans.lv = public/language/lv/notifications.json
|
||||
trans.ms = public/language/ms/notifications.json
|
||||
trans.nb = public/language/nb/notifications.json
|
||||
trans.nl = public/language/nl/notifications.json
|
||||
@@ -478,7 +469,6 @@ trans.it = public/language/it/reset_password.json
|
||||
trans.ja = public/language/ja/reset_password.json
|
||||
trans.ko = public/language/ko/reset_password.json
|
||||
trans.lt = public/language/lt/reset_password.json
|
||||
trans.lv = public/language/lv/reset_password.json
|
||||
trans.ms = public/language/ms/reset_password.json
|
||||
trans.nb = public/language/nb/reset_password.json
|
||||
trans.nl = public/language/nl/reset_password.json
|
||||
@@ -528,7 +518,6 @@ trans.it = public/language/it/users.json
|
||||
trans.ja = public/language/ja/users.json
|
||||
trans.ko = public/language/ko/users.json
|
||||
trans.lt = public/language/lt/users.json
|
||||
trans.lv = public/language/lv/users.json
|
||||
trans.ms = public/language/ms/users.json
|
||||
trans.nb = public/language/nb/users.json
|
||||
trans.nl = public/language/nl/users.json
|
||||
@@ -578,7 +567,6 @@ trans.it = public/language/it/language.json
|
||||
trans.ja = public/language/ja/language.json
|
||||
trans.ko = public/language/ko/language.json
|
||||
trans.lt = public/language/lt/language.json
|
||||
trans.lv = public/language/lv/language.json
|
||||
trans.ms = public/language/ms/language.json
|
||||
trans.nb = public/language/nb/language.json
|
||||
trans.nl = public/language/nl/language.json
|
||||
@@ -628,7 +616,6 @@ trans.it = public/language/it/pages.json
|
||||
trans.ja = public/language/ja/pages.json
|
||||
trans.ko = public/language/ko/pages.json
|
||||
trans.lt = public/language/lt/pages.json
|
||||
trans.lv = public/language/lv/pages.json
|
||||
trans.ms = public/language/ms/pages.json
|
||||
trans.nb = public/language/nb/pages.json
|
||||
trans.nl = public/language/nl/pages.json
|
||||
@@ -678,7 +665,6 @@ trans.it = public/language/it/topic.json
|
||||
trans.ja = public/language/ja/topic.json
|
||||
trans.ko = public/language/ko/topic.json
|
||||
trans.lt = public/language/lt/topic.json
|
||||
trans.lv = public/language/lv/topic.json
|
||||
trans.ms = public/language/ms/topic.json
|
||||
trans.nb = public/language/nb/topic.json
|
||||
trans.nl = public/language/nl/topic.json
|
||||
@@ -728,7 +714,6 @@ trans.it = public/language/it/success.json
|
||||
trans.ja = public/language/ja/success.json
|
||||
trans.ko = public/language/ko/success.json
|
||||
trans.lt = public/language/lt/success.json
|
||||
trans.lv = public/language/lv/success.json
|
||||
trans.ms = public/language/ms/success.json
|
||||
trans.nb = public/language/nb/success.json
|
||||
trans.nl = public/language/nl/success.json
|
||||
@@ -778,7 +763,6 @@ trans.it = public/language/it/error.json
|
||||
trans.ja = public/language/ja/error.json
|
||||
trans.ko = public/language/ko/error.json
|
||||
trans.lt = public/language/lt/error.json
|
||||
trans.lv = public/language/lv/error.json
|
||||
trans.ms = public/language/ms/error.json
|
||||
trans.nb = public/language/nb/error.json
|
||||
trans.nl = public/language/nl/error.json
|
||||
@@ -828,7 +812,6 @@ trans.it = public/language/it/flags.json
|
||||
trans.ja = public/language/ja/flags.json
|
||||
trans.ko = public/language/ko/flags.json
|
||||
trans.lt = public/language/lt/flags.json
|
||||
trans.lv = public/language/lv/flags.json
|
||||
trans.ms = public/language/ms/flags.json
|
||||
trans.nb = public/language/nb/flags.json
|
||||
trans.nl = public/language/nl/flags.json
|
||||
@@ -877,7 +860,6 @@ trans.it = public/language/it/tags.json
|
||||
trans.ja = public/language/ja/tags.json
|
||||
trans.ko = public/language/ko/tags.json
|
||||
trans.lt = public/language/lt/tags.json
|
||||
trans.lv = public/language/lv/tags.json
|
||||
trans.ms = public/language/ms/tags.json
|
||||
trans.nb = public/language/nb/tags.json
|
||||
trans.nl = public/language/nl/tags.json
|
||||
@@ -927,7 +909,6 @@ trans.it = public/language/it/email.json
|
||||
trans.ja = public/language/ja/email.json
|
||||
trans.ko = public/language/ko/email.json
|
||||
trans.lt = public/language/lt/email.json
|
||||
trans.lv = public/language/lv/email.json
|
||||
trans.ms = public/language/ms/email.json
|
||||
trans.nb = public/language/nb/email.json
|
||||
trans.nl = public/language/nl/email.json
|
||||
@@ -977,7 +958,6 @@ trans.it = public/language/it/search.json
|
||||
trans.ja = public/language/ja/search.json
|
||||
trans.ko = public/language/ko/search.json
|
||||
trans.lt = public/language/lt/search.json
|
||||
trans.lv = public/language/lv/search.json
|
||||
trans.ms = public/language/ms/search.json
|
||||
trans.nb = public/language/nb/search.json
|
||||
trans.nl = public/language/nl/search.json
|
||||
@@ -1027,7 +1007,6 @@ trans.it = public/language/it/groups.json
|
||||
trans.ja = public/language/ja/groups.json
|
||||
trans.ko = public/language/ko/groups.json
|
||||
trans.lt = public/language/lt/groups.json
|
||||
trans.lv = public/language/lv/groups.json
|
||||
trans.ms = public/language/ms/groups.json
|
||||
trans.nb = public/language/nb/groups.json
|
||||
trans.nl = public/language/nl/groups.json
|
||||
@@ -1077,7 +1056,6 @@ trans.it = public/language/it/uploads.json
|
||||
trans.ja = public/language/ja/uploads.json
|
||||
trans.ko = public/language/ko/uploads.json
|
||||
trans.lt = public/language/lt/uploads.json
|
||||
trans.lv = public/language/lv/uploads.json
|
||||
trans.ms = public/language/ms/uploads.json
|
||||
trans.nb = public/language/nb/uploads.json
|
||||
trans.nl = public/language/nl/uploads.json
|
||||
@@ -1127,7 +1105,6 @@ trans.it = public/language/it/admin/admin.json
|
||||
trans.ja = public/language/ja/admin/admin.json
|
||||
trans.ko = public/language/ko/admin/admin.json
|
||||
trans.lt = public/language/lt/admin/admin.json
|
||||
trans.lv = public/language/lv/admin/admin.json
|
||||
trans.ms = public/language/ms/admin/admin.json
|
||||
trans.nb = public/language/nb/admin/admin.json
|
||||
trans.nl = public/language/nl/admin/admin.json
|
||||
@@ -1177,7 +1154,6 @@ trans.it = public/language/it/admin/menu.json
|
||||
trans.ja = public/language/ja/admin/menu.json
|
||||
trans.ko = public/language/ko/admin/menu.json
|
||||
trans.lt = public/language/lt/admin/menu.json
|
||||
trans.lv = public/language/lv/admin/menu.json
|
||||
trans.ms = public/language/ms/admin/menu.json
|
||||
trans.nb = public/language/nb/admin/menu.json
|
||||
trans.nl = public/language/nl/admin/menu.json
|
||||
@@ -1227,7 +1203,6 @@ trans.it = public/language/it/admin/advanced/cache.json
|
||||
trans.ja = public/language/ja/admin/advanced/cache.json
|
||||
trans.ko = public/language/ko/admin/advanced/cache.json
|
||||
trans.lt = public/language/lt/admin/advanced/cache.json
|
||||
trans.lv = public/language/lv/admin/advanced/cache.json
|
||||
trans.ms = public/language/ms/admin/advanced/cache.json
|
||||
trans.nb = public/language/nb/admin/advanced/cache.json
|
||||
trans.nl = public/language/nl/admin/advanced/cache.json
|
||||
@@ -1277,7 +1252,6 @@ trans.it = public/language/it/admin/advanced/database.json
|
||||
trans.ja = public/language/ja/admin/advanced/database.json
|
||||
trans.ko = public/language/ko/admin/advanced/database.json
|
||||
trans.lt = public/language/lt/admin/advanced/database.json
|
||||
trans.lv = public/language/lv/admin/advanced/database.json
|
||||
trans.ms = public/language/ms/admin/advanced/database.json
|
||||
trans.nb = public/language/nb/admin/advanced/database.json
|
||||
trans.nl = public/language/nl/admin/advanced/database.json
|
||||
@@ -1327,7 +1301,6 @@ trans.it = public/language/it/admin/advanced/errors.json
|
||||
trans.ja = public/language/ja/admin/advanced/errors.json
|
||||
trans.ko = public/language/ko/admin/advanced/errors.json
|
||||
trans.lt = public/language/lt/admin/advanced/errors.json
|
||||
trans.lv = public/language/lv/admin/advanced/errors.json
|
||||
trans.ms = public/language/ms/admin/advanced/errors.json
|
||||
trans.nb = public/language/nb/admin/advanced/errors.json
|
||||
trans.nl = public/language/nl/admin/advanced/errors.json
|
||||
@@ -1377,7 +1350,6 @@ trans.it = public/language/it/admin/advanced/events.json
|
||||
trans.ja = public/language/ja/admin/advanced/events.json
|
||||
trans.ko = public/language/ko/admin/advanced/events.json
|
||||
trans.lt = public/language/lt/admin/advanced/events.json
|
||||
trans.lv = public/language/lv/admin/advanced/events.json
|
||||
trans.ms = public/language/ms/admin/advanced/events.json
|
||||
trans.nb = public/language/nb/admin/advanced/events.json
|
||||
trans.nl = public/language/nl/admin/advanced/events.json
|
||||
@@ -1427,7 +1399,6 @@ trans.it = public/language/it/admin/advanced/logs.json
|
||||
trans.ja = public/language/ja/admin/advanced/logs.json
|
||||
trans.ko = public/language/ko/admin/advanced/logs.json
|
||||
trans.lt = public/language/lt/admin/advanced/logs.json
|
||||
trans.lv = public/language/lv/admin/advanced/logs.json
|
||||
trans.ms = public/language/ms/admin/advanced/logs.json
|
||||
trans.nb = public/language/nb/admin/advanced/logs.json
|
||||
trans.nl = public/language/nl/admin/advanced/logs.json
|
||||
@@ -1477,7 +1448,6 @@ trans.it = public/language/it/admin/appearance/customise.json
|
||||
trans.ja = public/language/ja/admin/appearance/customise.json
|
||||
trans.ko = public/language/ko/admin/appearance/customise.json
|
||||
trans.lt = public/language/lt/admin/appearance/customise.json
|
||||
trans.lv = public/language/lv/admin/appearance/customise.json
|
||||
trans.ms = public/language/ms/admin/appearance/customise.json
|
||||
trans.nb = public/language/nb/admin/appearance/customise.json
|
||||
trans.nl = public/language/nl/admin/appearance/customise.json
|
||||
@@ -1527,7 +1497,6 @@ trans.it = public/language/it/admin/appearance/skins.json
|
||||
trans.ja = public/language/ja/admin/appearance/skins.json
|
||||
trans.ko = public/language/ko/admin/appearance/skins.json
|
||||
trans.lt = public/language/lt/admin/appearance/skins.json
|
||||
trans.lv = public/language/lv/admin/appearance/skins.json
|
||||
trans.ms = public/language/ms/admin/appearance/skins.json
|
||||
trans.nb = public/language/nb/admin/appearance/skins.json
|
||||
trans.nl = public/language/nl/admin/appearance/skins.json
|
||||
@@ -1577,7 +1546,6 @@ trans.it = public/language/it/admin/appearance/themes.json
|
||||
trans.ja = public/language/ja/admin/appearance/themes.json
|
||||
trans.ko = public/language/ko/admin/appearance/themes.json
|
||||
trans.lt = public/language/lt/admin/appearance/themes.json
|
||||
trans.lv = public/language/lv/admin/appearance/themes.json
|
||||
trans.ms = public/language/ms/admin/appearance/themes.json
|
||||
trans.nb = public/language/nb/admin/appearance/themes.json
|
||||
trans.nl = public/language/nl/admin/appearance/themes.json
|
||||
@@ -1627,7 +1595,6 @@ trans.it = public/language/it/admin/development/info.json
|
||||
trans.ja = public/language/ja/admin/development/info.json
|
||||
trans.ko = public/language/ko/admin/development/info.json
|
||||
trans.lt = public/language/lt/admin/development/info.json
|
||||
trans.lv = public/language/lv/admin/development/info.json
|
||||
trans.ms = public/language/ms/admin/development/info.json
|
||||
trans.nb = public/language/nb/admin/development/info.json
|
||||
trans.nl = public/language/nl/admin/development/info.json
|
||||
@@ -1677,7 +1644,6 @@ trans.it = public/language/it/admin/development/logger.json
|
||||
trans.ja = public/language/ja/admin/development/logger.json
|
||||
trans.ko = public/language/ko/admin/development/logger.json
|
||||
trans.lt = public/language/lt/admin/development/logger.json
|
||||
trans.lv = public/language/lv/admin/development/logger.json
|
||||
trans.ms = public/language/ms/admin/development/logger.json
|
||||
trans.nb = public/language/nb/admin/development/logger.json
|
||||
trans.nl = public/language/nl/admin/development/logger.json
|
||||
@@ -1727,7 +1693,6 @@ trans.it = public/language/it/admin/extend/plugins.json
|
||||
trans.ja = public/language/ja/admin/extend/plugins.json
|
||||
trans.ko = public/language/ko/admin/extend/plugins.json
|
||||
trans.lt = public/language/lt/admin/extend/plugins.json
|
||||
trans.lv = public/language/lv/admin/extend/plugins.json
|
||||
trans.ms = public/language/ms/admin/extend/plugins.json
|
||||
trans.nb = public/language/nb/admin/extend/plugins.json
|
||||
trans.nl = public/language/nl/admin/extend/plugins.json
|
||||
@@ -1777,7 +1742,6 @@ trans.it = public/language/it/admin/extend/rewards.json
|
||||
trans.ja = public/language/ja/admin/extend/rewards.json
|
||||
trans.ko = public/language/ko/admin/extend/rewards.json
|
||||
trans.lt = public/language/lt/admin/extend/rewards.json
|
||||
trans.lv = public/language/lv/admin/extend/rewards.json
|
||||
trans.ms = public/language/ms/admin/extend/rewards.json
|
||||
trans.nb = public/language/nb/admin/extend/rewards.json
|
||||
trans.nl = public/language/nl/admin/extend/rewards.json
|
||||
@@ -1827,7 +1791,6 @@ trans.it = public/language/it/admin/extend/widgets.json
|
||||
trans.ja = public/language/ja/admin/extend/widgets.json
|
||||
trans.ko = public/language/ko/admin/extend/widgets.json
|
||||
trans.lt = public/language/lt/admin/extend/widgets.json
|
||||
trans.lv = public/language/lv/admin/extend/widgets.json
|
||||
trans.ms = public/language/ms/admin/extend/widgets.json
|
||||
trans.nb = public/language/nb/admin/extend/widgets.json
|
||||
trans.nl = public/language/nl/admin/extend/widgets.json
|
||||
@@ -1877,7 +1840,6 @@ trans.it = public/language/it/admin/general/dashboard.json
|
||||
trans.ja = public/language/ja/admin/general/dashboard.json
|
||||
trans.ko = public/language/ko/admin/general/dashboard.json
|
||||
trans.lt = public/language/lt/admin/general/dashboard.json
|
||||
trans.lv = public/language/lv/admin/general/dashboard.json
|
||||
trans.ms = public/language/ms/admin/general/dashboard.json
|
||||
trans.nb = public/language/nb/admin/general/dashboard.json
|
||||
trans.nl = public/language/nl/admin/general/dashboard.json
|
||||
@@ -1927,7 +1889,6 @@ trans.it = public/language/it/admin/general/homepage.json
|
||||
trans.ja = public/language/ja/admin/general/homepage.json
|
||||
trans.ko = public/language/ko/admin/general/homepage.json
|
||||
trans.lt = public/language/lt/admin/general/homepage.json
|
||||
trans.lv = public/language/lv/admin/general/homepage.json
|
||||
trans.ms = public/language/ms/admin/general/homepage.json
|
||||
trans.nb = public/language/nb/admin/general/homepage.json
|
||||
trans.nl = public/language/nl/admin/general/homepage.json
|
||||
@@ -1977,7 +1938,6 @@ trans.it = public/language/it/admin/general/languages.json
|
||||
trans.ja = public/language/ja/admin/general/languages.json
|
||||
trans.ko = public/language/ko/admin/general/languages.json
|
||||
trans.lt = public/language/lt/admin/general/languages.json
|
||||
trans.lv = public/language/lv/admin/general/languages.json
|
||||
trans.ms = public/language/ms/admin/general/languages.json
|
||||
trans.nb = public/language/nb/admin/general/languages.json
|
||||
trans.nl = public/language/nl/admin/general/languages.json
|
||||
@@ -2027,7 +1987,6 @@ trans.it = public/language/it/admin/general/navigation.json
|
||||
trans.ja = public/language/ja/admin/general/navigation.json
|
||||
trans.ko = public/language/ko/admin/general/navigation.json
|
||||
trans.lt = public/language/lt/admin/general/navigation.json
|
||||
trans.lv = public/language/lv/admin/general/navigation.json
|
||||
trans.ms = public/language/ms/admin/general/navigation.json
|
||||
trans.nb = public/language/nb/admin/general/navigation.json
|
||||
trans.nl = public/language/nl/admin/general/navigation.json
|
||||
@@ -2077,7 +2036,6 @@ trans.it = public/language/it/admin/general/social.json
|
||||
trans.ja = public/language/ja/admin/general/social.json
|
||||
trans.ko = public/language/ko/admin/general/social.json
|
||||
trans.lt = public/language/lt/admin/general/social.json
|
||||
trans.lv = public/language/lv/admin/general/social.json
|
||||
trans.ms = public/language/ms/admin/general/social.json
|
||||
trans.nb = public/language/nb/admin/general/social.json
|
||||
trans.nl = public/language/nl/admin/general/social.json
|
||||
@@ -2127,7 +2085,6 @@ trans.it = public/language/it/admin/general/sounds.json
|
||||
trans.ja = public/language/ja/admin/general/sounds.json
|
||||
trans.ko = public/language/ko/admin/general/sounds.json
|
||||
trans.lt = public/language/lt/admin/general/sounds.json
|
||||
trans.lv = public/language/lv/admin/general/sounds.json
|
||||
trans.ms = public/language/ms/admin/general/sounds.json
|
||||
trans.nb = public/language/nb/admin/general/sounds.json
|
||||
trans.nl = public/language/nl/admin/general/sounds.json
|
||||
@@ -2177,7 +2134,6 @@ trans.it = public/language/it/admin/manage/admins-mods.json
|
||||
trans.ja = public/language/ja/admin/manage/admins-mods.json
|
||||
trans.ko = public/language/ko/admin/manage/admins-mods.json
|
||||
trans.lt = public/language/lt/admin/manage/admins-mods.json
|
||||
trans.lv = public/language/lv/admin/manage/admins-mods.json
|
||||
trans.ms = public/language/ms/admin/manage/admins-mods.json
|
||||
trans.nb = public/language/nb/admin/manage/admins-mods.json
|
||||
trans.nl = public/language/nl/admin/manage/admins-mods.json
|
||||
@@ -2227,7 +2183,6 @@ trans.it = public/language/it/admin/manage/categories.json
|
||||
trans.ja = public/language/ja/admin/manage/categories.json
|
||||
trans.ko = public/language/ko/admin/manage/categories.json
|
||||
trans.lt = public/language/lt/admin/manage/categories.json
|
||||
trans.lv = public/language/lv/admin/manage/categories.json
|
||||
trans.ms = public/language/ms/admin/manage/categories.json
|
||||
trans.nb = public/language/nb/admin/manage/categories.json
|
||||
trans.nl = public/language/nl/admin/manage/categories.json
|
||||
@@ -2277,7 +2232,6 @@ trans.it = public/language/it/admin/manage/groups.json
|
||||
trans.ja = public/language/ja/admin/manage/groups.json
|
||||
trans.ko = public/language/ko/admin/manage/groups.json
|
||||
trans.lt = public/language/lt/admin/manage/groups.json
|
||||
trans.lv = public/language/lv/admin/manage/groups.json
|
||||
trans.ms = public/language/ms/admin/manage/groups.json
|
||||
trans.nb = public/language/nb/admin/manage/groups.json
|
||||
trans.nl = public/language/nl/admin/manage/groups.json
|
||||
@@ -2327,7 +2281,6 @@ trans.it = public/language/it/admin/manage/ip-blacklist.json
|
||||
trans.ja = public/language/ja/admin/manage/ip-blacklist.json
|
||||
trans.ko = public/language/ko/admin/manage/ip-blacklist.json
|
||||
trans.lt = public/language/lt/admin/manage/ip-blacklist.json
|
||||
trans.lv = public/language/lv/admin/manage/ip-blacklist.json
|
||||
trans.ms = public/language/ms/admin/manage/ip-blacklist.json
|
||||
trans.nb = public/language/nb/admin/manage/ip-blacklist.json
|
||||
trans.nl = public/language/nl/admin/manage/ip-blacklist.json
|
||||
@@ -2350,56 +2303,6 @@ trans.zh_CN = public/language/zh-CN/admin/manage/ip-blacklist.json
|
||||
trans.zh_TW = public/language/zh-TW/admin/manage/ip-blacklist.json
|
||||
type = KEYVALUEJSON
|
||||
|
||||
[nodebb.admin-manage-privileges]
|
||||
file_filter = public/language/<lang>/admin/manage/privileges.json
|
||||
source_file = public/language/en-GB/admin/manage/privileges.json
|
||||
source_lang = en_GB
|
||||
trans.ar = public/language/ar/admin/manage/privileges.json
|
||||
trans.bg = public/language/bg/admin/manage/privileges.json
|
||||
trans.bn = public/language/bn/admin/manage/privileges.json
|
||||
trans.cs = public/language/cs/admin/manage/privileges.json
|
||||
trans.da = public/language/da/admin/manage/privileges.json
|
||||
trans.de = public/language/de/admin/manage/privileges.json
|
||||
trans.el = public/language/el/admin/manage/privileges.json
|
||||
trans.en@pirate = public/language/en-x-pirate/admin/manage/privileges.json
|
||||
trans.en_US = public/language/en-US/admin/manage/privileges.json
|
||||
trans.es = public/language/es/admin/manage/privileges.json
|
||||
trans.et = public/language/et/admin/manage/privileges.json
|
||||
trans.fa_IR = public/language/fa-IR/admin/manage/privileges.json
|
||||
trans.fi = public/language/fi/admin/manage/privileges.json
|
||||
trans.fr = public/language/fr/admin/manage/privileges.json
|
||||
trans.gl = public/language/gl/admin/manage/privileges.json
|
||||
trans.he = public/language/he/admin/manage/privileges.json
|
||||
trans.hr = public/language/hr/admin/manage/privileges.json
|
||||
trans.hu = public/language/hu/admin/manage/privileges.json
|
||||
trans.id = public/language/id/admin/manage/privileges.json
|
||||
trans.it = public/language/it/admin/manage/privileges.json
|
||||
trans.ja = public/language/ja/admin/manage/privileges.json
|
||||
trans.ko = public/language/ko/admin/manage/privileges.json
|
||||
trans.lt = public/language/lt/admin/manage/privileges.json
|
||||
trans.lv = public/language/lv/admin/manage/privileges.json
|
||||
trans.ms = public/language/ms/admin/manage/privileges.json
|
||||
trans.nb = public/language/nb/admin/manage/privileges.json
|
||||
trans.nl = public/language/nl/admin/manage/privileges.json
|
||||
trans.pl = public/language/pl/admin/manage/privileges.json
|
||||
trans.pt_BR = public/language/pt-BR/admin/manage/privileges.json
|
||||
trans.pt_PT = public/language/pt-PT/admin/manage/privileges.json
|
||||
trans.ro = public/language/ro/admin/manage/privileges.json
|
||||
trans.ru = public/language/ru/admin/manage/privileges.json
|
||||
trans.rw = public/language/rw/admin/manage/privileges.json
|
||||
trans.sc = public/language/sc/admin/manage/privileges.json
|
||||
trans.sk = public/language/sk/admin/manage/privileges.json
|
||||
trans.sl = public/language/sl/admin/manage/privileges.json
|
||||
trans.sr = public/language/sr/admin/manage/privileges.json
|
||||
trans.sv = public/language/sv/admin/manage/privileges.json
|
||||
trans.th = public/language/th/admin/manage/privileges.json
|
||||
trans.tr = public/language/tr/admin/manage/privileges.json
|
||||
trans.uk = public/language/uk/admin/manage/privileges.json
|
||||
trans.vi = public/language/vi/admin/manage/privileges.json
|
||||
trans.zh_CN = public/language/zh-CN/admin/manage/privileges.json
|
||||
trans.zh_TW = public/language/zh-TW/admin/manage/privileges.json
|
||||
type = KEYVALUEJSON
|
||||
|
||||
[nodebb.admin-manage-post-queue]
|
||||
file_filter = public/language/<lang>/admin/manage/post-queue.json
|
||||
source_file = public/language/en-GB/admin/manage/post-queue.json
|
||||
@@ -2427,7 +2330,6 @@ trans.it = public/language/it/admin/manage/post-queue.json
|
||||
trans.ja = public/language/ja/admin/manage/post-queue.json
|
||||
trans.ko = public/language/ko/admin/manage/post-queue.json
|
||||
trans.lt = public/language/lt/admin/manage/post-queue.json
|
||||
trans.lv = public/language/lv/admin/manage/post-queue.json
|
||||
trans.ms = public/language/ms/admin/manage/post-queue.json
|
||||
trans.nb = public/language/nb/admin/manage/post-queue.json
|
||||
trans.nl = public/language/nl/admin/manage/post-queue.json
|
||||
@@ -2477,7 +2379,6 @@ trans.it = public/language/it/admin/manage/registration.json
|
||||
trans.ja = public/language/ja/admin/manage/registration.json
|
||||
trans.ko = public/language/ko/admin/manage/registration.json
|
||||
trans.lt = public/language/lt/admin/manage/registration.json
|
||||
trans.lv = public/language/lv/admin/manage/registration.json
|
||||
trans.ms = public/language/ms/admin/manage/registration.json
|
||||
trans.nb = public/language/nb/admin/manage/registration.json
|
||||
trans.nl = public/language/nl/admin/manage/registration.json
|
||||
@@ -2527,7 +2428,6 @@ trans.it = public/language/it/admin/manage/tags.json
|
||||
trans.ja = public/language/ja/admin/manage/tags.json
|
||||
trans.ko = public/language/ko/admin/manage/tags.json
|
||||
trans.lt = public/language/lt/admin/manage/tags.json
|
||||
trans.lv = public/language/lv/admin/manage/tags.json
|
||||
trans.ms = public/language/ms/admin/manage/tags.json
|
||||
trans.nb = public/language/nb/admin/manage/tags.json
|
||||
trans.nl = public/language/nl/admin/manage/tags.json
|
||||
@@ -2550,56 +2450,6 @@ trans.zh_CN = public/language/zh-CN/admin/manage/tags.json
|
||||
trans.zh_TW = public/language/zh-TW/admin/manage/tags.json
|
||||
type = KEYVALUEJSON
|
||||
|
||||
[nodebb.admin-manage-uploads]
|
||||
file_filter = public/language/<lang>/admin/manage/uploads.json
|
||||
source_file = public/language/en-GB/admin/manage/uploads.json
|
||||
source_lang = en_GB
|
||||
trans.ar = public/language/ar/admin/manage/uploads.json
|
||||
trans.bg = public/language/bg/admin/manage/uploads.json
|
||||
trans.bn = public/language/bn/admin/manage/uploads.json
|
||||
trans.cs = public/language/cs/admin/manage/uploads.json
|
||||
trans.da = public/language/da/admin/manage/uploads.json
|
||||
trans.de = public/language/de/admin/manage/uploads.json
|
||||
trans.el = public/language/el/admin/manage/uploads.json
|
||||
trans.en@pirate = public/language/en-x-pirate/admin/manage/uploads.json
|
||||
trans.en_US = public/language/en-US/admin/manage/uploads.json
|
||||
trans.es = public/language/es/admin/manage/uploads.json
|
||||
trans.et = public/language/et/admin/manage/uploads.json
|
||||
trans.fa_IR = public/language/fa-IR/admin/manage/uploads.json
|
||||
trans.fi = public/language/fi/admin/manage/uploads.json
|
||||
trans.fr = public/language/fr/admin/manage/uploads.json
|
||||
trans.gl = public/language/gl/admin/manage/uploads.json
|
||||
trans.he = public/language/he/admin/manage/uploads.json
|
||||
trans.hr = public/language/hr/admin/manage/uploads.json
|
||||
trans.hu = public/language/hu/admin/manage/uploads.json
|
||||
trans.id = public/language/id/admin/manage/uploads.json
|
||||
trans.it = public/language/it/admin/manage/uploads.json
|
||||
trans.ja = public/language/ja/admin/manage/uploads.json
|
||||
trans.ko = public/language/ko/admin/manage/uploads.json
|
||||
trans.lt = public/language/lt/admin/manage/uploads.json
|
||||
trans.lv = public/language/lv/admin/manage/uploads.json
|
||||
trans.ms = public/language/ms/admin/manage/uploads.json
|
||||
trans.nb = public/language/nb/admin/manage/uploads.json
|
||||
trans.nl = public/language/nl/admin/manage/uploads.json
|
||||
trans.pl = public/language/pl/admin/manage/uploads.json
|
||||
trans.pt_BR = public/language/pt-BR/admin/manage/uploads.json
|
||||
trans.pt_PT = public/language/pt-PT/admin/manage/uploads.json
|
||||
trans.ro = public/language/ro/admin/manage/uploads.json
|
||||
trans.ru = public/language/ru/admin/manage/uploads.json
|
||||
trans.rw = public/language/rw/admin/manage/uploads.json
|
||||
trans.sc = public/language/sc/admin/manage/uploads.json
|
||||
trans.sk = public/language/sk/admin/manage/uploads.json
|
||||
trans.sl = public/language/sl/admin/manage/uploads.json
|
||||
trans.sr = public/language/sr/admin/manage/uploads.json
|
||||
trans.sv = public/language/sv/admin/manage/uploads.json
|
||||
trans.th = public/language/th/admin/manage/uploads.json
|
||||
trans.tr = public/language/tr/admin/manage/uploads.json
|
||||
trans.uk = public/language/uk/admin/manage/uploads.json
|
||||
trans.vi = public/language/vi/admin/manage/uploads.json
|
||||
trans.zh_CN = public/language/zh-CN/admin/manage/uploads.json
|
||||
trans.zh_TW = public/language/zh-TW/admin/manage/uploads.json
|
||||
type = KEYVALUEJSON
|
||||
|
||||
[nodebb.admin-manage-users]
|
||||
file_filter = public/language/<lang>/admin/manage/users.json
|
||||
source_file = public/language/en-GB/admin/manage/users.json
|
||||
@@ -2627,7 +2477,6 @@ trans.it = public/language/it/admin/manage/users.json
|
||||
trans.ja = public/language/ja/admin/manage/users.json
|
||||
trans.ko = public/language/ko/admin/manage/users.json
|
||||
trans.lt = public/language/lt/admin/manage/users.json
|
||||
trans.lv = public/language/lv/admin/manage/users.json
|
||||
trans.ms = public/language/ms/admin/manage/users.json
|
||||
trans.nb = public/language/nb/admin/manage/users.json
|
||||
trans.nl = public/language/nl/admin/manage/users.json
|
||||
@@ -2677,7 +2526,6 @@ trans.it = public/language/it/admin/settings/advanced.json
|
||||
trans.ja = public/language/ja/admin/settings/advanced.json
|
||||
trans.ko = public/language/ko/admin/settings/advanced.json
|
||||
trans.lt = public/language/lt/admin/settings/advanced.json
|
||||
trans.lv = public/language/lv/admin/settings/advanced.json
|
||||
trans.ms = public/language/ms/admin/settings/advanced.json
|
||||
trans.nb = public/language/nb/admin/settings/advanced.json
|
||||
trans.nl = public/language/nl/admin/settings/advanced.json
|
||||
@@ -2727,7 +2575,6 @@ trans.it = public/language/it/admin/settings/cookies.json
|
||||
trans.ja = public/language/ja/admin/settings/cookies.json
|
||||
trans.ko = public/language/ko/admin/settings/cookies.json
|
||||
trans.lt = public/language/lt/admin/settings/cookies.json
|
||||
trans.lv = public/language/lv/admin/settings/cookies.json
|
||||
trans.ms = public/language/ms/admin/settings/cookies.json
|
||||
trans.nb = public/language/nb/admin/settings/cookies.json
|
||||
trans.nl = public/language/nl/admin/settings/cookies.json
|
||||
@@ -2777,7 +2624,6 @@ trans.it = public/language/it/admin/settings/general.json
|
||||
trans.ja = public/language/ja/admin/settings/general.json
|
||||
trans.ko = public/language/ko/admin/settings/general.json
|
||||
trans.lt = public/language/lt/admin/settings/general.json
|
||||
trans.lv = public/language/lv/admin/settings/general.json
|
||||
trans.ms = public/language/ms/admin/settings/general.json
|
||||
trans.nb = public/language/nb/admin/settings/general.json
|
||||
trans.nl = public/language/nl/admin/settings/general.json
|
||||
@@ -2827,7 +2673,6 @@ trans.it = public/language/it/admin/settings/guest.json
|
||||
trans.ja = public/language/ja/admin/settings/guest.json
|
||||
trans.ko = public/language/ko/admin/settings/guest.json
|
||||
trans.lt = public/language/lt/admin/settings/guest.json
|
||||
trans.lv = public/language/lv/admin/settings/guest.json
|
||||
trans.ms = public/language/ms/admin/settings/guest.json
|
||||
trans.nb = public/language/nb/admin/settings/guest.json
|
||||
trans.nl = public/language/nl/admin/settings/guest.json
|
||||
@@ -2877,7 +2722,6 @@ trans.it = public/language/it/admin/settings/pagination.json
|
||||
trans.ja = public/language/ja/admin/settings/pagination.json
|
||||
trans.ko = public/language/ko/admin/settings/pagination.json
|
||||
trans.lt = public/language/lt/admin/settings/pagination.json
|
||||
trans.lv = public/language/lv/admin/settings/pagination.json
|
||||
trans.ms = public/language/ms/admin/settings/pagination.json
|
||||
trans.nb = public/language/nb/admin/settings/pagination.json
|
||||
trans.nl = public/language/nl/admin/settings/pagination.json
|
||||
@@ -2927,7 +2771,6 @@ trans.it = public/language/it/admin/settings/reputation.json
|
||||
trans.ja = public/language/ja/admin/settings/reputation.json
|
||||
trans.ko = public/language/ko/admin/settings/reputation.json
|
||||
trans.lt = public/language/lt/admin/settings/reputation.json
|
||||
trans.lv = public/language/lv/admin/settings/reputation.json
|
||||
trans.ms = public/language/ms/admin/settings/reputation.json
|
||||
trans.nb = public/language/nb/admin/settings/reputation.json
|
||||
trans.nl = public/language/nl/admin/settings/reputation.json
|
||||
@@ -2977,7 +2820,6 @@ trans.it = public/language/it/admin/settings/tags.json
|
||||
trans.ja = public/language/ja/admin/settings/tags.json
|
||||
trans.ko = public/language/ko/admin/settings/tags.json
|
||||
trans.lt = public/language/lt/admin/settings/tags.json
|
||||
trans.lv = public/language/lv/admin/settings/tags.json
|
||||
trans.ms = public/language/ms/admin/settings/tags.json
|
||||
trans.nb = public/language/nb/admin/settings/tags.json
|
||||
trans.nl = public/language/nl/admin/settings/tags.json
|
||||
@@ -3027,7 +2869,6 @@ trans.it = public/language/it/admin/settings/user.json
|
||||
trans.ja = public/language/ja/admin/settings/user.json
|
||||
trans.ko = public/language/ko/admin/settings/user.json
|
||||
trans.lt = public/language/lt/admin/settings/user.json
|
||||
trans.lv = public/language/lv/admin/settings/user.json
|
||||
trans.ms = public/language/ms/admin/settings/user.json
|
||||
trans.nb = public/language/nb/admin/settings/user.json
|
||||
trans.nl = public/language/nl/admin/settings/user.json
|
||||
@@ -3077,7 +2918,6 @@ trans.it = public/language/it/admin/settings/chat.json
|
||||
trans.ja = public/language/ja/admin/settings/chat.json
|
||||
trans.ko = public/language/ko/admin/settings/chat.json
|
||||
trans.lt = public/language/lt/admin/settings/chat.json
|
||||
trans.lv = public/language/lv/admin/settings/chat.json
|
||||
trans.ms = public/language/ms/admin/settings/chat.json
|
||||
trans.nb = public/language/nb/admin/settings/chat.json
|
||||
trans.nl = public/language/nl/admin/settings/chat.json
|
||||
@@ -3127,7 +2967,6 @@ trans.it = public/language/it/admin/settings/email.json
|
||||
trans.ja = public/language/ja/admin/settings/email.json
|
||||
trans.ko = public/language/ko/admin/settings/email.json
|
||||
trans.lt = public/language/lt/admin/settings/email.json
|
||||
trans.lv = public/language/lv/admin/settings/email.json
|
||||
trans.ms = public/language/ms/admin/settings/email.json
|
||||
trans.nb = public/language/nb/admin/settings/email.json
|
||||
trans.nl = public/language/nl/admin/settings/email.json
|
||||
@@ -3177,7 +3016,6 @@ trans.it = public/language/it/admin/settings/group.json
|
||||
trans.ja = public/language/ja/admin/settings/group.json
|
||||
trans.ko = public/language/ko/admin/settings/group.json
|
||||
trans.lt = public/language/lt/admin/settings/group.json
|
||||
trans.lv = public/language/lv/admin/settings/group.json
|
||||
trans.ms = public/language/ms/admin/settings/group.json
|
||||
trans.nb = public/language/nb/admin/settings/group.json
|
||||
trans.nl = public/language/nl/admin/settings/group.json
|
||||
@@ -3227,7 +3065,6 @@ trans.it = public/language/it/admin/settings/notifications.json
|
||||
trans.ja = public/language/ja/admin/settings/notifications.json
|
||||
trans.ko = public/language/ko/admin/settings/notifications.json
|
||||
trans.lt = public/language/lt/admin/settings/notifications.json
|
||||
trans.lv = public/language/lv/admin/settings/notifications.json
|
||||
trans.ms = public/language/ms/admin/settings/notifications.json
|
||||
trans.nb = public/language/nb/admin/settings/notifications.json
|
||||
trans.nl = public/language/nl/admin/settings/notifications.json
|
||||
@@ -3277,7 +3114,6 @@ trans.it = public/language/it/admin/settings/post.json
|
||||
trans.ja = public/language/ja/admin/settings/post.json
|
||||
trans.ko = public/language/ko/admin/settings/post.json
|
||||
trans.lt = public/language/lt/admin/settings/post.json
|
||||
trans.lv = public/language/lv/admin/settings/post.json
|
||||
trans.ms = public/language/ms/admin/settings/post.json
|
||||
trans.nb = public/language/nb/admin/settings/post.json
|
||||
trans.nl = public/language/nl/admin/settings/post.json
|
||||
@@ -3327,7 +3163,6 @@ trans.it = public/language/it/admin/settings/sockets.json
|
||||
trans.ja = public/language/ja/admin/settings/sockets.json
|
||||
trans.ko = public/language/ko/admin/settings/sockets.json
|
||||
trans.lt = public/language/lt/admin/settings/sockets.json
|
||||
trans.lv = public/language/lv/admin/settings/sockets.json
|
||||
trans.ms = public/language/ms/admin/settings/sockets.json
|
||||
trans.nb = public/language/nb/admin/settings/sockets.json
|
||||
trans.nl = public/language/nl/admin/settings/sockets.json
|
||||
@@ -3377,7 +3212,6 @@ trans.it = public/language/it/admin/settings/uploads.json
|
||||
trans.ja = public/language/ja/admin/settings/uploads.json
|
||||
trans.ko = public/language/ko/admin/settings/uploads.json
|
||||
trans.lt = public/language/lt/admin/settings/uploads.json
|
||||
trans.lv = public/language/lv/admin/settings/uploads.json
|
||||
trans.ms = public/language/ms/admin/settings/uploads.json
|
||||
trans.nb = public/language/nb/admin/settings/uploads.json
|
||||
trans.nl = public/language/nl/admin/settings/uploads.json
|
||||
@@ -3427,7 +3261,6 @@ trans.it = public/language/it/admin/settings/web-crawler.json
|
||||
trans.ja = public/language/ja/admin/settings/web-crawler.json
|
||||
trans.ko = public/language/ko/admin/settings/web-crawler.json
|
||||
trans.lt = public/language/lt/admin/settings/web-crawler.json
|
||||
trans.lv = public/language/lv/admin/settings/web-crawler.json
|
||||
trans.ms = public/language/ms/admin/settings/web-crawler.json
|
||||
trans.nb = public/language/nb/admin/settings/web-crawler.json
|
||||
trans.nl = public/language/nl/admin/settings/web-crawler.json
|
||||
|
||||
177
CHANGELOG.md
177
CHANGELOG.md
@@ -1,177 +0,0 @@
|
||||
#### 1.11.0 (2018-12-14)
|
||||
|
||||
##### Chores
|
||||
|
||||
* incrementing version number - v1.11.1 (2104877c)
|
||||
* **deps:**
|
||||
* update dependency husky to v1.2.1 (63f4b569)
|
||||
* update node:8.14.0 docker digest to dd2381f (7449ae3e)
|
||||
* update node.js to v8.14.0 (8a5a031d)
|
||||
|
||||
##### New Features
|
||||
|
||||
* Allow getting logfile path from config (#7044) (f3e8e065)
|
||||
* remove uid:<uid>:ignored:cids (#7099) (263c9180)
|
||||
* cache category tag whitelist (78fa7340)
|
||||
* make user cards look less derpy (31bb2ae9)
|
||||
* added new middleware authenticateOrGuest (4fba1492)
|
||||
* closes #7070 (7ca62b83)
|
||||
* added README.md in languages folder (648964fa)
|
||||
* up composer (7eee8e1d)
|
||||
* allow array results (54c127d1)
|
||||
* #7023 (f581c052)
|
||||
* close #7002, console message if mismatched origins (89c025d1)
|
||||
* added changelog file to root of repo (e89b4fca)
|
||||
* **email:** don't escape html in notification bodies. (#7042) (d7c55bc3)
|
||||
|
||||
##### Bug Fixes
|
||||
|
||||
* #7108 (81697390)
|
||||
* dont save data for non-positive uids (62f01a83)
|
||||
* #7103 (f103390a)
|
||||
* dont update cid:<cid>:tids:votes if topic is pinned (2f57a4b9)
|
||||
* #7102 (d117df77)
|
||||
* #7102 (85a07e99)
|
||||
* don't explode if there is no css el (74d0e88d)
|
||||
* db info page (26ccd8f6)
|
||||
* logAttempt conditional (a6c8e0ab)
|
||||
* #7087, server-side protection against guest blocks (33d4956b)
|
||||
* don't crash in flags.validate if user blocked target (81aa3a0b)
|
||||
* dont send empty strings (555c092f)
|
||||
* #7085 (fe0f95a2)
|
||||
* #7086 (e55fb437)
|
||||
* wrong variable #7085 (71163421)
|
||||
* admins&mods when there are mutliple lines of users (de437e36)
|
||||
* refreshing settings page on save if language changed (ed46c5e2)
|
||||
* not calling authenticate middleware on resource direct access routes (eeaee8cc)
|
||||
* #7038, autoLocale logic not playing nicely with no-refresh auths (#7059) (5f3d1c76)
|
||||
* #7074 (2604cf63)
|
||||
* #7071 buildSkinAsset won't rebuild continuously (a07d9898)
|
||||
* #7063, logout code should do hard page nav to / or data.next (6df5668e)
|
||||
* #7061 (eab297bd)
|
||||
* skin not changing after login or logout, #7038 (28a1fa78)
|
||||
* #7040 (a63ddbe2)
|
||||
* #7041 (ec0c50d4)
|
||||
* #7043 (8d7c3897)
|
||||
* add missing render function (cb7c2d8c)
|
||||
* #7033 (8808a033)
|
||||
* #7037 (b86f1556)
|
||||
* #6991, add timeout for version Github request (43c3bb02)
|
||||
* #7030 (58d4376f)
|
||||
* **deps:**
|
||||
* update dependency nodebb-plugin-composer-default to v6.1.17 (3bcfd7fc)
|
||||
* update dependency nodebb-theme-persona to v9.1.4 (b6ad5fd4)
|
||||
* update dependency nodebb-plugin-markdown to v8.8.6 (#7079) (46fb365d)
|
||||
* update dependency nodebb-theme-persona to v9.1.3 (#7075) (d2aea57a)
|
||||
* update dependency nodebb-theme-persona to v9.1.2 (42e792ab)
|
||||
* update dependency nodebb-theme-persona to v9.1.1 (#7069) (bdb33056)
|
||||
* update dependency postcss to v7.0.6 (6b5428c5)
|
||||
* update dependency nodebb-plugin-composer-default to v6.1.14 (#7058) (e48ed6e0)
|
||||
* update dependency nodebb-plugin-composer-default to v6.1.13 (#7057) (ada1d6d0)
|
||||
* update dependency nodebb-plugin-composer-default to v6.1.12 (#7056) (9f9f72da)
|
||||
* update dependency nodebb-plugin-composer-default to v6.1.11 (#7055) (89acb896)
|
||||
* update dependency nodebb-theme-slick to v1.2.18 (#7049) (b6cb77c1)
|
||||
* update dependency nodebb-theme-slick to v1.2.17 (#7048) (7334c45b)
|
||||
* update dependency nodebb-theme-slick to v1.2.16 (#7047) (1cb1af0c)
|
||||
* update dependency connect-mongo to v2.0.3 (#7046) (d0d0c7f0)
|
||||
* update dependency nodebb-plugin-dbsearch to v3.0.3 (#7035) (adb1b5f3)
|
||||
* update dependency lru-cache to v4.1.5 (#7031) (887582eb)
|
||||
* update dependency socket.io to v2.2.0 (b9d49867)
|
||||
* update dependency socket.io-client to v2.2.0 (824bd541)
|
||||
* update dependency nodebb-plugin-dbsearch to v3.0.2 (#7028) (11f1b409)
|
||||
* update dependency nodebb-plugin-dbsearch to v3.0.1 (#7027) (e71f443c)
|
||||
* **i18n:** pushed notifications source to tx, pulled fallbacks (8dd8370b)
|
||||
|
||||
##### Code Style Changes
|
||||
|
||||
* **eslint:** match operator-linebreak preferences (ba619c7e)
|
||||
|
||||
### 1.11.0 (2018-11-28)
|
||||
|
||||
##### Chores
|
||||
|
||||
* **deps:**
|
||||
* update dependency lint-staged to v8.1.0 (dd7f8a14)
|
||||
* update dependency husky to v1.2.0 (aee21628)
|
||||
* update node:8.12.0 docker digest to 5dae8ea (0ef451dd)
|
||||
* update dependency husky to v1.1.4 (95d6ab06)
|
||||
* update dependency eslint to v5.9.0 (92441794)
|
||||
* pin dependencies (b0483f21)
|
||||
* update dependency eslint-config-airbnb-base to v13 (#6599) (64b9dabf)
|
||||
* update node.js to v8.12.0 (fa3afbd2)
|
||||
* update dependency husky to v1.1.3 (6cee5b8e)
|
||||
* update dependency lint-staged to v8.0.4 (9d258668)
|
||||
* update dependency lint-staged to v8.0.3 (aaa6fe9e)
|
||||
* update dependency lint-staged to v8 (95d7a5fa)
|
||||
* update dependency jsdom to v13 (52f141c9)
|
||||
* **husky:** setting up husky as recommended in docs (e8a3d929)
|
||||
|
||||
##### New Features
|
||||
|
||||
* enabling commitlint (c58a41ed)
|
||||
* allow disabling of GDPR features via ACP toggle, closes #6847 (4919e9ef)
|
||||
|
||||
##### Bug Fixes
|
||||
|
||||
* **deps:**
|
||||
* update dependency nodebb-theme-vanilla to v10.1.12 (cf928f44)
|
||||
* update dependency nodebb-theme-persona to v9.1.0 (179be9ed)
|
||||
* update dependency nodebb-theme-persona to v9.0.63 (#7019) (68ae3eb6)
|
||||
* update dependency nodebb-plugin-markdown to v8.8.5 (d3ab7d1b)
|
||||
* update dependency nodebb-theme-persona to v9.0.60 (#6984) (cbd50a80)
|
||||
* update dependency nodebb-theme-vanilla to v10.1.10 (#6982) (4c769487)
|
||||
* update dependency nodebb-theme-slick to v1.2.15 (#6981) (acaf1a05)
|
||||
* update dependency nodebb-theme-persona to v9.0.59 (#6980) (5863bb2c)
|
||||
* update dependency lru-cache to v4.1.4 (#6977) (375ab769)
|
||||
* update dependency connect-mongo to v2.0.2 (#6975) (e1597b83)
|
||||
* update dependency nodebb-plugin-markdown to v8.8.4 (84d1013d)
|
||||
* update dependency nodebb-plugin-composer-default to v6.1.8 (fee7e336)
|
||||
* update dependency nodebb-plugin-markdown to v8.8.3 (b182a195)
|
||||
* update dependency nodebb-plugin-composer-default to v6.1.7 (#6966) (1101f327)
|
||||
* update dependency nodebb-theme-persona to v9.0.58 (#6964) (6ade156b)
|
||||
* update dependency mongodb to v3.1.10 (#6962) (662215fa)
|
||||
* update dependency nodebb-theme-persona to v9.0.57 (#6956) (1bf1a439)
|
||||
* update dependency nodebb-theme-persona to v9.0.55 (#6955) (e06683f7)
|
||||
* update dependency nodebb-plugin-composer-default to v6.1.6 (c51ceaf0)
|
||||
* update dependency nodebb-theme-persona to v9.0.54 (bb940b01)
|
||||
* update dependency nodebb-plugin-mentions to v2.2.12 (#6936) (e12a803b)
|
||||
* update dependency nodebb-theme-vanilla to v10.1.9 (#6935) (b480c321)
|
||||
* update dependency nodebb-theme-slick to v1.2.14 (#6934) (9cdd5316)
|
||||
* update dependency nodebb-theme-persona to v9.0.53 (#6933) (9ee1c2f8)
|
||||
* update dependency nodebb-plugin-dbsearch to v2.0.23 (#6931) (dba1db9c)
|
||||
* update dependency jsesc to v2.5.2 (511b4edc)
|
||||
* update dependency validator to v10.9.0 (032caafa)
|
||||
* update dependency spdx-license-list to v5 (a639b6b8)
|
||||
* update dependency nodebb-theme-vanilla to v10.1.8 (eb0a322d)
|
||||
* update dependency nodebb-theme-persona to v9.0.52 (6566a0cb)
|
||||
* update dependency nodebb-plugin-dbsearch to v2.0.22 (#6916) (7808e58c)
|
||||
* update dependency mongodb to v3.1.9 (#6914) (9a9f2af9)
|
||||
* update dependency nodebb-theme-persona to v9.0.51 (e2274fe0)
|
||||
* update dependency nodebb-theme-slick to v1.2.13 (3005428d)
|
||||
* update dependency nodebb-theme-persona to v9.0.50 (#6902) (22140a20)
|
||||
* update dependency nodebb-plugin-markdown to v8.8.2 (0b4c9a80)
|
||||
* update dependency nodebb-theme-vanilla to v10.1.7 (3150a2fc)
|
||||
* update dependency nodebb-theme-slick to v1.2.12 (#6881) (9bcda7f7)
|
||||
* update dependency nodebb-theme-persona to v9.0.49 (#6880) (e0dc00da)
|
||||
* update dependency nodebb-theme-persona to v9.0.48 (2b6f5eec)
|
||||
* added admin/manage/uploads to tx config (7357926f)
|
||||
* #7013, add cache buster to js-enabled.css (f6b92c1d)
|
||||
* removal of scroll anchoring code in favour of browser handling (98c14e0e)
|
||||
* custom navigation item not showing groups (d9452bf3)
|
||||
* flags detail page crash if reporter blocks author (d027207f)
|
||||
* #6922, skin assets not including plugin LESS files (a5022ce4)
|
||||
* #6921, allow square brackets in usernames (da10ca08)
|
||||
* interstitial redirects failing if done via ajaxify (3c8939a8)
|
||||
* username trim on login, closes #6894 (157bea69)
|
||||
* **uploads:** ugly filenames on uploaded asset downloading (f96208a0)
|
||||
* **acp:**
|
||||
* small UI fixes for ACP privileges category selector (#6946) (57b39d5b)
|
||||
* hard-to-discover dropdown selector in ACP (b3f96d28)
|
||||
* **l10n:** some translations (34cbd1fc)
|
||||
|
||||
##### Code Style Changes
|
||||
|
||||
* **eslint:**
|
||||
* newlines in public/src as well (f7bd398e)
|
||||
* enforcing newline on chained calls (95cc27f1)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# The base image is the latest 8.x node (LTS)
|
||||
FROM node:8.15.0@sha256:cb66110c9c7d84bae9a6db8675f49d5c9e34d528023ef185b186e29ae5461051
|
||||
FROM node:8.9.0
|
||||
|
||||
RUN mkdir -p /usr/src/app
|
||||
WORKDIR /usr/src/app
|
||||
|
||||
@@ -37,7 +37,7 @@ module.exports = function (grunt) {
|
||||
// Do nothing, just restart
|
||||
}
|
||||
|
||||
if (compiling && !incomplete.includes(compiling)) {
|
||||
if (compiling && incomplete.indexOf(compiling) === -1) {
|
||||
incomplete.push(compiling);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
# <img alt="NodeBB" src="http://i.imgur.com/mYxPPtB.png" />
|
||||
|
||||
[](https://gitter.im/NodeBB/NodeBB?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
||||
[](https://travis-ci.org/NodeBB/NodeBB)
|
||||
[](https://coveralls.io/github/NodeBB/NodeBB?branch=master)
|
||||
[](https://david-dm.org/nodebb/nodebb?path=install)
|
||||
[](https://codeclimate.com/github/NodeBB/NodeBB)
|
||||
[](https://readthedocs.org/projects/nodebb/?badge=latest)
|
||||
|
||||
[**NodeBB Forum Software**](https://nodebb.org) is powered by Node.js and built on either a Redis or MongoDB database. It utilizes web sockets for instant interactions and real-time notifications. NodeBB has many modern features out of the box such as social network integration and streaming discussions, while still making sure to be compatible with older browsers.
|
||||
|
||||
@@ -40,7 +42,7 @@ Our minimalist "Persona" theme gets you going right away, no coding experience r
|
||||
## How can I follow along/contribute?
|
||||
|
||||
* If you are a developer, feel free to check out the source and submit pull requests. We also have a wide array of [plugins](http://community.nodebb.org/category/7/nodebb-plugins) which would be a great starting point for learning the codebase.
|
||||
* If you are a designer, [NodeBB needs themes](http://community.nodebb.org/category/10/nodebb-themes)! NodeBB's theming system allows extension of the base templates as well as styling via LESS or CSS. NodeBB's base theme utilizes [Bootstrap 3](http://getbootstrap.com/) but themes can choose to use a different framework altogether.
|
||||
* If you are a designer, [NodeBB needs themes](http://community.nodebb.org/category/10/nodebb-themes)! NodeBB's theming system allows extention of the base templates as well as styling via LESS or CSS. NodeBB's base theme utilizes [Bootstrap 3](http://getbootstrap.com/) but themes can choose to use a different framework altogether.
|
||||
* If you know languages other than English you can help us translate NodeBB. We use [Transifex](https://www.transifex.com/projects/p/nodebb/) for internationalization.
|
||||
* Please don't forget to **like**, **follow**, and **star our repo**! Join our growing [community](http://community.nodebb.org) to keep up to date with the latest NodeBB development.
|
||||
|
||||
|
||||
10
app.js
10
app.js
@@ -19,7 +19,11 @@
|
||||
|
||||
'use strict';
|
||||
|
||||
require('./require-main');
|
||||
if (require.main !== module) {
|
||||
require.main.require = function (path) {
|
||||
return require(path);
|
||||
};
|
||||
}
|
||||
|
||||
var nconf = require('nconf');
|
||||
nconf.argv().env({
|
||||
@@ -41,9 +45,8 @@ var configExists = file.existsSync(configFile) || (nconf.get('url') && nconf.get
|
||||
|
||||
var prestart = require('./src/prestart');
|
||||
prestart.loadConfig(configFile);
|
||||
prestart.setupWinston();
|
||||
prestart.versionCheck();
|
||||
winston.verbose('* using configuration stored in: %s', configFile);
|
||||
prestart.setupWinston();
|
||||
|
||||
if (!process.send) {
|
||||
// If run using `node app`, log GNU copyright info along with server info
|
||||
@@ -89,3 +92,4 @@ if (nconf.get('setup') || nconf.get('install')) {
|
||||
} else {
|
||||
require('./src/start').start();
|
||||
}
|
||||
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
'use strict';
|
||||
|
||||
module.exports = { extends: ['@commitlint/config-angular'] };
|
||||
@@ -1,23 +1,9 @@
|
||||
{
|
||||
"title": "NodeBB",
|
||||
"showSiteTitle": 1,
|
||||
"defaultLang": "en-GB",
|
||||
"loginDays": 14,
|
||||
"loginSeconds": 0,
|
||||
"loginAttempts": 5,
|
||||
"lockoutDuration": 60,
|
||||
"adminReloginDuration": 60,
|
||||
"postDelay": 10,
|
||||
"initialPostDelay": 10,
|
||||
"newbiePostDelay": 120,
|
||||
"postEditDuration": 0,
|
||||
"postDeleteDuration": 0,
|
||||
"enablePostHistory": 1,
|
||||
"postCacheSize": 10485760,
|
||||
"disableChat": 0,
|
||||
"chatEditDuration": 0,
|
||||
"chatDeleteDuration": 0,
|
||||
"chatMessageDelay": 200,
|
||||
"newbiePostDelayThreshold": 3,
|
||||
"minimumPostLength": 8,
|
||||
"maximumPostLength": 32767,
|
||||
@@ -25,54 +11,35 @@
|
||||
"maximumTagsPerTopic": 5,
|
||||
"minimumTagLength": 3,
|
||||
"maximumTagLength": 15,
|
||||
"allowGuestSearching": 0,
|
||||
"allowTopicsThumbnail": 0,
|
||||
"registrationType": "normal",
|
||||
"allowLocalLogin": 1,
|
||||
"allowAccountDelete": 1,
|
||||
"allowFileUploads": 0,
|
||||
"allowedFileExtensions": "png,jpg,bmp",
|
||||
"allowUserHomePage": 1,
|
||||
"allowMultipleBadges": 0,
|
||||
"maximumFileSize": 2048,
|
||||
"resizeImageWidthThreshold": 2000,
|
||||
"resizeImageWidth": 760,
|
||||
"rejectImageWidth": 5000,
|
||||
"rejectImageHeight": 5000,
|
||||
"resizeImageQuality": 80,
|
||||
"topicThumbSize": 120,
|
||||
"minimumTitleLength": 3,
|
||||
"maximumTitleLength": 255,
|
||||
"minimumUsernameLength": 2,
|
||||
"maximumUsernameLength": 16,
|
||||
"minimumPasswordLength": 6,
|
||||
"minimumPasswordStrength": 1,
|
||||
"maximumSignatureLength": 255,
|
||||
"maximumAboutMeLength": 1000,
|
||||
"maximumUsersInChatRoom": 0,
|
||||
"maximumChatMessageLength": 1000,
|
||||
"maximumProfileImageSize": 256,
|
||||
"maximumCoverImageSize": 2048,
|
||||
"profileImageDimension": 200,
|
||||
"profile:convertProfileImageToPNG": 0,
|
||||
"profile:keepAllUserImages": 0,
|
||||
"requireEmailConfirmation": 0,
|
||||
"gdpr_enabled": 1,
|
||||
"allowProfileImageUploads": 1,
|
||||
"teaserPost": "last-reply",
|
||||
"allowPrivateGroups": 1,
|
||||
"allowGroupCreation": 0,
|
||||
"unreadCutoff": 2,
|
||||
"bookmarkThreshold": 5,
|
||||
"topicsPerList": 20,
|
||||
"autoDetectLang": 1,
|
||||
"reputation:disabled": 0,
|
||||
"downvote:disabled": 0,
|
||||
"disableSignatures": 0,
|
||||
"min:rep:downvote": 0,
|
||||
"min:rep:flag": 0,
|
||||
"min:rep:profile-picture": 0,
|
||||
"min:rep:cover-picture": 0,
|
||||
"min:rep:website": 0,
|
||||
"min:rep:aboutme": 0,
|
||||
"min:rep:signature": 0,
|
||||
"notificationType_upvote": "notification",
|
||||
"notificationType_new-topic": "notification",
|
||||
"notificationType_new-reply": "notification",
|
||||
@@ -81,41 +48,7 @@
|
||||
"notificationType_group-invite": "notification",
|
||||
"notificationType_mention": "notification",
|
||||
"notificationType_new-register": "notification",
|
||||
"notificationType_post-queue": "notification",
|
||||
"notificationType_new-post-flag": "notification",
|
||||
"notificationType_new-user-flag": "notification",
|
||||
"topicStaleDays": 60,
|
||||
"maxTopicsPerPage": 20,
|
||||
"maxPostsPerPage": 20,
|
||||
"topicsPerPage": 20,
|
||||
"postsPerPage": 20,
|
||||
"userSearchResultsPerPage": 50,
|
||||
"maximumGroupNameLength": 255,
|
||||
"preventTopicDeleteAfterReplies": 0,
|
||||
"feeds:disableSitemap": 0,
|
||||
"sitemapTopics": 500,
|
||||
"maintenanceMode": 0,
|
||||
"votesArePublic": 0,
|
||||
"maximumInvites": 0,
|
||||
"username:disableEdit": 0,
|
||||
"email:disableEdit": 0,
|
||||
"hideFullname": 0,
|
||||
"allowGuestHandles": 0,
|
||||
"disableRecentCategoryFilter": 0,
|
||||
"maximumRelatedTopics": 0,
|
||||
"disableEmailSubscriptions": 0,
|
||||
"emailConfirmInterval": 10,
|
||||
"inviteExpiration": 7,
|
||||
"digestHour": 17,
|
||||
"passwordExpiryDays": 0,
|
||||
"hsts-maxage": 31536000,
|
||||
"hsts-subdomains": 0,
|
||||
"hsts-preload": 0,
|
||||
"hsts-enabled": 0,
|
||||
"eventLoopCheckEnabled": 1,
|
||||
"eventLoopLagThreshold": 100,
|
||||
"eventLoopInterval": 500,
|
||||
"onlineCutoff": 30,
|
||||
"timeagoCutoff": 30,
|
||||
"categoryWatchState": "watching"
|
||||
}
|
||||
"notificationType_post-queue": "notification",
|
||||
"notificationType_new-post-flag": "notification",
|
||||
"notificationType_new-user-flag": "notification"
|
||||
}
|
||||
|
||||
@@ -15,7 +15,9 @@
|
||||
"iconClass": "fa-inbox",
|
||||
"textClass": "visible-xs-inline",
|
||||
"text": "[[global:header.unread]]",
|
||||
"groups": ["registered-users"]
|
||||
"properties": {
|
||||
"loggedIn": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"route": "/recent",
|
||||
@@ -64,9 +66,9 @@
|
||||
"iconClass": "fa-cogs",
|
||||
"textClass": "visible-xs-inline",
|
||||
"text": "[[global:header.admin]]",
|
||||
"groups": ["administrators"],
|
||||
"properties": {
|
||||
"targetBlank": false
|
||||
"targetBlank": false,
|
||||
"adminOnly": true
|
||||
}
|
||||
}
|
||||
]
|
||||
@@ -7,7 +7,6 @@ var winston = require('winston');
|
||||
var questions = {
|
||||
redis: require('../src/database/redis').questions,
|
||||
mongo: require('../src/database/mongo').questions,
|
||||
postgres: require('../src/database/postgres').questions,
|
||||
};
|
||||
|
||||
module.exports = function (config, callback) {
|
||||
@@ -39,12 +38,6 @@ function getDatabaseConfig(config, callback) {
|
||||
} else {
|
||||
prompt.get(questions.mongo, callback);
|
||||
}
|
||||
} else if (config.database === 'postgres') {
|
||||
if (config['postgres:host'] && config['postgres:port']) {
|
||||
callback(null, config);
|
||||
} else {
|
||||
prompt.get(questions.postgres, callback);
|
||||
}
|
||||
} else {
|
||||
return callback(new Error('unknown database : ' + config.database));
|
||||
}
|
||||
@@ -76,19 +69,11 @@ function saveDatabaseConfig(config, databaseConfig, callback) {
|
||||
database: databaseConfig['mongo:database'],
|
||||
uri: databaseConfig['mongo:uri'],
|
||||
};
|
||||
} else if (config.database === 'postgres') {
|
||||
config.postgres = {
|
||||
host: databaseConfig['postgres:host'],
|
||||
port: databaseConfig['postgres:port'],
|
||||
username: databaseConfig['postgres:username'],
|
||||
password: databaseConfig['postgres:password'],
|
||||
database: databaseConfig['postgres:database'],
|
||||
};
|
||||
} else {
|
||||
return callback(new Error('unknown database : ' + config.database));
|
||||
}
|
||||
|
||||
var allQuestions = questions.redis.concat(questions.mongo).concat(questions.postgres);
|
||||
var allQuestions = questions.redis.concat(questions.mongo);
|
||||
for (var x = 0; x < allQuestions.length; x += 1) {
|
||||
delete config[allQuestions[x].name];
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"name": "nodebb",
|
||||
"license": "GPL-3.0",
|
||||
"description": "NodeBB Forum",
|
||||
"version": "1.11.2",
|
||||
"version": "1.9.3",
|
||||
"homepage": "http://www.nodebb.org",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
@@ -16,47 +16,32 @@
|
||||
"test": "nyc --reporter=html --reporter=text-summary mocha",
|
||||
"coveralls": "nyc report --reporter=text-lcov | coveralls && rm -r coverage"
|
||||
},
|
||||
"husky": {
|
||||
"hooks": {
|
||||
"pre-commit": "lint-staged",
|
||||
"commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
|
||||
}
|
||||
},
|
||||
"lint-staged": {
|
||||
"*.js": [
|
||||
"eslint --fix",
|
||||
"git add"
|
||||
]
|
||||
},
|
||||
"dependencies": {
|
||||
"ace-builds": "^1.2.9",
|
||||
"archiver": "^3.0.0",
|
||||
"async": "2.6.1",
|
||||
"autoprefixer": "^9.4.6",
|
||||
"archiver": "^2.1.1",
|
||||
"async": "2.6.0",
|
||||
"autoprefixer": "7.2.4",
|
||||
"bcryptjs": "2.4.3",
|
||||
"benchpressjs": "^1.2.5",
|
||||
"benchpressjs": "^1.2.1",
|
||||
"body-parser": "^1.18.2",
|
||||
"bootstrap": "^3.4.0",
|
||||
"bootswatch": "^3",
|
||||
"bootstrap": "^3.3.7",
|
||||
"chart.js": "^2.7.1",
|
||||
"cli-graph": "^3.2.2",
|
||||
"clipboard": "^2.0.1",
|
||||
"colors": "^1.1.2",
|
||||
"commander": "^2.12.2",
|
||||
"compression": "^1.7.1",
|
||||
"commander": "^2.12.2",
|
||||
"connect-ensure-login": "^0.1.1",
|
||||
"connect-flash": "^0.1.1",
|
||||
"connect-mongo": "2.0.3",
|
||||
"connect-mongo": "2.0.1",
|
||||
"connect-multiparty": "^2.1.0",
|
||||
"connect-pg-simple": "^5.0.0",
|
||||
"connect-redis": "3.4.0",
|
||||
"continuation-local-storage": "^3.2.1",
|
||||
"connect-redis": "3.3.3",
|
||||
"cookie-parser": "^1.4.3",
|
||||
"cron": "^1.3.0",
|
||||
"cropperjs": "^1.2.2",
|
||||
"csurf": "^1.9.0",
|
||||
"daemon": "^1.1.0",
|
||||
"diff": "^4.0.1",
|
||||
"diff": "^3.4.0",
|
||||
"express": "^4.16.2",
|
||||
"express-session": "^1.15.6",
|
||||
"express-useragent": "^1.0.12",
|
||||
@@ -64,93 +49,84 @@
|
||||
"helmet": "^3.11.0",
|
||||
"html-to-text": "^4.0.0",
|
||||
"ipaddr.js": "^1.5.4",
|
||||
"jimp": "0.2.28",
|
||||
"jquery": "^3.2.1",
|
||||
"jsesc": "2.5.2",
|
||||
"json-2-csv": "^3.0.0",
|
||||
"jsonwebtoken": "^8.4.0",
|
||||
"jsesc": "2.5.1",
|
||||
"json-2-csv": "^2.1.2",
|
||||
"less": "^2.7.3",
|
||||
"lodash": "^4.17.10",
|
||||
"logrotate-stream": "^0.2.5",
|
||||
"lru-cache": "5.1.1",
|
||||
"lru-cache": "4.1.3",
|
||||
"material-design-lite": "^1.3.0",
|
||||
"mime": "^2.2.0",
|
||||
"mkdirp": "^0.5.1",
|
||||
"mongodb": "3.1.13",
|
||||
"mongodb": "3.0.8",
|
||||
"morgan": "^1.9.0",
|
||||
"mousetrap": "^1.6.1",
|
||||
"mubsub-nbb": "^1.5.0",
|
||||
"nconf": "^0.10.0",
|
||||
"nodebb-plugin-composer-default": "6.1.21",
|
||||
"nodebb-plugin-dbsearch": "3.0.4",
|
||||
"nodebb-plugin-emoji": "^2.2.5",
|
||||
"nodebb-plugin-composer-default": "6.0.23",
|
||||
"nodebb-plugin-dbsearch": "2.0.16",
|
||||
"nodebb-plugin-emoji": "^2.2.2",
|
||||
"nodebb-plugin-emoji-android": "2.0.0",
|
||||
"nodebb-plugin-markdown": "8.8.7",
|
||||
"nodebb-plugin-mentions": "2.5.2",
|
||||
"nodebb-plugin-markdown": "8.4.3",
|
||||
"nodebb-plugin-mentions": "2.2.6",
|
||||
"nodebb-plugin-soundpack-default": "1.0.0",
|
||||
"nodebb-plugin-spam-be-gone": "0.5.5",
|
||||
"nodebb-rewards-essentials": "0.0.13",
|
||||
"nodebb-theme-lavender": "5.0.8",
|
||||
"nodebb-theme-persona": "9.1.13",
|
||||
"nodebb-theme-slick": "1.2.19",
|
||||
"nodebb-theme-vanilla": "10.1.18",
|
||||
"nodebb-widget-essentials": "4.0.13",
|
||||
"nodemailer": "^5.0.0",
|
||||
"nodebb-plugin-spam-be-gone": "0.5.3",
|
||||
"nodebb-rewards-essentials": "0.0.11",
|
||||
"nodebb-theme-lavender": "5.0.4",
|
||||
"nodebb-theme-persona": "9.0.5",
|
||||
"nodebb-theme-slick": "1.2.1",
|
||||
"nodebb-theme-vanilla": "10.0.5",
|
||||
"nodebb-widget-essentials": "4.0.4",
|
||||
"nodemailer": "4.6.4",
|
||||
"passport": "^0.4.0",
|
||||
"passport-local": "1.0.0",
|
||||
"pg": "^7.4.0",
|
||||
"pg-cursor": "^2.0.0",
|
||||
"postcss": "7.0.14",
|
||||
"postcss": "6.0.22",
|
||||
"postcss-clean": "1.1.0",
|
||||
"promise-polyfill": "^8.0.0",
|
||||
"promise-polyfill": "^7.0.0",
|
||||
"prompt": "^1.0.0",
|
||||
"redis": "2.8.0",
|
||||
"request": "2.88.0",
|
||||
"rimraf": "2.6.3",
|
||||
"request": "2.85.0",
|
||||
"rimraf": "2.6.2",
|
||||
"rss": "^1.2.2",
|
||||
"sanitize-html": "^1.16.3",
|
||||
"semver": "^5.4.1",
|
||||
"serve-favicon": "^2.4.5",
|
||||
"sharp": "0.21.3",
|
||||
"sitemap": "^2.0.0",
|
||||
"socket.io": "2.2.0",
|
||||
"socket.io-adapter-cluster": "^1.0.1",
|
||||
"sitemap": "^1.13.0",
|
||||
"socket.io": "2.1.0",
|
||||
"socket.io-adapter-mongo": "^2.0.1",
|
||||
"socket.io-adapter-postgres": "^1.0.1",
|
||||
"socket.io-client": "2.2.0",
|
||||
"socket.io-client": "2.1.0",
|
||||
"socket.io-redis": "5.2.0",
|
||||
"socketio-wildcard": "2.0.0",
|
||||
"spdx-license-list": "^5.0.0",
|
||||
"spider-detector": "1.0.19",
|
||||
"spdx-license-list": "^4.0.0",
|
||||
"spider-detector": "1.0.18",
|
||||
"toobusy-js": "^0.5.1",
|
||||
"uglify-es": "^3.3.9",
|
||||
"validator": "10.11.0",
|
||||
"winston": "3.1.0",
|
||||
"validator": "10.2.0",
|
||||
"winston": "^2.4.0",
|
||||
"xml": "^1.0.1",
|
||||
"xregexp": "^4.1.1",
|
||||
"zxcvbn": "^4.4.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@commitlint/cli": "7.3.2",
|
||||
"@commitlint/config-angular": "7.3.1",
|
||||
"coveralls": "3.0.2",
|
||||
"eslint": "5.12.1",
|
||||
"eslint-config-airbnb-base": "13.1.0",
|
||||
"eslint-plugin-import": "2.15.0",
|
||||
"grunt": "1.0.3",
|
||||
"grunt-contrib-watch": "1.1.0",
|
||||
"husky": "1.3.1",
|
||||
"jsdom": "13.1.0",
|
||||
"lint-staged": "8.1.0",
|
||||
"mocha": "5.2.0",
|
||||
"mocha-lcov-reporter": "1.3.0",
|
||||
"nyc": "13.1.0",
|
||||
"smtp-server": "3.5.0"
|
||||
"coveralls": "^3.0.0",
|
||||
"eslint": "^4.14.0",
|
||||
"eslint-config-airbnb-base": "^12.1.0",
|
||||
"eslint-plugin-import": "^2.8.0",
|
||||
"grunt": "^1.0.1",
|
||||
"grunt-contrib-watch": "^1.0.0",
|
||||
"jsdom": "^11.5.1",
|
||||
"mocha": "^4.1.0",
|
||||
"mocha-lcov-reporter": "^1.3.0",
|
||||
"nyc": "^11.4.1",
|
||||
"smtp-server": "^3.4.1"
|
||||
},
|
||||
"bugs": {
|
||||
"url": "https://github.com/NodeBB/NodeBB/issues"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
"node": ">=6"
|
||||
},
|
||||
"maintainers": [
|
||||
{
|
||||
|
||||
@@ -15,31 +15,14 @@ var Benchpress = require('benchpressjs');
|
||||
var app = express();
|
||||
var server;
|
||||
|
||||
var formats = [
|
||||
winston.format.colorize(),
|
||||
];
|
||||
|
||||
const timestampFormat = winston.format((info) => {
|
||||
var dateString = new Date().toISOString() + ' [' + global.process.pid + ']';
|
||||
info.level = dateString + ' - ' + info.level;
|
||||
return info;
|
||||
});
|
||||
formats.push(timestampFormat());
|
||||
formats.push(winston.format.splat());
|
||||
formats.push(winston.format.simple());
|
||||
|
||||
winston.configure({
|
||||
winston.add(winston.transports.File, {
|
||||
filename: 'logs/webinstall.log',
|
||||
colorize: true,
|
||||
timestamp: function () {
|
||||
var date = new Date();
|
||||
return date.getDate() + '/' + (date.getMonth() + 1) + ' ' + date.toTimeString().substr(0, 5) + ' [' + global.process.pid + ']';
|
||||
},
|
||||
level: 'verbose',
|
||||
format: winston.format.combine.apply(null, formats),
|
||||
transports: [
|
||||
new winston.transports.Console({
|
||||
handleExceptions: true,
|
||||
}),
|
||||
new winston.transports.File({
|
||||
filename: 'logs/webinstall.log',
|
||||
handleExceptions: true,
|
||||
}),
|
||||
],
|
||||
});
|
||||
|
||||
var web = module.exports;
|
||||
@@ -55,11 +38,10 @@ var scripts = [
|
||||
var installing = false;
|
||||
var success = false;
|
||||
var error = false;
|
||||
var launchUrl;
|
||||
|
||||
web.install = function (port) {
|
||||
port = port || 4567;
|
||||
winston.info('Launching web installer on port ' + port);
|
||||
winston.info('Launching web installer on port', port);
|
||||
|
||||
app.use(express.static('public', {}));
|
||||
app.engine('tpl', function (filepath, options, callback) {
|
||||
@@ -107,7 +89,7 @@ function ping(req, res) {
|
||||
}
|
||||
|
||||
function welcome(req, res) {
|
||||
var dbs = ['redis', 'mongo', 'postgres'];
|
||||
var dbs = ['redis', 'mongo'];
|
||||
var databases = dbs.map(function (databaseName) {
|
||||
var questions = require('../src/database/' + databaseName).questions.filter(function (question) {
|
||||
return question && !question.hideOnWebInstall;
|
||||
@@ -123,7 +105,6 @@ function welcome(req, res) {
|
||||
|
||||
res.render('install/index', {
|
||||
url: nconf.get('url') || (req.protocol + '://' + req.get('host')),
|
||||
launchUrl: launchUrl,
|
||||
skipGeneralSetup: !!nconf.get('url'),
|
||||
databases: databases,
|
||||
skipDatabaseSetup: !!nconf.get('database'),
|
||||
@@ -163,7 +144,6 @@ function install(req, res) {
|
||||
|
||||
winston.info('Starting setup process');
|
||||
winston.info(setupEnvVars);
|
||||
launchUrl = setupEnvVars.url;
|
||||
|
||||
var child = require('child_process').fork('app', ['--setup'], {
|
||||
env: setupEnvVars,
|
||||
|
||||
109
loader.js
109
loader.js
@@ -7,7 +7,6 @@ var path = require('path');
|
||||
var fork = require('child_process').fork;
|
||||
var async = require('async');
|
||||
var logrotate = require('logrotate-stream');
|
||||
var mkdirp = require('mkdirp');
|
||||
|
||||
var file = require('./src/file');
|
||||
var pkg = require('./package.json');
|
||||
@@ -19,14 +18,7 @@ nconf.argv().env().file({
|
||||
});
|
||||
|
||||
var pidFilePath = path.join(__dirname, 'pidfile');
|
||||
|
||||
var outputLogFilePath = path.join(__dirname, nconf.get('logFile') || 'logs/output.log');
|
||||
|
||||
var logDir = path.dirname(outputLogFilePath);
|
||||
if (!fs.existsSync(logDir)) {
|
||||
mkdirp.sync(path.dirname(outputLogFilePath));
|
||||
}
|
||||
|
||||
var outputLogFilePath = path.join(__dirname, 'logs/output.log');
|
||||
var output = logrotate({ file: outputLogFilePath, size: '1m', keep: 3, compress: true });
|
||||
var silent = nconf.get('silent') === 'false' ? false : nconf.get('silent') !== false;
|
||||
var numProcs;
|
||||
@@ -45,6 +37,7 @@ Loader.init = function (callback) {
|
||||
}
|
||||
|
||||
process.on('SIGHUP', Loader.restart);
|
||||
process.on('SIGUSR2', Loader.reload);
|
||||
process.on('SIGTERM', Loader.stop);
|
||||
callback();
|
||||
};
|
||||
@@ -91,17 +84,9 @@ Loader.addWorkerEvents = function (worker) {
|
||||
console.log('[cluster] Restarting...');
|
||||
Loader.restart();
|
||||
break;
|
||||
case 'pubsub':
|
||||
workers.forEach(function (w) {
|
||||
w.send(message);
|
||||
});
|
||||
break;
|
||||
case 'socket.io':
|
||||
workers.forEach(function (w) {
|
||||
if (w !== worker) {
|
||||
w.send(message);
|
||||
}
|
||||
});
|
||||
case 'reload':
|
||||
console.log('[cluster] Reloading...');
|
||||
Loader.reload();
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -191,6 +176,14 @@ Loader.restart = function () {
|
||||
});
|
||||
};
|
||||
|
||||
Loader.reload = function () {
|
||||
workers.forEach(function (worker) {
|
||||
worker.send({
|
||||
action: 'reload',
|
||||
});
|
||||
});
|
||||
};
|
||||
|
||||
Loader.stop = function () {
|
||||
killWorkers();
|
||||
|
||||
@@ -207,41 +200,53 @@ function killWorkers() {
|
||||
});
|
||||
}
|
||||
|
||||
fs.open(pathToConfig, 'r', function (err) {
|
||||
if (err) {
|
||||
// No config detected, kickstart web installer
|
||||
fork('app');
|
||||
return;
|
||||
}
|
||||
|
||||
if (nconf.get('daemon') !== 'false' && nconf.get('daemon') !== false) {
|
||||
if (file.existsSync(pidFilePath)) {
|
||||
Loader.notifyWorkers = function (msg, worker_pid) {
|
||||
worker_pid = parseInt(worker_pid, 10);
|
||||
workers.forEach(function (worker) {
|
||||
if (parseInt(worker.pid, 10) !== worker_pid) {
|
||||
try {
|
||||
var pid = fs.readFileSync(pidFilePath, { encoding: 'utf-8' });
|
||||
process.kill(pid, 0);
|
||||
process.exit();
|
||||
worker.send(msg);
|
||||
} catch (e) {
|
||||
fs.unlinkSync(pidFilePath);
|
||||
console.log('[cluster/notifyWorkers] Failed to reach pid ' + worker_pid);
|
||||
}
|
||||
}
|
||||
|
||||
require('daemon')({
|
||||
stdout: process.stdout,
|
||||
stderr: process.stderr,
|
||||
cwd: process.cwd(),
|
||||
});
|
||||
|
||||
fs.writeFileSync(pidFilePath, process.pid);
|
||||
}
|
||||
|
||||
async.series([
|
||||
Loader.init,
|
||||
Loader.displayStartupMessages,
|
||||
Loader.start,
|
||||
], function (err) {
|
||||
if (err) {
|
||||
console.error('[loader] Error during startup');
|
||||
throw err;
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
fs.open(pathToConfig, 'r', function (err) {
|
||||
if (!err) {
|
||||
if (nconf.get('daemon') !== 'false' && nconf.get('daemon') !== false) {
|
||||
if (file.existsSync(pidFilePath)) {
|
||||
try {
|
||||
var pid = fs.readFileSync(pidFilePath, { encoding: 'utf-8' });
|
||||
process.kill(pid, 0);
|
||||
process.exit();
|
||||
} catch (e) {
|
||||
fs.unlinkSync(pidFilePath);
|
||||
}
|
||||
}
|
||||
|
||||
require('daemon')({
|
||||
stdout: process.stdout,
|
||||
stderr: process.stderr,
|
||||
cwd: process.cwd(),
|
||||
});
|
||||
|
||||
fs.writeFileSync(pidFilePath, process.pid);
|
||||
}
|
||||
|
||||
async.series([
|
||||
Loader.init,
|
||||
Loader.displayStartupMessages,
|
||||
Loader.start,
|
||||
], function (err) {
|
||||
if (err) {
|
||||
console.error('[loader] Error during startup');
|
||||
throw err;
|
||||
}
|
||||
});
|
||||
} else {
|
||||
// No config detected, kickstart web installer
|
||||
fork('app');
|
||||
}
|
||||
});
|
||||
|
||||
@@ -1 +1 @@
|
||||
@echo off && cd %~dp0 && node ./nodebb %*
|
||||
@echo off && cd %~dp0 && node ./src/cli %*
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
/*
|
||||
The following stylesheet is only included on pages that can execute javascript
|
||||
*/
|
||||
|
||||
.page-topic [component="post/content"] img:not(.not-responsive):not([data-state]) {
|
||||
display: none !important;
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
# Important note about localising NodeBB
|
||||
|
||||
The files here are read-only and overwritten daily (if there are changes) by the
|
||||
helper bot [Misty](https://github.com/nodebb-misty).
|
||||
|
||||
Our localisation efforts are handled via [our Transifex Project](https://www.transifex.com/nodebb/nodebb/),
|
||||
and any pull requests made to this directory will be automatically closed because
|
||||
localisations can go out-of-sync when edited directly.
|
||||
|
||||
If there are non-localised strings and you cannot find them in Transifex, please
|
||||
[open a new issue on our bug tracker](https://github.com/NodeBB/NodeBB/issues/new)
|
||||
so we can take a look.
|
||||
|
||||
Thank you for helping localise NodeBB!
|
||||
3
public/language/TODO
Normal file
3
public/language/TODO
Normal file
@@ -0,0 +1,3 @@
|
||||
NPM INSTALL
|
||||
For now, language packs will be stored here. Eventually, will be moved to server side to allow for npm install-ability.
|
||||
When that happens, server code will generate compressed JSON language files in this folder.
|
||||
@@ -18,16 +18,10 @@
|
||||
"mongo.resident-memory": "Resident Memory",
|
||||
"mongo.virtual-memory": "الذاكرة الإفتراضية",
|
||||
"mongo.mapped-memory": "Mapped Memory",
|
||||
"mongo.bytes-in": "Bytes In",
|
||||
"mongo.bytes-out": "Bytes Out",
|
||||
"mongo.num-requests": "Number of Requests",
|
||||
"mongo.raw-info": "MongoDB Raw Info",
|
||||
|
||||
"redis": "Redis",
|
||||
"redis.version": "Redis Version",
|
||||
"redis.keys": "Keys",
|
||||
"redis.expires": "Expires",
|
||||
"redis.avg-ttl": "Average TTL",
|
||||
"redis.connected-clients": "Connected Clients",
|
||||
"redis.connected-slaves": "Connected Slaves",
|
||||
"redis.blocked-clients": "Blocked Clients",
|
||||
@@ -36,16 +30,7 @@
|
||||
"redis.total-connections-recieved": "إجمالي الاتصالات المستلمة",
|
||||
"redis.total-commands-processed": "إجمالي الأوامر التي تمت معالجتها",
|
||||
"redis.iops": "Instantaneous Ops. Per Second",
|
||||
"redis.iinput": "Instantaneous Input Per Second",
|
||||
"redis.ioutput": "Instantaneous Output Per Second",
|
||||
"redis.total-input": "Total Input",
|
||||
"redis.total-output": "Total Ouput",
|
||||
|
||||
"redis.keyspace-hits": "Keyspace Hits",
|
||||
"redis.keyspace-misses": "Keyspace Misses",
|
||||
"redis.raw-info": "Redis Raw Info",
|
||||
|
||||
"postgres": "Postgres",
|
||||
"postgres.version": "PostgreSQL Version",
|
||||
"postgres.raw-info": "Postgres Raw Info"
|
||||
}
|
||||
"redis.raw-info": "Redis Raw Info"
|
||||
}
|
||||
@@ -65,12 +65,8 @@
|
||||
"high-presence-topics": "مواضيع ذات حضور قوي",
|
||||
|
||||
"graphs.page-views": "مشاهدات الصفحة",
|
||||
"graphs.page-views-registered": "Page Views Registered",
|
||||
"graphs.page-views-guest": "Page Views Guest",
|
||||
"graphs.page-views-bot": "Page Views Bot",
|
||||
"graphs.unique-visitors": "زوار فريدين",
|
||||
"graphs.registered-users": "مستخدمين مسجلين",
|
||||
"graphs.anonymous-users": "مستخدمين مجهولين",
|
||||
"last-restarted-by": "Last restarted by",
|
||||
"no-users-browsing": "No users browsing"
|
||||
"last-restarted-by": "Last restarted by"
|
||||
}
|
||||
|
||||
@@ -8,7 +8,10 @@
|
||||
"id": "ID: <small>optional</small>",
|
||||
|
||||
"properties": "Properties:",
|
||||
"groups": "Groups:",
|
||||
"only-admins": "Only display to Admins",
|
||||
"only-global-mods-and-admins": "Only display to Global Moderators and Admins",
|
||||
"only-logged-in": "Only display to logged in users",
|
||||
"only-guest": "Only display to guests",
|
||||
"open-new-window": "Open in a new window",
|
||||
|
||||
"btn.delete": "Delete",
|
||||
|
||||
@@ -19,7 +19,6 @@
|
||||
"parent-category-none": "(None)",
|
||||
"copy-settings": "Copy Settings From",
|
||||
"optional-clone-settings": "(Optional) Clone Settings From Category",
|
||||
"clone-children": "Clone Children Categories And Settings",
|
||||
"purge": "Purge Category",
|
||||
|
||||
"enable": "Enable",
|
||||
@@ -29,8 +28,7 @@
|
||||
"select-category": "Select Category",
|
||||
"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. Select the domain of effect from the dropdown below.",
|
||||
"privileges.category-selector": "Configuring privileges for ",
|
||||
"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.",
|
||||
"privileges.warning": "<strong>Note</strong>: Privilege settings take effect immediately. It is not necessary to save the category after adjusting these settings.",
|
||||
"privileges.section-viewing": "Viewing Privileges",
|
||||
"privileges.section-posting": "Posting Privileges",
|
||||
@@ -69,6 +67,5 @@
|
||||
"alert.find-group": "Find a Group",
|
||||
"alert.group-search": "Search for a group here...",
|
||||
"collapse-all": "Collapse All",
|
||||
"expand-all": "Expand All",
|
||||
"disable-on-create": "Disable on create"
|
||||
"expand-all": "Expand All"
|
||||
}
|
||||
@@ -1,30 +0,0 @@
|
||||
{
|
||||
"global": "Global",
|
||||
"global.no-users": "No user-specific global privileges.",
|
||||
|
||||
"chat": "Chat",
|
||||
"upload-images": "Upload Images",
|
||||
"upload-files": "Upload Files",
|
||||
"signature": "Signature",
|
||||
"ban": "Ban",
|
||||
"search-content": "Search Content",
|
||||
"search-users": "Search Users",
|
||||
"search-tags": "Search Tags",
|
||||
"allow-local-login": "Local Login",
|
||||
|
||||
"find-category": "Find Category",
|
||||
"access-category": "Access Category",
|
||||
"access-topics": "Access Topics",
|
||||
"create-topics": "Create Topics",
|
||||
"reply-to-topics": "Reply to Topics",
|
||||
"tag-topics": "Tag Topics",
|
||||
"edit-posts": "Edit Posts",
|
||||
"view-edit-history": "View Edit History",
|
||||
"delete-posts": "Delete Posts",
|
||||
"view_deleted": "View Deleted Posts",
|
||||
"upvote-posts": "Upvote Posts",
|
||||
"downvote-posts": "Downvote Posts",
|
||||
"delete-topics": "Delete Topics",
|
||||
"purge": "Purge",
|
||||
"moderate": "Moderate"
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
{
|
||||
"upload-file": "Upload File",
|
||||
"filename": "Filename",
|
||||
"usage": "Post Usage",
|
||||
"orphaned": "Orphaned",
|
||||
"size/filecount": "Size / Filecount",
|
||||
"confirm-delete": "Do you really want to delete this file?",
|
||||
"filecount": "%1 files"
|
||||
}
|
||||
@@ -93,7 +93,7 @@
|
||||
"alerts.error-x": "<strong>Error</strong><p>%1</p>",
|
||||
"alerts.create-success": "User created!",
|
||||
|
||||
"alerts.prompt-email": "Emails: ",
|
||||
"alerts.prompt-email": "Email: ",
|
||||
"alerts.email-sent-to": "An invitation email has been sent to %1",
|
||||
"alerts.x-users-found": "%1 user(s) found! Search took %2 ms."
|
||||
}
|
||||
@@ -57,7 +57,6 @@
|
||||
"section-advanced": "Advanced",
|
||||
"advanced/database": "Database",
|
||||
"advanced/events": "Events",
|
||||
"advanced/hooks": "Hooks",
|
||||
"advanced/logs": "Logs",
|
||||
"advanced/errors": "Errors",
|
||||
"advanced/cache": "Cache",
|
||||
|
||||
@@ -6,17 +6,10 @@
|
||||
"headers.allow-from": "Set ALLOW-FROM to Place NodeBB in an iFrame",
|
||||
"headers.powered-by": "Customise the \"Powered By\" header sent by NodeBB",
|
||||
"headers.acao": "Access-Control-Allow-Origin",
|
||||
"headers.acao-regex": "Access-Control-Allow-Origin Regular Expression",
|
||||
"headers.acao-help": "To deny access to all sites, leave empty",
|
||||
"headers.acao-regex-help": "Enter regular expressions here to match dynamic origins. To deny access to all sites, leave empty",
|
||||
"headers.acac": "Access-Control-Allow-Credentials",
|
||||
"headers.acam": "Access-Control-Allow-Methods",
|
||||
"headers.acah": "Access-Control-Allow-Headers",
|
||||
"hsts": "Strict Transport Security",
|
||||
"hsts.enabled": "Enabled HSTS (recommended)",
|
||||
"hsts.subdomains": "Include subdomains in HSTS header",
|
||||
"hsts.preload": "Allow preloading of HSTS header",
|
||||
"hsts.help": "If enabled, an HSTS header will be set for this site. You can elect to include subdomains and preloading flags in your header. If in doubt, you can leave these unchecked. <a href=\"%1\">More information <i class=\"fa fa-external-link\"></i></a>",
|
||||
"traffic-management": "Traffic Management",
|
||||
"traffic.help": "NodeBB deploys equipped with a module that automatically denies requests in high-traffic situations. You can tune these settings here, although the defaults are a good starting point.",
|
||||
"traffic.enable": "Enable Traffic Management",
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
{
|
||||
"handles": "Guest Handles",
|
||||
"handles.enabled": "Allow guest handles",
|
||||
"handles.enabled-help": "This option exposes a new field that allows guests to pick a name to associate with each post they make. If disabled, they will simply be called \"Guest\""
|
||||
"handles.enabled-help": "This option exposes a new field that allows guests to pick a name to associate with each post they make. If disabled, they will simply be called \"Guest\"",
|
||||
"privileges": "Guest Privileges",
|
||||
"privileges.can-search": "Allow guests to search without logging in",
|
||||
"privileges.can-search-users": "Allow guests to search users without logging in"
|
||||
}
|
||||
@@ -6,5 +6,6 @@
|
||||
"max-posts-per-page": "Maximum posts per page",
|
||||
"categories": "Category Pagination",
|
||||
"topics-per-page": "Topics per Page",
|
||||
"max-topics-per-page": "Maximum topics per page"
|
||||
"max-topics-per-page": "Maximum topics per page",
|
||||
"initial-num-load": "Initial Number of Topics to Load on Unread, Recent, and Popular"
|
||||
}
|
||||
@@ -8,7 +8,5 @@
|
||||
"min-rep-flag": "Minimum reputation to flag posts",
|
||||
"min-rep-website": "Minimum reputation to add \"Website\" to user profile",
|
||||
"min-rep-aboutme": "Minimum reputation to add \"About me\" to user profile",
|
||||
"min-rep-signature": "Minimum reputation to add \"Signature\" to user profile",
|
||||
"min-rep-profile-picture": "Minimum reputation to add \"Profile Picture\" to user profile",
|
||||
"min-rep-cover-picture": "Minimum reputation to add \"Cover Picture\" to user profile"
|
||||
"min-rep-signature": "Minimum reputation to add \"Signature\" to user profile"
|
||||
}
|
||||
@@ -2,20 +2,12 @@
|
||||
"posts": "المشاركات",
|
||||
"allow-files": "السماح للأعضاء بتحميل الملفات الإعتيادية",
|
||||
"private": "جعل الملفات التي تم رفعها خاصة",
|
||||
"private-extensions": "File extensions to make private",
|
||||
"private-uploads-extensions-help": "Enter comma-separated list of file extensions to make private here (e.g. <code>pdf,xls,doc</code>). An empty list means all files are private.",
|
||||
"resize-image-width-threshold": "Resize images if they are wider than specified width",
|
||||
"resize-image-width-threshold-help": "(in pixels, default: 1520 pixels, set to 0 to disable)",
|
||||
"resize-image-width": "Resize images down to specified width",
|
||||
"resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)",
|
||||
"max-image-width": "تغيير حجم الصور إلى عرض محدد (بالبكسل)",
|
||||
"max-image-width-help": "(بالبكسل، الافتراضي: 760 بكسل، ضع إلى 0 لتعطيل الخاصية)",
|
||||
"resize-image-quality": "Quality to use when resizing images",
|
||||
"resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.",
|
||||
"max-file-size": "الحد الأقصى لحجم الملف (بالكيبيبايت)",
|
||||
"max-file-size-help": "(بالكيبيبايت، الافتراضي: 2048)",
|
||||
"reject-image-width": "Maximum Image Width (in pixels)",
|
||||
"reject-image-width-help": "Images wider than this value will be rejected.",
|
||||
"reject-image-height": "Maximum Image Height (in pixels)",
|
||||
"reject-image-height-help": "Images taller than this value will be rejected.",
|
||||
"allow-topic-thumbnails": "السماح للاعضاء برفع الصور المصغرة للموضوع",
|
||||
"topic-thumb-size": "حجم الصورة المصغرة للموضوع",
|
||||
"allowed-file-extensions": "إمتدادات الملفات المسموح بها",
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
{
|
||||
"authentication": "المصادقة",
|
||||
"allow-local-login": "السماح بتسجيل الدخول المحلي",
|
||||
"require-email-confirmation": "يطلب تأكيد البريد الإلكتروني",
|
||||
"email-confirm-interval": "لا يمكن للمستخدم إعادة إرسال رسالة تأكيد البريد الالكتروني حتى مرور",
|
||||
"email-confirm-email2": "دقائق",
|
||||
@@ -8,8 +9,6 @@
|
||||
"allow-login-with.username": "اسم المستخدم فقط",
|
||||
"allow-login-with.email": "البريد الالكتروني فقط",
|
||||
"account-settings": "إعدادت الحساب",
|
||||
"gdpr_enabled": "Enable GDPR consent collection",
|
||||
"gdpr_enabled_help": "When enabled, all new registrants will be required to explicitly give consent for data collection and usage under the <a href=\"https://eugdpr.org/the-regulation/gdpr-faqs/\">General Data Protection Regulation (GDPR)</a>. <strong>Note</strong>: Enabling GDPR does not force pre-existing users to provide consent. To do so, you will need to install the GDPR plugin.",
|
||||
"disable-username-changes": "عدم السماح بتغيير اسم المستخدم",
|
||||
"disable-email-changes": "عدم السماح بتغيير البريد الالكتروني",
|
||||
"disable-password-changes": "عدم السماح بتغيير كلمة المرور",
|
||||
@@ -27,12 +26,6 @@
|
||||
"lockout-duration": "مدة تأمين الحساب (دقائق)",
|
||||
"login-days": "عدد الأيام لتذكر جلسات تسجيل دخول المستخدم",
|
||||
"password-expiry-days": "فرض عملية تغيير كلمة المرور بعد مرور عدد محدد من الأيام",
|
||||
"session-time": "Session Time",
|
||||
"session-time-days": "Days",
|
||||
"session-time-seconds": "Seconds",
|
||||
"session-time-help": "These values are used to govern how long a user stays logged in when they check "Remember Me" on login. Note that only one of these values will be used. If there is no <i>seconds</i> value we fall back to <i>days</i>. If there is no <i>days</i> value we default to <i>14 days</i>.",
|
||||
"online-cutoff": "Minutes after user is considered inactive",
|
||||
"online-cutoff-help": "If user performs no actions for this duration, they are considered inactive and they do not receive realtime updates.",
|
||||
"registration": "تسجيل المستخدم",
|
||||
"registration-type": "نوع التسجيل",
|
||||
"registration-type.normal": "عادي",
|
||||
@@ -70,9 +63,5 @@
|
||||
"email-post-notif": "Send an email when replies are made to topics I am subscribed to",
|
||||
"follow-created-topics": "Follow topics you create",
|
||||
"follow-replied-topics": "Follow topics that you reply to",
|
||||
"default-notification-settings": "Default notification settings",
|
||||
"categoryWatchState": "Default category watch state",
|
||||
"categoryWatchState.watching": "Watching",
|
||||
"categoryWatchState.notwatching": "Not Watching",
|
||||
"categoryWatchState.ignoring": "Ignoring"
|
||||
"default-notification-settings": "Default notification settings"
|
||||
}
|
||||
@@ -7,16 +7,14 @@
|
||||
"browsing": "تصفح",
|
||||
"no_replies": "لم يرد أحد",
|
||||
"no_new_posts": "لا توجد مشاركات جديدة.",
|
||||
"share_this_category": "شارك هذا القسم",
|
||||
"watch": "تابع",
|
||||
"ignore": "تجاهل",
|
||||
"watching": "متابع",
|
||||
"not-watching": "Not Watching",
|
||||
"ignoring": "متجاهل",
|
||||
"watching.description": "Show topics in unread and recent",
|
||||
"not-watching.description": "Do not show topics in unread, show in recent",
|
||||
"ignoring.description": "Do not show topics in unread and recent",
|
||||
"watching.message": "You are now watching updates from this category and all subcategories",
|
||||
"notwatching.message": "You are not watching updates from this category and all subcategories",
|
||||
"ignoring.message": "You are now ignoring updates from this category and all subcategories",
|
||||
"watching.description": "أظهر المواضيع في غير مقروء",
|
||||
"ignoring.description": "لا تظهر المواضيع في غير مقروء",
|
||||
"watch.message": "أنت الآن تتابع التحديثات من هذا القسم وجميع الأقسام الفرعية",
|
||||
"ignore.message": "أنت الآن تتجاهل التحديثات من هذا القسم وجميع الأقسام الفرعية",
|
||||
"watched-categories": "الأقسام المُتابعة"
|
||||
}
|
||||
@@ -1,12 +1,9 @@
|
||||
{
|
||||
"test-email.subject": "Test Email",
|
||||
"password-reset-requested": "Password Reset Requested!",
|
||||
"password-reset-requested": "تم طلب إعادة تعيين كلمة المرور - %1!",
|
||||
"welcome-to": "مرحبًا بك في %1",
|
||||
"invite": "دعوة من %1",
|
||||
"greeting_no_name": "مرحبًا",
|
||||
"greeting_with_name": "مرحبًا بك يا %1",
|
||||
"email.verify-your-email.subject": "Please verify your email",
|
||||
"email.verify.text1": "Your email address has changed!",
|
||||
"welcome.text1": "شكرًا على تسجيلك في %1!",
|
||||
"welcome.text2": "لتفعيل حسابك، نحتاج إلى التأكد من صحة عنوان البريد الإلكتروني الذي سجلت به.",
|
||||
"welcome.text3": "تم قبول نتسجيلك ، يمكنك الدخول باتسخدام اسم المستخدم و كلمة المرور.",
|
||||
|
||||
@@ -78,7 +78,6 @@
|
||||
"still-uploading": "الرجاء الانتظار حتى يكتمل الرفع.",
|
||||
"file-too-big": "الحد الأقصى لرفع الملفات %1 كيلو بت. رجاءًا ارفع ملف أصغر",
|
||||
"guest-upload-disabled": "خاصية رفع الملفات غير مفعلة للزوار.",
|
||||
"cors-error": "Unable to upload image due to misconfigured CORS",
|
||||
"already-bookmarked": "You have already bookmarked this post",
|
||||
"already-unbookmarked": "You have already unbookmarked this post",
|
||||
"cant-ban-other-admins": "لايمكن حظر مدبر نظام آخر.",
|
||||
@@ -88,7 +87,6 @@
|
||||
"invalid-image-type": "نوع الصورة غير مدعوم. الأنواع المدعومة هي : %1",
|
||||
"invalid-image-extension": "امتداد الصورة غير مدعوم.",
|
||||
"invalid-file-type": "صيغة الملف غير مدعومة. الأنواع المدعومة هي: %1",
|
||||
"invalid-image-dimensions": "Image dimensions are too big",
|
||||
"group-name-too-short": "اسم المجموعة قصير",
|
||||
"group-name-too-long": "اسم المجموعة طويل.",
|
||||
"group-already-exists": "المجموعة موجودة مسبقا",
|
||||
@@ -120,7 +118,7 @@
|
||||
"chat-edit-duration-expired": "You are only allowed to edit chat messages for %1 second(s) after posting",
|
||||
"chat-delete-duration-expired": "You are only allowed to delete chat messages for %1 second(s) after posting",
|
||||
"chat-deleted-already": "This chat message has already been deleted.",
|
||||
"chat-restored-already": "This chat message has already been restored.",
|
||||
"chat-restored'already": "This chat message has already been restored.",
|
||||
"already-voting-for-this-post": "لقد شاركت بالتصويت ، ألا تذكر؟",
|
||||
"reputation-system-disabled": "نظام السمعة معطل",
|
||||
"downvoting-disabled": "التصويتات السلبية معطلة",
|
||||
@@ -129,8 +127,6 @@
|
||||
"not-enough-reputation-min-rep-website": "You do not have enough reputation to add a website",
|
||||
"not-enough-reputation-min-rep-aboutme": "You do not have enough reputation to add an about me",
|
||||
"not-enough-reputation-min-rep-signature": "You do not have enough reputation to add a signature",
|
||||
"not-enough-reputation-min-rep-profile-picture": "You do not have enough reputation to add a profile picture",
|
||||
"not-enough-reputation-min-rep-cover-picture": "You do not have enough reputation to add a cover picture",
|
||||
"already-flagged": "لقد بلغت عن هذه المشاركة من قبل.",
|
||||
"self-vote": "You cannot vote on your own post",
|
||||
"reload-failed": "المنتدى واجه مشكلة أثناء إعادة التحميل: \"%1\". سيواصل المنتدى خدمة العملاء السابقين لكن يجب عليك إلغاء أي تغيير قمت به قبل إعادة التحميل.",
|
||||
@@ -152,9 +148,5 @@
|
||||
"no-topics-selected": "No topics selected!",
|
||||
"cant-move-to-same-topic": "Can't move post to same topic!",
|
||||
"cannot-block-self": "You cannot block yourself!",
|
||||
"cannot-block-privileged": "You cannot block administrators or global moderators",
|
||||
"cannot-block-guest": "Guest are not able to block other users",
|
||||
"already-blocked": "This user is already blocked",
|
||||
"already-unblocked": "This user is already unblocked",
|
||||
"no-connection": "There seems to be a problem with your internet connection"
|
||||
"cannot-block-privileged": "You cannot block administrators or global moderators"
|
||||
}
|
||||
@@ -85,7 +85,6 @@
|
||||
"language": "اللغة",
|
||||
"guest": "زائر",
|
||||
"guests": "الزوار",
|
||||
"former_user": "A Former User",
|
||||
"updated.title": "تم تحديث المنتدى",
|
||||
"updated.message": "لقد تم تحديث المنتدى إلى آخر نسخة للتو. إضغط هنا لإعادة تحميل الصفحة.",
|
||||
"privacy": "الخصوصية",
|
||||
|
||||
@@ -28,7 +28,6 @@
|
||||
"details.grant": "منح/سحب المِلكية",
|
||||
"details.kick": "طرد",
|
||||
"details.kick_confirm": "Are you sure you want to remove this member from the group?",
|
||||
"details.add-member": "Add Member",
|
||||
"details.owner_options": "إدارة المجموعة",
|
||||
"details.group_name": "اسم المجموعة",
|
||||
"details.member_count": "عدد اﻷعضاء",
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
"chat.delete_message_confirm": "هل أنت متأكد من أنك تريد حذف هذه الرسالة؟",
|
||||
"chat.retrieving-users": "Retrieving users...",
|
||||
"chat.manage-room": "Manage Chat Room",
|
||||
"chat.add-user-help": "Search for users here. When selected, the user will be added to the chat. The new user will not be able to see chat messages written before they were added to the conversation. Only room owners (<i class=\"fa fa-star text-warning\"></i>) may remove users from chat rooms.",
|
||||
"chat.add-user-help": "Search for users here. When selected, the user will be added to the chat. The new user will not be able to see chat messages written before they were added to the conversation. Only room owners may remove users from chat rooms.",
|
||||
"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.rename-room": "Rename Room",
|
||||
"chat.rename-placeholder": "Enter your room name here",
|
||||
@@ -32,8 +32,6 @@
|
||||
"chat.leave-help": "Leaving this chat will remove you from future correspondence in this chat. If you are re-added in the future, you will not see any chat history from prior to your re-joining.",
|
||||
"chat.in-room": "In this room",
|
||||
"chat.kick": "Kick",
|
||||
"chat.show-ip": "Show IP",
|
||||
"chat.owner": "Room Owner",
|
||||
"composer.compose": "اكتب",
|
||||
"composer.show_preview": "عرض المعاينة",
|
||||
"composer.hide_preview": "إخفاء المعاينة",
|
||||
@@ -47,7 +45,6 @@
|
||||
"composer.formatting.italic": "Italic",
|
||||
"composer.formatting.list": "List",
|
||||
"composer.formatting.strikethrough": "Strikethrough",
|
||||
"composer.formatting.code": "Code",
|
||||
"composer.formatting.link": "Link",
|
||||
"composer.formatting.picture": "Picture",
|
||||
"composer.upload-picture": "Upload Image",
|
||||
|
||||
@@ -8,7 +8,8 @@
|
||||
"outgoing_link_message": "You are now leaving %1",
|
||||
"continue_to": "استمر إلى %1",
|
||||
"return_to": "عودة إى %1",
|
||||
"new_notification": "You have a new notification",
|
||||
"new_notification": "تنبيه جديد",
|
||||
"new_notification_from": "You have a new Notification from %1",
|
||||
"you_have_unread_notifications": "لديك تنبيهات غير مقروءة.",
|
||||
"all": "All",
|
||||
"topics": "Topics",
|
||||
@@ -56,7 +57,6 @@
|
||||
"notificationType_follow": "When someone starts following you",
|
||||
"notificationType_new-chat": "When you receive a chat message",
|
||||
"notificationType_group-invite": "When you receive a group invite",
|
||||
"notificationType_group-request-membership": "When someone requests to join a group you own",
|
||||
"notificationType_new-register": "When someone gets added to registration queue",
|
||||
"notificationType_post-queue": "When a new post is queued",
|
||||
"notificationType_new-post-flag": "When a post is flagged",
|
||||
|
||||
@@ -6,10 +6,7 @@
|
||||
"popular-month": "المواضيع الشائعة هذا الشهر",
|
||||
"popular-alltime": "المواضيع الشائعة منذ القدم",
|
||||
"recent": "المواضيع الحديثة",
|
||||
"top-day": "Top voted topics today",
|
||||
"top-week": "Top voted topics this week",
|
||||
"top-month": "Top voted topics this month",
|
||||
"top-alltime": "Top Voted Topics",
|
||||
"top": "Top Voted Topics",
|
||||
"moderator-tools": "Moderator Tools",
|
||||
"flagged-content": "Flagged Content",
|
||||
"ip-blacklist": "IP Blacklist",
|
||||
@@ -45,7 +42,6 @@
|
||||
"account/posts": "Posts made by %1",
|
||||
"account/topics": "Topics created by %1",
|
||||
"account/groups": "%1's Groups",
|
||||
"account/watched_categories": "%1's Watched Categories",
|
||||
"account/bookmarks": "%1's Bookmarked Posts",
|
||||
"account/settings": "خيارات المستخدم",
|
||||
"account/watched": "Topics watched by %1",
|
||||
@@ -55,7 +51,6 @@
|
||||
"account/best": "Best posts made by %1",
|
||||
"account/blocks": "Blocked users for %1",
|
||||
"account/uploads": "Uploads by %1",
|
||||
"account/sessions": "Login Sessions",
|
||||
"confirm": "تم التحقق من عنوان البريد الإلكتروني",
|
||||
"maintenance.text": "جاري صيانة %1. المرجو العودة لاحقًا.",
|
||||
"maintenance.messageIntro": "بالإضافة إلى ذلك، قام مدبر النظام بترك هذه الرسالة:",
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
"at-most": "على اﻷكثر",
|
||||
"relevance": "Relevance",
|
||||
"post-time": "تاريخ المشاركة",
|
||||
"votes": "Votes",
|
||||
"newer-than": "أحدث من",
|
||||
"older-than": "أقدم من",
|
||||
"any-date": "أي وقت",
|
||||
@@ -31,7 +30,6 @@
|
||||
"sort-by": "عرض حسب",
|
||||
"last-reply-time": "تاريخ آخر رد",
|
||||
"topic-title": "عنوان الموضوع",
|
||||
"topic-votes": "Topic votes",
|
||||
"number-of-replies": "عدد الردود",
|
||||
"number-of-views": "عدد المشاهدات",
|
||||
"topic-start-date": "تاريخ بدأ الموضوع",
|
||||
|
||||
@@ -25,16 +25,12 @@
|
||||
"profile_views": "عدد المشاهدات",
|
||||
"reputation": "السمعة",
|
||||
"bookmarks": "Bookmarks",
|
||||
"watched_categories": "Watched categories",
|
||||
"watched": "متابع",
|
||||
"ignored": "تم تجاهله",
|
||||
"default-category-watch-state": "Default category watch state",
|
||||
"followers": "المتابعون",
|
||||
"following": "يتابع",
|
||||
"blocks": "Blocks",
|
||||
"block_toggle": "Toggle Block",
|
||||
"block_user": "Block User",
|
||||
"unblock_user": "Unblock User",
|
||||
"aboutme": "معلومة عنك او السيرة الذاتية",
|
||||
"signature": "توقيع",
|
||||
"birthday": "عيد ميلاد",
|
||||
@@ -49,7 +45,6 @@
|
||||
"change_picture": "تغيير الصورة",
|
||||
"change_username": "تغيير اسم المستخدم",
|
||||
"change_email": "تغيير البريد اﻹلكتروني",
|
||||
"email_same_as_password": "Please enter your current password to continue – you've entered your new email again",
|
||||
"edit": "تعديل",
|
||||
"edit-profile": "تعديل الملف الشخصي",
|
||||
"default_picture": "أيقونة افتراضية",
|
||||
@@ -86,6 +81,7 @@
|
||||
"digest_daily": "يوميا",
|
||||
"digest_weekly": "أسبوعيًّا",
|
||||
"digest_monthly": "شهريًّا",
|
||||
"settings-require-reload": "تغيير بعض اﻹعدادات يتطلب تحديث الصفحة. إضغط هنا لتحديث الصفحة",
|
||||
"has_no_follower": "هذا المستخدم ليس لديه أية متابعين :(",
|
||||
"follows_no_one": "هذا المستخدم لا يتابع أحد :(",
|
||||
"has_no_posts": "هذا المستخدم لم يشارك حتى الآن.",
|
||||
@@ -111,15 +107,15 @@
|
||||
"no-sound": "بدون صوت",
|
||||
"upvote-notif-freq": "معدل تكرار تنبيهات التصويت للأعلى",
|
||||
"upvote-notif-freq.all": "كل التصويتات للأعلى",
|
||||
"upvote-notif-freq.first": "First Per Post",
|
||||
"upvote-notif-freq.everyTen": "كل عشر تصويتات للأعلى",
|
||||
"upvote-notif-freq.threshold": "On 1, 5, 10, 25, 50, 100, 150, 200...",
|
||||
"upvote-notif-freq.logarithmic": "On 10, 100, 1000...",
|
||||
"upvote-notif-freq.disabled": "معطل",
|
||||
"browsing": "خيارات التصفح",
|
||||
"open_links_in_new_tab": "فتح الروابط الخارجية في نافدة جديدة",
|
||||
"enable_topic_searching": "تفعيل خاصية البحث داخل المواضيع",
|
||||
"topic_search_help": "إذا قمت بتفعيل ميزة البحث في-الموضوع، سيتم تجاوز الخيار الافتراضي للمتصفح مما يؤدي للبحث بكامل الموضوع بدلا عن البحث في الجزء الظاهر في الشاشة.",
|
||||
"delay_image_loading": "تأخير عرض الصور",
|
||||
"image_load_delay_help": "إذا تم تمكينه، فلن يتم تحميل الصور في المواضيع حتى يتم تمريرها في الشاشة",
|
||||
"scroll_to_my_post": "بعد اضافة رد على المشاركة, قم بإظهار المشاركة",
|
||||
"follow_topics_you_reply_to": "متابعة المواضيع التي تقوم بالرد عليها",
|
||||
"follow_topics_you_create": "متابعة المواضيع التي تقوم بإنشائها",
|
||||
@@ -150,7 +146,6 @@
|
||||
"info.moderation-note": "ملاحظة الإشراف",
|
||||
"info.moderation-note.success": "تم حفظ ملاحظة الإشراف",
|
||||
"info.moderation-note.add": "إضافة ملاحظة",
|
||||
"sessions.description": "This page allows you to view any active sessions on this forum and revoke them if necessary. You can revoke your own session by logging out of your account.",
|
||||
"consent.title": "Your Rights & Consent",
|
||||
"consent.lead": "This community forum collects and processes your personal information.",
|
||||
"consent.intro": "We use this information strictly to personalise your experience in this community, as well as to associate the posts you make to your user account. During the registration step you were asked to provide a username and email address, you can also optionally provide additional information to complete your user profile on this website.<br /><br />We retain this information for the life of your user account, and you are able to withdraw consent at any time by deleting your account. At any time you may request a copy of your contribution to this website, via your Rights & Consent page.<br /><br />If you have any questions or concerns, we encourage you to reach out to this forum's administrative team.",
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
"filter-by": "Filter By",
|
||||
"online-only": "المتصلون فقط",
|
||||
"invite": "دعوة",
|
||||
"prompt-email": "Emails:",
|
||||
"invitation-email-sent": "تم إرسال دعوة بالبريد الإلكتروني إلى %1",
|
||||
"user_list": "قائمة اﻷعضاء",
|
||||
"recent_topics": "أحدث المواضيع",
|
||||
|
||||
@@ -18,16 +18,10 @@
|
||||
"mongo.resident-memory": "Текущо активна памет",
|
||||
"mongo.virtual-memory": "Виртуална памет",
|
||||
"mongo.mapped-memory": "Заделена памет",
|
||||
"mongo.bytes-in": "Байтове ВХ",
|
||||
"mongo.bytes-out": "Байтове ИЗХ",
|
||||
"mongo.num-requests": "Брой заявки",
|
||||
"mongo.raw-info": "Сурови данни от MongoDB",
|
||||
|
||||
"redis": "Redis",
|
||||
"redis.version": "Версия на Redis",
|
||||
"redis.keys": "Ключове",
|
||||
"redis.expires": "Изтичания",
|
||||
"redis.avg-ttl": "Средно време на живот (TTL)",
|
||||
"redis.connected-clients": "Свързани клиенти",
|
||||
"redis.connected-slaves": "Свързани второстепенни сървъри",
|
||||
"redis.blocked-clients": "Блокирани клиенти",
|
||||
@@ -36,16 +30,7 @@
|
||||
"redis.total-connections-recieved": "Общо получени свързвания",
|
||||
"redis.total-commands-processed": "Общо обработени команди",
|
||||
"redis.iops": "Едновременни операции в секунда",
|
||||
"redis.iinput": "Едновременен вход в секунда",
|
||||
"redis.ioutput": "Едновременен изход в секунда",
|
||||
"redis.total-input": "Общ вход",
|
||||
"redis.total-output": "Общ изход",
|
||||
|
||||
"redis.keyspace-hits": "Успешни търсения на ключове",
|
||||
"redis.keyspace-misses": "Неуспешни търсения на ключове",
|
||||
"redis.raw-info": "Сурови данни от Redis",
|
||||
|
||||
"postgres": "Postgres",
|
||||
"postgres.version": "Версия на PostgreSQL",
|
||||
"postgres.raw-info": "Сурови данни от Postgres"
|
||||
}
|
||||
"redis.raw-info": "Сурови данни от Redis"
|
||||
}
|
||||
@@ -65,12 +65,8 @@
|
||||
"high-presence-topics": "Теми с най-голяма присъственост",
|
||||
|
||||
"graphs.page-views": "Преглеждания на страниците",
|
||||
"graphs.page-views-registered": "Преглеждания на страниците от регистрирани потребители",
|
||||
"graphs.page-views-guest": "Преглеждания на страниците от гости",
|
||||
"graphs.page-views-bot": "Преглеждания на страниците от ботове",
|
||||
"graphs.unique-visitors": "Уникални посетители",
|
||||
"graphs.registered-users": "Регистрирани потребители",
|
||||
"graphs.anonymous-users": "Анонимни потребители",
|
||||
"last-restarted-by": "Последно рестартиране от",
|
||||
"no-users-browsing": "Няма разглеждащи потребители"
|
||||
"last-restarted-by": "Последно рестартиране от"
|
||||
}
|
||||
|
||||
@@ -8,7 +8,10 @@
|
||||
"id": "Идентификатор: <small>незадължително</small>",
|
||||
|
||||
"properties": "Свойства:",
|
||||
"groups": "Групи:",
|
||||
"only-admins": "Да е видимо само за администраторите",
|
||||
"only-global-mods-and-admins": "Да е видимо само за глобалните модератори и администраторите",
|
||||
"only-logged-in": "Да е видимо само за вписаните потребители",
|
||||
"only-guest": "Да е видимо само за гостите",
|
||||
"open-new-window": "Отваряне в нов прозорец",
|
||||
|
||||
"btn.delete": "Изтриване",
|
||||
|
||||
@@ -19,7 +19,6 @@
|
||||
"parent-category-none": "(Няма)",
|
||||
"copy-settings": "Копиране на настройките от",
|
||||
"optional-clone-settings": "(Незадължително) Копиране на настройките от категория",
|
||||
"clone-children": "Клониране на дъщерните категории и настройки",
|
||||
"purge": "Изтриване на категорията",
|
||||
|
||||
"enable": "Включване",
|
||||
@@ -29,8 +28,7 @@
|
||||
"select-category": "Изберете категория",
|
||||
"set-parent-category": "Задайте базова категория",
|
||||
|
||||
"privileges.description": "В тази секция можете да настроите правомощията за достъп до тази категория. Правомощията могат да бъдат давани на отделни потребители или на цели групи. Изберете обхвата на приложение от падащото меню по-долу.",
|
||||
"privileges.category-selector": "Настройване на правомощията за ",
|
||||
"privileges.description": "В тази секция можете да настроите правомощията за достъп до тази категория. Правомощията могат да бъдат давани на отделни потребители или на цели групи. Можете да добавите нов потребител в тази таблица като го потърсите чрез формуляра по-долу.",
|
||||
"privileges.warning": "<strong>Забележка</strong>: Настройките за правомощията влизат в сила моментално. Не е нужно да запазвате категорията след като промените тези настройки.",
|
||||
"privileges.section-viewing": "Правомощия за преглед",
|
||||
"privileges.section-posting": "Правомощия за публикуване",
|
||||
@@ -69,6 +67,5 @@
|
||||
"alert.find-group": "Търсене на група",
|
||||
"alert.group-search": "Потърсете група тук…",
|
||||
"collapse-all": "Свиване на всички",
|
||||
"expand-all": "Разгъване на всички",
|
||||
"disable-on-create": "Изключване при създаване"
|
||||
"expand-all": "Разгъване на всички"
|
||||
}
|
||||
@@ -1,30 +0,0 @@
|
||||
{
|
||||
"global": "Глобални",
|
||||
"global.no-users": "Няма глобални правомощия за отделни потребители.",
|
||||
|
||||
"chat": "Разговор",
|
||||
"upload-images": "Качване на изображения",
|
||||
"upload-files": "Качване на файлове",
|
||||
"signature": "Подпис",
|
||||
"ban": "Блокиране",
|
||||
"search-content": "Търсене на съдържание",
|
||||
"search-users": "Търсене на потребители",
|
||||
"search-tags": "Търсене на етикети",
|
||||
"allow-local-login": "Локално вписване",
|
||||
|
||||
"find-category": "Търсене на категория",
|
||||
"access-category": "Достъп до категория",
|
||||
"access-topics": "Достъп до теми",
|
||||
"create-topics": "Създаване на теми",
|
||||
"reply-to-topics": "Отговаряне в теми",
|
||||
"tag-topics": "Поставяне на етикети на теми",
|
||||
"edit-posts": "Редактиране на публикации",
|
||||
"view-edit-history": "Преглед на историята на редакциите",
|
||||
"delete-posts": "Изтриване на публикации",
|
||||
"view_deleted": "Преглед на изтритите публикации",
|
||||
"upvote-posts": "Положително гласуване за публикации",
|
||||
"downvote-posts": "Отрицателно гласуване за публикации",
|
||||
"delete-topics": "Изтриване на теми",
|
||||
"purge": "Изчистване",
|
||||
"moderate": "Модериране"
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
{
|
||||
"upload-file": "Качване на файл",
|
||||
"filename": "Име на файла",
|
||||
"usage": "Използване в публикации",
|
||||
"orphaned": "Без ползвания",
|
||||
"size/filecount": "Размер / брой файлове",
|
||||
"confirm-delete": "Наистина ли искате да изтриете този файл?",
|
||||
"filecount": "%1 файла"
|
||||
}
|
||||
@@ -93,7 +93,7 @@
|
||||
"alerts.error-x": "<strong>Грешка</strong><p>%1</p>",
|
||||
"alerts.create-success": "Потребителят е създаден!",
|
||||
|
||||
"alerts.prompt-email": "Е-пощи: ",
|
||||
"alerts.prompt-email": "Е-поща:",
|
||||
"alerts.email-sent-to": "Беше изпратено е-писмо за потвърждение до %1",
|
||||
"alerts.x-users-found": "Намерени потребители: %1! Търсенето отне %2 милисекунди."
|
||||
}
|
||||
@@ -57,7 +57,6 @@
|
||||
"section-advanced": "Разширени",
|
||||
"advanced/database": "База данни",
|
||||
"advanced/events": "Събития",
|
||||
"advanced/hooks": "Куки",
|
||||
"advanced/logs": "Журнали",
|
||||
"advanced/errors": "Грешки",
|
||||
"advanced/cache": "Кеш",
|
||||
|
||||
@@ -6,17 +6,10 @@
|
||||
"headers.allow-from": "Задайте „ALLOW-FROM“, за да поставите NodeBB в „iFrame“",
|
||||
"headers.powered-by": "Персонализиране на заглавната част „Захранван от“, която се изпраща от NodeBB",
|
||||
"headers.acao": "Произход за разрешаване на управлението на достъпа",
|
||||
"headers.acao-regex": "Регулярен израз за произхода за разрешаване на управлението на достъпа",
|
||||
"headers.acao-help": "За да забраните достъпа до всички уеб сайтове, оставете празно",
|
||||
"headers.acao-regex-help": "Въведете регулярен израз за съвпадение с динамичните произходи. За да забраните достъпа на всички уеб сайтове, оставете това празно.",
|
||||
"headers.acac": "Удостоверителни данни за разрешаване на управлението на достъпа",
|
||||
"headers.acam": "Методи за разрешаване на управлението на достъпа",
|
||||
"headers.acah": "Заглавки за разрешаване на управлението на достъпа",
|
||||
"hsts": "Стриктна транспортна сигурност",
|
||||
"hsts.enabled": "Включване на HSTS (препоръчително)",
|
||||
"hsts.subdomains": "Включване на поддомейните в заглавката на HSTS",
|
||||
"hsts.preload": "Позволяване на предварителното зареждане на заглавката на HSTS",
|
||||
"hsts.help": "Ако това е включено, за този уеб ще бъде настроена заглавка за HSTS. Можете да изберете дали да включите поддомейните и дали за заредите предварително флаговете в заглавката си. Ако не знаете какво да направите, най-добре не избирайте нищо. <a href=\"%1\">Още информация<i class=\"fa fa-external-link\"></i></a>",
|
||||
"traffic-management": "Управление на трафика",
|
||||
"traffic.help": "NodeBB има вграден модул, който автоматично отказва заявките в натоварените моменти. Можете да настроите поведението тук, въпреки че стойностите по подразбиране са добра отправна точка.",
|
||||
"traffic.enable": "Включване на управлението на трафика",
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
{
|
||||
"handles": "Имена за гостите",
|
||||
"handles.enabled": "Позволяване на имената за гостите",
|
||||
"handles.enabled-help": "Тази възможност предоставя ново поле, което позволява на гостите да си изберат име, което да се използва за всяка публикация, която правят. Ако е изключено, всички те просто ще имат името „Гост“."
|
||||
"handles.enabled-help": "Тази възможност предоставя ново поле, което позволява на гостите да си изберат име, което да се използва за всяка публикация, която правят. Ако е изключено, всички те просто ще имат името „Гост“.",
|
||||
"privileges": "Правомощия за гостите",
|
||||
"privileges.can-search": "Позволяване на гостите да търсят без да се вписват",
|
||||
"privileges.can-search-users": "Позволяване на гостите да търсят потребители без да има нужда да се вписват в системата."
|
||||
}
|
||||
@@ -6,5 +6,6 @@
|
||||
"max-posts-per-page": "Максимален брой публикации на страница",
|
||||
"categories": "Странициране на категориите",
|
||||
"topics-per-page": "Теми на страница",
|
||||
"max-topics-per-page": "Максимален брой теми на страница"
|
||||
"max-topics-per-page": "Максимален брой теми на страница",
|
||||
"initial-num-load": "Начален брой теми, които да бъдат заредени за „непрочетени“, „скорошни“ и „популярни“"
|
||||
}
|
||||
@@ -8,7 +8,5 @@
|
||||
"min-rep-flag": "Минимална репутация, необходима за докладване на публикации",
|
||||
"min-rep-website": "Минимална репутация, необходима за добавяне на полето „Уебсайт“ към профила на потребителя",
|
||||
"min-rep-aboutme": "Минимална репутация, необходима за добавяне на полето „За мен“ към профила на потребителя",
|
||||
"min-rep-signature": "Минимална репутация, необходима за добавяне на полето „Подпис“ към профила на потребителя",
|
||||
"min-rep-profile-picture": "Минимална репутация, необходима за добавяне на профилна снимка към профила на потребителя",
|
||||
"min-rep-cover-picture": "Минимална репутация, необходима за добавяне на снимка на корицата към профила на потребителя"
|
||||
"min-rep-signature": "Минимална репутация, необходима за добавяне на полето „Подпис“ към профила на потребителя"
|
||||
}
|
||||
@@ -2,20 +2,12 @@
|
||||
"posts": "Публикации",
|
||||
"allow-files": "Позволяване на потребителите да качват обикновени файлове",
|
||||
"private": "Качените файлове да бъдат частни",
|
||||
"private-extensions": "Файлови разширения, които да бъдат частни",
|
||||
"private-uploads-extensions-help": "Въведете списък от файлови разширения, разделени със запетаи, които искате да бъдат частни (например <code>pdf,xls,doc</code>). Ако оставите това поле празно, всички файлове ще бъдат частни.",
|
||||
"resize-image-width-threshold": "Преоразмеряване на изображенията, ако са по-широки от определената ширина",
|
||||
"resize-image-width-threshold-help": "(в пиксели; по подразбиране: 1520 пиксела. 0 = изключено)",
|
||||
"resize-image-width": "Намаляване на размера на изображенията до определена ширина",
|
||||
"resize-image-width-help": "(в пиксели; по подразбиране: 760 пиксела. 0 = изключено)",
|
||||
"max-image-width": "Намаляване на размера на изображенията до определена ширина (в пиксели)",
|
||||
"max-image-width-help": "(в пиксели; по подразбиране: 760 пиксела. 0 = изключено)",
|
||||
"resize-image-quality": "Качество при преоразмеряване на изображенията",
|
||||
"resize-image-quality-help": "Използване на по-ниско качество за намаляване на размера на файловете за преоразмерените изображения.",
|
||||
"max-file-size": "Максимален размер на файловете (в КиБ)",
|
||||
"max-file-size-help": "(в кибибайтове; по подразбиране: 2048 КиБ)",
|
||||
"reject-image-width": "Максимална ширина на изображенията (в пиксели)",
|
||||
"reject-image-width-help": "Изображенията, чиято ширина е по-голяма от тази стойност, ще бъдат отхвърляни.",
|
||||
"reject-image-height": "Максимална височина на изображенията (в пиксели)",
|
||||
"reject-image-height-help": "Изображенията, чиято височина е по-голяма от тази стойност, ще бъдат отхвърляни.",
|
||||
"allow-topic-thumbnails": "Позволяване на потребителите да качват миниатюрни изображения за темите",
|
||||
"topic-thumb-size": "Размер на миниатюрите за темите",
|
||||
"allowed-file-extensions": "Разрешени файлови разширения",
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
{
|
||||
"authentication": "Удостоверяване",
|
||||
"allow-local-login": "Позволяване на локалното вписване",
|
||||
"require-email-confirmation": "Изискване на потвърждение на е-пощата",
|
||||
"email-confirm-interval": "Потребителят не може да изпраща повторно е-писмото за потвърждение, преди да са минали",
|
||||
"email-confirm-email2": "минути",
|
||||
@@ -8,8 +9,6 @@
|
||||
"allow-login-with.username": "Само потребителско име",
|
||||
"allow-login-with.email": "Само е-поща",
|
||||
"account-settings": "Настройки на акаунта",
|
||||
"gdpr_enabled": "Включване на искането за съгласие с ОРЗД",
|
||||
"gdpr_enabled_help": "Ако това е включено, всички новорегистрирани потребители ще бъдат задължени изрично да дадат съгласието си за събирането на данни и статистики за потреблението според <a href=\"https://eugdpr.org/the-regulation/gdpr-faqs/\">Общия регламент относно защитата на данните (ОРЗД)</a>. <strong>Забележка</strong>: Включването на ОРЗД не задължава съществуващите потребители да дадат съгласието си. Ако искате това, ще трябва да инсталирате добавката за ОРЗД (GDPR).",
|
||||
"disable-username-changes": "Забраняване на промяната на потребителското име",
|
||||
"disable-email-changes": "Забраняване на промяната на е-пощата",
|
||||
"disable-password-changes": "Забраняване на промяната на паролата",
|
||||
@@ -27,12 +26,6 @@
|
||||
"lockout-duration": "Продължителност на заключването на акаунта (в минути)",
|
||||
"login-days": "Продължителност на запомнянето на сесията за вписване на потребителя (в дни)",
|
||||
"password-expiry-days": "Изискване на промяна на паролата през определен период от дни",
|
||||
"session-time": "Продължителност на сесията",
|
||||
"session-time-days": "Дни",
|
||||
"session-time-seconds": "Секунди",
|
||||
"session-time-help": "Тези стойности се използват за определяне на дължината на периода, през който потребителите ще останат вписани в системата, ако поставят отметка в полето „Запомнете ме“ при вписването. Имайте предвид, че ще се използва само една от тези стойности. Ако няма стойност за <i>секунди</i>, ще се използва стойността за <i>дни</i>. Ако няма и стойност за <i>дни</i>, то ще се използва стандартната стойност от <i>14 дни</i>.",
|
||||
"online-cutoff": "Брой минути, след които потребителят ще бъде смятан за неактивен",
|
||||
"online-cutoff-help": "Ако потребителят не извършва никакви действия през този период, ще бъде смятан за неактивен и няма да получава известия в реално време.",
|
||||
"registration": "Регистриране на потребителите",
|
||||
"registration-type": "Вид регистриране",
|
||||
"registration-type.normal": "Обикновено",
|
||||
@@ -70,9 +63,5 @@
|
||||
"email-post-notif": "Изпращане на е-писмо, когато се появи отговор в темите, за които съм абониран(а).",
|
||||
"follow-created-topics": "Следване на темите, които създавате",
|
||||
"follow-replied-topics": "Следване на темите, на които отговаряте",
|
||||
"default-notification-settings": "Настройки по подразбиране за известията",
|
||||
"categoryWatchState": "Състояние по подразбиране за следенето на категории",
|
||||
"categoryWatchState.watching": "Да се следят",
|
||||
"categoryWatchState.notwatching": "Да не се следят",
|
||||
"categoryWatchState.ignoring": "Да се пренебрегват"
|
||||
"default-notification-settings": "Настройки по подразбиране за известията"
|
||||
}
|
||||
@@ -7,16 +7,14 @@
|
||||
"browsing": "разглежда",
|
||||
"no_replies": "Няма отговори",
|
||||
"no_new_posts": "Няма нови публикации.",
|
||||
"share_this_category": "Споделяне на тази категория",
|
||||
"watch": "Следене",
|
||||
"ignore": "Пренебрегване",
|
||||
"watching": "Следите",
|
||||
"not-watching": "Не следите",
|
||||
"ignoring": "Пренебрегвате",
|
||||
"watching.description": "Темите да се показват в непрочетените и скорошните",
|
||||
"not-watching.description": "Темите да не се показват в непрочетените, а само в скорошните",
|
||||
"ignoring.description": "Темите да не се показват нито в непрочетените, нито в скорошните",
|
||||
"watching.message": "Вече следите новите неща в категорията и подкатегориите ѝ",
|
||||
"notwatching.message": "Вече не следите новите неща в категорията и подкатегориите ѝ",
|
||||
"ignoring.message": "Вече пренебрегвате новите неща в тази категория и всички нейни подкатегории",
|
||||
"watching.description": "Темите да се показват в непрочетените",
|
||||
"ignoring.description": "Темите да не се показват в непрочетените",
|
||||
"watch.message": "Вече следите новите неща в категорията и подкатегориите ѝ",
|
||||
"ignore.message": "Вече не следите новите неща в тази категория и всички нейни подкатегории",
|
||||
"watched-categories": "Следени категории"
|
||||
}
|
||||
@@ -1,12 +1,9 @@
|
||||
{
|
||||
"test-email.subject": "Пробно е-писмо",
|
||||
"password-reset-requested": "Изпратена е заявка за подновяване на паролата!",
|
||||
"password-reset-requested": "Изпратена е заявка за подновяване на паролата – %1!",
|
||||
"welcome-to": "Добре дошли в %1",
|
||||
"invite": "Покана от %1",
|
||||
"greeting_no_name": "Здравейте",
|
||||
"greeting_with_name": "Здравейте, %1",
|
||||
"email.verify-your-email.subject": "Моля, потвърдете е-пощата си",
|
||||
"email.verify.text1": "Адресът на е-пощата Ви е променен!",
|
||||
"welcome.text1": "Благодарим Ви, че се регистрирахте в %1",
|
||||
"welcome.text2": "За да активирате напълно акаунта си, трябва да потвърдите е-пощата, с която сте се регистрирали.",
|
||||
"welcome.text3": "Вашата заявка за регистрация беше приета от администратор. Вече можете да се впишете със своето потребителско име и парола.",
|
||||
|
||||
@@ -78,7 +78,6 @@
|
||||
"still-uploading": "Моля, изчакайте качването да приключи.",
|
||||
"file-too-big": "Максималният разрешен размер на файл е %1 КБ – моля, качете по-малък файл",
|
||||
"guest-upload-disabled": "Качването не е разрешено за гости",
|
||||
"cors-error": "Изображението не може да бъде качено поради неправилни настройки на CORS",
|
||||
"already-bookmarked": "Вече имате отметка към тази публикация",
|
||||
"already-unbookmarked": "Вече сте премахнали отметката си от тази публикация",
|
||||
"cant-ban-other-admins": "Не можете да блокирате другите администратори!",
|
||||
@@ -88,7 +87,6 @@
|
||||
"invalid-image-type": "Грешен тип на изображение. Позволените типове са: %1",
|
||||
"invalid-image-extension": "Грешно разширение на изображението",
|
||||
"invalid-file-type": "Грешен тип на файл. Позволените типове са: %1",
|
||||
"invalid-image-dimensions": "Размерите на изображението са твърде големи",
|
||||
"group-name-too-short": "Името на групата е твърде кратко",
|
||||
"group-name-too-long": "Името на групата е твърде дълго",
|
||||
"group-already-exists": "Вече съществува такава група",
|
||||
@@ -120,7 +118,7 @@
|
||||
"chat-edit-duration-expired": "Можете да редактирате съобщенията си в разговорите до %1 секунда/и, след като ги пуснете",
|
||||
"chat-delete-duration-expired": "Можете да изтривате съобщенията си в разговорите до %1 секунда/и след пускането им",
|
||||
"chat-deleted-already": "Това съобщение вече е изтрито.",
|
||||
"chat-restored-already": "Това съобщение вече е възстановено.",
|
||||
"chat-restored'already": "Това съобщение вече е възстановено.",
|
||||
"already-voting-for-this-post": "Вече сте дали глас за тази публикация.",
|
||||
"reputation-system-disabled": "Системата за репутация е изключена.",
|
||||
"downvoting-disabled": "Отрицателното гласуване е изключено",
|
||||
@@ -129,8 +127,6 @@
|
||||
"not-enough-reputation-min-rep-website": "Нямате достатъчно репутация, за да добавите уеб сайт",
|
||||
"not-enough-reputation-min-rep-aboutme": "Нямате достатъчно репутация, за да добавите информация за себе си",
|
||||
"not-enough-reputation-min-rep-signature": "Нямате достатъчно репутация, за да добавите подпис",
|
||||
"not-enough-reputation-min-rep-profile-picture": "Нямате достатъчно репутация, за да добавите снимка на профила си",
|
||||
"not-enough-reputation-min-rep-cover-picture": "Нямате достатъчно репутация, за да добавите снимка на корицата",
|
||||
"already-flagged": "Вече сте докладвали тази публикация",
|
||||
"self-vote": "Не можете да гласувате за собствената си публикация",
|
||||
"reload-failed": "NodeBB срещна проблем при презареждането: „%1“. NodeBB ще продължи да поддържа съществуващите клиентски ресурси, но Вие трябва да отмените последните си действия преди презареждането.",
|
||||
@@ -152,9 +148,5 @@
|
||||
"no-topics-selected": "Няма избрани теми!",
|
||||
"cant-move-to-same-topic": "Публикацията не може да бъде преместена в същата тема!",
|
||||
"cannot-block-self": "Не можете да блокирате себе си!",
|
||||
"cannot-block-privileged": "Не можете да блокирате администратори и глобални модератори",
|
||||
"cannot-block-guest": "Гостите не могат да блокират други потребители",
|
||||
"already-blocked": "Този потребител вече е блокиран",
|
||||
"already-unblocked": "Този потребител вече е отблокиран",
|
||||
"no-connection": "Изглежда има проблем с връзката Ви с Интернет"
|
||||
"cannot-block-privileged": "Не можете да блокирате администратори и глобални модератори"
|
||||
}
|
||||
@@ -85,7 +85,6 @@
|
||||
"language": "Език",
|
||||
"guest": "Гост",
|
||||
"guests": "Гости",
|
||||
"former_user": "Бивш потребител",
|
||||
"updated.title": "Форумът е актуализиран",
|
||||
"updated.message": "Този форум току-що беше актуализиран до най-новата версия. Натиснете тук, за да опресните страницата.",
|
||||
"privacy": "Поверителност",
|
||||
|
||||
@@ -28,7 +28,6 @@
|
||||
"details.grant": "Даване/отнемане на собственост",
|
||||
"details.kick": "Изгонване",
|
||||
"details.kick_confirm": "Наистина ли искате да премахнете този член на групата?",
|
||||
"details.add-member": "Добавяне на член",
|
||||
"details.owner_options": "Администрация на групата",
|
||||
"details.group_name": "Име на групата",
|
||||
"details.member_count": "Брой на членовете",
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
"chat.delete_message_confirm": "Наистина ли искате да изтриете това съобщение?",
|
||||
"chat.retrieving-users": "Получаване на потребителите…",
|
||||
"chat.manage-room": "Управление на стаята за разговори",
|
||||
"chat.add-user-help": "Тук можете да потърсите потребители. Когато някой потребител бъде избран, той ще бъде добавен в разговора. Новият потребител няма да може да вижда съобщенията, написани преди включването му в разговора. Само собствениците на стаята (<i class=\"fa fa-star text-warning\"></i>) могат да премахват потребители от нея.",
|
||||
"chat.add-user-help": "Тук можете да потърсите потребители. Когато някой потребител бъде избран, той ще бъде добавен в разговора. Новият потребител няма да може да вижда съобщенията, написани преди включването му в разговора. Само собствениците на стаята могат да премахват потребители от нея.",
|
||||
"chat.confirm-chat-with-dnd-user": "Този потребител е в състояние „не ме безпокойте“. Наистина ли искате да разговаряте с него?",
|
||||
"chat.rename-room": "Преименуване на стаята",
|
||||
"chat.rename-placeholder": "Въведете името на стаята си тук",
|
||||
@@ -32,8 +32,6 @@
|
||||
"chat.leave-help": "Ако напуснете този разговор, няма да виждате следващите съобщения в него. Ако бъдете добавен(а) отново, няма да виждате историята на разговора отпреди добавянето Ви.",
|
||||
"chat.in-room": "В тази стая",
|
||||
"chat.kick": "Изгонване",
|
||||
"chat.show-ip": "Показване на IP адреса",
|
||||
"chat.owner": "Собственик на стаята",
|
||||
"composer.compose": "Писане",
|
||||
"composer.show_preview": "Показване на прегледа",
|
||||
"composer.hide_preview": "Скриване на прегледа",
|
||||
@@ -47,7 +45,6 @@
|
||||
"composer.formatting.italic": "Курсив",
|
||||
"composer.formatting.list": "Списък",
|
||||
"composer.formatting.strikethrough": "Зачертан",
|
||||
"composer.formatting.code": "Код",
|
||||
"composer.formatting.link": "Връзка",
|
||||
"composer.formatting.picture": "Снимка",
|
||||
"composer.upload-picture": "Качване на изображение",
|
||||
|
||||
@@ -8,7 +8,8 @@
|
||||
"outgoing_link_message": "Напускате %1",
|
||||
"continue_to": "Продължаване към %1",
|
||||
"return_to": "Връщане към %1",
|
||||
"new_notification": "Имате ново известие",
|
||||
"new_notification": "Ново известие",
|
||||
"new_notification_from": "Имате ново известие от %1",
|
||||
"you_have_unread_notifications": "Имате непрочетени известия",
|
||||
"all": "Всички",
|
||||
"topics": "Теми",
|
||||
@@ -56,7 +57,6 @@
|
||||
"notificationType_follow": "Когато някой започне да Ви следва",
|
||||
"notificationType_new-chat": "Когато получите съобщение в разговор",
|
||||
"notificationType_group-invite": "Когато получите покана за група",
|
||||
"notificationType_group-request-membership": "Когато някой поиска да се включи в група, на която Вие сте собственик",
|
||||
"notificationType_new-register": "Когато някой бъде добавен в опашката за регистрация",
|
||||
"notificationType_post-queue": "Когато бъде добавена нова публикация в опашката",
|
||||
"notificationType_new-post-flag": "Когато публикация бъде докладвана",
|
||||
|
||||
@@ -6,10 +6,7 @@
|
||||
"popular-month": "Популярните теми този месец",
|
||||
"popular-alltime": "Популярните теми за всички времена",
|
||||
"recent": "Скорошни теми",
|
||||
"top-day": "Теми с най-много гласове днес",
|
||||
"top-week": "Теми с най-много гласове тази седмица",
|
||||
"top-month": "Теми с най-много гласове този месец",
|
||||
"top-alltime": "Теми с най-много гласове",
|
||||
"top": "Теми с най-много гласове",
|
||||
"moderator-tools": "Модераторски инструменти",
|
||||
"flagged-content": "Докладвано съдържание",
|
||||
"ip-blacklist": "Черен списък за IP адреси",
|
||||
@@ -45,7 +42,6 @@
|
||||
"account/posts": "Публикации от %1",
|
||||
"account/topics": "Теми, създадени от %1",
|
||||
"account/groups": "Групите на %1",
|
||||
"account/watched_categories": "Следените категории на %1",
|
||||
"account/bookmarks": "Отметнатите публикации на %1",
|
||||
"account/settings": "Потребителски настройки",
|
||||
"account/watched": "Теми, следени от %1",
|
||||
@@ -55,7 +51,6 @@
|
||||
"account/best": "Най-добрите публикации от %1",
|
||||
"account/blocks": "Блокирани потребители за %1",
|
||||
"account/uploads": "Качвания от %1",
|
||||
"account/sessions": "Сесии на вписване",
|
||||
"confirm": "Е-пощата е потвърдена",
|
||||
"maintenance.text": "%1 в момента е в профилактика. Моля, върнете се по-късно.",
|
||||
"maintenance.messageIntro": "В допълнение, администраторът е оставил това съобщение:",
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
"at-most": "Най-много",
|
||||
"relevance": "Уместност",
|
||||
"post-time": "Време на публикуване",
|
||||
"votes": "Гласове",
|
||||
"newer-than": "По-нови от",
|
||||
"older-than": "По-стари от",
|
||||
"any-date": "Която и да е дата",
|
||||
@@ -31,7 +30,6 @@
|
||||
"sort-by": "Подреждане по",
|
||||
"last-reply-time": "Време на последния отговор",
|
||||
"topic-title": "Заглавие на темата",
|
||||
"topic-votes": "Гласувания за темата",
|
||||
"number-of-replies": "Брой на отговорите",
|
||||
"number-of-views": "Брой на преглежданията",
|
||||
"topic-start-date": "Начална дата на темата",
|
||||
|
||||
@@ -25,16 +25,12 @@
|
||||
"profile_views": "Преглеждания на профила",
|
||||
"reputation": "Репутация",
|
||||
"bookmarks": "Отметки",
|
||||
"watched_categories": "Следени категории",
|
||||
"watched": "Следени",
|
||||
"ignored": "Пренебрегвани",
|
||||
"default-category-watch-state": "Състояние по подразбиране за следенето на категории",
|
||||
"followers": "Последователи",
|
||||
"following": "Следва",
|
||||
"blocks": "Блокира",
|
||||
"block_toggle": "Превключване на блокирането",
|
||||
"block_user": "Блокиране на потребителя",
|
||||
"unblock_user": "Отблокиране на потребителя",
|
||||
"aboutme": "За мен",
|
||||
"signature": "Подпис",
|
||||
"birthday": "Рождена дата",
|
||||
@@ -49,7 +45,6 @@
|
||||
"change_picture": "Промяна на снимката",
|
||||
"change_username": "Промяна на потребителското име",
|
||||
"change_email": "Промяна на е-пощата",
|
||||
"email_same_as_password": "Моля, въведете текущата си парола, за да продължите – Вие въведохте новата си е-поща отново",
|
||||
"edit": "Редактиране",
|
||||
"edit-profile": "Редактиране на профила",
|
||||
"default_picture": "Иконка по подразбиране",
|
||||
@@ -86,6 +81,7 @@
|
||||
"digest_daily": "Ежедневно",
|
||||
"digest_weekly": "Ежеседмично",
|
||||
"digest_monthly": "Ежемесечно",
|
||||
"settings-require-reload": "Някои промени в настройките изискват презареждане. Натиснете тук, за да презаредите страницата.",
|
||||
"has_no_follower": "Този потребител няма последователи :(",
|
||||
"follows_no_one": "Този потребител не следва никого :(",
|
||||
"has_no_posts": "Този потребител не е публикувал нищо досега.",
|
||||
@@ -111,15 +107,15 @@
|
||||
"no-sound": "Без звук",
|
||||
"upvote-notif-freq": "Честота на известията за положителни гласове",
|
||||
"upvote-notif-freq.all": "Всички положителни гласове",
|
||||
"upvote-notif-freq.first": "При първия за публикация",
|
||||
"upvote-notif-freq.everyTen": "На всеки десет положителни гласа",
|
||||
"upvote-notif-freq.threshold": "на 1, 5, 10, 25, 50, 100, 150, 200…",
|
||||
"upvote-notif-freq.logarithmic": "На 10, 100, 1000…",
|
||||
"upvote-notif-freq.disabled": "Изключено",
|
||||
"browsing": "Настройки за страниците",
|
||||
"open_links_in_new_tab": "Отваряне на външните връзки в нов подпрозорец",
|
||||
"enable_topic_searching": "Включване на търсенето в темите",
|
||||
"topic_search_help": "Ако е включено, търсенето в темата ще замени стандартното поведение на браузъра при търсене в страницата и ще Ви позволи да претърсвате цялата тема, а не само това, което се вижда на екрана",
|
||||
"delay_image_loading": "Отлагане на зареждането на изображения",
|
||||
"image_load_delay_help": "Ако е включено, изображенията в темите няма да бъдат зареждани, докато не превъртите страницата до мястото, на което се намират",
|
||||
"scroll_to_my_post": "След публикуване на отговор, да се показва новата публикация",
|
||||
"follow_topics_you_reply_to": "Следене на темите, в които отговаряте",
|
||||
"follow_topics_you_create": "Следене на темите, които създавате",
|
||||
@@ -150,7 +146,6 @@
|
||||
"info.moderation-note": "Модераторска бележка",
|
||||
"info.moderation-note.success": "Модераторската бележка е запазена",
|
||||
"info.moderation-note.add": "Добавяне на бележка",
|
||||
"sessions.description": "На тази страница можете да видите активните си сесии на този форум и да ги анулирате, ако желаете. Можете да анулирате текущата си сесия, като се отпишете от акаунта си.",
|
||||
"consent.title": "Вашите права и съгласие",
|
||||
"consent.lead": "Този обществен форум събира и обработва лична информация.",
|
||||
"consent.intro": "Използваме тази информация, само за да персонализираме взаимодействието Ви с форума, както и за да свържем публикациите Ви с Вашия потребителски акаунт. По време на регистрацията ще трябва да въведете потребителско име и е-поща, но ако искате, можете да предоставите и допълнителна информация, за да завършите потребителския си профил в уеб сайта.<br /><br />Ние съхраняваме тази информация докато съществува потребителският Ви акаунт. Във всеки един момент можете да оттеглите съгласието си за това, като изтриете акаунта си. Във всеки един момент можете да изискате копие на въведеното от Вас в уеб сайт, чрез страницата за „Права и съгласие“.<br /><br />Ако имате въпроси или притеснения, можете да се свържете с екипа от администратори на форума.",
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
"filter-by": "Филтриране",
|
||||
"online-only": "Само тези на линия",
|
||||
"invite": "Канене",
|
||||
"prompt-email": "Е-пощи:",
|
||||
"invitation-email-sent": "Беше изпратено е-писмо за потвърждение до %1",
|
||||
"user_list": "Списък от потребители",
|
||||
"recent_topics": "Скорошни теми",
|
||||
|
||||
@@ -18,16 +18,10 @@
|
||||
"mongo.resident-memory": "Resident Memory",
|
||||
"mongo.virtual-memory": "Virtual Memory",
|
||||
"mongo.mapped-memory": "Mapped Memory",
|
||||
"mongo.bytes-in": "Bytes In",
|
||||
"mongo.bytes-out": "Bytes Out",
|
||||
"mongo.num-requests": "Number of Requests",
|
||||
"mongo.raw-info": "MongoDB Raw Info",
|
||||
|
||||
"redis": "Redis",
|
||||
"redis.version": "Redis Version",
|
||||
"redis.keys": "Keys",
|
||||
"redis.expires": "Expires",
|
||||
"redis.avg-ttl": "Average TTL",
|
||||
"redis.connected-clients": "Connected Clients",
|
||||
"redis.connected-slaves": "Connected Slaves",
|
||||
"redis.blocked-clients": "Blocked Clients",
|
||||
@@ -36,16 +30,7 @@
|
||||
"redis.total-connections-recieved": "Total Connections Received",
|
||||
"redis.total-commands-processed": "Total Commands Processed",
|
||||
"redis.iops": "Instantaneous Ops. Per Second",
|
||||
"redis.iinput": "Instantaneous Input Per Second",
|
||||
"redis.ioutput": "Instantaneous Output Per Second",
|
||||
"redis.total-input": "Total Input",
|
||||
"redis.total-output": "Total Ouput",
|
||||
|
||||
"redis.keyspace-hits": "Keyspace Hits",
|
||||
"redis.keyspace-misses": "Keyspace Misses",
|
||||
"redis.raw-info": "Redis Raw Info",
|
||||
|
||||
"postgres": "Postgres",
|
||||
"postgres.version": "PostgreSQL Version",
|
||||
"postgres.raw-info": "Postgres Raw Info"
|
||||
}
|
||||
"redis.raw-info": "Redis Raw Info"
|
||||
}
|
||||
@@ -65,12 +65,8 @@
|
||||
"high-presence-topics": "High Presence Topics",
|
||||
|
||||
"graphs.page-views": "Page Views",
|
||||
"graphs.page-views-registered": "Page Views Registered",
|
||||
"graphs.page-views-guest": "Page Views Guest",
|
||||
"graphs.page-views-bot": "Page Views Bot",
|
||||
"graphs.unique-visitors": "Unique Visitors",
|
||||
"graphs.registered-users": "Registered Users",
|
||||
"graphs.anonymous-users": "Anonymous Users",
|
||||
"last-restarted-by": "Last restarted by",
|
||||
"no-users-browsing": "No users browsing"
|
||||
"last-restarted-by": "Last restarted by"
|
||||
}
|
||||
|
||||
@@ -8,7 +8,10 @@
|
||||
"id": "ID: <small>optional</small>",
|
||||
|
||||
"properties": "Properties:",
|
||||
"groups": "Groups:",
|
||||
"only-admins": "Only display to Admins",
|
||||
"only-global-mods-and-admins": "Only display to Global Moderators and Admins",
|
||||
"only-logged-in": "Only display to logged in users",
|
||||
"only-guest": "Only display to guests",
|
||||
"open-new-window": "Open in a new window",
|
||||
|
||||
"btn.delete": "Delete",
|
||||
|
||||
@@ -19,7 +19,6 @@
|
||||
"parent-category-none": "(None)",
|
||||
"copy-settings": "Copy Settings From",
|
||||
"optional-clone-settings": "(Optional) Clone Settings From Category",
|
||||
"clone-children": "Clone Children Categories And Settings",
|
||||
"purge": "Purge Category",
|
||||
|
||||
"enable": "Enable",
|
||||
@@ -29,8 +28,7 @@
|
||||
"select-category": "Select Category",
|
||||
"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. Select the domain of effect from the dropdown below.",
|
||||
"privileges.category-selector": "Configuring privileges for ",
|
||||
"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.",
|
||||
"privileges.warning": "<strong>Note</strong>: Privilege settings take effect immediately. It is not necessary to save the category after adjusting these settings.",
|
||||
"privileges.section-viewing": "Viewing Privileges",
|
||||
"privileges.section-posting": "Posting Privileges",
|
||||
@@ -69,6 +67,5 @@
|
||||
"alert.find-group": "Find a Group",
|
||||
"alert.group-search": "Search for a group here...",
|
||||
"collapse-all": "Collapse All",
|
||||
"expand-all": "Expand All",
|
||||
"disable-on-create": "Disable on create"
|
||||
"expand-all": "Expand All"
|
||||
}
|
||||
@@ -1,30 +0,0 @@
|
||||
{
|
||||
"global": "Global",
|
||||
"global.no-users": "No user-specific global privileges.",
|
||||
|
||||
"chat": "Chat",
|
||||
"upload-images": "Upload Images",
|
||||
"upload-files": "Upload Files",
|
||||
"signature": "Signature",
|
||||
"ban": "Ban",
|
||||
"search-content": "Search Content",
|
||||
"search-users": "Search Users",
|
||||
"search-tags": "Search Tags",
|
||||
"allow-local-login": "Local Login",
|
||||
|
||||
"find-category": "Find Category",
|
||||
"access-category": "Access Category",
|
||||
"access-topics": "Access Topics",
|
||||
"create-topics": "Create Topics",
|
||||
"reply-to-topics": "Reply to Topics",
|
||||
"tag-topics": "Tag Topics",
|
||||
"edit-posts": "Edit Posts",
|
||||
"view-edit-history": "View Edit History",
|
||||
"delete-posts": "Delete Posts",
|
||||
"view_deleted": "View Deleted Posts",
|
||||
"upvote-posts": "Upvote Posts",
|
||||
"downvote-posts": "Downvote Posts",
|
||||
"delete-topics": "Delete Topics",
|
||||
"purge": "Purge",
|
||||
"moderate": "Moderate"
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
{
|
||||
"upload-file": "Upload File",
|
||||
"filename": "Filename",
|
||||
"usage": "Post Usage",
|
||||
"orphaned": "Orphaned",
|
||||
"size/filecount": "Size / Filecount",
|
||||
"confirm-delete": "Do you really want to delete this file?",
|
||||
"filecount": "%1 files"
|
||||
}
|
||||
@@ -93,7 +93,7 @@
|
||||
"alerts.error-x": "<strong>Error</strong><p>%1</p>",
|
||||
"alerts.create-success": "User created!",
|
||||
|
||||
"alerts.prompt-email": "Emails: ",
|
||||
"alerts.prompt-email": "Email: ",
|
||||
"alerts.email-sent-to": "An invitation email has been sent to %1",
|
||||
"alerts.x-users-found": "%1 user(s) found! Search took %2 ms."
|
||||
}
|
||||
@@ -57,7 +57,6 @@
|
||||
"section-advanced": "Advanced",
|
||||
"advanced/database": "Database",
|
||||
"advanced/events": "Events",
|
||||
"advanced/hooks": "Hooks",
|
||||
"advanced/logs": "Logs",
|
||||
"advanced/errors": "Errors",
|
||||
"advanced/cache": "Cache",
|
||||
|
||||
@@ -6,17 +6,10 @@
|
||||
"headers.allow-from": "Set ALLOW-FROM to Place NodeBB in an iFrame",
|
||||
"headers.powered-by": "Customise the \"Powered By\" header sent by NodeBB",
|
||||
"headers.acao": "Access-Control-Allow-Origin",
|
||||
"headers.acao-regex": "Access-Control-Allow-Origin Regular Expression",
|
||||
"headers.acao-help": "To deny access to all sites, leave empty",
|
||||
"headers.acao-regex-help": "Enter regular expressions here to match dynamic origins. To deny access to all sites, leave empty",
|
||||
"headers.acac": "Access-Control-Allow-Credentials",
|
||||
"headers.acam": "Access-Control-Allow-Methods",
|
||||
"headers.acah": "Access-Control-Allow-Headers",
|
||||
"hsts": "Strict Transport Security",
|
||||
"hsts.enabled": "Enabled HSTS (recommended)",
|
||||
"hsts.subdomains": "Include subdomains in HSTS header",
|
||||
"hsts.preload": "Allow preloading of HSTS header",
|
||||
"hsts.help": "If enabled, an HSTS header will be set for this site. You can elect to include subdomains and preloading flags in your header. If in doubt, you can leave these unchecked. <a href=\"%1\">More information <i class=\"fa fa-external-link\"></i></a>",
|
||||
"traffic-management": "Traffic Management",
|
||||
"traffic.help": "NodeBB deploys equipped with a module that automatically denies requests in high-traffic situations. You can tune these settings here, although the defaults are a good starting point.",
|
||||
"traffic.enable": "Enable Traffic Management",
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
{
|
||||
"handles": "Guest Handles",
|
||||
"handles.enabled": "Allow guest handles",
|
||||
"handles.enabled-help": "This option exposes a new field that allows guests to pick a name to associate with each post they make. If disabled, they will simply be called \"Guest\""
|
||||
"handles.enabled-help": "This option exposes a new field that allows guests to pick a name to associate with each post they make. If disabled, they will simply be called \"Guest\"",
|
||||
"privileges": "Guest Privileges",
|
||||
"privileges.can-search": "Allow guests to search without logging in",
|
||||
"privileges.can-search-users": "Allow guests to search users without logging in"
|
||||
}
|
||||
@@ -6,5 +6,6 @@
|
||||
"max-posts-per-page": "Maximum posts per page",
|
||||
"categories": "Category Pagination",
|
||||
"topics-per-page": "Topics per Page",
|
||||
"max-topics-per-page": "Maximum topics per page"
|
||||
"max-topics-per-page": "Maximum topics per page",
|
||||
"initial-num-load": "Initial Number of Topics to Load on Unread, Recent, and Popular"
|
||||
}
|
||||
@@ -8,7 +8,5 @@
|
||||
"min-rep-flag": "Minimum reputation to flag posts",
|
||||
"min-rep-website": "Minimum reputation to add \"Website\" to user profile",
|
||||
"min-rep-aboutme": "Minimum reputation to add \"About me\" to user profile",
|
||||
"min-rep-signature": "Minimum reputation to add \"Signature\" to user profile",
|
||||
"min-rep-profile-picture": "Minimum reputation to add \"Profile Picture\" to user profile",
|
||||
"min-rep-cover-picture": "Minimum reputation to add \"Cover Picture\" to user profile"
|
||||
"min-rep-signature": "Minimum reputation to add \"Signature\" to user profile"
|
||||
}
|
||||
@@ -2,20 +2,12 @@
|
||||
"posts": "Posts",
|
||||
"allow-files": "Allow users to upload regular files",
|
||||
"private": "Make uploaded files private",
|
||||
"private-extensions": "File extensions to make private",
|
||||
"private-uploads-extensions-help": "Enter comma-separated list of file extensions to make private here (e.g. <code>pdf,xls,doc</code>). An empty list means all files are private.",
|
||||
"resize-image-width-threshold": "Resize images if they are wider than specified width",
|
||||
"resize-image-width-threshold-help": "(in pixels, default: 1520 pixels, set to 0 to disable)",
|
||||
"resize-image-width": "Resize images down to specified width",
|
||||
"resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)",
|
||||
"max-image-width": "Resize images down to specified width (in pixels)",
|
||||
"max-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)",
|
||||
"resize-image-quality": "Quality to use when resizing images",
|
||||
"resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.",
|
||||
"max-file-size": "Maximum File Size (in KiB)",
|
||||
"max-file-size-help": "(in kibibytes, default: 2048 KiB)",
|
||||
"reject-image-width": "Maximum Image Width (in pixels)",
|
||||
"reject-image-width-help": "Images wider than this value will be rejected.",
|
||||
"reject-image-height": "Maximum Image Height (in pixels)",
|
||||
"reject-image-height-help": "Images taller than this value will be rejected.",
|
||||
"allow-topic-thumbnails": "Allow users to upload topic thumbnails",
|
||||
"topic-thumb-size": "Topic Thumb Size",
|
||||
"allowed-file-extensions": "Allowed File Extensions",
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
{
|
||||
"authentication": "Authentication",
|
||||
"allow-local-login": "Allow local login",
|
||||
"require-email-confirmation": "Require Email Confirmation",
|
||||
"email-confirm-interval": "User may not resend a confirmation email until",
|
||||
"email-confirm-email2": "minutes have elapsed",
|
||||
@@ -8,8 +9,6 @@
|
||||
"allow-login-with.username": "Username Only",
|
||||
"allow-login-with.email": "Email Only",
|
||||
"account-settings": "Account Settings",
|
||||
"gdpr_enabled": "Enable GDPR consent collection",
|
||||
"gdpr_enabled_help": "When enabled, all new registrants will be required to explicitly give consent for data collection and usage under the <a href=\"https://eugdpr.org/the-regulation/gdpr-faqs/\">General Data Protection Regulation (GDPR)</a>. <strong>Note</strong>: Enabling GDPR does not force pre-existing users to provide consent. To do so, you will need to install the GDPR plugin.",
|
||||
"disable-username-changes": "Disable username changes",
|
||||
"disable-email-changes": "Disable email changes",
|
||||
"disable-password-changes": "Disable password changes",
|
||||
@@ -27,12 +26,6 @@
|
||||
"lockout-duration": "Account Lockout Duration (minutes)",
|
||||
"login-days": "Days to remember user login sessions",
|
||||
"password-expiry-days": "Force password reset after a set number of days",
|
||||
"session-time": "Session Time",
|
||||
"session-time-days": "Days",
|
||||
"session-time-seconds": "Seconds",
|
||||
"session-time-help": "These values are used to govern how long a user stays logged in when they check "Remember Me" on login. Note that only one of these values will be used. If there is no <i>seconds</i> value we fall back to <i>days</i>. If there is no <i>days</i> value we default to <i>14 days</i>.",
|
||||
"online-cutoff": "Minutes after user is considered inactive",
|
||||
"online-cutoff-help": "If user performs no actions for this duration, they are considered inactive and they do not receive realtime updates.",
|
||||
"registration": "User Registration",
|
||||
"registration-type": "Registration Type",
|
||||
"registration-type.normal": "Normal",
|
||||
@@ -70,9 +63,5 @@
|
||||
"email-post-notif": "Send an email when replies are made to topics I am subscribed to",
|
||||
"follow-created-topics": "Follow topics you create",
|
||||
"follow-replied-topics": "Follow topics that you reply to",
|
||||
"default-notification-settings": "Default notification settings",
|
||||
"categoryWatchState": "Default category watch state",
|
||||
"categoryWatchState.watching": "Watching",
|
||||
"categoryWatchState.notwatching": "Not Watching",
|
||||
"categoryWatchState.ignoring": "Ignoring"
|
||||
"default-notification-settings": "Default notification settings"
|
||||
}
|
||||
@@ -7,16 +7,14 @@
|
||||
"browsing": "ব্রাউজিং",
|
||||
"no_replies": "কোন রিপ্লাই নেই",
|
||||
"no_new_posts": "নতুন কোন পোস্ট নাই",
|
||||
"share_this_category": "এই বিভাগটি অন্যের সাথে ভাগাভাগি করুন",
|
||||
"watch": "নজর রাখুন",
|
||||
"ignore": "উপেক্ষা করুন",
|
||||
"watching": "Watching",
|
||||
"not-watching": "Not Watching",
|
||||
"ignoring": "Ignoring",
|
||||
"watching.description": "Show topics in unread and recent",
|
||||
"not-watching.description": "Do not show topics in unread, show in recent",
|
||||
"ignoring.description": "Do not show topics in unread and recent",
|
||||
"watching.message": "You are now watching updates from this category and all subcategories",
|
||||
"notwatching.message": "You are not watching updates from this category and all subcategories",
|
||||
"ignoring.message": "You are now ignoring updates from this category and all subcategories",
|
||||
"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": "প্রেক্ষিত বিভাগসমূহ"
|
||||
}
|
||||
@@ -1,12 +1,9 @@
|
||||
{
|
||||
"test-email.subject": "Test Email",
|
||||
"password-reset-requested": "Password Reset Requested!",
|
||||
"password-reset-requested": "পাসওয়ার্ড রিসেটের জন্য অনুরোধ করা হয়েছে - %1!",
|
||||
"welcome-to": "%1 এ স্বাগতম",
|
||||
"invite": "%1 থেকে আমন্ত্রণ",
|
||||
"greeting_no_name": "স্বাগতম",
|
||||
"greeting_with_name": "স্বাগতম %1",
|
||||
"email.verify-your-email.subject": "Please verify your email",
|
||||
"email.verify.text1": "Your email address has changed!",
|
||||
"welcome.text1": "%1 এ নিবন্ধন করার জন্য আপনাকে ধন্যবাদ!",
|
||||
"welcome.text2": "আপনার একাউন্ট এ্যাক্টিভেট করার জন্য, আপনি যে ইমেইল এড্রেস ব্যাবহার করে নিবন্ধন করেছেন তা যাচাই করতে হবে",
|
||||
"welcome.text3": "An administrator has accepted your registration application. You can login with your username/password now.",
|
||||
|
||||
@@ -78,7 +78,6 @@
|
||||
"still-uploading": "আপলোড সম্পূর্ণ জন্য অনুগ্রহ করে অপেক্ষা করুন",
|
||||
"file-too-big": "Maximum allowed file size is %1 kB - please upload a smaller file",
|
||||
"guest-upload-disabled": "Guest uploading has been disabled",
|
||||
"cors-error": "Unable to upload image due to misconfigured CORS",
|
||||
"already-bookmarked": "You have already bookmarked this post",
|
||||
"already-unbookmarked": "You have already unbookmarked this post",
|
||||
"cant-ban-other-admins": "আপনি অন্য এ্যাডমিনদের নিষিদ্ধ করতে পারেন না!",
|
||||
@@ -88,7 +87,6 @@
|
||||
"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",
|
||||
"invalid-image-dimensions": "Image dimensions are too big",
|
||||
"group-name-too-short": "গ্রুপের নাম খুব ছোট",
|
||||
"group-name-too-long": "Group name too long",
|
||||
"group-already-exists": "গ্রুপ ইতিমধ্যেই বিদ্যমান",
|
||||
@@ -120,7 +118,7 @@
|
||||
"chat-edit-duration-expired": "You are only allowed to edit chat messages for %1 second(s) after posting",
|
||||
"chat-delete-duration-expired": "You are only allowed to delete chat messages for %1 second(s) after posting",
|
||||
"chat-deleted-already": "This chat message has already been deleted.",
|
||||
"chat-restored-already": "This chat message has already been restored.",
|
||||
"chat-restored'already": "This chat message has already been restored.",
|
||||
"already-voting-for-this-post": "You have already voted for this post.",
|
||||
"reputation-system-disabled": "সম্মাননা ব্যাবস্থা নিস্ক্রীয় রাখা হয়েছে",
|
||||
"downvoting-disabled": "ঋণাত্মক ভোট নিস্ক্রীয় রাখা হয়েছে।",
|
||||
@@ -129,8 +127,6 @@
|
||||
"not-enough-reputation-min-rep-website": "You do not have enough reputation to add a website",
|
||||
"not-enough-reputation-min-rep-aboutme": "You do not have enough reputation to add an about me",
|
||||
"not-enough-reputation-min-rep-signature": "You do not have enough reputation to add a signature",
|
||||
"not-enough-reputation-min-rep-profile-picture": "You do not have enough reputation to add a profile picture",
|
||||
"not-enough-reputation-min-rep-cover-picture": "You do not have enough reputation to add a cover picture",
|
||||
"already-flagged": "You have already flagged this post",
|
||||
"self-vote": "You cannot vote on your own post",
|
||||
"reload-failed": "\"%1\" রিলোড করতে সমস্যা হয়েছে। রিলোডের পূর্বে যা করা হয়েছিল সেটি আনডু করা সমীচীন। ",
|
||||
@@ -152,9 +148,5 @@
|
||||
"no-topics-selected": "No topics selected!",
|
||||
"cant-move-to-same-topic": "Can't move post to same topic!",
|
||||
"cannot-block-self": "You cannot block yourself!",
|
||||
"cannot-block-privileged": "You cannot block administrators or global moderators",
|
||||
"cannot-block-guest": "Guest are not able to block other users",
|
||||
"already-blocked": "This user is already blocked",
|
||||
"already-unblocked": "This user is already unblocked",
|
||||
"no-connection": "There seems to be a problem with your internet connection"
|
||||
"cannot-block-privileged": "You cannot block administrators or global moderators"
|
||||
}
|
||||
@@ -85,7 +85,6 @@
|
||||
"language": "ভাষা",
|
||||
"guest": "অতিথি",
|
||||
"guests": "অতিথি",
|
||||
"former_user": "A Former User",
|
||||
"updated.title": "ফোরাম আপডেট করা হয়েছে",
|
||||
"updated.message": "এই ফোরামে এইমাত্র সর্বশেষ সংস্করণে আপডেট করা হয়েছে। পৃষ্ঠাটি রিফ্রেশ করতে এখানে ক্লিক করুন।",
|
||||
"privacy": "নিরাপত্তা",
|
||||
|
||||
@@ -28,7 +28,6 @@
|
||||
"details.grant": "Grant/Rescind Ownership",
|
||||
"details.kick": "Kick",
|
||||
"details.kick_confirm": "Are you sure you want to remove this member from the group?",
|
||||
"details.add-member": "Add Member",
|
||||
"details.owner_options": "Group Administration",
|
||||
"details.group_name": "Group Name",
|
||||
"details.member_count": "Member Count",
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
"chat.delete_message_confirm": "Are you sure you wish to delete this message?",
|
||||
"chat.retrieving-users": "Retrieving users...",
|
||||
"chat.manage-room": "Manage Chat Room",
|
||||
"chat.add-user-help": "Search for users here. When selected, the user will be added to the chat. The new user will not be able to see chat messages written before they were added to the conversation. Only room owners (<i class=\"fa fa-star text-warning\"></i>) may remove users from chat rooms.",
|
||||
"chat.add-user-help": "Search for users here. When selected, the user will be added to the chat. The new user will not be able to see chat messages written before they were added to the conversation. Only room owners may remove users from chat rooms.",
|
||||
"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.rename-room": "Rename Room",
|
||||
"chat.rename-placeholder": "Enter your room name here",
|
||||
@@ -32,8 +32,6 @@
|
||||
"chat.leave-help": "Leaving this chat will remove you from future correspondence in this chat. If you are re-added in the future, you will not see any chat history from prior to your re-joining.",
|
||||
"chat.in-room": "In this room",
|
||||
"chat.kick": "Kick",
|
||||
"chat.show-ip": "Show IP",
|
||||
"chat.owner": "Room Owner",
|
||||
"composer.compose": "Compose",
|
||||
"composer.show_preview": "Show Preview",
|
||||
"composer.hide_preview": "Hide Preview",
|
||||
@@ -47,7 +45,6 @@
|
||||
"composer.formatting.italic": "Italic",
|
||||
"composer.formatting.list": "List",
|
||||
"composer.formatting.strikethrough": "Strikethrough",
|
||||
"composer.formatting.code": "Code",
|
||||
"composer.formatting.link": "Link",
|
||||
"composer.formatting.picture": "Picture",
|
||||
"composer.upload-picture": "Upload Image",
|
||||
|
||||
@@ -8,7 +8,8 @@
|
||||
"outgoing_link_message": "You are now leaving %1",
|
||||
"continue_to": "%1 তে আগান",
|
||||
"return_to": "%1 এ ফেরত যান",
|
||||
"new_notification": "You have a new notification",
|
||||
"new_notification": "নতুন বিজ্ঞপ্তি",
|
||||
"new_notification_from": "You have a new Notification from %1",
|
||||
"you_have_unread_notifications": "আপনার অপঠিত বিজ্ঞপ্তি আছে।",
|
||||
"all": "All",
|
||||
"topics": "Topics",
|
||||
@@ -56,7 +57,6 @@
|
||||
"notificationType_follow": "When someone starts following you",
|
||||
"notificationType_new-chat": "When you receive a chat message",
|
||||
"notificationType_group-invite": "When you receive a group invite",
|
||||
"notificationType_group-request-membership": "When someone requests to join a group you own",
|
||||
"notificationType_new-register": "When someone gets added to registration queue",
|
||||
"notificationType_post-queue": "When a new post is queued",
|
||||
"notificationType_new-post-flag": "When a post is flagged",
|
||||
|
||||
@@ -6,10 +6,7 @@
|
||||
"popular-month": "Popular topics this month",
|
||||
"popular-alltime": "All time popular topics",
|
||||
"recent": "সাম্প্রতিক টপিক",
|
||||
"top-day": "Top voted topics today",
|
||||
"top-week": "Top voted topics this week",
|
||||
"top-month": "Top voted topics this month",
|
||||
"top-alltime": "Top Voted Topics",
|
||||
"top": "Top Voted Topics",
|
||||
"moderator-tools": "Moderator Tools",
|
||||
"flagged-content": "Flagged Content",
|
||||
"ip-blacklist": "IP Blacklist",
|
||||
@@ -45,7 +42,6 @@
|
||||
"account/posts": "Posts made by %1",
|
||||
"account/topics": "Topics created by %1",
|
||||
"account/groups": "%1's Groups",
|
||||
"account/watched_categories": "%1's Watched Categories",
|
||||
"account/bookmarks": "%1's Bookmarked Posts",
|
||||
"account/settings": "User Settings",
|
||||
"account/watched": "Topics watched by %1",
|
||||
@@ -55,7 +51,6 @@
|
||||
"account/best": "Best posts made by %1",
|
||||
"account/blocks": "Blocked users for %1",
|
||||
"account/uploads": "Uploads by %1",
|
||||
"account/sessions": "Login Sessions",
|
||||
"confirm": "Email Confirmed",
|
||||
"maintenance.text": "%1 is currently undergoing maintenance. Please come back another time.",
|
||||
"maintenance.messageIntro": "Additionally, the administrator has left this message:",
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
"at-most": "সর্বোচ্চ",
|
||||
"relevance": "Relevance",
|
||||
"post-time": "পোস্টের সময়",
|
||||
"votes": "Votes",
|
||||
"newer-than": "Newer than",
|
||||
"older-than": "Older than",
|
||||
"any-date": "যেকোন তারিখ",
|
||||
@@ -31,7 +30,6 @@
|
||||
"sort-by": "সাজানোর ভিত্তি",
|
||||
"last-reply-time": "সর্বশেষ রিপ্লাইয়ের সময়",
|
||||
"topic-title": "টপিকের টাইটেল",
|
||||
"topic-votes": "Topic votes",
|
||||
"number-of-replies": "রিপ্লাইয়ের সংখ্যা",
|
||||
"number-of-views": "সর্বমোট ভিউ",
|
||||
"topic-start-date": "টপিক শুরুর তারিখ",
|
||||
|
||||
@@ -25,16 +25,12 @@
|
||||
"profile_views": "প্রোফাইল দেখেছেন",
|
||||
"reputation": "সন্মাননা",
|
||||
"bookmarks": "Bookmarks",
|
||||
"watched_categories": "Watched categories",
|
||||
"watched": "দেখা হয়েছে",
|
||||
"ignored": "Ignored",
|
||||
"default-category-watch-state": "Default category watch state",
|
||||
"followers": "যাদের অনুসরণ করছেন",
|
||||
"following": "যারা আপনাকে অনুসরণ করছে",
|
||||
"blocks": "Blocks",
|
||||
"block_toggle": "Toggle Block",
|
||||
"block_user": "Block User",
|
||||
"unblock_user": "Unblock User",
|
||||
"aboutme": "আমার সম্পর্কে: ",
|
||||
"signature": "স্বাক্ষর",
|
||||
"birthday": "জন্মদিন",
|
||||
@@ -49,7 +45,6 @@
|
||||
"change_picture": "ছবি পরিবর্তন",
|
||||
"change_username": "ইউজারনেম পরিবর্তন করুন",
|
||||
"change_email": "ইমেইল পরিবর্তন করুন",
|
||||
"email_same_as_password": "Please enter your current password to continue – you've entered your new email again",
|
||||
"edit": "সম্পাদনা",
|
||||
"edit-profile": "Edit Profile",
|
||||
"default_picture": "ডিফল্ট আইকন",
|
||||
@@ -86,6 +81,7 @@
|
||||
"digest_daily": "দৈনিক",
|
||||
"digest_weekly": "সাপ্তাহিক",
|
||||
"digest_monthly": "মাসিক",
|
||||
"settings-require-reload": "কিছু কিছু পরিবর্তনের জন্য রিলোড করা আবশ্যক। পেজটি রিলোড করতে এখানে ক্লিক করুন",
|
||||
"has_no_follower": "এই সদস্যের কোন ফলোয়ার নেই :(",
|
||||
"follows_no_one": "এই সদস্য কাউকে ফলো করছেন না :(",
|
||||
"has_no_posts": "এই সদস্য এখন পর্যন্ত কোন পোস্ট করেন নি",
|
||||
@@ -111,15 +107,15 @@
|
||||
"no-sound": "No sound",
|
||||
"upvote-notif-freq": "Upvote Notification Frequency",
|
||||
"upvote-notif-freq.all": "All Upvotes",
|
||||
"upvote-notif-freq.first": "First Per Post",
|
||||
"upvote-notif-freq.everyTen": "Every Ten Upvotes",
|
||||
"upvote-notif-freq.threshold": "On 1, 5, 10, 25, 50, 100, 150, 200...",
|
||||
"upvote-notif-freq.logarithmic": "On 10, 100, 1000...",
|
||||
"upvote-notif-freq.disabled": "Disabled",
|
||||
"browsing": "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",
|
||||
@@ -150,7 +146,6 @@
|
||||
"info.moderation-note": "Moderation Note",
|
||||
"info.moderation-note.success": "Moderation note saved",
|
||||
"info.moderation-note.add": "Add note",
|
||||
"sessions.description": "This page allows you to view any active sessions on this forum and revoke them if necessary. You can revoke your own session by logging out of your account.",
|
||||
"consent.title": "Your Rights & Consent",
|
||||
"consent.lead": "This community forum collects and processes your personal information.",
|
||||
"consent.intro": "We use this information strictly to personalise your experience in this community, as well as to associate the posts you make to your user account. During the registration step you were asked to provide a username and email address, you can also optionally provide additional information to complete your user profile on this website.<br /><br />We retain this information for the life of your user account, and you are able to withdraw consent at any time by deleting your account. At any time you may request a copy of your contribution to this website, via your Rights & Consent page.<br /><br />If you have any questions or concerns, we encourage you to reach out to this forum's administrative team.",
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
"filter-by": "ফিল্টার করার ধরন",
|
||||
"online-only": "শুধুমাত্র অনলাইন",
|
||||
"invite": "ইনভাইট",
|
||||
"prompt-email": "Emails:",
|
||||
"invitation-email-sent": "%1 কে একটি ইনভাইটেশন ইমেইল পাঠানো হয়েছে",
|
||||
"user_list": "সদস্য তালিকা",
|
||||
"recent_topics": "সাম্প্রতিক টপিক",
|
||||
|
||||
@@ -18,16 +18,10 @@
|
||||
"mongo.resident-memory": "Residentní paměť",
|
||||
"mongo.virtual-memory": "Virtuální paměť",
|
||||
"mongo.mapped-memory": "Namapovaná paměť",
|
||||
"mongo.bytes-in": "Bajtů ->",
|
||||
"mongo.bytes-out": "Bajtů <-",
|
||||
"mongo.num-requests": "Počet požadavků",
|
||||
"mongo.raw-info": "Raw informace MongoDB",
|
||||
|
||||
"redis": "Redis",
|
||||
"redis.version": "Verze Redis",
|
||||
"redis.keys": "Klíče",
|
||||
"redis.expires": "Platnost",
|
||||
"redis.avg-ttl": "Průměrné TTL",
|
||||
"redis.connected-clients": "Připojených klientů",
|
||||
"redis.connected-slaves": "Druhotná připojení",
|
||||
"redis.blocked-clients": "Blokovaných klientů",
|
||||
@@ -36,16 +30,7 @@
|
||||
"redis.total-connections-recieved": "Souhrné množství připojení",
|
||||
"redis.total-commands-processed": "Souhrnně zpracováno příkazů",
|
||||
"redis.iops": "Okamžité zpracování za sekundu",
|
||||
"redis.iinput": "Okamžité vstupy/s",
|
||||
"redis.ioutput": "Okamžité výstupy/s",
|
||||
"redis.total-input": "Celkové vstupy",
|
||||
"redis.total-output": "Celkové výstupy",
|
||||
|
||||
"redis.keyspace-hits": "Zpracováno klíčů",
|
||||
"redis.keyspace-misses": "Chyby klíče",
|
||||
"redis.raw-info": "Informace Redis Raw",
|
||||
|
||||
"postgres": "Postgres",
|
||||
"postgres.version": "Verze PostgreSQL",
|
||||
"postgres.raw-info": "Informace o Postgres"
|
||||
}
|
||||
"redis.raw-info": "Informace Redis Raw"
|
||||
}
|
||||
@@ -65,12 +65,8 @@
|
||||
"high-presence-topics": "Témata s vysokou účastí",
|
||||
|
||||
"graphs.page-views": "Zobrazení stránky",
|
||||
"graphs.page-views-registered": "Zobrazených stránek/registrovaní",
|
||||
"graphs.page-views-guest": "Zobrazených stránek/hosté",
|
||||
"graphs.page-views-bot": "Zobrazených stránek/bot",
|
||||
"graphs.unique-visitors": "Jedineční návštěvníci",
|
||||
"graphs.registered-users": "Registrovaní uživatelé",
|
||||
"graphs.anonymous-users": "Anonymní uživatelé",
|
||||
"last-restarted-by": "Poslední restart od",
|
||||
"no-users-browsing": "Nikdo si nic neprohlíží"
|
||||
"last-restarted-by": "Poslední restart od"
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user