Feel free to close this if it is intentional, but as you are not allowed to delete other users notes I expect you shouldn't be able to edit them. Editing another users post also changes ownership, allowing you to then delete it.
I also added `error:` to the errormessage so that they display properly.
* test: failing test for issue
* fix: #9593, don't lock if email is identical to username
* fix: lock calls after first call
* fix: add back email check
* test: remove invalid test
Co-authored-by: Julian Lam <julian@nodebb.org>
The session reroll logic is still standard practice, but in some cases, it is not necessary or causes UX issues. An issue opened in session sharing (julianlam/nodebb-plugin-session-sharing#95) brought this to attention in that parsing the cookie to log in the user caused a reroll (as expected), but caused the session open on other tabs to be mismatched. If "re-validate" was turned on, it basically meant that it was not possible to use NodeBB with multiple tabs.
Session sharing now sets `reroll` to `false` if re-validate is enabled.
* Fixes flag note editing, deletion, and template update
Flag note datetime should be int.
Corrects argument order for note reloading.
* Chore: add missing radix
* fix: empty append bug
This line results in an error message popping up when clicking the flag notes text box, as the 'appendNote' case fires with no text. I can't tell that it serves any function.
* switch to ioredis
also need this fix in redisearch:
redis-search.js:98
```
redisClient.multi(cmds).exec(function(err, ids) {
if (err) {
return callback(err);
}
var errRes = ids[resultIndex];
if (errRes[0]) {
return callback(errRes[0]);
}
callback(null, errRes[1]);
});
```
* dbsearch compatible with ioredis
* fixed dbsearch?
Hook payload updated to pass login strategy (if overridden, this value will be something other than 'local'), and explicitly pass error if the login failed.
* fix: #9395, pass all data from client to Topics.reply
so plugins can set custom fields
refactor and use setDefaultPostData
* fix: circular json error
* refactor: change params
* refactor: automatically authenticate all requests setup through route helpers
* fix: removed connect-ensure-login dependency
* fix: bug with some middlewares not defined outside route helper methods
`action:flags.create` on initial flag creation
`action:flags.notify` on notification to admins and moderators
`action:flags.addReport` on flag report addition (called during initial flag create, too)
* Update taskbar.js
add aria-label to make the link text discernible to screen readers.
* place quotes around attribute value
Co-authored-by: Peter Jaszkowiak <p.jaszkow@gmail.com>
In some edge cases (e.g. SSO plugin redirecting the user immediately), with modern browsers, the request is never "completed" for speed. This causes a condition where the session object never persists to the database, even though it has changed. This added line forces a db persist on a successful login.
Context: https://github.com/expressjs/session/pull/484
One notable change is line 200, where a conditional was changed. The conditional used to check for `user.hasOwnProperty('picture')` and was added so that icons would only be included in the response if the picture was requested. This doesn't seem to apply as picture could be set regardless (see default avatar logic above), so I explicitly check `requestedFields` now.
>
> A plugin wanted to use `response:rotuer.page` to 404 a specific page on some condition. res.render returns early in send404 and so must be awaited otherwise multiple responses will be sent
If URL was set to something like `http://example.com:8080`, and port
was set to 4567, keep listening on port 4567 and keep linking through
URL that was specified.
This allows to listen on port 4567, while having NGINX (or any proxy)
set to listen on port 8080 and route traffic to port 4567.
So NodeBB can be "hidden" behind proxy while URL can still contain
non-standard port, i.e., port different than 80 and 443.
fix: ensure proper admin privilege checking on remounted `/admin` mount
fix: guard against plugins sending back missing mounts
fix: no need to make addRemountableRoutes awaitable
For 7+ years we were escaping this value, but it is in many cases already sanitized (as it may be a post content). For those cases when it is not, I now run it through parse.raw.
Instead of escaping, it now strips p, img, and a tags.
* feat: wip categories pagination
* feat: add subCategoriesPerPage setting
* feat: add load more sub categories button to category page
* fix: openapi spec
* feat: show sub categories left on category page
hide button when no more categories left
* breaking: rename categories to allCategories on /search
categories contains the search results
* fix: spec
* refactor: remove cidsPerPage
* fix: tests
* feat: use component for subcategories
* fix: prevent negative subCategoriesLeft
* feat: new category filter/search WIP
* feat: remove categories from /tag
* fix: dont load all categories when showing move modal
* feat: allow adding custom categories to list
* breaking: dont load entire category tree on post queue
removed unused code
add hooks to filter/selector
add options to filter/selector
* feat: make selector modal work again
* feat: replace old search module
* fix: topic move selector
* feat: dont load all categories on create category modal
* fix: fix more categorySelectors
* feat: dont load entire category tree on group details page
* feat: dont load all categories on home page and user settings page
* feat: add pagination to /user/:userslug/categories
* fix: update schemas
* fix: more tests
* fix: test
* feat: flags page, dont return entire category tree
* fix: flag test
* feat: categories manage page
dont load all categories
allow changing root category
clear caches properly
* fix: spec
* feat: admins&mods page
dont load all categories
* fix: spec
* fix: dont load all children when opening dropdown
* fix: on search results dont return all children
* refactor: pass all options, rename options.cids to options.selectedCids
* fix: #9266
* fix: index 0
* fix: spec
* feat: #9265, add setObjectBulk
* refactor: shoter updateOrder
* feat: selectors on categories/category
* fix: tests and search filter
* fix: category update test
* feat: pagination on acp categories page
show order in set order modal
* fix: allow drag&drop on pages > 1 in /admin/manage/categories
* fix: teasers for deep nested categories
fix sub category display on /category page
* fix: spec
* refactor: use eslint-disable-next-line
* refactor: shorter
Login route saves the previous page by checking for the X-Return-To header. This header is automatically set by ajaxify.
Login takes this value and saves it to `req.session`.
Up until now, `/register` saved the previous URL in a hidden input, and redirected based on that value, but it occasionally conflicted with req.session.returnTo. It was also confusing because it did not match how login handled the values.
This commit updates the route handling so it works identically to `/login`.
Adds a `Service-Worker-Allowed` header on `assets/src/service-worker.js` URL and uses `scope` option during registration to ensure the service worker is correctly scoped to the entire forum and only the forum.
* feat: wip categories pagination
* feat: add subCategoriesPerPage setting
* feat: add load more sub categories button to category page
* fix: openapi spec
* feat: show sub categories left on category page
hide button when no more categories left
* breaking: rename categories to allCategories on /search
categories contains the search results
* fix: spec
* refactor: remove cidsPerPage
* fix: tests
* feat: use component for subcategories
* fix: prevent negative subCategoriesLeft
If multiple sorted-lists were on separate pages, saving one page would erase the sorted-lists saved on the other page. This was caused by naive deletion of the sorted-lists index on settings save.
At the same time, a bug was found where if fewer items were passed in, only that many items were removed from the database, leaving leftover orphan data in the database.
The logic now:
- Only removes sorted-lists if they are passed in (and empty)
- Deletes all sorted list items, not just the items passed in.
`/api/post/pid/:pid`, `/api/topic/tid/:tid`, `/api/category/cid/:cid` have now been removed in favour of routes in the Write API (`/api/v3/(posts|topics|categories)/:id`)
The slowdown is fairly insignificant (< .1s), and the only change is the minified file is identical across environments, which is better from a debugging standpoint
These options were originally used when the flag filters were shown in the sidebar. This has seen been removed, and so the information is now superfluous
When combining filters, the old logic assumed that every filter was
exclusive, unless that filter contained multiple items, in which
case it was added to a list of "or" filters that returned all
matching flags.
A fault was discovered in that if you passed in multiple "or"
states, it did not return flags with the expected filtering.
e.g. open flags, closed flags, flags of cid 1, flags of cid 2
This could return open flags of cid 3, since all of the filters
were "OR"'d.
This logic change updates the behaviour so disparate OR sets are
intersected (ANDed).
This change is breaking in the sense that if you have written
interstitial callbacks before that are async functions _with_ a
callback, those are no longer allowed. You will not need to call
next() as that argument will no longer be passed in to async
functions.
Access checks were added for topic GET route, but occasionally a post_uuid is passed in, which is available to everyone, and so checks should be skipped
After conversing with Dave from CodeClimate, he suggested these changes to adjust CodeClimate's detection so that it does not alert as frequently for code blocks that are similar, but functionally different. I also added a line to enforce the rule of threes, since CC often alerted only when two blocks were identical.
When you select Custom Route as home you get a 404 error "/custom not found" error.
This because 'homePageRoute' property was used instead of 'homePageCustom'
when you have 4k+ categories manipulating DOM becomes very slow
clone the list and manipulate it outside of DOM, replace list on DOM when search is done
add utils.debounce so list is updated slower
// identical to airbnb rule, except for allowing for..of, because we want to use it
"no-restricted-syntax": [
"error",
{
"selector": "ForInStatement",
"message": "for..in loops iterate over the entire prototype chain, which is virtually never what you want. Use Object.{keys,values,entries}, and iterate over the resulting array."
},
{
"selector": "LabeledStatement",
"message": "Labels are a form of GOTO; using them makes code confusing and hard to maintain and understand."
},
{
"selector": "WithStatement",
"message": "`with` is disallowed in strict mode because it makes code impossible to predict and optimize."
* pass modified params, only affects filter hooks (e74df539)
* add back topic id input (696c4895)
* expose username validation logic to user lib, new hook `filter:username.check` (bfd512b9)
* add $.deserialize to client side (e5133a78)
* allow for settings.save/settings.load on client side (66196d2c)
* remove promise-pollyfil (902a88c2)
* category privilege API routes (c1b3079d)
* change uploadCroppedPicture to use updateProfile as well (0af9d26f)
* use updateProfile for picture change (a598abcd)
* allow payload to be passed to emailer test method (1155b0c4)
* add uid of user who created flag to action:flags.create (069ac60f)
* new client-side hook `filter:api.options` to allow plugins to modify api requests (7d391d47)
* keep notifs for one month, load 50 notifications instead of 30 (02f08111)
* also pass in uid to `filter:email.prepare` (86b0c57d)
* new hook `filter:email.prepare` (27ea3dcb)
* new hook static:email.send (bf90d158)
* show time info for upgrade scripts (14a6c349)
* add dashboard sub-pages to ACP menu (73dc64d9)
* recent logins sessions table in dashbaord subpage (2f89b0d7)
* topics dashboard details subpage (e1ed514b)
* update user list in dashboard/users on graph update (c57c7703)
* show list of recent users in dashboard/users (cc938224)
* req.query parsing and dynamically loading data instead (6fdcae73)
* new hooks for notifications get/getCount (079a13d4)
* allow hook unregistration, and temporary page-based hooks (d0136074)
* report login statistics from analytics data, instead of its own zset (16d3c457)
* track login sessions for admin dashboard reporting (9a9f366d)
* track successful logins in analytics (504fd107)
* pass user picture object into change_picture_modal (c96fd3b1)
* add logout to invalid session (beb14273)
* category search test (a592ebd1)
* pass post object to filter:post.tools (ed3d9dcb)
* allow defining a list of system tags (0e07f3c9)
* add category search test, #9307 (bbaaead0)
* add tag filter to getSortedTopics (9ce6f8ad)
* ability to re-order topic thumbnails (7223074f)
* add close button to topic thumbnail modal (db027170)
*#9304, add category/topic/username to post queue notification emails (0738dae8)
* add failing test for list append/prepend with list (#9303) (8f0386d9)
* link to post-queue from topic event (a4b4a556)
* post-queue topic event (8fd78ce5)
* add post-queue cache (3f35fd33)
* newsletter opt-in/out in UCP, closes #21 (3c7cd9a6)
* load user posts/topics via xhr on infinitescroll (35954734)
*#9294, put new categories at top (4b2bf12f)
* add invalid event name to error message (670cde78)
* new notifications load/loaded hooks on client side (7edc8f45)
* pass req.session into buildReqObject (a6fa351b)
* new hook `action:login.continue` (4f976390)
* banned-users group (53e0d4d2)
*#9109, ability to delete a post's diffs (eb642f40)
* add .delete() method to api module (501441b7)
* doc add description (cc560ca3)
* add doc for query param (ed11e171)
*#9234, add pagination to /api/recent/posts/:term? (fffdc4e0)
* allow sorted-lists on multiple pages (d5d24594)
*#9232, add profile picture into exported zip (f6cd2862)
* new hook `filter:login.override`, deprecate `action:auth.overrideLogin` (b820d234)
* guard password fields in login/register against accidental caps lock (4bb3b032)
* ability to search categories, #8813 (34c42c6f)
* restore action:script.load, allow modifying loaded module via static:script.init (05be1c66)
* async/await redis connection (fdfbc902)
* async/await psql connection (33bf1b0e)
* add group name to csv event (672959c1)
* **user:** icon background selector in change picture modal (95502124)
* **remountable-routes:**
* allow category and account routes to be remounted (9021f071)
* allow /admin and /post to be remountable (f01af62b)
* **topic-events:**
* topic events GET route in write API (dc84559d)
* server-side tests for topic events (449c379d)
* clear out topic events when a topic is purged (0d4a3775)
* client-side handling on topic event log (8e93bf73)
* handle newest_to_oldest sort in topic events, WIP (882e6a15)
* generic css for timeline-event (2293a07a)
* support for uids in topic event payloads (611d1f87)
* work in progress topic events logic and client-side implementation (ab2e1ecb)
* **hooks:**
* update action:ajaxify.end to use new hooks module (1d775721)
* client-side hooks module (01c9b184)
##### Bug Fixes
* regress. rescheduling shouldn't add to sets that pinning removed… (#9477) (8b79c7f1)
* logic is hard (4dd38446)
* run in series (bc0ca61c)
* wrong variable for cache (2e9efc0e)
* accidentally committed this (13fa983e)
* tests (eb240c90)
* eslint (fa0c92a7)
* use req.ip instead, since guests can upload as well (ea22cd30)
*#9492, keep query params on redirect (36f119a9)
* stripTags for editing sorted list items as well (93598982)
*#9487, session data gathered during a session is lost upon login (1fee6a70)
* failure on session reroll 🍣 test (f4c5050a)
* registration interstitials not handling promise rejections properly (e845c34b)
* stripHTMLTags for sorted list entries (75073c0e)
* restore original behavior for up/downvoting when logged out (e50408b4)
* let recent replies respect oldest/newest sort settings (60eed8d8)
*#9483, fix events count display (6907837f)
* escape flag reason (161081e9)
* copy change on plugin activate to instruct admins to rebuild as well as restart (95d5359c)
* updateCategoryTagsCount (2dc3283f)
*#9473 (#9476) (036f935f)
*#9474, load hooks on page load (1af34b43)
* spec (d09cdc04)
*#9466, don't call leaveRoom in maintenance mode (f32ea173)
* exempt ST from being del/res via last main posts (#9468) (a0dd9080)
*#9462, on install copy default favicon (784600d9)
*#9463 (c5ae8a70)
*#9465 (4041e786)
*#9450 express session saved even if saveUninitialized explicitly passed in (9c52fd2e)
* acp crash (cb53a64c)
*#9447, include query params in previousUrl (536591f8)
* thumb count not updated when uploading multiple thumbs at a time (1ad1787e)
* change email button stays disabled if user submitted an invalid email (01f63e5d)
* use app.logout() to clear session after deleting user (cfdef77b)
* ./nodebb help with commander@7 (#9434) (2a03012e)
* hide titleRaw for deleted topics as well (edf80cfb)
*#9410, fix post queue (c5dda64f)
* privilege tables (9052db93)
*#9420, paginate after loading notifications (67b09cba)
* hooks for alert animate, no more fadein/fadeout for reconnect alert (d9e20290)
*#9414, use posts:view_deleted (e42b152f)
* preserve order when changing parent (2ceda70a)
*#9411 (3c4e93a3)
*#9412 (cef58d1d)
*#9406, update flag post tools (93c595d9)
* typo in switch..case (d8ff9851)
*#9404, show signatures if the target user has signature privilege (801570e4)
* selector (ee69c1f8)
* sorting when filtering by uid (75553b24)
* allow local (and overridden) login strategies to pass Error objects back (98b72ca5)
* category search not using uid (6aa60b63)
* inf scroll with subfolder install (262e059f)
* flicker on dashboard (2041b808)
*#9398, crash on post flag (90d64fe1)
*#9395, pass all data from client to Topics.reply (#9396) (a8f7b244)
* lint (4ac38ab2)
*#9394, fix guest handles (eb360351)
*#9387, don't try to load undefined images (03e30634)
*#9389, allow admins to add themselves to private groups (5c59354c)
*#9386, add missing translation string (482641e3)
*#9383, don't show deleted topic titles in inf scroll (e789fe8d)
*#9378, crash on verifyToken if API Token settings not saved (null case error) (cc489708)
* closes #9382, fix digest topic links (35700d16)
* spec (1e1127bd)
* regression from filter hook change (53f67ff3)
* crash if unreadTopics is undefined (617f4730)
* dont crash if login el doesnt exist (f45c0aab)
* regression via c1b3079d93fb4c49ba62a4be5279b7bff8e5a54d (2a939aad)
* change notification updateCount to use client-side hooks (84725130)
* tests (39b0e0fb)
*#9370, show correct teaser index if sorting is newest to oldest (9382fc6d)
* don't copy if src doesn't exist (ebccc794)
*#9362 best not to check file exists on every page load; copying favicon to uploads/system folder instead (771a8955)
*#9362 (ad565495)
* regression where login redirect for admin routes didn't go to local=1 (678e8f0f)
* lint (f4f61b92)
* if no in passed use "titles" to match header search (e787e6ea)
* add back middleware.authenticateOrGuest (166d65a1)
* request authentication called twice in account routes (e3b2c00d)
*#9354, don't close quicksearch results if mouse is down on them (8a4c361e)
*#9339, only log email errors once per digest, notification push (3aa26c4d)
* winston.info (3f42d40c)
*#9351 bad logic when inserting rows to privilege tables, also a missing tfoot :foot: (c5e25788)
* app.parseAndTranslate to always return promise (c2650169)
* bug where fallback window trigger was not firing if there were no hook listeners attached (1e579428)
* bad assignment (c8b78654)
*#9348 incorrect redirect via connect-ensure-login (fbe9215b)
* bug where loginSeconds setting was ignored for local login (f806befd)
* remove old dep (b58bacaf)
* notif pruning (2737f653)
* notification prune test (ca817631)
* user icon text overflow in some cases (2b7d0b5a)
* use components for toggleNavbar instead (114e3a1e)
* allow interstitial callbacks to be functional (no cb required) (9bf94ad5)
* don't publish before pubClient is connected (cdf5d18f)
* remove unused async (48f1e265)
* in setupPageRoute helper, buildHeader after plugin hooks have fired (984c9dd9)
* timeago missing on table update (655e2c67)
* wrong qs param, allow string to be passed to util.getDaysArray (f8e1a74c)
* wrong call to sortedSetAdd (dbe5f702)
* session not persisting to database in some scenarios (020f0b83)
* allow hidden inputs in user settings page (beaac0a1)
* use root context if buildAvatar context is undefined (b4c0b32b)
* use bootbox module (fa91525a)
*#9307, use _.flatten (25c8f026)
* awaiting res.render in send404 controller > > A plugin wanted to use `response:rotuer.page` to 404 a specific page on some condition. res.render returns early in send404 and so must be awaited otherwise multiple responses will be sent (2fef4627)
* do not overwrite `config.port` from URL, if it's already set (34096b73)
* switch back to getSortedSetRange (8686fbfa)
* settings v3 (91734a64)
* another topic thumb test fix (782bef5e)
* thumbs.associate logic fix + tests (7ebb6d30)
* missing awaits, possible test fix (7665adf7)
*#9301, dont call sitemapstream if there are no entries in categories/pages/topics.xml (9a6cf3d9)
* properly incase its the same path (807b0d43)
* numThumbs count on associate (76bcc0c9)
* missing cache deletion calls for post-queue cache (1490b32d)
// except for allowing for..in, because for..of is unavailable on some clients
"no-restricted-syntax": [
"error",
{
"selector": "ForOfStatement",
"message": "iterators/generators require regenerator-runtime, which is too heavyweight for this guide to allow them. Separately, loops should be avoided in favor of array iterations."
},
{
"selector": "LabeledStatement",
"message": "Labels are a form of GOTO; using them makes code confusing and hard to maintain and understand."
},
{
"selector": "WithStatement",
"message": "`with` is disallowed in strict mode because it makes code impossible to predict and optimize."
"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>",
"fallback-emailer-not-found":"Fallback emailer not found!",
"running-in-development":"المنتدى قيد التشغيل في وضع \"المطورين\". وقد تكون هناك ثغرات أمنية مفتوحة؛ من فضلك تواصل مع مسؤول نظامك.",
"latest-lookup-failed":"<p>Failed to look up latest available version of NodeBB</p>",
@@ -75,5 +77,12 @@
"graphs.registered-users":"مستخدمين مسجلين",
"graphs.anonymous-users":"مستخدمين مجهولين",
"last-restarted-by":"Last restarted by",
"no-users-browsing":"No users browsing"
"no-users-browsing":"No users browsing",
"back-to-dashboard":"Back to Dashboard",
"details.no-users":"No users have joined within the selected timeframe",
"details.no-topics":"No topics have been posted within the selected timeframe",
"details.no-logins":"No logins have been recorded within the selected timeframe",
"details.logins-static":"NodeBB only saves session data for %1 days, and so this table below will only show the most recently active sessions",
"set-order-help":"Setting the order of the category will move this category to that order and update the order of other categories as necessary. Minimum order is 1 which puts the category at the top.",
"select-category":"Select Category",
"set-parent-category":"Set Parent Category",
@@ -46,6 +50,8 @@
"privileges.no-users":"No user-specific privileges in this category.",
"privileges.section-group":"Group",
"privileges.group-private":"This group is private",
"privileges.inheritance-exception":"This group does not inherit privileges from registered-users group",
"privileges.banned-user-inheritance":"Banned users inherit privileges from banned-users group",
"privileges.search-group":"Add Group",
"privileges.copy-to-children":"Copy to Children",
"privileges.copy-from-category":"Copy from Category",
"background-color-help":"Color used for splash screen background when website is installed as a PWA"
"background-color-help":"Color used for splash screen background when website is installed as a PWA",
"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.",
"flags.limit-per-target-help":"When a post or user is flagged multiple times, each additional flag is considered a "report" and added to the original flag. Set this option to a number other than zero to limit the number of reports an item can receive.",
"flags.auto-resolve-on-ban":"Automatically resolve all of a user's tickets when they are banned"
"allowed-file-extensions-help":"أدخل قائمة بامتدادات الملفات مفصولة بفواصل (مثال: <code>pdf,xls,doc</code>). القائمة الفارغة تعني أن كل الامتدادات مسموح بها.",
"upload-limit-threshold":"Rate limit user uploads to:",
"details.member-post-cids":"Categories to display posts from",
"details.member-post-cids-help":"<strong>Note</strong>: Selecting no categories will assume all categories are included. Use <code>ctrl</code> and <code>shift</code> to select multiple options.",
"details.member-post-cids":"Category IDs to display posts from",
"description":"There are no posts in the post queue. <br> To enable this feature, go to <a href=\"%1\">Settings → Post → Post Queue</a> and enable <strong>Post Queue</strong>.",
@@ -7,5 +8,11 @@
"content":"Content",
"posted":"Posted",
"reply-to":"Reply to \"%1\"",
"content-editable":"You can click on individual content to edit before posting."
"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>",
"fallback-emailer-not-found":"Нее намерен резервен изпращач на е-поща",
"running-in-development":"<span>Форумът работи в режим за разработчици, така че може да бъде уязвим. Моля, свържете се със системния си администратор.</span>",
"latest-lookup-failed":"<p>Не може да бъде извършена проверка за последната налична версия на NodeBB</p>",
"details.no-users":"В избрания период не сасе регистрирали нови потребители",
"details.no-topics":"В избрания период не са публикувани нови теми",
"details.no-logins":"В избрания период не са отчетени вписвания",
"details.logins-static":"NodeBB запазва данни за сесията в продължение на %1 дни, така че в следната таблица могат да се видят само последните активни сесии",
"set-order-help":"Задаването на позиция за категорията ще я премести на желаното място и ще промени местата на другите категории, ако е необходимо. Най-малкият възможен номер е 1, което ще постави категорията най-отгоре.",
"select-category":"Изберете категория",
"set-parent-category":"Задайте базова категория",
@@ -46,6 +50,8 @@
"privileges.no-users":"В тази категория няма правомощия за отделни потребители.",
"privileges.section-group":"Група",
"privileges.group-private":"Тази група е частна",
"privileges.inheritance-exception":"Тази група не наследява правомощията от групата на регистрираните потребители",
"privileges.banned-user-inheritance":"Блокираните потребители наследяват правомощията от групата на блокираните потребители",
"privileges.search-group":"Добавяне на група",
"privileges.copy-to-children":"Копиране в наследниците",
"privileges.copy-from-category":"Копиране от категория",
"background-color-help":"Цвят, който да се използва като фон за началния екран, когато уеб сайтът е инсталиран като приложение"
"background-color-help":"Цвят, който да се използва като фон за началния екран, когато уеб сайтът е инсталиран като приложение",
"undo-timeout":"Време за отмяна",
"undo-timeout-help":"Някои действия, като например преместването на теми, могат да бъдат отменени от модератора в рамките на определено време. Задайте 0, за да забраните изцяло отменянето.",
"flags.limit-per-target-help":"Когато публикация или потребител бъде докладван няколко пъти, това се добавя към един общ доклад. Задайте на тази настройка стойност по-голяма от нула, за да ограничите броя на докладванията, които могат да бъдат натрупани към една публикация или потребител.",
"flags.auto-resolve-on-ban":"Автоматично премахване на всички доклади за потребител, когато той бъде блокиран"
"allowed-file-extensions-help":"Въведете файловите разширения, разделени със запетаи (пример: <code>pdf,xls,doc</code>). Ако списъкът е празен, всички файлови разширения ще бъдат разрешени.",
"upload-limit-threshold":"Ограничаване на качванията на потребителите до:",
"invalid-home-page-route":"Грешен път към началната страница",
"invalid-session":"Несъответствие в сесията",
"invalid-session-text":"Изглежда сесията Ви на вписване вече е изтекла или не съответства на сървъра. Моля, опреснете страницата.",
"invalid-session":"Изтекла сесия",
"invalid-session-text":"Изглежда сесията Ви на вписване вече е изтекла. Моля, опреснете страницата.",
"session-mismatch":"Несъответствие в сесията",
"session-mismatch-text":"Изглежда сесията Ви на вписване вече не съответства на сървъра. Моля, опреснете страницата.",
"no-topics-selected":"Няма избрани теми!",
"cant-move-to-same-topic":"Публикацията не може да бъде преместена в същата тема!",
"cant-move-topic-to-same-category":"Темата не може да бъде преместена в същата категория!",
@@ -176,5 +189,8 @@
"already-unblocked":"Този потребител вече е отблокиран",
"no-connection":"Изглежда има проблем с връзката Ви с Интернет",
"socket-reconnect-failed":"В момента сървърът е недостъпен. Натиснете тук, за да опитате отново, или опитайте пак по-късно.",
"plugin-not-whitelisted":"Добавката не може да бъде инсталирана – само добавки, одобрени от пакетния мениджър на NodeBB могат да бъдат инсталирани чрез ACP"
"plugin-not-whitelisted":"Добавката не може да бъде инсталирана – само добавки, одобрени от пакетния мениджър на NodeBB могат да бъдат инсталирани чрез ACP",
"topic-event-unrecognized":"Събитието „%1“ на темата е неизвестно",
"cant-set-child-as-parent":"Дъщерна категория не може да се зададе като базова такава",
"cant-set-self-as-parent":"Категорията не може да се зададе като базова категория на себе си"
"details.member-post-cids":"Категории, от които да се показват публикации",
"details.member-post-cids-help":"<strong>Забележка</strong>: Ако не изберете нито една категория, ще се смята, че са включени всички категории. Използвайте <code>CTRL</code> и <code>SHIFT</code>, за да изберете няколко възможности.",
"details.member-post-cids":"Идентификатори на категории, от които да се показват публикации",
"details.badge_preview":"Преглед на емблемата",
"details.change_icon":"Промяна на иконката",
"details.change_label_colour":"Промяна на цвета на етикета",
"description":"Няма публикации в опашката. <br> За да включите тази функционалност, идете в <a href=\"%1\">Настройки → Публикуване → Опашка за публикации</a> и включете <strong>Опашката за публикации</strong>.",
@@ -7,5 +8,11 @@
"content":"Съдържание",
"posted":"Публикувано",
"reply-to":"Отговор на „%1“",
"content-editable":"Можете да щракнете върху всеки от текстовете, за да ги редактирате преди публикуване."
"content-editable":"Щракнете върху съдържание, за да го редактирате",
"category-editable":"Щракнете върху категория, за да я редактирате",
"title-editable":"Щракнете върху заглавие, за да го редактирате",
"interstitial.errors-found":"Не можем да завършим Вашата регистрация:",
"gdpr_agree_data":"Съгласявам се това личната ми информация да се съхранява и обработва от този уеб сайт.",
"gdpr_agree_email":"Съгласявам се да получавам е-писма с резюмета и известия от този уеб сайт.",
"gdpr_consent_denied":"Трябва да се съгласите с това уеб сайтът да събира/обработва информацията Ви, и да Ви изпраща е-писма."
"gdpr_consent_denied":"Трябва да се съгласите с това уеб сайтът да събира/обработва информацията Ви, и да Ви изпраща е-писма.",
"invite.error-admin-only":"Директното регистриране е изключено. Моля, свържете сес администратор за повече подробности.",
"invite.error-invite-only":"Директното регистриране е изключено. Трябва да получите покана от вече регистриран потребител, за да имате достъп до този форум.",
"invite.error-invalid-data":"Получените данни за регистрация не съответстват на нашите записи. Моля, свържете сес администратор за повече подробности."
"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>",
"fallback-emailer-not-found":"Fallback emailer not found!",
"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>",
@@ -75,5 +77,12 @@
"graphs.registered-users":"Registered Users",
"graphs.anonymous-users":"Anonymous Users",
"last-restarted-by":"Last restarted by",
"no-users-browsing":"No users browsing"
"no-users-browsing":"No users browsing",
"back-to-dashboard":"Back to Dashboard",
"details.no-users":"No users have joined within the selected timeframe",
"details.no-topics":"No topics have been posted within the selected timeframe",
"details.no-logins":"No logins have been recorded within the selected timeframe",
"details.logins-static":"NodeBB only saves session data for %1 days, and so this table below will only show the most recently active sessions",
"set-order-help":"Setting the order of the category will move this category to that order and update the order of other categories as necessary. Minimum order is 1 which puts the category at the top.",
"select-category":"Select Category",
"set-parent-category":"Set Parent Category",
@@ -46,6 +50,8 @@
"privileges.no-users":"No user-specific privileges in this category.",
"privileges.section-group":"Group",
"privileges.group-private":"This group is private",
"privileges.inheritance-exception":"This group does not inherit privileges from registered-users group",
"privileges.banned-user-inheritance":"Banned users inherit privileges from banned-users group",
"privileges.search-group":"Add Group",
"privileges.copy-to-children":"Copy to Children",
"privileges.copy-from-category":"Copy from Category",
"background-color-help":"Color used for splash screen background when website is installed as a PWA"
"background-color-help":"Color used for splash screen background when website is installed as a PWA",
"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.",
"flags.limit-per-target-help":"When a post or user is flagged multiple times, each additional flag is considered a "report" and added to the original flag. Set this option to a number other than zero to limit the number of reports an item can receive.",
"flags.auto-resolve-on-ban":"Automatically resolve all of a user's tickets when they are banned"
"allowed-file-extensions-help":"Enter comma-separated list of file extensions here (e.g. <code>pdf,xls,doc</code>). An empty list means all extensions are allowed.",
"upload-limit-threshold":"Rate limit user uploads to:",
"details.member-post-cids":"Categories to display posts from",
"details.member-post-cids-help":"<strong>Note</strong>: Selecting no categories will assume all categories are included. Use <code>ctrl</code> and <code>shift</code> to select multiple options.",
"details.member-post-cids":"Category IDs to display posts from",
"description":"There are no posts in the post queue. <br> To enable this feature, go to <a href=\"%1\">Settings → Post → Post Queue</a> and enable <strong>Post Queue</strong>.",
@@ -7,5 +8,11 @@
"content":"Content",
"posted":"Posted",
"reply-to":"Reply to \"%1\"",
"content-editable":"You can click on individual content to edit before posting."
"upgrade-available":"<p>Nová verze (v%1) byla zveřejněna. Zvažte <a href=\"https://docs.nodebb.org/configuring/upgrade/\" target=\"_blank\">aktualizaci vašeho NodeBB</a>.</p>",
"prerelease-upgrade-available":"<p>Toto je zastaralá testovací verze NodeBB. Nová verze (v%1) byla zveřejněna. Zvažte <a href=\"https://docs.nodebb.org/configuring/upgrade/\" target=\"_blank\">aktualizaci vaší verze NodeBB</a>.</p>",
"prerelease-warning":"<p>Toto je <strong>zkušební</strong> verze NodeBB. Mohou se vyskytnout různé chyby.<i class=\"fa fa-exclamation-triangle\"></i></p>",
"fallback-emailer-not-found":"Fallback emailer not found!",
"running-in-development":"<span>Fórum běží ve vývojářském režimu a může být potencionálně zranitelné . Kontaktujte správce systému.</span>",
"latest-lookup-failed":"<p>Náhled na poslední dostupnou verzi NodeBB</p>",
"subcategories-per-page":"Subcategories per page",
"is-section":"Zacházet s kategorii jako se sekcí",
"post-queue":"Post queue",
"tag-whitelist":"Seznam povolených značek",
@@ -18,6 +19,7 @@
"category-image":"Obrázek kategorie",
"parent-category":"Nadřazená kategorie",
"optional-parent-category":"Nadřazená kategorie (doporučeno)",
"top-level":"Top Level",
"parent-category-none":"(nic)",
"copy-parent":"Kopírovat nadřazenou",
"copy-settings":"Kopírovat nastavení z",
@@ -30,6 +32,8 @@
"edit":"Upravit",
"analytics":"Analytika",
"view-category":"Zobrazit kategorii",
"set-order":"Set order",
"set-order-help":"Setting the order of the category will move this category to that order and update the order of other categories as necessary. Minimum order is 1 which puts the category at the top.",
"background-color-help":"Color used for splash screen background when website is installed as a PWA"
"background-color-help":"Color used for splash screen background when website is installed as a PWA",
"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.",
"flags.limit-per-target-help":"When a post or user is flagged multiple times, each additional flag is considered a "report" and added to the original flag. Set this option to a number other than zero to limit the number of reports an item can receive.",
"flags.auto-resolve-on-ban":"Automatically resolve all of a user's tickets when they are banned"
"system-tags-help":"Only privileged users will be able to use these tags.",
"min-per-topic":"Minimální počet značek/téma",
"max-per-topic":"maximální počet značek/téma",
"min-length":"Minimální délka značky",
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.