Compare commits

..

293 Commits

Author SHA1 Message Date
Misty Release Bot
89eb0340d1 chore: incrementing version number - v2.5.4 2022-10-11 12:25:35 +00:00
Barış Soner Uşaklı
ebd5dcc6d6 fix: EEXISTS error on linux if plugin/theme overrides core js file 2022-10-11 08:13:59 -04:00
Ashish Kurmi
fe0020fb31 ci: add minimum GitHub token permissions for workflows
Signed-off-by: Ashish Kurmi <akurmi@stepsecurity.io>
2022-10-05 21:23:18 -04:00
Barış Soner Uşaklı
177d904812 fix: category ordering add test 2022-10-03 09:41:08 -04:00
Barış Soner Uşaklı
989b55d07e fix: crash in category drag, closes #10932
happens when a child is dragged to root or from root to a nested level
2022-10-01 22:15:06 -04:00
Julian Lam
7240e8ce57 chore: 🤔 2022-09-28 10:27:50 -04:00
Julian Lam
803398e915 fix: broken flag history on flag update 2022-09-23 13:10:34 -04:00
Barış Soner Uşaklı
aad0a618c8 fix: scroll to post if theme doesn't have top navbar 2022-09-23 09:09:15 -04:00
Julian Lam
14515f6004 fix: add lru-cache to checked packages, to fix upgrade issue with lru-cache 2022-09-21 16:02:20 -04:00
Misty Release Bot
fdf240f651 chore: update changelog for v2.5.3 2022-09-19 16:23:59 +00:00
Misty Release Bot
cf6e8101e8 chore: incrementing version number - v2.5.3 2022-09-19 16:23:58 +00:00
Julian Lam
cf4f5447bb fix: #10906, allow middleware.checkAccountPermissions to be called with either uid or userslug in params
Previously, the middleware only worked with userslug params
2022-09-19 10:08:18 -04:00
Barış Soner Uşaklı
b5dd89e1c0 feat: store topic title and tags in diffs (#10900)
* feat: store topic title and tags in diffs

allow restoring post diff if tags didn't change

* test: fix tests, fast computer problems
2022-09-16 22:16:08 -04:00
Barış Soner Uşaklı
8e2129f858 fix: #10896, unescape / in taskbar 2022-09-15 19:32:37 -04:00
Julian Lam
d3e38df8ea fix: add back timeago to post history modal 2022-09-14 13:19:37 -04:00
Julian Lam
5dbcfef91f chore: remove duplicate version increment lines in changelog 2022-09-09 10:56:10 -04:00
Julian Lam
1d80a07ed1 fix(deps): bump composer-default to v9.1.1 2022-09-08 15:20:32 -04:00
Barış Soner Uşaklı
1c9c39a8c8 test: add back /admin/extend/plugins test 2022-09-04 19:42:12 -04:00
Barış Soner Uşaklı
8aa1596d23 chore: bring back treding plugins 2022-09-04 12:59:03 -04:00
Barış Soner Uşaklı
3d5a6b39d6 lint: fix lint 2022-09-04 12:28:47 -04:00
Barış Soner Uşaklı
b392450c36 perf: disable trending plugins, too slow due to nbbpm 2022-09-04 12:00:27 -04:00
Misty Release Bot
84b6a7c791 chore: update changelog for v2.5.2 2022-09-04 14:57:02 +00:00
Misty Release Bot
e351fbe89c chore: incrementing version number - v2.5.2 2022-09-04 14:56:55 +00:00
Barış Soner Uşaklı
b45e241390 lint: fix lint error 2022-09-04 10:36:57 -04:00
Barış Soner Uşaklı
1dc79d76a0 test: disable nbbpm test temporarily 2022-09-04 10:32:22 -04:00
Barış Soner Uşaklı
f6f37dc1cd fix: registration regression, closes #10875 2022-09-04 10:11:52 -04:00
Misty Release Bot
2b2fd4f34a chore: update changelog for v2.5.1 2022-09-02 19:14:02 +00:00
Misty Release Bot
2bf475299d chore: incrementing version number - v2.5.1 2022-09-02 19:14:01 +00:00
Julian Lam
67cb70352f fix: missing escape on ACP category backgroundImage property 2022-09-02 12:30:55 -04:00
Julian Lam
61d1e9e0d4 fix(deps): temporarily add back old textcomplete dependencies so emoji plugin can import them
Revert this commit once the emoji plugin is patched so it refers to the newer textcomplete module
2022-09-02 11:18:10 -04:00
Misty Release Bot
1076285dc9 chore: update changelog for v2.5.0 2022-09-01 16:14:07 +00:00
Misty Release Bot
c3e19005f6 chore: incrementing version number - v2.5.0 2022-09-01 16:14:06 +00:00
Julian Lam
8fe41d92a2 Merge remote-tracking branch 'origin/master' into develop 2022-09-01 08:44:20 -04:00
Misty Release Bot
4b0a786dfb Latest translations and fallbacks 2022-09-01 09:08:51 +00:00
Opliko
1920732528 feat: remove visibilityjs (#10870)
* feat: remove visibilityjs

* fix: actually remove require

* style: add a newline

* style: forgot a semicolon

* style: accidently removed trailing newline

* fix: move property declaration to its actual previous place
2022-08-30 09:52:57 -04:00
Misty Release Bot
e7806021c9 Latest translations and fallbacks 2022-08-29 09:07:47 +00:00
Barış Soner Uşaklı
d12e0b8c5e Merge branch 'develop' of https://github.com/NodeBB/NodeBB into develop 2022-08-28 17:46:07 -04:00
Barış Soner Uşaklı
b7addffc9e breaking: reduce nodebb.min.js size by around 800kb
const zxcvbn = require('zxcvbn');
bundles a huge amount of code, now it won't be in nodebb.min.js
2022-08-28 17:45:56 -04:00
Misty Release Bot
896ac77950 Latest translations and fallbacks 2022-08-28 09:08:08 +00:00
renovate[bot]
884d40756a fix(deps): update dependency compare-versions to v4.1.4 2022-08-27 15:46:21 -04:00
Misty Release Bot
e20433ecfc chore(i18n): fallback strings for new resources: nodebb.admin-settings-reputation 2022-08-26 20:06:42 +00:00
Julian Lam
15b1561fd3 feat: introduce ACP defined option to rescind notif or do nothing on flag resolve/reject
/cc #10867
2022-08-26 16:05:45 -04:00
Julian Lam
a088eb19af fix: empty thread tools container on open 2022-08-26 11:51:50 -04:00
Julian Lam
c1936e87f0 fix: add dropup handler to thread tools menu, updated how post tools menu adds dropup handler 2022-08-26 11:51:41 -04:00
Julian Lam
df36d96788 fix: empty thread tools container on open 2022-08-26 11:48:23 -04:00
Julian Lam
3dd3cd8297 fix: add dropup handler to thread tools menu, updated how post tools menu adds dropup handler 2022-08-26 11:48:23 -04:00
Barış Soner Uşaklı
a2d0cd162d refactor: remove console.log 2022-08-26 11:42:12 -04:00
Julian Lam
b3b48fa62f Merge remote-tracking branch 'origin/master' into develop 2022-08-25 16:42:53 -04:00
Julian Lam
3cbb7a3df0 chore: move @textcomplete and its modules to composer-default 2022-08-25 16:42:47 -04:00
Julian Lam
bc2ea86023 chore: remove client-side js file for tpl that no longer exists 2022-08-23 14:35:50 -04:00
Julian Lam
7c5a915dc9 test: have some build tests not pollute build folder 2022-08-23 11:23:49 -04:00
Julian Lam
70652ad480 docs(openapi): v3 spec for new user export routes 2022-08-22 17:03:43 -04:00
Julian Lam
d05705183f refactor: move export generation logic to v3 controller, GET/HEAD routes for exports
re: #10384
2022-08-22 17:03:43 -04:00
Julian Lam
0cda5aa3e3 feat: allow v3 api to handle 202 and 204 response codes as well. 2022-08-22 17:03:43 -04:00
gasoved
b424ba4637 test: User.hidePrivateData 2022-08-22 13:47:33 -04:00
Misty Release Bot
d505cc47ec chore: update changelog for v2.4.5 2022-08-22 16:14:00 +00:00
Misty Release Bot
d8b1291088 chore: incrementing version number - v2.4.5 2022-08-22 16:13:58 +00:00
Misty Release Bot
42e0fec392 Latest translations and fallbacks 2022-08-22 09:07:19 +00:00
Julian Lam
8b7cf48ade Merge remote-tracking branch 'origin/master' into develop 2022-08-19 15:36:08 -04:00
Julian Lam
9b96c33d5d fix: wrap passport.authenticate to pass in keepSessionInfo if not already set 2022-08-19 13:04:10 -04:00
Julian Lam
65b3996ac6 fix: removing duplicate session rerolling code (as it is in passport@^0.6 now) 2022-08-19 12:52:24 -04:00
Julian Lam
20ebf0a1e0 Merge remote-tracking branch 'origin/master' into develop 2022-08-19 10:50:59 -04:00
Barış Soner Uşaklı
bc37a5c516 fix: parseInt caller.uid closes #10849 2022-08-19 08:51:04 -04:00
Misty Release Bot
0ba03950e9 Latest translations and fallbacks 2022-08-19 09:06:15 +00:00
renovate[bot]
e51004e206 fix(deps): update dependency mongodb to v4.9.0 2022-08-18 20:00:44 -04:00
Misty Release Bot
77e492b8d7 chore: update changelog for v2.4.4 2022-08-18 13:45:27 +00:00
Misty Release Bot
24221d66e0 chore: incrementing version number - v2.4.4 2022-08-18 13:45:26 +00:00
Barış Soner Uşaklı
fc9b436f3e Merge branch 'master' of https://github.com/NodeBB/NodeBB 2022-08-18 09:27:48 -04:00
Barış Soner Uşaklı
489fb3a36f fix: missing req, closes #10847 2022-08-18 09:27:37 -04:00
Misty Release Bot
665f163704 Latest translations and fallbacks 2022-08-18 09:06:36 +00:00
Misty Release Bot
06da15a576 chore: update changelog for v2.4.3 2022-08-18 02:33:19 +00:00
Misty Release Bot
be0256b26e chore: incrementing version number - v2.4.3 2022-08-18 02:33:19 +00:00
Julian Lam
4dc7fa050f fix: #10845, disallow inline viewing of uploaded html files 2022-08-17 21:48:02 -04:00
renovate[bot]
d8a52f8142 fix(deps): update dependency lru-cache to v7.14.0 2022-08-17 21:29:42 -04:00
Julian Lam
81f8d84f10 fix(deps): bump composer-default to v9 2022-08-17 21:29:12 -04:00
Julian Lam
b7bcc367c6 fix(deps): remove textcomplete in favour of @textcomplete/core (same package, just refactored) 2022-08-17 21:29:12 -04:00
Julian Lam
9e46dd2090 Merge remote-tracking branch 'origin/master' into develop 2022-08-17 21:18:47 -04:00
Misty Release Bot
ba7a3466b2 chore: update changelog for v2.4.2 2022-08-17 21:12:35 +00:00
Misty Release Bot
1635633acd chore: incrementing version number - v2.4.2 2022-08-17 21:12:34 +00:00
Julian Lam
990ad6a11a Merge remote-tracking branch 'origin/master' into develop 2022-08-17 15:32:49 -04:00
Julian Lam
ec048a01ba fix: #10841, incorrect conditional in email interstitial partial 2022-08-17 15:32:36 -04:00
Misty Release Bot
f8297362b9 Latest translations and fallbacks 2022-08-17 09:05:59 +00:00
Barış Soner Uşaklı
4ceebf3939 Merge branch 'develop' of https://github.com/NodeBB/NodeBB into develop 2022-08-16 19:17:28 -04:00
Barış Soner Uşaklı
0a6900fc77 feat: don't show signatures again in pagination mode in same topic 2022-08-16 19:17:23 -04:00
renovate[bot]
444b4d578b fix(deps): update dependency nodebb-theme-persona to v12.1.1 (#10838)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-16 18:07:14 -04:00
Misty Release Bot
fcbbb4d6d3 chore(i18n): fallback strings for new resources: nodebb.admin-settings-post 2022-08-16 22:06:55 +00:00
Barış Soner Uşaklı
aba420a3f3 feat: setting to show signatures only once in topics, closes #10071 2022-08-16 18:06:16 -04:00
Opliko
72e7b9f7d8 docs: explain what export routes actually do in OpenAPI documentation (#10836) 2022-08-16 15:57:24 -04:00
Barış Soner Uşaklı
14c79763dd refactor: use group.slug on acp group urls closes #8277 2022-08-16 10:42:33 -04:00
Barış Soner Uşaklı
b663c620ce Merge branch 'develop' of https://github.com/NodeBB/NodeBB into develop 2022-08-16 10:24:07 -04:00
renovate[bot]
8fce68d347 chore(deps): update dependency eslint to v8.22.0 (#10835)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-16 10:10:24 -04:00
Misty Release Bot
6b76f99a3e Latest translations and fallbacks 2022-08-16 09:06:48 +00:00
Opliko
bcb94edeb4 feat: add event type to topic event component 2022-08-15 14:18:43 -04:00
Barış Soner Uşaklı
e06e526e54 fix: don't crash if post is undefined 2022-08-15 14:18:43 -04:00
Barış Soner Uşaklı
33458701c1 test: passport0.6 (#10638)
* test: passport0.6

* test: make logout async, fix lint

* test: keepSessionInfo flag

* revert: csrf load
2022-08-15 14:18:43 -04:00
Misty Release Bot
20a661e124 chore: update changelog for v2.4.1 2022-08-15 14:18:43 -04:00
Misty Release Bot
fecf31bd15 chore: incrementing version number - v2.4.1 2022-08-15 14:18:43 -04:00
Opliko
3975fa2e45 fix: return at least one in sizeCalculation (#10832)
if post content is empty post cache should still consider its size to be at least one. fixes #10831
2022-08-15 14:18:43 -04:00
Misty Release Bot
6f9fa8c2c8 Latest translations and fallbacks 2022-08-15 09:06:13 +00:00
Barış Soner Uşaklı
4a3e36a766 fix: don't crash if post is undefined 2022-08-14 20:18:18 -04:00
Misty Release Bot
90fc50e116 chore(i18n): fallback strings for new resources: nodebb.admin-advanced-cache 2022-08-14 00:36:36 +00:00
Opliko
a9bbb586fc feat: allow plugins to add to admin cache list (#10833)
* feat: allow plugins to add to admin cache list

resolves  #10820

plugins will have to use `filter:admin.cache.get` hook and just add their own cache to the object there.

* feat: add dump to ttlCache and expose properties

* feat: also expose properties under their current names

* feat: display TTL if set
2022-08-13 20:35:59 -04:00
Barış Soner Uşaklı
6b2a6f9006 test: passport0.6 (#10638)
* test: passport0.6

* test: make logout async, fix lint

* test: keepSessionInfo flag

* revert: csrf load
2022-08-13 20:24:42 -04:00
Misty Release Bot
4b6baabbbf chore: update changelog for v2.4.1 2022-08-14 00:18:25 +00:00
Misty Release Bot
7f5ff2e613 chore: incrementing version number - v2.4.1 2022-08-14 00:18:24 +00:00
Opliko
15ca460c8f fix: return at least one in sizeCalculation (#10832)
if post content is empty post cache should still consider its size to be at least one. fixes #10831
2022-08-13 09:29:56 -04:00
Julian Lam
2568986c58 Revert "Revert "chore(deps): update docker/build-push-action action to v3""
This reverts commit d2c2f333e1.
2022-08-12 17:15:55 -04:00
Julian Lam
9d446f9282 Revert "Revert "chore(deps): update docker/login-action action to v2""
This reverts commit 887df0e62b.
2022-08-12 17:15:55 -04:00
Julian Lam
c71335218b Revert "Revert "chore(deps): update docker/setup-buildx-action action to v2""
This reverts commit 8936f412d1.
2022-08-12 17:15:54 -04:00
renovate[bot]
8afaed223c chore(deps): update mongo docker tag to v3.7 2022-08-12 17:14:35 -04:00
renovate[bot]
4c44d12557 fix(deps): update dependency ace-builds to v1.9.5 2022-08-12 17:14:35 -04:00
renovate[bot]
4ddc0c7af9 fix(deps): update dependency lru-cache to v7.13.2 2022-08-12 17:14:35 -04:00
renovate[bot]
4aecf399eb chore(deps): update docker/setup-qemu-action action to v2 2022-08-12 17:14:35 -04:00
renovate[bot]
dd3851849b fix(deps): update dependency nodemailer to v6.7.8 2022-08-12 17:14:35 -04:00
renovate[bot]
150a7488e4 fix(deps): pin dependency @isaacs/ttlcache to 1.2.0 2022-08-12 17:14:35 -04:00
renovate[bot]
9a7dd3a3b1 fix(deps): update dependency nodebb-plugin-composer-default to v8.0.1 (#10819)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-12 17:14:35 -04:00
renovate[bot]
269382e03d chore(deps): update redis docker tag to v2.8.23 (#10811)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-12 17:14:35 -04:00
Julian Lam
8936f412d1 Revert "chore(deps): update docker/setup-buildx-action action to v2"
This reverts commit 371ac03220.
2022-08-12 17:14:22 -04:00
Julian Lam
887df0e62b Revert "chore(deps): update docker/login-action action to v2"
This reverts commit 3d68accf99.
2022-08-12 17:14:21 -04:00
Julian Lam
d2c2f333e1 Revert "chore(deps): update docker/build-push-action action to v3"
This reverts commit bfd6318cd6.
2022-08-12 17:14:20 -04:00
renovate[bot]
bfd6318cd6 chore(deps): update docker/build-push-action action to v3 2022-08-12 11:48:00 -04:00
renovate[bot]
3d68accf99 chore(deps): update docker/login-action action to v2 2022-08-12 11:47:53 -04:00
renovate[bot]
371ac03220 chore(deps): update docker/setup-buildx-action action to v2 2022-08-12 11:44:48 -04:00
renovate[bot]
69c87c2caa fix(deps): update dependency nodebb-plugin-composer-default to v8.0.1 (#10819)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-11 20:48:20 -04:00
renovate[bot]
59fd0efe07 chore(deps): update redis docker tag to v2.8.23 (#10811)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-11 20:47:55 -04:00
Misty Release Bot
c4714ff7df chore: update changelog for v2.4.0 2022-08-10 20:02:19 +00:00
Misty Release Bot
5525442279 chore: incrementing version number - v2.4.0 2022-08-10 20:02:18 +00:00
Misty Release Bot
72b03d8dea Merge branch 'develop' 2022-08-10 20:02:08 +00:00
Julian Lam
9b753d6d57 TTL Cache (#10816)
* refactor: move src/cacheCreate.js to src/cache/lru.js

* fix: call new library location for lru cache creator

* feat: add ttl cache

* fix: update upload throttler to use ttl cache instead of lru cache

* chore: add missing dependency

* fix: avoid pubsub conflicts

* fix: use get instead of peek, which is not available in ttl-cache
2022-08-10 15:26:07 -04:00
Julian Lam
c07d595662 Update to lru-cache@^7 (#10815)
* chore(deps): bump lru-cache from 6.0.0 to 7.13.1 in /install

Bumps [lru-cache](https://github.com/isaacs/node-lru-cache) from 6.0.0 to 7.13.1.
- [Release notes](https://github.com/isaacs/node-lru-cache/releases)
- [Changelog](https://github.com/isaacs/node-lru-cache/blob/main/CHANGELOG.md)
- [Commits](https://github.com/isaacs/node-lru-cache/compare/v6.0.0...v7.13.1)

---
updated-dependencies:
- dependency-name: lru-cache
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix(lru-cache): remove unneeded `length` params for cache creation, as `maxSize` was not used in those init calls, also renamed some methods to match new method names in lru-cache [breaking]

Added deprecation notices for old params

* fix: replace three direct calls to lru-cache with call to cacheCreate, moved cache creation call in uploads to run on first init as config is not populated at lib init

* test: move configs init above cache reset calls in databasemock

* move some more code above cache clear

* refactor: remove unused

* test: lru

* test: more debug

* test: on more test

* use await helpers.uploadFile

* fix: tests remove logs

* fix: acp cache page

* fix: add in one more guard again cache instantiation with `length` prop but no `maxSize` prop

* fix(deps): bump markdown

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Barış Soner Uşaklı <barisusakli@gmail.com>
2022-08-10 13:24:16 -04:00
Julian Lam
64541dd820 Revert "Update to lru-cache@^7 (#10813)"
This reverts commit c9754b09e6.
2022-08-10 13:22:39 -04:00
Julian Lam
c9754b09e6 Update to lru-cache@^7 (#10813)
* chore(deps): bump lru-cache from 6.0.0 to 7.13.1 in /install

Bumps [lru-cache](https://github.com/isaacs/node-lru-cache) from 6.0.0 to 7.13.1.
- [Release notes](https://github.com/isaacs/node-lru-cache/releases)
- [Changelog](https://github.com/isaacs/node-lru-cache/blob/main/CHANGELOG.md)
- [Commits](https://github.com/isaacs/node-lru-cache/compare/v6.0.0...v7.13.1)

---
updated-dependencies:
- dependency-name: lru-cache
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix(lru-cache): remove unneeded `length` params for cache creation, as `maxSize` was not used in those init calls, also renamed some methods to match new method names in lru-cache [breaking]

Added deprecation notices for old params

* fix: replace three direct calls to lru-cache with call to cacheCreate, moved cache creation call in uploads to run on first init as config is not populated at lib init

* test: move configs init above cache reset calls in databasemock

* move some more code above cache clear

* refactor: remove unused

* test: lru

* test: more debug

* test: on more test

* use await helpers.uploadFile

* fix: tests remove logs

* fix: acp cache page

* fix: add in one more guard again cache instantiation with `length` prop but no `maxSize` prop

* fix(deps): bump markdown

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Barış Soner Uşaklı <barisusakli@gmail.com>
2022-08-10 13:22:18 -04:00
Julian Lam
59f3ae201a Merge remote-tracking branch 'origin/master' into develop 2022-08-10 09:52:49 -04:00
Misty Release Bot
d7a02d677f Latest translations and fallbacks 2022-08-10 09:06:32 +00:00
Barış Soner Uşaklı
961be70725 fix test on redis 2022-08-09 18:26:46 -04:00
Misty Release Bot
8e9677544b Latest translations and fallbacks 2022-08-09 09:06:35 +00:00
Opliko
b3a37a7f35 feat: support packageManager property in package.json
resolves #10714
2022-08-08 17:23:32 -04:00
renovate[bot]
13a17bd10a chore(deps): update dependency eslint to v8.21.0 2022-08-08 17:18:22 -04:00
Julian Lam
38bf30c8ca fix: adapt to breaking change in commander 2022-08-08 17:17:38 -04:00
dependabot[bot]
993b77478e chore(deps): bump commander from 7.2.0 to 9.4.0 in /install
Bumps [commander](https://github.com/tj/commander.js) from 7.2.0 to 9.4.0.
- [Release notes](https://github.com/tj/commander.js/releases)
- [Changelog](https://github.com/tj/commander.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tj/commander.js/compare/v7.2.0...v9.4.0)

---
updated-dependencies:
- dependency-name: commander
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-08 17:17:38 -04:00
Julian Lam
1465598d3b fix(deps): bump persona v12.1.0 2022-08-08 16:19:36 -04:00
Julian Lam
d0255fc6a5 fix: move panel-offset setting code back to theme header 2022-08-08 16:02:27 -04:00
Julian Lam
659cfe853d chore: update to new transifex project url 2022-08-08 15:23:33 -04:00
Misty Release Bot
18c144bf37 Latest translations and fallbacks 2022-08-08 09:06:28 +00:00
Misty Release Bot
cdaa8f21e4 chore(i18n): fallback strings for new resources: nodebb.admin-settings-email 2022-08-05 19:40:09 +00:00
Julian Lam
4055e3bd1c feat: automatically enable the SMTP transport option if the SMTP service is changed 2022-08-05 15:39:32 -04:00
Misty Release Bot
3e56c547a9 chore(i18n): fallback strings for new resources: nodebb.admin-settings-email 2022-08-05 19:28:31 +00:00
Julian Lam
7082291bae fix: #10808; tweak copy for gmail app passwords support 2022-08-05 15:27:46 -04:00
Julian Lam
c6782a2173 Merge remote-tracking branch 'origin/master' into develop 2022-08-05 14:40:47 -04:00
Misty Release Bot
bcf7ef6779 chore(i18n): fallback strings for new resources: nodebb.user 2022-08-05 18:40:17 +00:00
Julian Lam
65c59cc16a test: additional tests for password challenge on email update 2022-08-05 14:39:36 -04:00
Julian Lam
8e1a4bb5df test: add dummy emailer hook to suppress sendmail error logging 2022-08-05 14:39:36 -04:00
Julian Lam
68bcd7f48e test: fix one last failing test 2022-08-05 14:39:36 -04:00
Julian Lam
9d27e90740 fix: don't require password challenge if no password is set in user account 2022-08-05 14:39:36 -04:00
Julian Lam
287f4c2c41 fix: do not throw if password passed into isPasswordCorrect is invalid, just return false 2022-08-05 14:39:36 -04:00
Julian Lam
342cca35c1 chore: re-order interstitial tests so email and gdpr tests are in sub-blocks 2022-08-05 14:39:36 -04:00
Julian Lam
7fcee42be9 feat: present a password challenge on email update flow 2022-08-05 14:39:36 -04:00
Barış Soner Uşaklı
7e8ad785f4 fix: don't crash if req.body.username is not string
Error: req.body.username.trim is not a function
File: authenticationController.login (/usr/src/app/src/controllers/authentication.js:247:40)
2022-08-05 08:11:32 -04:00
Barış Soner Uşaklı
55c5588a4b fix: don't crash if target/user is undefined
Error: TypeError: Cannot read properties of undefined (reading 'displayname')
File: Flags.notify (/usr/src/app/src/flags.js:812:89)
2022-08-05 08:11:11 -04:00
Barış Soner Uşaklı
4586f68eaf fix: race condition causing undefined ajaxify.data 2022-08-04 18:37:27 -04:00
Julian Lam
9ee1afbb0f Merge branch 'master' into develop 2022-08-04 16:04:09 -04:00
Julian Lam
06f089afda test: fix user email tests 2022-08-04 16:02:16 -04:00
Barış Soner Uşaklı
d73f0f9ccb perf: make single db call 2022-08-04 15:51:24 -04:00
Julian Lam
3b296c3aa4 Merge remote-tracking branch 'origin/master' into develop 2022-08-04 14:26:07 -04:00
Julian Lam
f93a0b83bb test: fix tests so that when user.create is called, email is set prior to confirmation 2022-08-04 14:24:30 -04:00
Julian Lam
1ca09b63ed fix: #10809, test runner to only run tests for plugins included in test_plugins 2022-08-04 14:20:36 -04:00
Julian Lam
bd18004d77 fix(deps): bump 2factor to v5.0.2 2022-08-03 15:44:09 -04:00
Julian Lam
e092bfeb46 Merge remote-tracking branch 'origin/master' into develop 2022-08-03 15:21:04 -04:00
Julian Lam
cba9047f67 fix: #10805, hide unconfirmed emails from user data retrieval methods 2022-08-03 12:36:11 -04:00
Julian Lam
3e062a7f29 fix: use different emoji on NodeBB Ready — again because procrastination 2022-08-03 12:10:08 -04:00
renovate[bot]
f02492bde3 fix(deps): update dependency sanitize-html to v2.7.1 (#10792)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-30 21:04:51 -04:00
renovate[bot]
f22790c0d0 fix(deps): update dependency html-to-text to v8.2.1 2022-07-30 20:56:58 -04:00
renovate[bot]
e748e31fed fix(deps): update dependency webpack to v5.74.0 2022-07-30 20:56:26 -04:00
renovate[bot]
4ca0d57172 fix(deps): update dependency autoprefixer to v10.4.8 (#10799)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-07-30 20:05:32 -04:00
Barış Soner Uşaklı
cd438b328a fix: unnecessary escape 2022-07-30 19:57:48 -04:00
Barış Soner Uşaklı
f64a69132a Merge branch 'develop' of https://github.com/NodeBB/NodeBB into develop 2022-07-30 19:56:03 -04:00
Opliko
456b87983a fix: remove socket.io cluster adapter (#10742) 2022-07-30 19:47:19 -04:00
Misty Release Bot
d073e09c11 Latest translations and fallbacks 2022-07-30 09:06:33 +00:00
Julian Lam
dc3a6a29bc fix: #10783, do not purge files without a timestamp prefix 2022-07-29 15:32:23 -04:00
Julian Lam
70d6028954 chore: opt-out of dependabot, due to conflicts with renovate 2022-07-29 11:29:42 -04:00
Misty Release Bot
2f487175a2 chore: update changelog for v2.3.1 2022-07-29 15:26:23 +00:00
Misty Release Bot
44dd42dc89 chore: incrementing version number - v2.3.1 2022-07-29 15:26:22 +00:00
Julian Lam
89173f17ca fix: #10798, logic error in COEP header; helmet config 2022-07-29 11:14:45 -04:00
Misty Release Bot
39e65d0bdf Latest translations and fallbacks 2022-07-29 09:06:47 +00:00
dependabot[bot]
7b606d2e59 chore(deps): bump sanitize-html from 2.7.0 to 2.7.1 in /install
Bumps [sanitize-html](https://github.com/apostrophecms/sanitize-html) from 2.7.0 to 2.7.1.
- [Release notes](https://github.com/apostrophecms/sanitize-html/releases)
- [Changelog](https://github.com/apostrophecms/sanitize-html/blob/main/CHANGELOG.md)
- [Commits](https://github.com/apostrophecms/sanitize-html/compare/2.7.0...2.7.1)

---
updated-dependencies:
- dependency-name: sanitize-html
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-28 20:42:39 -04:00
dependabot[bot]
a99006251c chore(deps): bump webpack from 5.73.0 to 5.74.0 in /install
Bumps [webpack](https://github.com/webpack/webpack) from 5.73.0 to 5.74.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.73.0...v5.74.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-28 19:24:56 -04:00
Julian Lam
847d2b9141 fix: #10795, early return for selection tooltip based on calling user privilege 2022-07-28 15:58:17 -04:00
Julian Lam
5176fb1544 feat: add emoji to startup logs, because procrastination. 2022-07-28 15:13:35 -04:00
Julian Lam
9f225e7062 fix(deps): update persona to v12.0.14 2022-07-28 14:27:37 -04:00
Misty Release Bot
17120e034b chore(i18n): fallback strings for new resources: nodebb.admin-settings-advanced, nodebb.admin-menu, nodebb.error 2022-07-28 18:23:10 +00:00
Misty Release Bot
a6f7fff0ad chore: update changelog for v2.3.0 2022-07-28 18:21:07 +00:00
Misty Release Bot
e616b2e16d chore: incrementing version number - v2.3.0 2022-07-28 18:21:06 +00:00
Julian Lam
dcacd815a9 refactor: invert helmet configuration 2022-07-27 17:02:02 -04:00
Barış Soner Uşaklı
b2da02d676 feat: add client side filter:chat.send, closes #10729 2022-07-27 13:12:39 -04:00
Misty Release Bot
56372fb618 Latest translations and fallbacks 2022-07-27 09:07:22 +00:00
renovate[bot]
8384b7cf0d fix(deps): update dependency mongodb to v4.8.1 2022-07-26 19:57:55 -04:00
renovate[bot]
07ce0c3942 chore(deps): update dependency lint-staged to v13 2022-07-26 19:28:00 -04:00
Misty Release Bot
d3c0b7c375 Latest translations and fallbacks 2022-07-26 18:34:45 +00:00
Julian Lam
820bc994d8 feat: UI changes for ACP > Manage > Categories (#10782)
* Revert "Revert "feat: cross origin opener policy options (#10710)""

This reverts commit 46050ace1a.

* Revert "Revert "chore(i18n): fallback strings for new resources: nodebb.admin-settings-advanced""

This reverts commit 9f291c07d3.

* feat: closes #10719, don't trim children if category is marked section

* feat: fire hook to allow plugins to filter the pids returned in a user profile

/cc julianlam/nodebb-plugin-support-forum#14

* fix: use `user.hidePrivateData();` more consistently across user retrieval endpoints

* fix: better looking placeholder text for ACP search

* fix: bug where fallback to forum search was not working due to client-side error

* feat: allow plugins to toggle whether IPs are shown in the users CSV export

* feat: Allow defining active plugins in config (#10767)

* Revert "Revert "feat: cross origin opener policy options (#10710)""

This reverts commit 46050ace1a.

* Revert "Revert "chore(i18n): fallback strings for new resources: nodebb.admin-settings-advanced""

This reverts commit 9f291c07d3.

* feat: closes #10719, don't trim children if category is marked section

* feat: fire hook to allow plugins to filter the pids returned in a user profile

/cc julianlam/nodebb-plugin-support-forum#14

* fix: use `user.hidePrivateData();` more consistently across user retrieval endpoints

* feat: Allow defining active plugins in config

resolves #10766

* fix: assign the db result to files properly

* test: add tests with plugins in config

* feat: better theme change handling

* feat: add visual indication that plugins can't be activated

* test: correct hooks

* test: fix test definitions

* test: remove instead of resetting nconf to avoid affecting other tests

* test: ... I forgot how nconf worked

* fix: remove negation

* docs: improve wording of error message

* feat: reduce code duplication

* style: remove a redundant space

* fix: remove unused imports

* fix: use nconf instead of requiring config.json

* fix: await...

* fix: second missed await

* fix: move back from getActiveIds to getActive

* fix: use paths again?

* fix: typo

* fix: move require into the function

* fix: forgot to change back to getActive

* test: getActive returns only id

* test: accedently commented out some stuff

* feat: added note to top of plugins page if \!canChangeState

Co-authored-by: Julian Lam <julian@nodebb.org>
Co-authored-by: Barış Soner Uşaklı <barisusakli@gmail.com>

* feat: show an informative message when no plugins are found after filtering

fixes #10771

* Latest translations and fallbacks

* Latest translations and fallbacks

* chore(deps): bump ace-builds from 1.7.1 to 1.8.1 in /install

Bumps [ace-builds](https://github.com/ajaxorg/ace-builds) from 1.7.1 to 1.8.1.
- [Release notes](https://github.com/ajaxorg/ace-builds/releases)
- [Changelog](https://github.com/ajaxorg/ace-builds/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ajaxorg/ace-builds/compare/v1.7.1...v1.8.1)

---
updated-dependencies:
- dependency-name: ace-builds
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix: swap out icons in ACP > Manage > Categories to more intuitive ones, remove extra placeholder div

* fix: hide expando button if no subcategories; remove attempt at establishing common vars, increased spacing between categories in list

* fix: buggy expando state on category drag/drop

Co-authored-by: Barış Soner Uşaklı <barisusakli@gmail.com>
Co-authored-by: Opliko <opliko.reg@protonmail.com>
Co-authored-by: Misty Release Bot <deploy@nodebb.org>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-26 14:29:32 -04:00
renovate[bot]
03a173bb6a fix(deps): update dependency helmet to v5.1.1 2022-07-26 14:27:17 -04:00
dependabot[bot]
f397d96830 chore(deps): bump ace-builds from 1.7.1 to 1.8.1 in /install
Bumps [ace-builds](https://github.com/ajaxorg/ace-builds) from 1.7.1 to 1.8.1.
- [Release notes](https://github.com/ajaxorg/ace-builds/releases)
- [Changelog](https://github.com/ajaxorg/ace-builds/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ajaxorg/ace-builds/compare/v1.7.1...v1.8.1)

---
updated-dependencies:
- dependency-name: ace-builds
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-26 14:27:17 -04:00
Julian Lam
6840a7423b feat: show an informative message when no plugins are found after filtering
fixes #10771
2022-07-26 14:27:17 -04:00
Opliko
23cb67a112 feat: Allow defining active plugins in config (#10767)
* Revert "Revert "feat: cross origin opener policy options (#10710)""

This reverts commit 46050ace1a.

* Revert "Revert "chore(i18n): fallback strings for new resources: nodebb.admin-settings-advanced""

This reverts commit 9f291c07d3.

* feat: closes #10719, don't trim children if category is marked section

* feat: fire hook to allow plugins to filter the pids returned in a user profile

/cc julianlam/nodebb-plugin-support-forum#14

* fix: use `user.hidePrivateData();` more consistently across user retrieval endpoints

* feat: Allow defining active plugins in config

resolves #10766

* fix: assign the db result to files properly

* test: add tests with plugins in config

* feat: better theme change handling

* feat: add visual indication that plugins can't be activated

* test: correct hooks

* test: fix test definitions

* test: remove instead of resetting nconf to avoid affecting other tests

* test: ... I forgot how nconf worked

* fix: remove negation

* docs: improve wording of error message

* feat: reduce code duplication

* style: remove a redundant space

* fix: remove unused imports

* fix: use nconf instead of requiring config.json

* fix: await...

* fix: second missed await

* fix: move back from getActiveIds to getActive

* fix: use paths again?

* fix: typo

* fix: move require into the function

* fix: forgot to change back to getActive

* test: getActive returns only id

* test: accedently commented out some stuff

* feat: added note to top of plugins page if \!canChangeState

Co-authored-by: Julian Lam <julian@nodebb.org>
Co-authored-by: Barış Soner Uşaklı <barisusakli@gmail.com>
2022-07-26 14:27:17 -04:00
Julian Lam
a6af47da02 feat: allow plugins to toggle whether IPs are shown in the users CSV export 2022-07-26 14:27:17 -04:00
Julian Lam
25046642e7 fix: bug where fallback to forum search was not working due to client-side error 2022-07-26 14:27:17 -04:00
Julian Lam
1b9c68196f fix: better looking placeholder text for ACP search 2022-07-26 14:27:17 -04:00
Julian Lam
0529f2fb5d fix: use user.hidePrivateData(); more consistently across user retrieval endpoints 2022-07-26 14:27:17 -04:00
Julian Lam
c26be43ac5 feat: fire hook to allow plugins to filter the pids returned in a user profile
/cc julianlam/nodebb-plugin-support-forum#14
2022-07-26 14:27:17 -04:00
Barış Soner Uşaklı
7e80cc1033 feat: closes #10719, don't trim children if category is marked section 2022-07-26 14:27:17 -04:00
Julian Lam
15fb6c3304 Revert "Revert "chore(i18n): fallback strings for new resources: nodebb.admin-settings-advanced""
This reverts commit 9f291c07d3.
2022-07-26 14:27:17 -04:00
Julian Lam
ad072c03d1 Revert "Revert "feat: cross origin opener policy options (#10710)""
This reverts commit 46050ace1a.
2022-07-26 14:27:17 -04:00
Julian Lam
f334e398fa chore: have renovate work off of develop branch instead 2022-07-25 16:05:34 -04:00
Julian Lam
4faf0cdf5c fix: minor margin tweak for alert in acp header 2022-07-25 14:32:34 -04:00
dependabot[bot]
067a51107c chore(deps): bump ioredis from 5.2.0 to 5.2.2 in /install
Bumps [ioredis](https://github.com/luin/ioredis) from 5.2.0 to 5.2.2.
- [Release notes](https://github.com/luin/ioredis/releases)
- [Changelog](https://github.com/luin/ioredis/blob/main/CHANGELOG.md)
- [Commits](https://github.com/luin/ioredis/compare/v5.2.0...v5.2.2)

---
updated-dependencies:
- dependency-name: ioredis
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-25 12:24:46 -04:00
Tong Ho
bbc7f2afba fix: cannot turn off all networks 2022-07-25 10:39:55 -04:00
Tong Ho
2e088a8ef0 fix: cannot setting networks for sharing posts 2022-07-25 10:39:55 -04:00
Misty Release Bot
0523dfbacb Latest translations and fallbacks 2022-07-23 09:06:33 +00:00
Misty Release Bot
2f6448e736 Latest translations and fallbacks 2022-07-22 09:07:07 +00:00
Misty Release Bot
6c3ebf3b1c chore: update changelog for v2.2.5 2022-07-21 02:16:49 +00:00
Misty Release Bot
d1fe975974 chore: incrementing version number - v2.2.5 2022-07-21 02:16:48 +00:00
Julian Lam
c93bd0105e fix: expire email validation tokens on password change 2022-07-20 17:02:39 -04:00
Misty Release Bot
6f88894cb9 Latest translations and fallbacks 2022-07-20 09:07:57 +00:00
dependabot[bot]
8d109fef47 chore(deps-dev): bump eslint from 8.19.0 to 8.20.0 in /install
Bumps [eslint](https://github.com/eslint/eslint) from 8.19.0 to 8.20.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.19.0...v8.20.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-18 09:04:03 -04:00
Julian Lam
0d58e8a6af fix: remove extraneous console.log 2022-07-15 14:57:37 -04:00
dependabot[bot]
4c1bda32c9 chore(deps): bump cron from 2.0.0 to 2.1.0 in /install
Bumps [cron](https://github.com/kelektiv/node-cron) from 2.0.0 to 2.1.0.
- [Release notes](https://github.com/kelektiv/node-cron/releases)
- [Changelog](https://github.com/kelektiv/node-cron/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kelektiv/node-cron/compare/v2.0.0...v2.1.0)

---
updated-dependencies:
- dependency-name: cron
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-15 08:12:37 -04:00
dependabot[bot]
abb19e981e chore(deps): bump jquery-ui from 1.13.1 to 1.13.2 in /install
Bumps [jquery-ui](https://github.com/jquery/jquery-ui) from 1.13.1 to 1.13.2.
- [Release notes](https://github.com/jquery/jquery-ui/releases)
- [Commits](https://github.com/jquery/jquery-ui/compare/1.13.1...1.13.2)

---
updated-dependencies:
- dependency-name: jquery-ui
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-15 08:12:18 -04:00
renovate[bot]
bff239da99 fix(deps): update dependency mongodb to v4.8.0 2022-07-13 15:31:48 -04:00
dependabot[bot]
9e52b8c648 chore(deps): bump nodebb-theme-persona in /install
Bumps [nodebb-theme-persona](https://github.com/NodeBB/nodebb-theme-persona) from 12.0.11 to 12.0.12.
- [Release notes](https://github.com/NodeBB/nodebb-theme-persona/releases)
- [Commits](https://github.com/NodeBB/nodebb-theme-persona/compare/v12.0.11...v12.0.12)

---
updated-dependencies:
- dependency-name: nodebb-theme-persona
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-13 11:12:37 -04:00
dependabot[bot]
2a88a50fe5 chore(deps-dev): bump @commitlint/config-angular in /install
Bumps [@commitlint/config-angular](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-angular) from 17.0.0 to 17.0.3.
- [Release notes](https://github.com/conventional-changelog/commitlint/releases)
- [Changelog](https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/config-angular/CHANGELOG.md)
- [Commits](https://github.com/conventional-changelog/commitlint/commits/v17.0.3/@commitlint/config-angular)

---
updated-dependencies:
- dependency-name: "@commitlint/config-angular"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-13 11:02:16 -04:00
dependabot[bot]
8c20fdad9f chore(deps): bump ioredis from 5.1.0 to 5.2.0 in /install
Bumps [ioredis](https://github.com/luin/ioredis) from 5.1.0 to 5.2.0.
- [Release notes](https://github.com/luin/ioredis/releases)
- [Changelog](https://github.com/luin/ioredis/blob/main/CHANGELOG.md)
- [Commits](https://github.com/luin/ioredis/compare/v5.1.0...v5.2.0)

---
updated-dependencies:
- dependency-name: ioredis
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-13 11:01:55 -04:00
Misty Release Bot
52f7ed643c chore: update changelog for v2.2.4 2022-07-12 19:00:24 +00:00
Misty Release Bot
7cc33d6db4 chore: incrementing version number - v2.2.4 2022-07-12 19:00:23 +00:00
Renovate Bot
42a45a71f4 chore(deps): update docker/metadata-action action to v4 2022-07-12 14:21:51 -04:00
Renovate Bot
452e5bf76c fix(deps): update dependency diff to v5.1.0 2022-07-12 14:21:39 -04:00
dependabot[bot]
d568d2f5fb chore(deps): bump ace-builds from 1.5.3 to 1.7.1 in /install
Bumps [ace-builds](https://github.com/ajaxorg/ace-builds) from 1.5.3 to 1.7.1.
- [Release notes](https://github.com/ajaxorg/ace-builds/releases)
- [Changelog](https://github.com/ajaxorg/ace-builds/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ajaxorg/ace-builds/compare/v1.5.3...v1.7.1)

---
updated-dependencies:
- dependency-name: ace-builds
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-12 14:21:04 -04:00
Julian Lam
3c41ae04cd fix: #10733, extraneous apostrophes in plugin upgrader 2022-07-07 15:10:52 -04:00
Julian Lam
60114219c1 fix: get version from install/package.json instead 2022-07-07 15:07:03 -04:00
dependabot[bot]
9e44cdad19 chore(deps-dev): bump @commitlint/cli from 17.0.2 to 17.0.3 in /install
Bumps [@commitlint/cli](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/cli) from 17.0.2 to 17.0.3.
- [Release notes](https://github.com/conventional-changelog/commitlint/releases)
- [Changelog](https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/cli/CHANGELOG.md)
- [Commits](https://github.com/conventional-changelog/commitlint/commits/v17.0.3/@commitlint/cli)

---
updated-dependencies:
- dependency-name: "@commitlint/cli"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-07 11:54:12 -04:00
dependabot[bot]
7139ad5f5a chore(deps-dev): bump eslint from 8.18.0 to 8.19.0 in /install
Bumps [eslint](https://github.com/eslint/eslint) from 8.18.0 to 8.19.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.18.0...v8.19.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-07 09:56:35 -04:00
dependabot[bot]
26b73b39e0 chore(deps): bump winston from 3.8.0 to 3.8.1 in /install
Bumps [winston](https://github.com/winstonjs/winston) from 3.8.0 to 3.8.1.
- [Release notes](https://github.com/winstonjs/winston/releases)
- [Changelog](https://github.com/winstonjs/winston/blob/master/CHANGELOG.md)
- [Commits](https://github.com/winstonjs/winston/compare/v3.8.0...v3.8.1)

---
updated-dependencies:
- dependency-name: winston
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-07 09:38:03 -04:00
dependabot[bot]
0d55c42de3 chore(deps): bump ioredis from 5.0.6 to 5.1.0 in /install
Bumps [ioredis](https://github.com/luin/ioredis) from 5.0.6 to 5.1.0.
- [Release notes](https://github.com/luin/ioredis/releases)
- [Changelog](https://github.com/luin/ioredis/blob/main/CHANGELOG.md)
- [Commits](https://github.com/luin/ioredis/compare/v5.0.6...v5.1.0)

---
updated-dependencies:
- dependency-name: ioredis
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-07 09:23:27 -04:00
dependabot[bot]
bd37b2865b chore(deps): bump nodemailer from 6.7.5 to 6.7.7 in /install
Bumps [nodemailer](https://github.com/nodemailer/nodemailer) from 6.7.5 to 6.7.7.
- [Release notes](https://github.com/nodemailer/nodemailer/releases)
- [Changelog](https://github.com/nodemailer/nodemailer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodemailer/nodemailer/compare/v6.7.5...v6.7.7)

---
updated-dependencies:
- dependency-name: nodemailer
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-07 08:14:24 -04:00
Julian Lam
8d701ec3e2 fix: #10739, always re-add theme to active plugins, on theme set 2022-07-05 13:15:22 -04:00
Misty Release Bot
d3ef4fa0cd Latest translations and fallbacks 2022-07-05 09:06:42 +00:00
Misty Release Bot
8719a93f43 chore: update changelog for v2.2.3 2022-07-05 02:47:22 +00:00
Misty Release Bot
57b8292d07 chore: incrementing version number - v2.2.3 2022-07-05 02:47:21 +00:00
Julian Lam
b778e38c2b fix: move call to ajaxify.parseData out to root level 2022-07-04 17:06:06 -04:00
Misty Release Bot
9c48e3d66d Latest translations and fallbacks 2022-07-04 09:06:34 +00:00
Misty Release Bot
fb96072f67 Latest translations and fallbacks 2022-07-03 09:06:47 +00:00
Julian Lam
165b804d64 refactor: rewrite ajaxify.parseData in vanilla 2022-07-01 15:45:31 -04:00
Julian Lam
2582cb53a6 fix: move ajaxify.parseData back out to DOMContentLoaded
partialy reverts 2bfccac72
2022-07-01 15:45:15 -04:00
Misty Release Bot
077eb0912a Latest translations and fallbacks 2022-07-01 09:06:40 +00:00
Misty Release Bot
f59ddc34a2 chore: update changelog for v2.2.2 2022-06-30 18:49:12 +00:00
Misty Release Bot
7863459667 chore: incrementing version number - v2.2.2 2022-06-30 18:49:11 +00:00
dependabot[bot]
bfd626b019 chore(deps-dev): bump eslint from 8.17.0 to 8.18.0 in /install
Bumps [eslint](https://github.com/eslint/eslint) from 8.17.0 to 8.18.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.17.0...v8.18.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-30 09:14:04 -04:00
dependabot[bot]
d037c2c98c chore(deps-dev): bump jsdom from 19.0.0 to 20.0.0 in /install
Bumps [jsdom](https://github.com/jsdom/jsdom) from 19.0.0 to 20.0.0.
- [Release notes](https://github.com/jsdom/jsdom/releases)
- [Changelog](https://github.com/jsdom/jsdom/blob/master/Changelog.md)
- [Commits](https://github.com/jsdom/jsdom/compare/19.0.0...20.0.0)

---
updated-dependencies:
- dependency-name: jsdom
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-30 09:13:58 -04:00
Misty Release Bot
f71a349524 Latest translations and fallbacks 2022-06-30 09:06:20 +00:00
Julian Lam
f38b2a737a fix: improper handling of single vs. multiple inputs for hidePrivateData 2022-06-29 16:19:52 -04:00
Julian Lam
ecf0e8ce22 fix: observe user-specific and ACP-specific hiding rules for fullname 2022-06-29 16:12:32 -04:00
Julian Lam
3f5ae893c6 refactor: allow user.hidePrivateData() to handle an array of userData 2022-06-29 16:10:04 -04:00
Barış Soner Uşaklı
cb084cbd62 feat: add client side filter:chat.send, closes #10729 2022-06-28 14:14:40 -04:00
Barış Soner Uşaklı
01943b0e81 Merge branch 'develop' of https://github.com/NodeBB/NodeBB into develop 2022-06-28 14:08:58 -04:00
Misty Release Bot
6fac823e64 Latest translations and fallbacks 2022-06-28 09:07:45 +00:00
Misty Release Bot
b5c1658c7f Latest translations and fallbacks 2022-06-27 09:06:44 +00:00
Misty Release Bot
667780cf1e chore: update changelog for v2.2.1 2022-06-24 19:13:06 +00:00
Misty Release Bot
178613cedd chore: incrementing version number - v2.2.1 2022-06-24 19:13:05 +00:00
renovate[bot]
d4a5039e33 fix(deps): update dependency winston to v3.8.0 (#10725)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-06-24 14:13:21 -04:00
renovate[bot]
0a07c2c028 fix(deps): update dependency sharp to v0.30.7 (#10724)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-06-24 12:17:02 -04:00
Opliko
7f5b285eb7 docs: remove the redundant security policy template 2022-06-24 11:45:15 -04:00
Julian Lam
17e44ff5c9 feat: fire hook to allow plugins to filter the pids returned in a user profile
/cc julianlam/nodebb-plugin-support-forum#14
2022-06-24 11:35:21 -04:00
Barış Soner Uşaklı
be917e8d39 feat: closes #10719, don't trim children if category is marked section 2022-06-24 11:35:21 -04:00
Julian Lam
e0985d72e7 Revert "Revert "chore(i18n): fallback strings for new resources: nodebb.admin-settings-advanced""
This reverts commit 9f291c07d3.
2022-06-24 11:35:21 -04:00
Julian Lam
0d68643bcb Revert "Revert "feat: cross origin opener policy options (#10710)""
This reverts commit 46050ace1a.
2022-06-24 11:35:21 -04:00
Opliko
97baa8f2f7 Use new form issue templates (#10720)
* docs: use the new form issue template

* docs: add codeblock to plugins command in issue template

* docs: remove labels

* docs: remove all labels from issue templates

* style: add new line at the end of issue template files

* docs: re-add issue template labels
2022-06-24 11:34:46 -04:00
Misty Release Bot
fa023f1c5d Latest translations and fallbacks 2022-06-23 09:06:31 +00:00
Misty Release Bot
ab021902a4 Latest translations and fallbacks 2022-06-21 09:06:52 +00:00
Barış Soner Uşaklı
0bec52bc19 feat: closes #10719, don't trim children if category is marked section 2022-06-20 16:40:24 -04:00
Misty Release Bot
871bd04bf8 Latest translations and fallbacks 2022-06-20 09:07:27 +00:00
Misty Release Bot
ee4a6505df Latest translations and fallbacks 2022-06-19 09:07:04 +00:00
Misty Release Bot
66ad72eb57 Latest translations and fallbacks 2022-06-18 09:06:23 +00:00
Misty Release Bot
da48116373 chore(i18n): fallback strings for new resources: nodebb.admin-settings-uploads 2022-06-17 19:10:52 +00:00
Julian Lam
43f9e6c8e4 fix: handle ENOENT on file deletion, closes #10645 2022-06-17 15:09:45 -04:00
Julian Lam
05c30677f5 test: fix i18n tests 2022-06-17 14:26:12 -04:00
Julian Lam
06074e8c33 chore: add in warning in language directories about not editing files directly 2022-06-17 13:47:05 -04:00
Julian Lam
6eed1143ed Revert "Revert "chore(i18n): fallback strings for new resources: nodebb.admin-settings-advanced""
This reverts commit 9f291c07d3.
2022-06-17 11:23:12 -04:00
Julian Lam
d903b30feb Revert "Revert "feat: cross origin opener policy options (#10710)""
This reverts commit 46050ace1a.
2022-06-17 11:22:57 -04:00
Julian Lam
46050ace1a Revert "feat: cross origin opener policy options (#10710)"
This reverts commit 881323583f.
2022-06-17 11:21:41 -04:00
Julian Lam
9f291c07d3 Revert "chore(i18n): fallback strings for new resources: nodebb.admin-settings-advanced"
This reverts commit 34d75e96e1.
2022-06-17 11:21:35 -04:00
Misty Release Bot
34d75e96e1 chore(i18n): fallback strings for new resources: nodebb.admin-settings-advanced 2022-06-17 13:41:11 +00:00
Barış Soner Uşaklı
881323583f feat: cross origin opener policy options (#10710) 2022-06-17 09:40:02 -04:00
Misty Release Bot
20b75b24ad Latest translations and fallbacks 2022-06-17 09:06:43 +00:00
Misty Release Bot
1c8909cc90 Latest translations and fallbacks 2022-06-16 09:07:29 +00:00
Misty Release Bot
bb3766df65 chore: update changelog for v2.2.0 2022-06-15 20:16:58 +00:00
685 changed files with 4333 additions and 2001 deletions

View File

@@ -1,32 +0,0 @@
<!--
== Github Issues are for bug reports and feature requests only ==
== Please visit https://community.nodebb.org for other support ==
== Found a security exploit? Please email us at security@nodebb.org instead for immediate attention ==
== → DO NOT SUBMIT VULNERABILITIES TO THE PUBLIC BUG TRACKER ==
-->
<!-- ++ Please include the following information when submitting a bug report ++ -->
- **NodeBB version:**
- **NodeBB git hash:**
- **NodeJS version:**
<!-- (to find your git hash, execute `git rev-parse HEAD` from the main NodeBB directory) -->
- **Installed NodeBB Plugins:**
<!-- (to find installed plugins run ./nodebb plugins) -->
- **Database type:** mongo, redis, or postgres
- **Database version:**
<!-- `mongod --version`, `redis-server --version`, or `postgres --version` -->
- **Exact steps to cause this issue:**
<!--
1. First I did this...
2. Then, I clicked on this item...
A quick note: MP4 and MOV formatted video files are now allowed to be uploaded to GH.
Please upload if reproduction steps are hard to describe or reproduce reliably.
-->
- **What you expected:**
<!-- e.g. I expected *abc* to *xyz* -->
- **What happened instead:**
<!-- e.g. Instead, I got *zyx* and NodeBB set fire to my house -->
<!-- Thank you! -->

81
.github/ISSUE_TEMPLATE/bug-report.yml vendored Normal file
View File

@@ -0,0 +1,81 @@
name: Bug Report
description: File a bug report
labels: ["bug"]
body:
- type: markdown
attributes:
value: |
Github Issues are for bug reports and feature requests only
Please visit https://community.nodebb.org for other support
Found a security exploit? Please email us at security@nodebb.org instead for immediate attention
### → DO NOT SUBMIT VULNERABILITIES TO THE PUBLIC BUG TRACKER ←
- type: input
attributes:
label: NodeBB version
placeholder: e.g. v2.2.0
- type: input
attributes:
label: NodeBB git hash
description: to find your git hash, execute `git rev-parse HEAD` from the main NodeBB directory
placeholder: e.g. 783250ee6f8c51cdc243ce3b8d9f1a080517247e
- type: input
attributes:
label: NodeJS version
placeholder: e.g. v16.15.1
- type: textarea
attributes:
label: Installed NodeBB plugins
description: to find installed plugins run `./nodebb plugins`
placeholder: |
e.g.
* nodebb-plugin-2factor@5.0.1 (installed, disabled)
* nodebb-plugin-composer-default@8.0.0 (installed, enabled)
* nodebb-plugin-dbsearch@5.1.5 (installed, disabled)
* nodebb-plugin-emoji@4.0.4 (installed, enabled)
* nodebb-plugin-emoji-android@3.0.0 (installed, enabled)
* nodebb-plugin-markdown@10.0.0 (installed, enabled)
* nodebb-plugin-mentions@3.0.11 (installed, enabled)
* nodebb-plugin-spam-be-gone@1.0.0 (installed, disabled)
* nodebb-rewards-essentials@0.2.1 (installed, enabled)
* nodebb-theme-lavender@6.0.0 (installed, disabled)
* nodebb-theme-persona@12.0.11 (installed, enabled)
* nodebb-theme-slick@2.0.2 (installed, disabled)
* nodebb-theme-vanilla@12.1.18 (installed, disabled)
* nodebb-widget-essentials@6.0.0 (installed, enabled)
- type: dropdown
attributes:
label: Database type
multiple: true
options:
- MongoDB
- Redis
- PostgreSQL
- type: input
attributes:
label: Database version
description: "`mongod --version`, `redis-server --version`, or `postgres --version`"
placeholder: e.g. v5.0.9
- type: textarea
attributes:
label: Exact steps to cause this issue
placeholder: |
1. First I did this...
2. Then, I clicked on this item...
A quick note: MP4 and MOV formatted video files are now allowed to be uploaded to GH.
Please upload if reproduction steps are hard to describe or reproduce reliably.
- type: textarea
attributes:
label: What you expected
placeholder: e.g. I expected *abc* to *xyz*
- type: textarea
attributes:
label: What happened instead
placeholder: e.g. Instead, I got *zyx* and NodeBB set fire to my house
- type: textarea
attributes:
label: Anything else?
description: Any additional context about the issue you're encountering
- type: markdown
attributes:
value: "**Thank you!**"

5
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@@ -0,0 +1,5 @@
blank_issues_enabled: true
contact_links:
- name: Community Forum
url: https://community.nodebb.org
about: Github Issues are for bug reports and feature requests only, please use community forum for other support

View File

@@ -0,0 +1,24 @@
name: Feature Request
description: Suggest a new feature
labels: ["enhancement"]
body:
- type: markdown
attributes:
value: |
Github Issues are for bug reports and feature requests only
Please visit https://community.nodebb.org for other support
Found a security exploit? Please email us at security@nodebb.org instead for immediate attention
### → DO NOT SUBMIT VULNERABILITIES TO THE PUBLIC BUG TRACKER ←
- type: textarea
attributes:
label: Description
validations:
required: true
- type: input
attributes:
label: Community forum reference
description: If this feature was already discussed on the Community Forum link it here
placeholder: https://community.nodebb.org/topic/0/example-feature-request
- type: markdown
attributes:
value: "**Thank you!**"

View File

@@ -1,6 +0,0 @@
version: 2
updates:
- package-ecosystem: npm
directory: "/install"
schedule:
interval: daily

View File

@@ -11,6 +11,9 @@ on:
workflow_dispatch:
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
permissions:
contents: read
jobs:
release:
runs-on: ubuntu-latest
@@ -21,20 +24,20 @@ jobs:
fetch-depth: 0
- name: Set up QEMU
uses: docker/setup-qemu-action@v1
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
uses: docker/setup-buildx-action@v2
- name: Login to Docker Hub
uses: docker/login-action@v1
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Docker meta
id: meta
uses: docker/metadata-action@v3
uses: docker/metadata-action@v4
with:
images: nodebb/docker
tags: |
@@ -43,7 +46,7 @@ jobs:
type=raw,value=latest
- name: Build and push Docker images
uses: docker/build-push-action@v2
uses: docker/build-push-action@v3
with:
context: .
file: ./Dockerfile

View File

@@ -14,8 +14,14 @@ defaults:
run:
shell: bash
permissions:
contents: read
jobs:
test:
permissions:
checks: write # for coverallsapp/github-action to create new checks
contents: read # for actions/checkout to fetch code
name: Lint and test
strategy:
fail-fast: false
@@ -57,7 +63,7 @@ jobs:
- 5432:5432
redis:
image: 'redis:2.8.9'
image: 'redis:2.8.23'
# Set health checks to wait until redis has started
options: >-
--health-cmd "redis-cli ping"
@@ -69,7 +75,7 @@ jobs:
- 6379:6379
mongo:
image: 'mongo:3.6'
image: 'mongo:3.7'
ports:
# Maps port 27017 on service container to the host
- 27017:27017
@@ -194,6 +200,8 @@ jobs:
parallel: true
finish:
permissions:
checks: write # for coverallsapp/github-action to create new checks
needs: test
runs-on: ubuntu-latest
steps:

View File

@@ -1,3 +1,488 @@
#### v2.5.3 (2022-09-19)
##### Chores
* remove duplicate version increment lines in changelog (5dbcfef9)
* bring back treding plugins (8aa1596d)
* incrementing version number - v2.5.2 (babcd17e)
* update changelog for v2.5.2 (84b6a7c7)
##### New Features
* store topic title and tags in diffs (#10900) (b5dd89e1)
##### Bug Fixes
* #10906, allow `middleware.checkAccountPermissions` to be called with either uid or userslug in params (cf4f5447)
* #10896, unescape / in taskbar (8e2129f8)
* add back timeago to post history modal (d3e38df8)
* **deps:** bump composer-default to v9.1.1 (1d80a07e)
##### Other Changes
* fix lint (3d5a6b39)
##### Performance Improvements
* disable trending plugins, too slow due to nbbpm (b392450c)
##### Tests
* add back /admin/extend/plugins test (1c9c39a8)
#### v2.5.2 (2022-09-04)
##### Chores
* incrementing version number - v2.5.1 (ce3aa950)
* update changelog for v2.5.1 (2b2fd4f3)
##### Bug Fixes
* registration regression, closes #10875 (f6f37dc1)
##### Other Changes
* fix lint error (b45e2413)
##### Tests
* disable nbbpm test temporarily (1dc79d76)
#### v2.5.1 (2022-09-02)
##### Chores
* incrementing version number - v2.5.0 (01d276cb)
* update changelog for v2.5.0 (1076285d)
##### Bug Fixes
* missing escape on ACP category backgroundImage property (67cb7035)
* **deps:** temporarily add back old textcomplete dependencies so emoji plugin can import them (61d1e9e0)
#### v2.5.0 (2022-09-01)
##### Breaking Changes
* reduce nodebb.min.js size by around 800kb (b7addffc)
##### Chores
* **i18n:**
* fallback strings for new resources: nodebb.admin-settings-reputation (e20433ec)
* fallback strings for new resources: nodebb.admin-settings-post (fcbbb4d6)
* fallback strings for new resources: nodebb.admin-advanced-cache (90fc50e1)
* move @textcomplete and its modules to composer-default (3cbb7a3d)
* remove client-side js file for tpl that no longer exists (bc2ea860)
* incrementing version number - v2.4.5 (dd3e1a28)
* update changelog for v2.4.5 (d505cc47)
* **deps:**
* update dependency eslint to v8.22.0 (#10835) (8fce68d3)
* update mongo docker tag to v3.7 (8afaed22)
* update docker/setup-qemu-action action to v2 (4aecf399)
* update redis docker tag to v2.8.23 (#10811) (269382e0)
* update redis docker tag to v2.8.23 (#10811) (59fd0efe)
##### Documentation Changes
* **openapi:** v3 spec for new user export routes (70652ad4)
##### New Features
* remove visibilityjs (#10870) (19207325)
* introduce ACP defined option to rescind notif or do nothing on flag resolve/reject (15b1561f)
* allow v3 api to handle 202 and 204 response codes as well. (0cda5aa3)
* don't show signatures again in pagination mode in same topic (0a6900fc)
* setting to show signatures only once in topics, closes #10071 (aba420a3)
* add event type to topic event component (bcb94ede)
* allow plugins to add to admin cache list (#10833) (a9bbb586)
##### Bug Fixes
* **deps:**
* update dependency compare-versions to v4.1.4 (884d4075)
* update dependency mongodb to v4.9.0 (e51004e2)
* update dependency lru-cache to v7.14.0 (d8a52f81)
* bump composer-default to v9 (81f8d84f)
* remove textcomplete in favour of @textcomplete/core (same package, just refactored) (b7bcc367)
* update dependency nodebb-theme-persona to v12.1.1 (#10838) (444b4d57)
* update dependency ace-builds to v1.9.5 (4c44d125)
* update dependency lru-cache to v7.13.2 (4ddc0c7a)
* update dependency nodemailer to v6.7.8 (dd385184)
* pin dependency @isaacs/ttlcache to 1.2.0 (150a7488)
* update dependency nodebb-plugin-composer-default to v8.0.1 (#10819) (9a7dd3a3)
* update dependency nodebb-plugin-composer-default to v8.0.1 (#10819) (69c87c2c)
* empty thread tools container on open (a088eb19)
* add dropup handler to thread tools menu, updated how post tools menu adds dropup handler (c1936e87)
* empty thread tools container on open (df36d967)
* add dropup handler to thread tools menu, updated how post tools menu adds dropup handler (3dd3cd82)
* removing duplicate session rerolling code (as it is in passport@^0.6 now) (65b3996a)
* don't crash if post is undefined (e06e526e)
* return at least one in sizeCalculation (#10832) (3975fa2e)
##### Refactors
* remove console.log (a2d0cd16)
* move export generation logic to v3 controller, GET/HEAD routes for exports (d0570518)
* use group.slug on acp group urls closes #8277 (14c79763)
##### Tests
* have some build tests not pollute build folder (7c5a915d)
* User.hidePrivateData (b424ba46)
* passport0.6 (#10638) (33458701)
#### v2.4.5 (2022-08-22)
##### Chores
* incrementing version number - v2.4.4 (d5525c87)
* update changelog for v2.4.4 (77e492b8)
##### Bug Fixes
* wrap passport.authenticate to pass in keepSessionInfo if not already set (9b96c33d)
* parseInt caller.uid closes #10849 (bc37a5c5)
#### v2.4.4 (2022-08-18)
##### Chores
* incrementing version number - v2.4.3 (9c647c6c)
* update changelog for v2.4.3 (06da15a5)
##### Bug Fixes
* missing req, closes #10847 (489fb3a3)
#### v2.4.3 (2022-08-18)
##### Chores
* incrementing version number - v2.4.2 (3aa7b855)
* update changelog for v2.4.2 (ba7a3466)
##### Bug Fixes
* #10845, disallow inline viewing of uploaded html files (4dc7fa05)
#### v2.4.2 (2022-08-17)
##### Chores
* incrementing version number - v2.4.1 (60cbd148)
* update changelog for v2.4.1 (4b6baabb)
##### Documentation Changes
* explain what export routes actually do in OpenAPI documentation (#10836) (72e7b9f7)
##### Bug Fixes
* #10841, incorrect conditional in email interstitial partial (ec048a01)
* don't crash if post is undefined (4a3e36a7)
##### Tests
* passport0.6 (#10638) (6b2a6f90)
#### v2.4.1 (2022-08-14)
##### Chores
* **deps:**
* update docker/build-push-action action to v3 (bfd6318c)
* update docker/login-action action to v2 (3d68accf)
* update docker/setup-buildx-action action to v2 (371ac032)
* incrementing version number - v2.4.0 (4834cde3)
* update changelog for v2.4.0 (c4714ff7)
##### Bug Fixes
* return at least one in sizeCalculation (#10832) (15ca460c)
#### v2.4.0 (2022-08-10)
##### Chores
* **deps:**
* update dependency eslint to v8.21.0 (13a17bd1)
* bump commander from 7.2.0 to 9.4.0 in /install (993b7747)
* update to new transifex project url (659cfe85)
* re-order interstitial tests so email and gdpr tests are in sub-blocks (342cca35)
* opt-out of dependabot, due to conflicts with renovate (70d60289)
* incrementing version number - v2.3.1 (d2425942)
* update changelog for v2.3.1 (2f487175)
* **i18n:**
* fallback strings for new resources: nodebb.admin-settings-email (cdaa8f21)
* fallback strings for new resources: nodebb.admin-settings-email (3e56c547)
* fallback strings for new resources: nodebb.user (bcf7ef67)
##### New Features
* support packageManager property in package.json (b3a37a7f)
* automatically enable the SMTP transport option if the SMTP service is changed (4055e3bd)
* present a password challenge on email update flow (7fcee42b)
* add client side filter:chat.send, closes #10729 (cb084cbd)
* fire hook to allow plugins to filter the pids returned in a user profile (17e44ff5)
* closes #10719, don't trim children if category is marked section (be917e8d)
* closes #10719, don't trim children if category is marked section (0bec52bc)
##### Bug Fixes
* adapt to breaking change in commander (38bf30c8)
* move panel-offset setting code back to theme header (d0255fc6)
* #10808; tweak copy for gmail app passwords support (7082291b)
* don't require password challenge if no password is set in user account (9d27e907)
* do not throw if password passed into `isPasswordCorrect` is invalid, just return false (287f4c2c)
* don't crash if req.body.username is not string (7e8ad785)
* don't crash if target/user is undefined (55c5588a)
* race condition causing undefined ajaxify.data (4586f68e)
* #10809, test runner to only run tests for plugins included in `test_plugins` (1ca09b63)
* #10805, hide unconfirmed emails from user data retrieval methods (cba9047f)
* use different emoji on NodeBB Ready — again because procrastination (3e062a7f)
* unnecessary escape (cd438b32)
* remove socket.io cluster adapter (#10742) (456b8798)
* #10783, do not purge files without a timestamp prefix (dc3a6a29)
* **deps:**
* bump persona v12.1.0 (1465598d)
* bump 2factor to v5.0.2 (bd18004d)
* update dependency sanitize-html to v2.7.1 (#10792) (f02492bd)
* update dependency html-to-text to v8.2.1 (f22790c0)
* update dependency webpack to v5.74.0 (e748e31f)
* update dependency autoprefixer to v10.4.8 (#10799) (4ca0d571)
##### Performance Improvements
* make single db call (d73f0f9c)
##### Tests
* additional tests for password challenge on email update (65c59cc1)
* add dummy emailer hook to suppress sendmail error logging (8e1a4bb5)
* fix one last failing test (68bcd7f4)
* fix user email tests (06f089af)
* fix tests so that when user.create is called, email is set prior to confirmation (f93a0b83)
#### v2.3.1 (2022-07-29)
##### Chores
* **deps:**
* bump sanitize-html from 2.7.0 to 2.7.1 in /install (7b606d2e)
* bump webpack from 5.73.0 to 5.74.0 in /install (a9900625)
* **i18n:** fallback strings for new resources: nodebb.admin-settings-advanced, nodebb.admin-menu, nodebb.error (17120e03)
* incrementing version number - v2.3.0 (046ea120)
* update changelog for v2.3.0 (a6f7fff0)
##### New Features
* add emoji to startup logs, because procrastination. (5176fb15)
##### Bug Fixes
* #10798, logic error in COEP header; helmet config (89173f17)
* #10795, early return for selection tooltip based on calling user privilege (847d2b91)
* **deps:** update persona to v12.0.14 (9f225e70)
#### v2.3.0 (2022-07-28)
##### Chores
* **deps:**
* update dependency lint-staged to v13 (07ce0c39)
* bump ace-builds from 1.7.1 to 1.8.1 in /install (f397d968)
* bump ioredis from 5.2.0 to 5.2.2 in /install (067a5110)
* have renovate work off of `develop` branch instead (f334e398)
* update changelog for v2.2.5 (6c3ebf3b)
##### New Features
* add client side filter:chat.send, closes #10729 (b2da02d6)
* UI changes for ACP > Manage > Categories (#10782) (820bc994)
* show an informative message when no plugins are found after filtering (6840a742)
* Allow defining active plugins in config (#10767) (23cb67a1)
* allow plugins to toggle whether IPs are shown in the users CSV export (a6af47da)
* fire hook to allow plugins to filter the pids returned in a user profile (c26be43a)
* closes #10719, don't trim children if category is marked section (7e80cc10)
##### Bug Fixes
* **deps:**
* update dependency mongodb to v4.8.1 (8384b7cf)
* update dependency helmet to v5.1.1 (03a173bb)
* bug where fallback to forum search was not working due to client-side error (25046642)
* better looking placeholder text for ACP search (1b9c6819)
* use `user.hidePrivateData();` more consistently across user retrieval endpoints (0529f2fb)
* minor margin tweak for alert in acp header (4faf0cdf)
* cannot turn off all networks (bbc7f2af)
* cannot setting networks for sharing posts (2e088a8e)
##### Refactors
* invert helmet configuration (dcacd815)
#### v2.2.5 (2022-07-21)
##### Chores
* **deps-dev:**
* bump eslint from 8.19.0 to 8.20.0 in /install (8d109fef)
* bump @commitlint/config-angular in /install (2a88a50f)
* **deps:**
* bump cron from 2.0.0 to 2.1.0 in /install (4c1bda32)
* bump jquery-ui from 1.13.1 to 1.13.2 in /install (abb19e98)
* bump nodebb-theme-persona in /install (9e52b8c6)
* bump ioredis from 5.1.0 to 5.2.0 in /install (8c20fdad)
* incrementing version number - v2.2.4 (d1d63e6b)
* update changelog for v2.2.4 (52f7ed64)
* incrementing version number - v2.2.3 (f80476b9)
* incrementing version number - v2.2.2 (343ffa66)
* incrementing version number - v2.2.1 (efc77b2a)
* incrementing version number - v2.2.0 (eecb836d)
##### Bug Fixes
* expire email validation tokens on password change (c93bd010)
* remove extraneous console.log (0d58e8a6)
* **deps:** update dependency mongodb to v4.8.0 (bff239da)
#### v2.2.4 (2022-07-12)
##### Chores
* **deps:**
* update docker/metadata-action action to v4 (42a45a71)
* bump ace-builds from 1.5.3 to 1.7.1 in /install (d568d2f5)
* bump winston from 3.8.0 to 3.8.1 in /install (26b73b39)
* bump ioredis from 5.0.6 to 5.1.0 in /install (0d55c42d)
* bump nodemailer from 6.7.5 to 6.7.7 in /install (bd37b286)
* **deps-dev:**
* bump @commitlint/cli from 17.0.2 to 17.0.3 in /install (9e44cdad)
* bump eslint from 8.18.0 to 8.19.0 in /install (7139ad5f)
* incrementing version number - v2.2.3 (f80476b9)
* update changelog for v2.2.3 (8719a93f)
* incrementing version number - v2.2.2 (343ffa66)
* incrementing version number - v2.2.1 (efc77b2a)
* incrementing version number - v2.2.0 (eecb836d)
##### Bug Fixes
* **deps:** update dependency diff to v5.1.0 (452e5bf7)
* #10733, extraneous apostrophes in plugin upgrader (3c41ae04)
* get version from install/package.json instead (60114219)
* #10739, always re-add theme to active plugins, on theme set (8d701ec3)
#### v2.2.3 (2022-07-05)
##### Chores
* incrementing version number - v2.2.2 (343ffa66)
* update changelog for v2.2.2 (f59ddc34)
* incrementing version number - v2.2.1 (efc77b2a)
* incrementing version number - v2.2.0 (eecb836d)
##### Bug Fixes
* move call to `ajaxify.parseData` out to root level (b778e38c)
* move `ajaxify.parseData` back out to DOMContentLoaded (2582cb53)
##### Refactors
* rewrite ajaxify.parseData in vanilla (165b804d)
#### v2.2.2 (2022-06-30)
##### Chores
* **deps-dev:**
* bump eslint from 8.17.0 to 8.18.0 in /install (bfd626b0)
* bump jsdom from 19.0.0 to 20.0.0 in /install (d037c2c9)
* incrementing version number - v2.2.1 (efc77b2a)
* update changelog for v2.2.1 (667780cf)
* incrementing version number - v2.2.0 (eecb836d)
##### Bug Fixes
* improper handling of single vs. multiple inputs for hidePrivateData (f38b2a73)
* observe user-specific and ACP-specific hiding rules for fullname (ecf0e8ce)
##### Refactors
* allow user.hidePrivateData() to handle an array of `userData` (3f5ae893)
#### v2.2.1 (2022-06-24)
##### Chores
* **i18n:**
* fallback strings for new resources: nodebb.admin-settings-uploads (da481163)
* fallback strings for new resources: nodebb.admin-settings-advanced (34d75e96)
* add in warning in language directories about not editing files directly (06074e8c)
* incrementing version number - v2.2.0 (eecb836d)
* update changelog for v2.2.0 (bb3766df)
##### Documentation Changes
* remove the redundant security policy template (7f5b285e)
##### New Features
* cross origin opener policy options (#10710) (88132358)
##### Bug Fixes
* **deps:**
* update dependency winston to v3.8.0 (#10725) (d4a5039e)
* update dependency sharp to v0.30.7 (#10724) (0a07c2c0)
* handle ENOENT on file deletion, closes #10645 (43f9e6c8)
##### Tests
* fix i18n tests (05c30677)
#### v2.2.0 (2022-06-15)
##### Chores
* **i18n:**
* fallback strings for new resources: nodebb.admin-settings-uploads (f5afb5c3)
* fallback strings for new resources: nodebb.admin-manage-users (b1dc0531)
* fallback strings for new resources: nodebb.topic (d7d32a8a)
* remove unnecessary `affected` set from deprecated plugin hook (bef236f3)
* bump persona, #10699 (c7fa73b1)
* bump vanilla (d90fc18b)
* bump persona, closes #10566 (5bc972df)
* update changelog for v2.1.1 (ca038b84)
* **deps:**
* bump less from 4.1.2 to 4.1.3 in /install (#10685) (78322636)
* bump nodebb-plugin-2factor from 5.0.0 to 5.0.1 in /install (#10686) (701d8d76)
* bump spdx-license-list from 6.5.0 to 6.6.0 in /install (c82d34c8)
##### New Features
* new cronjob and ACP option to delete orphans after configurable number of days, closes #10659 (88aee439)
* allowed plugins to modify email verification details prior to db saving or email send/plugin fire (b9d4724e)
* pass absolute url to post into post tools response, #10566 (ece733ed)
##### Bug Fixes
* no need to pass in empty Set in deprecated hooks (3a015eb8)
* #10696, fix alert for password reset email (2da188fe)
* #10692 (b6f8e2fd)
* #10690, all uploads in `uploads/files` showing orphaned (a04da673)
* bug where post associations are not shown when the directory is `files` (7f870beb)
##### Refactors
* move orphan cleaning logic to its own method, added tests for getOrphans and cleanOrphans (22368b99)
##### Tests
* add more asserts to failing test (ea1ed667)
#### v2.1.1 (2022-06-08)
##### Chores

View File

@@ -20,6 +20,7 @@ const prestart = require('./src/prestart');
prestart.loadConfig(configFile);
const db = require('./src/database');
const plugins = require('./src/plugins');
module.exports = function (grunt) {
const args = [];
@@ -40,35 +41,35 @@ module.exports = function (grunt) {
grunt.registerTask('init', async function () {
const done = this.async();
let plugins = [];
let pluginList = [];
if (!process.argv.includes('--core')) {
await db.init();
plugins = await db.getSortedSetRange('plugins:active', 0, -1);
addBaseThemes(plugins);
if (!plugins.includes('nodebb-plugin-composer-default')) {
plugins.push('nodebb-plugin-composer-default');
pluginList = await plugins.getActive();
addBaseThemes(pluginList);
if (!pluginList.includes('nodebb-plugin-composer-default')) {
pluginList.push('nodebb-plugin-composer-default');
}
if (!plugins.includes('nodebb-theme-persona')) {
plugins.push('nodebb-theme-persona');
if (!pluginList.includes('nodebb-theme-persona')) {
pluginList.push('nodebb-theme-persona');
}
}
const styleUpdated_Client = plugins.map(p => `node_modules/${p}/*.less`)
.concat(plugins.map(p => `node_modules/${p}/*.css`))
.concat(plugins.map(p => `node_modules/${p}/+(public|static|less)/**/*.less`))
.concat(plugins.map(p => `node_modules/${p}/+(public|static)/**/*.css`));
const styleUpdated_Client = pluginList.map(p => `node_modules/${p}/*.less`)
.concat(pluginList.map(p => `node_modules/${p}/*.css`))
.concat(pluginList.map(p => `node_modules/${p}/+(public|static|less)/**/*.less`))
.concat(pluginList.map(p => `node_modules/${p}/+(public|static)/**/*.css`));
const styleUpdated_Admin = plugins.map(p => `node_modules/${p}/*.less`)
.concat(plugins.map(p => `node_modules/${p}/*.css`))
.concat(plugins.map(p => `node_modules/${p}/+(public|static|less)/**/*.less`))
.concat(plugins.map(p => `node_modules/${p}/+(public|static)/**/*.css`));
const styleUpdated_Admin = pluginList.map(p => `node_modules/${p}/*.less`)
.concat(pluginList.map(p => `node_modules/${p}/*.css`))
.concat(pluginList.map(p => `node_modules/${p}/+(public|static|less)/**/*.less`))
.concat(pluginList.map(p => `node_modules/${p}/+(public|static)/**/*.css`));
const clientUpdated = plugins.map(p => `node_modules/${p}/+(public|static)/**/*.js`);
const serverUpdated = plugins.map(p => `node_modules/${p}/*.js`)
.concat(plugins.map(p => `node_modules/${p}/+(lib|src)/**/*.js`));
const clientUpdated = pluginList.map(p => `node_modules/${p}/+(public|static)/**/*.js`);
const serverUpdated = pluginList.map(p => `node_modules/${p}/*.js`)
.concat(pluginList.map(p => `node_modules/${p}/+(lib|src)/**/*.js`));
const templatesUpdated = plugins.map(p => `node_modules/${p}/+(public|static|templates)/**/*.tpl`);
const langUpdated = plugins.map(p => `node_modules/${p}/+(public|static|languages)/**/*.json`);
const templatesUpdated = pluginList.map(p => `node_modules/${p}/+(public|static|templates)/**/*.tpl`);
const langUpdated = pluginList.map(p => `node_modules/${p}/+(public|static|languages)/**/*.json`);
grunt.config(['watch'], {
styleUpdated_Client: {
@@ -195,10 +196,10 @@ module.exports = function (grunt) {
});
};
function addBaseThemes(plugins) {
let themeId = plugins.find(p => p.includes('nodebb-theme-'));
function addBaseThemes(pluginList) {
let themeId = pluginList.find(p => p.includes('nodebb-theme-'));
if (!themeId) {
return plugins;
return pluginList;
}
let baseTheme;
do {
@@ -209,9 +210,9 @@ function addBaseThemes(plugins) {
}
if (baseTheme) {
plugins.push(baseTheme);
pluginList.push(baseTheme);
themeId = baseTheme;
}
} while (baseTheme);
return plugins;
return pluginList;
}

View File

@@ -34,7 +34,7 @@ Our minimalist "Persona" theme gets you going right away, no coding experience r
* 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 know languages other than English you can help us translate NodeBB. We use [Transifex](https://www.transifex.com/projects/p/nodebb/) for internationalization.
* If you know languages other than English you can help us translate NodeBB. We use [Transifex](https://explore.transifex.com/nodebb/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.
## Requirements
@@ -76,7 +76,7 @@ Interested in a sublicense agreement for use of NodeBB in a non-free/restrictive
* [Demo](https://try.nodebb.org)
* [Developer Community](http://community.nodebb.org)
* [Documentation & Installation Instructions](http://docs.nodebb.org)
* [Help translate NodeBB](https://www.transifex.com/projects/p/nodebb/)
* [Help translate NodeBB](https://explore.transifex.com/nodebb/nodebb/)
* [NodeBB Blog](http://blog.nodebb.org)
* [Premium Hosting for NodeBB](http://www.nodebb.org/ "NodeBB")
* Unofficial IRC community &ndash; channel `#nodebb` on Libera.chat

2
app.js
View File

@@ -71,7 +71,7 @@ if (nconf.get('setup') || nconf.get('install')) {
});
} else if (nconf.get('activate')) {
require('./src/cli/manage').activate(nconf.get('activate'));
} else if (nconf.get('plugins')) {
} else if (nconf.get('plugins') && typeof nconf.get('plugins') !== 'object') {
require('./src/cli/manage').listPlugins();
} else if (nconf.get('build')) {
require('./src/cli/manage').build(nconf.get('build'));

View File

@@ -78,6 +78,7 @@
"reputation:disabled": 0,
"downvote:disabled": 0,
"disableSignatures": 0,
"signatures:hideDuplicates": 0,
"upvotesPerDay": 20,
"upvotesPerUserPerDay": 6,
"downvotesPerDay": 10,
@@ -93,6 +94,8 @@
"min:rep:signature": 0,
"flags:limitPerTarget": 0,
"flags:autoFlagOnDownvoteThreshold": 0,
"flags:actionOnResolve": "rescind",
"flags:actionOnReject": "rescind",
"notificationType_upvote": "notification",
"notificationType_new-topic": "notification",
"notificationType_new-reply": "notification",
@@ -154,6 +157,7 @@
"digestHour": 17,
"passwordExpiryDays": 0,
"cross-origin-embedder-policy": 0,
"cross-origin-opener-policy": "same-origin",
"cross-origin-resource-policy": "same-origin",
"hsts-maxage": 31536000,
"hsts-subdomains": 0,

View File

@@ -2,7 +2,7 @@
"name": "nodebb",
"license": "GPL-3.0",
"description": "NodeBB Forum",
"version": "2.2.0",
"version": "2.5.4",
"homepage": "http://www.nodebb.org",
"repository": {
"type": "git",
@@ -29,10 +29,11 @@
},
"dependencies": {
"@adactive/bootstrap-tagsinput": "0.8.2",
"ace-builds": "1.5.3",
"@isaacs/ttlcache": "1.2.0",
"ace-builds": "1.9.5",
"archiver": "5.3.1",
"async": "3.2.4",
"autoprefixer": "10.4.7",
"autoprefixer": "10.4.8",
"bcryptjs": "2.4.3",
"benchpressjs": "2.4.3",
"body-parser": "1.20.0",
@@ -43,8 +44,8 @@
"cli-graph": "3.2.2",
"clipboard": "2.0.11",
"colors": "1.4.0",
"commander": "7.2.0",
"compare-versions": "4.1.3",
"commander": "9.4.0",
"compare-versions": "4.1.4",
"compression": "1.7.4",
"connect-flash": "0.1.1",
"connect-mongo": "4.6.0",
@@ -52,58 +53,58 @@
"connect-pg-simple": "7.0.0",
"connect-redis": "6.1.3",
"cookie-parser": "1.4.6",
"cron": "2.0.0",
"cron": "2.1.0",
"cropperjs": "1.5.12",
"csurf": "1.11.0",
"daemon": "1.1.0",
"diff": "5.0.0",
"diff": "5.1.0",
"express": "4.18.1",
"express-session": "1.17.3",
"express-useragent": "1.0.15",
"file-loader": "6.2.0",
"fs-extra": "10.1.0",
"graceful-fs": "4.2.10",
"helmet": "5.1.0",
"html-to-text": "8.2.0",
"helmet": "5.1.1",
"html-to-text": "8.2.1",
"ipaddr.js": "2.0.1",
"jquery": "3.6.0",
"jquery-deserialize": "2.0.0",
"jquery-form": "4.3.0",
"jquery-serializeobject": "1.0.0",
"jquery-ui": "1.13.1",
"jquery-ui": "1.13.2",
"jsesc": "3.0.2",
"json2csv": "5.0.7",
"jsonwebtoken": "8.5.1",
"less": "4.1.3",
"lodash": "4.17.21",
"logrotate-stream": "0.2.8",
"lru-cache": "6.0.0",
"lru-cache": "7.14.0",
"material-design-lite": "1.3.0",
"mime": "3.0.0",
"mkdirp": "1.0.4",
"mongodb": "4.7.0",
"mongodb": "4.9.0",
"morgan": "1.10.0",
"mousetrap": "1.6.5",
"multiparty": "4.2.3",
"@nodebb/bootswatch": "3.4.2",
"nconf": "0.12.0",
"nodebb-plugin-2factor": "5.0.1",
"nodebb-plugin-composer-default": "8.0.0",
"nodebb-plugin-2factor": "5.0.2",
"nodebb-plugin-composer-default": "9.1.1",
"nodebb-plugin-dbsearch": "5.1.5",
"nodebb-plugin-emoji": "4.0.4",
"nodebb-plugin-emoji-android": "3.0.0",
"nodebb-plugin-markdown": "10.0.0",
"nodebb-plugin-markdown": "10.1.0",
"nodebb-plugin-mentions": "3.0.11",
"nodebb-plugin-spam-be-gone": "1.0.0",
"nodebb-rewards-essentials": "0.2.1",
"nodebb-theme-lavender": "6.0.0",
"nodebb-theme-persona": "12.0.11",
"nodebb-theme-persona": "12.1.1",
"nodebb-theme-slick": "2.0.2",
"nodebb-theme-vanilla": "12.1.18",
"nodebb-widget-essentials": "6.0.0",
"nodemailer": "6.7.5",
"nodemailer": "6.7.8",
"nprogress": "0.2.0",
"passport": "0.5.2",
"passport": "0.6.0",
"passport-http-bearer": "1.0.1",
"passport-local": "1.0.0",
"pg": "8.7.3",
@@ -111,19 +112,18 @@
"postcss": "8.4.14",
"postcss-clean": "1.2.0",
"prompt": "1.3.0",
"ioredis": "5.0.6",
"ioredis": "5.2.2",
"request": "2.88.2",
"request-promise-native": "1.0.9",
"rimraf": "3.0.2",
"rss": "1.2.2",
"sanitize-html": "2.7.0",
"sanitize-html": "2.7.1",
"semver": "7.3.7",
"serve-favicon": "2.5.0",
"sharp": "0.30.6",
"sharp": "0.30.7",
"sitemap": "7.1.1",
"slideout": "1.0.1",
"socket.io": "4.5.1",
"socket.io-adapter-cluster": "1.0.1",
"socket.io-client": "4.5.1",
"@socket.io/redis-adapter": "7.2.0",
"sortablejs": "1.15.0",
@@ -136,10 +136,9 @@
"toobusy-js": "0.5.1",
"uglify-es": "3.3.9",
"validator": "13.7.0",
"visibilityjs": "2.0.2",
"webpack": "5.73.0",
"webpack": "5.74.0",
"webpack-merge": "5.8.0",
"winston": "3.7.2",
"winston": "3.8.1",
"xml": "1.0.1",
"xregexp": "5.1.1",
"yargs": "17.5.1",
@@ -147,17 +146,17 @@
},
"devDependencies": {
"@apidevtools/swagger-parser": "10.0.3",
"@commitlint/cli": "17.0.2",
"@commitlint/config-angular": "17.0.0",
"@commitlint/cli": "17.0.3",
"@commitlint/config-angular": "17.0.3",
"coveralls": "3.1.1",
"eslint": "8.17.0",
"eslint": "8.22.0",
"eslint-config-nodebb": "0.1.1",
"eslint-plugin-import": "2.26.0",
"grunt": "1.5.3",
"grunt-contrib-watch": "1.1.0",
"husky": "8.0.1",
"jsdom": "19.0.0",
"lint-staged": "12.5.0",
"jsdom": "20.0.0",
"lint-staged": "13.0.3",
"mocha": "10.0.0",
"mocha-lcov-reporter": "1.3.0",
"mockdate": "3.0.5",

View File

@@ -3,7 +3,7 @@
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/),
Our localisation efforts are handled via [our Transifex Project](https://explore.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.

View File

@@ -0,0 +1,3 @@
# The files here are not meant to be edited directly
Please see the &rarr; [Internalization README](../README.md).

View File

@@ -1,5 +1,8 @@
{
"post-cache": "التخزين المؤقت للمشاركات",
"group-cache": "Group Cache",
"local-cache": "Local Cache",
"object-cache": "Object Cache",
"percent-full": "1% كاملة",
"post-cache-size": "حجم التخزين المؤقت للمشاركات",
"items-in-cache": "العناصر في التخزين المؤقت"

View File

@@ -76,7 +76,7 @@
"logout": "Log out",
"view-forum": "View Forum",
"search.placeholder": "Press &quot;/&quot; to search for settings",
"search.placeholder": "Search settings",
"search.no-results": "No results...",
"search.search-forum": "Search the forum for <strong></strong>",
"search.keep-typing": "Type more to see results...",

View File

@@ -17,6 +17,7 @@
"headers.acah": "Access-Control-Allow-Headers",
"headers.coep": "Cross-Origin-Embedder-Policy",
"headers.coep-help": "When enabled (default), will set the header to <code>require-corp</code>",
"headers.coop": "Cross-Origin-Opener-Policy",
"headers.corp": "Cross-Origin-Resource-Policy",
"hsts": "Strict Transport Security",
"hsts.enabled": "Enabled HSTS (recommended)",

View File

@@ -10,9 +10,10 @@
"smtp-transport-help": "You can select from a list of well-known services or enter a custom one.",
"smtp-transport.service": "Select a service",
"smtp-transport.service-custom": "Custom Service",
"smtp-transport.service-help": "Select a service name above in order to use the known information about it. Alternatively, select 'Custom Service' and enter the details below.",
"smtp-transport.gmail-warning1": "There have been reports of the Gmail service not working on accounts with heightened security. In those scenarios, you will have to <a href=\"https://www.google.com/settings/security/lesssecureapps\">configure your GMail account to allow less secure apps</a>.",
"smtp-transport.gmail-warning2": "For more information about this workaround, <a href=\"https://nodemailer.com/usage/using-gmail/\">please consult this NodeMailer article on the issue.</a> An alternative would be to utilise a third-party emailer plugin such as SendGrid, Mailgun, etc. <a href=\"../extend/plugins\">Browse available plugins here</a>.",
"smtp-transport.service-help": "Select a service name above in order to use the known information about it. Alternatively, select &quot;Custom Service&quot; and enter the details below.",
"smtp-transport.gmail-warning1": "If you are using GMail as your email provider, you will have to generate an &quot;App Password&quot; in order for NodeBB to authenticate successfully. You can generate one at the <a href=\"https://myaccount.google.com/apppasswords\">App Passwords <i class=\"fa fa-external-link\"></i></a> page.",
"smtp-transport.gmail-warning2": "For more information about this workaround, <a href=\"https://nodemailer.com/usage/using-gmail/\">please consult this NodeMailer article <i class=\"fa fa-external-link\"></i></a> on the issue. An alternative would be to utilise a third-party emailer plugin such as SendGrid, Mailgun, etc. <a href=\"../extend/plugins\">Browse available plugins here</a>.",
"smtp-transport.auto-enable-toast": "It looks like you&apos;re configuring an SMTP transport. We enabled the \"SMTP Transport\" option for you.",
"smtp-transport.host": "SMTP Host",
"smtp-transport.port": "SMTP Port",
"smtp-transport.security": "Connection security",

View File

@@ -51,6 +51,7 @@
"signature.disable": "Disable signatures",
"signature.no-links": "Disable links in signatures",
"signature.no-images": "Disable images in signatures",
"signature.hide-duplicates": "Hide duplicate signatures in topics",
"signature.max-length": "Maximum Signature Length",
"composer": "Composer Settings",
"composer-help": "The following settings govern the functionality and/or appearance of the post composer shown\n\t\t\t\tto users when they create new topics, or reply to existing topics.",

View File

@@ -23,5 +23,9 @@
"flags.limit-per-target-placeholder": "Default: 0",
"flags.limit-per-target-help": "When a post or user is flagged multiple times, each additional flag is considered a &quot;report&quot; and added to the original flag. Set this option to a number other than zero to limit the number of reports an item can receive.",
"flags.auto-flag-on-downvote-threshold": "Number of downvotes to auto flag posts (Set to 0 to disable, default: 0)",
"flags.auto-resolve-on-ban": "Automatically resolve all of a user's tickets when they are banned"
"flags.auto-resolve-on-ban": "Automatically resolve all of a user's tickets when they are banned",
"flags.action-on-resolve": "Do the following when a flag is resolved",
"flags.action-on-reject": "Do the following when a flag is rejected",
"flags.action.nothing": "Do nothing",
"flags.action.rescind": "Rescind the notification send to moderators/administrators"
}

View File

@@ -5,6 +5,7 @@
"strip-exif-data": "Strip EXIF Data",
"preserve-orphaned-uploads": "Keep uploaded files on disk after a post is purged",
"orphanExpiryDays": "Days to keep orphaned files",
"orphanExpiryDays-help": "After this many days, orphaned uploads will be deleted from the file system.<br />Set 0 or leave blank to disable.",
"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",

View File

@@ -205,6 +205,8 @@
"no-connection": "There seems to be a problem with your internet connection",
"socket-reconnect-failed": "Unable to reach the server at this time. Click here to try again, or try again later",
"plugin-not-whitelisted": "Unable to install plugin &ndash; only plugins whitelisted by the NodeBB Package Manager can be installed via the ACP",
"plugins-set-in-configuration": "You are not allowed to change plugin state as they are defined at runtime (config.json, environmental variables or terminal arguments), please modify the configuration instead.",
"theme-not-set-in-configuration": "When defining active plugins in configuration, changing themes requires adding the new theme to the list of active plugins before updating it in the ACP",
"topic-event-unrecognized": "Topic event '%1' unrecognized",
"cant-set-child-as-parent": "Can't set child as parent category",
"cant-set-self-as-parent": "Can't set self as parent category",

View File

@@ -194,5 +194,6 @@
"emailUpdate.intro": "Please enter your email address below. This forum uses your email address for scheduled digest and notifications, as well as for account recovery in the event of a lost password.",
"emailUpdate.optional": "<strong>This field is optional</strong>. You are not obligated to provide your email address, but without a validated email you will not be able to recover your account or login with your email.",
"emailUpdate.required": "<strong>This field is required</strong>.",
"emailUpdate.change-instructions": "A confirmation email will be sent to the entered email address with a unique link. Accessing that link will confirm your ownership of the email address and it will become active on your account. At any time, you are able to update your email on file from within your account page."
"emailUpdate.change-instructions": "A confirmation email will be sent to the entered email address with a unique link. Accessing that link will confirm your ownership of the email address and it will become active on your account. At any time, you are able to update your email on file from within your account page.",
"emailUpdate.password-challenge": "Please enter your password in order to verify account ownership."
}

View File

@@ -0,0 +1,3 @@
# The files here are not meant to be edited directly
Please see the &rarr; [Internalization README](../README.md).

View File

@@ -1,5 +1,8 @@
{
"post-cache": "Кеш за публикации",
"group-cache": "Кеш за групи",
"local-cache": "Локален кеш",
"object-cache": "Кеш за обекти",
"percent-full": "Запълненост: %1%",
"post-cache-size": "Размер на кеша за публикации",
"items-in-cache": "Елементи в кеша"

View File

@@ -76,7 +76,7 @@
"logout": "Изход",
"view-forum": "Преглед на форума",
"search.placeholder": "Натиснете „/“ за търсене на настройки",
"search.placeholder": "Търсене на настройки",
"search.no-results": "Няма резултати…",
"search.search-forum": "Търсене във форума за <strong></strong>",
"search.keep-typing": "Продължете да пишете, за да видите още резултати…",

View File

@@ -17,6 +17,7 @@
"headers.acah": "Access-Control-Allow-Headers",
"headers.coep": "Cross-Origin-Embedder-Policy",
"headers.coep-help": "Когато е включено (по подразбиране), стойността на заглавката ще бъде <code>require-corp</code>",
"headers.coop": "Cross-Origin-Opener-Policy",
"headers.corp": "Cross-Origin-Resource-Policy",
"hsts": "Стриктна транспортна сигурност",
"hsts.enabled": "Включване на HSTS (препоръчително)",

View File

@@ -11,8 +11,9 @@
"smtp-transport.service": "Изберете услуга",
"smtp-transport.service-custom": "Персонализирана услуга",
"smtp-transport.service-help": "Изберете името на услугата по-горе, за да използвате известните данни за нея. Или изберете „Персонализирана услуга“ и въведете данните ѝ по-долу.",
"smtp-transport.gmail-warning1": "Има доклади, че услугата на Gmail не работи за акаунти с подсилена защита. В тези случаи ще трябва да <a href=\"https://www.google.com/settings/security/lesssecureapps\">настроите своя акаунт в GMail така, че да позволява използването на по-малко защитени приложения</a>.",
"smtp-transport.gmail-warning2": "За повече информация относно това обиколно решение, <a href=\"https://nodemailer.com/usage/using-gmail/\">моля, прегледайте тази статия за проблема в „NodeMailer“.</a> Друго решение би било използването на добавка за е-поща от трета страна, като например „SendGrid“, „Mailgun“ и т.н. <a href=\"../extend/plugins\">Вижте наличните добавки тук</a>.",
"smtp-transport.gmail-warning1": "Ако използвате GMail, ще трябва да създадете „Парола за приложение“, за да може NodeBB да използва данните за удостоверяване. Можете да създадете такава в страницата с <a href=\"https://myaccount.google.com/apppasswords\">Пароли за приложения<i class=\"fa fa-external-link\"></i></a>.",
"smtp-transport.gmail-warning2": "За повече информация относно това обиколно решение, <a href=\"https://nodemailer.com/usage/using-gmail/\">моля, прегледайте тази статия за проблема в „NodeMailer“<i class=\"fa fa-external-link\"></i></a>. Друго решение би било използването на добавка за е-поща от трета страна, като например „SendGrid“, „Mailgun“ и т.н. <a href=\"../extend/plugins\">Вижте наличните добавки тук</a>.",
"smtp-transport.auto-enable-toast": "Изглежда настройвате функционалност, която изисква транспорт чрез SMTP. Включихме настройката „Транспорт чрез SMTP“, за да не го правите Вие.",
"smtp-transport.host": "SMTP сървър",
"smtp-transport.port": "SMTP порт",
"smtp-transport.security": "Сигурност на връзката",

View File

@@ -51,6 +51,7 @@
"signature.disable": "Забраняване на подписите",
"signature.no-links": "Забраняване на поставянето на връзки в подписите",
"signature.no-images": "Забраняване на поставянето на изображения в подписите",
"signature.hide-duplicates": "Скриване на дублираните подписи в темите",
"signature.max-length": "Максимална дължина на подписите",
"composer": "Настройки за съставянето",
"composer-help": "Следващите настройки определят функционалностите и/или вида на елемента за съставяне на\n\\t\\t\\t\\tпубликация, който се използва от потребителите, когато те създават нови теми или отговорят в съществуващи.",

View File

@@ -23,5 +23,9 @@
"flags.limit-per-target-placeholder": "По подразбиране: 0",
"flags.limit-per-target-help": "Когато публикация или потребител бъде докладван няколко пъти, това се добавя към един общ доклад. Задайте на тази настройка стойност по-голяма от нула, за да ограничите броя на докладванията, които могат да бъдат натрупани към една публикация или потребител.",
"flags.auto-flag-on-downvote-threshold": "Брой отрицателни гласове, при които публикациите да бъдат докладвани автоматично (0 = изключено, по подразбиране: 0)",
"flags.auto-resolve-on-ban": "Автоматично премахване на всички доклади за потребител, когато той бъде блокиран"
"flags.auto-resolve-on-ban": "Автоматично премахване на всички доклади за потребител, когато той бъде блокиран",
"flags.action-on-resolve": "Когато докладване бъде разрешено, да се направи следното",
"flags.action-on-reject": "Когато докладване бъде отхвърлено, да се направи следното",
"flags.action.nothing": "Да не се прави нищо",
"flags.action.rescind": "Да се отмени известието, изпратено до модераторите/администраторите"
}

View File

@@ -1,10 +1,11 @@
{
"posts": "Публикации",
"orphans": "Orphaned Files",
"orphans": "Неизползвани файлове",
"private": "Качените файлове да бъдат частни",
"strip-exif-data": "Премахване на данните EXIF",
"preserve-orphaned-uploads": "Запазване на качените файлове на диска дори след изтриването на публикацията",
"orphanExpiryDays": "Days to keep orphaned files",
"orphanExpiryDays": "Брой дни за съхранение на неизползваните файлове",
"orphanExpiryDays-help": "След толкова на брой дни неизползваните качени файлове ще бъдат изтривани.<br />Задайте 0 или оставете празно, за да изключите тази функционалност.",
"private-extensions": "Файлови разширения, които да бъдат частни",
"private-uploads-extensions-help": "Въведете списък от файлови разширения, разделени със запетаи, които искате да бъдат частни (например <code>pdf,xls,doc</code>). Ако оставите това поле празно, всички файлове ще бъдат частни.",
"resize-image-width-threshold": "Преоразмеряване на изображенията, ако са по-широки от определената ширина",

View File

@@ -23,7 +23,7 @@
"login-attempts": "Брой опити за вписване на час",
"login-attempts-help": "Ако опитите за вписване на потребител минат тази граница, акаунтът ще бъде заключен за определено време.",
"lockout-duration": "Продължителност на заключването на акаунта (в минути)",
"login-days": "Продължителност на запомнянето на сесията за вписване на потребителя (в дни)",
"login-days": "Брой дни за помнене на сесията за вписване на потребителя",
"password-expiry-days": "Изискване на промяна на паролата през определен период от дни",
"session-time": "Продължителност на сесията",
"session-time-days": "Дни",

View File

@@ -205,6 +205,8 @@
"no-connection": "Изглежда има проблем с връзката Ви с Интернет",
"socket-reconnect-failed": "В момента сървърът е недостъпен. Натиснете тук, за да опитате отново, или опитайте пак по-късно.",
"plugin-not-whitelisted": "Добавката не може да бъде инсталирана само добавки, одобрени от пакетния мениджър на NodeBB могат да бъдат инсталирани чрез ACP",
"plugins-set-in-configuration": "Не можете да променяте състоянието на добавката, тъй като то се определя по време на работата ѝ (чрез config.json, променливи на средата или аргументи при изпълнение). Вместо това може да промените конфигурацията.",
"theme-not-set-in-configuration": "Когато определяте активните добавки в конфигурацията, промяната на темите изисква да се добави новата тема към активните добавки, преди актуализирането ѝ в ACP",
"topic-event-unrecognized": "Събитието „%1“ на темата е неизвестно",
"cant-set-child-as-parent": "Дъщерна категория не може да се зададе като базова такава",
"cant-set-self-as-parent": "Категорията не може да се зададе като базова категория на себе си",

View File

@@ -194,5 +194,6 @@
"emailUpdate.intro": "Въведете е-пощата си по-долу. Този форум използва е-пощата за планирани резюмета и известия, както и за възстановяване на акаунта, в случай на забравена парола.",
"emailUpdate.optional": "<strong>Това поле не е задължително</strong>. Не сте длъжен/на да предоставяте адрес на е-поща, но без проверена е-поща, няма да можете да възстановите акаунта си в случай на проблем, нито ще можете да се вписвате с е-пощата си.",
"emailUpdate.required": "<strong>Това поле е задължително</strong>.",
"emailUpdate.change-instructions": "Ще Ви изпратим е-писмо за потвърждение на посочената е-поща, което ще съдържа уникална връзка. Щом последвате тази връзка, притежанието Ви на тази е-поща ще бъде потвърдено и тя ще бъде свързана с акаунта Ви. Ще можете да промените тази е-поща по всяко време, от страницата на акаунта си."
"emailUpdate.change-instructions": "Ще Ви изпратим е-писмо за потвърждение на посочената е-поща, което ще съдържа уникална връзка. Щом последвате тази връзка, притежанието Ви на тази е-поща ще бъде потвърдено и тя ще бъде свързана с акаунта Ви. Ще можете да промените тази е-поща по всяко време, от страницата на акаунта си.",
"emailUpdate.password-challenge": "Въведете паролата си, за да потвърдите, че акаунтът е Ваш."
}

View File

@@ -0,0 +1,3 @@
# The files here are not meant to be edited directly
Please see the &rarr; [Internalization README](../README.md).

View File

@@ -1,5 +1,8 @@
{
"post-cache": "Post Cache",
"group-cache": "Group Cache",
"local-cache": "Local Cache",
"object-cache": "Object Cache",
"percent-full": "%1% Full",
"post-cache-size": "Post Cache Size",
"items-in-cache": "Items in Cache"

View File

@@ -76,7 +76,7 @@
"logout": "Log out",
"view-forum": "View Forum",
"search.placeholder": "Press &quot;/&quot; to search for settings",
"search.placeholder": "Search settings",
"search.no-results": "No results...",
"search.search-forum": "Search the forum for <strong></strong>",
"search.keep-typing": "Type more to see results...",

View File

@@ -17,6 +17,7 @@
"headers.acah": "Access-Control-Allow-Headers",
"headers.coep": "Cross-Origin-Embedder-Policy",
"headers.coep-help": "When enabled (default), will set the header to <code>require-corp</code>",
"headers.coop": "Cross-Origin-Opener-Policy",
"headers.corp": "Cross-Origin-Resource-Policy",
"hsts": "Strict Transport Security",
"hsts.enabled": "Enabled HSTS (recommended)",

View File

@@ -10,9 +10,10 @@
"smtp-transport-help": "You can select from a list of well-known services or enter a custom one.",
"smtp-transport.service": "Select a service",
"smtp-transport.service-custom": "Custom Service",
"smtp-transport.service-help": "Select a service name above in order to use the known information about it. Alternatively, select 'Custom Service' and enter the details below.",
"smtp-transport.gmail-warning1": "There have been reports of the Gmail service not working on accounts with heightened security. In those scenarios, you will have to <a href=\"https://www.google.com/settings/security/lesssecureapps\">configure your GMail account to allow less secure apps</a>.",
"smtp-transport.gmail-warning2": "For more information about this workaround, <a href=\"https://nodemailer.com/usage/using-gmail/\">please consult this NodeMailer article on the issue.</a> An alternative would be to utilise a third-party emailer plugin such as SendGrid, Mailgun, etc. <a href=\"../extend/plugins\">Browse available plugins here</a>.",
"smtp-transport.service-help": "Select a service name above in order to use the known information about it. Alternatively, select &quot;Custom Service&quot; and enter the details below.",
"smtp-transport.gmail-warning1": "If you are using GMail as your email provider, you will have to generate an &quot;App Password&quot; in order for NodeBB to authenticate successfully. You can generate one at the <a href=\"https://myaccount.google.com/apppasswords\">App Passwords <i class=\"fa fa-external-link\"></i></a> page.",
"smtp-transport.gmail-warning2": "For more information about this workaround, <a href=\"https://nodemailer.com/usage/using-gmail/\">please consult this NodeMailer article <i class=\"fa fa-external-link\"></i></a> on the issue. An alternative would be to utilise a third-party emailer plugin such as SendGrid, Mailgun, etc. <a href=\"../extend/plugins\">Browse available plugins here</a>.",
"smtp-transport.auto-enable-toast": "It looks like you&apos;re configuring an SMTP transport. We enabled the \"SMTP Transport\" option for you.",
"smtp-transport.host": "SMTP Host",
"smtp-transport.port": "SMTP Port",
"smtp-transport.security": "Connection security",

View File

@@ -51,6 +51,7 @@
"signature.disable": "Disable signatures",
"signature.no-links": "Disable links in signatures",
"signature.no-images": "Disable images in signatures",
"signature.hide-duplicates": "Hide duplicate signatures in topics",
"signature.max-length": "Maximum Signature Length",
"composer": "Composer Settings",
"composer-help": "The following settings govern the functionality and/or appearance of the post composer shown\n\t\t\t\tto users when they create new topics, or reply to existing topics.",

View File

@@ -23,5 +23,9 @@
"flags.limit-per-target-placeholder": "Default: 0",
"flags.limit-per-target-help": "When a post or user is flagged multiple times, each additional flag is considered a &quot;report&quot; and added to the original flag. Set this option to a number other than zero to limit the number of reports an item can receive.",
"flags.auto-flag-on-downvote-threshold": "Number of downvotes to auto flag posts (Set to 0 to disable, default: 0)",
"flags.auto-resolve-on-ban": "Automatically resolve all of a user's tickets when they are banned"
"flags.auto-resolve-on-ban": "Automatically resolve all of a user's tickets when they are banned",
"flags.action-on-resolve": "Do the following when a flag is resolved",
"flags.action-on-reject": "Do the following when a flag is rejected",
"flags.action.nothing": "Do nothing",
"flags.action.rescind": "Rescind the notification send to moderators/administrators"
}

View File

@@ -5,6 +5,7 @@
"strip-exif-data": "Strip EXIF Data",
"preserve-orphaned-uploads": "Keep uploaded files on disk after a post is purged",
"orphanExpiryDays": "Days to keep orphaned files",
"orphanExpiryDays-help": "After this many days, orphaned uploads will be deleted from the file system.<br />Set 0 or leave blank to disable.",
"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",

View File

@@ -205,6 +205,8 @@
"no-connection": "There seems to be a problem with your internet connection",
"socket-reconnect-failed": "Unable to reach the server at this time. Click here to try again, or try again later",
"plugin-not-whitelisted": "Unable to install plugin &ndash; only plugins whitelisted by the NodeBB Package Manager can be installed via the ACP",
"plugins-set-in-configuration": "You are not allowed to change plugin state as they are defined at runtime (config.json, environmental variables or terminal arguments), please modify the configuration instead.",
"theme-not-set-in-configuration": "When defining active plugins in configuration, changing themes requires adding the new theme to the list of active plugins before updating it in the ACP",
"topic-event-unrecognized": "Topic event '%1' unrecognized",
"cant-set-child-as-parent": "Can't set child as parent category",
"cant-set-self-as-parent": "Can't set self as parent category",

View File

@@ -194,5 +194,6 @@
"emailUpdate.intro": "Please enter your email address below. This forum uses your email address for scheduled digest and notifications, as well as for account recovery in the event of a lost password.",
"emailUpdate.optional": "<strong>This field is optional</strong>. You are not obligated to provide your email address, but without a validated email you will not be able to recover your account or login with your email.",
"emailUpdate.required": "<strong>This field is required</strong>.",
"emailUpdate.change-instructions": "A confirmation email will be sent to the entered email address with a unique link. Accessing that link will confirm your ownership of the email address and it will become active on your account. At any time, you are able to update your email on file from within your account page."
"emailUpdate.change-instructions": "A confirmation email will be sent to the entered email address with a unique link. Accessing that link will confirm your ownership of the email address and it will become active on your account. At any time, you are able to update your email on file from within your account page.",
"emailUpdate.password-challenge": "Please enter your password in order to verify account ownership."
}

View File

@@ -0,0 +1,3 @@
# The files here are not meant to be edited directly
Please see the &rarr; [Internalization README](../README.md).

View File

@@ -1,5 +1,8 @@
{
"post-cache": "Mezipaměť příspěvku",
"group-cache": "Group Cache",
"local-cache": "Local Cache",
"object-cache": "Object Cache",
"percent-full": "%1% plný",
"post-cache-size": "Velikost mezipaměti příspěvku",
"items-in-cache": "Položek v mezipaměti"

View File

@@ -76,7 +76,7 @@
"logout": "Odhlásit",
"view-forum": "Zobrazit fórum",
"search.placeholder": "Press &quot;/&quot; to search for settings",
"search.placeholder": "Search settings",
"search.no-results": "Žádné výsledky…",
"search.search-forum": "Prohledat fórum pro <strong></strong>",
"search.keep-typing": "Pište dále pro zobrazení výsledků…",

View File

@@ -17,6 +17,7 @@
"headers.acah": "Access-Control-Allow-Headers",
"headers.coep": "Cross-Origin-Embedder-Policy",
"headers.coep-help": "When enabled (default), will set the header to <code>require-corp</code>",
"headers.coop": "Cross-Origin-Opener-Policy",
"headers.corp": "Cross-Origin-Resource-Policy",
"hsts": "Přísné zabezpečení přenosu",
"hsts.enabled": "Povolit HSTS (doporučeno)",

View File

@@ -10,9 +10,10 @@
"smtp-transport-help": "Ze seznamu můžete vybrat známé služby nebo zadat vlastní.",
"smtp-transport.service": "Vyberte službu",
"smtp-transport.service-custom": "Uživatelský služba",
"smtp-transport.service-help": "Pro použití známých informací, vyberte název služby. Nebo vyberte „uživatelskou službu” a zadejte detaily níže.",
"smtp-transport.gmail-warning1": "Někdy služba Gmail nefunguje správně s účty s nejvyšším zabezpečením. V těchto případech, musíte <a href=\"https://www.google.com/settings/security/lesssecureapps\">nakonfigurovat váš Gmail účet pro méně zabezpečené aplikace</a>.",
"smtp-transport.gmail-warning2": "Další informace o tomto řešení, <a href=\"https://nodemailer.com/usage/using-gmail/\">konzultujte s NodeMailer.</a>Alternativou je použití e-mailového rozšíření třetích stran jako je SendGrid, Mailgun atd.<a href=\"../extend/plugins\">Dostupné rozšíření zde</a>.",
"smtp-transport.service-help": "Select a service name above in order to use the known information about it. Alternatively, select &quot;Custom Service&quot; and enter the details below.",
"smtp-transport.gmail-warning1": "If you are using GMail as your email provider, you will have to generate an &quot;App Password&quot; in order for NodeBB to authenticate successfully. You can generate one at the <a href=\"https://myaccount.google.com/apppasswords\">App Passwords <i class=\"fa fa-external-link\"></i></a> page.",
"smtp-transport.gmail-warning2": "For more information about this workaround, <a href=\"https://nodemailer.com/usage/using-gmail/\">please consult this NodeMailer article <i class=\"fa fa-external-link\"></i></a> on the issue. An alternative would be to utilise a third-party emailer plugin such as SendGrid, Mailgun, etc. <a href=\"../extend/plugins\">Browse available plugins here</a>.",
"smtp-transport.auto-enable-toast": "It looks like you&apos;re configuring an SMTP transport. We enabled the \"SMTP Transport\" option for you.",
"smtp-transport.host": "Hostitel SMTP",
"smtp-transport.port": "Port SMTP",
"smtp-transport.security": "Zabezpečení připojení",

View File

@@ -51,6 +51,7 @@
"signature.disable": "Zakázat podpisy",
"signature.no-links": "Zakázat odkazy v podpisech",
"signature.no-images": "Zakázat obrázky v podpisech",
"signature.hide-duplicates": "Hide duplicate signatures in topics",
"signature.max-length": "Maximální délka podpisu",
"composer": "Nastavení kompozice",
"composer-help": "Následující nastavení kontroluje funkčnost a/nebo vzhled zobrazených příspěvků\n\t\t\t\tpro uživatele, kteří vytvoří nové téma nebo odpovídají na existující téma.",

View File

@@ -23,5 +23,9 @@
"flags.limit-per-target-placeholder": "Default: 0",
"flags.limit-per-target-help": "When a post or user is flagged multiple times, each additional flag is considered a &quot;report&quot; and added to the original flag. Set this option to a number other than zero to limit the number of reports an item can receive.",
"flags.auto-flag-on-downvote-threshold": "Number of downvotes to auto flag posts (Set to 0 to disable, default: 0)",
"flags.auto-resolve-on-ban": "Automatically resolve all of a user's tickets when they are banned"
"flags.auto-resolve-on-ban": "Automatically resolve all of a user's tickets when they are banned",
"flags.action-on-resolve": "Do the following when a flag is resolved",
"flags.action-on-reject": "Do the following when a flag is rejected",
"flags.action.nothing": "Do nothing",
"flags.action.rescind": "Rescind the notification send to moderators/administrators"
}

View File

@@ -5,6 +5,7 @@
"strip-exif-data": "Nepoužít data EXIF",
"preserve-orphaned-uploads": "Keep uploaded files on disk after a post is purged",
"orphanExpiryDays": "Days to keep orphaned files",
"orphanExpiryDays-help": "After this many days, orphaned uploads will be deleted from the file system.<br />Set 0 or leave blank to disable.",
"private-extensions": "Přípona souborů je soukromá",
"private-uploads-extensions-help": "Pro nastavení soukromí, zde zadejte seznam souborů oddělený čárkou (tj. <code>pdf, xls,doc</code>). prázdný seznam znamená, že všechny soubory jsou soukromé.",
"resize-image-width-threshold": "Změnit velikost obrázků, jsou-li širší než určená šířka",

View File

@@ -205,6 +205,8 @@
"no-connection": "Zdá se, že nastal problém s připojením k internetu",
"socket-reconnect-failed": "Unable to reach the server at this time. Click here to try again, or try again later",
"plugin-not-whitelisted": "Unable to install plugin &ndash; only plugins whitelisted by the NodeBB Package Manager can be installed via the ACP",
"plugins-set-in-configuration": "You are not allowed to change plugin state as they are defined at runtime (config.json, environmental variables or terminal arguments), please modify the configuration instead.",
"theme-not-set-in-configuration": "When defining active plugins in configuration, changing themes requires adding the new theme to the list of active plugins before updating it in the ACP",
"topic-event-unrecognized": "Topic event '%1' unrecognized",
"cant-set-child-as-parent": "Can't set child as parent category",
"cant-set-self-as-parent": "Can't set self as parent category",

View File

@@ -194,5 +194,6 @@
"emailUpdate.intro": "Please enter your email address below. This forum uses your email address for scheduled digest and notifications, as well as for account recovery in the event of a lost password.",
"emailUpdate.optional": "<strong>This field is optional</strong>. You are not obligated to provide your email address, but without a validated email you will not be able to recover your account or login with your email.",
"emailUpdate.required": "<strong>This field is required</strong>.",
"emailUpdate.change-instructions": "A confirmation email will be sent to the entered email address with a unique link. Accessing that link will confirm your ownership of the email address and it will become active on your account. At any time, you are able to update your email on file from within your account page."
"emailUpdate.change-instructions": "A confirmation email will be sent to the entered email address with a unique link. Accessing that link will confirm your ownership of the email address and it will become active on your account. At any time, you are able to update your email on file from within your account page.",
"emailUpdate.password-challenge": "Please enter your password in order to verify account ownership."
}

View File

@@ -0,0 +1,3 @@
# The files here are not meant to be edited directly
Please see the &rarr; [Internalization README](../README.md).

View File

@@ -1,5 +1,8 @@
{
"post-cache": "Indlægs Cache",
"group-cache": "Group Cache",
"local-cache": "Local Cache",
"object-cache": "Object Cache",
"percent-full": "%1% Fuld",
"post-cache-size": "Indlægs Cache Størrelse",
"items-in-cache": "Ting i Cache"

View File

@@ -76,7 +76,7 @@
"logout": "Log out",
"view-forum": "View Forum",
"search.placeholder": "Press &quot;/&quot; to search for settings",
"search.placeholder": "Search settings",
"search.no-results": "No results...",
"search.search-forum": "Search the forum for <strong></strong>",
"search.keep-typing": "Type more to see results...",

View File

@@ -17,6 +17,7 @@
"headers.acah": "Access-Control-Allow-Headers",
"headers.coep": "Cross-Origin-Embedder-Policy",
"headers.coep-help": "When enabled (default), will set the header to <code>require-corp</code>",
"headers.coop": "Cross-Origin-Opener-Policy",
"headers.corp": "Cross-Origin-Resource-Policy",
"hsts": "Strict Transport Security",
"hsts.enabled": "Enabled HSTS (recommended)",

View File

@@ -10,9 +10,10 @@
"smtp-transport-help": "You can select from a list of well-known services or enter a custom one.",
"smtp-transport.service": "Select a service",
"smtp-transport.service-custom": "Custom Service",
"smtp-transport.service-help": "Select a service name above in order to use the known information about it. Alternatively, select 'Custom Service' and enter the details below.",
"smtp-transport.gmail-warning1": "There have been reports of the Gmail service not working on accounts with heightened security. In those scenarios, you will have to <a href=\"https://www.google.com/settings/security/lesssecureapps\">configure your GMail account to allow less secure apps</a>.",
"smtp-transport.gmail-warning2": "For more information about this workaround, <a href=\"https://nodemailer.com/usage/using-gmail/\">please consult this NodeMailer article on the issue.</a> An alternative would be to utilise a third-party emailer plugin such as SendGrid, Mailgun, etc. <a href=\"../extend/plugins\">Browse available plugins here</a>.",
"smtp-transport.service-help": "Select a service name above in order to use the known information about it. Alternatively, select &quot;Custom Service&quot; and enter the details below.",
"smtp-transport.gmail-warning1": "If you are using GMail as your email provider, you will have to generate an &quot;App Password&quot; in order for NodeBB to authenticate successfully. You can generate one at the <a href=\"https://myaccount.google.com/apppasswords\">App Passwords <i class=\"fa fa-external-link\"></i></a> page.",
"smtp-transport.gmail-warning2": "For more information about this workaround, <a href=\"https://nodemailer.com/usage/using-gmail/\">please consult this NodeMailer article <i class=\"fa fa-external-link\"></i></a> on the issue. An alternative would be to utilise a third-party emailer plugin such as SendGrid, Mailgun, etc. <a href=\"../extend/plugins\">Browse available plugins here</a>.",
"smtp-transport.auto-enable-toast": "It looks like you&apos;re configuring an SMTP transport. We enabled the \"SMTP Transport\" option for you.",
"smtp-transport.host": "SMTP Host",
"smtp-transport.port": "SMTP Port",
"smtp-transport.security": "Connection security",

View File

@@ -51,6 +51,7 @@
"signature.disable": "Disable signatures",
"signature.no-links": "Disable links in signatures",
"signature.no-images": "Disable images in signatures",
"signature.hide-duplicates": "Hide duplicate signatures in topics",
"signature.max-length": "Maximum Signature Length",
"composer": "Composer Settings",
"composer-help": "The following settings govern the functionality and/or appearance of the post composer shown\n\t\t\t\tto users when they create new topics, or reply to existing topics.",

View File

@@ -23,5 +23,9 @@
"flags.limit-per-target-placeholder": "Default: 0",
"flags.limit-per-target-help": "When a post or user is flagged multiple times, each additional flag is considered a &quot;report&quot; and added to the original flag. Set this option to a number other than zero to limit the number of reports an item can receive.",
"flags.auto-flag-on-downvote-threshold": "Number of downvotes to auto flag posts (Set to 0 to disable, default: 0)",
"flags.auto-resolve-on-ban": "Automatically resolve all of a user's tickets when they are banned"
"flags.auto-resolve-on-ban": "Automatically resolve all of a user's tickets when they are banned",
"flags.action-on-resolve": "Do the following when a flag is resolved",
"flags.action-on-reject": "Do the following when a flag is rejected",
"flags.action.nothing": "Do nothing",
"flags.action.rescind": "Rescind the notification send to moderators/administrators"
}

View File

@@ -5,6 +5,7 @@
"strip-exif-data": "Strip EXIF Data",
"preserve-orphaned-uploads": "Keep uploaded files on disk after a post is purged",
"orphanExpiryDays": "Days to keep orphaned files",
"orphanExpiryDays-help": "After this many days, orphaned uploads will be deleted from the file system.<br />Set 0 or leave blank to disable.",
"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",

View File

@@ -205,6 +205,8 @@
"no-connection": "There seems to be a problem with your internet connection",
"socket-reconnect-failed": "Unable to reach the server at this time. Click here to try again, or try again later",
"plugin-not-whitelisted": "Unable to install plugin &ndash; only plugins whitelisted by the NodeBB Package Manager can be installed via the ACP",
"plugins-set-in-configuration": "You are not allowed to change plugin state as they are defined at runtime (config.json, environmental variables or terminal arguments), please modify the configuration instead.",
"theme-not-set-in-configuration": "When defining active plugins in configuration, changing themes requires adding the new theme to the list of active plugins before updating it in the ACP",
"topic-event-unrecognized": "Topic event '%1' unrecognized",
"cant-set-child-as-parent": "Can't set child as parent category",
"cant-set-self-as-parent": "Can't set self as parent category",

View File

@@ -194,5 +194,6 @@
"emailUpdate.intro": "Please enter your email address below. This forum uses your email address for scheduled digest and notifications, as well as for account recovery in the event of a lost password.",
"emailUpdate.optional": "<strong>This field is optional</strong>. You are not obligated to provide your email address, but without a validated email you will not be able to recover your account or login with your email.",
"emailUpdate.required": "<strong>This field is required</strong>.",
"emailUpdate.change-instructions": "A confirmation email will be sent to the entered email address with a unique link. Accessing that link will confirm your ownership of the email address and it will become active on your account. At any time, you are able to update your email on file from within your account page."
"emailUpdate.change-instructions": "A confirmation email will be sent to the entered email address with a unique link. Accessing that link will confirm your ownership of the email address and it will become active on your account. At any time, you are able to update your email on file from within your account page.",
"emailUpdate.password-challenge": "Please enter your password in order to verify account ownership."
}

View File

@@ -0,0 +1,3 @@
# The files here are not meant to be edited directly
Please see the &rarr; [Internalization README](../README.md).

View File

@@ -1,6 +1,9 @@
{
"post-cache": "Beitrags Cache",
"post-cache": "Post-Cache",
"group-cache": "Group Cache",
"local-cache": "Local Cache",
"object-cache": "Object Cache",
"percent-full": "%1% Voll",
"post-cache-size": "Beitrags Cache Größe",
"items-in-cache": "Objekte im Cache"
"post-cache-size": "Post-Cache-Größe",
"items-in-cache": "Elemente im Cache"
}

View File

@@ -2,12 +2,12 @@
"x-b": "%1 B",
"x-mb": "%1 MB",
"x-gb": "%1 GB",
"uptime-seconds": "Uptime in Sekunden",
"uptime-days": "Uptime in Tagen",
"uptime-seconds": "Betriebszeit in Sekunden",
"uptime-days": "Betriebszeit in Tagen",
"mongo": "Mongo",
"mongo.version": "MongoDB Version",
"mongo.storage-engine": "Storage Engine",
"mongo.storage-engine": "Speicher-Engine",
"mongo.collections": "Collections",
"mongo.objects": "Objekte",
"mongo.avg-object-size": "Durchschnittliche Objektgröße",
@@ -34,16 +34,16 @@
"redis.blocked-clients": "Blockierte Clients",
"redis.used-memory": "Speicherverbrauch",
"redis.memory-frag-ratio": "Speicherfragmentierungsgrad",
"redis.total-connections-recieved": "Gesamte empfangen Verbindungen",
"redis.total-commands-processed": "Insgesamt Kommandos ausgeführt",
"redis.iops": "Durchschnittliche Anzahl von Ein-/Ausgaben pro Sekunde",
"redis.total-connections-recieved": "Gesamtzahl der empfangenen Verbindungen",
"redis.total-commands-processed": "Gesamtzahl der verarbeiteten Befehle",
"redis.iops": "Sofortige Operationen. Pro Sekunde",
"redis.iinput": "Sofortige Eingabe pro Sekunde",
"redis.ioutput": "Sofortige Ausgabe pro Sekunde",
"redis.total-input": "Gesamt Eingabe",
"redis.total-output": "Gesamt Ausgabe",
"redis.keyspace-hits": "Schlüsselraum Treffer",
"redis.keyspace-misses": "Schlüsselraum Verfehlungen",
"redis.keyspace-hits": "Schlüsselraum-Treffer",
"redis.keyspace-misses": "Schlüsselraum-Verfehlungen",
"redis.raw-info": "Redis Rohinfo",
"postgres": "Postgres",

View File

@@ -1,10 +1,10 @@
{
"figure-x": "Abbildung %1",
"error-events-per-day": "<code>%1</code> Ereignisse pro Tag",
"error.404": "404 Not Found",
"error.503": "503 Service Unavailable",
"error.404": "404 Nicht gefunden",
"error.503": "503 Dienst nicht verfügbar",
"manage-error-log": "Fehlerprotokoll verwalten",
"export-error-log": "Exportiere das Fehlerprotokoll (CSV)",
"export-error-log": "Fehlerprotokoll (CSV) exportieren",
"clear-error-log": "Fehlerprotokoll leeren",
"route": "Pfad",
"count": "Anzahl",

View File

@@ -1,13 +1,13 @@
{
"events": "Ereignisse",
"no-events": "Es gibt keine Ereignisse",
"control-panel": "Ereignis-Steuerung",
"control-panel": "Ereignissteuerung",
"delete-events": "Ereignisse löschen",
"confirm-delete-all-events": "Bist du sicher, dass du alle gespeicherten Events löschen möchtest?",
"filters": "Filter",
"filters-apply": "Filter anwenden",
"filter-type": "Ereignistyp",
"filter-start": "Start-Datum",
"filter-end": "End-Datum",
"filter-start": "Anfangsdatum",
"filter-end": "Enddatum",
"filter-perPage": "Pro Seite"
}

View File

@@ -1,6 +1,6 @@
{
"logs": "Protokolle",
"control-panel": "Protokoll Steuerung",
"control-panel": "Logs-Systemsteuerung",
"reload": "Protokolle neu laden",
"clear": "Protokolle löschen",
"clear-success": "Protokolle gelöscht"

View File

@@ -1,7 +1,7 @@
{
"custom-css": "Benutzerdefiniertes CSS/LESS",
"custom-css.description": "Füge deine eigenen CSS/LESS deklarationen hier ein, die nach allen anderen Styles angewandt werden.",
"custom-css.enable": "Aktiviere benutzerdefiniertes CSS/LESS",
"custom-css.enable": "Benutzerdefiniertes CSS/LESS aktivieren",
"custom-js": "Benutzerdefiniertes Javascript",
"custom-js.description": "Füge dein eigenes Javascipt hier ein.\nEs wird ausgeführt nachdem die Seite komplett geladen wurde.",

View File

@@ -1,6 +1,6 @@
{
"loading": "Lade Skins...",
"homepage": "Homepage",
"loading": "Skins werden geladen...",
"homepage": "Startseite",
"select-skin": "Skin auswählen",
"current-skin": "Aktueller Skin",
"skin-updated": "Skin aktualisiert",

View File

@@ -1,11 +1,11 @@
{
"checking-for-installed": "Prüfe auf installierte Themes...",
"homepage": "Homepage",
"select-theme": "Wähle Theme",
"checking-for-installed": "Auf installierte Themes wird geprüft...",
"homepage": "Startseite",
"select-theme": "Theme wählen",
"current-theme": "Aktuelles Theme",
"no-themes": "Keine installierten Theme gefunden.",
"revert-confirm": "Bist du dir sicher, dass du das standard NodeBB Theme wieder herstellen willst?",
"revert-confirm": "Bist du sicher, dass du das standardmäßige NodeBB-Design wiederherstellen möchten?",
"theme-changed": "Theme geändert",
"revert-success": "Du hast dein NodeBB erfolgreich wieder auf das Standard-Theme zurückgesetzt.",
"restart-to-activate": "Bitte baue und starte NodeBB neu um das Theme zu aktivieren."
"restart-to-activate": "Bitte builde und starte dein NodeBB neu um das Theme zu aktivieren."
}

View File

@@ -12,7 +12,7 @@
"page-views-custom": "Benutzerdefinierte Tagesspanne",
"page-views-custom-start": "Spannen-Anfang",
"page-views-custom-end": "Spannen-Ende",
"page-views-custom-help": "Gib eine Zeitspanne an, in dem du die Besichtigungszahlen ansehen willst. Sollte keine Kalenderauswahl verfügbar sein ist das akzeptierte format <code>YYYY-MM-DD</code>",
"page-views-custom-help": "Gebe einen Datumsbereich für Seitenaufrufe ein, die du anzeigen möchtest. Wenn keine Datumsauswahl verfügbar ist, ist das akzeptierte Format <code>YYYY-MM-DD</code>",
"page-views-custom-error": "Bitte gib eine gültige Zeitspanne im Format <code>YYYY-MM-DD</code> an",
"stats.yesterday": "Gestern",

View File

@@ -39,9 +39,9 @@
"alert.upgraded": "Plugin aktualisiert",
"alert.installed": "Plugin installiert",
"alert.uninstalled": "Plugin deinstalliert",
"alert.activate-success": "Bitte bauen Sie Ihr NodeBB neu auf und starten Sie es neu, um dieses Plugin vollständig zu aktivieren",
"alert.activate-success": "Bitte builde dein NodeBB neu auf und starte es neu, um dieses Plugin vollständig zu aktivieren",
"alert.deactivate-success": "Plugin erfolgreich deaktiviert",
"alert.upgrade-success": "Bitte Starte dein NodeBB neu um dieses Plugin völlständig zu upgraden.",
"alert.upgrade-success": "Bitte starte dein NodeBB neu um dieses Plugin völlständig zu upgraden.",
"alert.install-success": "Plugin erfolgreich installiert. Bitte aktiviere das Plugin",
"alert.uninstall-success": "Das Plugin wurde erfolgreich deaktiviert und deinstalliert.",
"alert.suggest-error": "<p>NodeBB konnte den Paket-Manager nicht erreichen. Willst Du mit der Installation der neuesten Version fortfahren</p><div class=\"alert alert-danger\"><strong>Der Server meldete (%1)</strong>: %2</div>",
@@ -49,7 +49,7 @@
"alert.incompatible": "<p>NodeBB Version (v%1) ist nur für Aktualisierungen bis v%2 dieses Plugins bestimmt. Bitte aktualisiere NodeBB, wenn eine neuere Version dieses Plugins installiert werden soll.</p>",
"alert.possibly-incompatible": "<div class=\"alert alert-warning\"><p><strong>Keine Kompatibilitätsinformationen gefunden</strong></p><p>Dieses Plugin legte keine spezifische NodeBB version fest, welche für die Installation benötigt wird. Volle Kompatibilität kann nicht gewährleistet werden, was dazu führen könnte, dass ihr NodeBB nicht mehr korrekt startet.</p></div><p>Für den Fall, dass NodeBB nicht mehr ordnungsgemäß startet:</p><pre><code>$ ./nodebb reset plugin=\"%1\"</code></pre><p>Soll mit der installation der neuesten Version dieses Plugins fortgefahren werden?</p>",
"alert.reorder": "Plugins Neusortiert",
"alert.reorder-success": "Bitte Starte dein NodeBB neu um diesen Prozess vollständig abzuschließen.",
"alert.reorder-success": "Bitte starte dein NodeBB neu um diesen Prozess vollständig abzuschließen.",
"license.title": "Plugin-Lizenzinformation",
"license.intro": "Das Plugin <strong>%1</strong>is unter der %2 lizenziert. Bitte ließ dir diese durch bevor du dieses Plugin aktivierst.",

View File

@@ -1,15 +1,15 @@
{
"rewards": "Belohnungen",
"condition-if-users": "Wenn des Benutzers",
"condition-if-users": "Wenn Benutzer",
"condition-is": "Ist:",
"condition-then": "Dann:",
"max-claims": "Anzahl der male, die diese Belohnung beansprucht werden kann",
"zero-infinite": "Gib 0 für unendlich ein",
"delete": "Entfernen",
"max-claims": "Anzahl der Male von Belohnungen, die beansprucht werden können",
"zero-infinite": "0 für unendlich eingeben",
"delete": "Löschen",
"enable": "Aktivieren",
"disable": "Deaktivieren",
"alert.delete-success": "Die Belohnung wurde erfolgreich gelöscht",
"alert.delete-success": "Belohnung wurde erfolgreich gelöscht",
"alert.no-inputs-found": "Ungültige Belohnung - keine Eingaben gefunden!",
"alert.save-success": "Belohnungen erfolgreich gespeichert"
}

View File

@@ -1,30 +1,30 @@
{
"available": "Verfügbare Widgets",
"explanation": "Widget vom Dropdown-Menu auswählen und anschließend links in den Widget-Bereich einer Vorlage ziehen.",
"none-installed": "Keine Widgets gefunden! Aktivieren Sie das Widget Essentials Plugin im <a href=\"%1\">Plugin-Kontrollzentrum</a>.",
"explanation": "Wähle ein Widget aus dem Dropdown-Menü aus und ziehe es per Drag-and-Drop in den Widget-Bereich einer Vorlage auf der linken Seite.",
"none-installed": "Keine Widgets gefunden! Aktiviere das Widget Essentials-Plugin in der <a href=\"%1\">Plugin</a>-Systemsteuerung.",
"clone-from": "Klone Widget von",
"containers.available": "Verfügbare Container",
"containers.explanation": "Auf ein beliebiges aktives Widget ziehen",
"containers.explanation": "Per Drag-and-Drop auf ein beliebiges aktives Widget ziehen",
"containers.none": "Nichts",
"container.well": "Well",
"container.jumbotron": "Jumbotron",
"container.panel": "Panel",
"container.panel-header": "Panel Header",
"container.panel-body": "Panel Körper",
"container.panel-header": "Panel-Kopfzeile",
"container.panel-body": "Panel-Körper",
"container.alert": "Alarm",
"alert.confirm-delete": "Sind Sie sicher, dass Sie dieses Widget löschen wollen?",
"alert.confirm-delete": "Möchtest Du dieses Widget wirklich löschen?",
"alert.updated": "Widgets aktualisiert",
"alert.update-success": "Widgets erfolgreich aktualisiert",
"alert.clone-success": "Die Widgets wurden erfolgreich geklont",
"alert.clone-success": "Widgets erfolgreich geklont",
"error.select-clone": "Bitte wähle eine Seite aus von der geklont werden soll",
"error.select-clone": "Bitte wähle eine Seite aus, von der geklont werden soll",
"title": "Titel",
"title.placeholder": "Titel (nur in bestimmten Bereichen zusehen)",
"title.placeholder": "Titel (wird nur auf einigen Containern angezeigt)",
"container": "Container",
"container.placeholder": "Ziehen Sie einen Container per Drag & Drop oder geben Sie hier HTML ein.",
"show-to-groups": "Für Gruppen anzeigen",
"hide-from-groups": "r Gruppen verbergen",
"hide-on-mobile": "Auf Mobile verbergen"
"container.placeholder": "Ziehe einen Container per Drag-and-Drop oder gebe hier HTML ein.",
"show-to-groups": "Gruppen anzeigen",
"hide-from-groups": "Vor Gruppen verstecken",
"hide-on-mobile": "Auf dem Handy verstecken"
}

View File

@@ -1,10 +1,10 @@
{
"administrators": "Administratoren",
"global-moderators": "Globale Moderatoren",
"moderators": "Moderators",
"moderators": "Moderatoren",
"no-global-moderators": "Keine globalen Moderatoren",
"no-sub-categories": "No subcategories",
"subcategories": "%1 subcategories",
"no-sub-categories": "Keine Unterkategorien",
"subcategories": "%1 Unterkategorien",
"no-moderators": "Keine Moderatoren",
"add-administrator": "Administrator hinzufügen",
"add-global-moderator": "Globalen Moderator hinzufügen",

View File

@@ -20,7 +20,7 @@
"parent-category": "Übergeordnete Kategorie",
"optional-parent-category": "(Optional) Übergeordnete Kategorie",
"top-level": "Top Level",
"parent-category-none": "(Keine)",
"parent-category-none": "(Nichts)",
"copy-parent": "Übergeordnetes kopieren",
"copy-settings": "Kopiere Einstellungen von",
"optional-clone-settings": "(Optional) dubliziere Einstellungen von Kategorie",

View File

@@ -10,7 +10,7 @@
"upload-files": "Dateien hochladen",
"signature": "Signatur",
"ban": "Bannen",
"mute": "Mute",
"mute": "Stummschalten",
"invite": "Einladen",
"search-content": "Inhalt durchsuchen",
"search-users": "Benutzersuche",

View File

@@ -1,20 +1,20 @@
{
"queue": "Warteschlange",
"description": "Es sind keine Benutzer in der Registrierungs-Warteschlange.<br> Um diese Funktion zu aktivieren, gehe zu <a href=\"%1\">Einstellungen &rarr; Benutzer &rarr; Benutzer erstellen</a> und ändern sie <strong>Registrierungsart</strong> auf \"Admin Genehmigung\".",
"description": "Es befinden sich keine Benutzer in der Registrierungswarteschlange. <br>Um diese Funktion zu aktivieren, gehe zu <a href=\"%1\">Einstellungen &rarr; Benutzer &rarr; Benutzerregistrierung</a> und stelle den <strong>Registrierungstyp</strong> auf \"Admin-Genehmigung\" ein.",
"list.name": "Name",
"list.email": "E-Mail",
"list.ip": "IP-Adresse",
"list.ip": "IP",
"list.time": "Zeit",
"list.username-spam": "Häufigkeit: %1 Erscheint: %2 Sicherheit: %3",
"list.username-spam": "Häufigkeit: %1 Erscheint: %2 Vertrauen: %3",
"list.email-spam": "Häufigkeit: %1 Erscheint: %2",
"list.ip-spam": "Häufigkeit: %1 Erscheint: %2",
"invitations": "Einladungen",
"invitations.description": "Unterhalb ist eine komplette Liste der versandten Einladungen. Benutze Strg+F um die Liste per Email oder Nutzername zu durchsuchen.<br><br> Der Nutzername wird für die Nutzer die ihre Einladung angenommen haben rechts von den E-Mails angezeigt.",
"invitations.description": "Nachfolgend findest du eine vollständige Liste der gesendeten Einladungen. Verwende Strg-F, um die Liste nach E-Mail oder Benutzername zu durchsuchen. Der Benutzername wird rechts neben den E-Mails für Benutzer angezeigt, die ihre Einladungen eingelöst haben.",
"invitations.inviter-username": "Nutzername des Einladenden",
"invitations.invitee-email": "Email des eingeladenen",
"invitations.invitee-username": "Nutzername des eingeladenen (Wenn registriert)",
"invitations.invitee-email": "E-Mail des Eingeladenen",
"invitations.invitee-username": "Benutzername des Eingeladenen (falls registriert)",
"invitations.confirm-delete": "Sind Sie sicher, dass Sie diese Einladung löschen wollen?"
"invitations.confirm-delete": "Möchtest du diese Einladung wirklich löschen?"
}

View File

@@ -18,8 +18,8 @@
"download-csv": "CSV herunterladen",
"manage-groups": "Gruppen verwalten",
"add-group": "Gruppe hinzufügen",
"create": "Create User",
"invite": "Invite by Email",
"create": "Benutzer erstellen",
"invite": "Einladung per E-Mail",
"new": "Neuer Benutzer",
"filter-by": "Filtern nach",
"pills.unvalidated": "Nicht bestätigt",
@@ -63,7 +63,7 @@
"create.password": "Passwort",
"create.password-confirm": "Passwort bestätigen",
"temp-ban.length": "Length",
"temp-ban.length": "Länge",
"temp-ban.reason": "Grund <span class=\"text-muted\">(optional)</span>",
"temp-ban.hours": "Stunden",
"temp-ban.days": "Tage",
@@ -91,22 +91,22 @@
"alerts.validate-email-success": "E-Mails bestätigt",
"alerts.validate-force-password-reset-success": "Die Passwörter der Benutzer wurden zurückgesetzt und ihre bestehenden Sitzungen wurden widerrufen.",
"alerts.password-reset-confirm": "Möchtest Du wirklich (eine) Passwort-Reset-Email(s) an diese(n) Benutzer schicken?",
"alerts.password-reset-email-sent": "Password reset email sent.",
"alerts.confirm-delete": "<strong>Warning!</strong><p>Do you really want to delete <strong>user(s)</strong>?</p><p>This action is not reversible! Only the user account will be deleted, their posts and topics will remain.</p>",
"alerts.password-reset-email-sent": "E-Mail zum Zurücksetzen des Passworts gesendet.",
"alerts.confirm-delete": "<strong>Warnung!</strong><p>Möchtest Du wirklich <strong>Benutzer</strong> löschen?</p><p>Diese Aktion ist nicht umkehrbar! Lediglich das Nutzerkonto wird gelöscht, deren Beiträge und Themen bleiben bestehen</p>",
"alerts.delete-success": "Benutzer gelöscht!",
"alerts.confirm-delete-content": "<strong>Warning!</strong><p>Do you really want to delete these user(s) <strong>content</strong>?</p><p>This action is not reversible! The users' accounts will remain, but their posts and topics will be deleted.</p>",
"alerts.confirm-delete-content": "<strong>Warnung!</strong><p>Möchtest Du diese <strong>Benutzerinhalte</strong> wirklich löschen?</p><p>Diese Aktion kann nicht umgekehrt werden! Die Konten der Benutzer bleiben bestehen, aber ihre Beiträge und Themen werden gelöscht.</p>",
"alerts.delete-content-success": "Beiträge des/der Nutzer(s) gelöscht!",
"alerts.confirm-purge": "<strong>Warnung!</strong><p>Bist du sicher, dass Du den/die <strong>Nutzer und deren Beiträge</strong> löschen möchtest?</p><p>Diese Aktion kann nicht rückgängig gemacht werden! Alle Nutzerdaten und Beiträge werden dabei gelöscht!</p>",
"alerts.create": "Nutzer Erstellen",
"alerts.create": "Benutzer erstellen",
"alerts.button-create": "Erstellen",
"alerts.button-cancel": "Abbrechen",
"alerts.error-passwords-different": "Die Passwörter müssen übereinstimmen",
"alerts.error-x": "<strong>Fehler</strong><p>%1</p>",
"alerts.create-success": "Nutzer erstellt",
"alerts.create-success": "Benutzer erstellt!",
"alerts.prompt-email": "E-Mails:",
"alerts.email-sent-to": "Eine Einladungsemail wurde an %1 gesendet",
"alerts.x-users-found": "%1 Benutzer gefunden, (%2 Sekunden)",
"export-users-started": "Der Export von Benutzern als CSV kann eine Weile dauern. Sie erhalten eine Benachrichtigung, wenn es abgeschlossen ist.",
"export-users-completed": "Benutzer wurden als CSV exportiert, klicken Sie hier, um sie herunterzuladen."
"export-users-completed": "Benutzer wurden als CSV exportiert, klicke hier, um sie herunterzuladen."
}

View File

@@ -36,7 +36,7 @@
"settings/pagination": "Seitennummerierung",
"settings/tags": "Tags",
"settings/notifications": "Benachrichtigungen",
"settings/api": "API Access",
"settings/api": "API-Zugriff",
"settings/sounds": "Sounds",
"settings/social": "Social",
"settings/cookies": "Cookies",
@@ -76,7 +76,7 @@
"logout": "Abmelden",
"view-forum": "Forum anzeigen",
"search.placeholder": "Drücke &quot;/&quot; um nach Einstellungen zu suchen",
"search.placeholder": "Search settings",
"search.no-results": "Keine Ergebnisse...",
"search.search-forum": "Suche im Forum nach <strong></strong>",
"search.keep-typing": "Gib mehr ein, um die Ergebnisse zu sehen...",

View File

@@ -1,6 +1,6 @@
{
"maintenance-mode": "Wartungsmodus",
"maintenance-mode.help": "Während das Forum im Wartungsmodus ist werden alle Anfragen zu einer statischen Seite weitergeleitet. Administratoren sind von dieser Weiterleitung ausgenommen und können die Seite normal aufrufen.",
"maintenance-mode.help": "Wenn sich das Forum im Wartungsmodus befindet, werden alle Anfragen auf eine statische Warteseite umgeleitet. Administratoren sind von dieser Umleitung ausgenommen und können normal auf die Site zugreifen.",
"maintenance-mode.status": "Statuscode für Wartungsmodus",
"maintenance-mode.message": "Wartungsnachricht",
"headers": "Headers",
@@ -15,8 +15,9 @@
"headers.acac": "Access-Control-Allow-Credentials",
"headers.acam": "Access-Control-Allow-Methods",
"headers.acah": "Access-Control-Allow-Headers",
"headers.coep": "Cross-Origin-Embedder-Policy",
"headers.coep-help": "When enabled (default), will set the header to <code>require-corp</code>",
"headers.coep": "Cross-Origin-Embedder-Richtlinie",
"headers.coep-help": "Wenn aktiviert (Standard), wird der Header auf <code>require-corp</code> gesetzt",
"headers.coop": "Cross-Origin-Opener-Policy",
"headers.corp": "Cross-Origin-Resource-Policy",
"hsts": "Strict Transport Security",
"hsts.enabled": "HSTS Aktivieren (empfohlen)",

View File

@@ -1,16 +1,16 @@
{
"tokens": "Tokens",
"settings": "Einstellungen",
"lead-text": "Von dieser Seite aus können Sie den Zugriff auf die Schreib-API in NodeBB konfigurieren.",
"intro": "Standardmäßig authentifiziert die <code>write-api</code> Nutzer anhand ihres Sitzungs-Cookies, aber NodeBB unterstützt auch die Bearer-Authentifizierung über Token, die über diese Seite generiert werden.",
"docs": "Klicken Sie hier, um auf die vollständige API-Spezifikation zuzugreifen",
"lead-text": "Auf dieser Seite kanst Du den Zugriff auf die Write-API in NodeBB konfigurieren.",
"intro": "Standardmäßig authentifiziert die Write-API Benutzer basierend auf ihrem Sitzungscookie, aber NodeBB unterstützt auch die Bearer-Authentifizierung über Token, die über diese Seite generiert werden.",
"docs": "Klicke hier, um auf die vollständige API-Spezifikation zuzugreifen",
"require-https": "API-Nutzung nur über HTTPS möglich",
"require-https-caveat": "<strong>Hinweis</strong>: Einige Installationen mit Load Balancern können ihre Anfragen über HTTP an NodeBB weiterleiten, in diesem Fall sollte diese Option deaktiviert bleiben.",
"uid": "NutzerID",
"uid-help-text": "Geben Sie eine NutzerID an, die mit diesem Token verknüpft werden soll. Wenn die Benutzer-ID <code>0</code> lautet, wird sie als ein <em>master</em>-Token betrachtet, das die Identität anderer Benutzer auf der Grundlage des Parameters <code>_uid</code> annehmen kann.",
"uid-help-text": "Gebe eine Benutzer-ID an, die diesem Token zugeordnet werden soll. Wenn die Benutzer-ID <code>0</code> ist, wird sie als <em>Master</em>-Token betrachtet, das basierend auf dem <code>_uid</code>-Parameter die Identität anderer Benutzer annehmen kann",
"description": "Beschreibung",
"no-description": "Keine Beschreibung angegeben.",
"token-on-save": "Das Token wird generiert, sobald das Formular gespeichert wird."
"token-on-save": "Token wird generiert, sobald das Formular gespeichert wird"
}

View File

@@ -3,10 +3,10 @@
"disable": "Chat deaktivieren",
"disable-editing": "Chatnachrichtenbearbeitung/löschung deaktivieren",
"disable-editing-help": "Administratoren und globale Moderatoren sind von dieser Einschränkung ausgenommen",
"max-length": "Maximale Chatnachrichtenlänge",
"max-room-size": "Maximale Anzahl an Nutzern pro Chat-Room",
"max-length": "Maximale Länge von Chatnachrichten",
"max-room-size": "Maximale Anzahl von Benutzern in Chatrooms",
"delay": "Zeit zwischen Chatnachrichten in Millisekunden",
"notification-delay": "Benachrichtigungsverzögerung für Chat Nachrichten. (0 für keine Verzögerung)",
"restrictions.seconds-edit-after": "Dauer in Sekunden, die eine Chat-Nachricht editiert werden kann. (0 deaktiviert)",
"restrictions.seconds-delete-after": "Dauer in Sekunden, die eine Chat-Nachricht gelöscht werden kann. (0 deaktiviert)"
"notification-delay": "Benachrichtigungsverzögerung für Chatnachrichten. (0 für keine Verzögerung)",
"restrictions.seconds-edit-after": "Anzahl der Sekunden, die eine Chat-Nachricht bearbeitet werden kann. (0 deaktiviert)",
"restrictions.seconds-delete-after": "Anzahl der Sekunden, die eine Chat-Nachricht löschbar bleibt. (0 deaktiviert)"
}

View File

@@ -1,13 +1,13 @@
{
"eu-consent": "EU Cookie Zustimmung",
"consent.enabled": "Aktiviert",
"consent.message": "Benachrichtigung",
"consent.acceptance": "Akzeptierungsnachricht",
"consent.link-text": "Police Link Text",
"consent.link-url": "Link zu den Richtlinien",
"consent.blank-localised-default": "Leer lassen um NodeBB lokalisierte Standards zu benutzen",
"consent.message": "Benachrichtigungsnachricht",
"consent.acceptance": "Annahmenachricht",
"consent.link-text": "Richtlinien-Link-Text",
"consent.link-url": "Richtlinienlink-URL",
"consent.blank-localised-default": "Feld leerlassen, um die lokalisierten NodeBB-Standardeinstellungen zu verwenden",
"settings": "Einstellungen",
"cookie-domain": "Session Cookie Domain",
"cookie-domain": "Session-Cookie-Domain",
"max-user-sessions": "Maximale aktive Sitzungen pro Benutzer",
"blank-default": "Leer lassen für Standardwert"
}

View File

@@ -6,19 +6,20 @@
"from-help": "Der Name des Absenders, welcher in der E-Mail angezeigt werden soll.",
"smtp-transport": "SMTP Konfiguration",
"smtp-transport.enabled": "Enable SMTP Transport",
"smtp-transport.enabled": "SMTP-Transport aktivieren",
"smtp-transport-help": "Du kannst aus einer Liste bekannter Email-Provider auswählen, oder einen benutzerdefinierten eingeben.",
"smtp-transport.service": "Wähle einen Provider",
"smtp-transport.service-custom": "Benutzerdefiniert...",
"smtp-transport.service-help": "Wähle oben einen Provider aus um die bekannten informationen über diesen zu verwenden. Falls dein Provider nicht in der Liste sein sollte, wähle 'Benutzerdefiniert...' aus und gib die details manuell ein.",
"smtp-transport.gmail-warning1": "Es gab Berichte darüber, dass Gmail nicht mit Accounts mit erhöhten Sicherheitseinstellungen funktioniert. In diesem Fall wirst du <a href=\"https://www.google.com/settings/security/lesssecureapps\">deinen Gmail-Konto konfigurieren müssen um den \"Zugriff weniger sicherer Apps\" auf dein Konto zuzulassen</a>.",
"smtp-transport.gmail-warning2": "Um mehr zu diesem Workaround zu erfahren, ließ dir bitten <a href=\"https://nodemailer.com/usage/using-gmail/\">diesen NodeMailer Artikel zu diesem Problem durch</a>. Eine Alternative wäre, Emailer-Plugins von dritten wie etwa SendGrid, Mailgun usw. zu verwenden. <a href=\"../extend/plugins\">Verfügbare Plugins durchsuchen</a>.",
"smtp-transport.service-help": "Select a service name above in order to use the known information about it. Alternatively, select &quot;Custom Service&quot; and enter the details below.",
"smtp-transport.gmail-warning1": "If you are using GMail as your email provider, you will have to generate an &quot;App Password&quot; in order for NodeBB to authenticate successfully. You can generate one at the <a href=\"https://myaccount.google.com/apppasswords\">App Passwords <i class=\"fa fa-external-link\"></i></a> page.",
"smtp-transport.gmail-warning2": "For more information about this workaround, <a href=\"https://nodemailer.com/usage/using-gmail/\">please consult this NodeMailer article <i class=\"fa fa-external-link\"></i></a> on the issue. An alternative would be to utilise a third-party emailer plugin such as SendGrid, Mailgun, etc. <a href=\"../extend/plugins\">Browse available plugins here</a>.",
"smtp-transport.auto-enable-toast": "It looks like you&apos;re configuring an SMTP transport. We enabled the \"SMTP Transport\" option for you.",
"smtp-transport.host": "SMTP Host",
"smtp-transport.port": "SMTP Port",
"smtp-transport.security": "Verbindungssicherheit",
"smtp-transport.security-encrypted": "Verschlüsselt",
"smtp-transport.security-starttls": "StartTLS",
"smtp-transport.security-none": "Keine",
"smtp-transport.security-none": "Nichts",
"smtp-transport.username": "Benutzername",
"smtp-transport.username-help": "Bitte füge die komplette Email-Adresse <b>für Gmail</b> hier ein, insbesondere wenn du eine von Google Apps gemanagete domain verwendest.",
"smtp-transport.password": "Passwort",
@@ -29,20 +30,20 @@
"template.select": "E-Mail Vorlage auswählen",
"template.revert": "Original wiederherstellen",
"testing": "E-Mail Test",
"testing.select": "Wählen Sie die E-Mail Vorlage",
"testing.select": "E-Mail-Vorlage auswählen",
"testing.send": "Test-E-Mail versenden",
"testing.send-help": "Die Test-E-Mail wird an die E-Mail Adresse des momentan eingeloggten Nutzers geschickt.",
"subscriptions": "Email Zusammenfassungen",
"subscriptions.disable": "Deaktivierung der Email Zusammenfassungen",
"subscriptions.hour": "Sende Zeit",
"subscriptions.hour-help": "Bitte geben Sie eine Nummer ein, welche die Stunde repräsentiert zu welcher geplante Emails versandt werden sollen (z.B. <code>0</code> für Mitternacht, <code>17</code> für 5 Uhr Nachmittags). Beachten Sie, dass die Zeit auf der Serverzeit basiert und daher nicht umbedingt mit ihrer Systemzeit übereinstimmen muss.<br>Die ungefähre Serverzeit ist: <span id=\"serverTime\"></span><br>Die nächste tägliche Sendung ist um <span id=\"nextDigestTime\"></span> geplant",
"notifications.remove-images": "Remove images from email notifications",
"require-email-address": "Require new users to specify an email address",
"require-email-address-warning": "By default, users can opt-out of entering an email address by leaving the field blank. Enabling this option means they have to enter an email address in order to proceed with registration. <strong>It does not ensure user will enter a real email address, nor even an address they own.</strong>",
"send-validation-email": "Send validation emails when an email is added or changed",
"include-unverified-emails": "Send emails to recipients who have not explicitly confirmed their emails",
"include-unverified-warning": "By default, users with emails associated with their account have already been verified, but there are situations where this is not the case (e.g. SSO logins, grandfathered users, etc). <strong>Enable this setting at your own risk</strong> &ndash; sending emails to unverified addresses may be a violation of regional anti-spam laws.",
"prompt": "Prompt users to enter or confirm their emails",
"prompt-help": "If a user does not have an email set, or their email is not confirmed, a warning will be shown on screen.",
"sendEmailToBanned": "Send emails to users even if they have been banned"
"notifications.remove-images": "Bilder aus E-Mail-Benachrichtigungen entfernen",
"require-email-address": "Neue Benutzer auffordern, eine E-Mail-Adresse anzugeben",
"require-email-address-warning": "Standardmäßig können Benutzer die Eingabe einer E-Mail-Adresse ablehnen, indem sie das Feld leer lassen. Wenn Du diese Option aktivierst, musst Du eine E-Mail-Adresse eingeben, um mit der Registrierung fortzufahren.<strong>Es stellt nicht sicher, dass der Benutzer eine echte E-Mail-Adresse eingibt, noch nicht einmal eine Adresse, die ihm gehört.</strong>",
"send-validation-email": "Validierungs-E-Mails senden, wenn eine E-Mail hinzugefügt oder geändert wird",
"include-unverified-emails": "E-Mails an Empfänger senden, die ihre E-Mails nicht explizit bestätigt haben",
"include-unverified-warning": "Standardmäßig wurden Benutzer mit E-Mail-Adressen, die mit ihrem Konto verknüpft sind, bereits verifiziert, aber es existieren Situationen, in denen dies nicht der Fall ist (z. B. SSO-Anmeldungen, Großvater-Benutzer usw.). <strong>Aktiviere diese Einstellung auf eigenes Risiko</strong> &ndash; Das Senden von E-Mails an nicht verifizierte Adressen kann einen Verstoß gegen regionale Anti-Spam-Gesetze darstellen.",
"prompt": "Benutzer auffordern, ihre E-Mail-Adressen einzugeben oder zu bestätigen",
"prompt-help": "Wenn ein Benutzer keine E-Mail-Adresse hat oder seine E-Mail-Adresse nicht bestätigt ist, wird eine Warnung auf dem Bildschirm angezeigt.",
"sendEmailToBanned": "E-Mails an Benutzer senden, selbst wenn sie gesperrt wurden"
}

View File

@@ -7,7 +7,7 @@
"allow-multiple-badges-help": "Diese Eintellung kann verwendet werden um Benutzern zu erlauben mehrere Gruppen abzeichen auszuwählen, benötigt Theme unterstützung.",
"max-name-length": "Maximale Länge von Gruppennamen",
"max-title-length": "Maximale Gruppentitellänge",
"cover-image": "Gruppen-Deckbild",
"default-cover": "Standard-Deckbild",
"default-cover-help": "Fügen Sie Komma-getrennte standard-Deckbilder für Gruppen hinzu, welche kein Deckbild hochgeladen haben"
"cover-image": "Titelbild der Gruppe",
"default-cover": "Standard-Titelbilder",
"default-cover-help": "Füge urch Kommas getrennte Standard-Titelbilder für Gruppen hinzu, die kein hochgeladenes Titelbild haben"
}

View File

@@ -1,7 +1,7 @@
{
"settings": "Einstellungen",
"handles.enabled": "Gastzugänge erlauben",
"handles.enabled-help": "Diese Option offenbart ein neues Feld, welches Gästen erlaubt einen Nutzernamen zu wählen, welcher sie mit jedem Beitrag assoziiert den sie erstellen. Wenn diese Option deaktiviert ist, werden sie einfach \"Gast\" genannt",
"handles.enabled-help": "Diese Option zeigt ein neues Feld an, in dem Gäste einen Namen auswählen können, der jedem von ihnen erstellten Beitrag zugeordnet werden soll. Wenn sie deaktiviert sind, werden sie einfach Gast genannt.",
"topic-views.enabled": "Gästen erlauben, die gezählte Anzahl der Themenaufrufe zu erhöhen",
"reply-notifications.enabled": "Erlauben Sie Gästen, Antwortbenachrichtigungen zu erstellen"
}

View File

@@ -1,8 +1,8 @@
{
"home-page": "Startseite",
"description": "Wähle aus, welche Seite angezeigt werden soll, wenn Nutzer zur Startseite des Forums navigieren.",
"home-page-route": "Startseitenpfad",
"custom-route": "Eigener Startseitenpfad",
"allow-user-home-pages": "Benutzern eigene Startseiten erlauben",
"description": "Wähle, welche Seite angezeigt wird, wenn Benutzer zur Stamm-URL deines Forums navigieren.",
"home-page-route": "Startseiten Route",
"custom-route": "Benutzerdefinierte Route",
"allow-user-home-pages": "Benutzer-Startseiten zulassen",
"home-page-title": "Titel der Startseite (Standardmäßig \"Home\")"
}

View File

@@ -1,6 +1,6 @@
{
"language-settings": "Spracheinstellungen",
"description": "Die Standardsprache legt die Spracheinstellungen für alle Benutzer fest, die das Forum besuchen. <br />Einzelne Benutzer können die Standardsprache auf der Seite in ihren Kontoeinstellungen überschreiben.",
"description": "Die Standardsprache bestimmt die Spracheinstellungen für alle Benutzer, die dein Forum besuchen. <br />Einzelne Benutzer können die Standardsprache auf ihrer Kontoeinstellungsseite überschreiben.",
"default-language": "Standardsprache",
"auto-detect": "Sprach-Einstellung bei Gästen automatisch ermitteln"
}

View File

@@ -12,7 +12,7 @@
"groups": "Gruppen:",
"open-new-window": "In neuem Fenster öffnen",
"dropdown": "Dropdown",
"dropdown-placeholder": "Place your dropdown menu items below, ie: <br/>&lt;li&gt;&lt;a href&#x3D;&quot;https://myforum.com&quot;&gt;Link 1&lt;/a&gt;&lt;/li&gt;",
"dropdown-placeholder": "Platziere deine Dropdown-Menüpunkte unten, dh:<br/>&lt;li&gt;&lt;a href&#x3D;&quot;https://myforum.com&quot;&gt;Link 1&lt;/a&gt;&lt;/li&gt;",
"btn.delete": "Löschen",
"btn.disable": "Deaktivieren",

View File

@@ -1,7 +1,7 @@
{
"notifications": "Benachrichtigungen",
"welcome-notification": "Wilkommensnachricht",
"welcome-notification-link": "Wilkommensnachricht-Link",
"welcome-notification-uid": "Wilkommensbenachrichtigung Benutzer (UID)",
"post-queue-notification-uid": "Post Queue User (UID)"
"welcome-notification": "Willkommensbenachrichtigung",
"welcome-notification-link": "Willkommens-Benachrichtigungslink",
"welcome-notification-uid": "Begrüßungsbenachrichtigungsbenutzer (UID)",
"post-queue-notification-uid": "Post-Queue-Benutzer (UID)"
}

View File

@@ -1,12 +1,12 @@
{
"pagination": "Seitennummerierungs Einstellungen",
"enable": "Themen in Seiten einteilen anstatt endlos zu scrollen",
"enable": "Themen und Beiträge paginieren, anstatt unendlich zu scrollen.",
"posts": "Beitragsseitennummerierung",
"topics": "Themen Seitennummerierung",
"posts-per-page": "Beiträge pro Seite",
"max-posts-per-page": "Maximale Anzahl von Beiträgen pro Seite",
"categories": "Kategorie Seitennummerierung",
"topics-per-page": "Themen pro Seite",
"max-topics-per-page": "Maximale Anzahl von Themen pro Seite",
"max-topics-per-page": "Maximale Themen pro Seite",
"categories-per-page": "Kategorien pro Seite"
}

View File

@@ -15,14 +15,14 @@
"restrictions.groups-exempt-from-post-queue": "Gruppen auswählen, die von der Beitragswarteschlange ausgenommen sind",
"restrictions-new.post-queue": "Aktiviere Beschränkungen für neue Benutzer",
"restrictions.post-queue-help": "Aktivierte Beitragswarteschlange sorgt dafür, dass Posts von neuen Benutzern vor dem Veröffentlichen genehmigt werden müssen.",
"restrictions-new.post-queue-help": "Enabling new user restrictions will set restrictions on posts created by new users",
"restrictions.seconds-between": "Number of seconds between posts",
"restrictions-new.post-queue-help": "Durch das Aktivieren von Einschränkungen für neue Benutzer werden Einschränkungen für Beiträge festgelegt, die von neuen Benutzern erstellt wurden",
"restrictions.seconds-between": "Anzahl der Sekunden zwischen Posts",
"restrictions.seconds-between-new": "Sekunden zwischen Beiträgen für neue Benutzer",
"restrictions.rep-threshold": "Mindesreputation bevor die Beschränkungen aufgehoben werden",
"restrictions.seconds-before-new": "Seconds before a new user can make their first post",
"restrictions.seconds-edit-after": "Number of seconds a post remains editable (set to 0 to disable)",
"restrictions.seconds-delete-after": "Number of seconds a post remains deletable (set to 0 to disable)",
"restrictions.replies-no-delete": "Number of replies after users are disallowed to delete their own topics (set to 0 to disable)",
"restrictions.seconds-before-new": "Sekunden, bevor ein neuer Benutzer seinen ersten Beitrag schreiben kann",
"restrictions.seconds-edit-after": "Anzahl der Sekunden, die ein Beitrag bearbeitet werden kann (zum Deaktivieren auf 0 setzen)",
"restrictions.seconds-delete-after": "Anzahl der Sekunden, die ein Beitrag löschbar bleibt (zum Deaktivieren auf 0 setzen)",
"restrictions.replies-no-delete": "Anzahl der Antworten, nachdem Benutzern das Löschen ihrer eigenen Themen verweigert wurde (zum Deaktivieren auf 0 setzen)",
"restrictions.min-title-length": "Minimale Titellänge",
"restrictions.max-title-length": "Maximale Titellänge",
"restrictions.min-post-length": "Minimale Beitragslänge",
@@ -32,25 +32,26 @@
"timestamp": "Zeitstempel",
"timestamp.cut-off": "Tageslimit für Relative Zeitangaben (in Tagen)",
"timestamp.cut-off-help": "Tage &amp; Zeiten werden relativ angezeigt (z.B. \"vor 3 Stunden\" / \"vor 5 Tagen\"), und in viele Sprachen übersetzt. Nach einem bestimmten Zeitpunkt, kann dieses Text durch das übersetzte Datum selbst ersetzt werden (z.B. 5 Nov 2016 15:30).<br><em>(Standard: <code>30</code>, oder ein Monat). Auf 0 setzen um immer Daten anzuzeigen, leer lassung um immer relative Zeiten anzuzeigen.</em>",
"timestamp.necro-threshold": "Necro Threshold (in days)",
"timestamp.necro-threshold-help": "A message will be shown between posts if the time between them is longer than the necro threshold. (Default: <code>7</code>, or one week). Set to 0 to disable.</em>",
"timestamp.topic-views-interval": "Increment topic views interval (in minutes)",
"timestamp.topic-views-interval-help": "Topic views will only increment once every X minutes as defined by this setting.",
"timestamp.necro-threshold": "Nekroschwelle (in Tagen)",
"timestamp.necro-threshold-help": "Zwischen Posts wird eine Nachricht angezeigt, wenn die Zeit zwischen ihnen länger als die Necro-Schwelle ist. (Standart: <code>7</code> oder eine Woche) Zum Deaktivieren auf 0 setzen.</em>",
"timestamp.topic-views-interval": "Intervall für Themenaufrufe erhöhen (in Minuten)",
"timestamp.topic-views-interval-help": "Themenansichten werden nur einmal alle X Minuten erhöht, wie durch diese Einstellung definiert.",
"teaser": "Teaser-Beitrag",
"teaser.last-post": "Letzter - Den neuesten Beitrag anzeigen, den originalen Beitrag innbegriffen, wenn es keine Antworten gibt",
"teaser.last-reply": "Letzter - Den neuesten Beitrag oder einen \"Keine Antworten\" Platzhalter, wenn es keine Antworten gibt anzeigen",
"teaser.first": "Erster",
"showPostPreviewsOnHover": "Show a preview of posts when mouse overed",
"showPostPreviewsOnHover": "Eine Vorschau der Beiträge zeigen, wenn Du mit der Maus darüber fährst",
"unread": "Ungelesen-Einstellungen",
"unread.cutoff": "Ungelesen-Limit (in Tagen)",
"unread.min-track-last": "Minimale Anzahl an Beiträgen pro Thema bevor die letzte Sichtung mitgeschrieben wird",
"recent": "Kürzlich verwendete Einstellungen",
"recent.max-topics": "Maximum topics on /recent",
"recent.max-topics": "Maximale Themen auf /recent",
"recent.categoryFilter.disable": "Filtern von Themen in ignorierten Kategorien auf der /recent Seite deaktivieren",
"signature": "Signatureinstellungen",
"signature.disable": "Signaturen deaktivieren",
"signature.no-links": "Links in signaturen deaktivieren",
"signature.no-images": "Bilder in Signaturen deaktivieren",
"signature.hide-duplicates": "Hide duplicate signatures in topics",
"signature.max-length": "Maximale Signaturlänge",
"composer": "Editor Einstellungen",
"composer-help": "Die folgenden Einstellungen bestimmen die funktionalität und/oder das Aussehen des Beitragseditors, der Nutzern angezeigt wird, webb sie neue Themen erstellen, oder bereits existierenden Antworten.",
@@ -58,8 +59,8 @@
"composer.enable-plugin-help": "Plugins erlauben Inhalte dem \"Help\"-Tab hinzuzufügen",
"composer.custom-help": "Benutzerdefinierter Hilfe-Text",
"backlinks": "Backlinks",
"backlinks.enabled": "Enable topic backlinks",
"backlinks.help": "If a post references another topic, a link back to the post will be inserted into the referenced topic at that point in time.",
"backlinks.enabled": "Themen-Backlinks aktivieren",
"backlinks.help": "Wenn ein Beitrag auf ein anderes Thema verweist, wird zu diesem Zeitpunkt ein Link zurück zu dem Beitrag in das referenzierte Thema eingefügt.",
"ip-tracking": "IP-Verfolgung",
"ip-tracking.each-post": "IP-Adresse für jeden Beitrag speichern",
"enable-post-history": "Aktiviere Beitrags-Änderungsgeschichte"

View File

@@ -4,13 +4,13 @@
"disable-down-voting": "Negative Bewertungen deaktivieren",
"votes-are-public": "Alle Bewertungen sind öffentlich",
"thresholds": "Aktivitätsschwelle",
"min-rep-upvote": "Minimum reputation to upvote posts",
"upvotes-per-day": "Upvotes per day (set to 0 for unlimited upvotes)",
"upvotes-per-user-per-day": "Upvotes per user per day (set to 0 for unlimited upvotes)",
"min-rep-upvote": "Mindestreputation, um Beiträge hochzustimmen",
"upvotes-per-day": "Upvotes pro Tag (für unbegrenzte Upvotes auf 0 setzen)",
"upvotes-per-user-per-day": "Upvotes pro Benutzer und Tag (für unbegrenzte Upvotes auf 0 gesetzt)",
"min-rep-downvote": "Minimales Ansehen um Beiträge negativ zu bewerten",
"downvotes-per-day": "Runtervoten pro Tag (auf 0 gesetzt für unbegrenzte Runtervotes)",
"downvotes-per-user-per-day": "Runtervoten pro Benutzer pro Tag (auf 0 gesetzt für unbegrenzte Runtervotes)",
"min-rep-chat": "Minimum reputation to send chat messages",
"min-rep-chat": "Mindestreputation zum Senden von Chatnachrichten",
"min-rep-flag": "Minimales Ansehen und Beiträge zu melden",
"min-rep-website": "Erforderliche Reputation um eine \"Website\" zum Benutzerprofil hinzuzufügen",
"min-rep-aboutme": "Erforderliche Reputation um eine \"Über mich\"-Sektion zum Benutzerprofil hinzuzufügen",
@@ -22,6 +22,10 @@
"flags.limit-per-target": "Maximale Häufigkeit, mit der etwas markiert werden kann",
"flags.limit-per-target-placeholder": "Standardwert: 0",
"flags.limit-per-target-help": "Wenn ein Beitrag oder ein Benutzer mehrfach markiert wird, wird jede zusätzliche Markierung als &quot;Nachricht&quot; betrachtet und zur ursprünglichen Markierung hinzugezählt. Setzen Sie diese Option auf eine andere Zahl als Null, um die Anzahl der Nachricht, die ein Artikel erhalten kann, zu begrenzen.",
"flags.auto-flag-on-downvote-threshold": "Number of downvotes to auto flag posts (Set to 0 to disable, default: 0)",
"flags.auto-resolve-on-ban": "Automatisches Beenden aller Tickets eines Benutzers, wenn dieser gesperrt wird"
"flags.auto-flag-on-downvote-threshold": "Anzahl der Downvotes für Posts mit automatischer Markierung (zum Deaktivieren auf 0 setzen, Standard: 0)",
"flags.auto-resolve-on-ban": "Automatisches Beenden aller Tickets eines Benutzers, wenn dieser gesperrt wird",
"flags.action-on-resolve": "Do the following when a flag is resolved",
"flags.action-on-reject": "Do the following when a flag is rejected",
"flags.action.nothing": "Do nothing",
"flags.action.rescind": "Rescind the notification send to moderators/administrators"
}

View File

@@ -1,5 +1,5 @@
{
"post-sharing": "Beiträge teilen",
"info-plugins-additional": "Plugins können zusätzliche soziale Netzwerke für das Teilen von Beiträgen hinzufügen.",
"save-success": "Erfolgreich gespeichert!"
"post-sharing": "Beitragsfreigabe",
"info-plugins-additional": "Plugins können zusätzliche Netzwerke zum Teilen von Beiträgen hinzufügen.",
"save-success": "Post-Sharing-Netzwerke erfolgreich gespeichert!"
}

View File

@@ -1,6 +1,6 @@
{
"reconnection": "Reconnection Einstellungen",
"max-attempts": "Maximale Anzahl von Reconnection-Versuchen",
"reconnection": "Wiederverbindungseinstellungen",
"max-attempts": "Max. Wiederverbindungsversuche",
"default-placeholder": "Standard: %1",
"delay": "Reconnection-Verzögerung"
"delay": "Wiederverbindungsverzögerung"
}

Some files were not shown because too many files have changed in this diff Show More