* test: add failing test for if package.json is non-existant, fix tests' beforeEach method
* Revert "fix: #10289, remove lodash dependency in src/cli/package-install.js"
This reverts commit 81fa2e22bc.
* fix: regression caused by 94b79ce402
`./nodebb setup` was no longer able to be called without arguments or env vars
* fix: .updatePackageFile() throwing if no package.json
* fix: removing unneeded code in src/cli/index.js that seemed to be used to handle cases where package.json was missing (initial install)
... However, as .updatePackageFile() now handled cases where there is no package.json, it should be ok to remove this code
* fix: handle missing package.json or node_modules/
* test: add test to verify that a sorted set is automatically deleted if its last element is removed
* fix: remote empty zsets when all elements have been removed #yolo
* Revert "fix: remote empty zsets when all elements have been removed #yolo"
This reverts commit 0ac73244bb.
* fix: altered behaviour in module.exists instead of zrem
fix upgrade script so posts with negative votes are stored, a post can have 10 upvotes and 2 downvotes
fix missing negative votes checks
remove unnecessary pids flters since the cids are only already filtered by topics:read
If a package manager is not explicitly set in config.json or passed-in via argv/env, NodeBB will now check for the presence of alternative package managers' lockfiles and adjust the package manager to-be-used accordingly. If the standard npm lockfile exists, npm will always be used.
* feat: remove colors in favour of chalk
* fix: bad conversion from colors to chalk in src/cli/index.js
* fix: padWidth calculation to account for control characters
* fix: termWidth calculation, but swapped one problem for another
* fix: formatItem, implement my own padRight to take control characters into account
* feat: wip user emails api
* fix: allow admins with manage-users access to email confirmation api as well
* fix: wrong route path
* docs: openapi spec
if recent is used as the homepage then changing the selected category or filters was redirecting the user to forum.com/recent?cid=1 instead of staying at forum.com/?cid=1
also fix unread page mark read button showing the selected category
* init - fullname notifications setting
* fullname in topic reply
* fullname for group-request-membership
* fullname for group-leave notification
* fullname for new-post-flag & new-user-flag
* removed log
* fullname for user follow
* fullname in message notification
* fullname in follow
* fullname for sendNotificationToPostOwner
* fullname in sendNotificationToTopicOwner
* fullname in doExport
* shorthand name set
* shorter name set
* fullname in notifications
* displayname for notifications
* removed unused require
allow regular users access to post queue
allow regular users to edit their queued post/topic title
allow regular users to remove their post from post queue
ability to send a notification to user without removing from post queue
allow accessing single post queue items from notifications
socket.emit('topics.delete') removed use `DELETE /api/v3/topics/state`
socket.emit('topics.restore') removed use `PUT /api/v3/topics/state`
socket.emit('topics.purge') removed use `DELETE /api/v3/topics`
socket.emit('topics.lock') removed use `PUT /api/v3/topics/lock`
socket.emit('topics.unlock') removed use `DELETE /api/v3/topics/lock`
socket.emit('topics.pin') removed use `PUT /api/v3/topics/pin`
socket.emit('topics.unpin') removed use `DELETE /api/v3/topics/pin`
Also updated the plugin hook call to `static:sockets.validateSession` to not return a result, because in static calls that result is always null anyway
* refactor: use routePrefixMap instead of routeRegexpMap, +tests
Currently tests fail because privilege pages resolve if passed garbage... hmm
* fix: priv check paths
remove /v3 from path as well
Co-authored-by: Barış Soner Uşaklı <barisusakli@gmail.com>
this hook only fires when loading the posts of a topic cold load + infinite scroll
do not remove posts if they have index =-1
use topics.getTopicPosts instead of getMainPostAndReplies
deprecate:
app.handleSearch, use search.init(options) instead
app.enableTopicSearch, use search.enableQuickSearch(options) instead
app.prepareSearch, use search.showAndFocusInput() instead
Removed continueLogin override in favour of a simpler `redirectAfterLogin` override
Use passport to authenticate username and password instead of duplicated logic.
1. meta.settings.set('name', values); // reloadRequired is set to true
2. meta.settings.set('otherName', values, false); // reloadRequired was set to false, even though it should stay true until restart due to step 1
* fix: some empty xml tag bodies
* fix: missing/wrong attributing of label tags
* fix: attribute fixes
* fix: misassociated label
* fix: missing alt attributes
* fix: some more missing associated labels
this fixes infinitescroll when url has custom query parameters
also fixes infinitescroll for plugins like QnA
fixes infinitescroll on tags page
deprecate topics.loadMoreSortedTopics
deprecate topics.loadMoreFromSet
* feat: WIP topic linkbacks, + failing tests
* test: don't accidentally comment out all of the post tests
* fix: rename to "backlinks"
* feat: more stub code, more failing tests
* feat: backend methods and passing tests for topic backlinks
* test: uncomment test/posts.js again
* fix: missing quotation mark in topic event helper
* fix: superfluous usage of Promise.all
* test: fix broken test -- used hardcoded (and incorrect) url
* test: parseInt shenanigans
NodeBB's security policy is based around a private bug bounty program. Users are invited to explore NodeBB for vulnerabilities, and report them to the NodeBB team so that they can be patched.
If you have found a security vulnerability, **do not post it onto our GitHub tracker**. Some security vulnerabilities are quite severe and discretion is recommended. Email the NodeBB Security Team at security@nodebb.org, instead.
If you have found a security vulnerability, **do not post it onto our GitHub tracker**. Some security vulnerabilities are quite severe and discretion is recommended. Email the NodeBB Security Team at security@nodebb.org, instead, even if you are not sure whether something qualifies.
# Bug Bounty Program
Security vulnerability reports may be eligible for a bounty based on severity and confirmation from NodeBB team members. For full details regarding our bug bounty program, including the bounty amounts, please consult the following page: https://blog.nodebb.org/bounty
Security vulnerability reports may be eligible for a bounty based on severity and confirmation from NodeBB team members. For full details regarding our bug bounty program, including the bounty amounts, please consult the [dedicated page for our Bug Bounty Program](https://nodebb.org/bounty).
*#10197, fix relative path urls for dashboard pages (92a249c9)
* actually, CORP is ok (df8c8ad8)
* update defaults for corp and coep to be more permissive, for now, to be reverted for v1.20.0 (4467299e)
* if no group label is selected, select no group title option (94da5026)
##### Other Changes
* remove unused require (6be330f2)
##### Performance Improvements
* increase batch size (b548083b)
##### Refactors
* update chat plcaeholder message (fbd9ba79)
* updated package-install.js exports style, new exported method 'getPackageManager' for use in cases where nconf is unreliable, fix bug where nconf was not correctly set up in cli tools, proper installation of dev dependencies based on global env value (9a169085)
* emailer.send and emailer.sendToEmail returns Boolean based on message being successfully sent (f0e32ff1)
* sorted-list .get() to be async fn (89b559a2)
##### Tests
* fix occasional test failure (2dbdd181)
* add test to verify that a sorted set is automatically deleted if its last element is removed (#10261) (60680876)
* stricter isValidationPending check (d1b1f50b)
* fix derp (680e36da)
* up acp plugin page timeout (a214f9a6)
#### v1.19.1 (2022-01-21)
##### Chores
* **deps:**
* bump compare-versions from 4.1.2 to 4.1.3 in /install (#10154) (4a5182e4)
* update dependency lint-staged to v12.2.2 (f090de36)
* update dependency @commitlint/cli to v16.1.0 (44d81a95)
* update dependency lint-staged to v12.2.1 (857ac480)
* update dependency @commitlint/cli to v16.0.3 (9c63d076)
* update dependency lint-staged to v12.2.0 (1a0c117d)
* update dependency eslint to v8.7.0 (8abaf3f6)
* update dependency mocha to v9.1.4 (f5ad173b)
* up persona (89871d71)
* add test.sh to gitignore (d7796f0b)
* delete test script (250274c7)
* remove unused lang key #10180 (2fe91e36)
* incrementing version number - v1.19.0 (18b0a29f)
* update changelog for v1.19.0 (c8f1bc53)
* **i18n:**
* fallback strings for new resources: nodebb.admin-settings-user (78cd6de7)
* fallback strings for new resources: nodebb.user (3ec9197c)
* fallback strings for new resources: nodebb.email (354aa1a5)
##### New Features
* revert label js change (1c80adf1)
* hide all categories link on flags filters (e9d0db28)
* nicer error handling for bad jwt in unsubscribe template (31ea2266)
##### Bug Fixes
* **deps:**
* update dependency jquery-ui to v1.13.1 (#10186) (55b3a355)
* update dependency multiparty to v4.2.3 (#10188) (7fa2ba70)
* update dependency nodebb-theme-persona to v11.3.15 (#10155) (e03d4747)
* update dependency mongodb to v4.3.1 (#10178) (693ca1f1)
* update dependency nodebb-plugin-composer-default to v7.0.18 (#10164) (2c75cce6)
* urls used when recent/unread/popular/top is used as the homepage (28359665)
* mark unread button showing the selected category (fdfafb44)
* catch exceptions from sendNotifications (c1ec2047)
* multiple cid filter on flags page (3e8cb732)
* post indices if there is a blocked user in topic (f9279b63)
* dont add duplicate link backs (3b72ff87)
*#10175, fix topic linkbacks duplicating on post edit (b06c6329)
*#10173, don't show optional message if email is required (d1eb21c5)
*#10172, fix postqueue accept/reject notification text (6a75ed50)
*#10167, fix regression prevent guest post (4799efc7)
* CSRF handler to go back to saving in session (#10159) (e9ee843b)
* remove deprecated post diff socket calls (8117b7f2)
* remove deprecated user middlewares (1a7fffc7)
* remove action:category.loaded, use action:topics.loading (36aa6034)
* remove setTopicSort/setCategorySort (6dcdf1d3)
* remove deprecated socket user create/delete functions (a7d1dfb6)
* remove deprecated uploads.delete (c93d7fdb)
* remove deprecated methods (79de48c5)
* remove socket.io/flags.js (c5f08fdc)
##### Chores
* org; merge consecutive await calls into one Promise.all (be4dbe34)
* fix #9213 (0a5420ed)
* revert engines change in install/package.json (487f25ba)
* update renovate config (f95acce3)
* update renovate range strategy... (bc0f33df)
* remove debug logs in test/api.js (82768fcf)
* use apiv3 for room rename tests (e745e212)
* trigger lang (540eeae9)
* up themes (71fa8175)
* right dropdown (7aa85882)
* right dropdown (a998cc1c)
* update readme mongodb version (af5393ec)
* incrementing version number - v1.18.6 (3a78a151)
* update changelog for v1.18.6 (3c8109e2)
* **deps:**
* update commitlint monorepo (56d134c3)
* update dependency lint-staged to v12.1.7 (40e7007f)
* update dependency lint-staged to v12.1.6 (f78108ac)
* update dependency eslint-plugin-import to v2.25.4 (a69afdb6)
* update dependency lint-staged to v12.1.5 (12038039)
* update dependency eslint to v8.6.0 (b546ff4e)
* update dependency lint-staged to v12.1.4 (87779fc8)
* update dependency jsdom to v19 (#10053) (ee05b762)
* update dependency lint-staged to v12.1.3 (c0dd8dcb)
* update dependency eslint to v8.5.0 (55b9fab1)
* update dependency eslint to v8.4.1 (ba02f015)
* update dependency eslint to v8.4.0 (4b113715)
* update dependency lint-staged to v12 (b3423389)
* update dependency eslint to v8 (e9aadde1)
* update commitlint monorepo to v15 (f6c6425d)
* update dependency jsdom to v18.1.1 (87433b79)
* bump compare-versions from 3.6.0 to 4.1.1 in /install (ea9f2c73)
* update dependency jsdom to v18.1.0 (d7c2a311)
* **i18n:**
* fallback strings for new resources: nodebb.user (d79d7e80)
* fallback strings for new resources: nodebb.admin-settings-uploads (e6a46ef6)
* fallback strings for new resources: nodebb.error (207ae8cd)
* fallback strings for new resources: nodebb.post-queue (edba10e2)
* fallback strings for new resources: nodebb.modules, nodebb.notifications (fd939f8b)
* fallback strings for new resources: nodebb.admin-admin (4a53adf6)
* fallback strings for new resources: nodebb.admin-admin (b052a8e7)
* fallback strings for new resources: nodebb.topic (23c915ba)
* fallback strings for new resources: nodebb.admin-settings-user, nodebb.login (eecd02fb)
* fallback strings for new resources: nodebb.admin-settings-email (72e1c281)
##### Documentation Changes
* comment hint :shipit: (ffdf26af)
* fix description for route (47ab9526)
* roomId is number (0aa25f20)
* openAPI documentation for routes (55e68e2f)
* use social media card in readme header (33c8b197)
* add social media card (f7b3f69f)
* add docs link higher up (1a85aaad)
* update readme blurb (e325aa93)
##### New Features
* bundling nodebb-plugin-2factor with all NodeBB installations, v1.19.0 onwards :tada: (31b4b8fd)
* revoke user sessions on successful password reset (6ca216ab)
* allow % in tags, #10135 (a75a043b)
* allow isCluster, isPrimary, and jobsDisabled to be passed in as numbers in addition to string/bool (b5b188fd)
*`GET /api/v3/chats/:roomId/messages` (2fe53cf8)
*`DELETE /api/v3/chats/:roomId/users` and `DELETE /api/v3/chats/:roomId/users/:uid` (fe17c94c)
*`POST /chats/:roomId/users` (d62ee846)
*`POST /chats/:roomId/:mid` and `DELETE /chats/:roomId/:mid` (d5fd098e)
* middleware.assert.message (90fcbe44)
*`GET /chats/:roomId/:mid` (b2929605)
*`PUT /chats/:roomId/:mid` (f48ed365)
* allow API checkRequired middleware error to be internationalized (74f1905e)
*`PUT /api/v3/chats/:roomId` (9a4fd5dc)
*`POST /api/v3/chats/:roomId` (eeffb9d9)
*`GET /api/v3/chats/:roomId` (09cf9c77)
*`POST /api/v3/chats`, chat room creation, plus openAPI docs update (40b4544e)
*`GET /api/v3/chats` (94bead71)
* stub code for v3 chats api (02e878be)
*#9506, allow seeing and editing your queued posts (c4042c70)
* pass in all query params to category search filter (599bffd8)
* add data param to filter:categories.search (c4156bdd)
* ensure that all requests handled by NodeBB fall under the relative_path as configured (a3bdb706)
* show 10 members (d9c42c00)
* closes #10018 (1e535528)
*#10018 add href (06bfec88)
*#10018 , wip (0f14f23b)
* autocomplete for activate/reset (f0d192fb)
*#10008, add history entry for note deletion (c26870d2)
*#9957, don't remove existing fields form config.json (0532c1b2)
* add feature flag to disable verification emails, closes #9996 (09e0c6d5)
##### Bug Fixes
* **deps:**
* update dependency nodebb-plugin-markdown to v8.14.6 (ad6f6051)
* update dependency winston to v3.4.0 (#10150) (2fee1d07)
* update dependency ioredis to v4.28.3 (#10151) (bfad04ab)
* pin dependencies (da2bb340)
* pin dependency socket.io-adapter-cluster to 1.0.1 (#10146) (15bf3db2)
* update dependency nodebb-theme-vanilla to v12.1.15 (#10149) (2fa3cd0d)
* update dependency nodebb-theme-slick to v1.4.23 (#10148) (762de2d8)
* update dependency nodebb-theme-persona to v11.3.13 (#10147) (385d4c71)
* update dependency winston to v3.3.4 (4bada01b)
* update dependency autoprefixer to v10.4.2 (a47883e8)
* update dependency mongodb to v4.3.0 (50eb4556)
* update socket.io packages to v4.4.1 (9eb00cb2)
* update dependency nodebb-rewards-essentials to v0.2.1 (0a15c99e)
* update dependency autoprefixer to v10.4.1 (f1aa5f7d)
* update dependency yargs to v17.3.1 (5c3335b7)
* update dependency nodebb-theme-vanilla to v12.1.14 (#10102) (dd8b1f75)
* update dependency nodebb-theme-slick to v1.4.22 (#10101) (dd1633ff)
* update dependency nodebb-theme-lavender to v5.3.2 (#10099) (eccdfc9d)
* update dependency nodebb-theme-persona to v11.3.12 (#10100) (4f6fc10b)
* update dependency nodebb-theme-persona to v11.3.11 (32cbf760)
* update dependency nodebb-theme-slick to v1.4.21 (9253519c)
* update dependency nodebb-theme-slick to v1.4.20 (#10084) (019804e1)
* update dependency nodebb-theme-vanilla to v12.1.13 (#10085) (66c759ed)
* update dependency nodebb-theme-persona to v11.3.10 (#10083) (d276c9cd)
* update dependency nodebb-plugin-composer-default to v7.0.17 (#10082) (0ef9c7ab)
* update dependency nodebb-theme-vanilla to v12.1.12 (dda7c075)
* update dependency nodebb-theme-slick to v1.4.19 (4577600e)
* update dependency nodebb-theme-persona to v11.3.8 (5e2281c3)
* update dependency mongodb to v4.2.2 (0551a19e)
* update dependency postcss to v8.4.5 (16398dd9)
* update dependency compare-versions to v4.1.2 (de1ed01d)
* bump persona (16c88a97)
* bump persona (c90a8926)
* update dependency nodebb-plugin-mentions to v3.0.4 (#10063) (07217762)
* update dependency nodebb-plugin-spam-be-gone to v0.7.12 (#10064) (a5840c5a)
* update dependency nodebb-theme-slick to v1.4.18 (#10065) (5477cf32)
* update dependency nodebb-plugin-markdown to v8.14.5 (#10062) (60d778f0)
* update dependency nodebb-theme-persona to v11.3.5 (#10059) (8695d370)
* update dependency nodebb-plugin-dbsearch to v5.1.1 (70068d6c)
* update dependency nodebb-plugin-composer-default to v7.0.15 (84b03a34)
* update dependency nodebb-theme-persona to v11.3.3 (8cbe0df2)
* bump emoji plugin (14e35247)
* update dependency ioredis to v4.28.2 (597d826b)
* update dependency yargs to v17.3.0 (115de4e5)
* update dependency mime to v3 (#9963) (49813cce)
* update dependency mongodb to v4.2.1 (f72af319)
* update dependency @socket.io/redis-adapter to v7.1.0 (ed4b0cf7)
* update dependency postcss to v8.4.4 (b34b8aa9)
* update dependency postcss to v8.4.3 (2dadf786)
* update dependency postcss to v8.4.1 (6a273798)
* update dependency postcss to v8.4.0 (29345275)
* update dependency ioredis to v4.28.1 (9966a00f)
* update dependency nodebb-theme-persona to v11.3.1 (fdae6991)
* update socket.io packages to v4.4.0 (f05d308a)
* update dependency nodebb-theme-vanilla to v12.1.10 (68dddbd9)
* update dependency nodebb-theme-persona to v11.2.22 (3eb91a20)
* update dependency nodebb-plugin-mentions to v3.0.3 (5ec32c31)
* update dependency mongodb to v4.2.0 (#10011) (2378fc84)
* update dependency @socket.io/redis-adapter to v7.0.1 (aae7be02)
* update dependency sharp to v0.29.3 (46162537)
* lint (c9592e17)
* icon alignment issue that was also bugging me :shipit: (37a71291)
*#10143, add back ace editor searchbox (42caef7f)
*#10095, add login info to email interstitial (5eb02f59)
*#10121, fix error messages in user creation (8ad64ec0)
*#10115, fix chat autocomplete hook (69a7634a)
* notice links in subfolder installs (cc27a324)
* move authenticateRequest before interstitial and maintenance mode middlewares, allowed plugins to disable authentication on certain routes (d89fc44c)
* retry incrObjtFieldBy (07232a8c)
* use component instead of class name (b179f0fc)
* assertion check to ensure messages are in the room when editing/deleting, etc (d95b4ee2)
* rename language key for incorrect parameter type error (aeb43b9b)
* deprecate chats.leave (16ba16cd)
* re-allow kicking of the other party in a 1-to-1 chat (6294beea)
* isFinite check for room assertion, more test migrating (140f9d24)
*#10096, don't display preview for links if hostname doesnt match (a115b771)
* only render preview on topic page (a9f81215)
* don't crash server if analytics fails to save (8fb89d76)
* upgrade script to handle strings as well (e332acf3)
*#10090, remove left over necro posts messages (fdaf8274)
*#10086, if pidfile is empty delete (59214ca2)
* utils method (91e21ecc)
* prevent crash if groups is not valid json (cc0a087a)
* upgrade script (968d4616)
* delete left over nav items after removal of some (737e1c19)
* targetBlank/dropdown not getting cleared (10e890e4)
* prettier bulk method usage (3b0c42a5)
* bug where groupChat property was not set for chat rooms (42959df0)
*#9484 show user history only to admins and gmods (bc7707aa)
* no need to pass 'img' to teaser tags stripping as images are already converted to alt text (45c9dde3)
*#10069, don't modify fields array (a8afdc60)
*#10068, update data-index values after sort (236d4e80)
*#10068, baseIndex should be read before sort update fix off by one error (9af23351)
* tests (45d8157f)
*#10067, count posts instead of incr/decr (830166d1)
* handle start=0 stop=0 for topics.getTopicPosts (906dc567)
* wrong usage of is ACP (4f423610)
* don't throw on invalid session, just return early so socket is not opened. (fa01801f)
*#10052, dont use spaces in tag class name (a2953583)
* don't crash if tid is falsy (1cdb0b1e)
* regression from https://github.com/NodeBB/NodeBB/commit/27c05448e1532ce466658513af0e2ff65576b410 (50063fe2)
* keep query params on /me redirects (941ecaf8)
* 403/400/500 page not generating csrf_token (65c55041)
* error pages dont have config.csrf_token (3dd681eb)
* quote button staying on screen on slow computers (d378bf4c)
* removed unused var (e0caa5e0)
*#10027, properly auto confirm first user (2473d5d8)
*#10010, handle reverse sorting for topic events (d5bfd512)
*#10006, dont allow new rooms or adding to a room if target is blocked (047f031d)
##### Other Changes
* remove unused (afc75ba4)
* fix (682f6089)
* missing ; (20e76699)
* remove unused (cbf198fe)
* remove unused (a20abdce)
* fix (0a6eeb93)
* remove unused utils (82b72f7e)
* fix (fa1ac04d)
##### Performance Improvements
* only add middleware if relativePath is set (41db9436)
* don't load all set members to get count (0414356c)
* create user tooltips on demand (23147235)
* closes #9994, bulk methods for settings (d412ba44)
* remove createUserTooltips (facc10e4)
##### Refactors
* remove unused language key (5278b11a)
* put message api calls behind `/messages` prefix, #10097 (aaa6f752)
* rewrite messaging tests to use API v3 calls when available, rewrote a bunch of tests to async..await (c990211c)
* only write analytics data on nbb that has runJobs=true (35fea58a)
* remove knonwOwner param (42781467)
* remove console.log (a7644466)
* remove unused validator (4e1d4217)
* only pass qs (b8896d13)
* change error message (1e60ae87)
* use hasOwnProperty (9f1b8a3b)
* remove object.create (dbba0c39)
* remove unused args (3d3ae82f)
* remove comment (633061f4)
* use .map to return promises (d4f3ee67)
* async (cfd47448)
* async (f0394c49)
* use async (8491f67d)
* remove unused (e3c0f0be)
* always returns array (9627fa90)
* use async/await (f4aa249d)
* change var name (36eb47d9)
* alerts (621c142f)
* use alerts.error/success (cba78aee)
* use lang keys, fix typo (dd02c49f)
* use alerts module (1980feed)
* dont need local function (2bb0828a)
* DRY (324262cb)
* use routePrefixMap instead of routeRegexpMap, +tests (#10035) (6c07433d)
* use hasOwnProprety (daf385cd)
* tab rules (fb363957)
* change category feed so it is not updated on every reply (697dd376)
* dont expost entire res._locals to client side (e368feef)
* shorter meta.settings.get (190532b3)
* clone settings before returning (51cbeccb)
* remove another async.series (27c05448)
* remove tabs after declaration (4359e5c9)
* update dates (6d38eab6)
* clone before returning (f729e519)
* add filter:topic.getPosts (258f368e)
* setObjectBulk to match sortedSetAddBulk (8379c11b)
* remove more async.eachSeries/mapSeries (d1964095)
* make a single call to set widgets per template (8750ee04)
* remove jshint, remove async.parallel (80f9963b)
##### Code Style Changes
* eslint (d960f601)
##### Tests
* fix util test (6c1e184c)
* update tag tests, fix linux symlink error (9b75b1ed)
* fix restore test (0d9ec9d3)
* fix user tests calling deprecated socket methods (e747998c)
* add email interstitial tests (1264dcb5)
* don't use csrf_token for get,head, options (5e08f7e6)
* fix tests (0e273ab2)
* remove old test (68fd0875)
* make it async (5c3d5f1f)
* fix (26f00ffb)
* one more getTopicPosts test (f8f0a83b)
* utils.params (7b99dc46)
* regular user shouldn't see admin:privileges (cd2040ac)
* add missing tests (58431221)
* add api token tests (7434cbf6)
* add missing tests (404a8774)
* upgrade.runParticular (2bdb4906)
* add missing acp root category test (c17ec996)
* cache dump test (217aae4c)
* add missing controllers (bc120dba)
* fix tpl name (edf7c647)
* add mising email.test tpls (6d186ff1)
* debug routes in dev (754cdab8)
* add digest route test (1280d9ae)
* digest (f11bc33a)
* fix function name (0e725125)
* submitUsage (d375dcb8)
* remove log (d7c32ccb)
* middleware/expose.js (29b3587d)
* up mongodb version (500cad78)
* mainPost removed from inf scroll (aac0792a)
#### v1.18.6 (2021-11-10)
##### Chores
* make it a link (a0f0dd02)
* update badges, remove david doesnt work (dad31c8e)
* up themes (b1d6c9ba)
* up mentions (98b98a11)
* up mentions (3e4d477e)
* fix type.yaml example and summary (591424ce)
* incrementing version number - v1.18.5 (1e418f5b)
* update changelog for v1.18.5 (82eda23a)
* remove .opacity() mixin as it is supported cross-browser (28efcb59)
* **deps:**
* update dependency eslint-plugin-import to v2.25.3 (45a0895c)
* update commitlint monorepo to v14 (dc78125a)
* update dependency jsdom to v18.0.1 (7d468e72)
* **i18n:**
* fallback strings for new resources: nodebb.admin-development-info (91676c6c)
* fallback strings for new resources: nodebb.admin-settings-navigation (3727e39f)
* fallback strings for new resources: nodebb.admin-settings-post (46789910)
##### New Features
*#9992, hooks.one (96f13e4f)
* use auto-generated meta and link tags in ACP, closes #9991 (1719bff8)
* add node 16 (#9847) (d27c9696)
*#9967, allow dropdowns in navigation (2e623dd2)
* show number of events per type in acp (b916e42f)
* show posts previews if enabled on mouse over (8c670316)
##### Bug Fixes
* **deps:**
* update dependency nodebb-theme-slick to v1.4.16 (#9990) (cf30876f)
* update dependency nodebb-plugin-composer-default to v7.0.14 (#9989) (ef02bdc4)
* update dependency nodebb-plugin-composer-default to v7.0.13 (#9988) (654c8e61)
* update dependency nodebb-plugin-mentions to v3.0.2 (1a22b0ec)
* update dependency socket.io to v4.3.2 (98ebc4d9)
* update dependency html-to-text to v8.1.0 (c1f5889f)
* update dependency nodebb-plugin-dbsearch to v5.1.0 (#9983) (4f1ee1fc)
* update dependency nodebb-plugin-composer-default to v7.0.12 (7fee0e32)
* update dependency nodebb-plugin-mentions to v3.0.1 (#9979) (8224a2a9)
* update dependency nodebb-plugin-spam-be-gone to v0.7.11 (91293ecc)
* update dependency nodebb-theme-lavender to v5.3.1 (f7295aaa)
* update dependency nodebb-plugin-mentions to v3 (#9966) (0888aae6)
* update dependency mongodb to v4.1.4 (#9968) (f5993731)
* update dependency nodebb-theme-persona to v11.2.21 (#9969) (8fac8d61)
* update dependency nodebb-plugin-mentions to v2.15.1 (0f8a68c0)
* update dependency validator to v13.7.0 (81c8d70c)
* update dependency autoprefixer to v10.4.0 (755860f1)
* ability to enumerate email via updateProfile method (c1ac2912)
* accidentally not clearing email when said email is confirmed for a different uid (b912a564)
*#9976 (28dd31a8)
*#9976, handle array or object (9bfb6c72)
* dont show previews on mobile (41e02400)
* category load more btn visibility (05468526)
*#9973, ignore if assigning to same parent (66e7cdac)
*#9972 (67cb2491)
* remove tooltip on ajaxify (f728abda)
* don't highlight external nav items (8a88295d)
* don't use # for previews (5a0efd2d)
* events for just topic with main post (3d611ab7)
*#9954, get next post timestamp (89399c0e)
* topic events not rendered in infinitescroll (a7f235db)
* broken post uploads due to 6a976a9db0340e34577961ce8d5d9479c78f7856 (485b6ced)
*#9950, rename account export routes to remove `uid/` prefix (0ee85d5a)
* double invocation of authenticateRequest (60352eca)
*#9945, call authenticateRequest middleware for mount points in /api (6a976a9d)
* hooks is sometimes undefined (74aa12c9)
* typo in flags (bc4b19b4)
* remove unused code (50b2ebf8)
* handle undefined data.query (8f08d9ca)
##### Performance Improvements
* only load posts once (9fbb3b11)
##### Refactors
* shorter require (41c3eb82)
* deprecate app.alert functions user alerts module directly (0428912c)
* deprecate app.logout (8b4510cc)
* simpler rejoin (61903448)
* deprecate app.openChat/newChat (f352be63)
* move search functions from app.js to search module (1a9b1598)
* move session messages (666fe209)
* move warnings/messages out of app.js (51855254)
* remove jshint (0a7ff208)
* cleanup info, better cpu usage % (4b738c8c)
* acp only uses 3 modes and a single theme (890bf03f)
* display errors from category drag/drop (c1cc35a9)
* use utils.debounce (e8c17fee)
##### Tests
* add another assert for random failing test (ae64b9f4)
* socket.emit doesnt exist in tests (61d1f565)
* show body when test fails (e3f5b706)
* lint (3d2398ac)
* fix tpl test (30cce142)
* dbsearch no longer has staticDir (3386893b)
* increase timeout (4ac9270a)
* fix account export test routes (10bb8cf7)
* add test aliases.buildTargets (62ac9a8b)
* empty query params for search (bda5d144)
#### v1.18.5 (2021-10-27)
##### Breaking Changes
* disable javascript in custom less tab (719cfc0d)
##### Chores
* remove .opacity() mixin as it is supported cross-browser (28efcb59)
* up themes (463b2076)
* up persona (1438f409)
* incrementing version number - v1.18.4 (945c2b0b)
* update changelog for v1.18.4 (7cbcb521)
* **deps:**
* update dependency lint-staged to v11.2.6 (8d4bb8bb)
* update dependency lint-staged to v11.2.5 (0728a994)
* update dependency lint-staged to v11.2.4 (f76a7882)
* update dependency husky to v7.0.4 (2a3e13f3)
* update dependency mocha to v9.1.3 (4784f016)
* update dependency eslint-plugin-import to v2.25.2 (3c3f45d9)
* update dependency jsdom to v18 (4b8dcd4c)
* update dependency eslint-plugin-import to v2.25.1 (7c4aebbd)
* update dependency lint-staged to v11.2.3 (288b5456)
* update dependency lint-staged to v11.2.2 (f96c8c4d)
* update dependency @commitlint/cli to v13.2.1 (52c38a1d)
* update dependency lint-staged to v11.2.1 (022e8df0)
* update dependency eslint-config-nodebb to v0.0.3 (4b92df82)
* **i18n:**
* fallback strings for new resources: nodebb.admin-settings-email, nodebb.error (9b68dc37)
* fallback strings for new resources: nodebb.admin-dashboard (ff962b5d)
* fallback strings for new resources: nodebb.admin-dashboard, nodebb.admin-menu (abe59131)
* fallback strings for new resources: nodebb.admin-manage-digest, nodebb.admin-settings-user, nodebb.user (2bed40be)
##### Documentation Changes
* update verbiage re: login API route (94c4f87b)
##### New Features
* new ACP option `emailPrompt` ... which allows administrators to disable the client-side prompt to encourage users to enter or confirm their email addresses (80ea12c1)
* show popular searches (f4cf482a)
* new plugin hook to allow plugins to reject email address on new registration or email change (6b4f35c2)
* utilities login API route now starts an actual login session, if requested (806a1e50)
* add method name to deprecation message (b91ae088)
* quote tooltip (66fca4e0)
* additional quality options for jpeg uploads, added quality and compression settings for png uploads (d22b076b)
*#8053, biweekly digest option (f7967bdf)
* core submit button dropdown (605a5381)
* added failing i18n tests (35af7634)
* confirm before deleting all events (#9875) (56d05b4e)
##### Bug Fixes
* **deps:**
* update dependency nodebb-theme-vanilla to v12.1.7 (#9944) (bf20965f)
* update dependency nodebb-theme-persona to v11.2.19 (#9943) (bcf85fcf)
* update dependency nodebb-rewards-essentials to v0.2.0 (7c2ecb12)
* update dependency nodebb-theme-vanilla to v12.1.6 (49b8b983)
* update dependency nodebb-theme-persona to v11.2.18 (ed0adf2c)
* update dependency nodebb-theme-persona to v11.2.17 (78661079)
* update dependency postcss to v8.3.11 (a5f4e206)
* update dependency nodebb-theme-vanilla to v12.1.5 (d74a6bd3)
* update dependency sharp to v0.29.2 (8b8fe393)
* update dependency postcss to v8.3.10 (b18a24e9)
* update dependency nodebb-theme-persona to v11.2.15 (f3c8d7da)
* update dependency nodebb-theme-persona to v11.2.14 (#9919) (5e08e67b)
* update dependency socket.io-client to v4.3.2 (deba3e27)
* update dependency socket.io to v4.3.1 (e1554f61)
* update socket.io packages (ce5a0a21)
* update dependency nodebb-plugin-spam-be-gone to v0.7.10 (600a8720)
* update dependency nodebb-plugin-composer-default to v7.0.10 (b0128f85)
* update dependency nodebb-plugin-markdown to v8.14.4 (f8f35d7e)
* update dependency nodebb-plugin-composer-default to v7.0.9 (ed874662)
* update dependency nodebb-theme-persona to v11.2.13 (1dba75e9)
* update dependency ioredis to v4.28.0 (4ff5452d)
* update dependency nodebb-theme-persona to v11.2.12 (fe9f82f6)
* update dependency ioredis to v4.27.11 (6d2e0aa9)
* update dependency nodebb-plugin-mentions to v2.14.1 (820f8cdf)
* update dependency jquery-ui to v1.13.0 (b0eb2aed)
[**NodeBB Forum Software**](https://nodebb.org) is powered by Node.js and supports either Redis, MongoDB, or a PostgreSQL database. It utilizes web sockets for instant interactions and real-time notifications. NodeBB has many modern features out of the box such as social network integration and streaming discussions, while still making sure to be compatible with older browsers.
[**NodeBB Forum Software**](https://nodebb.org) is powered by Node.js and supports either Redis, MongoDB, or a PostgreSQL database. It utilizes web sockets for instant interactions and real-time notifications. NodeBB takes the best of the modern web: real-time streaming discussions, mobile responsiveness, and rich RESTful read/write APIs, while staying true to the original bulletin board/forum format → categorical hierarchies, local user accounts, and asynchronous messaging.
Additional functionality is enabled through the use of third-party plugins.
NodeBB by itself contains a "common core" of basic functionality, while additional functionality and integrations are enabled through the use of third-party plugins.
"page-views-custom-help":"أدخل نطاقا زمنيا لمرات مشاهدة الصفحات التي ترغب في عرضها. إذا لم يظهر منتقي التاريخ، فإن التنسيق المقبول هو <code>YYYY-MM-DD</code>",
"page-views-custom-error":"الرجاء إدخال نطاق تاريخ صالح بالتنسيق <code>YYYY-MM-DD</code>",
"stats.yesterday":"Yesterday",
"stats.today":"Today",
"stats.last-week":"Last Week",
"stats.this-week":"This Week",
"stats.last-month":"Last Month",
"stats.this-month":"This Month",
"stats.all":"كل الوقت",
"updates":"تحديثات",
"running-version":"المنتدى يعمل حاليا على <strong>NodeBB الإصدار<span id=\"version\">%1</span></strong>.",
"keep-updated":"تأكد دائما من أن NodeBB يعمل على احدث إصدار للحصول على أحدث التصحيحات الأمنية وإصلاحات الأخطاء.",
"up-to-date":"<p>المنتدى <strong>يعمل على أحدث إصدار</strong> <i class=\"fa fa-check\"></i></p>",
"upgrade-available":"<p>A new version (v%1) has been released. Consider <a href=\"https://docs.nodebb.org/configuring/upgrade/\" target=\"_blank\">upgrading your NodeBB</a>.</p>",
"prerelease-upgrade-available":"<p>This is an outdated pre-release version of NodeBB. A new version (v%1) has been released. Consider <a href=\"https://docs.nodebb.org/configuring/upgrade/\" target=\"_blank\">upgrading your NodeBB</a>.</p>",
"prerelease-warning":"<p>هذه نسخة <strong>ماقبل الإصدار</strong> من NodeBB. قد تحدث أخطاء غير مقصودة. <i class=\"fa fa-exclamation-triangle\"></i></p>",
"running-in-development":"المنتدى قيد التشغيل في وضع \"المطورين\". وقد تكون هناك ثغرات أمنية مفتوحة؛ من فضلك تواصل مع مسؤول نظامك.",
"latest-lookup-failed":"<p>Failed to look up latest available version of NodeBB</p>",
"notices":"إشعارات",
"restart-not-required":"إعادة التشغيل غير مطلوب",
"restart-required":"إعادة التشغيل مطلوبة",
"search-plugin-installed":"إضافة البحث منصبة",
"search-plugin-not-installed":"إضافة البحث غير منصبة",
"search-plugin-tooltip":"نصب إضافة البحث من صفحة الإضافات البرمجية لتنشيط وظيفة البحث",
"control-panel":"التحكم بالنظام",
"rebuild-and-restart":"Rebuild & Restart",
"restart":"Restart",
"restart-warning":"Rebuilding or Restarting your NodeBB will drop all existing connections for a few seconds.",
"restart-disabled":"Rebuilding and Restarting your NodeBB has been disabled as you do not seem to be running it via the appropriate daemon.",
"maintenance-mode":"وضع الصيانة",
"maintenance-mode-title":"انقر هنا لإعداد وضع الصيانة لـNodeBB",
"description":"تُحدد اللغة الافتراضية إعدادات اللغة لجميع المستخدمين الذين يزورون المنتدى. <br />يمكن للأعضاء تجاوز اللغة الافتراضية من خلال صفحة إعدادات الحساب الخاصة بهم.",
"default-language":"اللغة الافتراضية",
"auto-detect":"الكشف عن إعدادات اللغة للزوار بشكل آلي"
"from-help":"The from name to display in the email.",
"smtp-transport":"SMTP Transport",
"smtp-transport.enabled":"Use an external email server to send emails",
"smtp-transport.enabled":"Enable SMTP Transport",
"smtp-transport-help":"You can select from a list of well-known services or enter a custom one.",
"smtp-transport.service":"Select a service",
"smtp-transport.service-custom":"Custom Service",
@@ -38,7 +38,11 @@
"subscriptions.hour-help":"Please enter a number representing the hour to send scheduled email digests (e.g. <code>0</code> for midnight, <code>17</code> for 5:00pm). Keep in mind that this is the hour according to the server itself, and may not exactly match your system clock.<br /> The approximate server time is: <span id=\"serverTime\"></span><br /> The next daily digest is scheduled to be sent <span id=\"nextDigestTime\"></span>",
"notifications.remove-images":"Remove images from email notifications",
"require-email-address":"Require new users to specify an email address",
"require-email-address-warning":"By default, users can opt-out of entering an email address. Enabling this option means they have to enter an email address in order to proceed with registration. <strong>It does not ensure user will enter a real email address, nor even an address they own.</strong>",
"require-email-address-warning":"By default, users can opt-out of entering an email address by leaving the field blank. Enabling this option means they have to enter an email address in order to proceed with registration. <strong>It does not ensure user will enter a real email address, nor even an address they own.</strong>",
"send-validation-email":"Send validation emails when an email is added or changed",
"include-unverified-emails":"Send emails to recipients who have not explicitly confirmed their emails",
"include-unverified-warning":"By default, users with emails associated with their account have already been verified, but there are situations where this is not the case (e.g. SSO logins, grandfathered users, etc). <strong>Enable this setting at your own risk</strong> – sending emails to unverified addresses may be a violation of regional anti-spam laws."
}
"include-unverified-warning":"By default, users with emails associated with their account have already been verified, but there are situations where this is not the case (e.g. SSO logins, grandfathered users, etc). <strong>Enable this setting at your own risk</strong> – sending emails to unverified addresses may be a violation of regional anti-spam laws.",
"prompt":"Prompt users to enter or confirm their emails",
"prompt-help":"If a user does not have an email set, or their email is not confirmed, a warning will be shown on screen.",
"sendEmailToBanned":"Send emails to users even if they have been banned"
"title.short-placeholder":"ان لم تقم بكتابة عنوان مختصر, سيتم استخدام عنوان الموقع الكلي",
"title.url":"الرابط",
"title.url":"Title Link URL",
"title.url-placeholder":"The URL of the site title",
"title.url-help":"When the title is clicked, send users to this address. If left blank, user will be sent to the forum index.",
"title.url-help":"When the title is clicked, send users to this address. If left blank, user will be sent to the forum index. <br> Note: This is not the external URL used in emails, etc. That is set by the <code>url</code> property in config.json",
"title.name":"اسم المنتدي",
"title.show-in-header":"Show Site Title in Header",
"browser-title":"عنوان المتصفح",
@@ -20,9 +20,9 @@
"logo.image":"صورة",
"logo.image-placeholder":"Path to a logo to display on forum header",
"logo.upload":"رفع",
"logo.url":"الرابط",
"logo.url":"Logo Link URL",
"logo.url-placeholder":"The URL of the site logo",
"logo.url-help":"When the logo is clicked, send users to this address. If left blank, user will be sent to the forum index.",
"logo.url-help":"When the logo is clicked, send users to this address. If left blank, user will be sent to the forum index. <br> Note: This is not the external URL used in emails, etc. That is set by the <code>url</code> property in config.json",
"logo.alt-text":"نص بديل",
"log.alt-text-placeholder":"Alternative text for accessibility",
"favicon":"صورة المفضله",
@@ -47,4 +47,4 @@
"undo-timeout":"Undo Timeout",
"undo-timeout-help":"Some operations such as moving topics will allow for the moderator to undo their action within a certain timeframe. Set to 0 to disable undo completely.",
"dropdown-placeholder":"Place your dropdown menu items below, ie: <br/><li><a href="https://myforum.com">Link 1</a></li>",
"preserve-orphaned-uploads":"Keep uploaded files on disk after a post is purged",
"private-extensions":"File extensions to make private",
"private-uploads-extensions-help":"Enter comma-separated list of file extensions to make private here (e.g. <code>pdf,xls,doc</code>). An empty list means all files are private.",
"resize-image-width-threshold":"Resize images if they are wider than specified width",
"email-confirm-interval":"لا يمكن للمستخدم إعادة إرسال رسالة تأكيد البريد الالكتروني حتى مرور",
"email-confirm-email2":"دقائق",
"allow-login-with":"السماح بتسجيل الدخول باستخدام",
"allow-login-with.username-email":"اسم المستخدم أو البريد الالكتروني",
"allow-login-with.username":"اسم المستخدم فقط",
"allow-login-with.email":"البريد الالكتروني فقط",
"account-settings":"إعدادت الحساب",
"gdpr_enabled":"Enable GDPR consent collection",
"gdpr_enabled_help":"When enabled, all new registrants will be required to explicitly give consent for data collection and usage under the <a href=\"https://ec.europa.eu/info/priorities/justice-and-fundamental-rights/data-protection/2018-reform-eu-data-protection-rules/eu-data-protection-rules_en\">General Data Protection Regulation (GDPR)</a>. <strong>Note</strong>: Enabling GDPR does not force pre-existing users to provide consent. To do so, you will need to install the GDPR plugin.",
@@ -71,6 +69,7 @@
"digest-freq.off":"Off",
"digest-freq.daily":"Daily",
"digest-freq.weekly":"Weekly",
"digest-freq.biweekly":"Bi-Weekly",
"digest-freq.monthly":"Monthly",
"email-chat-notifs":"Send an email if a new chat message arrives and I am not online",
"email-post-notif":"Send an email when replies are made to topics I am subscribed to",
"unsub.success":"You will no longer receive emails from the <strong>%1</strong> mailing list",
"unsub.failure.title":"Unable to unsubscribe",
"unsub.failure.message":"Unfortunately, we were not able to unsubscribe you from the mailing list, as there was an issue with the link. However, you can alter your email preferences by going to <a href=\"%2\">your user settings</a>.<br /><br />(error: <code>%1</code>)",
"banned.subject":"You have been banned from %1",
"banned.text1":"The user %1 has been banned from %2.",
"wrong-parameter-type":"A value of type %3 was expected for property `%1`, but %2 was received instead",
"required-parameters-missing":"Required parameters were missing from this API call: %1",
"not-logged-in":"لم تقم بتسجيل الدخول",
"account-locked":"تم حظر حسابك مؤقتًا.",
"search-requires-login":"البحث في المنتدى يتطلب حساب - الرجاء تسجيل الدخول أو التسجيل",
@@ -9,6 +11,7 @@
"invalid-tid":"موضوع غير متواجد",
"invalid-pid":"رد غير موجود",
"invalid-uid":"مستخدم غير موجود",
"invalid-mid":"Invalid Chat Message ID",
"invalid-date":"A valid date must be provided",
"invalid-username":"اسم المستخدم غير مقبول",
"invalid-email":"البريد الاكتروني غير مقبول",
@@ -34,8 +37,9 @@
"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.",
"email-not-confirmed-chat":"لا يمكنك الدردشة حتى تقوم بتأكيد بريدك الإلكتروني، الرجاء إضغط هنا لتأكيد بريدك اﻹلكتروني.",
"email-not-confirmed-email-sent":"Your email has not been confirmed yet, please check your inbox for the confirmation email. You won't be able to post or chat until your email is confirmed.",
"no-email-to-confirm":"Your account does not have an email set. An email is necessary for account recovery. Please click here to enter an email.",
"email-not-confirmed-email-sent":"Your email has not been confirmed yet, please check your inbox for the confirmation email. You may not be able to post in some categories or chat until your email is confirmed.",
"no-email-to-confirm":"Your account does not have an email set. An email is necessary for account recovery, and may be necessary for chatting and posting in some categories. Please click here to enter an email.",
"user-doesnt-have-email":"User \"%1\" does not have an email set.",
"has_no_follower":"هذا المستخدم ليس لديه أية متابعين :(",
"follows_no_one":"هذا المستخدم لا يتابع أحد :(",
@@ -104,7 +105,7 @@
"has_no_ignored_topics":"هذا المستخدم لم يقم بتجاهل اية مواضيع حتى الآن.",
"has_no_upvoted_posts":"هذا المستخدم لم يقم بالتصويت للأعلى لأي مشاركة حتى الآن.",
"has_no_downvoted_posts":"هذا المستخدم لم يقم بالتصويت للأسفل لأي مشاركة حتى الآن.",
"has_no_voted_posts":"هذا المستخدم لا يمتلك اية مشاركات تم التصويت عليها",
"has_no_controversial_posts":"This user does not have any downvoted posts yet.",
"has_no_blocks":"You have blocked no users.",
"email_hidden":"البريد الإلكتروني مخفي",
"hidden":"مخفي",
@@ -183,6 +184,7 @@
"consent.export_posts":"Export Posts (.csv)",
"consent.export-posts-success":"Exporting posts, you will get a notification when it is complete.",
"emailUpdate.intro":"Please enter your email address below. This forum uses your email address for scheduled digest and notifications, as well as for account recovery in the event of a lost password.",
"emailUpdate.optional":"<strong>This field is optional</strong>. You are not obligated to provide your email address, but without a validated email, you will not be able to recover your account.",
"emailUpdate.optional":"<strong>This field is optional</strong>. You are not obligated to provide your email address, but without a validated email you will not be able to recover your account or login with your email.",
"emailUpdate.required":"<strong>This field is required</strong>.",
"emailUpdate.change-instructions":"A confirmation email will be sent to the entered email address with a unique link. Accessing that link will confirm your ownership of the email address and it will become active on your account. At any time, you are able to update your email on file from within your account page."
"details.no-users":"В избрания период не сасе регистрирали нови потребители",
"details.no-topics":"В избрания период не са публикувани нови теми",
"details.no-searches":"Все още не са правени търсения",
"details.no-logins":"В избрания период не са отчетени вписвания",
"details.logins-static":"NodeBB запазва данни за сесията в продължение на %1 дни, така че в следната таблица могат да се видят само последните активни сесии",
"page-views-custom-help":"Въведете интервал от дати, за които искате да видите преглежданията на страниците. Ако не се появи календар за избор, можете да въведете датите във формат: <code>ГГГГ-ММ-ДД</code>",
"page-views-custom-error":"Моля, въведете правилен интервал от дати във формата: <code>ГГГГ-ММ-ДД</code>",
"stats.yesterday":"Вчера",
"stats.today":"Днес",
"stats.last-week":"Миналата седмица",
"stats.this-week":"Тази седмица",
"stats.last-month":"Миналия месец",
"stats.this-month":"Този месец",
"stats.all":"От началото",
"updates":"Обновления",
"running-version":"Вие използвате <strong>NodeBB версия <span id=\"version\">%1</span></strong>.",
"keep-updated":"Стремете се винаги да използвате най-новата версия на NodeBB, за да се възползвате от последните подобрения на сигурността и поправки на проблеми.",
"upgrade-available":"<p>Има нова версия (версия %1). Ако имате възможност, <a href=\"https://docs.nodebb.org/configuring/upgrade/\" target=\"_blank\">обновете NodeBB</a>.</p>",
"prerelease-upgrade-available":"<p>Това е остаряла предварителна версия на NodeBB. Има нова версия (версия %1). Ако имате възможност, <a href=\"https://docs.nodebb.org/configuring/upgrade/\" target=\"_blank\">обновете NodeBB</a>.</p>",
"prerelease-warning":"<p>Това е версия за <strong>предварителен преглед</strong> на NodeBB. Възможно е да има неочаквани неизправности. <i class=\"fa fa-exclamation-triangle\"></i></p>",
"running-in-development":"<span>Форумът работи в режим за разработчици, така че може да бъде уязвим. Моля, свържете се със системния си администратор.</span>",
"latest-lookup-failed":"<p>Не може да бъде извършена проверка за последната налична версия на NodeBB</p>",
"search-plugin-installed":"Добавката за търсене е инсталирана",
"search-plugin-not-installed":"Добавката за търсене не е инсталирана",
"search-plugin-tooltip":"Инсталирайте добавка за търсене от страницата с добавките, за да включите функционалността за търсене",
"control-panel":"Системен контрол",
"rebuild-and-restart":"Повторно изграждане и рестартиране",
"restart":"Рестартиране",
"restart-warning":"Повторното изграждане и рестартирането на NodeBB ще прекъснат всички връзки за няколко секунди.",
"restart-disabled":"Възможностите за повторно изграждане и рестартиране на NodeBB са изключени, тъй като изглежда, че NodeBB не се изпълнява чрез подходящия демон.",
"maintenance-mode":"Режим на профилактика",
"maintenance-mode-title":"Щракнете тук, за да зададете режим на профилактика на NodeBB",
"realtime-chart-updates":"Актуализации на таблиците в реално време",
"active-users":"Дейни потребители",
"active-users.users":"Потребители",
"active-users.guests":"Гости",
"active-users.total":"Общо",
"active-users.connections":"Връзки",
"anonymous-registered-users":"Анонимни към регистрирани потребители",
"anonymous":"Анонимни",
"registered":"Регистрирани",
"user-presence":"Присъствие на потребителите ",
"on-categories":"В списъка с категории",
"reading-posts":"Четящи публикации",
"browsing-topics":"Разглеждащи теми",
"recent":"Скорошни",
"unread":"Непрочетени",
"high-presence-topics":"Теми с най-голяма присъственост",
"graphs.page-views":"Преглеждания на страниците",
"graphs.page-views-registered":"Преглеждания на страниците от регистрирани потребители",
"graphs.page-views-guest":"Преглеждания на страниците от гости",
"graphs.page-views-bot":"Преглеждания на страниците от ботове",
"description":"Езикът по подразбиране определя езиковите настройки за всички потребители, които посещават Вашия форум. <br />Отделните потребители могат да сменят езика си от страницата с настройки на профила си.",
"default-language":"Език по подразбиране",
"auto-detect":"Автоматично разпознаване на езика за гостите"
"headers.csp-frame-ancestors":"Задайте заглавката „Content-Security-Policy frame-ancestors“ за да поставите NodeBB „iFrame“",
"headers.csp-frame-ancestors-help":"„none“ (нищо), „self“ (себе си – по подразбиране) или списък от позволени адреси.",
"headers.powered-by":"Персонализиране на заглавната част „Захранван от“, която се изпраща от NodeBB",
"headers.acao":"Произход за разрешаване на управлението на достъпа",
"headers.acao-regex":"Регулярен израз за произхода за разрешаване на управлението на достъпа",
"headers.acao":"Access-Control-Allow-Origin",
"headers.acao-regex":"Регулярен израз за „Access-Control-Allow-Origin“",
"headers.acao-help":"За да забраните достъпа до всички уеб сайтове, оставете празно",
"headers.acao-regex-help":"Въведете регулярен израз за съвпадение с динамичните произходи. За да забраните достъпа на всички уеб сайтове, оставете това празно.",
"headers.acac":"Удостоверителни данни за разрешаване на управлението на достъпа",
"subscriptions.hour-help":"Моля, въведете число, представляващо часа, в който да се разпращат е-писма с подготвеното резюме (напр.. <code>0</code> за полунощ, <code>17</code> за 5 следобед). Имайте предвид, че този час е според часовата зона на сървъра и може да не съвпада с часовника на системата Ви.<br /> Приблизителното време на сървъра е: <span id=\"serverTime\"></span><br /> Изпращането на следващия ежедневен бюлетин е планирано за <span id=\"nextDigestTime\"></span>",
"notifications.remove-images":"Премахване на изображенията от известията по е-поща",
"require-email-address":"Новите потребители задължително трябва да предоставят е-поща",
"require-email-address-warning":"По подразбиране потребителите могат да не въвеждат адрес на е-поща. Ако включите това, те задължително ще трябва да предоставят е-поща, за да могат да се регистрират. <strong>Това не означава, че потребителят ще въведе съществуваща е-поща, нито че тя ще е негова.</strong>",
"require-email-address-warning":"По подразбиране потребителите могат да не въвеждат адрес на е-поща, като оставят полето празно. Ако включите това, те задължително ще трябва да предоставят е-поща, за да могат да се регистрират. <strong>Това не означава, че потребителят ще въведе съществуваща е-поща, нито че тя ще е негова.</strong>",
"send-validation-email":"Изпращане на е-писма за потвърждение, когато бъде добавена или променена е-поща",
"include-unverified-emails":"Изпращане на е-писма към получатели, които не са потвърдили изрично е-пощата си",
"include-unverified-warning":"За потребителите, които имат свързана е-поща с регистрацията си, тя се смята за потвърдена. Но има ситуации, в които това не е така (например при ползване на регистрация от друга система, но и в други случаи), <strong>Включете тази настройка на собствен риск</strong> – изпращането на е-писма към непотвърдени адреси може да нарушава определени местни закони против нежеланата поща."
}
"include-unverified-warning":"За потребителите, които имат свързана е-поща с регистрацията си, тя се смята за потвърдена. Но има ситуации, в които това не е така (например при ползване на регистрация от друга система, но и в други случаи), <strong>Включете тази настройка на собствен риск</strong> – изпращането на е-писма към непотвърдени адреси може да нарушава определени местни закони против нежеланата поща.",
"prompt":"Подсещане на потребителите да въведат или потвърдят е-пощата си",
"prompt-help":"Ако потребител няма зададена е-поща, или ако тя не е потвърдена, на екрана му ще се покаже предупредително съобщение.",
"sendEmailToBanned":"Изпращане на е-писма дори до блокираните потребители"
"title.short-placeholder":"Ако не е посочено кратко заглавие, ще бъде използвано заглавието на уеб сайта",
"title.url":"Адрес",
"title.url-placeholder":"Адресът на заглавието на уеб сайта",
"title.url-help":"При щракване върху заглавието, потребителите ще бъдат изпратени на този адрес. Ако бъде оставено празно, потребителите ще бъдат изпращани на началната страница на форума.",
"title.url":"Адрес за заглавието",
"title.url-placeholder":"Адресът за заглавието на уеб сайта",
"title.url-help":"Когато потребител щракне върху заглавието, той ще бъде прехвърлен към този адрес. Ако е празно, потребителят ще бъде изпратен към началната страница на форума. <br> Забележка: Това не е външният адрес, който се ползва в е-писмата. Той се задава от свойството <code>url</code> във файла config.json",
"title.name":"Името на общността Ви",
"title.show-in-header":"Показване на заглавието на уеб сайта в заглавната част",
"browser-title":"Заглавие на браузъра",
@@ -20,9 +20,9 @@
"logo.image":"Изображение",
"logo.image-placeholder":"Път до логото, което да бъде показано в заглавната част на форума",
"logo.upload":"Качване",
"logo.url":"Адрес",
"logo.url-placeholder":"Адресът на логото на уеб сайта",
"logo.url-help":"При щракване върху логото, потребителите ще бъдат изпратени на този адрес. Ако бъде оставено празно, потребителите ще бъдат изпращани на началната страница на форума.",
"logo.url":"Адрес за логото",
"logo.url-placeholder":"Адресът за логото на уеб сайта",
"logo.url-help":"Когато потребител щракне върху логото, той ще бъде прехвърлен към този адрес. Ако е празно, потребителят ще бъде изпратен към началната страница на форума. <br> Забележка: Това не е външният адрес, който се ползва в е-писмата. Той се задава от свойството <code>url</code> във файла config.json",
"logo.alt-text":"Алтернативен текст",
"log.alt-text-placeholder":"Алтернативен текст за достъпност",
"favicon":"Иконка на уеб сайта",
@@ -47,4 +47,4 @@
"undo-timeout":"Време за отмяна",
"undo-timeout-help":"Някои действия, като например преместването на теми, могат да бъдат отменени от модератора в рамките на определено време. Задайте 0, за да забраните изцяло отменянето.",
"allow-files":"Позволяване на потребителите да качват обикновени файлове",
"private":"Качените файлове да бъдат частни",
"strip-exif-data":"Премахване на данните EXIF",
"preserve-orphaned-uploads":"Запазване на качените файлове на диска дори след изтриването на публикацията",
"private-extensions":"Файлови разширения, които да бъдат частни",
"private-uploads-extensions-help":"Въведете списък от файлови разширения, разделени със запетаи, които искате да бъдат частни (например <code>pdf,xls,doc</code>). Ако оставите това поле празно, всички файлове ще бъдат частни.",
"resize-image-width-threshold":"Преоразмеряване на изображенията, ако са по-широки от определената ширина",
"gdpr_enabled":"Включване на искането за съгласие с ОРЗД",
"gdpr_enabled_help":"Ако това е включено, всички новорегистрирани потребители ще бъдат задължени изрично да дадат съгласието си за събирането на данни и статистики за потреблението според <a href=\"https://ec.europa.eu/info/priorities/justice-and-fundamental-rights/data-protection/2018-reform-eu-data-protection-rules/eu-data-protection-rules_en\">Общия регламент относно защитата на данните (ОРЗД)</a>. <strong>Забележка</strong>: Включването на ОРЗД не задължава съществуващите потребители да дадат съгласието си. Ако искате това, ще трябва да инсталирате добавката за ОРЗД (GDPR).",
@@ -71,6 +69,7 @@
"digest-freq.off":"Изключено",
"digest-freq.daily":"Ежедневно",
"digest-freq.weekly":"Ежеседмично",
"digest-freq.biweekly":"На всеки две седмици",
"digest-freq.monthly":"Ежемесечно",
"email-chat-notifs":"Изпращане на е-писмо, ако получа ново съобщение в разговор, а не съм на линия",
"email-post-notif":"Изпращане на е-писмо, когато се появи отговор в темите, за които съм абониран(а).",
"unsub.cta":"Натиснете тук, за да промените тези настройки",
"unsubscribe":"отписване",
"unsub.success":"Повече няма да получавате е-писма от пощенския списък на <strong>%1</strong>",
"unsub.failure.title":"Отписването не може да се извърши",
"unsub.failure.message":"За съжаление не успяхме да Ви отпишем от пощенския списък, поради проблем с връзката. Можете, обаче, да промените предпочитанията си за е-писмата в <a href=\"%2\">потребителските си настройки</a>.<br /><br />(грешка: <code>%1</code>)",
"banned.subject":"Вие бяхте блокиран(а) от %1",
"banned.text1":"Потребителят %1 беше блокиран от %2.",
"banned.text2":"Това блокиране ще е в сила до %1.",
"wrong-parameter-type":"За свойството `%1` се очакваше стойност от тип %3, но вместо това беше получено %2",
"required-parameters-missing":"Липсват задължителни параметри от това извикване към ППИ: %1",
"not-logged-in":"Изглежда не сте се вписали в системата.",
"account-locked":"Вашият акаунт беше заключен временно",
"search-requires-login":"Търсенето изисква регистриран акаунт! Моля, впишете се или се регистрирайте!",
@@ -9,6 +11,7 @@
"invalid-tid":"Грешен идентификатор на тема",
"invalid-pid":"Грешен идентификатор на публикация",
"invalid-uid":"Грешен идентификатор на потребител",
"invalid-mid":"Грешен идентификатор на съобщение в разговор",
"invalid-date":"Трябва да бъде посочена правилна дата",
"invalid-username":"Грешно потребителско име",
"invalid-email":"Грешна е-поща",
@@ -34,8 +37,9 @@
"email-invited":"На тази е-поща вече е била изпратена покана",
"email-not-confirmed":"Публикуването в някои категории и теми ще бъде възможно едва след като е-пощата Ви бъде потвърдена. Щръкнете тук, за да Ви изпратим е-писмо за потвърждение.",
"email-not-confirmed-chat":"Няма да можете да пишете в разговори, докато е-пощата Ви не бъде потвърдена. Моля, натиснете тук, за да потвърдите е-пощата си.",
"email-not-confirmed-email-sent":"Вашата е-поща все още не е потвърдена. Моля, проверете входящата си кутия за писмото за потвърждение. Няма да можете да публикувате съобщения или да пишете в разговори, докато е-пощата Ви не бъде потвърдена.",
"no-email-to-confirm":"Нямате зададена е-поща. Тя е необходима за възстановяването на акаунта в случай на проблем. Натиснете тук, за да въведете е-поща.",
"email-not-confirmed-email-sent":"Вашата е-поща все още не е потвърдена. Моля, проверете входящата си кутия за писмото за потвърждение. Възможно е да не можете да публикувате съобщения или да пишете в разговори, докато е-пощата Ви не бъде потвърдена.",
"no-email-to-confirm":"Нямате зададена е-поща. Тя е необходима за възстановяването на акаунта в случай на проблем, а може и да се изисква, за да пишете в някои категории. Натиснете тук, за да въведете е-поща.",
"user-doesnt-have-email":"Потребителят „%1“ няма зададена е-поща.",
"email-confirm-failed":"Не успяхме да потвърдим е-пощата Ви. Моля, опитайте отново по-късно.",
"confirm-email-already-sent":"Е-писмото за потвърждение вече е изпратено. Моля, почакайте още %1 минута/и, преди да изпратите ново.",
"sendmail-not-found":"Изпълнимият файл на „sendmail“ не може да бъде намерен. Моля, уверете се, че е инсталиран и изпълним за потребителя, чрез който е пуснат NodeBB.",
@@ -103,6 +107,7 @@
"already-bookmarked":"Вече имате отметка към тази публикация",
"already-unbookmarked":"Вече сте премахнали отметката си от тази публикация",
"cant-ban-other-admins":"Не можете да блокирате другите администратори!",
"cant-make-banned-users-admin":"Не можете да давате администраторски права на блокирани потребители.",
"cant-remove-last-admin":"Вие сте единственият администратор. Добавете друг потребител като администратор, преди да премахнете себе си като администратор",
"account-deletion-disabled":"Изтриването на акаунт е забранено",
"cant-delete-admin":"Премахнете администраторските права от този акаунт, преди да го изтриете.",
@@ -140,7 +145,6 @@
"invalid-chat-message":"Неправилно съобщение",
"chat-message-too-long":"Съобщенията в разговор не може да бъдат по-дълги от %1 знака.",
"cant-edit-chat-message":"Нямате право да редактирате това съобщение",
"cant-remove-last-user":"Не можете да премахнете последния потребител",
"cant-delete-chat-message":"Нямате право да изтриете това съобщение",
"chat-edit-duration-expired":"Можете да редактирате съобщенията си в разговорите до %1 секунда/и, след като ги пуснете",
"chat-delete-duration-expired":"Можете да изтривате съобщенията си в разговорите до %1 секунда/и след пускането им",
"has_no_follower":"Този потребител няма последователи :(",
"follows_no_one":"Този потребител не следва никого :(",
@@ -104,7 +105,7 @@
"has_no_ignored_topics":"Този потребител не е пренебрегнал нито една тема досега.",
"has_no_upvoted_posts":"Този потребител не е гласувал положително досега.",
"has_no_downvoted_posts":"Този потребител не е гласувал отрицателно досега.",
"has_no_voted_posts":"Този потребител нее гласувал досега.",
"has_no_controversial_posts":"Този потребител няма публикации с отрицателни гласове засега.",
"has_no_blocks":"Не сте блокирали никого.",
"email_hidden":"Е-пощата е скрита",
"hidden":"скрито",
@@ -183,6 +184,7 @@
"consent.export_posts":"Изнасяне на публикациите (.csv)",
"consent.export-posts-success":"Изнасяне на публикациите… Ще получите известие, когато е готово.",
"emailUpdate.intro":"Въведете е-пощата си по-долу. Този форум използва е-пощата за планирани резюмета и известия, както и за възстановяване на акаунта, в случай на забравена парола.",
"emailUpdate.optional":"<strong>Това поле не е задължително</strong>. Не сте длъжен/на да ни давате адреса на е-пощата си, но ако нямате потвърдена е-поща, няма да можете да възстановите достъпа до акаунта си в случай на проблем.",
"emailUpdate.optional":"<strong>Това поле не е задължително</strong>. Не сте длъжен/на да предоставяте адрес на е-поща, но без проверена е-поща, няма да можете да възстановите акаунта си в случай на проблем, нито ще можете да се вписвате се-пощата си.",
"emailUpdate.required":"<strong>Това поле е задължително</strong>.",
"emailUpdate.change-instructions":"Ще Ви изпратим е-писмо за потвърждение на посочената е-поща, което ще съдържа уникална връзка. Щом последвате тази връзка, притежанието Ви на тази е-поща ще бъде потвърдено и тя ще бъде свързана с акаунта Ви. Ще можете да промените тази е-поща по всяко време, от страницата на акаунта си."
"page-views-custom-help":"Enter a date range of page views you would like to view. If no date picker is available, the accepted format is <code>YYYY-MM-DD</code>",
"page-views-custom-error":"Please enter a valid date range in the format <code>YYYY-MM-DD</code>",
"stats.yesterday":"Yesterday",
"stats.today":"Today",
"stats.last-week":"Last Week",
"stats.this-week":"This Week",
"stats.last-month":"Last Month",
"stats.this-month":"This Month",
"stats.all":"All Time",
"updates":"Updates",
"running-version":"You are running <strong>NodeBB v<span id=\"version\">%1</span></strong>.",
"keep-updated":"Always make sure that your NodeBB is up to date for the latest security patches and bug fixes.",
"up-to-date":"<p>You are <strong>up-to-date</strong> <i class=\"fa fa-check\"></i></p>",
"upgrade-available":"<p>A new version (v%1) has been released. Consider <a href=\"https://docs.nodebb.org/configuring/upgrade/\" target=\"_blank\">upgrading your NodeBB</a>.</p>",
"prerelease-upgrade-available":"<p>This is an outdated pre-release version of NodeBB. A new version (v%1) has been released. Consider <a href=\"https://docs.nodebb.org/configuring/upgrade/\" target=\"_blank\">upgrading your NodeBB</a>.</p>",
"prerelease-warning":"<p>This is a <strong>pre-release</strong> version of NodeBB. Unintended bugs may occur. <i class=\"fa fa-exclamation-triangle\"></i></p>",
"running-in-development":"<span>Forum is running in development mode. The forum may be open to potential vulnerabilities; please contact your system administrator.</span>",
"latest-lookup-failed":"<p>Failed to look up latest available version of NodeBB</p>",
"description":"The default language determines the language settings for all users who are visiting your forum. <br />Individual users can override the default language on their account settings page.",
"default-language":"Default Language",
"auto-detect":"Auto Detect Language Setting for Guests"
"from-help":"The from name to display in the email.",
"smtp-transport":"SMTP Transport",
"smtp-transport.enabled":"Use an external email server to send emails",
"smtp-transport.enabled":"Enable SMTP Transport",
"smtp-transport-help":"You can select from a list of well-known services or enter a custom one.",
"smtp-transport.service":"Select a service",
"smtp-transport.service-custom":"Custom Service",
@@ -38,7 +38,11 @@
"subscriptions.hour-help":"Please enter a number representing the hour to send scheduled email digests (e.g. <code>0</code> for midnight, <code>17</code> for 5:00pm). Keep in mind that this is the hour according to the server itself, and may not exactly match your system clock.<br /> The approximate server time is: <span id=\"serverTime\"></span><br /> The next daily digest is scheduled to be sent <span id=\"nextDigestTime\"></span>",
"notifications.remove-images":"Remove images from email notifications",
"require-email-address":"Require new users to specify an email address",
"require-email-address-warning":"By default, users can opt-out of entering an email address. Enabling this option means they have to enter an email address in order to proceed with registration. <strong>It does not ensure user will enter a real email address, nor even an address they own.</strong>",
"require-email-address-warning":"By default, users can opt-out of entering an email address by leaving the field blank. Enabling this option means they have to enter an email address in order to proceed with registration. <strong>It does not ensure user will enter a real email address, nor even an address they own.</strong>",
"send-validation-email":"Send validation emails when an email is added or changed",
"include-unverified-emails":"Send emails to recipients who have not explicitly confirmed their emails",
"include-unverified-warning":"By default, users with emails associated with their account have already been verified, but there are situations where this is not the case (e.g. SSO logins, grandfathered users, etc). <strong>Enable this setting at your own risk</strong> – sending emails to unverified addresses may be a violation of regional anti-spam laws."
}
"include-unverified-warning":"By default, users with emails associated with their account have already been verified, but there are situations where this is not the case (e.g. SSO logins, grandfathered users, etc). <strong>Enable this setting at your own risk</strong> – sending emails to unverified addresses may be a violation of regional anti-spam laws.",
"prompt":"Prompt users to enter or confirm their emails",
"prompt-help":"If a user does not have an email set, or their email is not confirmed, a warning will be shown on screen.",
"sendEmailToBanned":"Send emails to users even if they have been banned"
"title.short-placeholder":"If no short title is specified, the site title will be used",
"title.url":"URL",
"title.url":"Title Link URL",
"title.url-placeholder":"The URL of the site title",
"title.url-help":"When the title is clicked, send users to this address. If left blank, user will be sent to the forum index.",
"title.url-help":"When the title is clicked, send users to this address. If left blank, user will be sent to the forum index. <br> Note: This is not the external URL used in emails, etc. That is set by the <code>url</code> property in config.json",
"title.name":"Your Community Name",
"title.show-in-header":"Show Site Title in Header",
"browser-title":"Browser Title",
@@ -20,9 +20,9 @@
"logo.image":"Image",
"logo.image-placeholder":"Path to a logo to display on forum header",
"logo.upload":"Upload",
"logo.url":"URL",
"logo.url":"Logo Link URL",
"logo.url-placeholder":"The URL of the site logo",
"logo.url-help":"When the logo is clicked, send users to this address. If left blank, user will be sent to the forum index.",
"logo.url-help":"When the logo is clicked, send users to this address. If left blank, user will be sent to the forum index. <br> Note: This is not the external URL used in emails, etc. That is set by the <code>url</code> property in config.json",
"logo.alt-text":"Alt Text",
"log.alt-text-placeholder":"Alternative text for accessibility",
"favicon":"Favicon",
@@ -47,4 +47,4 @@
"undo-timeout":"Undo Timeout",
"undo-timeout-help":"Some operations such as moving topics will allow for the moderator to undo their action within a certain timeframe. Set to 0 to disable undo completely.",
"topic-tools":"Topic Tools"
}
}
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.