1278 Commits (69864b87465f1c9104ff8c5a639827f5dac50b4b)

Author SHA1 Message Date
Barış Soner Uşaklı 3cd0c9a476 fix: #8998, allow guests to use write api to post/reply 5 years ago
Julian Lam ac734b8335 fix: #8912 5 years ago
Julian Lam 6e2da9966e refactor: move plugin hook methods to plugin.hooks.* 5 years ago
Julian Lam 3b1c03ed50 feat: allow ACP API access to bearer tokens
closes nodebb/nodebb-plugin-write-api#132
5 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
5 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
5 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
5 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>
5 years ago
Julian Lam bcccb331db docs: openapi schema for user/group exist check, session deletion 5 years ago
Julian Lam f300c933a5 refactor: move session revocation route to write api 5 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
5 years ago
Julian Lam d263192271 feat: group exists API call in write api 5 years ago
Julian Lam f2bb42c076 fix: user exist route needs no authentication 5 years ago
Julian Lam 60e1e99b4f feat: new shorthand route /api/v3/users/bySlug/:userslug
closes #8844
5 years ago
Julian Lam 57ed6be78b fix: #8805 define our own name for write API v3 5 years ago
Julian Lam 266d7587b2 refactor: remove usage of middlewares
Specifically, middleware.isAdmin|exposePrivilegeSet|exposePrivileges
5 years ago
Julian Lam aa8faf58a0 refactor: remove /users/{uid}/settings/{setting} route
@baris Also, I am now allowing the following properties to be saved in User.saveSettings:
- categoryTopicSort
- topicPostSort
- setCategorySort
- setTopicSort
5 years ago
Julian Lam b156b8b573 feat: wip, write api tests framework
re-using read api tests if possible
5 years ago
Barış Soner Uşaklı a05905f196
performance improvements (#8795)
* perf: nconf/winston/render

cache nconf.get calls
modify middleware.pageView to call next earlier
don't call winston.verbose on every hook see https://github.com/winstonjs/winston/issues/1669
translate header/footer separately and cache results for guests

* fix: copy paste fail

* refactor: style and fire hook only log in dev mode

* fix: cache key, header changes based on template

* perf: change replace

* fix: add missing await

* perf: category

* perf: lodash clone

* perf: remove escapeRegexChars
5 years ago
Julian Lam c26f2b6599 feat(writeapi): user settings API 5 years ago
Barış Soner Uşaklı 9d81660e24 Revert "Revert "fix: appropriate 404 handling for write API calls""
This reverts commit 135c2d6c7d.
5 years ago
Barış Soner Uşaklı 135c2d6c7d Revert "fix: appropriate 404 handling for write API calls"
This reverts commit b6cce75d97.
5 years ago
Julian Lam 68d6818bca refactor: topic tools' actions to use api lib 5 years ago
Julian Lam b6cce75d97 fix: appropriate 404 handling for write API calls 5 years ago
Barış Soner Uşaklı bf480ee58b refactor: setupApiRoute signature 5 years ago
Barış Soner Uşaklı 688d7a2cc2 refactor: remove unused middleware 5 years ago
Barış Soner Uşaklı 5e2caf19f5 refactor: use single function for api code 5 years ago
Julian Lam 9dd3cc0483 feat: allow plugins to define api routes
via new plugin hook static:api.routes
5 years ago
Julian Lam a4ba23899e feat: require https if nodebb is configured with https url 5 years ago
Barış Soner Uşaklı 872bacf1c4
Admin/users (#8762)
* feat: wip admin/users

* feat: more work

* feat: more fixes

* feat: #8662, verified/unverified user groups

* feat: add filter

* feat: change user search to use filters array

* refactor: remove unused search call

* fix: tests

* fix: cant join system groups

* fix: upgrade script
5 years ago
psychobunny 9a5b8a798a fix: category RSS feed was displaying deleted topics 5 years ago
Julian Lam 8ecef7b891 refactor: middleware.assert.* 5 years ago
Julian Lam cfee431c53 feat(writeapi): commented-out stub code for file upload 5 years ago
Julian Lam f870721fca feat(writeapi): file deletion route 5 years ago
Julian Lam a55b381791 feat(writeapi): admin settings update route 5 years ago
Julian Lam 2ec838fc59 feat(writeapi): token generation/delete routes, ACP updates 5 years ago
Julian Lam 3ea1aa4780 refactor(writeapi): update route prefix to api/v3, default error option 5 years ago
Julian Lam f67824719c chore(writeapi): cleanup 5 years ago
Julian Lam 0973feea16 feat(writeapi): post bookmarking 5 years ago
Julian Lam 9942c248eb feat(writeapi): post voting 5 years ago
Julian Lam 414169fdfa feat(writeapi): post delete/restore/purge 5 years ago
Julian Lam f66c2fb60f feat(writeapi): post editing 5 years ago
Julian Lam 1605e5e443 feat(writeapi): topic tags 5 years ago
Julian Lam 9be5629458 feat(writeapi): topic follow/ignore 5 years ago
Julian Lam da25ce4d09 feat: topic delete/restore/purge/(un)pin/(un)lock 5 years ago
Julian Lam 675a62dadd fix: remove debug log 5 years ago
Julian Lam 49652e6f1b feat: management of API tokens via ACP 5 years ago
Julian Lam 8e7baac6ef fix(writeapi): calls to profile editing routes 200 even if user DNE 5 years ago
Julian Lam 6096f74ab2 feat(writeapi): adding missing files 5 years ago
Julian Lam 4c833d0bf0 feat(writeapi): topic posting and replying 5 years ago