11466 Commits (06e2ef1a8e9110be89e78fe46550b72d063f2f56)

Author SHA1 Message Date
Julian Lam a30c8ab5c8 feat: clent-side modal for managing topic thumbs
closes #9087
5 years ago
Julian Lam 67cf5e83b7 fix: changes to thumb resizing logic
- Resized thumb no longer skews aspect ratio
- Thumbs resized down to maximum thumb size by WIDTH only
- image.checkDimensions() now returns dimensions
5 years ago
Julian Lam 37c367d6ff feat: raise maximum thumb size to 512 5 years ago
Julian Lam 1c5cdb5121 feat: associate topic thumbs with post uploads (for the mainPid) 5 years ago
Julian Lam 08736b1812 fix: use file lib instead of direct fs module access 5 years ago
Julian Lam c043cfebd6 fix: added back missing topic thumb tests that were removed in last commit 5 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
5 years ago
Julian Lam c09c238e3f fix: do not allow thumb deletion route to arbitrarily delete other files in uploads folder 5 years ago
Julian Lam 5950683316 feat: closes #9048, tests for topic thumbs routes, write API schema 5 years ago
Julian Lam 4152aa552e feat: tests for topic thumbs
Also added some error checking to addThumbs controller
5 years ago
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)
5 years ago
Julian Lam b5d910f53b feat: core work for #9042, thumb deletion now accepts uuids
+ common data validation for thumb addition and deletion
5 years ago
Julian Lam 1f0c1cd229 fix: references to since-removed Topics.thumbs.resizeAndUpload 5 years ago
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
5 years ago
Julian Lam 43dc3e3e48 fix: #9041, remove Topics.thumbs.resizeAndUpload() 5 years ago
Julian Lam 708b1c338f fix: #9040 5 years ago
Julian Lam 1257aa981e feat: expose uploaded thumbnails to client-side via API
+ plugin hook: filter:topics.getThumbs
5 years ago
Julian Lam 7e9e08f718 feat: server-side routes for handling multiple topic thumbnails
closes #8994, requires 'topic-thumb-refactor' branch of composer-default
5 years ago
Julian Lam 98cd9e3549 feat: allow uploadThumb controller to be called in code
it, and uploadsController.upload() now return the results of their operation
5 years ago
Julian Lam 4fc9da81a9 refactor: topic thumbs lib to topics.thumbs 5 years ago
Barış Soner Uşaklı 0f480be658 fix: #9085, dont prevent admins from deleting other users 5 years ago
Julian Lam efa4eca0fe fix: #9045, no post usage info if '/files/' path received 5 years ago
Barış Soner Uşaklı 60e7de0d13 feat: move upgrade script and make it shorter 5 years ago
Julian Lam 6037f5ee2c chore: add comment for clarification 5 years ago
Barış Soner Uşaklı 1f32d38778 fix: default values, clamp postsPerPage/topicsPerPage to max 5 years ago
Barış Soner Uşaklı 9da0ed400e fix: #9081, load raw settings before merging 5 years ago
Barış Soner Uşaklı bb6cc49c16 perf: dont build identical langs 5 years ago
Barış Soner Uşaklı 86f0f82be7 fix: #9068 5 years ago
Barış Soner Uşaklı 4a0d883359 breaking: #8808, remove utils.slugify 5 years ago
Barış Soner Uşaklı 1c45fa1ba5
feat: socket.io 3 changes (#8845)
* feat: socket.io 3 changes

* feat: replace socketio-wildcard with socket.onAny

up socket.io-redis to 6.x

* feat: remove mongodb/psql socket.io adapters

* feat: show data on fail

* fix: tests

* fix: typo

* fix: logger test fix

* fix: logger.io_close

* chore: up deps

* chore: update readme to reflect redis requirement

* fix: increase timeout show data if test fails
5 years ago
Barış Soner Uşaklı d2888d1d1f
Category tags (#8938)
* feat: wip category tags

* fix: tag search

* feat: remove debug

* fix: returns of searchTags and autocomplete

* fix: alpha sort

* fix: redis

* fix: delete zsets on category purge, fix another test

* fix: test
5 years ago
Barış Soner Uşaklı 792e9e703e fix: dont strip tags 5 years ago
Barış Soner Uşaklı 91c20ceca5 fix: #9065, settings v2/v3 conflict 5 years ago
Julian Lam 970ccb5a68 fix: #9063, missing handler for passwordless accounts in admin.checkPrivileges middleware 5 years ago
Barış Soner Uşaklı 6669496dba
Navigator (#9049)
* feat: navigator changes

* fix: remove extra code

* feat: add lang keys
5 years ago
Barış Soner Uşaklı 648f6215ef fix: redirect external with absolute urls 5 years ago
Barış Soner Uşaklı 458bfc0faf fix: external path for subfolder installs 5 years ago
Barış Soner Uşaklı 64ac483ddd fix: #9032 5 years ago
Barış Soner Uşaklı fcb10ebdbb feat: add socket connect/disconnect action hooks 5 years ago
Barış Soner Uşaklı 5d00b0895b fix: sso redirect on /login & /api/login 5 years ago
Julian Lam 3ea66f84e1 fix: use file lib instead of directly accessing fs (for Assert.path) 5 years ago
Barış Soner Uşaklı ef6c3b0029 fix: check uid as well 5 years ago
Barış Soner Uşaklı 7e867cf95e fix: #7597, fix progress bar of cover/profile uploads
send big cover images in chunks
5 years ago
Barış Soner Uşaklı 6f68f4d20a fix: #9032, fix login redirect for sso plugins 5 years ago
Barış Soner Uşaklı 86b7f8a5d4 fix: #8962, dont show null for purged targets 5 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
5 years ago
Barış Soner Uşaklı 954dc5b7be feat: #8983, update pin tooltip in topic 5 years ago
psychobunny 53abada5f0 Revert "feat: option to allow auto-joining of groups (optionally skip the "request membership" step)"
This reverts commit 685f3c6aa6.
5 years ago
psychobunny 685f3c6aa6 feat: option to allow auto-joining of groups (optionally skip the "request membership" step) 5 years ago
psychobunny c1a7968d23 feat: user notification settings for group.leave event 5 years ago
psychobunny f7558c6052 fix: notification on group.leave incorrectly showing "Guest has left X group" 5 years ago
Barış Soner Uşaklı b46d2f93e6 fix: #9019, add missing lang strings 5 years ago
Barış Soner Uşaklı e45b5cba81 fix: #9018 5 years ago
Barış Soner Uşaklı f7c738deda fix: #8997, don't send notifications if uids already in group 5 years ago
Barış Soner Uşaklı 1eb5fabdb1 feat: #8900, postQueue setting for category 5 years ago
Barış Soner Uşaklı 14bb0a4469 feat: #8960, update view count after merge 5 years ago
psychobunny 4317cdea34 fix: #9002 ban templates not user friendly 5 years ago
Barış Soner Uşaklı 202dcef42e fix: #9010, show rest of info even if clusterMonitor priv is not granted 5 years ago
Barış Soner Uşaklı d46740f860 fix: #9007 revoke old sessions after adding 5 years ago
Barış Soner Uşaklı 700736535c fix: guests dont always have sid 5 years ago
Barış Soner Uşaklı a4fe4d3cf5 fix: allow guests to see their replies immediately 5 years ago
Barış Soner Uşaklı 92d1b8a65f fix: privs headers 5 years ago
Barış Soner Uşaklı 4c650aeead feat: #8989, convert widget nav to dropdown 5 years ago
Barış Soner Uşaklı 5080f35752 fix: #8991, logout on password reset, dont verify email if password expired
dont allow same password on reset
5 years ago
Barış Soner Uşaklı 3cd0c9a476 fix: #8998, allow guests to use write api to post/reply 5 years ago
Barış Soner Uşaklı 5a137a0dd6 fix: guest handles to user displayname as well 5 years ago
Barış Soner Uşaklı 546f58bf1f fix: timestamp in queue, add post queue strings 5 years ago
Barış Soner Uşaklı 7f5efc3e93 fix: #8992, set email:confirmed for first admin user 5 years ago
Barış Soner Uşaklı 80f0750bd4 fix: typo in upgrade script, closes #8990 5 years ago
Barış Soner Uşaklı 9ab4fb412b fix: order 5 years ago
Barış Soner Uşaklı d3c04afb98 fix: #8982, copy color on tag rename, dont copy if target exists
refresh page on tag rename
5 years ago
Julian Lam acb576662e fix(spec): from 6e6a7a8f8a 5 years ago
Barış Soner Uşaklı 6e6a7a8f8a fix: #8969, export csv to file 5 years ago
Julian Lam 007a3258a0 feat: add handler for 501 api response 5 years ago
Barış Soner Uşaklı f4d217d829 fix: #8980, fix lang string 5 years ago
Barış Soner Uşaklı bf171adc83 fix: #8979 5 years ago
Julian Lam 1e7cf1cbc4 fix: #8971, disallow flags of privileged users (mods, gmods, admins) 5 years ago
Barış Soner Uşaklı dadb2527da fix: #8974, with password login for approval queue 5 years ago
Julian Lam ad8e770037 feat: add pinExpiry and pinExpiryISO to topic data 5 years ago
gasoved a56a657759
fix: missing select/clear all checkbox added to category privileges template (#8967) 5 years ago
Peter Jaszkowiak ba3981e270
fix: use package.name for theme.id (#8965)
Prevents cases like #8953
5 years ago
Barış Soner Uşaklı 07fe959ce5 chore: remove test code 5 years ago
Barış Soner Uşaklı b8cafefce2 fix: winston usages 5 years ago
Barış Soner Uşaklı 414caac01b fix: #8957 5 years ago
Barış Soner Uşaklı 47a19d6763 fix: error message 5 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
5 years ago
Julian Lam 21d6225ce0 fix: 'already-deleting' error on subsequent account content deletions 5 years ago
Barış Soner Uşaklı 93863bb3c6 fix: #8949, faster upgrade script 5 years ago
Barış Soner Uşaklı 6771ca150a fix: add topic uid to infinitescroll 5 years ago
Barış Soner Uşaklı c037779fa1 feat: add topicOwnerPost #8778 5 years ago
Julian Lam ac734b8335 fix: #8912 5 years ago
Barış Soner Uşaklı 4f37eddc5e feat: clear reset tokens on user delete 5 years ago
Barış Soner Uşaklı e32cd31ec6 fix: #8918 5 years ago
Barış Soner Uşaklı 3af4d13fa5 fix: basepath for r.js modules 5 years ago
gasoved 00e75de736
feat: select/clear all checkboxes in privilege table (#8941) 5 years ago
psychobunny 1c0e8c1663 fix: move meta.getServerTime call to admin namespace 5 years ago
Julian Lam 90434a4668 Revert "fix(spec): always show thumb in topic response"
This reverts commit 493c568a75.
5 years ago
Julian Lam 493c568a75 fix(spec): always show thumb in topic response 5 years ago
Barış Soner Uşaklı 0ca40af834 fix: #8939, fix username change notification getting filtered out 5 years ago
Julian Lam 906d7d734b refactor: move API banned response handler to separate internal method 5 years ago
Julian Lam afb26bfe48 feat: show ban reason and expiry in write api responses, if user is banned 5 years ago
Julian Lam eab4ca7104 fix: bug with Topics.resizeAndUploadThumb not checking for extension validity 5 years ago
Barış Soner Uşaklı 2b73a14e42 fix: #8933 5 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
5 years ago
Barış Soner Uşaklı 77f0bff54f fix: #8929, fix popular, top rss feed urls 5 years ago
Barış Soner Uşaklı 8f4060819f Merge branch 'master' of https://github.com/NodeBB/NodeBB 5 years ago
Julian Lam 5dd3b03125 fix: a derp 5 years ago
Barış Soner Uşaklı b18e7e319b fix: spec 5 years ago
Julian Lam 4ca62dc45b fix: improper handling of scheme-relative URLs in topic thumb logic 5 years ago
Barış Soner Uşaklı 3f337b5d7c feat: #8925, #8924 5 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
5 years ago
Julian Lam f33a9185ff fix: on OP edit, call helper method to upload and resize thumb 5 years ago
Barış Soner Uşaklı 9ee1fb490e fix: https://github.com/NodeBB/NodeBB/pull/8759 5 years ago
Barış Soner Uşaklı 672d4da078 feat: human readable uptime 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 98a05e4dde chore: add missing plugin hook deprecation warning 5 years ago
Barış Soner Uşaklı ef3df47a6d refactor: remove breaking change in pin expiry 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ı 1be08b2e8b fix: guest displayname 5 years ago
Barış Soner Uşaklı dbd814c25f fix: spec, only call modifyUser on unique user objects 5 years ago
Barış Soner Uşaklı 903e9d82b8 feat: #8637 5 years ago
Barış Soner Uşaklı ae5d4405c0 fix: setting 5 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
5 years ago
Barış Soner Uşaklı 8d060065a0 fix: spec 5 years ago
Barış Soner Uşaklı e9585b9be2 fix: group userTitles translation escapes 5 years ago
Barış Soner Uşaklı 965671a97b fix: remove params from error log 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
Barış Soner Uşaklı 4e9b10ab76 feat: #5274 5 years ago
Barış Soner Uşaklı fb567a7a33 feat: #4456 5 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
5 years ago
Barış Soner Uşaklı a87ccccc9c fix: benchpress warnings 5 years ago
Barış Soner Uşaklı dfdc0c420c fix: benchpress warnings 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
Barış Soner Uşaklı 120999bf63 feat: #7550, show message if post is queued when js is disabled 5 years ago
Barış Soner Uşaklı 35f932cd64 feat: #8171, add oldCategory if topic is moved 5 years ago
Barış Soner Uşaklı b44ddecdf8 feat: #8204, separate notification type for group chats 5 years ago
Barış Soner Uşaklı 1d6bcbebde feat: https://github.com/NodeBB/NodeBB/issues/8147 5 years ago
Julian Lam e1d7c4d8aa fix: internal helper method hasGlobalPrivilege, 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
Peter Jaszkowiak d30ea25629
feat(deps): benchpressjs@2.2.1 (#8887)
Better warnings, faster template compiles
5 years ago
Tudor-Dan Ravoiu 452d7f2b17
Create verified/unverified user groups (#8889)
Co-authored-by: Tudor-Dan Ravoiu <tudor-dan.ravoiu@ubisoft.com>
5 years ago
Barış Soner Uşaklı e4d2764d4c fix: #8884, remove header/footer cache 5 years ago
Barış Soner Uşaklı 5598130a92 refactor: async/await controllers/index.js 5 years ago
Barış Soner Uşaklı f14e42d8bc fix: #8883 5 years ago
Barış Soner Uşaklı 8fbe832460 refactor: less dupe code 5 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
5 years ago
Barış Soner Uşaklı 51b7eca119 fix: run every hour, dont show message if average_time is 0 5 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
5 years ago
Julian Lam bcccb331db docs: openapi schema for user/group exist check, session deletion 5 years ago