Compare commits

...

216 Commits

Author SHA1 Message Date
Julian Lam
b08259e534 refactor(socket.io): deprecate SocketNotifs.get and SocketNotifs.getCount in favour of api.notifications.list and api.notifications.getCount, respectively 2023-11-21 11:25:42 -05:00
Julian Lam
9079ad0b2c chore: added missing deprecation warning for .getTopics 2023-11-20 16:18:11 -05:00
Julian Lam
b5940a5d44 fix: remove unused requires 2023-11-20 13:06:26 -05:00
Julian Lam
c1e6be7705 refactor(socket.io): deprecate SocketModules.chats.typing in favour of api.chats.toggleTyping 2023-11-20 13:06:26 -05:00
Julian Lam
401e8636bd refactor(socket.io): deprecate SocketModules.chats.loadPinnedMessages in favour of api.chats.getPinnedMessages" 2023-11-20 13:06:26 -05:00
Julian Lam
f9dc35021d refactor(socket.io): deprecate SocketModules.chats.searchMessages in favour of api.search.roomMessages 2023-11-20 13:06:26 -05:00
Julian Lam
f9c471a09b fix: remove lodash require 2023-11-20 13:06:26 -05:00
Julian Lam
75c8cda18c refactor(socket.io): deprecate SocketModules.chats.setNotificationSetting in favour of api.chats.watch 2023-11-20 13:06:26 -05:00
Julian Lam
b13c6ee431 refactor(socket.io): deprecated SocketModules.chats.toggleOwner in favour of api.chats.toggleOwner 2023-11-20 13:06:26 -05:00
Julian Lam
932bd29200 feat: update Messaging.toggleOwner to optionally take a third state argument 2023-11-20 13:06:26 -05:00
Julian Lam
6e952263d1 refactor(socket.io): deprecated SocketModules.chats.searchMembers in favour of api.search.roomUsers 2023-11-20 13:06:26 -05:00
Julian Lam
62b7dfd400 refactor(socket.io): deprecate SocketModules.sortPublicRooms in favour of api.chats.sortPublicRooms 2023-11-20 13:06:26 -05:00
Julian Lam
2de534fad8 chore: update note at top of file 2023-11-20 13:06:26 -05:00
Julian Lam
5eaffb422c refactor(socket.io): deprecate SocketModules.chat.getUnreadCount in favour of api.chats.getUnread 2023-11-20 13:06:26 -05:00
Julian Lam
214989a8c1 refactor(socket.io): deprecate SocketModules.chats.getIP in favour of api.chats.getIpAddress 2023-11-20 13:06:26 -05:00
Julian Lam
0d3c94e6bb refactor(socket.io): deprecate SocketModules.chats.hasPrivateChat in favour of api.users.getPrivateRoomId 2023-11-20 13:06:26 -05:00
Julian Lam
a4133500fe refactor(socket.io): deprecate SocketModules.chats.canMessage and .markAllRead with no alternative. deprecate .getRecentChats in favour of api.chats.list 2023-11-20 13:06:26 -05:00
Julian Lam
eebea4df2e refactor(socket.io): deprecate SocketModules.chats.isDnD in favour of api.users.getStatus 2023-11-20 13:06:26 -05:00
Julian Lam
c4b4e79b28 refactor(socket.io): deprecate SocketModules.chats.getRaw in favour of api.chats.getRawMessage 2023-11-20 13:06:26 -05:00
Barış Soner Uşaklı
22181f161b Merge branch 'master' into develop 2023-11-19 19:51:27 -05:00
Barış Soner Uşaklı
a9ef58a5e8 fix: thumb width 2023-11-19 19:51:18 -05:00
Misty Release Bot
548b334295 Latest translations and fallbacks 2023-11-19 09:18:21 +00:00
Barış Soner Uşaklı
4649f96e76 Merge branch 'master' into develop 2023-11-18 19:42:16 -05:00
Barış Soner Uşaklı
49013f813f chore: up composer 2023-11-18 19:41:47 -05:00
renovate[bot]
b627545359 chore(deps): update dependency eslint to v8.54.0 (#12172)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-18 14:20:43 -05:00
renovate[bot]
d6a92d4c2d chore(deps): update commitlint monorepo to v18.4.2 (#12169)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-18 14:20:31 -05:00
renovate[bot]
b4a41af91b fix(deps): update dependency ace-builds to v1.31.2 (#12168)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-18 13:24:15 -05:00
renovate[bot]
85936a597c fix(deps): update dependency mongodb to v6.3.0 (#12170)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-18 13:24:05 -05:00
Misty Release Bot
64fe1278cf chore(i18n): fallback strings for new resources: nodebb.post-queue 2023-11-18 18:22:22 +00:00
Barış Soner Uşaklı
496f882d1e Merge branch 'develop' of https://github.com/NodeBB/NodeBB into develop 2023-11-18 13:21:55 -05:00
Barış Soner Uşaklı
b69816935d chore: up dbsearch 2023-11-18 13:21:50 -05:00
Misty Release Bot
3d971294c4 Latest translations and fallbacks 2023-11-18 09:18:23 +00:00
Julian Lam
89a1134cae fix: #12171, bump harmony 2023-11-17 11:48:45 -05:00
Julian Lam
41bdc9e8fd fix: update design of post-queue 2023-11-17 11:46:45 -05:00
Julian Lam
63ba498647 fix: update post-queue template for #12171 2023-11-17 11:45:09 -05:00
Misty Release Bot
f98205c1fd chore(i18n): fallback strings for new resources: nodebb.post-queue 2023-11-17 16:38:42 +00:00
Julian Lam
5d03321e92 feat: new language strings for post-queue page 2023-11-17 11:38:17 -05:00
Misty Release Bot
30b3e14381 Latest translations and fallbacks 2023-11-17 09:19:27 +00:00
Misty Release Bot
081352b6b2 chore(i18n): fallback strings for new resources: nodebb.social 2023-11-15 21:50:11 +00:00
Barış Soner Uşaklı
b4aefcca80 add linkedin 2023-11-15 16:49:47 -05:00
Barış Soner Uşaklı
9a1f8e9b21 chore: up themes 2023-11-15 11:02:59 -05:00
Barış Soner Uşaklı
ace171a6bf feat: add some new social share buttons 2023-11-15 11:01:30 -05:00
Barış Soner Uşaklı
fe5f3fbbee Merge branch 'master' into develop 2023-11-15 09:25:01 -05:00
Misty Release Bot
48f7ae9999 chore: update changelog for v3.5.1 2023-11-14 14:20:03 +00:00
Misty Release Bot
94dfb3adcc chore: incrementing version number - v3.5.1 2023-11-14 14:20:02 +00:00
renovate[bot]
616ff5733a chore(deps): update postgres docker tag to v16.1 (#12167)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-14 07:50:59 -05:00
Misty Release Bot
d98d8ff7b3 Latest translations and fallbacks 2023-11-14 09:18:36 +00:00
Julian Lam
dcb0c4dbb0 fix: update ajaxifyTimer logic to only drop the request if the URL is the same as the one it's already processing
re: #12133
2023-11-13 17:23:34 -05:00
Barış Soner Uşaklı
84693fce18 Merge branch 'develop' of https://github.com/NodeBB/NodeBB into develop 2023-11-12 13:52:56 -05:00
renovate[bot]
5f8a4f3a4e chore(deps): update mongo docker tag to v7 (#12166)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-12 13:52:41 -05:00
renovate[bot]
c41f9a7534 chore(deps): update redis docker tag to v7.2.3 (#12165)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-12 13:52:22 -05:00
Barış Soner Uşaklı
35ad73585f Merge branch 'develop' of https://github.com/NodeBB/NodeBB into develop 2023-11-12 13:51:58 -05:00
Barış Soner Uşaklı
4c7c46f32c fix: language key 2023-11-12 13:51:54 -05:00
Opliko
7f3a9968ef feat: docker improvements (#12031)
* use yarn and debian slim build

* feat: update Dockerfile to use multistage builds

* Create main.yml

* remove some useless things from docker context and assume yarn by default

* remove all dotfiles in docker context

* no need for extra build tools, complain to the module author if there is no alpine build

(cherry picked from commit 90516a3c8399e74c38be7115edb39411ba0d86b9)

* specify the config file location instead of creating it

(cherry picked from commit 38e4295d70682f1049fe671ade96eeccd669d908)

* set explicit config path

(cherry picked from commit 8dcc6f249d099cb8939a95511ec13702491958bc)

* fix docker-compose example to use the exposed volumes

* dockerfile: upgrade alpine to 3.16

* dockerignore: add more ignorable entries

* docker-compose: change the way the docker startup process works

* install: pass config path to child process as well

Signed-off-by: steve <29133953+stevefan1999-personal@users.noreply.github.com>

* setup: move config file resolution up before setup

This fixes issue with different config file location, which will otherwise default on 'config.json', which means the config save won't save to the file we specified

Signed-off-by: steve <29133953+stevefan1999-personal@users.noreply.github.com>

* docker-entrypoint: don't fix CONFIG_DIR location but fix default location

Signed-off-by: steve <29133953+stevefan1999-personal@users.noreply.github.com>

* docker-entrypoint: handle missing config file logic

Signed-off-by: steve <29133953+stevefan1999-personal@users.noreply.github.com>

* README: add simple notice on how to use it

Signed-off-by: steve <29133953+stevefan1999-personal@users.noreply.github.com>

* add missing semicolons

Signed-off-by: steve <29133953+stevefan1999-personal@users.noreply.github.com>

* docker-compose: remove multi override, use one big profile instead

However, Docker Compose doesn't support profile-based dependency and this would probably means we have less guarantee about the liveness of the database. But since this is just a sample configuration it should be fine

Signed-off-by: steve <29133953+stevefan1999-personal@users.noreply.github.com>

* workflows: remove main.yml, add platforms to buildx matrix in docker.yml

Signed-off-by: steve <29133953+stevefan1999-personal@users.noreply.github.com>

* workflows: set docker buildx to build for amd64 and arm64 only

Signed-off-by: steve <29133953+stevefan1999-personal@users.noreply.github.com>

* docker-entrypoint: don't force build everytime before start

Signed-off-by: steve <29133953+stevefan1999-personal@users.noreply.github.com>

* docker-entrypoint: implement init verb

This would allow you to change between "setup" (automated setup using environmental variables which is the current preferred way to run containerized NodeBB) or "install" (web install that guides user to fill in connection information, which is similar to WordPress)

Signed-off-by: steve <29133953+stevefan1999-personal@users.noreply.github.com>

* README: mention caveat with MongoDB

Signed-off-by: steve <29133953+stevefan1999-personal@users.noreply.github.com>

* README: add Docker section placeholder for doc migration

Signed-off-by: steve <29133953+stevefan1999-personal@users.noreply.github.com>

* docker-entrypoint: add SETUP variable support

Signed-off-by: steve <29133953+stevefan1999-personal@users.noreply.github.com>

* docker-compose: add force flag to ln on setup

Signed-off-by: steve <29133953+stevefan1999-personal@users.noreply.github.com>

* docker-compose: fix permission issue; docker-compose: fast exit if still no permission on config dir

Signed-off-by: steve <29133953+stevefan1999-personal@users.noreply.github.com>

* fix: remove redundant FROM

* docs: remove docker stuff (in favour of docs entry, nodebb/docs#78) but add link to cloud install docs

* fix: correctly check if directory is writable

* fix: ignore .docker directory

* fix: multi-arch docker builds and chown performance

* chore: bump database image versions

* fix: move from alpine to slim image

* fix: use omit=dev instead of only=prod

* feat: move entrypoint to install directory

* feat: initialize mongodb user

* feat: use separate rebuild stage

* fix: disable eslint for mongodb script

* fix: remove node_modules bind mount

bind mounts don't save data from container, resulting in a LOONG startup

* feat: prepopulate database defaults for installation

* feat: enable persistence in redis container

* docs: add some comments to the compose file

---------

Signed-off-by: steve <29133953+stevefan1999-personal@users.noreply.github.com>
Co-authored-by: Steve Fan <29133953+stevefan1999-personal@users.noreply.github.com>
Co-authored-by: Steve Fan <19037626d@connect.polyu.hk>
Co-authored-by: Julian Lam <julian@nodebb.org>
2023-11-12 13:38:00 -05:00
Barış Soner Uşaklı
55fafa9154 Merge branch 'develop' of https://github.com/NodeBB/NodeBB into develop 2023-11-12 12:17:19 -05:00
renovate[bot]
9d18d3c7ab fix(deps): update dependency lru-cache to v10.0.2 (#12160)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-12 12:17:06 -05:00
renovate[bot]
1796ed2b23 chore(deps): update dependency lint-staged to v15.1.0 (#12161)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-12 12:16:56 -05:00
renovate[bot]
be3d3393e3 chore(deps): update dependency @commitlint/cli to v18.4.1 (#12162)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-12 12:16:45 -05:00
Barış Soner Uşaklı
4fc54a139f Merge branch 'develop' of https://github.com/NodeBB/NodeBB into develop 2023-11-12 12:16:33 -05:00
Barış Soner Uşaklı
ed10dda29a chore: up themes 2023-11-12 12:16:31 -05:00
Misty Release Bot
d563fa0708 Latest translations and fallbacks 2023-11-12 09:18:18 +00:00
Barış Soner Uşaklı
20e978a9c4 Merge branch 'develop' of https://github.com/NodeBB/NodeBB into develop 2023-11-11 13:24:59 -05:00
Barış Soner Uşaklı
22d7e92f8a chore: up composer 2023-11-11 13:24:54 -05:00
Misty Release Bot
fdb6e9b0b1 Latest translations and fallbacks 2023-11-11 09:18:16 +00:00
Barış Soner Uşaklı
5aa4bf3310 dont show legends on error charts 2023-11-10 16:29:33 -05:00
renovate[bot]
128c24f29c chore(deps): update commitlint monorepo to v18.4.0 (#12159)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-10 09:57:46 -05:00
Barış Soner Uşaklı
20db425fe3 Merge branch 'develop' of https://github.com/NodeBB/NodeBB into develop 2023-11-10 09:54:46 -05:00
Barış Soner Uşaklı
5ea7dec939 feat: closes #12158, add sortable rewards
convert rewards:list to a sorted set
2023-11-10 09:54:37 -05:00
Misty Release Bot
0fa6a26a0b Latest translations and fallbacks 2023-11-10 09:18:39 +00:00
Barış Soner Uşaklı
7fba622e52 mobile widgets changes 2023-11-09 15:54:52 -05:00
Barış Soner Uşaklı
2eb3c6f59c Merge branch 'develop' of https://github.com/NodeBB/NodeBB into develop 2023-11-09 13:08:13 -05:00
Barış Soner Uşaklı
fcdd373741 chore: up themes 2023-11-09 13:08:09 -05:00
Misty Release Bot
4fe84ae897 chore(i18n): fallback strings for new resources: nodebb.modules 2023-11-09 17:46:55 +00:00
Barış Soner Uşaklı
4b2491becd feat: add copy text 2023-11-09 12:46:31 -05:00
Julian Lam
f4c36b842b chore: v4 note for deprecations 2023-11-09 11:53:17 -05:00
Julian Lam
dc4cc74fbd refator(socket.io): deprecate socketGroups.getChatGroups in favour of api.admin.listGroups 2023-11-09 11:53:17 -05:00
Julian Lam
181a93996c chore: minor re-order of routes/controllers in admin api v3 router/controller 2023-11-09 11:53:17 -05:00
Julian Lam
807d778c77 refactor(socket.io): deprecate socketGroups.loadMoreMembers in favour of api.groups.listMembers 2023-11-09 11:53:17 -05:00
Julian Lam
d2f3333af0 refactor(socket.io): deprecate socketGroups.searchMembers in favour of api.groups.listMembers 2023-11-09 11:53:17 -05:00
Julian Lam
b61e814787 refactor(socket.io): deprecate socketGroups.loadMore in favour of api.groups.list 2023-11-09 11:53:17 -05:00
Julian Lam
54a08087cb chore: add in note at top of files ready for deletion in v4 2023-11-09 11:53:17 -05:00
Misty Release Bot
9d77857233 Latest translations and fallbacks 2023-11-09 09:18:51 +00:00
renovate[bot]
d1a7ba35a7 chore(deps): update dependency eslint to v8.53.0 (#12151)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-08 15:50:35 -05:00
Barış Soner Uşaklı
c73df36d81 Merge branch 'master' into develop 2023-11-08 15:38:15 -05:00
Barış Soner Uşaklı
21e5953888 fix: closes #12156, missing data for privilege tables
also fix js crash when adding group/user on admin privileges,
2023-11-08 15:38:02 -05:00
Misty Release Bot
ab05cc1c74 Latest translations and fallbacks 2023-11-08 09:18:43 +00:00
renovate[bot]
50aa1a7c5a fix(deps): update dependency helmet to v7.1.0 (#12155)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-07 12:53:02 -05:00
renovate[bot]
2eff691299 chore(deps): update redis docker tag to v7.2.3 (#12152)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-07 12:52:48 -05:00
renovate[bot]
0e9eafa191 fix(deps): update dependency async to v3.2.5 (#12150)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-07 12:52:19 -05:00
renovate[bot]
b489af0662 fix(deps): update dependency nodebb-theme-persona to v13.2.44 (#12149)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-07 12:51:57 -05:00
Misty Release Bot
94777927ff chore(i18n): fallback strings for new resources: nodebb.admin-settings-chat, nodebb.admin-settings-post, nodebb.admin-settings-user 2023-11-07 17:37:34 +00:00
Barış Soner Uşaklı
fdff165e2b feat: closes #12154, add exempt groups
for new user restrictions
2023-11-07 12:36:40 -05:00
Barış Soner Uşaklı
119c3362ff feat: update moved keys 2023-11-07 11:37:21 -05:00
Barış Soner Uşaklı
3d505c5c9d feat: move new user restrrictions 2023-11-07 11:32:51 -05:00
Barış Soner Uşaklı
f4bbc5bd3f fix: another missing state 2023-11-07 10:49:42 -05:00
Barış Soner Uşaklı
3b91e8e27f fix: add missing tracking 2023-11-07 10:49:06 -05:00
Misty Release Bot
519bc67066 Latest translations and fallbacks 2023-11-07 09:18:45 +00:00
Misty Release Bot
36c5025e4b Latest translations and fallbacks 2023-11-04 09:18:20 +00:00
Misty Release Bot
29b3a4038f chore(i18n): fallback strings for new resources: nodebb.admin-settings-user, nodebb.category, nodebb.notifications 2023-11-03 17:28:52 +00:00
renovate[bot]
77b0baeace fix(deps): update dependency nodebb-theme-harmony to v1.1.95 (#12148)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-03 12:50:12 -04:00
Barış Soner Uşaklı
84fed97b41 feat: add tracking categories and make watching send notifications (#12147)
* feat: add tracking categories and make watching send notifications

upgrade script to change the defaults

* add missing spec

* test: one more spec
2023-11-03 12:49:17 -04:00
Julian Lam
f8cc8548bb docs: fix improper verbiage in category watch schema 2023-11-03 10:41:53 -04:00
Barış Soner Uşaklı
1b8dcbc2d7 chore: up harmony 2023-11-02 15:44:45 -04:00
Julian Lam
a5e3754b90 fix: bump harmony 2023-11-02 15:04:24 -04:00
Misty Release Bot
6c54f36feb Latest translations and fallbacks 2023-11-02 09:18:39 +00:00
renovate[bot]
4e23d0d12e fix(deps): update dependency connect-pg-simple to v9.0.1 (#12144)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-01 19:23:22 -04:00
Julian Lam
4601a6f7fe fix: #12133 dropdown menus on mobile stay open during ajaxify 2023-11-01 14:15:21 -04:00
Julian Lam
b4297cd8f0 fix: update ajaxifyTimer logic to only drop the request if the URL is the same as the one it's already processing
re: #12133
2023-11-01 14:15:21 -04:00
Misty Release Bot
4a5ab081f6 Latest translations and fallbacks 2023-11-01 09:18:51 +00:00
Julian Lam
cefd4061ca fix: #12141, use apiv3 for category search module 2023-10-31 16:41:32 -04:00
Misty Release Bot
7d8f700f56 chore(i18n): fallback strings for new resources: nodebb.error 2023-10-31 15:33:11 +00:00
Barış Soner Uşaklı
161526f7f2 Merge branch 'develop' of https://github.com/NodeBB/NodeBB into develop 2023-10-31 11:32:45 -04:00
Barış Soner Uşaklı
d8d26c9f57 feat: add new lang string for minutes 2023-10-31 11:32:43 -04:00
Julian Lam
4ffe041732 docs: openapi schema for api.search.categories 2023-10-31 11:32:07 -04:00
Julian Lam
581516c88e fix: made parentCid optional in api.search.categories 2023-10-31 11:32:07 -04:00
Julian Lam
00de9d5b07 refactor(socket.io): deprecate categories.categorySearch in favour of api.search.categories
THIS IS WIP
2023-10-31 11:32:07 -04:00
Julian Lam
1ce4ca54da refactor(socket.io): deprecate categories.loadMore in favour of api.categories.getTopics 2023-10-31 11:32:07 -04:00
Julian Lam
5399e86af1 docs(socket.io): openapi schema for remaining added routes 2023-10-31 11:32:07 -04:00
Julian Lam
54000aabf5 fix(socket.io): update getPosts controller to return object containing posts instead of straight array 2023-10-31 11:32:07 -04:00
Julian Lam
f279bca038 docs(socket.io): added schema for new routes 2023-10-31 11:32:07 -04:00
Julian Lam
010727f5cb refactor(socket.io): deprecate categories.loadMoreSubCategories in favour of api.categories.getChildren 2023-10-31 11:32:07 -04:00
Julian Lam
d7c6b3d60e refactor(socket.io): deprecate categories.setWatchState in favour of api.categories.setWatchState 2023-10-31 11:32:07 -04:00
Julian Lam
f1dbfaa283 chore(socket.io): deprecate categories.(isModerator|ignore|watch|getSelectCategories|getMoveCategories|getCategoriesByPrivilege) 2023-10-31 11:32:07 -04:00
Julian Lam
c442b6e662 refactor(socket.io): deprecate categories.getTopicCount in favour of api.categories.getTopicCount 2023-10-31 11:32:07 -04:00
Julian Lam
96046373da refactor(socket.io): deprecate categories.get in favour of api.categories.list 2023-10-31 11:32:07 -04:00
Julian Lam
52b78e83a8 refactor(socket.io): deprecate categories.getRecentReplies in favour of api.categories.getPosts 2023-10-31 11:32:07 -04:00
Misty Release Bot
8393113851 chore(i18n): fallback strings for new resources: nodebb.modules 2023-10-31 14:15:30 +00:00
Barış Soner Uşaklı
4c4f3ac983 feat: add direct message link (#12138)
* feat: add direct message link

/message/:mid
add /:index? to chat routes
add copy link to chat messages
add messageCount to each room object
add infinitescroll in both directions to chat

* fix more tests

* test: more text fixes

* test: fix tests

* remove async

* dont crash if element not in dom

clamp scrollToIndex values to 0, msgCount
2023-10-31 10:15:06 -04:00
Misty Release Bot
7a8c27bf90 Latest translations and fallbacks 2023-10-31 09:18:34 +00:00
renovate[bot]
91e45fa26d fix(deps): update dependency nodebb-theme-persona to v13.2.43 (#12140)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-30 22:41:07 -04:00
renovate[bot]
97016f4780 chore(deps): update commitlint monorepo to v18 (#12105)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-30 22:40:55 -04:00
renovate[bot]
a3452c8f39 fix(deps): update dependency nodebb-theme-harmony to v1.1.92 (#12131)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-30 22:40:34 -04:00
renovate[bot]
29a59b90a2 fix(deps): update dependency nodebb-theme-peace to v2.1.24 (#12139)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-30 22:40:14 -04:00
renovate[bot]
2337d64194 fix(deps): update dependency spdx-license-list to v6.8.0 2023-10-30 14:01:05 -04:00
renovate[bot]
cdb407194a fix(deps): update dependency nodebb-plugin-composer-default to v10.2.25 (#12136)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-30 10:48:44 -04:00
renovate[bot]
2fb3af3cfe fix(deps): update dependency cron to v3.1.6 (#12132)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-30 10:48:07 -04:00
renovate[bot]
6b28f1dc1a fix(deps): update dependency ace-builds to v1.31.1 (#12135)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-30 10:47:51 -04:00
Barış Soner Uşaklı
d3fb339c37 derp 2023-10-28 20:44:51 -04:00
Barış Soner Uşaklı
21c4779c93 Merge branch 'master' into develop 2023-10-28 13:42:14 -04:00
Barış Soner Uşaklı
46f6f9eff0 fix: thumb width 2023-10-28 13:42:06 -04:00
Misty Release Bot
3210ace6ae Latest translations and fallbacks 2023-10-28 09:18:17 +00:00
Barış Soner Uşaklı
87a859aa93 feat: closes #5584, setup winston to output to file
on upgrade
2023-10-27 19:27:00 -04:00
Julian Lam
022fa0e75f fix: don't count internal links towards link count when restricting new users from posting links 2023-10-26 11:18:23 -04:00
Barış Soner Uşaklı
4693f8bf1e Merge branch 'master' into develop 2023-10-26 11:15:53 -04:00
Barış Soner Uşaklı
1f8007476c feat: closes #12123, allow setting hh:mm for pin expiry
use locale for pin expiry and use short form
2023-10-26 11:14:58 -04:00
renovate[bot]
9bed7646d2 fix(deps): update dependency workerpool to v8 (#12121)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-26 10:24:10 -04:00
renovate[bot]
9e8a21167b chore(deps): update dependency sass-embedded to v1.69.5 (#12127)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-26 10:23:55 -04:00
renovate[bot]
b351c00a7d fix(deps): update dependency sass to v1.69.5 (#12128)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-26 10:23:47 -04:00
Barış Soner Uşaklı
6c7e614417 feat: batch.processSortedSet min/max (#12129)
* feat: batch.processSortedSet min/max

* test if this works
2023-10-26 10:23:27 -04:00
Barış Soner Uşaklı
668a355afe fix: closes #12126, fix language keys 2023-10-25 19:07:13 -04:00
Barış Soner Uşaklı
075cd598d1 fix: closes #12126, fix language keys 2023-10-25 19:06:29 -04:00
Barış Soner Uşaklı
23629e9025 Merge branch 'master' into develop 2023-10-25 15:53:54 -04:00
Barış Soner Uşaklı
b1b3dcb660 chore: up mentions 2023-10-25 15:53:41 -04:00
Barış Soner Uşaklı
e5a60dc857 fix: param 2023-10-25 13:40:15 -04:00
Barış Soner Uşaklı
dabc282dde refactor: move async call to parallel 2023-10-25 13:25:55 -04:00
Julian Lam
6a696c43a3 fix: handle public chat rooms too 2023-10-25 13:23:01 -04:00
Julian Lam
18c27d1ad3 fix: suppress chat message notifications for users who are known to be in the chat room (uid is present in the corresponding socket.io room) 2023-10-25 13:23:01 -04:00
Misty Release Bot
5d7c10f128 chore: update changelog for v3.5.0 2023-10-25 14:34:04 +00:00
Misty Release Bot
b17ee0f09e chore: incrementing version number - v3.5.0 2023-10-25 14:34:02 +00:00
Barış Soner Uşaklı
4b185d0464 Merge branch 'master' into develop 2023-10-25 10:22:45 -04:00
Barış Soner Uşaklı
8428cc8d51 chore: up persona 2023-10-25 09:26:41 -04:00
Barış Soner Uşaklı
bd9eebd7ec chore: up harmony 2023-10-24 19:14:42 -04:00
renovate[bot]
3e45788f00 fix(deps): update dependency cron to v3.1.4 (#12117)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-24 10:54:29 -04:00
Barış Soner Uşaklı
728d63f953 fix: closes #12115 , toggle hasmore as well 2023-10-24 10:52:33 -04:00
Misty Release Bot
7134265b5d Latest translations and fallbacks 2023-10-24 09:18:48 +00:00
renovate[bot]
762ad16168 chore(deps): update actions/setup-node action to v4 (#12114)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-23 16:07:58 -04:00
renovate[bot]
aba7eb0fad fix(deps): update dependency ace-builds to v1.31.0 (#12113)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-23 16:07:49 -04:00
Barış Soner Uşaklı
d401bf450b fix count 2023-10-23 11:09:41 -04:00
Barış Soner Uşaklı
8d1ae5c009 Merge branch 'develop' of https://github.com/NodeBB/NodeBB into develop 2023-10-23 10:31:28 -04:00
Barış Soner Uşaklı
2a833ea476 dont count drafts 2023-10-23 10:31:23 -04:00
Misty Release Bot
990bbd8cdc chore(i18n): fallback strings for new resources: nodebb.admin-extend-widgets 2023-10-23 14:15:11 +00:00
Barış Soner Uşaklı
2ca5192b8a feat: show # of widgets on templates
ability to hide drafts
2023-10-23 10:14:36 -04:00
renovate[bot]
2ae031edde chore(deps): update dependency eslint-plugin-import to v2.29.0 (#12112)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-23 09:26:31 -04:00
renovate[bot]
91d00979e8 fix(deps): update dependency nconf to v0.12.1 (#12111)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-23 09:26:19 -04:00
Barış Soner Uşaklı
b1ff93f85c refactor: get rid of util.promisify on async function 2023-10-22 16:15:28 -04:00
Barış Soner Uşaklı
574f95f5cc chore: up harmony 2023-10-22 09:57:52 -04:00
renovate[bot]
bb812937f7 chore(deps): update redis docker tag to v7.2.2 (#12097)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-22 09:57:22 -04:00
renovate[bot]
99c3c874e0 fix(deps): update dependency @fontsource/inter to v5.0.15 (#12108)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-22 09:56:33 -04:00
renovate[bot]
e546adaa56 fix(deps): update dependency nodemailer to v6.9.7 (#12109)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-22 09:56:24 -04:00
Barış Soner Uşaklı
2c996606ed chore: up harmony 2023-10-22 09:55:51 -04:00
Barış Soner Uşaklı
ff6bfeb87f refactor: fix comment 2023-10-21 10:06:49 -04:00
Barış Soner Uşaklı
2298dc0e3a Merge branch 'develop' of https://github.com/NodeBB/NodeBB into develop 2023-10-21 09:57:23 -04:00
Barış Soner Uşaklı
f619696b0e chore: up harmony 2023-10-21 09:57:17 -04:00
renovate[bot]
8acdd35500 chore(deps): update dependency eslint to v8.52.0 (#12106)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-21 08:49:43 -04:00
renovate[bot]
7302e76938 fix(deps): update dependency mongodb to v6.2.0 (#11965)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-20 12:04:26 -04:00
Barış Soner Uşaklı
0d2e075267 chore: up harmony 2023-10-20 11:25:19 -04:00
renovate[bot]
c9c6175a0b fix(deps): update dependency @fontsource/inter to v5.0.14 (#12103)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-20 11:23:29 -04:00
renovate[bot]
022e2a108a chore(deps): update commitlint monorepo to v17.8.1 (#12104)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-20 11:23:19 -04:00
renovate[bot]
bad9198e52 fix(deps): update dependency cron to v3.1.3 (#12100)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-20 11:23:10 -04:00
renovate[bot]
8549d7de79 chore(deps): update dependency lint-staged to v15.0.2 (#12099)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-20 11:22:55 -04:00
Misty Release Bot
ae6fbab706 Latest translations and fallbacks 2023-10-20 09:18:49 +00:00
Barış Soner Uşaklı
2955fdb5a0 feat: #12101, dont return rssFeedUrl if feeds are disabled 2023-10-19 09:35:59 -04:00
Barış Soner Uşaklı
7517069324 chore: up persona 2023-10-19 08:00:41 -04:00
Barış Soner Uşaklı
36fe90ddd7 chore: up themes 2023-10-19 07:57:24 -04:00
renovate[bot]
2adc96c242 fix(deps): update dependency sass to v1.69.4 (#12094)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-18 10:41:40 -04:00
renovate[bot]
f5f1679c9f chore(deps): update dependency sass-embedded to v1.69.4 (#12093)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-18 10:41:28 -04:00
Barış Soner Uşaklı
1739f5a9e7 fix: #10276, only move widgets if area doesn't exist
when changing a theme save all locations that have widgets in them, after restart go through these locations and if they don't exist anymore move those widgets to drafts
2023-10-18 10:37:11 -04:00
Misty Release Bot
45e6c91c1b Latest translations and fallbacks 2023-10-18 09:18:58 +00:00
Misty Release Bot
3cb6881cea chore(i18n): fallback strings for new resources: nodebb.admin-manage-privileges 2023-10-17 20:34:53 +00:00
Barış Soner Uşaklı
4d6a6ff547 chore: up themes 2023-10-17 13:25:50 -04:00
Misty Release Bot
67fec93d7b chore(i18n): fallback strings for new resources: nodebb.themes-harmony 2023-10-17 17:23:49 +00:00
Barış Soner Uşaklı
97a86ba46a feat: add sidebar setting lang key 2023-10-17 13:23:25 -04:00
renovate[bot]
94434125c3 fix(deps): update dependency esbuild to v0.19.5 (#12091)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-17 13:19:37 -04:00
Barış Soner Uşaklı
b398321a5e Chat with privileged (#12092)
* Update headers.js

Fixes X-Upstream-Hostname header for os hostnames with invalid characters

* Added missing period in allowed hostname chars

Allowed hostname chars should include A-Za-z0-9-. based on https://man7.org/linux/man-pages/man7/hostname.7.html

* feat: add chat:privileged global privilege

to only allow chatting with privileged users

* test: fix priv test

* test: one more fix

---------

Co-authored-by: chadjw <chad.warner@gmail.com>
2023-10-17 13:19:25 -04:00
Julian Lam
47910d708d fix(i18n): added rewards resource and fallbacks 2023-10-17 11:00:49 -04:00
Barış Soner Uşaklı
b6ae7459d9 Merge branch 'develop' of https://github.com/NodeBB/NodeBB into develop 2023-10-17 10:31:38 -04:00
Barış Soner Uşaklı
90e10b9ca6 test: add spec for new notif type 2023-10-17 10:31:36 -04:00
Misty Release Bot
ab8ab65aea Latest translations and fallbacks 2023-10-17 09:18:31 +00:00
Barış Soner Uşaklı
90210fe0c8 Merge branch 'develop' of https://github.com/NodeBB/NodeBB into develop 2023-10-16 19:21:55 -04:00
Barış Soner Uşaklı
35d9a78db1 chore: up rewards 2023-10-16 19:21:50 -04:00
Misty Release Bot
ed77a0b18c chore(i18n): fallback strings for new resources: nodebb.notifications 2023-10-16 23:18:41 +00:00
Barış Soner Uşaklı
9e9046bf65 feat: award notif filter 2023-10-16 19:18:17 -04:00
Barış Soner Uşaklı
c1ae879d90 fix: #12090, dont award disabled rewards 2023-10-16 19:17:52 -04:00
Barış Soner Uşaklı
347a43f4fe fix: rewards fixes
fix enabled/disabled button
sort rewards from oldest to newest
2023-10-16 19:02:42 -04:00
chadjw
0acb2fcfe4 Added missing period in allowed hostname chars
Allowed hostname chars should include A-Za-z0-9-. based on https://man7.org/linux/man-pages/man7/hostname.7.html
2023-10-02 11:27:11 -04:00
chadjw
53952041d1 Update headers.js
Fixes X-Upstream-Hostname header for os hostnames with invalid characters
2023-10-02 11:27:11 -04:00
841 changed files with 6294 additions and 1770 deletions

10
.dockerignore Normal file
View File

@@ -0,0 +1,10 @@
.*
logs
test
node_modules
commitlint.config.js
nodebb.bat
renovate.json
*.yml
*.md
Dockerfile

View File

@@ -18,3 +18,4 @@ logs/
.eslintrc
test/files
*.min.js
install/docker/

View File

@@ -52,10 +52,10 @@ jobs:
- name: Build and push Docker images
uses: docker/build-push-action@v5
with:
context: .
file: ./Dockerfile
push: true
tags: ${{ steps.meta.outputs.tags }}
platforms: linux/amd64,linux/arm64,linux/arm/v7
cache-from: type=gha
cache-to: type=gha,mode=max
context: .
file: ./Dockerfile
platforms: linux/amd64,linux/arm64,linux/arm/v7
push: true
tags: ${{ steps.meta.outputs.tags }}

View File

@@ -63,7 +63,7 @@ jobs:
- 5432:5432
redis:
image: 'redis:7.2.1'
image: 'redis:7.2.3'
# Set health checks to wait until redis has started
options: >-
--health-cmd "redis-cli ping"
@@ -86,7 +86,7 @@ jobs:
- run: cp install/package.json package.json
- name: Install Node
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node }}

4
.gitignore vendored
View File

@@ -69,4 +69,6 @@ package-lock.json
/package.json
*.mongodb
link-plugins.sh
test.sh
test.sh
.docker/

View File

@@ -3380,6 +3380,58 @@ trans.pl = public/language/pl/reset_password.json
trans.sl = public/language/sl/reset_password.json
trans.th = public/language/th/reset_password.json
[o:nodebb:p:nodebb:r:rewards]
file_filter = public/language/<lang>/rewards.json
source_file = public/language/en-GB/rewards.json
source_lang = en_GB
type = KEYVALUEJSON
trans.bg = public/language/bg/rewards.json
trans.fr = public/language/fr/rewards.json
trans.hr = public/language/hr/rewards.json
trans.hy = public/language/hy/rewards.json
trans.ja = public/language/ja/rewards.json
trans.pt_PT = public/language/pt-PT/rewards.json
trans.zh_CN = public/language/zh-CN/rewards.json
trans.sv = public/language/sv/rewards.json
trans.de = public/language/de/rewards.json
trans.fa_IR = public/language/fa-IR/rewards.json
trans.gl = public/language/gl/rewards.json
trans.hu = public/language/hu/rewards.json
trans.id = public/language/id/rewards.json
trans.rw = public/language/rw/rewards.json
trans.sc = public/language/sc/rewards.json
trans.vi = public/language/vi/rewards.json
trans.bn = public/language/bn/rewards.json
trans.he = public/language/he/rewards.json
trans.ro = public/language/ro/rewards.json
trans.sq_AL = public/language/sq-AL/rewards.json
trans.ar = public/language/ar/rewards.json
trans.cs = public/language/cs/rewards.json
trans.ko = public/language/ko/rewards.json
trans.ms = public/language/ms/rewards.json
trans.pt_BR = public/language/pt-BR/rewards.json
trans.sr = public/language/sr/rewards.json
trans.tr = public/language/tr/rewards.json
trans.ru = public/language/ru/rewards.json
trans.zh_TW = public/language/zh-TW/rewards.json
trans.da = public/language/da/rewards.json
trans.en@pirate = public/language/en-x-pirate/rewards.json
trans.en_US = public/language/en-US/rewards.json
trans.lt = public/language/lt/rewards.json
trans.lv = public/language/lv/rewards.json
trans.nb = public/language/nb/rewards.json
trans.sk = public/language/sk/rewards.json
trans.el = public/language/el/rewards.json
trans.es = public/language/es/rewards.json
trans.et = public/language/et/rewards.json
trans.uk = public/language/uk/rewards.json
trans.fi = public/language/fi/rewards.json
trans.it = public/language/it/rewards.json
trans.nl = public/language/nl/rewards.json
trans.pl = public/language/pl/rewards.json
trans.sl = public/language/sl/rewards.json
trans.th = public/language/th/rewards.json
[o:nodebb:p:nodebb:r:search]
file_filter = public/language/<lang>/search.json
source_file = public/language/en-GB/search.json

View File

@@ -1,3 +1,331 @@
#### v3.5.1 (2023-11-14)
##### Chores
* up mentions (b1b3dcb6)
* incrementing version number - v3.5.0 (d06fb4f0)
* update changelog for v3.5.0 (5d7c10f1)
* incrementing version number - v3.4.3 (5c984250)
* incrementing version number - v3.4.2 (3f0dac38)
* incrementing version number - v3.4.1 (01e69574)
* incrementing version number - v3.4.0 (fd9247c5)
* incrementing version number - v3.3.9 (5805e770)
* incrementing version number - v3.3.8 (a5603565)
* incrementing version number - v3.3.7 (b26f1744)
* incrementing version number - v3.3.6 (7fb38792)
* incrementing version number - v3.3.4 (a67f84ea)
* incrementing version number - v3.3.3 (f94d239b)
* incrementing version number - v3.3.2 (ec9dac97)
* incrementing version number - v3.3.1 (151cc68f)
* incrementing version number - v3.3.0 (fc1ad70f)
* incrementing version number - v3.2.3 (b06d3e63)
* incrementing version number - v3.2.2 (758ecfcd)
* incrementing version number - v3.2.1 (20145074)
* incrementing version number - v3.2.0 (9ecac38e)
* incrementing version number - v3.1.7 (0b4e81ab)
* incrementing version number - v3.1.6 (b3a3b130)
* incrementing version number - v3.1.5 (ec19343a)
* incrementing version number - v3.1.4 (2452783c)
* incrementing version number - v3.1.3 (3b4e9d3f)
* incrementing version number - v3.1.2 (40fa3489)
* incrementing version number - v3.1.1 (40250733)
* incrementing version number - v3.1.0 (0cb386bd)
* incrementing version number - v3.0.1 (26f6ea49)
* incrementing version number - v3.0.0 (224e08cd)
##### New Features
* closes #12123, allow setting hh:mm for pin expiry (1f800747)
##### Bug Fixes
* update ajaxifyTimer logic to only drop the request if the URL is the same as the one it's already processing (dcb0c4db)
* closes #12156, missing data for privilege tables (21e59538)
* thumb width (46f6f9ef)
* closes #12126, fix language keys (668a355a)
#### v3.5.0 (2023-10-25)
##### Chores
* up persona (8428cc8d)
* up harmony (bd9eebd7)
* up harmony (574f95f5)
* up harmony (2c996606)
* up harmony (f619696b)
* up harmony (0d2e0752)
* up persona (75170693)
* up themes (36fe90dd)
* up themes (4d6a6ff5)
* up rewards (35d9a78d)
* up harmony (e09b0332)
* up harmony (ad72f653)
* up persona (215ac672)
* up harmony (560403a9)
* up harmony (a5a33db7)
* up harmony (732af96f)
* up harmony (2af856d8)
* up harmony (05a9dd4e)
* up harmony (15a0a196)
* up deps for lang key change (96c9ccc4)
* up harmony (cddfdae0)
* up harmony (90692d95)
* up harmony (7e75cfaf)
* up harmony (a5c1b2a0)
* up harmony (3a108cab)
* up persona (cc5e9d9c)
* up harmony (769f879e)
* up themes (46530337)
* incrementing version number - v3.4.3 (5c984250)
* update changelog for v3.4.3 (08949be9)
* up themes (e0b29ba9)
* up emoji (00dd0cb3)
* up emoji (86de8cb2)
* up emoji (5081ff48)
* up emoji (805aaa5e)
* up emoji (7568be3c)
* up themes (b7d8fd1e)
* up themes (d0682905)
* incrementing version number - v3.4.2 (3f0dac38)
* up deps (f1021542)
* up composer (45b9803a)
* up composer (7e5d9b71)
* up harmony (13ea14f1)
* up engines (0f9f875b)
* incrementing version number - v3.4.1 (01e69574)
* up dbsearch (b4775b18)
* incrementing version number - v3.4.0 (fd9247c5)
* incrementing version number - v3.3.9 (5805e770)
* incrementing version number - v3.3.8 (a5603565)
* incrementing version number - v3.3.7 (b26f1744)
* incrementing version number - v3.3.6 (7fb38792)
* incrementing version number - v3.3.4 (a67f84ea)
* incrementing version number - v3.3.3 (f94d239b)
* incrementing version number - v3.3.2 (ec9dac97)
* incrementing version number - v3.3.1 (151cc68f)
* incrementing version number - v3.3.0 (fc1ad70f)
* incrementing version number - v3.2.3 (b06d3e63)
* incrementing version number - v3.2.2 (758ecfcd)
* incrementing version number - v3.2.1 (20145074)
* incrementing version number - v3.2.0 (9ecac38e)
* incrementing version number - v3.1.7 (0b4e81ab)
* incrementing version number - v3.1.6 (b3a3b130)
* incrementing version number - v3.1.5 (ec19343a)
* incrementing version number - v3.1.4 (2452783c)
* incrementing version number - v3.1.3 (3b4e9d3f)
* incrementing version number - v3.1.2 (40fa3489)
* incrementing version number - v3.1.1 (40250733)
* incrementing version number - v3.1.0 (0cb386bd)
* incrementing version number - v3.0.1 (26f6ea49)
* incrementing version number - v3.0.0 (224e08cd)
* **deps:**
* update actions/setup-node action to v4 (#12114) (762ad161)
* update dependency eslint-plugin-import to v2.29.0 (#12112) (2ae031ed)
* update redis docker tag to v7.2.2 (#12097) (bb812937)
* update dependency eslint to v8.52.0 (#12106) (8acdd355)
* update commitlint monorepo to v17.8.1 (#12104) (022e2a10)
* update dependency lint-staged to v15.0.2 (#12099) (8549d7de)
* update dependency sass-embedded to v1.69.4 (#12093) (f5f1679c)
* update dependency lint-staged to v15 (#12086) (d1cd625d)
* update commitlint monorepo to v17.8.0 (#12084) (225acb2e)
* update dependency sass-embedded to v1.69.2 (#12073) (9967ae6b)
* update dependency sass-embedded to v1.69.1 (#12071) (7fe72085)
* update dependency eslint to v8.51.0 (#12063) (6c01148e)
* update dependency @commitlint/cli to v17.7.2 (#12047) (d10a09a0)
* update dependency eslint to v8.50.0 (#12029) (65051066)
* update postgres docker tag to v16 (#12012) (6fa6f73b)
* update actions/checkout action to v4 (#11978) (b4233366)
* update docker/build-push-action action to v5 (#11997) (4ecfe40e)
* update docker/login-action action to v3 (#11998) (478f7c74)
* update docker/metadata-action action to v5 (#11999) (21b280d2)
* update docker/setup-buildx-action action to v3 (#12000) (95f7112a)
* update docker/setup-qemu-action action to v3 (#12001) (f286d7fa)
* update dependency sass-embedded to v1.67.0 (#12003) (b9d04e2f)
* update dependency eslint to v8.49.0 (#11993) (ceed4327)
* update coverallsapp/github-action action to v2.2.3 (#11988) (a473b515)
* update redis docker tag to v7.2.1 (#11987) (0b231fd3)
* **i18n:**
* fallback strings for new resources: nodebb.admin-extend-widgets (990bbd8c)
* fallback strings for new resources: nodebb.admin-manage-privileges (3cb6881c)
* fallback strings for new resources: nodebb.themes-harmony (67fec93d)
* fallback strings for new resources: nodebb.notifications (ed77a0b1)
* fallback strings for new resources: nodebb.admin-advanced-database (b517645f)
* fallback strings for new resources: nodebb.error, nodebb.flags (19cfd89f)
* fallback strings for new resources: nodebb.admin-extend-widgets (8b5f0334)
* fallback strings for new resources: nodebb.email (fc8a6b31)
* fallback strings for new resources: nodebb.admin-settings-post (8cb2c270)
* fallback strings for new resources: nodebb.email, nodebb.notifications (a71378cb)
* fallback strings for new resources: nodebb.topic (8df56d60)
* fallback strings for new resources: nodebb.notifications, nodebb.pages, nodebb.tags, nodebb.user (2627e974)
* fallback strings for new resources: nodebb.modules (ec3ab986)
* fallback strings for new resources: nodebb.admin-settings-chat (968ee0c7)
##### New Features
* show # of widgets on templates (2ca5192b)
* #12101, dont return rssFeedUrl if feeds are disabled (2955fdb5)
* add sidebar setting lang key (97a86ba4)
* award notif filter (9e9046bf)
* update to mongodb 6.1 (#12087) (e542b27d)
* add category canonical url (f96b0b7a)
* update error handler to check for pseudo-standard no-* prefix and route to 404 handler instead (db5b0f47)
* flag rescinding logic + api method (e012edea)
* backend methods for rescinding a report, supplemental adds and removing a report now adds to the flag history (bc0f362c)
* use homePageTitle in breadcrumbs if its set (1a745201)
* 3 column layout for widgets (db9279eb)
* update all language keys to use - instead of _ (#12059) (844cb91b)
* closes #12052, ability to disable stale topic warning (f8a3aceb)
* add .has() method in cache/ttl lib (d478de16)
* upgrade chartjs to 4.x (fe192b92)
* closes #11553, add forked from message like merged into (be14f6cc)
* add workerpool for password, closes #10326 (#12038) (8b25aff7)
* add new hook action:chat.onMessagesAddedToDom (a7517d88)
* add composerActions for chat rooms (d906097a)
* add heading strings (8c977f4c)
* introduce new ACP setting for newbie chat message delay, defaults to 2 minutes (223e7656)
##### Bug Fixes
* **deps:**
* update dependency cron to v3.1.4 (#12117) (3e45788f)
* update dependency ace-builds to v1.31.0 (#12113) (aba7eb0f)
* update dependency nconf to v0.12.1 (#12111) (91d00979)
* update dependency @fontsource/inter to v5.0.15 (#12108) (99c3c874)
* update dependency nodemailer to v6.9.7 (#12109) (e546adaa)
* update dependency mongodb to v6.2.0 (#11965) (7302e769)
* update dependency @fontsource/inter to v5.0.14 (#12103) (c9c6175a)
* update dependency cron to v3.1.3 (#12100) (bad9198e)
* update dependency sass to v1.69.4 (#12094) (2adc96c2)
* update dependency esbuild to v0.19.5 (#12091) (94434125)
* update dependency webpack-merge to v5.10.0 (#12088) (d45f506f)
* update dependency webpack to v5.89.0 (#12083) (1ebdfaea)
* update dependency connect-mongo to v5.1.0 (#12085) (212a3415)
* update dependency ace-builds to v1.30.0 (#12082) (8456682c)
* update dependency cron to v3.1.1 (#12078) (24d6b73f)
* update dependency commander to v11.1.0 (#12079) (7d38e9ed)
* update dependency sass to v1.69.3 (#12076) (193e54e2)
* update dependency workerpool to v6.5.1 (#12077) (14eede15)
* update dependency sass to v1.69.2 (#12074) (0dd4cedf)
* update dependency nodemailer to v6.9.6 (#12068) (6c59d72a)
* update dependency winston to v3.11.0 (#12064) (fdf279a3)
* update dependency cron to v3 (#12049) (f2fad2d3)
* update dependency @fontsource/inter to v5.0.13 (#12065) (512ac525)
* update dependency ace-builds to v1.29.0 (#12067) (b04fbf89)
* update dependency sass to v1.69.1 (#12070) (a5d2871c)
* update dependency @fontsource/inter to v5.0.12 (#12053) (1033218c)
* update dependency sass to v1.69.0 (#12060) (ecb847fc)
* update dependency nodebb-plugin-2factor to v7.4.0 (6c5c1afd)
* update dependency nodebb-plugin-ntfy to v1.7.3 (98e58252)
* update dependency postcss to v8.4.31 (#12048) (eaa7aff3)
* update dependency esbuild to v0.19.4 (#12046) (4289230f)
* update dependency rimraf to v5.0.5 (#12036) (3549fbdd)
* update dependency nodebb-theme-persona to v13.2.34 (#12043) (339481ca)
* update dependency nodebb-plugin-spam-be-gone to v2.2.0 (#12039) (84648db2)
* update dependency cron to v2.4.4 (#12033) (c1f873b3)
* update dependency ace-builds to v1.28.0 (#12028) (3262923a)
* update dependency nodebb-plugin-2factor to v7.3.1 (#12026) (d29ea026)
* update dependency nodebb-plugin-ntfy to v1.7.2 (#12024) (360d3257)
* update dependency sass to v1.68.0 (#12023) (be600a84)
* update dependency autoprefixer to v10.4.16 (#12022) (f6b6e6c7)
* update dependency nodebb-plugin-2factor to v7.3.0 (#12021) (639fb33f)
* update dependency bootswatch to v5.3.2 (#12020) (5dc368a9)
* update dependency ace-builds to v1.27.0 (#12019) (f73ed6dd)
* update dependency nodebb-plugin-emoji to v5.1.10 (#12018) (16fe4fde)
* update dependency sharp to v0.32.6 (#12016) (f838498b)
* update dependency postcss to v8.4.30 (#12015) (7dbc6668)
* update dependency rtlcss to v4.1.1 (#12014) (ba894a04)
* update dependency nodebb-plugin-ntfy to v1.7.1 (#12011) (4e834a2e)
* update dependency ace-builds to v1.26.0 (#12010) (5a003acb)
* update dependency mongodb to v5.9.0 (#12008) (5bfcd34c)
* update dependency cropperjs to v1.6.1 (#12013) (9f5362c8)
* update dependency ace-builds to v1.25.1 (#12006) (1558d7a2)
* update dependency bootstrap to v5.3.2 (#12005) (44d120df)
* update dependency esbuild to v0.19.3 (#12002) (ef41b8bc)
* update dependency sass to v1.67.0 (#12004) (d2e49472)
* update dependency ace-builds to v1.24.2 (#11991) (447b7954)
* closes #12115 , toggle hasmore as well (728d63f9)
* #10276, only move widgets if area doesn't exist (1739f5a9)
* #12090, dont award disabled rewards (c1ae879d)
* rewards fixes (347a43f4)
* use template name instead of component (f6120ebb)
* incorrect data passed to api.flags.get (cc8fe435)
* missing body classes on error pages (54a810dd)
* edit notification key (bda37ac2)
* lang key (bffa7880)
* #12062, relax blockquote selector (99bdad80)
* allowing forward slash in language keys, temporarily allowing upper case characters (d25a24fc)
* rename filter-perPage to filter-per-page (872ddc26)
* upgrade script date (6f5a965a)
* add upgrade script for notifications (6c3ff86b)
* lang key, type has _, lang keys changed to use - (1072b38b)
* #12017, unreliable forum updated messaging (715bdac3)
* #12057, allow gmods to change user email (344ece8d)
* only show emailChanged alert for self (56794cf8)
* closes #12054 handle negative start/stop in psql (0f4e6648)
* make socket errors and static hook errors less noisy (2a1be01a)
* restore notificationSendDelay back to 60 (5fe1ad95)
* breaking tests (857433d1)
* #12044, only load notifications when opening dropdown (dbd0a715)
* change `notificationSendDelay` to default to 10 seconds instead of 60, #11445 (cf50b0fe)
* clear interstitial data if there are no additional interstitials on abort (bdc221eb)
* #11808, reduce zeal of middleware.registrationComplete (74902e4a)
* pass in missing uid (d50473df)
* #12025, validity checking on user-provided toPid value (fe42fd4e)
* #12032, truncate long category names (b518e036)
* field name importance (8041f4d1)
* closes #12007, parseInt notification fields (b8e43143)
* on shutdown clear locks (615b2f0f)
* remaining text, when sending with send button (6553e454)
* nodebb/nodebb-plugin-link-preview#18, remove sup from allowedTags, add source + source attributes (f09f4105)
* use isPrivileged instead of isAdmin (b9c3cdb6)
* failing test due to increased chat message delay (ff07fc44)
* better labels in ACP chat settings, #11983 (88dd21e2)
* bump chat message delay by 10x to 2000ms, re: #11983 (9b0b33cc)
* #11981, post immediately when canceling scheduling (aa797f23)
* **i18n:**
* added rewards resource and fallbacks (47910d70)
* fallbacks for new language keys (2b3d2055)
* push fallbacks for modules resource (9b384b98)
##### Other Changes
* fix quotes (b8705380)
* fix lint (3b46ad42)
##### Performance Improvements
* no need to count on every call (130815c7)
##### Refactors
* get rid of util.promisify on async function (b1ff93f8)
* fix comment (ff6bfeb8)
* get rid of async.series (c7c6e8ff)
* shorter timeago (6149252b)
* shorter code for pinned topics (ff952e59)
* change private message email subject (f9fb3c3a)
* use helpers.isAllowedTo (47c16e90)
* add email notification delay to chat message notifications (a47b4805)
* remove chat message notification queue, implement merge IDs for chat message notifications, so they can be grouped together (3ba371f6)
* update buildCategoryLabel (82ea9192)
* use esm only import used chart types/plugins (56b31674)
* get rid of exists db call, use promise.parallel (8895b152)
* get rid of some async.waterfall/series/parallel calls (e452c097)
* get rid of async.waterfall/series (8bc2ef22)
* reduce socket.emits for typing (4d1b8e76)
##### Tests
* add spec for new notif type (90e10b9c)
* worked with chatgpt to restrict the i18n test a bit to match requirements (99364427)
* fix flag tests (6606d96a)
* added test cases for .addReport and .rescindReport() (da239059)
* added i18n test to enforce kebab casing (69dde2b9)
* add reverse list test (66be9826)
* additional tests for #12034 (d7e9f324)
* added tests for new logic paths (toPid validation on post creation) (ce740301)
* 💥 i18n tests (8202c555)
#### v3.4.3 (2023-09-27)
##### Chores

View File

@@ -13,29 +13,39 @@ USER node
RUN npm install --omit=dev
FROM node:lts as rebuild
FROM node:lts
ARG BUILDPLATFORM
ARG TARGETPLATFORM
RUN mkdir -p /usr/src/app && \
chown -R node:node /usr/src/app
WORKDIR /usr/src/app
RUN mkdir -p /usr/src/build && \
chown -R node:node /usr/src/build
COPY --from=npm /usr/src/build /usr/src/build
RUN if [ $BUILDPLATFORM != $TARGETPLATFORM ]; then \
npm rebuild && \
npm cache clean --force; fi
FROM node:lts-slim as run
ARG NODE_ENV
ENV NODE_ENV $NODE_ENV
COPY --chown=node:node --from=npm /usr/src/build /usr/src/app
USER node
RUN npm rebuild && \
npm cache clean --force
COPY --chown=node:node . /usr/src/app
ENV NODE_ENV=production \
ENV NODE_ENV=$NODE_ENV \
daemon=false \
silent=false
EXPOSE 4567
RUN mkdir -p /usr/src/app && \
chown -R node:node /usr/src/app
CMD test -n "${SETUP}" && ./nodebb setup || node ./nodebb build; node ./nodebb start
COPY --chown=node:node --from=rebuild /usr/src/build /usr/src/app
WORKDIR /usr/src/app
USER node
COPY --chown=node:node . /usr/src/app
EXPOSE 4567
VOLUME ["/usr/src/app/node_modules", "/usr/src/app/build", "/usr/src/app/public/uploads", "/opt/config"]
ENTRYPOINT ["./install/docker/entrypoint.sh"]

View File

@@ -46,7 +46,8 @@ NodeBB requires the following software to be installed:
## Installation
[Please refer to platform-specific installation documentation](https://docs.nodebb.org/installing/os)
[Please refer to platform-specific installation documentation](https://docs.nodebb.org/installing/os).
If installing via the cloud (or using Docker), [please see cloud-based installation documentation](https://docs.nodebb.org/installing/cloud/).
## Securing NodeBB
@@ -59,6 +60,7 @@ It is important to ensure that your NodeBB and database servers are secured. Bea
2. Use `iptables` to secure your server from unintended open ports. In Ubuntu, `ufw` provides a friendlier interface to working with `iptables`.
* e.g. If your NodeBB is proxied, no ports should be open except 80 (and possibly 22, for SSH access)
## Upgrading NodeBB
Detailed upgrade instructions are listed in [Upgrading NodeBB](https://docs.nodebb.org/configuring/upgrade/)

View File

@@ -1,24 +1,55 @@
version: '3.5'
version: '3.8'
services:
node:
nodebb:
build: .
restart: unless-stopped
depends_on:
- db
expose:
- 4567 # use a reverse proxy like Traefik
db:
image: mongo:bionic
ports:
- "4567:4567/tcp" # comment this out if you don't want to expose NodeBB to the host, or change the first number to any port you want
# uncomment if you want to use another container as a reverse proxy
# expose:
# - 4567
volumes:
- ./.docker/build:/usr/src/app/build
- ./.docker/public/uploads:/usr/src/app/public/uploads
- ./.docker:/opt/config
- ./install/docker/setup.json:/usr/src/app/setup.json
mongo:
image: "mongo:7-jammy"
restart: unless-stopped
expose:
- 27017
- "27017"
environment:
MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: root
MONGO_INITDB_ROOT_USERNAME: nodebb
MONGO_INITDB_ROOT_PASSWORD: nodebb
MONGO_INITDB_DATABASE: nodebb
volumes:
- mongo:/data/db
volumes:
mongo:
- ./.docker/database/mongo/config:/etc/mongo
- ./.docker/database/mongo/data:/data/db
- ./install/docker/mongodb-user-init.js:/docker-entrypoint-initdb.d/user-init.js
profiles:
- mongo
postgres:
image: postgres:16.1-alpine
restart: unless-stopped
expose:
- "5432"
environment:
POSTGRES_USER: nodebb
POSTGRES_PASSWORD: nodebb
POSTGRES_DB: nodebb
volumes:
- ./.docker/database/postgresql/data:/var/lib/postgresql/data
profiles:
- postgres
redis:
image: redis:7.2.3-alpine
restart: unless-stopped
command: ["redis-server", "--appendonly", "yes", "--loglevel", "warning"]
# command: ["redis-server", "--save", "60", "1", "--loglevel", "warning"] # uncomment if you want to use snapshotting instead of AOF
expose:
- "6379"
volumes:
- ./.docker/database/redis:/data
profiles:
- redis

View File

@@ -23,10 +23,11 @@
"chatMessageDelay": 2000,
"newbieChatMessageDelay": 120000,
"notificationSendDelay": 60,
"newbiePostDelayThreshold": 3,
"newbieReputationThreshold": 3,
"postQueue": 0,
"postQueueReputationThreshold": 0,
"groupsExemptFromPostQueue": ["administrators", "Global Moderators"],
"groupsExemptFromNewUserRestrictions": ["administrators", "Global Moderators"],
"groupsExemptFromMaintenanceMode": ["administrators", "Global Moderators"],
"minimumPostLength": 8,
"maximumPostLength": 32767,

46
install/docker/entrypoint.sh Executable file
View File

@@ -0,0 +1,46 @@
#!/bin/bash
export CONFIG_DIR="${CONFIG_DIR:-/opt/config}"
export CONFIG=$CONFIG_DIR/config.json
export FORCE_BUILD_BEFORE_START="${FORCE_BUILD_BEFORE_START:-false}"
# Supported verbs: install (web install), setup (interactive CLI session). Default: web install
# TODO: constraint it using a hash set (or hash table)
export NODEBB_INIT_VERB="${NODEBB_INIT_VERB:-install}"
# Setup variable for backward compatibility, default: <empty>
export SETUP="${SETUP:-}"
mkdir -p $CONFIG_DIR
# if the folder is mounted as a volume this can fail, the check below is to ensure there is still write access
chmod -fR 760 $CONFIG_DIR 2> /dev/null
if [[ ! -w $CONFIG_DIR ]]; then
echo "panic: no write permission for $CONFIG_DIR"
exit 1
fi
[[ -f $CONFIG_DIR/package.json ]] || cp install/package.json $CONFIG_DIR/package.json
[[ -f $CONFIG_DIR/package-lock.json ]] || touch $CONFIG_DIR/package-lock.json
ln -fs $CONFIG_DIR/package.json package.json
ln -fs $CONFIG_DIR/package-lock.json package-lock.json
npm install --omit=dev
if [[ -n $SETUP ]]; then
echo "Setup environmental variable detected"
echo "Starting setup session"
./nodebb setup --config=$CONFIG
elif [ -f $CONFIG ]; then
echo "Config file exist at $CONFIG, assuming it is a valid config"
echo "Starting forum"
if [ "$FORCE_BUILD_BEFORE_START" = true ]; then
./nodebb build --config=$CONFIG
fi
./nodebb start --config=$CONFIG
else
echo "Config file not found at $CONFIG"
echo "Starting installation session"
./nodebb "${NODEBB_INIT_VERB}" --config=$CONFIG
fi

View File

@@ -0,0 +1 @@
db.createUser( { user: 'nodebb', pwd: 'nodebb', roles: [ { role: 'readWrite', db: 'nodebb' }, { role: 'clusterMonitor', db: 'admin' } ] } )

21
install/docker/setup.json Normal file
View File

@@ -0,0 +1,21 @@
{
"mongo": {
"host": "mongo",
"port": 27017,
"database": "nodebb",
"username": "nodebb",
"password": "nodebb"
},
"redis": {
"host": "redis",
"port": 6379,
"database": 0
},
"postgres": {
"host": "postgres",
"port": 5432,
"database": "nodebb",
"username": "nodebb",
"password": "nodebb"
}
}

View File

@@ -2,7 +2,7 @@
"name": "nodebb",
"license": "GPL-3.0",
"description": "NodeBB Forum",
"version": "3.4.3",
"version": "3.5.1",
"homepage": "https://www.nodebb.org",
"repository": {
"type": "git",
@@ -29,14 +29,14 @@
},
"dependencies": {
"@adactive/bootstrap-tagsinput": "0.8.2",
"@fontsource/inter": "5.0.13",
"@fontsource/inter": "5.0.15",
"@fontsource/poppins": "5.0.8",
"@fortawesome/fontawesome-free": "6.4.2",
"@isaacs/ttlcache": "1.4.1",
"@popperjs/core": "2.11.8",
"ace-builds": "1.30.0",
"ace-builds": "1.31.2",
"archiver": "6.0.1",
"async": "3.2.4",
"async": "3.2.5",
"autoprefixer": "10.4.16",
"bcryptjs": "2.4.3",
"benchpressjs": "2.5.1",
@@ -55,22 +55,22 @@
"connect-flash": "0.1.1",
"connect-mongo": "5.1.0",
"connect-multiparty": "2.2.0",
"connect-pg-simple": "9.0.0",
"connect-pg-simple": "9.0.1",
"connect-redis": "7.1.0",
"cookie-parser": "1.4.6",
"cron": "3.1.1",
"cron": "3.1.6",
"cropperjs": "1.6.1",
"csrf-sync": "4.0.1",
"daemon": "1.1.0",
"diff": "5.1.0",
"esbuild": "0.19.4",
"esbuild": "0.19.5",
"express": "4.18.2",
"express-session": "1.17.3",
"express-useragent": "1.0.15",
"file-loader": "6.2.0",
"fs-extra": "11.1.1",
"graceful-fs": "4.2.11",
"helmet": "7.0.0",
"helmet": "7.1.0",
"html-to-text": "9.0.5",
"imagesloaded": "5.0.0",
"ipaddr.js": "2.1.0",
@@ -84,30 +84,30 @@
"jsonwebtoken": "9.0.2",
"lodash": "4.17.21",
"logrotate-stream": "0.2.9",
"lru-cache": "10.0.1",
"lru-cache": "10.0.2",
"mime": "3.0.0",
"mkdirp": "3.0.1",
"mongodb": "6.1.0",
"mongodb": "6.3.0",
"morgan": "1.10.0",
"mousetrap": "1.6.5",
"multiparty": "4.2.3",
"nconf": "0.12.0",
"nconf": "0.12.1",
"nodebb-plugin-2factor": "7.4.0",
"nodebb-plugin-composer-default": "10.2.24",
"nodebb-plugin-dbsearch": "6.2.2",
"nodebb-plugin-composer-default": "10.2.27",
"nodebb-plugin-dbsearch": "6.2.3",
"nodebb-plugin-emoji": "5.1.13",
"nodebb-plugin-emoji-android": "4.0.0",
"nodebb-plugin-markdown": "12.2.5",
"nodebb-plugin-mentions": "4.3.6",
"nodebb-plugin-mentions": "4.3.7",
"nodebb-plugin-ntfy": "1.7.3",
"nodebb-plugin-spam-be-gone": "2.2.0",
"nodebb-rewards-essentials": "0.2.3",
"nodebb-theme-harmony": "1.1.84",
"nodebb-theme-lavender": "7.1.4",
"nodebb-theme-peace": "2.1.22",
"nodebb-theme-persona": "13.2.38",
"nodebb-rewards-essentials": "1.0.0",
"nodebb-theme-harmony": "1.1.99",
"nodebb-theme-lavender": "7.1.5",
"nodebb-theme-peace": "2.1.25",
"nodebb-theme-persona": "13.2.47",
"nodebb-widget-essentials": "7.0.14",
"nodemailer": "6.9.6",
"nodemailer": "6.9.7",
"nprogress": "0.2.0",
"passport": "0.6.0",
"passport-http-bearer": "1.0.1",
@@ -125,7 +125,7 @@
"rss": "1.2.2",
"rtlcss": "4.1.1",
"sanitize-html": "2.11.0",
"sass": "1.69.3",
"sass": "1.69.5",
"semver": "7.5.4",
"serve-favicon": "2.5.0",
"sharp": "0.32.6",
@@ -134,7 +134,7 @@
"socket.io-client": "4.7.2",
"@socket.io/redis-adapter": "8.2.1",
"sortablejs": "1.15.0",
"spdx-license-list": "6.7.0",
"spdx-license-list": "6.8.0",
"spider-detector": "2.0.1",
"terser-webpack-plugin": "5.3.9",
"textcomplete": "0.18.2",
@@ -146,7 +146,7 @@
"webpack": "5.89.0",
"webpack-merge": "5.10.0",
"winston": "3.11.0",
"workerpool": "6.5.1",
"workerpool": "8.0.0",
"xml": "1.0.1",
"xregexp": "5.1.1",
"yargs": "17.7.2",
@@ -154,17 +154,17 @@
},
"devDependencies": {
"@apidevtools/swagger-parser": "10.1.0",
"@commitlint/cli": "17.8.0",
"@commitlint/config-angular": "17.8.0",
"@commitlint/cli": "18.4.2",
"@commitlint/config-angular": "18.4.2",
"coveralls": "3.1.1",
"eslint": "8.51.0",
"eslint": "8.54.0",
"eslint-config-nodebb": "0.2.1",
"eslint-plugin-import": "2.28.1",
"eslint-plugin-import": "2.29.0",
"grunt": "1.6.1",
"grunt-contrib-watch": "1.1.0",
"husky": "8.0.3",
"jsdom": "22.1.0",
"lint-staged": "15.0.1",
"lint-staged": "15.1.0",
"mocha": "10.2.0",
"mocha-lcov-reporter": "1.3.0",
"mockdate": "3.0.5",
@@ -172,7 +172,7 @@
"smtp-server": "3.13.0"
},
"optionalDependencies": {
"sass-embedded": "1.69.2"
"sass-embedded": "1.69.5"
},
"resolutions": {
"*/jquery": "3.7.1"
@@ -195,4 +195,4 @@
"url": "https://github.com/barisusakli"
}
]
}
}

View File

@@ -174,6 +174,8 @@ function install(req, res) {
const database = nconf.get('database') || req.body.database || 'mongo';
const setupEnvVars = {
...process.env,
CONFIG: nconf.get('config'),
NODEBB_CONFIG: nconf.get('config'),
NODEBB_URL: nconf.get('url') || req.body.url || (`${req.protocol}://${req.get('host')}`),
NODEBB_PORT: nconf.get('port') || 4567,
NODEBB_ADMIN_USERNAME: nconf.get('admin:username') || req.body['admin:username'],

View File

@@ -29,5 +29,7 @@
"hide-from-groups": "Hide from groups",
"start-date": "Start date",
"end-date": "End date",
"hide-on-mobile": "Hide on mobile"
"hide-on-mobile": "Hide on mobile",
"hide-drafts": "Hide drafts",
"show-drafts": "Show drafts"
}

View File

@@ -8,6 +8,7 @@
"edit-privileges": "Edit Privileges",
"select-clear-all": "Select/Clear All",
"chat": "Chat",
"chat-with-privileged": "Chat with Privileged",
"upload-images": "Upload Images",
"upload-files": "Upload Files",
"signature": "Signature",

View File

@@ -8,7 +8,6 @@
"max-chat-room-name-length": "Maximum length of chat room names",
"max-room-size": "Maximum number of users in chat rooms",
"delay": "Time between chat messages (ms)",
"newbieDelay": "... for new users (ms)",
"notification-delay": "Notification delay for chat messages",
"notification-delay-help": "Additional messages sent between this time are collated, and the user is notified once per delay period. Set this to 0 to disable the delay.",
"restrictions.seconds-edit-after": "Number of seconds a chat message will remain editable.",

View File

@@ -10,7 +10,6 @@
"length": "Post Length",
"post-queue": "Post Queue",
"restrictions": "Posting Restrictions",
"restrictions-new": "New User Restrictions",
"restrictions.post-queue": "Enable post queue",
"restrictions.post-queue-rep-threshold": "Reputation required to bypass post queue",
"restrictions.groups-exempt-from-post-queue": "Select groups that should be exempt from the post queue",
@@ -18,9 +17,6 @@
"restrictions.post-queue-help": "Enabling post queue will put the posts of new users in a queue for approval",
"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.seconds-between-new": "Seconds between posts for new users",
"restrictions.rep-threshold": "Reputation threshold before these restrictions are lifted",
"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)",

View File

@@ -79,7 +79,14 @@
"follow-replied-topics": "Follow topics that you reply to",
"default-notification-settings": "Default notification settings",
"categoryWatchState": "Default category watch state",
"categoryWatchState.watching": "Watching",
"categoryWatchState.tracking": "Tracking",
"categoryWatchState.notwatching": "Not Watching",
"categoryWatchState.ignoring": "Ignoring"
"categoryWatchState.ignoring": "Ignoring",
"restrictions-new": "New User Restrictions",
"restrictions.rep-threshold": "Reputation threshold before these restrictions are lifted",
"restrictions.seconds-between-new": "Seconds between posts for new users",
"restrictions.seconds-before-new": "Seconds before a new user can make their first post",
"restrictions.seconds-edit-after-new": "Number of seconds a post remains editable for new users (set to 0 to disable)",
"restrictions.milliseconds-between-messages": "Time between chat messages for new users (ms)",
"restrictions.groups-exempt-from-new-user-restrictions": "Select groups that should be exempt from the new user restrictions"
}

View File

@@ -10,12 +10,15 @@
"watch": "تابع",
"ignore": "تجاهل",
"watching": "متابع",
"tracking": "Tracking",
"not-watching": "لست متابع",
"ignoring": "متجاهل",
"watching.description": "أظهر المواضيع في الغير مقروء و الحديث",
"watching.description": "Notify me of new topics.<br/>Show topics in unread & recent",
"tracking.description": "Shows topics in unread & recent",
"not-watching.description": "Do not show topics in unread, show in recent",
"ignoring.description": "Do not show topics in unread and recent",
"ignoring.description": "Do not show topics in unread & recent",
"watching.message": "You are now watching updates from this category and all subcategories",
"tracking.message": "You are now tracking updates from this category and all subcategories",
"notwatching.message": "You are not watching updates from this category and all subcategories",
"ignoring.message": "You are now ignoring updates from this category and all subcategories",
"watched-categories": "الأقسام المُتابعة",

View File

@@ -91,6 +91,7 @@
"category-not-selected": "Category not selected.",
"too-many-posts": "يسمح لك بالنشر مرة كل %1 ثانية - يرجى الإنتظار قبل النشر مجدداً",
"too-many-posts-newbie": "As a new user, you can only post once every %1 second(s) until you have earned %2 reputation - please wait before posting again",
"too-many-posts-newbie-minutes": "As a new user, you can only post once every %1 minute(s) until you have earned %2 reputation - please wait before posting again",
"already-posting": "You are already posting",
"tag-too-short": "Please enter a longer tag. Tags should contain at least %1 character(s)",
"tag-too-long": "Please enter a shorter tag. Tags can't be longer than %1 character(s)",

View File

@@ -68,6 +68,8 @@
"chat.in-room": "In this room",
"chat.kick": "Kick",
"chat.show-ip": "Show IP",
"chat.copy-text": "Copy Text",
"chat.copy-link": "Copy Link",
"chat.owner": "Room Owner",
"chat.grant-rescind-ownership": "Grant/Rescind Ownership",
"chat.system.user-join": "%1 has joined the room <span class=\"timeago\" title=\"%2\"></span>",

View File

@@ -13,12 +13,14 @@
"all": "الكل",
"topics": "مواضيع",
"tags": "Tags",
"categories": "Categories",
"replies": "ردود",
"chat": "محادثات",
"group-chat": "Group Chats",
"public-chat": "Public Chats",
"follows": "متابعون",
"upvote": "الموافقين",
"awards": "Awards",
"new-flags": "New Flags",
"my-flags": "Flags assigned to me",
"bans": "الحظر",
@@ -54,6 +56,7 @@
"user-posted-topic-with-tag-dual": "<strong>%1</strong> has posted a new topic with tags <strong>%2</strong> and <strong>%3</strong>",
"user-posted-topic-with-tag-triple": "<strong>%1</strong> has posted a new topic with tags <strong>%2</strong>, <strong>%3</strong> and <strong>%4</strong>",
"user-posted-topic-with-tag-multiple": "<strong>%1</strong> has posted a new topic with tags <strong>%2</strong>",
"user-posted-topic-in-category": "<strong>%1</strong> has posted a new topic in <strong>%2</strong>",
"user-started-following-you": "<strong>%1</strong> صار يتابعك.",
"user-started-following-you-dual": "<strong>%1</strong> and <strong>%2</strong> started following you.",
"user-started-following-you-triple": "<strong>%1</strong>, <strong>%2</strong> and <strong>%3</strong> started following you.",
@@ -80,6 +83,7 @@
"notificationType-upvote": "عندما يوافقك احدهم على منشورك",
"notificationType-new-topic": "When someone you follow posts a topic",
"notificationType-new-topic-with-tag": "When a topic is posted with a tag you follow",
"notificationType-new-topic-in-category": "When a topic is posted in a category you are watching",
"notificationType-new-reply": "When a new reply is posted in a topic you are watching",
"notificationType-post-edit": "When a post is edited in a topic you are watching",
"notificationType-follow": "When someone starts following you",
@@ -92,5 +96,6 @@
"notificationType-new-register": "When someone gets added to registration queue",
"notificationType-post-queue": "When a new post is queued",
"notificationType-new-post-flag": "When a post is flagged",
"notificationType-new-user-flag": "When a user is flagged"
"notificationType-new-user-flag": "When a user is flagged",
"notificationType-new-reward": "When you earn a new reward"
}

View File

@@ -3,8 +3,10 @@
"post-queue": "Post Queue",
"no-queued-posts": "There are no posts in the post queue.",
"no-single-post": "The topic or post you are looking for is no longer in the queue. It has likely been approved or deleted already.",
"enabling-help": "To enable this feature, go to <a href=\"%1\">Settings &rarr; Post &rarr; Post Queue</a> and enable <strong>Post Queue</strong>.",
"enabling-help": "The post queue is currently <strong>disabled</strong>. To enable this feature, go to <a href=\"%1\">Settings &rarr; Post &rarr; Post Queue</a> and enable <strong>Post Queue</strong>.",
"back-to-list": "Back to Post Queue",
"public-intro": "If you have any queued posts, they will be shown here.",
"public-description": "This forum is configured to automatically queue posts from new accounts, pending moderator approval.<br />If you have queued posts awaiting approval, you will be able to see them here.",
"user": "User",
"when": "When",
"category": "Category",

View File

@@ -0,0 +1,10 @@
{
"awarded-x-reputation": "You have been awarded <strong>%1</strong> reputation",
"awarded-group-membership": "You have been added to the group <strong>%1</strong>",
"essentials/user.reputation-conditional-value": "<span class=\"text-xs\">(Reputation %1 %2)</span>",
"essentials/user.postcount-conditional-value": "<span class=\"text-xs\">(Post Count %1 %2)</span>",
"essentials/user.lastonline-conditional-value": "<span class=\"text-xs\">(Last Online %1 %2)</span>",
"essentials/user.joindate-conditional-value": "<span class=\"text-xs\">(Join Date %1 %2)</span>",
"essentials/user.daysregistered-conditional-value": "<span class=\"text-xs\">(Days Registered %1 %2)</span>"
}

View File

@@ -6,5 +6,7 @@
"sign-in-with-google": "تسجيل الدخول باستخدام قوقل",
"sign-up-with-google": "التسجيل باستخدام قوقل",
"log-in-with-facebook": "تسجيل الدخول باستخدام فيسبوك",
"continue-with-facebook": "التسجيل باستخدام فيسبوك"
"continue-with-facebook": "التسجيل باستخدام فيسبوك",
"sign-in-with-linkedin": "Sign in with LinkedIn",
"sign-up-with-linkedin": "Sign up with LinkedIn"
}

View File

@@ -12,5 +12,6 @@
"settings.stickyToolbar.help": "The toolbar on topic and category pages will stick to the top of the page",
"settings.autohideBottombar": "Auto hide bottom bar",
"settings.autohideBottombar.help": "The bottom bar on mobile view will be hidden when the page is scrolled down",
"settings.openSidebars": "Open sidebars",
"settings.chatModals": "Enable chat modals"
}

View File

@@ -29,5 +29,7 @@
"hide-from-groups": "Скриване от групите",
"start-date": "Начална дата",
"end-date": "Крайна дата",
"hide-on-mobile": "Скриване на мобилни устройства"
"hide-on-mobile": "Скриване на мобилни устройства",
"hide-drafts": "Скриване на черновите",
"show-drafts": "Показване на черновите"
}

View File

@@ -8,6 +8,7 @@
"edit-privileges": "Редактиране на правомощията",
"select-clear-all": "Избиране/изчистване на всичко",
"chat": "Разговор",
"chat-with-privileged": "Разговор с някого с по-високи правомощия",
"upload-images": "Качване на изображения",
"upload-files": "Качване на файлове",
"signature": "Подпис",

View File

@@ -8,7 +8,6 @@
"max-chat-room-name-length": "Максимална дължина на имената на стаи за разговори",
"max-room-size": "Максимален брой потребители в стая за разговор",
"delay": "Време между съобщенията в разговорите (мсек)",
"newbieDelay": "…за нови потребители (мсек)",
"notification-delay": "Забавяне преди известяване за съобщения в разговорите",
"notification-delay-help": "Допълнителните съобщения, изпратени в рамките на това време, се комбинират, и потребителят получава по едно известие за всеки такъв период на забавяне. Задайте стойност 0, за да изключите забавянето.",
"restrictions.seconds-edit-after": "Брой секунди, през които съобщенията в разговор могат да бъдат редактирани.",

View File

@@ -10,7 +10,6 @@
"length": "Дължина на публикациите",
"post-queue": "Опашка за публикации",
"restrictions": "Ограничения за публикуването",
"restrictions-new": "Ограничения за новите потребители",
"restrictions.post-queue": "Включване на опашката за публикации",
"restrictions.post-queue-rep-threshold": "Нужна репутация за пропускане на опашката за публикации",
"restrictions.groups-exempt-from-post-queue": "Избиране на групи, които да пропускат опашката за публикации",
@@ -18,9 +17,6 @@
"restrictions.post-queue-help": "Ако опашката за публикации е включена, публикациите на новите потребители ще бъдат добавяни в опашка за одобрение",
"restrictions-new.post-queue-help": "Ако ограниченията за новите потребители са включени, това ще зададе някои ограничения за публикациите създадени от новите потребители",
"restrictions.seconds-between": "Брой секунди между публикациите",
"restrictions.seconds-between-new": "Брой секунди между публикациите за нови потребители",
"restrictions.rep-threshold": "Необходима репутация за премахване на това ограничение",
"restrictions.seconds-before-new": "Брой секунди преди новите потребители да могат да публикуват за пръв път",
"restrictions.seconds-edit-after": "Брой секунди, през които публикациите могат да бъдат редактирани. (0 = изключено)",
"restrictions.seconds-delete-after": "Брой секунди, през които публикациите могат да бъдат изтрити. (0 = изключено)",
"restrictions.replies-no-delete": "Брой отговори, след които потребителите вече не могат да изтриват собствените си теми. (0 = изключено)",

View File

@@ -78,8 +78,15 @@
"follow-created-topics": "Следване на темите, които създавате",
"follow-replied-topics": "Следване на темите, на които отговаряте",
"default-notification-settings": "Настройки по подразбиране за известията",
"categoryWatchState": "Състояние по подразбиране за следенето на категории",
"categoryWatchState.watching": "Да се следят",
"categoryWatchState.notwatching": "Да не се следят",
"categoryWatchState.ignoring": "Да се пренебрегват"
"categoryWatchState": "Състояние по подразбиране за наблюдаването на категории",
"categoryWatchState.tracking": "Да се следят",
"categoryWatchState.notwatching": "Да не се наблюдават",
"categoryWatchState.ignoring": "Да се пренебрегват",
"restrictions-new": "Ограничения за новите потребители",
"restrictions.rep-threshold": "Необходима репутация за премахване на това ограничение",
"restrictions.seconds-between-new": "Брой секунди между публикациите за нови потребители",
"restrictions.seconds-before-new": "Брой секунди преди новите потребители да могат да публикуват за пръв път",
"restrictions.seconds-edit-after-new": "Брой секунди, през които публикациите могат да бъдат редактирани от нови потребители. (0 = изключено)",
"restrictions.milliseconds-between-messages": "Време между съобщенията в разговорите за нови потребители (мсек)",
"restrictions.groups-exempt-from-new-user-restrictions": "Избиране на групи, за които да не важат ограниченията за нови потребители"
}

View File

@@ -7,17 +7,20 @@
"browsing": "разглежда",
"no-replies": "Няма отговори",
"no-new-posts": "Няма нови публикации.",
"watch": "Следене",
"watch": "Наблюдаване",
"ignore": "Пренебрегване",
"watching": "Следите",
"not-watching": "Не следите",
"watching": "Наблюдавате",
"tracking": "Следите",
"not-watching": "Не наблюдавате",
"ignoring": "Пренебрегвате",
"watching.description": "Темите да се показват в непрочетените и скорошните",
"watching.description": "Искам да получавам известия за новите теми.<br/>Искам темите да се показват в списъците с непрочетени и скорошни.",
"tracking.description": "Темите да се показват в непрочетените и скорошните",
"not-watching.description": "Темите да не се показват в непрочетените, а само в скорошните",
"ignoring.description": "Темите да не се показват нито в непрочетените, нито в скорошните",
"watching.message": "Вече следите новите неща в категорията и подкатегориите ѝ",
"notwatching.message": "Вече не следите новите неща в категорията и подкатегориите ѝ",
"watching.message": "Вече наблюдавате новите неща в категорията и подкатегориите ѝ",
"tracking.message": "Вече следите новите неща в категорията и подкатегориите ѝ",
"notwatching.message": "Вече не наблюдавате новите неща в категорията и подкатегориите ѝ",
"ignoring.message": "Вече пренебрегвате новите неща в тази категория и всички нейни подкатегории",
"watched-categories": "Следени категории",
"watched-categories": "Наблюдавани категории",
"x-more-categories": "Още %1 категории"
}

View File

@@ -91,6 +91,7 @@
"category-not-selected": "Не е избрана категория.",
"too-many-posts": "Можете да публикувате веднъж на %1 секунда/и моля, изчакайте малко, преди да опитате да публикувате отново",
"too-many-posts-newbie": "Като нов потребител, Вие можете да публикувате веднъж на %1 секунда/и, докато не натрупате %2 репутация моля, изчакайте малко, преди да опитате да публикувате отново",
"too-many-posts-newbie-minutes": "Като нов потребител, Вие можете да публикувате веднъж на %1 минута/и, докато не натрупате %2 репутация моля, изчакайте малко, преди да опитате да публикувате отново",
"already-posting": "В момента публикувате",
"tag-too-short": "Моля, въведете по-дълъг етикет. Етикетите трябва да съдържат поне %1 символ(а)",
"tag-too-long": "Моля, въведете по-кратък етикет. Етикетите трябва да съдържат не повече от %1 символ(а)",

View File

@@ -68,6 +68,8 @@
"chat.in-room": "В тази стая",
"chat.kick": "Изгонване",
"chat.show-ip": "Показване на IP адреса",
"chat.copy-text": "Копиране на текста",
"chat.copy-link": "Копиране на връзката",
"chat.owner": "Собственик на стаята",
"chat.grant-rescind-ownership": "Даване/отнемане на собственост",
"chat.system.user-join": "%1 се присъедини към стаята <span class=\"timeago\" title=\"%2\"></span>",

View File

@@ -13,12 +13,14 @@
"all": "Всички",
"topics": "Теми",
"tags": "Етикети",
"categories": "Категории",
"replies": "Отговори",
"chat": "Разговори",
"group-chat": "Групови разговори",
"public-chat": "Публични разговори",
"follows": "Следвания",
"upvote": "Положителни гласове",
"awards": "Награди",
"new-flags": "Нови докладвания",
"my-flags": "Докладвания, назначени на мен",
"bans": "Блокирания",
@@ -54,6 +56,7 @@
"user-posted-topic-with-tag-dual": "<strong>%1</strong> публикува нова тема с етикети <strong>%2</strong> и <strong>%3</strong>",
"user-posted-topic-with-tag-triple": "<strong>%1</strong> публикува нова тема с етикети <strong>%2</strong>, <strong>%3</strong> и <strong>%4</strong>",
"user-posted-topic-with-tag-multiple": "<strong>%1</strong> публикува нова тема с етикети <strong>%2</strong>",
"user-posted-topic-in-category": "<strong>%1</strong> публикува нова тема в <strong>%2</strong>",
"user-started-following-you": "<strong>%1</strong> започна да Ви следва.",
"user-started-following-you-dual": "<strong>%1</strong> и <strong>%2</strong> започнаха да Ви следват.",
"user-started-following-you-triple": "<strong>%1</strong>, <strong>%2</strong> и <strong>%3</strong> започнаха да Ви следват.",
@@ -80,8 +83,9 @@
"notificationType-upvote": "Когато някой гласува положително за Ваша публикация",
"notificationType-new-topic": "Когато някой, когото следвате, публикува тема",
"notificationType-new-topic-with-tag": "Когато бъде публикувана нова тема с етикет, който следвате",
"notificationType-new-reply": "Когато бъде публикуван нов отговор в тема, която следвате",
"notificationType-post-edit": "Когато бъде редактирана публикация в тема, която следите",
"notificationType-new-topic-in-category": "Когато бъде публикувана нова тема в категория, която наблюдавате",
"notificationType-new-reply": "Когато бъде публикуван нов отговор в тема, която наблюдавате",
"notificationType-post-edit": "Когато бъде редактирана публикация в тема, която наблюдавате",
"notificationType-follow": "Когато някой започне да Ви следва",
"notificationType-new-chat": "Когато получите съобщение в разговор",
"notificationType-new-group-chat": "Когато получите съобщение в групов разговор",
@@ -92,5 +96,6 @@
"notificationType-new-register": "Когато някой бъде добавен в опашката за регистрация",
"notificationType-post-queue": "Когато бъде добавена нова публикация в опашката",
"notificationType-new-post-flag": "Когато публикация бъде докладвана",
"notificationType-new-user-flag": "Когато потребител бъде докладван"
"notificationType-new-user-flag": "Когато потребител бъде докладван",
"notificationType-new-reward": "Когато получите нова награда"
}

View File

@@ -47,12 +47,12 @@
"account/latest-posts": "Последни публикации от %1",
"account/topics": "Теми, създадени от %1",
"account/groups": "Групите на %1",
"account/watched-categories": "Следените категории на %1",
"account/watched-tags": "Следените етикети на %1",
"account/watched-categories": "Наблюдаваните категории на %1",
"account/watched-tags": "Наблюдаваните етикети на %1",
"account/bookmarks": "Отметнатите публикации на %1",
"account/settings": "Потребителски настройки",
"account/settings-of": "Променят се настройките на %1",
"account/watched": "Теми, следени от %1",
"account/watched": "Теми, наблюдавани от %1",
"account/ignored": "Теми, пренебрегвани от %1",
"account/upvoted": "Публикации, получили положителен глас от %1",
"account/downvoted": "Публикации, получили отрицателен глас от %1",

View File

@@ -3,8 +3,10 @@
"post-queue": "Опашка за публикации",
"no-queued-posts": "В опашката за публикации няма нищо.",
"no-single-post": "Темата или публикацията, която търсите, вече не се намира в опашката. Вероятно или е била одобрена, или изтрита.",
"enabling-help": "За да включите тази функционалност, идете в <a href=\"%1\">Настройки &rarr; Публикуване &rarr; Опашка за публикации</a> и включете <strong>Опашката за публикации</strong>.",
"enabling-help": "В момента опашката за публикации е <strong>изключена</strong>. За да включите тази функционалност, идете в <a href=\"%1\">Настройки &rarr; Публикации &rarr; Опашка за публикации</a> и включете <strong>Опашката за публикации</strong>.",
"back-to-list": "Назад към Опашката за публикации",
"public-intro": "Ако имате публикации, които чакат в опашката, те ще бъдат показани тук.",
"public-description": "Този форум е настроен автоматично да добавя публикациите от нови потребители, така че да чакат одобрението на модератор.<br />Ако имате публикации, които чакат в опашката за одобрение, ще можете да ги видите тук.",
"user": "Потребител",
"when": "Кога",
"category": "Категория",

View File

@@ -0,0 +1,10 @@
{
"awarded-x-reputation": "Получихте <strong>%1</strong> точки репутация",
"awarded-group-membership": "Бяхте добавен/а в групата <strong>%1</strong>",
"essentials/user.reputation-conditional-value": "<span class=\"text-xs\">(Репутация %1 %2)</span>",
"essentials/user.postcount-conditional-value": "<span class=\"text-xs\">(Брой публикации %1 %2)</span>",
"essentials/user.lastonline-conditional-value": "<span class=\"text-xs\">(Последно на линия %1 %2)</span>",
"essentials/user.joindate-conditional-value": "<span class=\"text-xs\">(Дата на присъединяване %1 %2)</span>",
"essentials/user.daysregistered-conditional-value": "<span class=\"text-xs\">(Брой дни с регистрация %1 %2)</span>"
}

View File

@@ -13,7 +13,7 @@
"categories": "Категории",
"all-categories": "Всички категории",
"categories-x": "Категории: %1",
"categories-watched-categories": "Категории: Следени категории",
"categories-watched-categories": "Категории: Наблюдавани категории",
"type-a-category": "Въведете категория",
"tags": "Етикети",
"tags-x": "Етикети: %1",

View File

@@ -6,5 +6,7 @@
"sign-in-with-google": "Вписване с Google",
"sign-up-with-google": "Регистриране с Google",
"log-in-with-facebook": "Вписване с Facebook",
"continue-with-facebook": "Продължаване с Facebook"
"continue-with-facebook": "Продължаване с Facebook",
"sign-in-with-linkedin": "Вписване с LinkedIn",
"sign-up-with-linkedin": "Регистриране с LinkedIn"
}

View File

@@ -8,8 +8,8 @@
"no-tags": "Все още няма етикети.",
"select-tags": "Изберете етикети",
"tag-whitelist": "Списък от разрешени етикети",
"watching": "Следите",
"not-watching": "Не следите",
"watching": "Наблюдавате",
"not-watching": "Не наблюдавате",
"watching.description": "Искам да получавам известия за нови теми.",
"not-watching.description": "Не искам да получавам известия за нови теми.",
"following-tag.message": "Вече ще получавате известия, когато някой публикува тема с този етикет.",

View File

@@ -12,5 +12,6 @@
"settings.stickyToolbar.help": "Лентата с инструменти в страниците с теми и категории ще стои винаги в горния край на страницата",
"settings.autohideBottombar": "Автоматично скриване на долната лента",
"settings.autohideBottombar.help": "В изгледа за мобилни устройства долната лента ще се скрива, когато страницата се превърта надолу",
"settings.openSidebars": "Отваряне на страничните ленти",
"settings.chatModals": "Включване на прозорците за разговори"
}

View File

@@ -80,13 +80,13 @@
"markAsUnreadForAll.success": "Темата е отбелязана като непрочетена за всички.",
"mark-unread": "Отбелязване като непрочетена",
"mark-unread.success": "Темата е отбелязана като непрочетена.",
"watch": "Следене",
"unwatch": "Спиране на следенето",
"watch": "Наблюдаване",
"unwatch": "Спиране на наблюдаването",
"watch.title": "Получавайте известия за новите отговори в тази тема",
"unwatch.title": "Спрете да следите тази тема",
"unwatch.title": "Спрете да наблюдавате тази тема",
"share-this-post": "Споделете тази публикация",
"watching": "Следите",
"not-watching": "Не следите",
"watching": "Наблюдавате",
"not-watching": "Не наблюдавате",
"ignoring": "Пренебрегвате",
"watching.description": "Искам да получавам известия за новите отговори.<br/>Искам темата да се показва в списъка с непрочетени.",
"not-watching.description": "Не искам да получавам известия за новите отговори.<br/>Темата да се показва в списъка с непрочетени, само ако категорията не се пренебрегва.",

View File

@@ -9,7 +9,7 @@
"topics-marked-as-read.success": "Темите бяха отбелязани като прочетени!",
"all-topics": "Всички теми",
"new-topics": "Нови теми",
"watched-topics": "Следени теми",
"watched-topics": "Наблюдавани теми",
"unreplied-topics": "Теми без отговор",
"multiple-categories-selected": "Избрани са няколко"
}

View File

@@ -35,12 +35,12 @@
"profile-views": "Преглеждания на профила",
"reputation": "Репутация",
"bookmarks": "Отметки",
"watched-categories": "Следени категории",
"watched-tags": "Следени етикети",
"watched-categories": "Наблюдавани категории",
"watched-tags": "Наблюдавани етикети",
"change-all": "Промяна на всички",
"watched": "Следени",
"watched": "Наблюдавани",
"ignored": "Пренебрегвани",
"default-category-watch-state": "Състояние по подразбиране за следенето на категории",
"default-category-watch-state": "Състояние по подразбиране за наблюдаването на категории",
"followers": "Последователи",
"following": "Следва",
"blocks": "Блокира",
@@ -108,7 +108,7 @@
"has-no-posts": "Този потребител не е публикувал нищо досега.",
"has-no-best-posts": "Този потребител не е получавал положителни гласове за публикациите си досега.",
"has-no-topics": "Този потребител не е създавал теми досега.",
"has-no-watched-topics": "Този потребител не е следил нито една тема досега.",
"has-no-watched-topics": "Този потребител не е наблюдавал нито една тема досега.",
"has-no-ignored-topics": "Този потребител не е пренебрегнал нито една тема досега.",
"has-no-upvoted-posts": "Този потребител не е гласувал положително досега.",
"has-no-downvoted-posts": "Този потребител не е гласувал отрицателно досега.",
@@ -137,8 +137,8 @@
"topic-search-help": "Ако е включено, търсенето в темата ще замени стандартното поведение на браузъра при търсене в страницата и ще Ви позволи да претърсвате цялата тема, а не само това, което се вижда на екрана",
"update-url-with-post-index": "Обновяване на адресната лента с номера на публикацията по време на разглеждане на темите",
"scroll-to-my-post": "След публикуване на отговор, да се показва новата публикация",
"follow-topics-you-reply-to": "Следене на темите, в които отговаряте",
"follow-topics-you-create": "Следене на темите, които създавате",
"follow-topics-you-reply-to": "Наблюдаване на темите, в които отговаряте",
"follow-topics-you-create": "Наблюдаване на темите, които създавате",
"grouptitle": "Заглавие на групата",
"group-order-help": "Изберете група и използвайте стрелките, за да пренаредите заглавията",
"no-group-title": "Няма заглавие на група",

View File

@@ -29,5 +29,7 @@
"hide-from-groups": "Hide from groups",
"start-date": "Start date",
"end-date": "End date",
"hide-on-mobile": "Hide on mobile"
"hide-on-mobile": "Hide on mobile",
"hide-drafts": "Hide drafts",
"show-drafts": "Show drafts"
}

View File

@@ -8,6 +8,7 @@
"edit-privileges": "Edit Privileges",
"select-clear-all": "Select/Clear All",
"chat": "Chat",
"chat-with-privileged": "Chat with Privileged",
"upload-images": "Upload Images",
"upload-files": "Upload Files",
"signature": "Signature",

View File

@@ -8,7 +8,6 @@
"max-chat-room-name-length": "Maximum length of chat room names",
"max-room-size": "Maximum number of users in chat rooms",
"delay": "Time between chat messages (ms)",
"newbieDelay": "... for new users (ms)",
"notification-delay": "Notification delay for chat messages",
"notification-delay-help": "Additional messages sent between this time are collated, and the user is notified once per delay period. Set this to 0 to disable the delay.",
"restrictions.seconds-edit-after": "Number of seconds a chat message will remain editable.",

View File

@@ -10,7 +10,6 @@
"length": "Post Length",
"post-queue": "Post Queue",
"restrictions": "Posting Restrictions",
"restrictions-new": "New User Restrictions",
"restrictions.post-queue": "Enable post queue",
"restrictions.post-queue-rep-threshold": "Reputation required to bypass post queue",
"restrictions.groups-exempt-from-post-queue": "Select groups that should be exempt from the post queue",
@@ -18,9 +17,6 @@
"restrictions.post-queue-help": "Enabling post queue will put the posts of new users in a queue for approval",
"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.seconds-between-new": "Seconds between posts for new users",
"restrictions.rep-threshold": "Reputation threshold before these restrictions are lifted",
"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)",

View File

@@ -79,7 +79,14 @@
"follow-replied-topics": "Follow topics that you reply to",
"default-notification-settings": "Default notification settings",
"categoryWatchState": "Default category watch state",
"categoryWatchState.watching": "Watching",
"categoryWatchState.tracking": "Tracking",
"categoryWatchState.notwatching": "Not Watching",
"categoryWatchState.ignoring": "Ignoring"
"categoryWatchState.ignoring": "Ignoring",
"restrictions-new": "New User Restrictions",
"restrictions.rep-threshold": "Reputation threshold before these restrictions are lifted",
"restrictions.seconds-between-new": "Seconds between posts for new users",
"restrictions.seconds-before-new": "Seconds before a new user can make their first post",
"restrictions.seconds-edit-after-new": "Number of seconds a post remains editable for new users (set to 0 to disable)",
"restrictions.milliseconds-between-messages": "Time between chat messages for new users (ms)",
"restrictions.groups-exempt-from-new-user-restrictions": "Select groups that should be exempt from the new user restrictions"
}

View File

@@ -10,12 +10,15 @@
"watch": "নজর রাখুন",
"ignore": "উপেক্ষা করুন",
"watching": "দৃশ্যমান",
"tracking": "Tracking",
"not-watching": "দেখা হচ্ছে না",
"ignoring": "উপেক্ষারত",
"watching.description": "অপঠিত এবং সাম্প্রতিক বিষয়গুলো দেখাও",
"watching.description": "Notify me of new topics.<br/>Show topics in unread & recent",
"tracking.description": "Shows topics in unread & recent",
"not-watching.description": "Do not show topics in unread, show in recent",
"ignoring.description": "Do not show topics in unread and recent",
"ignoring.description": "Do not show topics in unread & recent",
"watching.message": "You are now watching updates from this category and all subcategories",
"tracking.message": "You are now tracking updates from this category and all subcategories",
"notwatching.message": "You are not watching updates from this category and all subcategories",
"ignoring.message": "You are now ignoring updates from this category and all subcategories",
"watched-categories": "প্রেক্ষিত বিভাগসমূহ",

View File

@@ -91,6 +91,7 @@
"category-not-selected": "Category not selected.",
"too-many-posts": "You can only post once every %1 second(s) - please wait before posting again",
"too-many-posts-newbie": "As a new user, you can only post once every %1 second(s) until you have earned %2 reputation - please wait before posting again",
"too-many-posts-newbie-minutes": "As a new user, you can only post once every %1 minute(s) until you have earned %2 reputation - please wait before posting again",
"already-posting": "You are already posting",
"tag-too-short": "Please enter a longer tag. Tags should contain at least %1 character(s)",
"tag-too-long": "Please enter a shorter tag. Tags can't be longer than %1 character(s)",

View File

@@ -68,6 +68,8 @@
"chat.in-room": "In this room",
"chat.kick": "Kick",
"chat.show-ip": "Show IP",
"chat.copy-text": "Copy Text",
"chat.copy-link": "Copy Link",
"chat.owner": "Room Owner",
"chat.grant-rescind-ownership": "Grant/Rescind Ownership",
"chat.system.user-join": "%1 has joined the room <span class=\"timeago\" title=\"%2\"></span>",

View File

@@ -13,12 +13,14 @@
"all": "All",
"topics": "Topics",
"tags": "Tags",
"categories": "Categories",
"replies": "Replies",
"chat": "Chats",
"group-chat": "Group Chats",
"public-chat": "Public Chats",
"follows": "Follows",
"upvote": "Upvotes",
"awards": "Awards",
"new-flags": "New Flags",
"my-flags": "Flags assigned to me",
"bans": "Bans",
@@ -54,6 +56,7 @@
"user-posted-topic-with-tag-dual": "<strong>%1</strong> has posted a new topic with tags <strong>%2</strong> and <strong>%3</strong>",
"user-posted-topic-with-tag-triple": "<strong>%1</strong> has posted a new topic with tags <strong>%2</strong>, <strong>%3</strong> and <strong>%4</strong>",
"user-posted-topic-with-tag-multiple": "<strong>%1</strong> has posted a new topic with tags <strong>%2</strong>",
"user-posted-topic-in-category": "<strong>%1</strong> has posted a new topic in <strong>%2</strong>",
"user-started-following-you": "<strong>%1</strong> আপনাকে অনুসরন করা শুরু করেছেন।",
"user-started-following-you-dual": "<strong>%1</strong> and <strong>%2</strong> started following you.",
"user-started-following-you-triple": "<strong>%1</strong>, <strong>%2</strong> and <strong>%3</strong> started following you.",
@@ -80,6 +83,7 @@
"notificationType-upvote": "When someone upvotes your post",
"notificationType-new-topic": "When someone you follow posts a topic",
"notificationType-new-topic-with-tag": "When a topic is posted with a tag you follow",
"notificationType-new-topic-in-category": "When a topic is posted in a category you are watching",
"notificationType-new-reply": "When a new reply is posted in a topic you are watching",
"notificationType-post-edit": "When a post is edited in a topic you are watching",
"notificationType-follow": "When someone starts following you",
@@ -92,5 +96,6 @@
"notificationType-new-register": "When someone gets added to registration queue",
"notificationType-post-queue": "When a new post is queued",
"notificationType-new-post-flag": "When a post is flagged",
"notificationType-new-user-flag": "When a user is flagged"
"notificationType-new-user-flag": "When a user is flagged",
"notificationType-new-reward": "When you earn a new reward"
}

View File

@@ -3,8 +3,10 @@
"post-queue": "Post Queue",
"no-queued-posts": "There are no posts in the post queue.",
"no-single-post": "The topic or post you are looking for is no longer in the queue. It has likely been approved or deleted already.",
"enabling-help": "To enable this feature, go to <a href=\"%1\">Settings &rarr; Post &rarr; Post Queue</a> and enable <strong>Post Queue</strong>.",
"enabling-help": "The post queue is currently <strong>disabled</strong>. To enable this feature, go to <a href=\"%1\">Settings &rarr; Post &rarr; Post Queue</a> and enable <strong>Post Queue</strong>.",
"back-to-list": "Back to Post Queue",
"public-intro": "If you have any queued posts, they will be shown here.",
"public-description": "This forum is configured to automatically queue posts from new accounts, pending moderator approval.<br />If you have queued posts awaiting approval, you will be able to see them here.",
"user": "User",
"when": "When",
"category": "Category",

View File

@@ -0,0 +1,10 @@
{
"awarded-x-reputation": "You have been awarded <strong>%1</strong> reputation",
"awarded-group-membership": "You have been added to the group <strong>%1</strong>",
"essentials/user.reputation-conditional-value": "<span class=\"text-xs\">(Reputation %1 %2)</span>",
"essentials/user.postcount-conditional-value": "<span class=\"text-xs\">(Post Count %1 %2)</span>",
"essentials/user.lastonline-conditional-value": "<span class=\"text-xs\">(Last Online %1 %2)</span>",
"essentials/user.joindate-conditional-value": "<span class=\"text-xs\">(Join Date %1 %2)</span>",
"essentials/user.daysregistered-conditional-value": "<span class=\"text-xs\">(Days Registered %1 %2)</span>"
}

View File

@@ -6,5 +6,7 @@
"sign-in-with-google": "Sign in with Google",
"sign-up-with-google": "Sign up with Google",
"log-in-with-facebook": "Log in with Facebook",
"continue-with-facebook": "Continue with Facebook"
"continue-with-facebook": "Continue with Facebook",
"sign-in-with-linkedin": "Sign in with LinkedIn",
"sign-up-with-linkedin": "Sign up with LinkedIn"
}

View File

@@ -12,5 +12,6 @@
"settings.stickyToolbar.help": "The toolbar on topic and category pages will stick to the top of the page",
"settings.autohideBottombar": "Auto hide bottom bar",
"settings.autohideBottombar.help": "The bottom bar on mobile view will be hidden when the page is scrolled down",
"settings.openSidebars": "Open sidebars",
"settings.chatModals": "Enable chat modals"
}

View File

@@ -17,7 +17,7 @@
"mongo.file-size": "Velikost souboru",
"mongo.resident-memory": "Residentní paměť",
"mongo.virtual-memory": "Virtuální paměť",
"mongo.mapped-memory": "Mapped Memory",
"mongo.mapped-memory": "Namapovaná paměť",
"mongo.bytes-in": "Bajtů ->",
"mongo.bytes-out": "Bajtů <-",
"mongo.num-requests": "Počet požadavků",

View File

@@ -5,7 +5,7 @@
"none-installed": "Nebyly nalezeny žádné miniaplikace! Aktivujte zásuvný modul miniaplikace v ovládacím panelu <a href=\"%1\">zásuvné moduly</a>.",
"clone-from": "Klonovat miniaplikaci z",
"containers.available": "Dostupné moduly",
"containers.explanation": "Drag and drop on top of any widget",
"containers.explanation": "Přetáhněte a pusťte na libovolnou miniaplikaci",
"containers.none": "Nic",
"container.well": "Well",
"container.jumbotron": "Jumbotron",
@@ -29,5 +29,7 @@
"hide-from-groups": "Skrýt ve skupinách",
"start-date": "Start date",
"end-date": "End date",
"hide-on-mobile": "Skrýt na mobilu"
"hide-on-mobile": "Skrýt na mobilu",
"hide-drafts": "Hide drafts",
"show-drafts": "Show drafts"
}

View File

@@ -6,8 +6,9 @@
"group-privileges": "Oprávnění skupiny",
"user-privileges": "Oprávnění uživatele",
"edit-privileges": "Upravit oprávnění",
"select-clear-all": "Select/Clear All",
"select-clear-all": "Vybrat/vymazat vše",
"chat": "Konverzace",
"chat-with-privileged": "Konverzace s privilegovanými",
"upload-images": "Nahrát obrázky",
"upload-files": "Náhrát soubory",
"signature": "Podpis",
@@ -48,7 +49,7 @@
"admin-tags": "Tags",
"admin-settings": "Nastavení",
"alert.confirm-moderate": "<strong>Are you sure you wish to grant the moderation privilege to this user group?</strong> This group is public, and any users can join at will.",
"alert.confirm-moderate": "<strong>Jste si jisti, že chcete této skupině uživatelů udělit oprávnění k moderování?</strong> Tato skupina je veřejná a každý uživatel se do ní může libovolně připojit.",
"alert.confirm-admins-mods": "<strong>Are you sure you wish to grant the &quot;Admins &amp; Mods&quot; privilege to this user/group?</strong> Users with this privilege are able to promote and demote other users into privileged positions, <em>including super administrator</em>",
"alert.confirm-save": "Please confirm your intention to save these privileges",
"alert.confirm-discard": "Are you sure you wish to discard your privilege changes?",

View File

@@ -8,7 +8,6 @@
"max-chat-room-name-length": "Maximum length of chat room names",
"max-room-size": "Maximální počet uživatelů v konverzační místnosti",
"delay": "Time between chat messages (ms)",
"newbieDelay": "... for new users (ms)",
"notification-delay": "Notification delay for chat messages",
"notification-delay-help": "Additional messages sent between this time are collated, and the user is notified once per delay period. Set this to 0 to disable the delay.",
"restrictions.seconds-edit-after": "Number of seconds a chat message will remain editable.",

View File

@@ -10,7 +10,6 @@
"length": "Délka příspěvku",
"post-queue": "Příspěvky ve frontě",
"restrictions": "Omezení příspěvků",
"restrictions-new": "Omezení nového uživatele",
"restrictions.post-queue": "Povolit frontu pro příspěvky",
"restrictions.post-queue-rep-threshold": "Vyžadovaná reputace pro přeskočení fronty příspěvků",
"restrictions.groups-exempt-from-post-queue": "Vyberte skupinu, která by měla být vyloučena z fronty příspěvků",
@@ -18,9 +17,6 @@
"restrictions.post-queue-help": "Povolení fronty příspěvků bude mít za následek vložení příspěvků nových uživatelů do fronty pro schválení.",
"restrictions-new.post-queue-help": "Povolení omezení nových uživatelů bude mít za následek omezení příspěvků vytvořených novými uživateli",
"restrictions.seconds-between": "Počet sekund mezi novými příspěvky",
"restrictions.seconds-between-new": "Sekund mezi příspěvky pro nové uživatele",
"restrictions.rep-threshold": "Ohraničení reputace než začnou platit tato omezení",
"restrictions.seconds-before-new": "Počet sekund, než může nový uživatel vytvořit první příspěvek",
"restrictions.seconds-edit-after": "Počet sekund, kdy příspěvek může být ještě upraven (pro zakázání - 0)",
"restrictions.seconds-delete-after": "Počet sekund, kdy příspěvek může být ještě odstraněn (pro zakázání - 0)",
"restrictions.replies-no-delete": "Počet odpovědí, kdy je již uživateli zakázáno odstranit založená témata (pro zakázání - 0)",

View File

@@ -79,7 +79,14 @@
"follow-replied-topics": "Sledovat témata, na které jste odpověděl",
"default-notification-settings": "Nastavení výchozího oznámení",
"categoryWatchState": "Stav sledování výchozí kategorie",
"categoryWatchState.watching": "Sledování",
"categoryWatchState.tracking": "Tracking",
"categoryWatchState.notwatching": "Nesleduji",
"categoryWatchState.ignoring": "Ignorace"
"categoryWatchState.ignoring": "Ignorace",
"restrictions-new": "New User Restrictions",
"restrictions.rep-threshold": "Reputation threshold before these restrictions are lifted",
"restrictions.seconds-between-new": "Seconds between posts for new users",
"restrictions.seconds-before-new": "Seconds before a new user can make their first post",
"restrictions.seconds-edit-after-new": "Number of seconds a post remains editable for new users (set to 0 to disable)",
"restrictions.milliseconds-between-messages": "Time between chat messages for new users (ms)",
"restrictions.groups-exempt-from-new-user-restrictions": "Select groups that should be exempt from the new user restrictions"
}

View File

@@ -10,12 +10,15 @@
"watch": "Sledovat",
"ignore": "Ignorovat",
"watching": "Sledováno",
"tracking": "Tracking",
"not-watching": "Nesledováno",
"ignoring": "Ignorováno",
"watching.description": "Zobrazit témata v nepřečtených a posledních",
"watching.description": "Notify me of new topics.<br/>Show topics in unread & recent",
"tracking.description": "Shows topics in unread & recent",
"not-watching.description": "Nezobrazovat témata v nepřečtených, zobrazit poslední",
"ignoring.description": "Nezobrazovat témata v nepřečtených a posledních",
"ignoring.description": "Do not show topics in unread & recent",
"watching.message": "Nyní sledujete aktualizace pro tuto kategorii a všech podkategorii",
"tracking.message": "You are now tracking updates from this category and all subcategories",
"notwatching.message": "Nyní nesledujete aktualizace z této kategorie a všech podkategorií",
"ignoring.message": "Nyní ignorujete aktualizace této kategorie a všech jejich kategorii",
"watched-categories": "Sledované kategorie",

View File

@@ -91,6 +91,7 @@
"category-not-selected": "Nebyla vybrána kategorie.",
"too-many-posts": "Můžete přispívat jednou za %1 sekund - vyčkejte tedy, než vytvoříte další příspěvek",
"too-many-posts-newbie": "Jako nový uživatel, můžete přispívat jednou za %1 sekund, dokud nezískáte pověst %2 - vyčkejte tedy, než vytvoříte další příspěvek",
"too-many-posts-newbie-minutes": "As a new user, you can only post once every %1 minute(s) until you have earned %2 reputation - please wait before posting again",
"already-posting": "You are already posting",
"tag-too-short": "Zadejte delší značku. Značky by měli mít alespoň %1 znaků",
"tag-too-long": "Zadejte kratší značku. Značky nesmí být delší než %1 znaků",

View File

@@ -68,6 +68,8 @@
"chat.in-room": "V této místnosti",
"chat.kick": "Vykopnout",
"chat.show-ip": "Zobrazit IP",
"chat.copy-text": "Copy Text",
"chat.copy-link": "Copy Link",
"chat.owner": "Majitel místnosti",
"chat.grant-rescind-ownership": "Grant/Rescind Ownership",
"chat.system.user-join": "%1 has joined the room <span class=\"timeago\" title=\"%2\"></span>",

View File

@@ -13,12 +13,14 @@
"all": "Vše",
"topics": "Témata",
"tags": "Tags",
"categories": "Categories",
"replies": "Odpovědi",
"chat": "Konverzace",
"group-chat": "Skupinová konverzace",
"public-chat": "Public Chats",
"follows": "Sledování",
"upvote": "Souhlasy",
"awards": "Awards",
"new-flags": "Nové označení",
"my-flags": "Označení přiřazené mě",
"bans": "Blokace",
@@ -54,6 +56,7 @@
"user-posted-topic-with-tag-dual": "<strong>%1</strong> has posted a new topic with tags <strong>%2</strong> and <strong>%3</strong>",
"user-posted-topic-with-tag-triple": "<strong>%1</strong> has posted a new topic with tags <strong>%2</strong>, <strong>%3</strong> and <strong>%4</strong>",
"user-posted-topic-with-tag-multiple": "<strong>%1</strong> has posted a new topic with tags <strong>%2</strong>",
"user-posted-topic-in-category": "<strong>%1</strong> has posted a new topic in <strong>%2</strong>",
"user-started-following-you": "<strong>%1</strong> vás začal sledovat.",
"user-started-following-you-dual": "<strong>%1</strong> a <strong>%2</strong> vás začali sledovat.",
"user-started-following-you-triple": "<strong>%1</strong>, <strong>%2</strong> and <strong>%3</strong> started following you.",
@@ -80,6 +83,7 @@
"notificationType-upvote": "Jakmile někdo vyjádří souhlas s vaším příspěvkem",
"notificationType-new-topic": "Jakmile někdo koho sledujete vytvoří nové téma",
"notificationType-new-topic-with-tag": "When a topic is posted with a tag you follow",
"notificationType-new-topic-in-category": "When a topic is posted in a category you are watching",
"notificationType-new-reply": "Jakmile je přidán nový příspěvek v tématu, které sledujete",
"notificationType-post-edit": "Jakmile je upraven příspěvek v tématu, které sledujete",
"notificationType-follow": "Jakmile vás někdo začne sledovat",
@@ -92,5 +96,6 @@
"notificationType-new-register": "Jakmile je někdo přidán do registrační fronty",
"notificationType-post-queue": "Bude-li přidán nový příspěvek do fronty",
"notificationType-new-post-flag": "Bude-li příspěvek označen",
"notificationType-new-user-flag": "Bude-li uživatel označen"
"notificationType-new-user-flag": "Bude-li uživatel označen",
"notificationType-new-reward": "When you earn a new reward"
}

View File

@@ -3,8 +3,10 @@
"post-queue": "Fronta příspěvků",
"no-queued-posts": "There are no posts in the post queue.",
"no-single-post": "The topic or post you are looking for is no longer in the queue. It has likely been approved or deleted already.",
"enabling-help": "To enable this feature, go to <a href=\"%1\">Settings &rarr; Post &rarr; Post Queue</a> and enable <strong>Post Queue</strong>.",
"enabling-help": "The post queue is currently <strong>disabled</strong>. To enable this feature, go to <a href=\"%1\">Settings &rarr; Post &rarr; Post Queue</a> and enable <strong>Post Queue</strong>.",
"back-to-list": "Back to Post Queue",
"public-intro": "If you have any queued posts, they will be shown here.",
"public-description": "This forum is configured to automatically queue posts from new accounts, pending moderator approval.<br />If you have queued posts awaiting approval, you will be able to see them here.",
"user": "Uživatel",
"when": "When",
"category": "Kategorie",

View File

@@ -0,0 +1,10 @@
{
"awarded-x-reputation": "You have been awarded <strong>%1</strong> reputation",
"awarded-group-membership": "You have been added to the group <strong>%1</strong>",
"essentials/user.reputation-conditional-value": "<span class=\"text-xs\">(Reputation %1 %2)</span>",
"essentials/user.postcount-conditional-value": "<span class=\"text-xs\">(Post Count %1 %2)</span>",
"essentials/user.lastonline-conditional-value": "<span class=\"text-xs\">(Last Online %1 %2)</span>",
"essentials/user.joindate-conditional-value": "<span class=\"text-xs\">(Join Date %1 %2)</span>",
"essentials/user.daysregistered-conditional-value": "<span class=\"text-xs\">(Days Registered %1 %2)</span>"
}

View File

@@ -6,5 +6,7 @@
"sign-in-with-google": "Sign in with Google",
"sign-up-with-google": "Sign up with Google",
"log-in-with-facebook": "Log in with Facebook",
"continue-with-facebook": "Continue with Facebook"
"continue-with-facebook": "Continue with Facebook",
"sign-in-with-linkedin": "Sign in with LinkedIn",
"sign-up-with-linkedin": "Sign up with LinkedIn"
}

View File

@@ -12,5 +12,6 @@
"settings.stickyToolbar.help": "The toolbar on topic and category pages will stick to the top of the page",
"settings.autohideBottombar": "Auto hide bottom bar",
"settings.autohideBottombar.help": "The bottom bar on mobile view will be hidden when the page is scrolled down",
"settings.openSidebars": "Open sidebars",
"settings.chatModals": "Enable chat modals"
}

View File

@@ -1,19 +1,19 @@
{
"all-users": "All Users",
"all-users": "Všichni uživatelé",
"latest-users": "Nejnovější uživatelé",
"top-posters": "Nejaktivnější",
"most-reputation": "Nejváženější",
"most-flags": "Nejoznačovanější",
"search": "Hledat",
"enter-username": "Zadej uživatelské jméno k hledání",
"search-user-for-chat": "Search for a user to start chat",
"search-user-for-chat": "Hledání uživatele pro zahájení konverzace",
"load-more": "Načíst další",
"users-found-search-took": "Nalezeno %1 uživatel(ů) za %2 vteřiny.",
"filter-by": "Filtrovat dle",
"online-only": "Pouze připojené",
"invite": "Pozvat",
"prompt-email": "E-maily:",
"groups-to-join": "Groups to be joined when invite is accepted:",
"groups-to-join": "Skupiny, ke kterým se připojíte po přijetí pozvánky:",
"invitation-email-sent": "E-mailová pozvánka byla odeslána na adresu %1",
"user-list": "Seznam uživatelů",
"recent-topics": "Poslední témata",

View File

@@ -29,5 +29,7 @@
"hide-from-groups": "Hide from groups",
"start-date": "Start date",
"end-date": "End date",
"hide-on-mobile": "Hide on mobile"
"hide-on-mobile": "Hide on mobile",
"hide-drafts": "Hide drafts",
"show-drafts": "Show drafts"
}

View File

@@ -8,6 +8,7 @@
"edit-privileges": "Edit Privileges",
"select-clear-all": "Select/Clear All",
"chat": "Chat",
"chat-with-privileged": "Chat with Privileged",
"upload-images": "Upload Images",
"upload-files": "Upload Files",
"signature": "Signature",

View File

@@ -8,7 +8,6 @@
"max-chat-room-name-length": "Maximum length of chat room names",
"max-room-size": "Maximum number of users in chat rooms",
"delay": "Time between chat messages (ms)",
"newbieDelay": "... for new users (ms)",
"notification-delay": "Notification delay for chat messages",
"notification-delay-help": "Additional messages sent between this time are collated, and the user is notified once per delay period. Set this to 0 to disable the delay.",
"restrictions.seconds-edit-after": "Number of seconds a chat message will remain editable.",

View File

@@ -10,7 +10,6 @@
"length": "Post Length",
"post-queue": "Post Queue",
"restrictions": "Posting Restrictions",
"restrictions-new": "New User Restrictions",
"restrictions.post-queue": "Enable post queue",
"restrictions.post-queue-rep-threshold": "Reputation required to bypass post queue",
"restrictions.groups-exempt-from-post-queue": "Select groups that should be exempt from the post queue",
@@ -18,9 +17,6 @@
"restrictions.post-queue-help": "Enabling post queue will put the posts of new users in a queue for approval",
"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.seconds-between-new": "Seconds between posts for new users",
"restrictions.rep-threshold": "Reputation threshold before these restrictions are lifted",
"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)",

View File

@@ -79,7 +79,14 @@
"follow-replied-topics": "Follow topics that you reply to",
"default-notification-settings": "Default notification settings",
"categoryWatchState": "Default category watch state",
"categoryWatchState.watching": "Watching",
"categoryWatchState.tracking": "Tracking",
"categoryWatchState.notwatching": "Not Watching",
"categoryWatchState.ignoring": "Ignoring"
"categoryWatchState.ignoring": "Ignoring",
"restrictions-new": "New User Restrictions",
"restrictions.rep-threshold": "Reputation threshold before these restrictions are lifted",
"restrictions.seconds-between-new": "Seconds between posts for new users",
"restrictions.seconds-before-new": "Seconds before a new user can make their first post",
"restrictions.seconds-edit-after-new": "Number of seconds a post remains editable for new users (set to 0 to disable)",
"restrictions.milliseconds-between-messages": "Time between chat messages for new users (ms)",
"restrictions.groups-exempt-from-new-user-restrictions": "Select groups that should be exempt from the new user restrictions"
}

View File

@@ -10,12 +10,15 @@
"watch": "Overvåg",
"ignore": "Ignorer",
"watching": "Watching",
"tracking": "Tracking",
"not-watching": "Not Watching",
"ignoring": "Ignoring",
"watching.description": "Show topics in unread and recent",
"watching.description": "Notify me of new topics.<br/>Show topics in unread & recent",
"tracking.description": "Shows topics in unread & recent",
"not-watching.description": "Do not show topics in unread, show in recent",
"ignoring.description": "Do not show topics in unread and recent",
"ignoring.description": "Do not show topics in unread & recent",
"watching.message": "You are now watching updates from this category and all subcategories",
"tracking.message": "You are now tracking updates from this category and all subcategories",
"notwatching.message": "You are not watching updates from this category and all subcategories",
"ignoring.message": "You are now ignoring updates from this category and all subcategories",
"watched-categories": "Fulgte kategorier",

View File

@@ -91,6 +91,7 @@
"category-not-selected": "Category not selected.",
"too-many-posts": "Du kan højest skrive et indlæg hver %1 sekund(er) - venligst vent et øjeblik før næste indlæg",
"too-many-posts-newbie": "Som ny bruger kan du kun skrive et indlæg engang hvert %1. sekund() indtil du har optjent %2 omdømme point - venligst vent et øjeblik før næste indlæg.",
"too-many-posts-newbie-minutes": "As a new user, you can only post once every %1 minute(s) until you have earned %2 reputation - please wait before posting again",
"already-posting": "You are already posting",
"tag-too-short": "Indtast et længere tag. Tags skal indeholde mindst %1 karakter(er).",
"tag-too-long": "Indtast et længere tag. Tags kan ikke være længere end %1 karakter(er).",

View File

@@ -68,6 +68,8 @@
"chat.in-room": "In this room",
"chat.kick": "Kick",
"chat.show-ip": "Show IP",
"chat.copy-text": "Copy Text",
"chat.copy-link": "Copy Link",
"chat.owner": "Room Owner",
"chat.grant-rescind-ownership": "Grant/Rescind Ownership",
"chat.system.user-join": "%1 has joined the room <span class=\"timeago\" title=\"%2\"></span>",

View File

@@ -13,12 +13,14 @@
"all": "All",
"topics": "Topics",
"tags": "Tags",
"categories": "Categories",
"replies": "Replies",
"chat": "Chats",
"group-chat": "Group Chats",
"public-chat": "Public Chats",
"follows": "Follows",
"upvote": "Upvotes",
"awards": "Awards",
"new-flags": "New Flags",
"my-flags": "Flags assigned to me",
"bans": "Bans",
@@ -54,6 +56,7 @@
"user-posted-topic-with-tag-dual": "<strong>%1</strong> has posted a new topic with tags <strong>%2</strong> and <strong>%3</strong>",
"user-posted-topic-with-tag-triple": "<strong>%1</strong> has posted a new topic with tags <strong>%2</strong>, <strong>%3</strong> and <strong>%4</strong>",
"user-posted-topic-with-tag-multiple": "<strong>%1</strong> has posted a new topic with tags <strong>%2</strong>",
"user-posted-topic-in-category": "<strong>%1</strong> has posted a new topic in <strong>%2</strong>",
"user-started-following-you": "<strong>%1</strong> har valgt at følge dig.",
"user-started-following-you-dual": "<strong>%1</strong> og <strong>%2</strong> har valgt at følge dig.",
"user-started-following-you-triple": "<strong>%1</strong>, <strong>%2</strong> and <strong>%3</strong> started following you.",
@@ -80,6 +83,7 @@
"notificationType-upvote": "When someone upvotes your post",
"notificationType-new-topic": "When someone you follow posts a topic",
"notificationType-new-topic-with-tag": "When a topic is posted with a tag you follow",
"notificationType-new-topic-in-category": "When a topic is posted in a category you are watching",
"notificationType-new-reply": "When a new reply is posted in a topic you are watching",
"notificationType-post-edit": "When a post is edited in a topic you are watching",
"notificationType-follow": "When someone starts following you",
@@ -92,5 +96,6 @@
"notificationType-new-register": "When someone gets added to registration queue",
"notificationType-post-queue": "When a new post is queued",
"notificationType-new-post-flag": "When a post is flagged",
"notificationType-new-user-flag": "When a user is flagged"
"notificationType-new-user-flag": "When a user is flagged",
"notificationType-new-reward": "When you earn a new reward"
}

View File

@@ -3,8 +3,10 @@
"post-queue": "Post Queue",
"no-queued-posts": "There are no posts in the post queue.",
"no-single-post": "The topic or post you are looking for is no longer in the queue. It has likely been approved or deleted already.",
"enabling-help": "To enable this feature, go to <a href=\"%1\">Settings &rarr; Post &rarr; Post Queue</a> and enable <strong>Post Queue</strong>.",
"enabling-help": "The post queue is currently <strong>disabled</strong>. To enable this feature, go to <a href=\"%1\">Settings &rarr; Post &rarr; Post Queue</a> and enable <strong>Post Queue</strong>.",
"back-to-list": "Back to Post Queue",
"public-intro": "If you have any queued posts, they will be shown here.",
"public-description": "This forum is configured to automatically queue posts from new accounts, pending moderator approval.<br />If you have queued posts awaiting approval, you will be able to see them here.",
"user": "User",
"when": "When",
"category": "Category",

View File

@@ -0,0 +1,10 @@
{
"awarded-x-reputation": "You have been awarded <strong>%1</strong> reputation",
"awarded-group-membership": "You have been added to the group <strong>%1</strong>",
"essentials/user.reputation-conditional-value": "<span class=\"text-xs\">(Reputation %1 %2)</span>",
"essentials/user.postcount-conditional-value": "<span class=\"text-xs\">(Post Count %1 %2)</span>",
"essentials/user.lastonline-conditional-value": "<span class=\"text-xs\">(Last Online %1 %2)</span>",
"essentials/user.joindate-conditional-value": "<span class=\"text-xs\">(Join Date %1 %2)</span>",
"essentials/user.daysregistered-conditional-value": "<span class=\"text-xs\">(Days Registered %1 %2)</span>"
}

View File

@@ -6,5 +6,7 @@
"sign-in-with-google": "Sign in with Google",
"sign-up-with-google": "Sign up with Google",
"log-in-with-facebook": "Log in with Facebook",
"continue-with-facebook": "Continue with Facebook"
"continue-with-facebook": "Continue with Facebook",
"sign-in-with-linkedin": "Sign in with LinkedIn",
"sign-up-with-linkedin": "Sign up with LinkedIn"
}

View File

@@ -12,5 +12,6 @@
"settings.stickyToolbar.help": "The toolbar on topic and category pages will stick to the top of the page",
"settings.autohideBottombar": "Auto hide bottom bar",
"settings.autohideBottombar.help": "The bottom bar on mobile view will be hidden when the page is scrolled down",
"settings.openSidebars": "Open sidebars",
"settings.chatModals": "Enable chat modals"
}

View File

@@ -17,7 +17,7 @@
"mongo.file-size": "Dateigröße",
"mongo.resident-memory": "Permanenter Speicher",
"mongo.virtual-memory": "Virtueller Speicher",
"mongo.mapped-memory": "Mapped Memory",
"mongo.mapped-memory": "Zugeordneter Speicher",
"mongo.bytes-in": "Bytes eingehend",
"mongo.bytes-out": "Bytes ausgehend",
"mongo.num-requests": "Anzahl an Anfragen",

View File

@@ -29,5 +29,7 @@
"hide-from-groups": "Vor Gruppen verstecken",
"start-date": "Anfangsdatum",
"end-date": "Enddatum",
"hide-on-mobile": "Auf dem Handy verstecken"
"hide-on-mobile": "Auf dem Handy verstecken",
"hide-drafts": "Entwürfe ausblenden",
"show-drafts": "Entwürfe anzeigen"
}

View File

@@ -8,6 +8,7 @@
"edit-privileges": "Rechte bearbeiten",
"select-clear-all": "Alle Aus-/Abwählen",
"chat": "Chat",
"chat-with-privileged": "Chat mit Privilegierten",
"upload-images": "Bilder hochladen",
"upload-files": "Dateien hochladen",
"signature": "Signatur",

View File

@@ -8,7 +8,6 @@
"max-chat-room-name-length": "Maximale Länge der Namen von Chaträumen",
"max-room-size": "Maximale Anzahl von Benutzern in Chatrooms",
"delay": "Zeit zwischen Chat-Nachrichten (ms)",
"newbieDelay": "... für neue Benutzer (ms)",
"notification-delay": "Benachrichtigungsverzögerung für Chat-Nachrichten",
"notification-delay-help": "Zusätzliche Nachrichten, die zwischen dieser Zeit gesendet werden, werden gesammelt, und der Benutzer wird einmal pro Verzögerungszeitraum benachrichtigt. Setze diesen Wert auf 0, um die Verzögerung zu deaktivieren.",
"restrictions.seconds-edit-after": "Anzahl der Sekunden, die eine Chat-Nachricht bearbeitbar bleibt.",

View File

@@ -10,7 +10,6 @@
"length": "Beitragslänge",
"post-queue": "Beitragswarteschlange",
"restrictions": "Posting beschränkungen",
"restrictions-new": "Beschränkungen für neue Benutzer",
"restrictions.post-queue": "Beitragswarteschlange verwenden",
"restrictions.post-queue-rep-threshold": "Benötigte Reputation um Beiträge ohne Warteschlange zu verfassen",
"restrictions.groups-exempt-from-post-queue": "Gruppen auswählen, die von der Beitragswarteschlange ausgenommen sind",
@@ -18,9 +17,6 @@
"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": "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": "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)",

View File

@@ -79,7 +79,14 @@
"follow-replied-topics": "Themen folgen, auf die du antwortest",
"default-notification-settings": "Standardbenachrichtigungseinstellungen",
"categoryWatchState": "Standardmäßige Beobachtung",
"categoryWatchState.watching": "Beobachtet",
"categoryWatchState.tracking": "Verfolgung",
"categoryWatchState.notwatching": "Nicht beobachtet",
"categoryWatchState.ignoring": "Ignoriert"
"categoryWatchState.ignoring": "Ignoriert",
"restrictions-new": "Neue Benutzerbeschränkungen",
"restrictions.rep-threshold": "Mindestansehen bevor die Beschränkungen aufgehoben werden",
"restrictions.seconds-between-new": "Sekunden zwischen Beiträgen für neue Benutzer",
"restrictions.seconds-before-new": "Sekunden, bevor ein neuer Nutzer seinen ersten Beitrag verfassen kann",
"restrictions.seconds-edit-after-new": "Anzahl der Sekunden, die ein Beitrag für neue Benutzer bearbeitbar bleibt (zum Deaktivieren auf 0 setzen)",
"restrictions.milliseconds-between-messages": "Zeit zwischen Chat-Nachrichten für neue Benutzer (ms)",
"restrictions.groups-exempt-from-new-user-restrictions": "Gruppen auswählen, die von den neuen Benutzerbeschränkungen ausgenommen werden sollen"
}

View File

@@ -10,12 +10,15 @@
"watch": "Beobachten",
"ignore": "Ignorieren",
"watching": "Beobachte",
"tracking": "Verfolgung",
"not-watching": "Nicht beobachtet",
"ignoring": "Ignoriert",
"watching.description": "Zeige Themen in Ungelesen und Aktuell",
"watching.description": "Über neue Themen benachrichtigen.<br/>Themen in Ungelesen & Aktuell anzeigen",
"tracking.description": "Zeigt Themen in Ungelesen und Aktuell",
"not-watching.description": "Zeige keine Themen in Ungelesen, zeige sie in Aktuell",
"ignoring.description": "Zeige keine Themen in Ungelesen und Aktuell",
"ignoring.description": "Zeige keine Themen in Ungelesen & Neu",
"watching.message": "Du beobachtest jetzt Aktualisierungen aus dieser Kategorie und allen Unterkategorien",
"tracking.message": "Du verfolgst jetzt Aktualisierungen von dieser Kategorie und allen Unterkategorien",
"notwatching.message": "Du beobachtest jetzt keine Aktualisierungen aus dieser Kategorie und allen Unterkategorien",
"ignoring.message": "Du ignorierst jetzt Aktualisierungen aus dieser Kategorie und allen Unterkategorien",
"watched-categories": "Beobachtete Kategorien",

View File

@@ -91,6 +91,7 @@
"category-not-selected": "Kategorie nicht ausgewählt",
"too-many-posts": "Du kannst nur einen Beitrag innerhalb von %1 Sekunden erstellen - Bitte warte bevor Du erneut einen Beitrag erstellst.",
"too-many-posts-newbie": "Als neuer Benutzer kannst du nur einmal alle %1 Sekunde(n) posten, bis du %2 Reputation erworben hast - bitte warte, bevor du erneut postest",
"too-many-posts-newbie-minutes": "Als neuer Benutzer kannst du nur einmal alle %1 Minute(n) posten, bis du %2 Ansehen erworben hast - bitte warte, bevor du erneut postest",
"already-posting": "Du bist bereits am Posten",
"tag-too-short": "Bitte gebe ein längeres Schlagwort ein. Schlagworte sollten mindestens %1 Zeichen enthalten.",
"tag-too-long": "Bitte gebe ein kürzeres Schlagwort ein. Schlagworte können nicht länger als %1 Zeichen sein.",
@@ -184,7 +185,7 @@
"post-flagged-too-many-times": "Dieser Beitrag wurde bereits von anderen Benutzern gemeldet",
"user-flagged-too-many-times": "Dieser Benutzer wurde bereits von anderen Benutzern gemeldet",
"cant-flag-privileged": "Sie dürfen die Profile oder Inhalte von privilegierten Benutzern (Moderatoren/Globalmoderatoren/Admins) nicht kennzeichnen.",
"cant-locate-flag-report": "Cannot locate flag report",
"cant-locate-flag-report": "Meldung-Report kann nicht gefunden werden",
"self-vote": "Du kannst deine eigenen Beiträge nicht bewerten",
"too-many-upvotes-today": "Du kannst nur %1 Mal pro Tag upvoten",
"too-many-upvotes-today-user": "Du kannst einen Benutzer nur %1 Mal am Tag positiv bewerten",

View File

@@ -9,8 +9,8 @@
"update": "Aktualisieren",
"updated": "Aktualisiert",
"resolved": "Gelöst",
"report-added": "Added",
"report-rescinded": "Rescinded",
"report-added": "Hinzugefügt",
"report-rescinded": "Zurückgezogen",
"target-purged": "Der Inhalt auf den diese Meldung hingewiesen hat, wurde gelöscht und ist nicht mehr verfügbar.",
"target-aboutme-empty": "Dieser Benutzer hat kein \"Über mich\" gesetzt.",

View File

@@ -68,6 +68,8 @@
"chat.in-room": "In diesem Chat-Room",
"chat.kick": "Rauswerfen",
"chat.show-ip": "IP anzeigen",
"chat.copy-text": "Text kopieren",
"chat.copy-link": "Link kopieren",
"chat.owner": "Raumbesitzer",
"chat.grant-rescind-ownership": "Erteilung/Aufhebung des Eigentums",
"chat.system.user-join": "%1 hat den Raum betreten <span class=\"timeago\" title=\"%2\"></span>",

View File

@@ -13,12 +13,14 @@
"all": "Alle",
"topics": "Themen",
"tags": "Tags",
"categories": "Kategorien",
"replies": "Antworten",
"chat": "Chats",
"group-chat": "Gruppenchats",
"public-chat": "Öffentliche Chats",
"follows": "Folgt",
"upvote": "Positive Bewertungen",
"awards": "Auszeichnungen",
"new-flags": "Neue Meldungen",
"my-flags": "Mir zugewiesene Markierungen",
"bans": "Verbannungen",
@@ -47,13 +49,14 @@
"user-posted-to": "<strong>%1</strong> hat auf <strong>%2</strong> geantwortet.",
"user-posted-to-dual": "<strong>%1</strong> und <strong>%2</strong> haben auf <strong>%3</strong> geantwortet.",
"user-posted-to-triple": "<strong>%1</strong>, <strong>%2</strong> und <strong>%3</strong> haben geantwortet auf: <strong>%4</strong>",
"user-posted-to-multiple": "<strong>%1</strong>, <strong>%2</strong> und %3 andere haben geantwortet auf :<strong>%4</strong>",
"user-posted-to-multiple": "<strong>%1</strong>, <strong>%2</strong> und %3 andere haben geantwortet auf: <strong>%4</strong>",
"user-posted-topic": "<strong>%1</strong> hat ein neues Thema erstellt: <strong>%2</strong>",
"user-edited-post": "<strong>%1</strong> hat einen Post in <strong>%2</strong> bearbeitet",
"user-posted-topic-with-tag": "<strong>%1</strong> hat ein neues Thema mit dem Tag <strong>%2</strong> erstellt",
"user-posted-topic-with-tag-dual": "<strong>%1</strong> hat ein neues Thema mit den Tags <strong>%2</strong> and <strong>%3</strong> erstellt",
"user-posted-topic-with-tag-triple": "<strong>%1</strong> hat ein neues Thema mit den Tags <strong>%2</strong>, <strong>%3</strong> und <strong>%4</strong> erstellt",
"user-posted-topic-with-tag-multiple": "<strong>%1</strong> hat ein neues Thema mit den Tags <strong>%2</strong> erstellt",
"user-posted-topic-in-category": "<strong>%1</strong> hat ein neues Thema in <strong>%2</strong> erstellt",
"user-started-following-you": "<strong>%1</strong> folgt dir jetzt.",
"user-started-following-you-dual": "<strong>%1</strong> und <strong>%2</strong> folgen dir jetzt.",
"user-started-following-you-triple": "<strong>%1</strong>, <strong>%2</strong> und <strong>%3</strong> folgen dir jetzt.",
@@ -80,6 +83,7 @@
"notificationType-upvote": "Wenn jemand deinen beitrag positiv bewertet",
"notificationType-new-topic": "Wenn jemand, dem du folgst, einen Beitrag erstellt",
"notificationType-new-topic-with-tag": "Wenn ein Thema mit einem Tag gepostet wird, dem du folgst",
"notificationType-new-topic-in-category": "Wenn ein Thema in einer Kategorie veröffentlicht wird, die du beobachtest",
"notificationType-new-reply": "Wenn es eine neue Antwort auf ein Thema das du beobachtest gibt",
"notificationType-post-edit": "Wenn ein Post bearbeitet wurde, in einem Thema welches du beobachtest",
"notificationType-follow": "Wenn dir jemand neues folgt",
@@ -92,5 +96,6 @@
"notificationType-new-register": "Wenn jemand der Registrierungswarteschlange hinzugefügt wird",
"notificationType-post-queue": "Wenn ein neuer Beitrag eingereiht wird",
"notificationType-new-post-flag": "Wenn ein Beitrag gemeldet wird",
"notificationType-new-user-flag": "Wenn ein Benutzer gemeldet wird"
"notificationType-new-user-flag": "Wenn ein Benutzer gemeldet wird",
"notificationType-new-reward": "Wenn du eine neue Auszeichnung erhältst"
}

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