Commit Graph

1498 Commits

Author SHA1 Message Date
Opliko
6e43086558 resolve #8444 - Allow nested objects in translations (#8793)
* feat: #8444 Allow nested objects in translations

* feat: #8444 Allow nested objects in translations

* style: don't change formatting

* fix: don't use the first string match if key isn't finished

* feat: #8444 Allow nested objects in translations

* feat: #8444 Allow nested objects in translations

* style: don't change formatting

* fix: don't use the first string match if key isn't finished

* feat: add nested translations test
2020-11-17 10:06:49 -05:00
Barış Soner Uşaklı
7928036a1b feat: add test for custom translations 2020-11-16 21:50:06 -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
Julian Lam
0a0b4661be chore: remove debug log 2020-11-16 10:19:23 -05:00
Barış Soner Uşaklı
e4d2764d4c fix: #8884, remove header/footer cache 2020-11-15 16:43:06 -05:00
Julian Lam
b3e00489c8 fix: add back test timeout for exports 2020-11-12 15:57:36 -05:00
Julian Lam
bcccb331db docs: openapi schema for user/group exist check, session deletion 2020-11-12 15:53:15 -05:00
Julian Lam
97842c43d3 test: new api test to ensure each path's parameters are defined in context 2020-11-12 15:52:33 -05:00
Julian Lam
319cfeaa1c test: updated test name to be more specific 2020-11-12 14:32:49 -05:00
Julian Lam
ee4d90f68f fix: test breakage from f300c933a5 2020-11-10 14:39:57 -05:00
Julian Lam
f300c933a5 refactor: move session revocation route to write api 2020-11-10 14:27:38 -05:00
Barış Soner Uşaklı
3f5f38dd89 fix: clear header-cache after each suite 2020-11-07 22:57:03 -05:00
Barış Soner Uşaklı
255cf43ea9 fix: show msg on fail 2020-11-07 22:40:34 -05:00
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
2020-11-06 23:13:12 -05:00
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 1e312bf7ef.

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

As processing a large string still uses a lot of memory
2020-11-06 08:40:00 -05:00
Barış Soner Uşaklı
b6d8687837 chore: add info log into tests 2020-11-02 20:34:12 -05:00
Julian Lam
cc1c722092 fix: breaking test from 0db0231cff
Also lowered export timeout to 5s
2020-10-27 20:37:23 -04:00
Julian Lam
04185d94c1 fix: indentation 2020-10-27 20:37:23 -04:00
Julian Lam
8e7914ff72 fix: add back derpy 20 second sleep 2020-10-27 20:37:23 -04:00
Julian Lam
14e5c24ec5 fix(openapi): final fixes to schemas 2020-10-27 20:37:23 -04:00
Julian Lam
3ebb3a3479 fix: missing method in test error output 2020-10-27 20:37:23 -04:00
Julian Lam
b092f65d95 fix(writeapi): tests 2020-10-27 20:37:23 -04:00
Julian Lam
843aff582d refactor: api test suite to accept methods other than GET 2020-10-27 20:37:23 -04:00
Julian Lam
b156b8b573 feat: wip, write api tests framework
re-using read api tests if possible
2020-10-27 20:37:23 -04:00
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
2020-10-26 10:43:18 -04:00
Barış Soner Uşaklı
1f43e98f8b fix: allow admins adding users to global moderators
add new test
2020-10-20 18:43:45 -04:00
Barış Soner Uşaklı
75024c3580 refactor: remove console.log, extra require 2020-10-20 00:29:44 -04:00
Barış Soner Uşaklı
b26e9b5993 fix: #8595, dont save escaped data when renaming groups 2020-10-20 00:24:34 -04:00
Barış Soner Uşaklı
8fd3c04480 fix: test 2020-10-16 20:36:24 -04:00
Barış Soner Uşaklı
bf480ee58b refactor: setupApiRoute signature 2020-10-15 23:12:19 -04:00
Barış Soner Uşaklı
b2ff1594b8 fix: redis hget
'node_redis: The HGET command contains a invalid argument type.\n' +
'Only strings, dates and buffers are accepted. Please update your code to use valid argument types.'
2020-10-15 22:25:56 -04:00
Julian Lam
e98285dbbb fix: reimplementing isPrivilegedOrSelfAndPasswordMatch 2020-10-15 21:45:57 -04:00
Barış Soner Uşaklı
84a179f48c Merge branch 'master' of https://github.com/NodeBB/NodeBB 2020-10-15 20:51:55 -04:00
Julian Lam
222b4c9533 fix: broken tests from api change 2020-10-15 19:33:20 -04:00
Barış Soner Uşaklı
7d86be2bc2 fix: tests 2020-10-15 17:51:04 -04:00
Barış Soner Uşaklı
e367c5403e refactor: move groups.leave, fix some tests 2020-10-15 17:29:38 -04:00
Barış Soner Uşaklı
8ae1f81cf4 feat: refactor groups.delete 2020-10-15 16:36:53 -04:00
Barış Soner Uşaklı
d69e503d21 feat: move groups.join to api 2020-10-15 16:13:19 -04:00
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
2020-10-13 22:42:50 -04:00
psychobunny
7b2301ff9c fix: enable tests 2020-10-13 13:10:49 -04:00
Barış Soner Uşaklı
1ee9384875 fix: #8757, allow all slashes in category route 2020-10-12 14:18:59 -04:00
Barış Soner Uşaklı
d76229c061 feat: add checkbox tests 2020-10-12 00:18:34 -04:00
Barış Soner Uşaklı
e92d4719cc feat: add test for serialize/deserialize form 2020-10-12 00:04:20 -04:00
Barış Soner Uşaklı
7db224f689 fix: timeago test for dev/prod 2020-10-11 22:40:28 -04:00
Barış Soner Uşaklı
cecdd2915e fix: timeago test 2020-10-11 22:39:37 -04:00
Barış Soner Uşaklı
ae5fb103ca feat: disable write api tests until fixed 2020-10-11 22:28:07 -04:00
Barış Soner Uşaklı
dc29f4dca2 refactor: switch to using slugify module 2020-10-11 21:49:37 -04:00
Barış Soner Uşaklı
3b231360d3 feat: load jquery-form before using 2020-10-10 21:54:32 -04:00
Julian Lam
87e3f26fe4 feat(openapi): schema validation for write api definitions file 2020-10-09 16:38:43 -04:00
Julian Lam
ebcb664b41 fix(writeapi): tests 2020-10-08 15:33:10 -04:00