268 Commits (eb0c77fd69b8a7fc6a11ed69d16c37bfea9a92fe)

Author SHA1 Message Date
Julian Lam 8e5a413e4e chore: minor reordering of lines 4 years ago
Julian Lam 990f107736 fix: broken tests from last round of fixes 4 years ago
Julian Lam d6de925348 feat: add missing schema for category update and deletion
Deleted CategoryObj component, since CategoryObject is used more
4 years ago
Julian Lam eef052c1bf fix: add missing token generation route to write api spec 4 years ago
Julian Lam d85181e031 feat: add schema for api ping routes 4 years ago
Julian Lam 878ee06715 refactor: schema backreference test to use map instead of reduce, properly check write-api routes 4 years ago
Julian Lam df8d62ba06 feat: normalize paths before comparison 4 years ago
Julian Lam 2170c40007 fix: iteration logic bug 4 years ago
Julian Lam ae9439748d fix: spec 4 years ago
Julian Lam d31aae167e fix(spec): broken link to status component 4 years ago
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
4 years ago
Julian Lam 5950683316 feat: closes #9048, tests for topic thumbs routes, write API schema 4 years ago
Julian Lam 1949d20a87 fix: spec 4 years ago
Barış Soner Uşaklı 5f0f476b57 feat: #9005, use timestamp in profile/cover images
delete current one if keepAllUserImages is turned off
fix typo in data
4 years ago
psychobunny 69864b8746 fix(openapi): spec for c1a7968d23 4 years ago
psychobunny af9e676291 Revert "fix(openapi): spec for 685f3c6aa6173383d6c31b87ed51cf8ed0ca44ce"
This reverts commit 1bb75e762e.
4 years ago
psychobunny 1bb75e762e fix(openapi): spec for 685f3c6aa6 4 years ago
Barış Soner Uşaklı cfb7b113e9 fix: spec 4 years ago
Barış Soner Uşaklı cbbda45102 fix: remove dupe 4 years ago
Barış Soner Uşaklı 700ef1af97 Merge branch 'master' of https://github.com/NodeBB/NodeBB 4 years ago
Barış Soner Uşaklı 4afdf8bc27 fix: spec, remove old tests 4 years ago
Julian Lam acb576662e fix(spec): from 6e6a7a8f8a 4 years ago
Julian Lam 1b1205a9ce fix(spec): broken test due to canFlag addition 4 years ago
Barış Soner Uşaklı 88e5cda5b4 fix: spec for /tag 4 years ago
Julian Lam 22715d5413 refactor: add TopicObjectSlim common schema 4 years ago
Barış Soner Uşaklı c037779fa1 feat: add topicOwnerPost #8778 4 years ago
Julian Lam 45a4f1361f chore(spec): replace ugly hack with another hack for optional properties 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
Julian Lam ae402e213e chore: move topic route schema up two levels as slug and index are optional 4 years ago
Julian Lam b3b501d789 chore: move category route schema up two levels as slug and index are optional 4 years ago
Barış Soner Uşaklı b18e7e319b fix: spec 4 years ago
Barış Soner Uşaklı c2bb61231e fix: spec 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
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ı 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
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
Barış Soner Uşaklı 2f4653a3cc fix: spec 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
Julian Lam bcccb331db docs: openapi schema for user/group exist check, session deletion 4 years ago
Julian Lam 97842c43d3 test: new api test to ensure each path's parameters are defined in context 4 years ago
Barış Soner Uşaklı fe63c6aef3 fix: spec 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
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
4 years ago
Julian Lam cc1c722092 fix: breaking test from 0db0231cff
Also lowered export timeout to 5s
4 years ago
Julian Lam 14e5c24ec5 fix(openapi): final fixes to schemas 4 years ago
Julian Lam b2e9e3e048 fix(writeapi): more tweaks to schema files 4 years ago
Julian Lam 9f9e3c1582 fix(writeapi): fix components, + tag object schema 4 years ago
Julian Lam a4f3270fc5 fix(writeapi): missing files for tests 4 years ago
Julian Lam b092f65d95 fix(writeapi): tests 4 years ago
Julian Lam 93f65f89e7 fix(writeapi): added examples to all parameter objects in schema 4 years ago
Barış Soner Uşaklı 0db0231cff feat: move postercount to topic hash 4 years ago
Barış Soner Uşaklı 7a3183520f fix: spec 4 years ago
Julian Lam 63e07c9433 fix: tests 4 years ago
Julian Lam c26f2b6599 feat(writeapi): user settings API 4 years ago
Barış Soner Uşaklı cf474ab246 fix: spec 4 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
4 years ago
psychobunny 0e0f1506d2 fix: update server param to /api/v3 4 years ago
psychobunny c68653d035 fix: typo 4 years ago
psychobunny 7aa4d104af fix: testing openapi write tests 4 years ago
psychobunny 16873800a6 fix(openapi): users.yaml 4 years ago
psychobunny 54e6003a7c fix: test fix for write API
need to rewrite users.yaml to fix properly
4 years ago
psychobunny dbb4cfe9d6 style(openapi): break write API routes into individual files 4 years ago
psychobunny ffac3c7902 style(openapi): move schemas and responses out of write.yaml 4 years ago
Julian Lam f870721fca feat(writeapi): file deletion route 4 years ago
Julian Lam a55b381791 feat(writeapi): admin settings update route 4 years ago
Julian Lam 2928b9b87a style: updates to openapi files 4 years ago
Julian Lam 0973feea16 feat(writeapi): post bookmarking 4 years ago
Julian Lam 9942c248eb feat(writeapi): post voting 4 years ago
Julian Lam f66c2fb60f feat(writeapi): post editing 4 years ago
Julian Lam 1605e5e443 feat(writeapi): topic tags 4 years ago
Julian Lam da25ce4d09 feat: topic delete/restore/purge/(un)pin/(un)lock 4 years ago
Julian Lam 4c833d0bf0 feat(writeapi): topic posting and replying 4 years ago
Julian Lam 952dc211dd feat(writeapi): added group joining and deletion 4 years ago
Julian Lam ba345e53e8 feat(writeapi): added POST /api/v1/groups 4 years ago
Julian Lam 49994f3a15 fix(openapi): moved write-api to public/openapi 4 years ago
Barış Soner Uşaklı 7cd83b9a6a fix: spec 4 years ago
Barış Soner Uşaklı 6924eb6c52 fix: spec 4 years ago
Barış Soner Uşaklı fbd85680fb fix: spec 4 years ago
Barış Soner Uşaklı 5d9a868142
feat: category filter on post queue (#8710)
* feat: category filter on post queue

category filter module

* feat: add spec
4 years ago
psychobunny ffbf2d6d63 feat(openapi): refactor into indiv. files to match API & tpl routing 4 years ago
psychobunny c7d27731b3 Revert "feat(openapi): refactor into indiv. files to match API & tpl routing"
This reverts commit 84f5e4cf3d.
4 years ago
psychobunny 84f5e4cf3d feat(openapi): refactor into indiv. files to match API & tpl routing 4 years ago
psychobunny 6478b32d0e feat: upload maskable icon for PWA 4 years ago
Julian Lam 3fbddbe2ca fix(openapi): test for new trending plugins in ACP 4 years ago
Barış Soner Uşaklı 83d4e7efaa feat: add number of posters to topic 4 years ago
Barış Soner Uşaklı 654d583059 fix: api spec 4 years ago
Barış Soner Uşaklı af43f0e48e fix: #8656, rename /api/me to /api/self 4 years ago
Barış Soner Uşaklı e90940949c fix: openapi 4 years ago
Barış Soner Uşaklı 5f10d67db5
Remove sounds (#8617)
* feat: remove sounds

* feat: remove more sounds

* feat: disable sounds plugin

* fix: openapi
4 years ago
Julian Lam b587127560 fix: new openapi def for replies addition 4 years ago
Julian Lam e0c7d65a92 Revert "feat: add reply count to getPostSummaryByPids"
This reverts commit de0f4aadb8.
4 years ago
Julian Lam de0f4aadb8 feat: add reply count to getPostSummaryByPids 4 years ago
Barış Soner Uşaklı 4f7cfd5372 fix: openapi spec 4 years ago
Barış Soner Uşaklı c4ad14cb68 fix: api spec 4 years ago
Julian Lam 2a948d32a4 Revert "test(openapi): missing commonprops addition"
This reverts commit 0dc55bbc80.
4 years ago
Julian Lam 0dc55bbc80 test(openapi): missing commonprops addition 4 years ago
Julian Lam d935f03636 fix(openapi): tests 4 years ago
Julian Lam 8ff09630b6 fix(openapi): new api definition 5 years ago
Julian Lam d6297b28e9 fix: tests 5 years ago
Barış Soner Uşaklı dfabd0a3fe feat: remove administrator property from public routes 5 years ago
Julian Lam a716a5529c
feat: more discrete commit-on-save instead of commit-on-change w/ confirm modals (#8541)
* feat: privileges save button, #8537, WIP

* fix: disable firefox autocomplete on privilege form fields

* feat: closes #8537 privilege changes commit on save

- new language strings for confirmation and success modals/toasts
- indeterminate privilege handling (/cc @psychobunny)
- added new discard button
- both discard and save buttons now have confirmation dialogs

* fix(tests): remove duplicate template helper test

* fix(tests): broken template helper test

* feat: confirm dialogs for all privilege copy actions

Also, ability to add user to a privilege table without needing
to refresh the privilege table.

* feat: group row addition w/o table refresh

breaking: helpers.getUserPrivileges and helpers.getGroupPrivileges
no longer make socket calls to the following hooks:

- filter:privileges.list, filter:privileges.admin.list,
  filter:privileges.global.list, filter:privileges.groups.list,
  filter:privileges.admin.groups.list,
  filter:privileges.gloval.groups.list

The filters are still called, but done before the helper method
is called, and the results are passed in instead. This change
should only affect you if you directly call the helper methods,
otherwise the change is transparent.

* fix: stale ajaxify data on privilege category switch

* fix: implicit privileges not showing for user privs

* fix: groups, not group, also fix tests

* fix(tests): again

* fix: wrong tpl rendered when adding group to global priv table
5 years ago
Barış Soner Uşaklı fb7bb8d400 feat: use category selector in category page
fix privilege shortcuts in group page after search
5 years ago
Barış Soner Uşaklı 91411cc47c feat: add privileges shortcut to groups list
fix issues with escape group names
5 years ago
Barış Soner Uşaklı 8415d2f014 fix: api test 5 years ago
Barış Soner Uşaklı 69fb15276c fix: tests 5 years ago
Barış Soner Uşaklı f48d155670 fix: tests 5 years ago
Julian Lam 55b0e902fb feat: consolidation of flags to reduce flagspam, #8510
Squashed commit of the following:

commit c6d09396208a10c244d7b3d22ffd2d7dd1274d3a
Author: Julian Lam <julian@nodebb.org>
Date:   Fri Jul 24 13:41:32 2020 -0400

    fix: more tests

commit 32f9af2a87a81fa62ecca01e71d6f0d5b9d37ba1
Merge: e50907535 4eae927d1
Author: Julian Lam <julian@nodebb.org>
Date:   Fri Jul 24 10:53:04 2020 -0400

    Merge remote-tracking branch 'origin/master' into singleton-flags

commit e50907535109dbdbe8f15c3e2fcdf22d90b1332a
Author: Julian Lam <julian@nodebb.org>
Date:   Fri Jul 24 10:52:46 2020 -0400

    fix: controllers-admin test

commit fd5af99e303de48a80b0ccc166eee19175cf232b
Author: Julian Lam <julian@nodebb.org>
Date:   Fri Jul 17 17:26:55 2020 -0400

    fix(tests): dummy commit to trigger travisCI

commit c452a6ffcfaef91403de084c4ae16795cb23c60e
Author: Julian Lam <julian@nodebb.org>
Date:   Fri Jul 17 17:05:09 2020 -0400

    fix(openapi): openapi spec changes

commit 8089a74e89128141ab1e6f8ff83447114b3b846b
Author: Julian Lam <julian@nodebb.org>
Date:   Fri Jul 17 15:48:00 2020 -0400

    fix: reversing the order of reports for display purposes

commit a099892b377333561c72f1ad5b6b20ddb4ce8a96
Author: Julian Lam <julian@nodebb.org>
Date:   Fri Jul 17 15:45:44 2020 -0400

    refactor: run all flag creation calls in a single batch

commit b24999682f9d5a33a08a049749c1f0eb4f00facc
Author: Julian Lam <julian@nodebb.org>
Date:   Fri Jul 17 15:08:23 2020 -0400

    feat: handling multiple reporters per flag, #8510

commit 08c75c020021ada754bf0e39eae77d631b01dee5
Author: Julian Lam <julian@nodebb.org>
Date:   Thu Jul 16 20:53:18 2020 -0400

    feat: upgrade script for #8510
5 years ago
psychobunny 8769e28b28 fix: api docs for admin/manage/groups/x 5 years ago
Barış Soner Uşaklı 42af4b572b fix: api tests 5 years ago
Barış Soner Uşaklı a46adb3fd5 fix: more tests 5 years ago
Barış Soner Uşaklı 67ca5e3256 fix: tests 5 years ago
Barış Soner Uşaklı 00d39fb32c feat: #8460, export groups members as csv 5 years ago
Barış Soner Uşaklı 3dcf538773 feat: #8023, allow wildcard search for uid/email 5 years ago
Barış Soner Uşaklı 658dd03b03
feat: add tools to recent/unread (#8477)
* feat: add tools to recent/unread

* fix: open api spec

* fix: more api spec
5 years ago
Barış Soner Uşaklı 5f1865c0b7 fix: openapi 5 years ago
Barış Soner Uşaklı 65c0adc720 fix: openapi 5 years ago
Julian Lam c468942f14 fix(openapi): tests 5 years ago
Barış Soner Uşaklı c718b7293e feat: #3783, min/max tags per category 5 years ago
Barış Soner Uşaklı f03ca0867b fix: tests 5 years ago
Barış Soner Uşaklı 8383992dcc feat: move export functions into child processes 5 years ago
Julian Lam 4cae893f49 fix(openapi): tests for #8412 5 years ago
Julian Lam 6a96944247 fix(openapi): api change for #8387 5 years ago
Julian Lam a82e9bd7f6
feat: privileges for Admin Control Panel (#8355)
* feat: acp privileges (WIP)

* fix: restore global privilege hooks

* refactor: using cid 0 in admin privs

* fix: no need for zebrastripe-reset

* feat: manage:categories privilege WIP

* feat: renamed prefix to admin:, settigns and dashboard privs

* fix: nofocus on acp privs group find modal

* refactor: privileges.x.get() to not used hardcoded privs

* fix: crash if unable to get latest version

* feat: setting acp priv

* Revert "fix: crash if unable to get latest version"

This reverts commit afdb235f48eb0072d88de45f3a1e0151281095b3.

* feat: user/privilege acp privs

* fix: category selector in manage/privileges

* fix: guests potentially becoming admins

* fix: bug in setting admin privs

* fix: some last minute things + api docs

* fix: some more last minute fixes
5 years ago
Barış Soner Uşaklı 1b5d5425b4 fix: handle search tag permission as well 5 years ago
Barış Soner Uşaklı 2100a03c1a refactor: change name to privileges to match other apis 5 years ago
cryptoethic f6b92d241a
fix: checking correct permissions for user search (#8371)
* fix: checking correct permissions for user search

* fix: missing permissions porperty in openapi /api/search
5 years ago
Julian Lam 98dffa3af8 fix: tests due to 0633ad327 5 years ago
Julian Lam a51fff8bd1
refactor: remove general menu from ACP (#8347)
* refactor: remove general menu from ACP

* fix: incorrect translation keys, fixed tests
5 years ago
Julian Lam a0e243eea1 fix(openapi): schema for new flags api 5 years ago
Julian Lam 6f504c4142
Remove allowFileUploads ACP option (#8324)
* feat: allow awaitable upgrade scripts

* feat: allowFileUploads removal upgrade script

* refactor: remove unnecessary ACP option `allowFileUploads`

* fix: updated upgrade script template to not use callback arg

* fix: upgrade script as per @baris

* fix: add missing await

* fix: add missing await
5 years ago
Julian Lam 45dfeeb033 fix(openapi): broken tests 5 years ago
Julian Lam aa4ae78b63 fix(docs): added titles to all routes 5 years ago
Julian Lam 9fd5c439b2 feat: write-api update, WIP 5 years ago
Barış Soner Uşaklı 4e14cb5767 fix: add missing schema item 5 years ago
Barış Soner Uşaklı 84383d3995 fix: spec 5 years ago
Julian Lam 23a0b8c54c fix(openapi): v14 test fix 5 years ago
Barış Soner Uşaklı 9ffdab02d0 fix: tag of /api/unread/total 5 years ago
Julian Lam ccc6118d30
Testing suite integration for openapi spec (#8263)
* feat: testing suite integration for openapi spec

The testing suite now takes the openapi spec into account. It will
check each route defined, make a call to it, and compare the
response with the defined schema. Any mismatches will cause the
test to fail.

* fix(openapi): removed debug stuff from tests

* fix(openapi): fixed some tests

* fix(openapi): added additional check to tests, test fixes

* fix(openapi): better tests, fixed spec errors

* fix(openapi): bad conditional in test

* fix: oops

* fix(openapi): more tests fixing

* fix(openapi): more tests

* fix(openapi): fix some more tests

* fix: verbose'd an info log

* fix: topic pagination route returns schema-optimized pagination block

* fix(openapi): more test/spec fixes

* fix(openapi): accidentally sending in authenticated jar for anon routes

* fix(openapi): more test/spec fixes

* fix(openapi): more spec fixes

* fix: timestampReadable Invalid Date

* fix(openapi): more tests... almost there

* fix(openapi): more tests fixing

* fix(openapi): finally all tests passing

* fix(openapi): added reverse test to compare response to spec

... and fixed all the tests that broke

* fix: remove tests related to group covers, as route is gone

* fix(openapi): broken test on travis

* fix(openapi): broken test on travis

* fix(openapi): broken test on travis

* fix(openapi): object cache is not present for psql

* fix: tests

Co-authored-by: Barış Soner Uşaklı <barisusakli@gmail.com>
5 years ago
Julian Lam d342a28c16 fix(openapi): remove account and group upload routes
re: #8260
5 years ago
Julian Lam 058a15dbb2 fix(openapi): more fleshing out 5 years ago
Julian Lam bae88e089a fix(openapi): fleshed out admin routes 5 years ago
Julian Lam 8387178b25 feat(openapi): merging openapi-test branch into master 5 years ago
Julian Lam ab4bd7e146 fix(openapi): added some descriptions 5 years ago
Julian Lam 2395d2be2e fix(openapi): added PostsObject component 5 years ago
Julian Lam 23dd2727f2 fix(openapi): finished moving all category objects out 5 years ago
Julian Lam c939f8c66d fix(openapi): changed some descriptions 5 years ago
Julian Lam 55d0a9ffea fix(openapi): added CategoryObject component 5 years ago