diff --git a/CHANGELOG.md b/CHANGELOG.md
index 294dbd93ef..84f0853701 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,228 @@
+#### v3.6.0 (2023-12-20)
+
+##### Chores
+
+* **i18n:**
+ * fallback strings for new resources: nodebb.error (d3cfa1b7)
+ * fallback strings for new resources: nodebb.post-queue (64fe1278)
+ * fallback strings for new resources: nodebb.post-queue (f98205c1)
+ * fallback strings for new resources: nodebb.social (081352b6)
+ * fallback strings for new resources: nodebb.modules (4fe84ae8)
+ * fallback strings for new resources: nodebb.admin-settings-chat, nodebb.admin-settings-post, nodebb.admin-settings-user (94777927)
+ * fallback strings for new resources: nodebb.admin-settings-user, nodebb.category, nodebb.notifications (29b3a403)
+ * fallback strings for new resources: nodebb.error (7d8f700f)
+ * fallback strings for new resources: nodebb.modules (83931138)
+* make error:email-taken slightly more descriptive (dd0743d3)
+* up harmony (250cc771)
+* up harmony (9324a75c)
+* incrementing version number - v3.5.3 (ed0e8783)
+* update changelog for v3.5.3 (e49ddaf8)
+* up harmony (dbbf3a2c)
+* up harmony (e4656bd4)
+* incrementing version number - v3.5.2 (52fbb2da)
+* up themes (0ec9d4c3)
+* added missing deprecation warning for .getTopics (9079ad0b)
+* update note at top of file (2de534fa)
+* up dbsearch (b6981693)
+* up themes (9a1f8e9b)
+* incrementing version number - v3.5.1 (4c543488)
+* up themes (ed10dda2)
+* up composer (22d7e92f)
+* up themes (fcdd3737)
+* v4 note for deprecations (f4c36b84)
+* minor re-order of routes/controllers in admin api v3 router/controller (181a9399)
+* add in note at top of files ready for deletion in v4 (54a08087)
+* up harmony (1b8dcbc2)
+* incrementing version number - v3.5.0 (d06fb4f0)
+* 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)
+* **deps:**
+ * update dependency eslint-plugin-import to v2.29.1 (#12229) (055b7597)
+ * update dependency eslint to v8.56.0 (#12231) (a7dd0f92)
+ * update dependency eslint to v8.55.0 (#12203) (32a403b2)
+ * update dependency lint-staged to v15.2.0 (#12210) (9763e97f)
+ * update dependency jsdom to v23.0.1 (#12196) (a50b141f)
+ * update dependency jsdom to v23 (#12186) (8c0472a0)
+ * update commitlint monorepo to v18.4.3 (#12177) (fd5d7b65)
+ * update dependency eslint to v8.54.0 (#12172) (b6275453)
+ * update commitlint monorepo to v18.4.2 (#12169) (d6a92d4c)
+ * update postgres docker tag to v16.1 (#12167) (616ff573)
+ * update mongo docker tag to v7 (#12166) (5f8a4f3a)
+ * update redis docker tag to v7.2.3 (#12165) (c41f9a75)
+ * update dependency lint-staged to v15.1.0 (#12161) (1796ed2b)
+ * update dependency @commitlint/cli to v18.4.1 (#12162) (be3d3393)
+ * update commitlint monorepo to v18.4.0 (#12159) (128c24f2)
+ * update dependency eslint to v8.53.0 (#12151) (d1a7ba35)
+ * update redis docker tag to v7.2.3 (#12152) (2eff6912)
+ * update commitlint monorepo to v18 (#12105) (97016f47)
+ * update dependency sass-embedded to v1.69.5 (#12127) (9e8a2116)
+* **socket.io:** deprecate categories.(isModerator|ignore|watch|getSelectCategories|getMoveCategories|getCategoriesByPrivilege) (f1dbfaa2)
+
+##### Documentation Changes
+
+* fix improper verbiage in category watch schema (f8cc8548)
+* openapi schema for api.search.categories (4ffe0417)
+* **socket.io:**
+ * openapi schema for remaining added routes (5399e86a)
+ * added schema for new routes (f279bca0)
+
+##### New Features
+
+* add 500 page for missing tpls, closes #12230 (06221a0d)
+* remove gif exif stripping exception (f8219aa6)
+* update groups.leave to allow global mods to kick users out of groups (2c6024e0)
+* better layout for manage chat room modal (f4faa0b7)
+* update Messaging.toggleOwner to optionally take a third `state` argument (932bd292)
+* new language strings for post-queue page (5d03321e)
+* add some new social share buttons (ace171a6)
+* docker improvements (#12031) (7f3a9968)
+* closes #12158, add sortable rewards (5ea7dec9)
+* add copy text (4b2491be)
+* closes #12154, add exempt groups (fdff165e)
+* update moved keys (119c3362)
+* move new user restrrictions (3d505c5c)
+* add tracking categories and make watching send notifications (#12147) (84fed97b)
+* add new lang string for minutes (d8d26c9f)
+* add direct message link (#12138) (4c4f3ac9)
+* closes #5584, setup winston to output to file (87a859aa)
+* batch.processSortedSet min/max (#12129) (6c7e6144)
+
+##### Bug Fixes
+
+* fix display post history (dc975838)
+* update isJSON test in request lib (506d7be5)
+* 503 rendering on ajaxify (f7e0fd0b)
+* #12227, fix crash in redirect (2dc1def5)
+* deprecated emailer hook (565ca3cc)
+* extract all pages when stripping metadata (0b3eb6c0)
+* incorrect call to load additional group members (78835ebb)
+* closes #12185, fix cli user password reset (b9050139)
+* don't require login for listing categories (50a90f8e)
+* #12183, remove ensureLoggedIn middleware (0a4f3c8a)
+* remove unused requires (b5940a5d)
+* remove lodash require (f9c471a0)
+* #12171, bump harmony (89a1134c)
+* update design of post-queue (41bdc9e8)
+* update post-queue template for #12171 (63ba4986)
+* language key (4c7c46f3)
+* another missing state (f4bbc5bd)
+* add missing tracking (3b91e8e2)
+* bump harmony (a5e3754b)
+* #12133 dropdown menus on mobile stay open during ajaxify (4601a6f7)
+* update ajaxifyTimer logic to only drop the request if the URL is the same as the one it's already processing (b4297cd8)
+* #12141, use apiv3 for category search module (cefd4061)
+* made parentCid optional in api.search.categories (581516c8)
+* don't count internal links towards link count when restricting new users from posting links (022fa0e7)
+* closes #12126, fix language keys (075cd598)
+* param (e5a60dc8)
+* handle public chat rooms too (6a696c43)
+* suppress chat message notifications for users who are known to be in the chat room (uid is present in the corresponding socket.io room) (18c27d1a)
+* **deps:**
+ * update dependency workerpool to v9 (#12234) (2cccbcf6)
+ * update dependency sharp to v0.33.1 (#12233) (45143000)
+ * update dependency csrf-sync to v4.0.3 (#12232) (9e2a6f86)
+ * update dependency ace-builds to v1.32.2 (#12228) (b6ca117a)
+ * update dependency ace-builds to v1.32.1 (#12226) (6036d144)
+ * update dependency esbuild to v0.19.9 (#12224) (d96d4d09)
+ * update dependency @fontsource/inter to v5.0.16 (#12219) (e32eb8b3)
+ * update dependency chart.js to v4.4.1 (#12217) (b6b569c0)
+ * update dependency nodebb-theme-persona to v13.2.49 (#12218) (6dab99fd)
+ * update dependency postcss to v8.4.32 (#12204) (da879704)
+ * update dependency @fortawesome/fontawesome-free to v6.5.1 (#12198) (b41c7f2a)
+ * update dependency nodebb-theme-harmony to v1.1.101 (#12199) (72d6a4b1)
+ * update dependency sortablejs to v1.15.1 (#12200) (cd625705)
+ * update dependency ace-builds to v1.32.0 (#12197) (75f063ba)
+ * update dependency @fortawesome/fontawesome-free to v6.5.0 (#12193) (a94f4a48)
+ * update dependency sharp to v0.33.0 (#12194) (1f287c74)
+ * update dependency fs-extra to v11.2.0 (#12191) (4eaf2320)
+ * update dependency passport to v0.7.0 (#12190) (bbf7c5e1)
+ * update dependency esbuild to v0.19.8 (#12187) (bc59856e)
+ * update dependency lru-cache to v10.1.0 (#12181) (22932bdb)
+ * update dependency esbuild to v0.19.7 (#12176) (00cb5839)
+ * update dependency lru-cache to v10.0.3 (#12175) (c404ef73)
+ * update dependency ace-builds to v1.31.2 (#12168) (b4a41af9)
+ * update dependency mongodb to v6.3.0 (#12170) (85936a59)
+ * update dependency lru-cache to v10.0.2 (#12160) (9d18d3c7)
+ * update dependency helmet to v7.1.0 (#12155) (50aa1a7c)
+ * update dependency async to v3.2.5 (#12150) (0e9eafa1)
+ * update dependency nodebb-theme-persona to v13.2.44 (#12149) (b489af06)
+ * update dependency nodebb-theme-harmony to v1.1.95 (#12148) (77b0baea)
+ * update dependency connect-pg-simple to v9.0.1 (#12144) (4e23d0d1)
+ * update dependency nodebb-theme-persona to v13.2.43 (#12140) (91e45fa2)
+ * update dependency nodebb-theme-harmony to v1.1.92 (#12131) (a3452c8f)
+ * update dependency nodebb-theme-peace to v2.1.24 (#12139) (29a59b90)
+ * update dependency spdx-license-list to v6.8.0 (2337d641)
+ * update dependency nodebb-plugin-composer-default to v10.2.25 (#12136) (cdb40719)
+ * update dependency cron to v3.1.6 (#12132) (2fb3af3c)
+ * update dependency ace-builds to v1.31.1 (#12135) (6b28f1dc)
+ * update dependency workerpool to v8 (#12121) (9bed7646)
+ * update dependency sass to v1.69.5 (#12128) (b351c00a)
+* **socket.io:** update getPosts controller to return object containing posts instead of straight array (54000aab)
+
+##### Other Changes
+
+* **socket.io:** deprecate socketGroups.getChatGroups in favour of api.admin.listGroups (dc4cc74f)
+
+##### Refactors
+
+* line breaks good (4e560ade)
+* replace deprecated call with api call (f91b823e)
+* move async call to parallel (dabc282d)
+* **socket.io:**
+ * deprecate SocketModules.chats.typing in favour of api.chats.toggleTyping (c1e6be77)
+ * deprecate SocketModules.chats.loadPinnedMessages in favour of api.chats.getPinnedMessages" (401e8636)
+ * deprecate SocketModules.chats.searchMessages in favour of api.search.roomMessages (f9dc3502)
+ * deprecate SocketModules.chats.setNotificationSetting in favour of api.chats.watch (75c8cda1)
+ * deprecated SocketModules.chats.toggleOwner in favour of api.chats.toggleOwner (b13c6ee4)
+ * deprecated SocketModules.chats.searchMembers in favour of api.search.roomUsers (6e952263)
+ * deprecate SocketModules.sortPublicRooms in favour of api.chats.sortPublicRooms (62b7dfd4)
+ * deprecate SocketModules.chat.getUnreadCount in favour of api.chats.getUnread (5eaffb42)
+ * deprecate SocketModules.chats.getIP in favour of api.chats.getIpAddress (214989a8)
+ * deprecate SocketModules.chats.hasPrivateChat in favour of api.users.getPrivateRoomId (0d3c94e6)
+ * deprecate SocketModules.chats.canMessage and .markAllRead with no alternative. deprecate .getRecentChats in favour of api.chats.list (a4133500)
+ * deprecate SocketModules.chats.isDnD in favour of api.users.getStatus (eebea4df)
+ * deprecate SocketModules.chats.getRaw in favour of api.chats.getRawMessage (c4b4e79b)
+ * deprecate socketGroups.loadMoreMembers in favour of api.groups.listMembers (807d778c)
+ * deprecate socketGroups.searchMembers in favour of api.groups.listMembers (d2f3333a)
+ * deprecate socketGroups.loadMore in favour of api.groups.list (b61e8147)
+ * deprecate categories.categorySearch in favour of api.search.categories (00de9d5b)
+ * deprecate categories.loadMore in favour of api.categories.getTopics (1ce4ca54)
+ * deprecate categories.loadMoreSubCategories in favour of api.categories.getChildren (010727f5)
+ * deprecate categories.setWatchState in favour of api.categories.setWatchState (d7c6b3d6)
+ * deprecate categories.getTopicCount in favour of api.categories.getTopicCount (c442b6e6)
+ * deprecate categories.get in favour of api.categories.list (96046373)
+ * deprecate categories.getRecentReplies in favour of api.categories.getPosts (52b78e83)
+
+##### Tests
+
+* migrate socket modules tests to v3 api (445b70de)
+* migrate socket.io groups tests to use api v3 (2c1c4dfe)
+
#### v3.5.3 (2023-12-13)
##### Chores
diff --git a/install/package.json b/install/package.json
index 38c7e8cf0d..a98053b33f 100644
--- a/install/package.json
+++ b/install/package.json
@@ -2,7 +2,7 @@
"name": "nodebb",
"license": "GPL-3.0",
"description": "NodeBB Forum",
- "version": "3.5.3",
+ "version": "3.6.0",
"homepage": "https://www.nodebb.org",
"repository": {
"type": "git",
@@ -63,7 +63,7 @@
"csrf-sync": "4.0.3",
"daemon": "1.1.0",
"diff": "5.1.0",
- "esbuild": "0.19.9",
+ "esbuild": "0.19.10",
"express": "4.18.2",
"express-session": "1.17.3",
"express-useragent": "1.0.15",
@@ -94,7 +94,7 @@
"multiparty": "4.2.3",
"nconf": "0.12.1",
"nodebb-plugin-2factor": "7.4.0",
- "nodebb-plugin-composer-default": "10.2.29",
+ "nodebb-plugin-composer-default": "10.2.30",
"nodebb-plugin-dbsearch": "6.2.3",
"nodebb-plugin-emoji": "5.1.13",
"nodebb-plugin-emoji-android": "4.0.0",
@@ -103,7 +103,7 @@
"nodebb-plugin-ntfy": "1.7.3",
"nodebb-plugin-spam-be-gone": "2.2.0",
"nodebb-rewards-essentials": "1.0.0",
- "nodebb-theme-harmony": "1.1.104",
+ "nodebb-theme-harmony": "1.1.105",
"nodebb-theme-lavender": "7.1.5",
"nodebb-theme-peace": "2.1.25",
"nodebb-theme-persona": "13.2.49",
@@ -146,7 +146,7 @@
"webpack": "5.89.0",
"webpack-merge": "5.10.0",
"winston": "3.11.0",
- "workerpool": "9.0.1",
+ "workerpool": "9.0.3",
"xml": "1.0.1",
"xregexp": "5.1.1",
"yargs": "17.7.2",
@@ -195,4 +195,4 @@
"url": "https://github.com/barisusakli"
}
]
-}
+}
\ No newline at end of file
diff --git a/public/language/ar/error.json b/public/language/ar/error.json
index ccd2d6a6aa..eab9596829 100644
--- a/public/language/ar/error.json
+++ b/public/language/ar/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "رقم الصفحة غير صحيح ، يجب أن يكون بين %1 و %2 .",
"username-taken": "اسم المستخدم مأخوذ",
- "email-taken": "البريد الالكتروني مأخوذ",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/bg/error.json b/public/language/bg/error.json
index 7da76bf1ee..ed6a572747 100644
--- a/public/language/bg/error.json
+++ b/public/language/bg/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Вече има папка с това име",
"invalid-pagination-value": "Грешен номер на странициране, трябва да бъде между %1 и %2",
"username-taken": "Потребителското име е заето",
- "email-taken": "Е-пощата е заета",
+ "email-taken": "Адресът на е-пощата вече е зает.",
"email-nochange": "Въведената е-поща е същата като съществуващата.",
"email-invited": "На тази е-поща вече е била изпратена покана",
"email-not-confirmed": "Публикуването в някои категории и теми ще бъде възможно едва след като е-пощата Ви бъде потвърдена. Щръкнете тук, за да Ви изпратим е-писмо за потвърждение.",
diff --git a/public/language/bn/error.json b/public/language/bn/error.json
index dde2fe1266..c16239e894 100644
--- a/public/language/bn/error.json
+++ b/public/language/bn/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Invalid pagination value, must be at least %1 and at most %2",
"username-taken": "ইউজারনেম আগেই ব্যবহৃত",
- "email-taken": "ইমেইল আগেই ব্যবহৃত",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/cs/error.json b/public/language/cs/error.json
index 9cd0598a1c..1ad479c46a 100644
--- a/public/language/cs/error.json
+++ b/public/language/cs/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Neplatná hodnota stránkování, musí být alespoň %1 a nejvýše %2",
"username-taken": "Uživatelské jméno je již použito",
- "email-taken": "Tento e-mail je již použit",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/da/error.json b/public/language/da/error.json
index 0c7e6c80bb..46648319d1 100644
--- a/public/language/da/error.json
+++ b/public/language/da/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Ugyldig side værdi, skal mindst være %1 og maks. %2",
"username-taken": "Brugernavn optaget",
- "email-taken": "Emailadresse allerede i brug",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/de/error.json b/public/language/de/error.json
index f053bfcd1a..3631a2ef53 100644
--- a/public/language/de/error.json
+++ b/public/language/de/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Ordner existiert",
"invalid-pagination-value": "Ungültige Seitennummerierung, muss mindestens %1 und maximal %2 sein",
"username-taken": "Der Benutzername ist bereits vergeben",
- "email-taken": "E-Mail-Adresse vergeben",
+ "email-taken": "Email address is already taken.",
"email-nochange": "Die eingegebene E-Mail ist die gleiche wie die bereits hinterlegte E-Mail.",
"email-invited": "E-Mail wurde bereits eingeladen",
"email-not-confirmed": "Das Schreiben von Beiträgen in einigen Kategorien oder Themen ist erst möglich, wenn Ihre E-Mail bestätigt wurde. Bitte klicken Sie hier, um eine Bestätigungs-E-Mail zu senden.",
diff --git a/public/language/el/error.json b/public/language/el/error.json
index c0276445ed..b36f6a9f74 100644
--- a/public/language/el/error.json
+++ b/public/language/el/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Invalid pagination value, must be at least %1 and at most %2",
"username-taken": "Το όνομα χρήστη είναι πιασμένο",
- "email-taken": "Το email είναι πιασμένο",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/en-GB/error.json b/public/language/en-GB/error.json
index 5fbc1bfb14..75a8328aa1 100644
--- a/public/language/en-GB/error.json
+++ b/public/language/en-GB/error.json
@@ -37,7 +37,7 @@
"invalid-pagination-value": "Invalid pagination value, must be at least %1 and at most %2",
"username-taken": "Username taken",
- "email-taken": "Email taken",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/en-US/error.json b/public/language/en-US/error.json
index 94c074ea3a..82af8e415c 100644
--- a/public/language/en-US/error.json
+++ b/public/language/en-US/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Invalid pagination value, must be at least %1 and at most %2",
"username-taken": "Username taken",
- "email-taken": "Email taken",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/en-x-pirate/error.json b/public/language/en-x-pirate/error.json
index 94c074ea3a..82af8e415c 100644
--- a/public/language/en-x-pirate/error.json
+++ b/public/language/en-x-pirate/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Invalid pagination value, must be at least %1 and at most %2",
"username-taken": "Username taken",
- "email-taken": "Email taken",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/es/error.json b/public/language/es/error.json
index e355f3e11a..6631a88941 100644
--- a/public/language/es/error.json
+++ b/public/language/es/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Número de página inválido, debe estar entre %1 y %2",
"username-taken": "Nombre de usuario ocupado",
- "email-taken": "Correo electrónico ocupado",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/et/error.json b/public/language/et/error.json
index 21737f741b..ffb6761ed1 100644
--- a/public/language/et/error.json
+++ b/public/language/et/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Väär lehekülje numeratsioon, peab olema vähemalt %1 ja kõige rohkem %2",
"username-taken": "Kasutajanimi on juba võetud",
- "email-taken": "Email on võetud",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/fa-IR/error.json b/public/language/fa-IR/error.json
index 28255147f4..abcfb604fd 100644
--- a/public/language/fa-IR/error.json
+++ b/public/language/fa-IR/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "ارزش گذاری صفحه نامعتبر است، کمترین مقدار %1 و بیشترین مقدار %2 باید باشد",
"username-taken": "این نام کاربری گرفته شده است.",
- "email-taken": "این ایمیل گرفته شده است.",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "ایمیل قبلا دعوت شدهاست",
"email-not-confirmed": "پس از تایید ایمیل شما، ارسال در برخی دسته ها یا موضوعات فعال می شود، لطفاً برای ارسال ایمیل تایید اینجا را کلیک کنید.",
diff --git a/public/language/fi/error.json b/public/language/fi/error.json
index deefef7725..bc8e82ddcb 100644
--- a/public/language/fi/error.json
+++ b/public/language/fi/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Invalid pagination value, must be at least %1 and at most %2",
"username-taken": "Käyttäjänimi varattu",
- "email-taken": "Sähköpostiosoite varattu",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/fr/error.json b/public/language/fr/error.json
index 9c3ba9dee9..f77023cba6 100644
--- a/public/language/fr/error.json
+++ b/public/language/fr/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Le dossier existe",
"invalid-pagination-value": "Valeur de pagination invalide. Celle-ci doit être comprise entre %1 et %2.",
"username-taken": "Ce nom d'utilisateur est déjà pris",
- "email-taken": "E-mail déjà utilisé",
+ "email-taken": "Email address is already taken.",
"email-nochange": "Le mail saisi est déjà enregistré.",
"email-invited": "Cet utilisateur a déjà été invité.",
"email-not-confirmed": "La publication dans certaines catégories ou sujets sera activée après confirmation de l'e-mail, veuillez cliquer ici pour envoyer un e-mail de confirmation.",
diff --git a/public/language/gl/error.json b/public/language/gl/error.json
index 9b8a178993..5ca2258d30 100644
--- a/public/language/gl/error.json
+++ b/public/language/gl/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Valor de paxinación incorreto, ten que estar entre %1 e %2",
"username-taken": "Nome de usuario en uso",
- "email-taken": "Enderezo electrónico en uso",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/he/error.json b/public/language/he/error.json
index 6593829a9a..b0f1cd5991 100644
--- a/public/language/he/error.json
+++ b/public/language/he/error.json
@@ -32,7 +32,7 @@
"folder-exists": "התיקיה קיימת",
"invalid-pagination-value": "ערך דף לא חוקי, חייב להיות לפחות %1 ולא מעל %2",
"username-taken": "שם משתמש תפוס",
- "email-taken": "כתובת דוא\"ל תפוסה",
+ "email-taken": "Email address is already taken.",
"email-nochange": "כתובת דוא\"ל שהוזן זהה לדוא\"ל שנמצא כבר",
"email-invited": "נשלחה כבר הזמנה לדוא\"ל זה",
"email-not-confirmed": "פרסום בקטגוריות או בנושאים מסוימים מופעל רק לאחר אישור הדוא\"ל שלכם, אנא לחצו כאן כדי לשלוח אימות לדוא\"ל שלכם.",
diff --git a/public/language/he/notifications.json b/public/language/he/notifications.json
index ba5f2a41d3..5ecb4b5aad 100644
--- a/public/language/he/notifications.json
+++ b/public/language/he/notifications.json
@@ -48,7 +48,7 @@
"user-flagged-user-multiple": "%1, %2 ו-%3 אחרים דיווחו על פרופיל משתמש (%4)",
"user-posted-to": "%1 פרסם תגובה ל: %2",
"user-posted-to-dual": "%1 ו%2 הגיבו ל: %3",
- "user-posted-to-triple": "%1, %2 ו3% הגיבו ל: %4",
+ "user-posted-to-triple": "%1, %2 ו%3 הגיבו ל: %4",
"user-posted-to-multiple": "%1, %2 ו-%3 אחרים הגיבו ל: %4",
"user-posted-topic": "%1 העלה נושא חדש: %2",
"user-edited-post": "%1 ערך פוסט ב: %2",
@@ -59,7 +59,7 @@
"user-posted-topic-in-category": "%1 פרסם נושא חדש ב%2",
"user-started-following-you": "%1 התחיל לעקוב אחריך.",
"user-started-following-you-dual": "%1 ו-%2 התחילו לעקוב אחריך.",
- "user-started-following-you-triple": "%1, %2 ו3% התחילו לעקוב אחריך.",
+ "user-started-following-you-triple": "%1, %2 ו%3 התחילו לעקוב אחריך.",
"user-started-following-you-multiple": "%1, %2 ו-%3 אחרים התחילו לעקוב אחריך.",
"new-register": "%1 שלח בקשת הרשמה.",
"new-register-multiple": "ישנן %1 בקשות הרשמה שמחכות לבדיקה.",
diff --git a/public/language/hr/error.json b/public/language/hr/error.json
index 61c76c992a..f1a3b4de15 100644
--- a/public/language/hr/error.json
+++ b/public/language/hr/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Netočno numeriranje stranica, mora biti %1 ili %2",
"username-taken": "Korisničko ime je zauzeto",
- "email-taken": "Email je zauzet",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/hu/error.json b/public/language/hu/error.json
index 5f3185374d..34e94867a3 100644
--- a/public/language/hu/error.json
+++ b/public/language/hu/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Mappa létezik",
"invalid-pagination-value": "Érvénytelen lapozási érték, legalább %1 kell lennie és legfeljebb %2 -nak/nek",
"username-taken": "Foglalt felhasználónév",
- "email-taken": "Foglalt e-mail",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Ez az email cím már meg lett hívva",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/hy/admin/manage/privileges.json b/public/language/hy/admin/manage/privileges.json
index c9fda8e370..d3e544e5ca 100644
--- a/public/language/hy/admin/manage/privileges.json
+++ b/public/language/hy/admin/manage/privileges.json
@@ -8,7 +8,7 @@
"edit-privileges": "Խմբագրել արտոնությունները",
"select-clear-all": "Ընտրել/Մաքրել բոլորը",
"chat": "Զրույց",
- "chat-with-privileged": "Chat with Privileged",
+ "chat-with-privileged": "Խոսել առավելություն ունեցողի հետ",
"upload-images": "Վերբեռնեք պատկերներ",
"upload-files": "Վերբեռնել Ֆայլեր",
"signature": "Ստորագրություն",
diff --git a/public/language/hy/error.json b/public/language/hy/error.json
index eafee7dc2e..8e45d7d637 100644
--- a/public/language/hy/error.json
+++ b/public/language/hy/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Թղթապանակ գոյություն ունի",
"invalid-pagination-value": "Էջավորման անվավեր արժեքը, պետք է լինի առնվազն %1 և առավելագույնը %2",
"username-taken": "Օգտագործողի անունը վերցված է",
- "email-taken": "Էլփոստը վերցված է",
+ "email-taken": "Email address is already taken.",
"email-nochange": "Մուտքագրված էլփոստը նույնն է, ինչ ֆայլում արդեն առկա էլ.",
"email-invited": "Էլփոստն արդեն հրավիրված էր",
"email-not-confirmed": "Որոշ կատեգորիաներում կամ թեմաներում հրապարակելը միացված կլինի, երբ ձեր էլփոստը հաստատվի, խնդրում ենք սեղմել այստեղ՝ հաստատող էլփոստը ուղարկելու համար:",
diff --git a/public/language/hy/user.json b/public/language/hy/user.json
index 445ae4ddbc..cb5ead7b7f 100644
--- a/public/language/hy/user.json
+++ b/public/language/hy/user.json
@@ -178,7 +178,7 @@
"sessions.description": "Այս էջը թույլ է տալիս դիտել ցանկացած ակտիվ սեանս այս ֆորումում և անհրաժեշտության դեպքում չեղարկել դրանք: Դուք կարող եք չեղարկել ձեր սեփական սեանսը՝ դուրս գալով ձեր հաշվից:",
"revoke-session": "Չեղյալ համարել նիստը",
"browser-version-on-platform": "%1 %2 %3-ում",
- "consent.title": "Your Rights & Consent",
+ "consent.title": "Ձեր Իրավունքները և Համաձայնությունը",
"consent.lead": "Այս համայնքի ֆորումը հավաքում և մշակում է ձեր անձնական տվյալները:",
"consent.intro": "Մենք օգտագործում ենք այս տեղեկատվությունը խստորեն այս համայնքում ձեր փորձառությունն անհատականացնելու, ինչպես նաև ձեր կատարած գրառումները ձեր օգտատիրոջ հաշվին կապելու համար: Գրանցման քայլի ընթացքում ձեզանից պահանջվել է տրամադրել օգտատիրոջ անուն և էլ.փոստի հասցե, դուք կարող եք նաև լրացուցիչ տեղեկություններ տրամադրել այս կայքում ձեր օգտատիրոջ պրոֆիլը լրացնելու համար: Մենք պահպանում ենք այս տեղեկատվությունը ձեր օգտատիրոջ հաշվի ողջ կյանքի ընթացքում, և դուք կարող եք հետ վերցնել համաձայնությունը: ցանկացած պահի ջնջելով ձեր հաշիվը: Ցանկացած ժամանակ դուք կարող եք պահանջել ձեր ներդրման պատճենը այս կայքում՝ ձեր իրավունքների և amp; Համաձայնության էջ: Եթե ունեք հարցեր կամ մտահոգություններ, խորհուրդ ենք տալիս դիմել այս ֆորումի ադմինիստրատիվ թիմին:",
"consent.email-intro": "Երբեմն, մենք կարող ենք նամակներ ուղարկել ձեր գրանցված էլ․ հասցեին՝ թարմացումներ տրամադրելու և/կամ ձեզ ծանուցելու նոր գործունեության մասին, որը վերաբերում է ձեզ: Դուք կարող եք հարմարեցնել համայնքի ամփոփման հաճախականությունը (ներառյալ այն ուղղակիորեն անջատելը), ինչպես նաև ընտրել, թե ինչ տեսակի ծանուցումներ պետք է ստանալ էլփոստի միջոցով՝ ձեր օգտվողի կարգավորումների էջի միջոցով:",
diff --git a/public/language/id/error.json b/public/language/id/error.json
index 3417679b95..565dccea43 100644
--- a/public/language/id/error.json
+++ b/public/language/id/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Nomor pagination tidak valid, minimal %1 dan maksimal %2",
"username-taken": "Username sudah terdaftar",
- "email-taken": "Email sudah terdaftar",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/it/error.json b/public/language/it/error.json
index 949c70c693..0ab19c5905 100644
--- a/public/language/it/error.json
+++ b/public/language/it/error.json
@@ -32,7 +32,7 @@
"folder-exists": "La cartella esiste",
"invalid-pagination-value": "Valore di impaginazione non valido, deve essere almeno %1 ed al massimo %2",
"username-taken": "Nome utente già esistente",
- "email-taken": "Email già esistente",
+ "email-taken": "L'indirizzo email è già stato utilizzato.",
"email-nochange": "L'email inserita è la stessa dell'email già presente in archivio.",
"email-invited": "L'email è già stata invitata",
"email-not-confirmed": "Sarai abilitato a postare in alcune categorie o discussioni una volta che la tua email sarà confermata, per favore clicca qui per inviare una email di conferma.",
diff --git a/public/language/ja/error.json b/public/language/ja/error.json
index f4b155c382..a4f82ae94a 100644
--- a/public/language/ja/error.json
+++ b/public/language/ja/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "無効なページネーション値です。%1 から%2の値でなければありません。",
"username-taken": "ユーザー名は既に使われています",
- "email-taken": "メールアドレスは既に使われています",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/ko/error.json b/public/language/ko/error.json
index e86031bd78..b20b00c75b 100644
--- a/public/language/ko/error.json
+++ b/public/language/ko/error.json
@@ -32,7 +32,7 @@
"folder-exists": "폴더가 이미 존재합니다.",
"invalid-pagination-value": "올바르지 않은 페이지 값입니다. 최소 %1에서 최대 2% 사이로 설정해야 합니다.",
"username-taken": "이미 사용 중인 사용자명입니다.",
- "email-taken": "이미 사용 중인 이메일입니다.",
+ "email-taken": "Email address is already taken.",
"email-nochange": "입력한 전자 메일이 이미 등록되어 있는 전자 메일과 동일합니다.",
"email-invited": "해당 이메일의 사용자는 이미 초대되었습니다.",
"email-not-confirmed": "이메일 인증이 완료된 후 카테고리나 화제에 새로운 포스트를 작성할 수 있습니다. 여기를 눌러 인증 메일을 다시 발송할 수 있습니다.",
diff --git a/public/language/lt/error.json b/public/language/lt/error.json
index fc6a4aee61..ae5d5aa576 100644
--- a/public/language/lt/error.json
+++ b/public/language/lt/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Bloga puslapių išdėstymo reikšmė. Ji turėtų būti ne mažesnė nei %1 ir ne didesnė nei %2",
"username-taken": "Vartotojo vardas jau užimtas",
- "email-taken": "El. pašto adresas jau užimtas",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/lv/error.json b/public/language/lv/error.json
index 0ef88697ab..e737d4586a 100644
--- a/public/language/lv/error.json
+++ b/public/language/lv/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Nederīgs vienību skaits, ir jābūt vismaz %1 un ne vairāk kā %2",
"username-taken": "Lietotājvārds jau izmantots",
- "email-taken": "E-pasta adrese jau izmantota",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/ms/error.json b/public/language/ms/error.json
index 144c180198..f8365ec267 100644
--- a/public/language/ms/error.json
+++ b/public/language/ms/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Nombor halaman tidak sah, mesti tidak kurang dari %1 dan tidak lebih dari %2",
"username-taken": "Nama pengguna telah digunakan",
- "email-taken": "Emel telah digunakan",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/nb/error.json b/public/language/nb/error.json
index 5c371bdb20..d8ce910e44 100644
--- a/public/language/nb/error.json
+++ b/public/language/nb/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Mappen eksisterer",
"invalid-pagination-value": "Ugyldig sidetall, må være minst %1 og maks %2",
"username-taken": "Brukernavn opptatt",
- "email-taken": "E-post opptatt",
+ "email-taken": "Email address is already taken.",
"email-nochange": "E-posten som er angitt er den samme e-posten som allerede er lagret.",
"email-invited": "E-post har allerede fått invitasjon",
"email-not-confirmed": "Posting i enkelte kategorier eller emner blir aktivert når e-posten din er bekreftet. Klikk her for å sende en bekreftelses-e-post.",
diff --git a/public/language/nl/error.json b/public/language/nl/error.json
index f918aec5b7..60fd8908fb 100644
--- a/public/language/nl/error.json
+++ b/public/language/nl/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Ongeldig paginering waarde. De waarde moet op z'n minst %1 zijn en niet hoger dan %2 zijn.",
"username-taken": "Gebruikersnaam is al in gebruik",
- "email-taken": "E-mailadres is al in gebruik",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "E-mail was reeds uitgenodigd",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/pl/error.json b/public/language/pl/error.json
index 90f035591f..9cf044753b 100644
--- a/public/language/pl/error.json
+++ b/public/language/pl/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder istnieje",
"invalid-pagination-value": "Błędna wartość paginacji, zakres od %1 do %2",
"username-taken": "Login zajęty",
- "email-taken": "Email zajęty",
+ "email-taken": "Email address is already taken.",
"email-nochange": "Podany email jest taki sam jak ten już zapisany.",
"email-invited": "Ten adres email otrzymał już zaproszenie",
"email-not-confirmed": "Pisanie w niektórych kategoriach albo tematach jest dozwolone wtedy gdy Twój adres email został zweryfikowany, proszę kliknij tutaj aby wysłać potwierdzający email.",
diff --git a/public/language/pt-BR/error.json b/public/language/pt-BR/error.json
index 4b5153a357..feb7016c34 100644
--- a/public/language/pt-BR/error.json
+++ b/public/language/pt-BR/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Valor de paginação inválido, precisa ser no mínimo %1 e no máximo %2",
"username-taken": "Nome de usuário já existe",
- "email-taken": "Email já cadastrado",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "O email já foi convidado",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/pt-PT/error.json b/public/language/pt-PT/error.json
index 0c6b2622f2..2f5e69c835 100644
--- a/public/language/pt-PT/error.json
+++ b/public/language/pt-PT/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Valor de paginação errado, deve ser no mínimo %1 e no máximo %2",
"username-taken": "Nome de utilizar já utilizado",
- "email-taken": "E-mail já utilizado",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/ro/error.json b/public/language/ro/error.json
index b58ac300a4..b1c86605cb 100644
--- a/public/language/ro/error.json
+++ b/public/language/ro/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Invalid pagination value, must be at least %1 and at most %2",
"username-taken": "Numele de utilizator este deja folosit",
- "email-taken": "Adresa de email este deja folostă",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/ru/error.json b/public/language/ru/error.json
index 9dedaa23c0..afbe04a4f8 100644
--- a/public/language/ru/error.json
+++ b/public/language/ru/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Папка существует",
"invalid-pagination-value": "Неправильно указан номер страницы. Значение должно быть в диапазоне от %1 до %2",
"username-taken": "Это имя пользователя уже занято",
- "email-taken": "Пользователь с таким адресом электронной почты уже зарегистрирован",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Электронная почта уже была приглашена",
"email-not-confirmed": "Вы не сможете отправлять сообщения, пока ваш адрес электронной почты не подтверждён. Пожалуйста, нажмите здесь, чтобы подтвердить его.",
diff --git a/public/language/rw/error.json b/public/language/rw/error.json
index 923c9e90b1..106e69bcce 100644
--- a/public/language/rw/error.json
+++ b/public/language/rw/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Invalid pagination value, must be at least %1 and at most %2",
"username-taken": "Izina ryarafashwe mbere",
- "email-taken": "Email yarafashwe mbere",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/sc/error.json b/public/language/sc/error.json
index 94c074ea3a..82af8e415c 100644
--- a/public/language/sc/error.json
+++ b/public/language/sc/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Invalid pagination value, must be at least %1 and at most %2",
"username-taken": "Username taken",
- "email-taken": "Email taken",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/sk/error.json b/public/language/sk/error.json
index d65ea0d1fe..d150075f39 100644
--- a/public/language/sk/error.json
+++ b/public/language/sk/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Neplatná stránkovania hodnota, musí byť najmenej %1 a najviac %2",
"username-taken": "Užívateľské meno je už obsadené",
- "email-taken": "Tento e-mail je už obsadený",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/sl/error.json b/public/language/sl/error.json
index 2c1fbd65f7..d71d2d29b9 100644
--- a/public/language/sl/error.json
+++ b/public/language/sl/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Napačna vrednost za številčenje strani. Vrednost mora biti najmanj %1 in največ %2.",
"username-taken": "Uporabniško ime je že zasedeno.",
- "email-taken": "E-poštni naslov je že zaseden.",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/sq-AL/error.json b/public/language/sq-AL/error.json
index eacea9b780..b12595e17e 100644
--- a/public/language/sq-AL/error.json
+++ b/public/language/sq-AL/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Ky dokument ekziston",
"invalid-pagination-value": "Vlera e pasaktë e faqes, duhet të jetë së paku %1 dhe maksimumi %2",
"username-taken": "Username është i zënë",
- "email-taken": "Email-i është i zënë",
+ "email-taken": "Email address is already taken.",
"email-nochange": "Email-i i futur është i njëjtë me emailin ekzistues në sistem.",
"email-invited": "Email-i është ftuar më herët",
"email-not-confirmed": "Postimi në disa kategori ose tema aktivizohet pasi emaili juaj të konfirmohet, ju lutemi klikoni këtu për të dërguar një email konfirmimi.",
diff --git a/public/language/sr/error.json b/public/language/sr/error.json
index b192346d6b..a74ae73add 100644
--- a/public/language/sr/error.json
+++ b/public/language/sr/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Фасцикла постоји",
"invalid-pagination-value": "Неважећа вредност приликом нумерисања страница, мора бити најмање %1 а највише %2",
"username-taken": "Корисничко име је заузето",
- "email-taken": "Адреса е-поште је заузета",
+ "email-taken": "Email address is already taken.",
"email-nochange": "Унета е-пошта је иста као е-пошта која је већ у евиденцији.",
"email-invited": "Е-пошта је већ позвана",
"email-not-confirmed": "Објављивање у неким категоријама или темама је омогућено када потврдите вашу е-пошту, кликните овде да бисте послали е-поруку за потврду.",
diff --git a/public/language/sv/error.json b/public/language/sv/error.json
index d24da9429a..cc137acec5 100644
--- a/public/language/sv/error.json
+++ b/public/language/sv/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Ogiltigt värde för siduppdelning. Värdet måste vara mellan %1 och %2",
"username-taken": "Användarnamn upptaget",
- "email-taken": "Epostadress upptagen",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/th/error.json b/public/language/th/error.json
index b29f8c33d4..850325824c 100644
--- a/public/language/th/error.json
+++ b/public/language/th/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "หมายเลขหน้าไม่ถูกต้อง จำเป็นต้องเป็นตัวเลขอย่างน้อย %1 และอย่างมาก %2",
"username-taken": "ชื่อผู้ใช้นี้มีการใช้แล้ว",
- "email-taken": "อีเมลนี้มีการใช้แล้ว",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/tr/error.json b/public/language/tr/error.json
index 166fb26420..18f93f0bab 100644
--- a/public/language/tr/error.json
+++ b/public/language/tr/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Dosya mevcut",
"invalid-pagination-value": "Geçersiz sayfa numarası girdiniz, en az %1 ve en fazla %2 olabilir",
"username-taken": "Kullanıcı İsmi Alınmış",
- "email-taken": "E-posta Alınmış",
+ "email-taken": "Email address is already taken.",
"email-nochange": "Girdiğiniz e-posta var olan e-posta ile aynı",
"email-invited": "E-posta halihazırda davet edilmiş",
"email-not-confirmed": "Ancak e-postanız onaylandıktan sonra bazı kategorilere veya konulara ileti gönderebilirsiniz; lütfen bir onay e-postası almak için buraya tıklayın.",
diff --git a/public/language/uk/error.json b/public/language/uk/error.json
index 2f4b941ac0..b495895ede 100644
--- a/public/language/uk/error.json
+++ b/public/language/uk/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "Невірне значення сторінки, має бути щонайменше %1 та щонайбільше %2",
"username-taken": "Це ім'я зайняте",
- "email-taken": "Ця електронна пошта зайнята",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/language/vi/error.json b/public/language/vi/error.json
index aa354aa01b..0b468719e3 100644
--- a/public/language/vi/error.json
+++ b/public/language/vi/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Thư mục tồn tại",
"invalid-pagination-value": "Giá trị phân trang không hợp lệ, tối thiểu phải là %1 và tối đa là %2",
"username-taken": "Tên đăng nhập đã tồn tại",
- "email-taken": "Email đã được đăng kí",
+ "email-taken": "Email address is already taken.",
"email-nochange": "Email đã nhập giống với email đã có trong tệp.",
"email-invited": "Email đã được mời",
"email-not-confirmed": "Đăng trong một số danh mục hoặc chủ đề được bật sau khi email của bạn được xác nhận, vui lòng nhấp vào đây để gửi email xác nhận.",
diff --git a/public/language/zh-CN/error.json b/public/language/zh-CN/error.json
index 3b63a0da67..0844d81cc7 100644
--- a/public/language/zh-CN/error.json
+++ b/public/language/zh-CN/error.json
@@ -32,7 +32,7 @@
"folder-exists": "文件夹已存在",
"invalid-pagination-value": "无效的分页数值,必须介于 %1 和 %2 之间",
"username-taken": "此用户名已被占用",
- "email-taken": "此电子邮箱已被占用",
+ "email-taken": "Email address is already taken.",
"email-nochange": "输入的邮件地址和已存档的邮件地址相同。",
"email-invited": "已通过电子邮件进行邀请",
"email-not-confirmed": "您需要验证您的邮箱后才能在版块或主题中发布帖子,请点击此处以发送验证邮件。",
diff --git a/public/language/zh-TW/error.json b/public/language/zh-TW/error.json
index 7862ec6dfc..255f773b9e 100644
--- a/public/language/zh-TW/error.json
+++ b/public/language/zh-TW/error.json
@@ -32,7 +32,7 @@
"folder-exists": "Folder exists",
"invalid-pagination-value": "無效的分頁數,必須介於 %1 和 %2 之間",
"username-taken": "此使用者名已被使用",
- "email-taken": "此電子信箱已被使用",
+ "email-taken": "Email address is already taken.",
"email-nochange": "The email entered is the same as the email already on file.",
"email-invited": "Email was already invited",
"email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.",
diff --git a/public/src/client/topic/move-post.js b/public/src/client/topic/move-post.js
index c8d1522db7..555737d194 100644
--- a/public/src/client/topic/move-post.js
+++ b/public/src/client/topic/move-post.js
@@ -149,7 +149,7 @@ define('forum/topic/move-post', [
$(this).remove();
});
});
- if (data.pids.length === 1 && ajaxify.data.template.topic &&
+ if (data.pids.length && ajaxify.data.template.topic &&
parseInt(data.tid, 10) === parseInt(ajaxify.data.tid, 10)) {
ajaxify.go(`/post/${data.pids[0]}`);
}
diff --git a/src/api/posts.js b/src/api/posts.js
index edd8f1dc11..603e3bf2aa 100644
--- a/src/api/posts.js
+++ b/src/api/posts.js
@@ -290,7 +290,7 @@ postsAPI.move = async function (caller, data) {
]);
if (!postDeleted && !topicDeleted) {
- socketHelpers.sendNotificationToPostOwner(data.pid, caller.uid, 'move', 'notifications:moved_your_post');
+ socketHelpers.sendNotificationToPostOwner(data.pid, caller.uid, 'move', 'notifications:moved-your-post');
}
};
diff --git a/src/categories/topics.js b/src/categories/topics.js
index 2bc9aa58cf..a8396a4ab2 100644
--- a/src/categories/topics.js
+++ b/src/categories/topics.js
@@ -219,7 +219,10 @@ module.exports = function (Categories) {
min: Categories.watchStates.watching,
max: Categories.watchStates.watching,
});
-
+ const index = followers.indexOf(String(exceptUid));
+ if (index !== -1) {
+ followers.splice(index, 1);
+ }
if (!followers.length) {
return;
}
diff --git a/src/socket.io/posts/tools.js b/src/socket.io/posts/tools.js
index 4ff69e7fc0..44b488216e 100644
--- a/src/socket.io/posts/tools.js
+++ b/src/socket.io/posts/tools.js
@@ -27,6 +27,7 @@ module.exports = function (SocketPosts) {
canDelete: privileges.posts.canDelete(data.pid, socket.uid),
canPurge: privileges.posts.canPurge(data.pid, socket.uid),
canFlag: privileges.posts.canFlag(data.pid, socket.uid),
+ canViewHistory: privileges.posts.can('posts:history', data.pid, socket.uid),
flagged: flags.exists('post', data.pid, socket.uid), // specifically, whether THIS calling user flagged
bookmarked: posts.hasBookmarked(data.pid, socket.uid),
postSharing: social.getActivePostSharing(),
@@ -46,7 +47,7 @@ module.exports = function (SocketPosts) {
postData.display_move_tools = results.isAdmin || results.isModerator;
postData.display_change_owner_tools = results.isAdmin || results.isModerator;
postData.display_ip_ban = (results.isAdmin || results.isGlobalMod) && !postData.selfPost;
- postData.display_history = results.history;
+ postData.display_history = results.history && results.canViewHistory;
postData.flags = {
flagId: parseInt(results.posts.flagId, 10) || null,
can: results.canFlag.flag,
diff --git a/src/socket.io/topics/move.js b/src/socket.io/topics/move.js
index e7a164594c..6c03412cc2 100644
--- a/src/socket.io/topics/move.js
+++ b/src/socket.io/topics/move.js
@@ -36,7 +36,7 @@ module.exports = function (SocketTopics) {
const notifyUids = await privileges.categories.filterUids('topics:read', topicData.cid, uids);
socketHelpers.emitToUids('event:topic_moved', topicData, notifyUids);
if (!topicData.deleted) {
- socketHelpers.sendNotificationToTopicOwner(tid, socket.uid, 'move', 'notifications:moved_your_topic');
+ socketHelpers.sendNotificationToTopicOwner(tid, socket.uid, 'move', 'notifications:moved-your-topic');
}
await events.log({