Commit Graph

110 Commits

Author SHA1 Message Date
gasoved
3df79683f5 feat: create folders in ACP uploads #9638 (#9750)
* feat: create folders in ACP uploads #9638

* fix: openapi

* test: missing tests

* fix: eslint

* fix: tests
2021-08-31 09:27:00 -04:00
Barış Soner Uşaklı
9de64bf516 fix: #9698, pass along query params in redirect 2021-08-12 11:26:15 -04:00
Barış Soner Uşaklı
358ad74054 feat: closes #9684, allow event deletion
fix: topic events appearing before necro messages
feat: add move topic event
feat: add ability to delete specific topic events via events.purge
2021-08-10 19:39:51 -04:00
Julian Lam
cc6cbfcdc4 Flags API (#9666)
* feat: new routes for flags API

+ flag get
+ flag creation, migration from socket method
+ flag update, migration from socket method
* fixed bug where you could not unassign someone from a flag

* feat: tests for new flags API

added missing files for schema update

* fix: flag tests to use Write API instead of sockets

* feat: flag notes API + tests

* chore: remove debug line

* test: fix breaking test on mongo
2021-07-16 13:44:42 -04:00
Barış Soner Uşaklı
4a56388ec3 feat: store topic tags in topic hash (#9656)
* feat: store topic tags in topic hash

breaking: remove color info from tags (use css)

* fix: remove unused tag modal

* fix: tag search
2021-07-12 19:25:04 -04:00
gasoved
97c8569a79 fix: hide private user data in api/v3/users/[uid] 2021-06-30 17:02:38 -04:00
Julian Lam
d2960aeb09 feat: added GET user route for api v3 2021-05-26 12:35:37 -04:00
Julian Lam
c1b3079d93 feat: category privilege API routes
closes #9342
2021-03-04 12:46:31 -05:00
Julian Lam
f561799f74 refactor: abstract out some client side dashboard code into modules, analytics subpages for users, topics, and logins 2021-02-24 12:51:20 -05:00
Julian Lam
7223074f1d feat: ability to re-order topic thumbnails 2021-02-16 11:54:09 -05:00
Julian Lam
3e6640efb2 refactor: thumbs.associate accepts both relative path and url in path arg 2021-02-12 17:11:32 -05:00
Peter Jaszkowiak
cc9d6fd08b chore: eslint max-len 2021-02-08 18:06:44 -05:00
Peter Jaszkowiak
23f212a4c0 chore: eslint prefer-destructuring 2021-02-08 18:06:44 -05:00
Peter Jaszkowiak
b56d9e12b5 chore: eslint prefer-arrow-callback 2021-02-08 18:06:44 -05:00
Peter Jaszkowiak
707b55b6a5 chore: eslint prefer-template 2021-02-08 18:06:44 -05:00
gasoved
7c9674de6c fix: include admins 2021-02-03 09:49:28 -05:00
gasoved
a2a7557cc0 refactor: update dom after diff deletion better 2021-02-03 09:49:28 -05:00
gasoved
eb642f40b9 feat: #9109, ability to delete a post's diffs 2021-02-03 09:49:28 -05:00
Julian Lam
05c53394f3 fix: tests 2021-01-29 17:05:45 -05:00
Julian Lam
dc84559d0b feat(topic-events): topic events GET route in write API 2021-01-27 13:16:49 -05:00
Julian Lam
966c4117ec refactor(api): post move to write API 2021-01-18 15:31:14 -05:00
Julian Lam
e118e59ce0 refactor(api): post diffs to use write API 2021-01-18 14:26:22 -05:00
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
2021-01-17 15:43:29 -05:00
Julian Lam
77ab46686d fix: access checks for tags and thumbs get route 2021-01-12 17:38:35 -05:00
Julian Lam
97d678fd2a fix: return a user object, not an array of user objects (in v3 login check route) 2021-01-07 15:11:45 -05:00
Julian Lam
8c86f5bcec fix: bad execution flow in utilities.login 2021-01-07 15:11:45 -05:00
Julian Lam
8bbb320867 feat: handle HTTP 429 as a response code 2021-01-07 15:11:45 -05:00
Julian Lam
56f929ed4f feat: add write API route for checking login credentials 2021-01-07 15:11:45 -05:00
Julian Lam
edb8da1ef9 feat(api): closes #9123 category and topic routes migrated to Write API 2020-12-29 10:32:01 -05:00
Julian Lam
e267f29584 feat(api): #9123, migrate /api/post/pid/:pid to Write API 2020-12-29 10:32:01 -05:00
Julian Lam
32e36f7b2e feat(api): group ownership API route, switch client-side to use API route 2020-12-22 14:26:31 -05:00
Julian Lam
1cd2689cf6 refactor(api): deprecated groups update socket in favour of API lib 2020-12-22 13:22:01 -05:00
Julian Lam
bd5c4a5cff fix: tests 2020-12-09 16:46:19 -05:00
Julian Lam
3e54b70c06 fix: #9092, Topic thumbnails do not work with third-party uploaders 2020-12-09 15:47:58 -05:00
Julian Lam
c043cfebd6 fix: added back missing topic thumb tests that were removed in last commit 2020-12-09 10:42:41 -05:00
Julian Lam
340387c18a fix: #9055, non-standard API response from addThumbs route
Also removed old thumb upload router handler, and updated uploadPost handling in composer to match new response schema
2020-12-09 10:42:41 -05:00
Julian Lam
4152aa552e feat: tests for topic thumbs
Also added some error checking to addThumbs controller
2020-12-09 10:42:41 -05:00
Julian Lam
ef7d6db912 feat: server-side work for #9047
- rename Thumbs.commit to Thumbs.migrate
- new PUT method that calls Thumbs.migrate
- `checkThumbPrivileges` now takes a single object parameter (ins. of req/res)
2020-12-09 10:42:41 -05:00
Julian Lam
b5d910f53b feat: core work for #9042, thumb deletion now accepts uuids
+ common data validation for thumb addition and deletion
2020-12-09 10:42:41 -05:00
Julian Lam
90497e3ef5 feat: more work on topic thumbs refactor
- addThumb and deleteThumb are now protected routes (duh)
- new getThumbs route GET /api/v3/topics/<tid>/thumbs
- Updated `assert.path` middleware to better handle if relative paths are received with upload_url
- Slight refactor of thumbs lib to use validator to differentiate between tid and UUID
2020-12-09 10:42:41 -05:00
Julian Lam
708b1c338f fix: #9040 2020-12-09 10:42:41 -05:00
Julian Lam
7e9e08f718 feat: server-side routes for handling multiple topic thumbnails
closes #8994, requires 'topic-thumb-refactor' branch of composer-default
2020-12-09 10:42:41 -05:00
Barış Soner Uşaklı
954dc5b7be feat: #8983, update pin tooltip in topic 2020-12-01 16:25:13 -05:00
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
2020-11-20 11:31:14 -05:00
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
2020-11-17 17:29:50 -05:00
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>
2020-11-16 14:47:23 -05:00
Barış Soner Uşaklı
f14e42d8bc fix: #8883 2020-11-14 19:56:01 -05:00
Julian Lam
f300c933a5 refactor: move session revocation route to write api 2020-11-10 14:27:38 -05:00
Julian Lam
d263192271 feat: group exists API call in write api 2020-11-06 12:18:42 -05:00
Julian Lam
6b196a207f fix: permanent redirect on user api redirect shorthand 2020-11-06 11:54:46 -05:00