10769 Commits (c279875aa6edab51559ab82133bf648a43c092b6)

Author SHA1 Message Date
psychobunny 15d6975e96 fix: ignore case for group details route 5 years ago
Barış Soner Uşaklı 740e598a5d fix: lint 5 years ago
Barış Soner Uşaklı 8e23dec84b fix: lint 5 years ago
Barış Soner Uşaklı 00e299e93e feat: closes #8229, add targetUid to action:password.change 5 years ago
Barış Soner Uşaklı 23571224b5 feat: add parent cids to body class 5 years ago
Barış Soner Uşaklı 071506eb7d fix: invite properly 5 years ago
Barış Soner Uşaklı 8f4b99a41c fix: admins not seeing invite button 5 years ago
Barış Soner Uşaklı 0b5fac75b0 fix: #8217, add missing lang key 5 years ago
Julian Lam 93acd13999 fix: #8206 first message in chat has false `newSet` 5 years ago
Barış Soner Uşaklı d080c7b04c feat: add 2 hooks for modifying privileges 5 years ago
Barış Soner Uşaklı f07f4f8e1a fix: #8202, filter non-existing users in search by uid 5 years ago
psychobunny 266061c31a fix: notification bodyShort truncated if there is a comma in topic title 5 years ago
Julian Lam 1efb238a9a refactor: getUsersCSV to use batch lib 5 years ago
psychobunny e1c6c3b267 refactor: reorganized socket.io admin modules 5 years ago
Barış Soner Uşaklı 5e91a67e78 feat: add user ip to admin/dev/info 5 years ago
Barış Soner Uşaklı cba5b23e23 feat: change option name 5 years ago
Barış Soner Uşaklı 80f1bcad20 fix: call next 5 years ago
Baris Usakli 476f6717c4 feat: add no-build to ./nodebb setup 5 years ago
Baris Usakli cf6eadb91a fix: dont let regular users see other users watched categories 5 years ago
Barış Soner Uşaklı 32ada7c4e7 fix: #8188, fix bookmark if sorting is newest_to_oldest 5 years ago
Andrew Rodrigues ac241fb830 fix: duplicate ID + label 5 years ago
Julian Lam f0db240a1d fix: #8184 global mods unable to revoke other user sessions 5 years ago
Barış Soner Uşaklı e72a29b3fd fix: return null if field does not exist 5 years ago
Barış Soner Uşaklı 14e7866745 fix: #8179, limit length of location/website/fullname, check grouptitle 5 years ago
Barış Soner Uşaklı bc93b5676c fix: #8175 5 years ago
Opliko 41c20761e1
Remove deprecated mongo connection options, fixes #8079 (#8174)
fix #8079 
Unified Topology changes the concept of connecting and causes isConnected to always return true, making any reconnection options useless. Next major version of the driver will remove isConnected entirely.
So:
- reconnect tries
- reconnectInterval
- autoReconnect

Are deprecated and don't really do anything anymore (when unified topology is used at least) other than causing warnings at startup since the 3.4 version of the driver (the current version used by NodeBB is 3.5).

Reference: http://mongodb.github.io/node-mongodb-native/3.5/reference/unified-topology/
5 years ago
Andrew Rodrigues 3c9689a5ac
feat: settings sorted list (#8170)
* feat: settings sorted list

see https://github.com/NodeBB/nodebb-plugin-quickstart/pull/9/files for sample
5 years ago
Julian Lam 667608a02c fix: #8168 re-allowing slashes in homePageRoute
Resolves regression introduced by b0f3e48ac2
5 years ago
Julian Lam eddbd86837 fix: tweak to session validation in addHeaders 5 years ago
Barış Soner Uşaklı 630f5d5b85 fix: only call clearCookie for logged in users 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ı 5a0c7c1497 fix: register 5 years ago
Barış Soner Uşaklı e74954407f fix: #8157, update recent tid when post is moved 5 years ago
Barış Soner Uşaklı b73aa84ddc fix: tests 5 years ago
Barış Soner Uşaklı dd3893b134 fix: move start/stop every iteration 5 years ago
Barış Soner Uşaklı 4abe5eb7ff Revert "fix: #8154, move start/stop every iteration"
This reverts commit 300c04cef9.
5 years ago
Barış Soner Uşaklı 300c04cef9 fix: #8154, move start/stop every iteration 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ı 03a02e5d1d fix: #8155, don't validate name on update if groupName didn't change 5 years ago
Baris Usakli 236e1e6859 fix: return correct number of suggested topics 5 years ago
Julian Lam 398f0120b8 fix: logic for determining dailyStats hour vars
Reverts 9ecdb92f7c and fixes it
properly.
5 years ago
Julian Lam 9ecdb92f7c fix: fix daily analytics being one day off 5 years ago
Julian Lam 0b9ad416cb fix: remove debug line 5 years ago
Julian Lam 79737c53fd feat: guard against accidental ommision
...of analytics: prefix in get*StatsForSet methods
5 years ago
Julian Lam d6e3f3f058
fix: #8142, broken site if no server-side session (#8148)
* fix: #8142, broken site if no server-side session

During the `addHeader` middleware, a check is now done to see if
`req.session.meta` is present. This value is only present if the user
has a valid server-side session.  If it is missing, then it is probably
safe to assume that the server-side session was deleted (either
intentionally or accidentally). In that scenario, the client-side cookie
should be cleared.

Also, there was an issue where the sessionRefresh flag was never cleared
after a successful login, so that was fixed too.

* feat: exported method to get cookie config

* fix: don't clear cookie if cookie is being set

* fix: socket.io tests

Co-authored-by: Barış Soner Uşaklı <barisusakli@gmail.com>
5 years ago
Julian Lam 0885ec6858 fix: #8144 pluginHooks in maintenance mode middleware 5 years ago
Barış Soner Uşaklı a5ef6b53b8 fix: admin relogin 5 years ago
Barış Soner Uşaklı c35a21d7f0 fix: #8135 5 years ago
Baris Usakli 1e50616c13 fix: handle mkdirp0.5->1.0x so it doesn't break upgrade 5 years ago
Baris Usakli 87225a90c3 fix: #8134, upgrade mkdirp to 1.0.x 5 years ago
Julian Lam b959c24a2b Merge branch 'master' of github.com:NodeBB/NodeBB 5 years ago
Julian Lam 111ed802cf fix: onSuccessfulLogin not working
In scenarios where onSuccessfulLogin was not called in the SSO plugin,
core's calling of onSuccessfulLogin was prematurely returning, because
it was checking the wrong value.

This commit fixes the issue by checking a different value.
5 years ago
Barış Soner Uşaklı 8c48f94b96 fix: #8139, dont allow restore if not deleted by self 5 years ago
Barış Soner Uşaklı 9969dd6335 fix: use view_deleted when filtering, closes #8137 5 years ago
Barış Soner Uşaklı d927b763c1 fix: escape invalid rules 5 years ago
Barış Soner Uşaklı 3cca929a88 fix: add missing await 5 years ago
Barış Soner Uşaklı 0ae1eb4f6e fix: missing await in SocketPosts.changeOwner 5 years ago
Barış Soner Uşaklı 23810cc64b fix: #8133, check if user is in room before removing 5 years ago
Barış Soner Uşaklı 30c503611c refactor: messaging 5 years ago
Barış Soner Uşaklı cd1fa27a8b fix: add missing await 5 years ago
Barış Soner Uşaklı ee4304b443 Merge branch 'master' of https://github.com/NodeBB/NodeBB 5 years ago
Barış Soner Uşaklı f799f017ab fix: missing await 5 years ago
Baris Usakli 418c174d56 fix: dont return flag data to client 5 years ago
Barış Soner Uşaklı 51236df4ed fix: check if user has read priv before flagging 5 years ago
Barış Soner Uşaklı 1f13ab8a19 fix: restrict getUsersInRoom to members 5 years ago
Julian Lam 594cd7e176 fix: #8127 user join system message duplicated
- Now showing user-join message for chat owner in addition to the newly
  added user
- If a modal already exists for a room when createModal is called, don't
  return null, return the modal
5 years ago
Barış Soner Uşaklı bfaba89557 Merge branch 'master' of https://github.com/NodeBB/NodeBB 5 years ago
Julian Lam 8bb5e71ebe fix: typo in #8116 5 years ago
Julian Lam 3fac09b1ab fix: build step defaults to series instead of parallel
- The logic for the build step now defaults to series instead of
  parallel, unless more than 4 CPU cores are detected by the os
  library.
- The `--series` flag still exists, and will enforce build in
  series, as before.
5 years ago
Julian Lam 8e5a2276af
feat: check flag values on save (assignee and state) (#8122)
* feat: add assignee checking when updating flag

Prior to this, it was possible to update the assignee to any value (or
any user. This commit adds checking to allow only admins, global
moderators, or in the case of flagged posts, moderators.

Also some prep work was added for value checking `state`.

* feat: value checking `state` on flag update

The state should be one of the constants defined earlier in the file.
5 years ago
Barış Soner Uşaklı 6a63c1a100 fix: escape system message, don't allow editing system messages 5 years ago
Barış Soner Uşaklı 8c6a7954cf fix: delete upload 5 years ago
Barış Soner Uşaklı 153b1a0eaa fix: check uploadName 5 years ago
Barış Soner Uşaklı 01d1ae78c8 fix: #8120, bubble errors from static hooks 5 years ago
Barış Soner Uşaklı b0f3e48ac2 fix: escape bootswatchSkin and homepageRoute 5 years ago
Barış Soner Uşaklı 3e52557689 fix: change owner missing await 5 years ago
Barış Soner Uşaklı e3952674ba fix: hsts always enabled 5 years ago
Barış Soner Uşaklı b7a57996f7 fix: escape topic.thumb 5 years ago
Baris Usakli 842916ea42 Merge branch 'master' of https://github.com/NodeBB/NodeBB 5 years ago
Baris Usakli 4eb9652a2a fix: #8112, don't crash hook returns no data 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
Opliko 879acc85ae Add disable/enable category to category edit page (#8118) 5 years ago
Barış Soner Uşaklı e06c1bfcd2 fix: escape config.userLang/acpLang, don't allow invalid language codes 5 years ago
Barış Soner Uşaklı 61da8c29ac fix: group create/join/update name validation 5 years ago
Barış Soner Uşaklı 48f086279c fix: don't crash if groupData is missing 5 years ago
Barış Soner Uşaklı 5a8217de01 fix: #8105, fix export json on page load 5 years ago
arite 527745310d fix: #8103, fix advanced menu not displaying in ACP 5 years ago
Barış Soner Uşaklı 10989cccaa fix: meta description missing if url doesn't have post index 5 years ago
Barış Soner Uşaklı 9d074731f4 fix: login with weak password 5 years ago
Barış Soner Uşaklı f6d7a24a67 fix: dont check password strength on login 5 years ago
Barış Soner Uşaklı dec157d606 fix: #8085, fix cookie name 5 years ago
Barış Soner Uşaklı a227cbe328 refactor: async/await middleware 5 years ago
Barış Soner Uşaklı 1b992d8201 fix: #8058, fix incorrect digest setting display in ACP 5 years ago
Peter Jaszkowiak 8c314fe461 Support allowing classes
Otherwise `<input class="form-control">` can't work
5 years ago
Baris Usakli 3454a24b3c refactor: change to const/let 5 years ago
Baris Usakli a8df6d6298 fix: #8078, dont mark notifications read without a mergeId 5 years ago
Baris Usakli 7af1c873a3 fix: #8077, show continue chat on all profile pages 5 years ago
Julian Lam 4fc6944377 feat: better output for cli plugins list, closes #8075 5 years ago
Barış Soner Uşaklı 2679f37dec fix: profile showing posts from deleted topics 5 years ago
Barış Soner Uşaklı 05c9fe2735 feat: #5272, allow changing user groups from manage users page 5 years ago
Baris Usakli 4d66978338 fix: #8073, configurable necroThreshold 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
Julian Lam f9a8ebfce9 feat: merge social authentication into plugins menu in ACP
* also reordered the menu in ACP so plugins come first
* added muted headers in desktop version to distinguish both lists
* fixes julianlam/nodebb-plugin-sso-google#21
* closes #8066
5 years ago
Barış Soner Uşaklı 1bda92e3fc fix: #8064, break-word on post-queue 5 years ago
Barış Soner Uşaklı de404102c0 fix: #8061, don't crash if there is a network problem 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 510737726c fix: unhandled promise rejection error on reset error
Also, removed buildAll() on reset.
5 years ago
Baris Usakli 366ad5cd69 fix: #8050, fix redirect after registration 5 years ago
Opliko 0efe27b1f2 fix: make _csrf a secure cookie if the website is using https (#8045)
* Make _csrf a secure cookie if the website is using https

* fix style for TravsCI

* Add `url_parsed` to databasemock
5 years ago
Baris Usakli 0a96c92300 fix: #8034 5 years ago
Baris Usakli cec0079573 refactor: shorter returns 5 years ago
Baris Usakli efd1e88bbf feat: convert middleware.isAdmin to async/await 5 years ago
Baris Usakli a254520485 fix: serialize 5 years ago
Baris Usakli 1eca5b3dae fix: show login fields if user has local password 5 years ago
Ben Lubar f65922297d fix abysmal postgresql performance in getSortedSetsMembers (#8030)
* refactor postgres upgrade function to use async

* add function wrapper for getting the elements of a sorted set to avoid postgres planning the query with a nested sequential scan

* fix fatal(?!) lint errors

* add missing await

* bump PostgreSQL version on Travis CI to one that isn't over 3 years out of date
5 years ago
Barış Soner Uşaklı eabc6f4763 fix: crash if post doesn't have topic data 5 years ago
Barış Soner Uşaklı e52ecfaf3f fix: don't touch objects that don't have the required fields 5 years ago
Barış Soner Uşaklı f4381ba366 fix: add missing await to sendValidationEmail 5 years ago
Julian Lam dee1d44722 fix: #8007 added tfoot to clear new group button 5 years ago
Julian Lam df139928b6
feat: displaying one-click unsubscribe link in email footer (#8024)
closes #8016
5 years ago
Barış Soner Uşaklı 480a64aaa7 feat: #7467, pass query params when redirecting to posts 5 years ago
Barış Soner Uşaklı b5a30006e2 feat: use helpers.setupAdminPageRoute 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ı 0037a03886 fix: #8018, allow absolute urls in notification.path 5 years ago
Barış Soner Uşaklı 59242d31aa fix: #8010, fix isBanned call 5 years ago
Barış Soner Uşaklı ac5c560c54 feat: add action:messaging.save 5 years ago
Barış Soner Uşaklı c4e58160cf fix: #8003, check children recursively 5 years ago
Barış Soner Uşaklı b91c4790d1 fix: dont show delete topics on unread 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
Barış Soner Uşaklı 0e5e47f410 fix: parseInt cutoff 5 years ago
Barış Soner Uşaklı e020b85bf5 feat: add filter:topics.unreadCutoff 5 years ago
Opliko 989107d9b5 feat: Add filter:topic.delete and filter:topic.restore (#7946) (#7989)
* Add filter:topic.delete

* Don't return undefined data

* add topic.restore and pass canRestore to filter

* fix some bugs created by conflict resolution and new changes

* more readable hook

* fix styling for TravisCI

* literally just two newlines so that TravisCI builds again
5 years ago
Julian Lam cf7e0cfd2d
feat: no more session cookie for guests (#7982)
* feat: no more session cookie for guests

* fix(tests): added additional tests and fixed the broken test
5 years ago
Opliko df1efe5f96 feat: Implement WICG change-password-url (#7072) (#7990)
* feat:  Implement WICG change-password-url (#7072)

* fix style for TravisCI
5 years ago
uplift 1aa520b7a0 parseInt uid in room users check (#7988)
nodebb-write-api fails this check without parsing into an int
5 years ago
Barış Soner Uşaklı b01a47cbc1 feat: log errors from mubsub 5 years ago
Barış Soner Uşaklı d679218859
feat: upgrade to sitemap5 (#7980) 5 years ago
Barış Soner Uşaklı f9f85fc425
fix: cli/reset.js (#7979) 5 years ago
Julian Lam ddf3812cdc fix: passwords always expiring upon login 5 years ago
Barış Soner Uşaklı d72b0d1616 fix: delete follower/followingCount as well 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 990508a533 feat: closes #7952, translate widget-settings 5 years ago
Baris Usakli 554e67116f feat: remove ability to delete events from acp 5 years ago
Barış Soner Uşaklı 3775301f24 fix: #7958, give rewards one by one
no need to check group.exists when leaving groups, if group doesn't exists isMember will be false anyways
5 years ago
Barış Soner Uşaklı 88818a5bbf fix: rewards page acp not loading rewards 5 years ago
Baris Usakli f272daaf37 fix: #7960, dont try to save size for non images 5 years ago
Barış Soner Uşaklı 03827fa695 feat: resetting theme will reset skin
async/await cli/reset
5 years ago
Barış Soner Uşaklı 565f9726f7 fix: #7941, validate some input fields 5 years ago
Barış Soner Uşaklı 661a0f5068 fix: don't show deleted topics on unread 5 years ago
Baris Usakli 6b3eb0144e refactor: use arrow function 5 years ago
Baris Usakli c01b0fbd8c fix: #7951, don't send notification for system messages 5 years ago
Baris Usakli 5b458fc7ca fix: #7953, allow icon only group badges 5 years ago
Barış Soner Uşaklı ac4a500402 fix: remove 0 fields 5 years ago
Barış Soner Uşaklı 75bcb0f484 fix: remove unused data from post/topic/user hashes 5 years ago
Barış Soner Uşaklı 205d3f9d12 fix: groups not visible on widget panes 5 years ago
Barış Soner Uşaklı c5f7b66c3a fix: new nav items will show group select 5 years ago
Barış Soner Uşaklı 7823144bd9 fix: #7940, run upgrade scripts on startup 5 years ago
Barış Soner Uşaklı 38322ec308 fix: #7949, delete old user notifs 5 years ago
Barış Soner Uşaklı f983f536c6 fix: check threshold before setting bookmark 5 years ago
Barış Soner Uşaklı 4e28e575cf fix: mongo collection stats 5 years ago
Barış Soner Uşaklı 02d38caf47 refactor: async/await 5 years ago
Baris Usakli 91e8e3905c fix: #7947, disable unused cookie 5 years ago
Barış Soner Uşaklı c9bf6d0fe1 fix: #7945, show watched categories in ignored categories 5 years ago
Barış Soner Uşaklı f8c8038a06 refactor: remove log, topics.exists 5 years ago
Barış Soner Uşaklı 18bf865d83 fix: db.init calls 5 years ago
Barış Soner Uşaklı dc8d721c46 refactor: async/await 5 years ago
Barış Soner Uşaklı 1f0c6f3d60 refactor: async/await mongo 5 years ago
Baris Usakli d5dda26f97 fix: #7938, escape username in registration queue 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ı c5ffd8cc74 refactor: async/await image.js 5 years ago
Barış Soner Uşaklı 41f8da2e7c fix: fix the order of groups on user profile 5 years ago
Barış Soner Uşaklı b192605450 feat: add new hook to get custom category tids for unread 5 years ago
Barış Soner Uşaklı 05e753c73b refactor: remove var 5 years ago
Aziz Khoury 94810fd637 feat: adding filter:login.check and loginFormEntry[] for the filter:login.build hook (#7861)
* adding filter:login.check and loginFormEntry[] for the filter:login.build hook, related to nodebb-plugin-spam-be-gone/issues/32

* do not exceed 50 lines per function

* spam-be-gone@0.6.4
5 years ago
Barış Soner Uşaklı 10f168b824 fix: #7934, return tids 5 years ago
Barış Soner Uşaklı 3caa387ac6 fix: tests 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
Baris Usakli b93c826d35 feat: add new hook filteR:topics.getSortedTids
to let plugins replace the logic used to retrieve tids
5 years ago
Barış Soner Uşaklı 13c870597e fix: picture not showing up in change modal 5 years ago
Barış Soner Uşaklı 7effc89291 fix: profile page meta tags getting escaped twice 5 years ago
Barış Soner Uşaklı 9a7560049a feat: bypass cropper for gifs 5 years ago
Barış Soner Uşaklı ffe3670ff5 feat: deprecate file.isFileTypeAllowed
use image.isFileTypeAllowed, this function was always meant for images
5 years ago
Barış Soner Uşaklı ed1223645e feat: send notification to group owners when someone leaves 5 years ago
Baris Usakli 2150701f32 fix: missing await 5 years ago
Baris Usakli ac6eb31c69 refactor: async/await flags.js 5 years ago
Barış Soner Uşaklı 0ced71be39 refactor: async/await flags 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ı 22b02f1407
feat: add failing test for pagination (#7924)
* feat: add failing test for pagination

* feat: test

* fix: redis tests

* refactor: remove logs
6 years ago
Barış Soner Uşaklı 572bc29742 refactor: shorter map 6 years ago
Barış Soner Uşaklı 039710493a refactor: remove logs 6 years ago
Barış Soner Uşaklı b602c04463 feat: refactor getSortedSetRange to allow big arrays 6 years ago
Barış Soner Uşaklı 7e7ea7a697 refactor: dont modify key 6 years ago
Barış Soner Uşaklı 1f054c7ecb fix: redis tests 6 years ago
Baris Usakli a651d154ce fix: #7921, dont create wrong entries in db for flag
upgrade script to remove wrong entries
6 years ago