11784 Commits (0aad131204b1b8737a3005721b1599a744ad34a6)

Author SHA1 Message Date
Barış Soner Uşaklı 2737f6531b fix: notif pruning 4 years ago
Barış Soner Uşaklı 02f08111cf feat: keep notifs for one month, load 50 notifications instead of 30 4 years ago
Julian Lam 9bf94ad50f fix: allow interstitial callbacks to be functional (no cb required) 4 years ago
Barış Soner Uşaklı cdf5d18f54 fix: don't publish before pubClient is connected 4 years ago
Julian Lam 86b0c57d7a feat: also pass in uid to `filter:email.prepare` 4 years ago
Julian Lam 27ea3dcb2f feat: new hook `filter:email.prepare` 4 years ago
Julian Lam bf90d15881 feat: new hook static:email.send
deprecates filter:email.send
4 years ago
Barış Soner Uşaklı 0dad568cbe perf: faster category tags upgrade script 4 years ago
Barış Soner Uşaklı 95033ef756 perf: use setObjectBulk 4 years ago
Barış Soner Uşaklı a07509f770 perf: make upgrade script faster 4 years ago
Barış Soner Uşaklı 48f1e265f4 fix: remove unused async 4 years ago
Barış Soner Uşaklı 0959b1248b perf: make upgrade script faster
use bulkAdd/remove
4 years ago
Barış Soner Uşaklı 14a6c349c2 feat: show time info for upgrade scripts 4 years ago
Barış Soner Uşaklı 293b7c2650
refactor: privileges, export modules directly (#9325)
fix unused/commented out methods in admin privileges
4 years ago
Julian Lam 984c9dd915 fix: in setupPageRoute helper, buildHeader after plugin hooks have fired
To allow for a plugin to call doLogin and have it properly reflect in the header
4 years ago
Julian Lam 73dc64d9ff feat: add dashboard sub-pages to ACP menu 4 years ago
Julian Lam 0804d54759 spec: schema docs for new ACP dashboard subpage routes 4 years ago
Julian Lam 2f89b0d791 feat: recent logins sessions table in dashbaord subpage 4 years ago
Julian Lam e1ed514b10 feat: topics dashboard details subpage 4 years ago
Julian Lam c57c77030e feat: update user list in dashboard/users on graph update 4 years ago
Julian Lam f8e1a74c26 fix: wrong qs param, allow string to be passed to util.getDaysArray 4 years ago
Julian Lam cc93822436 feat: show list of recent users in dashboard/users 4 years ago
Julian Lam 6fdcae7320 feat: req.query parsing and dynamically loading data instead 4 years ago
Julian Lam f561799f74 refactor: abstract out some client side dashboard code into modules, analytics subpages for users, topics, and logins 4 years ago
Julian Lam 079a13d41a feat: new hooks for notifications get/getCount 4 years ago
Peter Jaszkowiak 0d59fe3d2b fix(#9315): api v3 post, put, del JSON
also allow `app.alertError` to be called without an argument
also fix `./nodebb build --dev` to actually build in dev mode
4 years ago
Julian Lam dbe5f7027b fix: wrong call to sortedSetAdd 4 years ago
Julian Lam 16d3c45782 feat: report login statistics from analytics data, instead of its own zset 4 years ago
Julian Lam 9a9f366d3b feat: track login sessions for admin dashboard reporting 4 years ago
Julian Lam 020f0b8322 fix: session not persisting to database in some scenarios
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
4 years ago
Julian Lam 504fd107c7 feat: track successful logins in analytics 4 years ago
Julian Lam d3a9e76ae2 test(user): added additional tests for icon background colour 4 years ago
Julian Lam 955021247e feat(user): icon background selector in change picture modal 4 years ago
Julian Lam fbccf6e22f refactor(user): all plugins to change list of icon background colours
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.
4 years ago
Barış Soner Uşaklı ed3d9dcbbf feat: pass post object to filter:post.tools 4 years ago
Barış Soner Uşaklı 0e07f3c9ba feat: allow defining a list of system tags 4 years ago
Barış Soner Uşaklı 25c8f02634 fix: #9307, use _.flatten 4 years ago
Julian Lam 2fef462782 fix: 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
4 years ago
Julian Lam 65c57c730c docs: added comment re: #9305 4 years ago
ahwayakchih 34096b73ef fix: do not overwrite `config.port` from URL, if it's already set
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.
4 years ago
Julian Lam 8686fbfa3f fix: switch back to getSortedSetRange
/cc @barisusakli
4 years ago
Barış Soner Uşaklı 9ce6f8ad93 feat: add tag filter to getSortedTopics 4 years ago
Barış Soner Uşaklı 5286f20862 refactor: remove dupe code 4 years ago
Julian Lam 7223074f1d feat: ability to re-order topic thumbnails 4 years ago
Barış Soner Uşaklı 91734a6484 fix: settings v3 4 years ago
Barış Soner Uşaklı 0738dae895 feat: #9304, add category/topic/username to post queue notification emails 4 years ago
Barış Soner Uşaklı 8f0386d9ac
feat: add failing test for list append/prepend with list (#9303)
* feat: add failing test for list append/prepend with list

* feat: mongo/psql

* feat: improve test
4 years ago
Julian Lam 1ae8dda8a8 chore: extra console.log 4 years ago
Julian Lam 7ebb6d3056 fix: thumbs.associate logic fix + tests 4 years ago
Barış Soner Uşaklı 7665adf7d1 fix: missing awaits, possible test fix 4 years ago
Barış Soner Uşaklı 9a6cf3d967 fix: #9301, dont call sitemapstream if there are no entries in categories/pages/topics.xml 4 years ago
Julian Lam 50664487b9 test: additional tests for topic thumbs 4 years ago
Barış Soner Uşaklı 807b0d4348 fix: properly incase its the same path 4 years ago
Barış Soner Uşaklı 76bcc0c99c fix: numThumbs count on associate 4 years ago
Julian Lam 1490b32d1b fix: missing cache deletion calls for post-queue cache
/cc @barisusakli
4 years ago
Julian Lam 3e6640efb2 refactor: thumbs.associate accepts both relative path and url in path arg 4 years ago
Julian Lam a4b4a5566d feat: link to post-queue from topic event 4 years ago
Julian Lam 8fd78ce512 feat: post-queue topic event 4 years ago
Julian Lam 3f35fd335d feat: add post-queue cache 4 years ago
Julian Lam 36f2021186 refactor: move post queue retrival code to posts.getQueuedPosts 4 years ago
Julian Lam b81508c4e2 fix: init topic events from webserver.js 4 years ago
Julian Lam 6074a0fbbf refactor: call topic events init from within file itself 4 years ago
Julian Lam cc275e1016 Revert "feat: newsletter opt-in/out in UCP, closes #21"
This reverts commit 3c7cd9a6c4.
4 years ago
Julian Lam 3c7cd9a6c4 feat: newsletter opt-in/out in UCP, closes #21 4 years ago
Barış Soner Uşaklı 3595473485 feat: load user posts/topics via xhr on infinitescroll 4 years ago
Barış Soner Uşaklı b753c69cfe fix: check null topics 4 years ago
Barış Soner Uşaklı 58cd797e4c fix: guard against null topics 4 years ago
Barış Soner Uşaklı c953b1b3d1 fix: #9292, messageobj.content already parsed 4 years ago
Barış Soner Uşaklı 4b2bf12fd1 feat: #9294, put new categories at top 4 years ago
Julian Lam 9d17f397c0 fix(remountable-routes): more fixes to remountable routes
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
4 years ago
Julian Lam 16c1d6e937 style(remountable-routes): abstract removable routes code to a separate local fn 4 years ago
Julian Lam 1f28713f1a refactor(remountable-routes): rename `src/routes/accounts.js` to `src/routes/user.js` to better match the route prefix 4 years ago
Julian Lam bc68e990af fix(remountable-routes): bug with user routes remounting to itself 4 years ago
Julian Lam 9021f071d4 feat(remountable-routes): allow category and account routes to be remounted 4 years ago
Julian Lam f01af62b53 feat(remountable-routes): allow /admin and /post to be remountable 4 years ago
Julian Lam 92758ec50d refactor(remountable-routes): allow certain route prefixes to be mounted elsewhere 4 years ago
Barış Soner Uşaklı 765db86d4e fix: clear category cache on copy parent 4 years ago
Barış Soner Uşaklı ed3e9ce2e2 fix: delete category cache key on category create 4 years ago
Barış Soner Uşaklı c61cc37bba fix: typo 4 years ago
Barış Soner Uşaklı cf4002bcc9 perf: cache base_url 4 years ago
Barış Soner Uşaklı 5ce2820799 perf: single call to get digest topics, dont send duplicate topics 4 years ago
Barış Soner Uşaklı 90d5c9da44 perf: single db call to add all uids 4 years ago
Barış Soner Uşaklı a5fa212fc7 fix: wait for event.log to finish before killing process 4 years ago
Barış Soner Uşaklı 0185ea1b4f perf: make digests a little bit faster
and use batch.processArray
dont load data for users who have no email or have not confirmed their emails
4 years ago
Barış Soner Uşaklı b6493f896f fix: tests, only generate csrf_token on 404 gets 4 years ago
Barış Soner Uşaklı 94f72d6093 fix: #9287, generate csrf_token on 404 4 years ago
Julian Lam 783786cf8c fix: do not blindly escape a notification's bodyLong
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.
4 years ago
Barış Soner Uşaklı 670cde78da feat: add invalid event name to error message 4 years ago
Peter Jaszkowiak cc9d6fd08b chore: eslint max-len 4 years ago
Peter Jaszkowiak 5c2f0f0557 chore: eslint no-restricted-syntax 4 years ago
Peter Jaszkowiak 115d19e289 chore: eslint prefer-rest-params, prefer-spread 4 years ago
Peter Jaszkowiak 23f212a4c0 chore: eslint prefer-destructuring 4 years ago
Peter Jaszkowiak 8d1462ffd8 chore: eslint object-curly-newline 4 years ago
Peter Jaszkowiak 62869bae3d chore: eslint function-paren-newline 4 years ago
Peter Jaszkowiak dab3b23575 chore: eslint no-var, vars-on-top 4 years ago
Peter Jaszkowiak b56d9e12b5 chore: eslint prefer-arrow-callback 4 years ago
Peter Jaszkowiak 707b55b6a5 chore: eslint prefer-template 4 years ago
Peter Jaszkowiak 4ee0f1459d chore: eslint import/newline-after-import 4 years ago
Peter Jaszkowiak dad01e3051 chore: eslint no-bitwise 4 years ago
Barış Soner Uşaklı fca17cb713 fix: move service worker back to relative_path/service-worker.js 4 years ago
Barış Soner Uşaklı a4878a5b22 fix: markread selector 4 years ago
Barış Soner Uşaklı 7eebcbdbbc perf: only load thumbs for topics that actually have thumbs 4 years ago
Barış Soner Uşaklı 47299ea587
Categories refactor (#9257)
* 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
4 years ago
Barış Soner Uşaklı e40af441c9
fix: cache key collision 4 years ago
Julian Lam a6fa351b72 feat: pass req.session into buildReqObject 4 years ago
Julian Lam 4f97639009 feat: new hook `action:login.continue` 4 years ago
Julian Lam 67e3fb6498 fix: register returnTo logic to match login route
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`.
4 years ago
Julian Lam 492cbc6227 fix: tests
/cc @pitaj
4 years ago
Peter Jaszkowiak 5e5d37c38f
fix(#9252): pass site domain to nodemailer (#9254) 4 years ago
Julian Lam f79aeef889 fix: posts.uploads.sync dissociates uploaded thumbs of the main pid 4 years ago
Julian Lam c729adeb08 fix: privileges page - tweak icon position and width, group name wrapping 4 years ago
gasoved 970bd06fd2 refactor: improvements 4 years ago
gasoved 53e0d4d2e0 feat: banned-users group 4 years ago
gasoved cabec378f4 fix: openapi test specs 4 years ago
gasoved 7c9674de6c fix: include admins 4 years ago
gasoved a2a7557cc0 refactor: update dom after diff deletion better 4 years ago
gasoved eaf9d2e44a fix: include admins, limit to category mods, correct privilege name 4 years ago
gasoved 72b050b4a8 test: post diff deletion tests 4 years ago
gasoved eb642f40b9 feat: #9109, ability to delete a post's diffs 4 years ago
Barış Soner Uşaklı fffdc4e0ca feat: #9234, add pagination to /api/recent/posts/:term? 4 years ago
Opliko 2bc74cffe6
fix: #9127, scope service worker to relative_path for the forum (#9239)
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.
4 years ago
Barış Soner Uşaklı d1364c3130
Categories refactor (#9233)
* 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
4 years ago
Julian Lam d6f60f4502 fix: broken test after sorted-lists logic change 4 years ago
Julian Lam d5d24594e8 feat: allow sorted-lists on multiple pages
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.
4 years ago
Barış Soner Uşaklı 9834f72fc7 fix: clear all locks on restart 4 years ago
Barış Soner Uşaklı f6cd2862bd feat: #9232, add profile picture into exported zip 4 years ago
Julian Lam a8be6fb8fb fix: regression where `filter:settings.set` no longer received sorted-lists 4 years ago
Barış Soner Uşaklı 5bc1f5b4e8 fix: #9231, fix redis pubsub connection
regression from fdfbc90255
4 years ago
Julian Lam 05c53394f3 fix: tests 4 years ago
Julian Lam 7419922040 fix: improper override of req.body.username in login logic 4 years ago
Julian Lam b820d23401 feat: new hook `filter:login.override`, deprecate `action:auth.overrideLogin` 4 years ago
Julian Lam 473d5f4aba fix: full settings hash not passed through to action:settings.set
The sorted lists were being filtered out
4 years ago
Julian Lam eb96046e97 Revert "refactor: use Map to track sorted lists in Settings.set()"
This reverts commit 65de2e76b4.
4 years ago
Julian Lam 65de2e76b4 refactor: use Map to track sorted lists in Settings.set() 4 years ago
Baris Usakli a5bf9779fd fix: #9223, don't overwrite stmp settings 4 years ago
Julian Lam 3052256db3 chore: deprecation notices for plugins using plugin old hook methods 4 years ago
Julian Lam 15ba0abb34 docs: update deprecation-removal version for plugin hook helper methods in 1.18.0 4 years ago
Barış Soner Uşaklı e8429f509b fix: handle delete and update for categories:name zset 4 years ago
Barış Soner Uşaklı 34c42c6fa3 feat: ability to search categories, #8813 4 years ago
Barış Soner Uşaklı a1c014462c revert: bring back backwards compat 4 years ago
Barış Soner Uşaklı 647d3ba810 fix: removed methods 4 years ago
Julian Lam fb84c78544 chore: remove deprecated `User.emailConfirm` [breaking]
Use `User.email.confirmByCode` instead.
4 years ago
Julian Lam 5a775e09dc chore: remove deprecated plugin hook `filter:privileges:isUserAllowedTo` [breaking]
Use `filter:privileges:isAllowedTo` instead.
4 years ago
Julian Lam d41de481a4 chore: remove deprecated plugin hook methods [breaking]
Call plugins.hooks.fire() instead.
4 years ago
Julian Lam cc0d562e9a chore: more removals of thumb specific backwards-compatibility [breaking] 4 years ago
Julian Lam 5f9f241e37 chore: remove deprecated `filter:admin/header.build` hook [breaking]
Use `filter:middleware.renderAdminHeader` instead.
4 years ago
Julian Lam 84dfdfe659 chore: remove deprecated v2 style responses for thumbs upload route [breaking] 4 years ago
Julian Lam 2ad0d0d0d8 chore: remove deprecated getObject routes [breaking]
`/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`)
4 years ago
Julian Lam 7b090c588b fix: incorrect return for Thumbs.get() if thumbs were disabled 4 years ago
Julian Lam dc84559d0b feat(topic-events): topic events GET route in write API 4 years ago
Julian Lam 449c379d22 feat(topic-events): server-side tests for topic events 4 years ago
Julian Lam 0d4a377558 feat(topic-events): clear out topic events when a topic is purged 4 years ago
Julian Lam 8e93bf7362 feat(topic-events): client-side handling on topic event log 4 years ago
Julian Lam df2fdd56ba fix(topic-events): repeated invocations of Posts.addTopicEvents caused dupes to be added to DOM 4 years ago
Julian Lam cec3fc934d refactor(topic-events): break out some logic in events.get into local modifyEvent method
+ events.log now returns a complete event object
4 years ago
Julian Lam 611d1f872d feat(topic-events): support for uids in topic event payloads 4 years ago
Julian Lam 425eca145b refactor(topic-events): fire topic event logging in topics/tools instead, pass uid into payload 4 years ago
Julian Lam ab2e1ecb40 feat(topic-events): work in progress topic events logic and client-side implementation 4 years ago
Julian Lam 8ff07bc196 fix: update js concatenation logic to bundle scripts.rjs into minfile regardless of build environment
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
4 years ago
Julian Lam 412d285850 fix(hooks): fallback handling for core invocations of hooks.fire
+ .on() which is the same as .register()
4 years ago
Julian Lam f975063b7d fix: #7125, allow list for page route, configurable via plugin hook 4 years ago
Julian Lam 8b72479f62 fix: remove 'filters' and 'categories' from flag details API return [breaking]
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
4 years ago
Julian Lam 1603566bcc fix: filtering logic of flags [breaking]
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).
4 years ago
Julian Lam 942d924779 fix: error on flag list if no flag filters were saved in session 4 years ago
Julian Lam 6b1c97db79 feat: feature flag for auto-resolving a user's flags on ban [breaking]
The default behaviour has now been changed to 'off'. Going forward, a user's flags will no longer automatically resolve on ban.
4 years ago
Julian Lam 35c92d0cff fix: mod cid filter accidentally saved in session 4 years ago
Julian Lam 27cae0d5d8 fix: missing return for #9217 4 years ago
Julian Lam b2b1450e5d fix: #9217, render 400 error page on bad access to /register 4 years ago
Barış Soner Uşaklı 78896fc623 fix: redis check compat tests 4 years ago
Barış Soner Uşaklı fdfbc90255 feat: async/await redis connection 4 years ago
Barış Soner Uşaklı 33bf1b0e2c feat: async/await psql connection 4 years ago
Barış Soner Uşaklı 672959c13f feat: add group name to csv event 4 years ago
Julian Lam a186ea0fe3 fix: registration completion overriding returnTo if it was already set 4 years ago
Julian Lam 280285cda9 feat: allow interstitial callbacks to be async functions [breaking]
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.
4 years ago
Barış Soner Uşaklı 5c1b742979 fix: add missing user delete event types 4 years ago
Barış Soner Uşaklı 7fb583dcfd Merge branch 'master' of https://github.com/NodeBB/NodeBB 4 years ago
Barış Soner Uşaklı c608b0e8a3 fix: https://github.com/NodeBB/nodebb-plugin-webhooks/issues/3 4 years ago
Julian Lam d85ad10d34 fix: restored sanity checks for post move socket calls 4 years ago
Julian Lam 966c4117ec refactor(api): post move to write API 4 years ago
Julian Lam e118e59ce0 refactor(api): post diffs to use write API 4 years ago
Barış Soner Uşaklı c2e2370655 feat: add filter:email.cancel to allow plugins to cancel sending emails 4 years ago
Julian Lam f5fcd232f6 fix: regression caused by 77ab46686d
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
4 years ago
Barış Soner Uşaklı 4fb907875e
fix: don't crash if fullname is not a string
https://community.nodebb.org/topic/15291/upgrade-error-fullname-substr-is-not-a-function
4 years ago
Barış Soner Uşaklı 1374e0eeba refactor: change var to const 4 years ago
Barış Soner Uşaklı 00ba89b6d6 fix: #9204, bypass groupname length check for system group in upgrade script 4 years ago
Barış Soner Uşaklı 9938a139fe fix: add missing await 4 years ago
Barış Soner Uşaklı 25ab99b91d refactor: single remove call 4 years ago
Julian Lam ab11435ed5 feat: grant plugins the ability to specify options to the SSO handler
... to be handled in the plugin itself (overriding the passport prototype's authorizationParams method)

+ new hook filter:auth.options
4 years ago
Julian Lam 9b289eca9d fix: ssoState passed to strategies even if not called for 4 years ago
Julian Lam 77ab46686d fix: access checks for tags and thumbs get route 4 years ago
Julian Lam c0fb1cb59c fix: #9194 global mods unable to pin or unpin topics 4 years ago
Barış Soner Uşaklı ef16cd2e6f fix: #9192, exit after logging error 4 years ago
gasoved 69419571a9 fix: make sure inviter user exists 4 years ago
Barış Soner Uşaklı 89e6c75d58 fix: #9185, fix string boolean values 4 years ago
Julian Lam 66da6bcd1c fix: #9184 proper relative_path usage in topic thumbs.get 4 years ago
Julian Lam b742229e59 fix: #9169, re-adding v2-style behaviour so as to not break the API... yet 4 years ago
Barış Soner Uşaklı aa95cc7d60 Merge branch 'master' of https://github.com/NodeBB/NodeBB 4 years ago
Barış Soner Uşaklı eaf62d39fd fix: #9177, handled multiple deleted users properly 4 years ago
Julian Lam 4ede18ce5f fix: broken test caused by errant .pop(), missing await 4 years ago
Julian Lam c07e1e16af feat: add unread-count badge if navigator contains /flags route 4 years ago