Commit Graph

1131 Commits

Author SHA1 Message Date
Barış Soner Uşaklı
6f6cfb1a5a fix: update follower/following counts after removing uid from zsets
use batch instead of async.each
2024-06-19 10:15:31 -04:00
Barış Soner Uşaklı
023d52a31c perf: get rid of async call in user load for expiring bans
unban all expires in one call
2024-06-11 17:42:06 -04:00
Barış Soner Uşaklı
1dadd16f4b perf: call getIconbackgrounds once
instead of 20x on topic/topic list load
2024-06-11 17:20:31 -04:00
Barış Soner Uşaklı
bad1564301 refactor: closes #12629, allow passing arrays to meta.userOrGroupExists 2024-06-10 16:59:55 -04:00
Barış Soner Uşaklı
7c2a3a6e13 test: fix test only set for spiders 2024-06-06 13:17:22 -04:00
Barış Soner Uşaklı
9d74539a4e fix: set uid in case its spider(-1), closes #12621 2024-06-06 11:34:57 -04:00
Barış Soner Uşaklı
325d00ea94 feat: track uid for email/username changes, closes #12454 2024-04-29 10:32:07 -04:00
Barış Soner Uşaklı
af205cc48a feat: closes #12477, allow editing moderation notes 2024-04-24 11:10:04 -04:00
Barış Soner Uşaklı
57422420a2 test: fix redis tests 2024-04-23 13:42:14 -04:00
Barış Soner Uşaklı
c73f759cf1 test: add back timestamp 2024-04-23 13:23:20 -04:00
Barış Soner Uşaklı
7d24b04b3b feat: parse moderation notes as markdown
https://github.com/NodeBB/NodeBB/issues/12477
2024-04-23 13:00:47 -04:00
Barış Soner Uşaklı
b429045ff6 feat: closes #12490, show profile flags on account info page 2024-04-23 12:39:51 -04:00
Barış Soner Uşaklı
985663faae feat: closes #12491, add unban & unmute history
to account/info page
2024-04-23 11:16:04 -04:00
Barış Soner Uşaklı
d599493057 Merge branch 'master' into develop 2024-04-15 12:13:20 -04:00
Barış Soner Uşaklı
d2e042d15b refactor: add new hooks for notifications/websockets
filter:sockets.sendNewNotificationToUid - fires before emitting "event:new_notification"

filter:sockets.sendNewPostToUid - fires before emitting "event:new_post"

filter:sockets.sendNewTopicToUid - fires before emitting "event:new_topic"

filter:user.toggleFollow- fires before follow/unfollow
2024-04-15 11:31:27 -04:00
Barış Soner Uşaklı
3042cf02d1 Merge branch 'master' into develop 2024-04-11 16:46:01 -04:00
Barış Soner Uşaklı
afe597a275 feat: #12495, add unblock button to users on /blocks 2024-04-11 16:18:42 -04:00
Barış Soner Uşaklı
0b1f2546c8 fix: #12471, remove readable strings
they are not localized properly
2024-04-07 11:10:15 -04:00
Barış Soner Uşaklı
3aae92341c fix: change digest to use posts sorting first
to use the new popular ranking algo. also fixes empty digests if there are no new topics created in the past 24 hours but there are topics with posts
2024-04-02 11:32:41 -04:00
Barış Soner Uşaklı
8f9ac5c17a feat: move all user profile pics to folder, closes #12449 (#12450)
* feat: move all user profile pics to folder

get rid of glob delete and just delete the uid-{uid} folder when deleting user images

* when exporting user uploads add all profile uploads

* uid check
2024-03-28 16:50:56 -04:00
Barış Soner Uşaklı
83ca23ca37 feat: allow custom fields in user csv export, closes #12401 2024-03-11 11:29:05 -04:00
Barış Soner Uşaklı
2a9b0a3c9c feat: add new sorting option to categories
add new zset for category topics
fix sorting names
2024-03-04 16:06:04 -05:00
Barış Soner Uşaklı
7207814b90 feat: add hook into user.posts.isReady
can be used to disable post delays or apply custom logic
closes https://github.com/NodeBB/NodeBB/pull/12367
2024-02-27 09:20:44 -05:00
Barış Soner Uşaklı
b905013950 fix: closes #12185, fix cli user password reset
refactor session get/destroy
2023-11-28 20:58:07 -05:00
Barış Soner Uşaklı
fdff165e2b feat: closes #12154, add exempt groups
for new user restrictions
2023-11-07 12:36:40 -05:00
Barış Soner Uşaklı
84fed97b41 feat: add tracking categories and make watching send notifications (#12147)
* feat: add tracking categories and make watching send notifications

upgrade script to change the defaults

* add missing spec

* test: one more spec
2023-11-03 12:49:17 -04:00
Barış Soner Uşaklı
d8d26c9f57 feat: add new lang string for minutes 2023-10-31 11:32:43 -04:00
Barış Soner Uşaklı
844cb91beb feat: update all language keys to use - instead of _ (#12059)
* feat: update all language keys to use - instead of _

* refactor: update language keys
2023-10-05 12:48:50 -04:00
Barış Soner Uşaklı
56794cf869 fix: only show emailChanged alert for self 2023-10-03 20:16:01 -04:00
Barış Soner Uşaklı
40d290c1a9 Tag follow (#12041)
* feat: tag follow

* on tag delete remove it from following users

* feat: on tag rename update user followed tags

and move the

* add new filter on /notifications

* feat: openapi updates

* chore: up themes

* chore: up peace

* refactor: remove unused title
2023-09-27 10:57:00 -04:00
Julian Lam
e1bced8c2c fix: move database call used to associate a NodeBB session UUID to its express session id into user.auth.addSession, which is the only time it is called 2023-09-11 15:08:45 -04:00
Barış Soner Uşaklı
4e5340d260 refactor: add targetUid to email-change event 2023-08-31 09:34:15 -04:00
Barış Soner Uşaklı
8db13d8e86 refactor: how admins change emails (#11973)
* refactor: how admins change emails

ability for admins to change emails from acp
ability for admins to change passwords from acp
only users themselves can use /user/<slug>/edit/email
group actions in manage users dropdown
admins can use the same modal from profile page instead of interstitial to update email
add missing checks to addEmail, if email take throw error
add targetUid to email change event

* test: bunch of baloney

* test: remove old test
2023-08-30 19:29:46 -04:00
Barış Soner Uşaklı
9534f9b9b9 feat: check mute when messaging, closes #11932 2023-08-19 17:15:06 -04:00
Barış Soner Uşaklı
fcc04ef376 use same settings for spiders 2023-08-16 19:49:21 -04:00
Julian Lam
4ca71f6354 fix: #11855, remove superfluous password challenge on admin email update (unless they're updating their own) 2023-07-31 17:45:38 -04:00
Opliko
8ac34f8e8e feat: password check hook (#11853)
* feat: filter:password.check hook

As requested on Discord, hopefully including all relevant user data

* fix: don't use caller uid

* feat: don't forward username separately
2023-07-30 19:18:21 -04:00
Barış Soner Uşaklı
eb0fcd3235 feat: closes #11812, add unread public rooms into digest 2023-07-18 13:12:06 -04:00
Barış Soner Uşaklı
9b901783fa Chat refactor (#11779)
* first part of chat refactor

remove per user chat zsets & store all mids in chat:room:<roomId>:mids
reverse uids in getUidsInRoom

* feat: create room button

public groups wip

* feat: public rooms

create chats:room zset
chat room deletion

* join socket.io room

* get rid of some calls that load all users in room

* dont load all users when loadRoom is called

* mange room users infinitescroll

dont load all members in api call

* IS for user list

ability to change groups field for public rooms
update groups field if group is renamed

* test: test fixes

* wip

* keep 150 messages

* fix extra awaits

fix dupe code in chat toggleReadState

* unread state for public rooms

* feat: faster push unread

* test: spec

* change base to harmony

* test: lint fixes

* fix language of chat with message

* add 2 methods for perf

messaging.getTeasers and getUsers(roomIds)
instead of loading one by one

* refactor: cleaner conditional

* test fix upgrade script fix

save timestamp of room creation in room object

* set progress.total

* don't check for guests/spiders

* public room unread fix

* add public unread counts

* mark read on send

* ignore instead of throwing

* doggy.gif

* fix: restore delete

* prevent entering chat rooms with

meta.enter

* fix self message causing mark unread

* ability to sort public rooms

* dont init sortable on mobile

* move chat-loaded class to core

* test: fix spec

* add missing keys

* use ajaxify

* refactor: store some refs

* fix: when user is deleted remove from public rooms as well

* feat: change how unread count is calculated

* get rid of cleaned content

get rid of mid

* add help text

* test: fix tests, add back mid

to prevent breaking change

* ability to search members of chat rooms

* remove

* derp

* perf: switch with  partial data

fix tests

* more fixes

if user leaves a group leave public rooms is he is no longer part of any of the groups that have access

fix the cache key used to get all public room ids

dont allow joining chat socket.io room if user is no longer part of group

* fix: lint

* fix: js error when trying to delete room after switching

* add isRoomPublic
2023-07-12 13:03:54 -04:00
Barış Soner Uşaklı
4045681aa7 fix: add ?page= to canonical urls
#11770
for spiders to use pagination
2023-06-30 20:51:03 -04:00
Barış Soner Uşaklı
daa5ac85e9 refactor: show both emails in user list
if user has a confirmed email and a pending email change show both in the acp
2023-06-26 20:33:28 -04:00
Barış Soner Uşaklı
d0e9eb2ca4 fix: dont add deleted users to users:online
dont set their lastonline field
2023-06-05 19:33:05 -04:00
Barış Soner Uşaklı
db3bff094e fix: #11679, fix username change
only effected usernames with special characters & quotes
2023-06-05 17:11:49 -04:00
Barış Soner Uşaklı
04998908ba Fixes for "validate email" & "send validation email" in ACP (#11677)
* confirmObj changes

dont expire confirm:<code>, add a expires field instead
dont expire confirm:byUid:<uid>

on admin manage users display the users email status
	1. verified
	2. verify email sent (pending)
	3. verify email sent (expired)
	4. no email entered

fix validate email in acp to use
	email in user:<uid> if they have one
	if not check if its in confirm:<code>
	if its not in above cant validate throw error

fix send validate email to use
	email in user:<uid> if they have one
	if not check if its in confirm:<code>
	if its not in above too cant validate throw error

* add back socket.io tests

* test: fix confirm tests

no longer using pexpire
return correct time left on token

* chore: update openapi

* fix: delete call

* test: mget test fixes

* test: fix tests
2023-06-05 12:12:48 -04:00
Barış Soner Uşaklı
afb684ebe7 Merge branch 'master' into develop 2023-05-25 09:20:23 -04:00
Barış Soner Uşaklı
3256fb30e7 fix: rimraf usage in user image delete
https://github.com/isaacs/rimraf/issues/275#issuecomment-1562402287
2023-05-25 09:12:02 -04:00
Barış Soner Uşaklı
ed15cbb06a feat: translate bodyShort
turns [[notifications:upvoted_your_post_in, test1, Vote *for* NodeBB :ballot_box_with_ballot:]]   into <strong>test1</strong> has upvoted your post in <strong>Vote *for* NodeBB :ballot_box_with_ballot:</strong>. so emoji plugin can parse emojis and they don't get escaped by translator client side
2023-05-21 15:54:18 -04:00
Barış Soner Uşaklı
a75fd636ad test: add missing tests 2023-05-11 20:21:57 -04:00
Barış Soner Uşaklı
aff6d20f9f test: fix digest test 2023-05-11 19:01:28 -04:00
Julian Lam
e94c58becd Merge remote-tracking branch 'origin/master' into develop 2023-05-10 12:12:19 -04:00