11332 Commits (2345b70bda2faeb6eb0d1cd1281c28392f3cc489)

Author SHA1 Message Date
Barış Soner Uşaklı 47a19d6763 fix: error message 4 years ago
Barış Soner Uşaklı 5bb5ec4618
fix: #8954, clear purged replies and toPids (#8959)
* fix: #8954, clear purged replies and toPids

* fix: redis test
4 years ago
Julian Lam 21d6225ce0 fix: 'already-deleting' error on subsequent account content deletions 4 years ago
Barış Soner Uşaklı 93863bb3c6 fix: #8949, faster upgrade script 4 years ago
Barış Soner Uşaklı 6771ca150a fix: add topic uid to infinitescroll 4 years ago
Barış Soner Uşaklı c037779fa1 feat: add topicOwnerPost #8778 4 years ago
Julian Lam ac734b8335 fix: #8912 4 years ago
Barış Soner Uşaklı 4f37eddc5e feat: clear reset tokens on user delete 4 years ago
Barış Soner Uşaklı e32cd31ec6 fix: #8918 4 years ago
Barış Soner Uşaklı 3af4d13fa5 fix: basepath for r.js modules 4 years ago
gasoved 00e75de736
feat: select/clear all checkboxes in privilege table (#8941) 4 years ago
psychobunny 1c0e8c1663 fix: move meta.getServerTime call to admin namespace 4 years ago
Julian Lam 90434a4668 Revert "fix(spec): always show thumb in topic response"
This reverts commit 493c568a75.
4 years ago
Julian Lam 493c568a75 fix(spec): always show thumb in topic response 4 years ago
Barış Soner Uşaklı 0ca40af834 fix: #8939, fix username change notification getting filtered out 4 years ago
Julian Lam 906d7d734b refactor: move API banned response handler to separate internal method 4 years ago
Julian Lam afb26bfe48 feat: show ban reason and expiry in write api responses, if user is banned 4 years ago
Julian Lam eab4ca7104 fix: bug with Topics.resizeAndUploadThumb not checking for extension validity 4 years ago
Barış Soner Uşaklı 2b73a14e42 fix: #8933 4 years ago
Julian Lam 6e5ec3f895 feat: automatically unban users in onSuccessfulLogin
This allows write API (and probably SSO login) to go through unimpeded if a user's ban has expired. Closes nodebb/nodebb-plugin-write-api#126
4 years ago
Barış Soner Uşaklı 77f0bff54f fix: #8929, fix popular, top rss feed urls 4 years ago
Barış Soner Uşaklı 8f4060819f Merge branch 'master' of https://github.com/NodeBB/NodeBB 4 years ago
Julian Lam 5dd3b03125 fix: a derp 4 years ago
Barış Soner Uşaklı b18e7e319b fix: spec 4 years ago
Julian Lam 4ca62dc45b fix: improper handling of scheme-relative URLs in topic thumb logic 4 years ago
Barış Soner Uşaklı 3f337b5d7c feat: #8925, #8924 4 years ago
Barış Soner Uşaklı 5fa098326f fix: https://github.com/NodeBB/NodeBB/pull/8685
fix category link redirect on cold load
fix helpers.redirect if passed in url is external
fix ajaxify so it doesn't slice first character of external url
4 years ago
Julian Lam f33a9185ff fix: on OP edit, call helper method to upload and resize thumb 4 years ago
Barış Soner Uşaklı 9ee1fb490e fix: https://github.com/NodeBB/NodeBB/pull/8759 4 years ago
Barış Soner Uşaklı 672d4da078 feat: human readable uptime 4 years ago
Julian Lam 6e2da9966e refactor: move plugin hook methods to plugin.hooks.* 4 years ago
Julian Lam 3b1c03ed50 feat: allow ACP API access to bearer tokens
closes nodebb/nodebb-plugin-write-api#132
4 years ago
Julian Lam 98a05e4dde chore: add missing plugin hook deprecation warning 4 years ago
Barış Soner Uşaklı ef3df47a6d refactor: remove breaking change in pin expiry 4 years ago
Julian Lam 046d0b1637
feat: allow pins to expire (if set) (#8908)
* fix: add back topic assert middleware for pin route

* feat: server-side handling of pin expiries

* refactor: togglePin to not require uid parameter [breaking]

* feat: automatic unpinning if pin has expiration set

* feat: client-side modal for setting pin expiration

* refactor: categories.getPinnedTids to accept multiple cids

... in preparation for pin expiry logic, direct access to *:pinned zsets is discouraged

* fix: remove references to since-removed jobs file for topics

* feat: expire pins when getPinnedTids is called

* refactor: make the togglePin change non-breaking

The 'action:topic.pin' hook now sends uid again, as before. However, if it is a system action (that is, a pin that expired), 'system' will be sent in instead of a valid uid
4 years ago
Barış Soner Uşaklı 1be08b2e8b fix: guest displayname 4 years ago
Barış Soner Uşaklı dbd814c25f fix: spec, only call modifyUser on unique user objects 4 years ago
Barış Soner Uşaklı 903e9d82b8 feat: #8637 4 years ago
Barış Soner Uşaklı ae5d4405c0 fix: setting 4 years ago
Barış Soner Uşaklı 9ca44e6f54
feat: add displayname into user obj #8637 (#8909)
* feat: add displayname into user obj #8637

* fix: spec

* perf: dont load settings if acp setting is turned off
4 years ago
Barış Soner Uşaklı 8d060065a0 fix: spec 4 years ago
Barış Soner Uşaklı e9585b9be2 fix: group userTitles translation escapes 4 years ago
Barış Soner Uşaklı 965671a97b fix: remove params from error log 4 years ago
Barış Soner Uşaklı fa4177c3bc fix: #6407, fix feeds
display latest posts instead of oldest in topic rss feed
fix missing await that was causing rss_tokens to not function
fix feed test
more tests for getTopicWithPosts
4 years ago
Barış Soner Uşaklı 4e9b10ab76 feat: #5274 4 years ago
Barış Soner Uşaklı fb567a7a33 feat: #4456 4 years ago
Barış Soner Uşaklı a6afcfd531 feat: #8475, allow flagging self posts
dont count flags towards self posts
dont allow flagging your own account
4 years ago
Barış Soner Uşaklı a87ccccc9c fix: benchpress warnings 4 years ago
Barış Soner Uşaklı dfdc0c420c fix: benchpress warnings 4 years ago
Julian Lam a0b7a82350
feat(api): account deletion routes for the Write API (#8881)
* feat(api): account deletion routes for the Write API

* refactor: rewrite client-side calls to account deletion to use api

* style: apply DRY
4 years ago
Barış Soner Uşaklı 120999bf63 feat: #7550, show message if post is queued when js is disabled 4 years ago
Barış Soner Uşaklı 35f932cd64 feat: #8171, add oldCategory if topic is moved 4 years ago
Barış Soner Uşaklı b44ddecdf8 feat: #8204, separate notification type for group chats 4 years ago
Barış Soner Uşaklı 1d6bcbebde feat: https://github.com/NodeBB/NodeBB/issues/8147 4 years ago
Julian Lam e1d7c4d8aa fix: internal helper method hasGlobalPrivilege, DRY 4 years ago
gasoved 3ccebf112e
feat: invites regardless of registration type, invite privilege, groups to join on acceptance (#8786)
* feat: allow invites in normal registration mode + invite privilege

* feat: select groups to join from an invite

* test: check if groups from invitations have been joined

* fix: remove unused variable

* feat: write API versions of socket calls

* docs: openapi specs for the new routes

* test: iron out mongo redis difference

* refactor: move inviteGroups endpoint into write API

* refactor: use GET /api/v3/users/:uid/invites/groups

Instead of GET /api/v3/users/:uid/inviteGroups

* fix: no need for /api/v3 prefix when using api module

* fix: tests

* refactor: change POST /api/v3/users/invite

To POST /api/v3/users/:uid/invites

* refactor: make helpers.invite awaitable

* fix: restrict invite API to self-use only

* fix: move invite groups controller to write api, +tests

* fix: tests

Co-authored-by: Julian Lam <julian@nodebb.org>
4 years ago
Peter Jaszkowiak d30ea25629
feat(deps): benchpressjs@2.2.1 (#8887)
Better warnings, faster template compiles
4 years ago
Tudor-Dan Ravoiu 452d7f2b17
Create verified/unverified user groups (#8889)
Co-authored-by: Tudor-Dan Ravoiu <tudor-dan.ravoiu@ubisoft.com>
4 years ago
Barış Soner Uşaklı e4d2764d4c fix: #8884, remove header/footer cache 4 years ago
Barış Soner Uşaklı 5598130a92 refactor: async/await controllers/index.js 4 years ago
Barış Soner Uşaklı f14e42d8bc fix: #8883 4 years ago
Barış Soner Uşaklı 8fbe832460 refactor: less dupe code 4 years ago
Julian Lam 8518404e22
feat: allow groups to specify which cids to show member posts from (#8875)
* feat: allow groups to specify which cids to show member posts from

* docs: fix tests for openapi

* fix: test breakage caused by improper conditional

* feat: server-side checking of memberPostCids for validity

* feat: admin panel template update to select categories to include

* refactor: privilege helpers.isUserAllowedTo

... to helpers.isAllowedTo, allowing group names to be passed in
4 years ago
Barış Soner Uşaklı 51b7eca119 fix: run every hour, dont show message if average_time is 0 4 years ago
Opliko 04f4429f72
Resolve #7514 - optional timer for registration queue (#8796)
* feat: #7514 Optional timer for registration queue

* feat: show minutes in average time

* fix: don't show total number of minutes

* feat: implement requested changes

* fix: just store minutes instead of milliseconds

* feat: set default values
4 years ago
Julian Lam bcccb331db docs: openapi schema for user/group exist check, session deletion 4 years ago
Julian Lam dc9668e417 fix: pass length to messaging checkContent hook 4 years ago
Barış Soner Uşaklı 567c5f2056 fix: #8869, dont escape category title,description twice 4 years ago
Julian Lam f300c933a5 refactor: move session revocation route to write api 4 years ago
Barış Soner Uşaklı 9c5c32d4a5 feat: #8864, add action:events.log 4 years ago
Barış Soner Uşaklı 62c0454cfe feat: show db info side by side 4 years ago
Barış Soner Uşaklı a0164b1c38 fix: use header/footer cache in prod 4 years ago
Barış Soner Uşaklı 05a92885f2 fix: add missing maxAge to cache 4 years ago
Barış Soner Uşaklı 2e44639210 fix: guest header/footer cache
allow clearing individual caches
4 years ago
Barış Soner Uşaklı f1f9b225b0
feat: #8824, cache refactor (#8851)
* feat: #8824, cache refactor

ability to disable caches
ability to download contents of cache
refactor cache modules to remove duplicated code

* fix: remove duplicate hit/miss tracking

check cacheEnabled in getUncachedKeys
4 years ago
Barış Soner Uşaklı 6255874e32 feat: move mkdirp to beforeBuild so it doesnt get called twice 4 years ago
Barış Soner Uşaklı 74951f5967 fix: #8846, possible fix 4 years ago
Barış Soner Uşaklı 0b30efba31 Merge branch 'master' of https://github.com/NodeBB/NodeBB 4 years ago
Barış Soner Uşaklı 16d03975a0 fix: winston error message 4 years ago
Julian Lam d263192271 feat: group exists API call in write api 4 years ago
Julian Lam 1446cec77f feat: user exist route in write api 4 years ago
Julian Lam 6b196a207f fix: permanent redirect on user api redirect shorthand 4 years ago
Julian Lam f2bb42c076 fix: user exist route needs no authentication 4 years ago
Julian Lam 60e1e99b4f feat: new shorthand route /api/v3/users/bySlug/:userslug
closes #8844
4 years ago
Julian Lam 512f6de6de
feat: allow passwords with length > 73 characters (#8818)
* feat: allow passwords longer than 73 characters

Context: A bcrypt/blowfish limitation means that password length is capped at 72 characters. We can get around this without compromising on security
by hashing all incoming passwords with SHA512, and then sending that to bcrypt.

https://dropbox.tech/security/how-dropbox-securely-stores-your-passwords

* feat: add additional test for passwords > 73 chars

* fix: remove 'password-too-long' error message and all invocations

* test: added test to show that a super long password won't bring down NodeBB

* fix: remove debug log

* Revert "fix: remove 'password-too-long' error message and all invocations"

This reverts commit 1e312bf7ef7e119fa0f1bd3517d756ca013d5e79.

* fix: added back password length checks, but at 512 chars

As processing a large string still uses a lot of memory
4 years ago
Barış Soner Uşaklı c61dee4b62 fix: #8840, don't crash if /compose route is called with no query params 4 years ago
Barış Soner Uşaklı 9e3eb5d41a feat: #8821, allow guest topic views 4 years ago
Julian Lam f68bce86a9 fix: XSS in event:banned messaging modal 4 years ago
Barış Soner Uşaklı 76cd5b0fc1 fix: #8836, truncate fullname 4 years ago
psychobunny eec630f1ef fix(acp): max-height for plugin menu list 4 years ago
Julian Lam 891a1ea2af fix: #8827, do not require admin:users privilege to ban users 4 years ago
Barış Soner Uşaklı 4b63f9937c fix: check is banned in buildHeader
remove unused banReason
remove generateHeader function
4 years ago
Barış Soner Uşaklı a338f52780 feat: #8823, remove hardcoded write concern 4 years ago
Barış Soner Uşaklı 08ff4041aa fix: missing await 4 years ago
Julian Lam c0f699e655 fix: disallow registration attempts with password length > 4096
This is a stopgap measure for v1.15.0
4 years ago
Barış Soner Uşaklı 4818ec377e fix: missing await 4 years ago
Barış Soner Uşaklı 6e85920cb6 feat: allow mods/admins to see deleted posts on user profile 4 years ago
Julian Lam 87bff6cd65 fix: broken test 4 years ago
Julian Lam dda5d42610 fix: restore old behaviour of empty json w/ 401 code in admin middleware 4 years ago
Julian Lam 15e0731dd9 fix: deprecate middleware.isAdmin
Also, handle admin logout timer in middleware.admin.checkPrivileges
4 years ago