1814 Commits (89af00d1d5da2e7353de4f88e2242baf3dfd2935)

Author SHA1 Message Date
Julian Lam d263192271 feat: group exists API call in write api 4 years ago
Julian Lam 1446cec77f feat: user exist route in write api 4 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
4 years ago
Julian Lam c26f2b6599 feat(writeapi): user settings API 4 years ago
Julian Lam a691be5952 fix: incorrect logic for post history editable bool 4 years ago
Julian Lam 7a8f704900 fix: #8776 some users unable to restore old versions via history 4 years ago
Barış Soner Uşaklı ea31f50554 refactor: show more lines of stack trace 4 years ago
Barış Soner Uşaklı d9a16855d0 refactor: posts api 4 years ago
Barış Soner Uşaklı 272e73da53 refactor: post restore/delete/purge 4 years ago
Barış Soner Uşaklı 9738e20207 refactor: merge post.edit
fix: dont fadeout/fadeint if title/post didnt change
4 years ago
Barış Soner Uşaklı 2279e37261 refactor: deprecate socket.emit('users.search') use api route 4 years ago
Barış Soner Uşaklı 083c74e059 refactor: api categories 4 years ago
Barış Soner Uşaklı e78c498e84 fix: missing doTopicAction, fix wrong api params 4 years ago
Barış Soner Uşaklı bc880ee0ca refactor: remove sockets.reqFromSocket 4 years ago
Julian Lam 9ee3cb9b62 refactor: topic follow/ignore to use api lib 4 years ago
Julian Lam 68d6818bca refactor: topic tools' actions to use api lib 4 years ago
Julian Lam 40598b368e refactor: topic creation to use api lib 4 years ago
Julian Lam 3f347baadb fix: socket user bans 4 years ago
Julian Lam 2d252f2fa4 refactor: user bans to use api lib 4 years ago
Barış Soner Uşaklı e367c5403e refactor: move groups.leave, fix some tests 4 years ago
Barış Soner Uşaklı bbbd9fee85 Merge branch 'master' of https://github.com/NodeBB/NodeBB 4 years ago
Julian Lam 960e925e40 refactor: change password/user follow to use api lib 4 years ago
Barış Soner Uşaklı 081c4fa6d4 Merge branch 'master' of https://github.com/NodeBB/NodeBB 4 years ago
Julian Lam 430e7f5834 refactor: user deletion to use api lib 4 years ago
Barış Soner Uşaklı 8ae1f81cf4 feat: refactor groups.delete 4 years ago
Julian Lam 31ae8a8323 refactor: socket profile update to use api lib 4 years ago
Barış Soner Uşaklı d69e503d21 feat: move groups.join to api 4 years ago
Julian Lam 23086daead refactor: user create and profile update to use api lib 4 years ago
Barış Soner Uşaklı 5e2caf19f5 refactor: use single function for api code 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
Barış Soner Uşaklı dc29f4dca2 refactor: switch to using slugify module 4 years ago
Julian Lam b8703ba9f6 fix(writeapi): tests 4 years ago
Julian Lam f870721fca feat(writeapi): file deletion route 4 years ago
Julian Lam 3ea1aa4780 refactor(writeapi): update route prefix to api/v3, default error option 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 414169fdfa feat(writeapi): post delete/restore/purge 4 years ago
Julian Lam f66c2fb60f feat(writeapi): post editing 4 years ago
Julian Lam 9be5629458 feat(writeapi): topic follow/ignore 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 40dc1c38d3 feat(writeapi): added DELETE /groups/:slug/membership/:uid route 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 3072de4812 feat: added DELETE /api/v1/categories/:cid route 4 years ago
Julian Lam e942ad8101 feat: added PUT /api/v1/categories/:cid route
Deprecated admin.categories.update socket call
Showing stack trace in console for errors, when in development mode
4 years ago
Julian Lam dc666fd8a9 feat: added POST /api/v1/categories route 4 years ago
Julian Lam a5af2dc819 feat: added PUT/DELETE /api/v1/users/:uid/ban routes 4 years ago
Julian Lam b5bbcbaeaa feat: added POST and DELETE /api/v1/users/:uid/follow routes 4 years ago
Julian Lam 7aed174ebc feat: added PUT /api/v1/users/:uid/password route 4 years ago
Julian Lam a1ddc210b2 feat: added DELETE /api/v1/users/:uid and DELETE /api/v1/users 4 years ago
Julian Lam 58043e07ba fix: use POST call for user creation in ACP
- Not entirely sure about error handling yet, more research needed
- Also added socket method deprecation utility method
4 years ago
Barış Soner Uşaklı ed092bf6b5 refactor: remove posts.tools.purge
moved the check to socketPosts.purge
4 years ago
Peter Jaszkowiak 55d5cccf2e
Document deprecations and remove old ones (#8706)
* chore: document deprecation removal versions

* chore: remove deprecations 2+ versions old
4 years ago
psychobunny b6f2f0e5d0 fix: #8681 change owner modal's search should check if user is banned 4 years ago
Julian Lam 5ddf70221c feat: upon plugin installation via ACP, check against nbbpm first 4 years ago
Julian Lam 4fca79380a fix: tests, because redis is TOO FAST 5 years ago
Julian Lam 29b357bc66 refactor: expose new method for appending moderation note 5 years ago
Julian Lam 7e7366be13 fix: remove toolsVisible in post tools' menu [breaking] 5 years ago
Barış Soner Uşaklı 5f10d67db5
Remove sounds (#8617)
* feat: remove sounds

* feat: remove more sounds

* feat: disable sounds plugin

* fix: openapi
5 years ago
Barış Soner Uşaklı b0a759223d feat: add action:user.removeCoverPicture 5 years ago
Barış Soner Uşaklı 962446a5ac feat: add user data to action:user.removeUploadedPicture 5 years ago
Barış Soner Uşaklı 9542ef1285 feat: add userData to action:user.delete 5 years ago
Julian Lam f743f92088
refactor: socket posts delete/restore/purge so tid is not necessary (#8607)
* refactor: socket posts delete/restore/purge so tid is not necessary

* refactor: stop trying to be fancy

* fix: tests to not pass in tid into posts.deletePosts

* fix: some more unnecessary tid passing
5 years ago
Barış Soner Uşaklı 354e6ccc66 feat: banning a user will resolve their post flags 5 years ago
Barış Soner Uşaklı 35a538ec2a feat: allow adding multiple users to group 5 years ago
Barış Soner Uşaklı bfaf648ec3 fix: #8556, catch errors from admin check 5 years ago
Julian Lam 0903eb4b8c feat: limit privileges column to superadmins only 5 years ago
Barış Soner Uşaklı d6baf5c278 feat: show event/params on error 5 years ago
Barış Soner Uşaklı 2c35d0ba87 refactor: change incrementViewCount and markAsRead to async/await 5 years ago
Julian Lam fcdbdf63a3 refactor: flags object in post tools 5 years ago
Barış Soner Uşaklı f1974fb900 refactor: pass only needed data 5 years ago
Julian Lam c705e08a76 feat: allow direct link to flag from post tools, #8531 5 years ago
Barış Soner Uşaklı bbc7737e14 feat: ability to clear cache from acp 5 years ago
Barış Soner Uşaklı 69fb15276c fix: tests 5 years ago
Barış Soner Uşaklı 8d8117ffa1 feat: reduce amount of data loaded on acp admin page
get rid of socket call and use ajaxify.data.categories
5 years ago
Barış Soner Uşaklı 8bd63f61e0 feat: resolve flag on delete/purge/ban/delete account 5 years ago
Barış Soner Uşaklı 844f2b4ed0 feat: #8524, allow editing category of queued topic 5 years ago
Barış Soner Uşaklı 4658121a7d fix: don't crash if content is undefined 5 years ago
Barış Soner Uşaklı 2485a55092 feat: #8521, allow editing title before posting from queue 5 years ago
Barış Soner Uşaklı 3653151143 fix: #8508, dont allow moving topics if not moderator of target category 5 years ago
Julian Lam 1441720962 feat: logic for flag note editing, #8499 5 years ago
Julian Lam f85a45c722 feat: logic for flag note deletion, #8499 5 years ago
Barış Soner Uşaklı 3dcf538773 feat: #8023, allow wildcard search for uid/email 5 years ago
Barış Soner Uşaklı 73ddf1cb98 fix: groups.updateCover 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ı c2ca02dfc7 fix: #8474
make isPrimary and isCluster always booleans
they were strings when using ./nodebb start and boolean if they were in config.json and started with node app.js
5 years ago
Barış Soner Uşaklı ac6b571ed5 fix: dont allow searching by email/ip if not privileged 5 years ago
Barış Soner Uşaklı 02ac44cc5a fix: dont allow searching by ip/banned/flagged for regular users 5 years ago
Barış Soner Uşaklı c718b7293e feat: #3783, min/max tags per category 5 years ago
Barış Soner Uşaklı 00d8ce2663 fix: only allow valid uids 5 years ago
Barış Soner Uşaklı 8383992dcc feat: move export functions into child processes 5 years ago
Barış Soner Uşaklı e80379dc0e feat: display stack trace on winston.error 5 years ago
Julian Lam f909ed2541 feat: show editor in post diffs if available 5 years ago
Julian Lam b3115ea813 fix: #8410 5 years ago
Julian Lam 58b3d608fc feat: allow post diffs to be restored, #8406 5 years ago
Barış Soner Uşaklı bb3aa54006 feat: merge changes
allow selecting main topic to merge into
allow specifying a new title for merge topic
upon merge go to correct topic
new tests for merging with options
5 years ago
Julian Lam 942cc4b132 fix: #8385 5 years ago
Julian Lam 67aca822e6 feat: account content deletion, closes #8381 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ı 30cc83c033 fix: #8374, revert event delete 5 years ago
Julian Lam 922d49be0b fix(style): switch..case 5 years ago
Barış Soner Uşaklı e603ebc0c6 fix: #8323, let admins send validation emails without timeout 5 years ago
Barış Soner Uşaklı ec5582b53c
feat: add privilege give/rescind hooks (#8336)
* feat: add privilege give/rescind hooks

action:privileges.categories.give/rescind
action:privileges.global.give/rescind

breaking change, privileges.categories.give/rescind and privileges.global.give/rescind use full privilege name for groups ie `groups:find` instead of `find`

* fix: tests, privileges renamed
5 years ago
Barış Soner Uşaklı d77036dbd1 fix: #8249, don't send move notifications for deleted posts/topics 5 years ago
Barış Soner Uşaklı 740e598a5d fix: lint 5 years ago
Barış Soner Uşaklı 8e23dec84b fix: lint 5 years ago
psychobunny e1c6c3b267 refactor: reorganized socket.io admin modules 5 years ago
Barış Soner Uşaklı 067034082f fix: #6422, update deleted/restored messages 5 years ago
Barış Soner Uşaklı 4d0636f847 fix: #8163, prevent account deletion 5 years ago
Barış Soner Uşaklı 690bb69d03 fix: #8154, respect stop 5 years ago
Barış Soner Uşaklı f23bc347b1 fix: #8156 dont allow loading members from hidden groups 5 years ago
Barış Soner Uşaklı c35a21d7f0 fix: #8135 5 years ago
Barış Soner Uşaklı 0ae1eb4f6e fix: missing await in SocketPosts.changeOwner 5 years ago
Baris Usakli 418c174d56 fix: dont return flag data to client 5 years ago
Barış Soner Uşaklı 1f13ab8a19 fix: restrict getUsersInRoom to members 5 years ago
Opliko 740de034fa #8115 - log post owner changes (#8117)
* log post owner changes

* log each post separately

* use map instad of a loop
5 years ago
Barış Soner Uşaklı 61da8c29ac fix: group create/join/update name validation 5 years ago
Barış Soner Uşaklı 05c9fe2735 feat: #5272, allow changing user groups from manage users page 5 years ago
Baris Usakli b323df2fe0 fix: allow members to search as well 5 years ago
Baris Usakli c2cd7de891 fix: #8069, dont show hidden groups in search 5 years ago
Baris Usakli 33fd4a1c2b fix: missing await 5 years ago
Barış Soner Uşaklı a688aaae51 fix: #8059, properly mark topic unread when using mark unread for all 5 years ago
Julian Lam 645d647248
feat: wip, better digest handling (+ eventual digest resend logic) (#7995)
* feat: wip, better digest handling (+ eventual digest resend logic)

- await emailer.send call in digest.send method
- save send success to a new sorted set digest:{interval}:byUid

* feat: continuing work on digest tools

- Added ACP page to view digest settings and delivery times per user

* feat: added paginator and stub buttons for resending digest

* feat: wrapping up digest revamp

- New language strings in ACP digest page
- Client-side ACP script for digest ACP page
- Websocket call for ACP page to execute digests
- Broke out logic to retrieve user digest settings to getUsersInterval

* fix: minor cleanup

* fix: #8010 and some style suggestions from baris

* fix: resolve confusing comment
5 years ago
Barış Soner Uşaklı 1cedc4a0d6 feat: #7957, allow post queue based on group
allow multiple select in ACP pages
5 years ago
Baris Usakli 485fbd2f14 feat: #7964, change all categories at once
allow passing cids to setCategoryWatchState and category.exists
5 years ago
Baris Usakli 554e67116f feat: remove ability to delete events from acp 5 years ago
Barış Soner Uşaklı 565f9726f7 fix: #7941, validate some input fields 5 years ago
Barış Soner Uşaklı f983f536c6 fix: check threshold before setting bookmark 5 years ago
Baris Usakli 91e8e3905c fix: #7947, disable unused cookie 5 years ago
Barış Soner Uşaklı 603908c10a refactor: async/await socket.io/index 5 years ago
Barış Soner Uşaklı 3455c27a8d fix: #7901, handle group names that are translation keys 5 years ago
Barış Soner Uşaklı 2444ed5c88 feat: #7932, redirect to group details after creation
add private/hidden on group creation modal
5 years ago
Barış Soner Uşaklı 13c870597e fix: picture not showing up in change modal 5 years ago
Barış Soner Uşaklı ed1223645e feat: send notification to group owners when someone leaves 5 years ago
Barış Soner Uşaklı 310c6fd33f
properly filter /unread /recent /popular /top (#7927)
* feat: add failing test for pagination

* feat: test

* fix: redis tests

* refactor: remove logs

* fix: add new test

* feat: make sortedSetRangeByScore work with keys on redis

* fix: hardcoded set name

* feat: show topics from readable categories on recent/popular/top

* feat: rewrite unread topics

respect watched categories and followed topics

* fix: term + watched
5 years ago
Barış Soner Uşaklı 7a0f607434 fix: account/categories 6 years ago
Barış Soner Uşaklı 86b16629f8 refactor: returned fields 6 years ago
Opliko b9583ed838 Add privilege for accessing user information (#7859)
* Add view users info global privilege

* Show user ip only to global mods and admins

* fix missing comma

* Hide link for users without correct privilege

* move getting privilege information to getAllData

* Hide the link from Global Moderators as well

* Give Global Moderator view:users:info privilege

* Restrict ip in post menu to view:users:info

* add some trailing commas....

* Add privilege to categories test

* Add group privilege to categories test

* add upgrade script

* fix style for TravisCI

* more styling - change spaces to tabs

* some more styling fixes (hopefully final one)

* fix style for Travis CI

* hide ip in chat messages

* Don't show even hidden ips on user profile page
6 years ago
Barış Soner Uşaklı a7d2b8a1fe refactor: async/await socket.io 6 years ago
Barış Soner Uşaklı 52b2d670e5 refactor: async/await 6 years ago
Barış Soner Uşaklı 75d7ae9272 refactor: async/await 6 years ago
Barış Soner Uşaklı 5c2afe5eac refactor: async/await socket.io/topics 6 years ago
Barış Soner Uşaklı a4d84a66dd refactor: remove dupe code 6 years ago
Barış Soner Uşaklı e93ef0d7fd refactor: async/await socket.io/posts 6 years ago
Barış Soner Uşaklı 88dfbf213f refactor: async/await socket.io/admin 6 years ago
Baris Usakli 71e50bbf4e refactor: socket.io/admin/categories async/await 6 years ago
Barış Soner Uşaklı acd9576489 fix: don't move theme/plugin to top if its already active 6 years ago
Julian Lam 1796b65d34 feat: option to restrict group leaving, closes #7770 6 years ago
Julian Lam 4588a4fdcf refactor: admin groups.join socket async/await 6 years ago