Barış Soner Uşaklı
20e751f0e8
fix: remove optional
2026-04-03 22:04:59 -04:00
Barış Soner Uşaklı
0568ef4310
fix : #14147 , dont create wrong backlinks
...
syncBacklinks expects raw post content, html was passed to it from onNewPost since it was switched to use getPostSummary
backlinkRegex was matching ${nconf.get('url')}/topic/1aef954c-d0dc-45cf-acf2-e3a59f6cc134/foo and return tid=1 instead of the uuid
remove useless if check in syncBacklinks
fixed parseInts on tids
current - remove are both arrays use .length
2026-04-03 21:54:18 -04:00
Julian Lam
1af835641e
fix: restored popular calculation behaviour that was broken by e2131d1d2e, removed followingOnly arg passing for popular
2026-03-13 13:19:32 -04:00
Julian Lam
e2131d1d2e
refactor: /world sorting logic to always use topics/sorted logic
...
- New params for getSortedTopics (includeRemote, followingOnly)
- Ability to show latest (followers only) or latest (all), ?all query param to discriminate
- World now always shows posts from the local forum
- Popular sort will be followers-only + local
2026-03-13 12:41:55 -04:00
Barış Soner Uşaklı
dcdb73c303
Merge branch 'master' into develop
2026-03-11 17:21:38 -04:00
Barış Soner Uşaklı
0a94cecb0d
fix : #14084 , fix tags not getting properly removed from topics
...
this was happening because the same topic was passed to setObject bulk multiple times with different tag data.
the fix is to find the uniq tids first and then only call setObjectBulk once per topic
2026-03-11 17:21:06 -04:00
Julian Lam
c2d190e107
fix: update thumbs loading logic to always include post attachments as part of thumbs (prior: was controlled by thumbsOnly flag orshowPostUploadsAsThumbnail setting)
2026-03-09 14:34:42 -04:00
Barış Uşaklı
3c0a654012
feat: show cronjobs in acp ( #14068 )
...
* feat: show cronjobs in acp
add a wrapper for cronjobs and display in acp
* test: add running to spec
* test: fix running, simplify calls
* test: prevent crash on stopJob
2026-03-06 20:42:38 -05:00
Barış Soner Uşaklı
0be4081049
fix : #14062 recipients is normal set
2026-03-05 14:01:57 -05:00
Barış Soner Uşaklı
1fc3edf764
fix: closes #14062
...
on topic purge remove them from uid:<uid>:inboxes
upgrade script to cleanup inboxes
2026-03-05 13:44:10 -05:00
Barış Soner Uşaklı
88b91c20d9
refactor: move resolve flags and activitypub.out.remove.context
...
after topic deletion
2026-03-03 12:54:14 -05:00
Barış Soner Uşaklı
92c0bd8f41
feat: allow callers to parse topic teasers
...
in different types
2026-02-28 21:00:05 -05:00
Julian Lam
6472462924
fix: remove allowed check from notes.assert as it is already done downstream in topics.(post|reply), update privilege check to inherit world privs if passed-in cid is remote cid
2026-02-26 22:40:19 -05:00
Barış Uşaklı
e4c945f636
refactor: allow passing an array to topics.purge and topics.purgePost… ( #14018 )
...
* refactor: allow passing an array to topics.purge and topics.purgePostsAndTopic
deprecate action:topic.purge, add action:topics.purge with array of deleted topics
update usage of topics.purge to pass in an array
fix an issue in posts/delete where cids were passed to parseInt, caused AP cids to get saved into category:NaN
* lint
* refactor: change style
* use array of tids
2026-02-26 13:09:42 -05:00
Barış Soner Uşaklı
de1f04d9d8
refactor: dont store ap pids in posts:pid
...
new zset postsRemote:pid
in topic purge only make 1 db call to reduce counters
2026-02-24 17:36:17 -05:00
Barış Soner Uşaklı
e484899db2
fix: topic purge
2026-02-24 10:52:30 -05:00
Barış Soner Uşaklı
e8ef2e5c55
fix: dont store ap tids in topics:tid
...
create new zset topicsRemote:tid
upgrade script to copy over ap tids
2026-02-24 10:47:59 -05:00
Barış Soner Uşaklı
a1c425ceab
dont call pushCount if there are no nids
2026-02-22 21:39:55 -05:00
Barış Soner Uşaklı
0424728f7e
refactor: pass options to thumbs.load
...
so we can control thumbsOnly
2026-02-20 08:07:21 -05:00
Julian Lam
45d2e628dd
fix: only call syncUserInboxes on post create if local uid creates post in cid -1
2026-02-17 11:26:13 -05:00
Julian Lam
5da35bdadd
fix: call syncUserInboxes asyncronously
2026-02-17 11:26:13 -05:00
Julian Lam
5df2b8b785
feat: quick create on world page
...
This commit removes title requirement checks in NodeBB and updates the
topic creation logic so that incoming topic creation API requests
without a title just generate a title (like they already do for incoming
AP content.)
2026-02-17 11:26:13 -05:00
Barış Soner Uşaklı
8c6ce198e1
feat: allow configuring unreadCutoff per user, closes #6811
2026-02-16 22:57:00 -05:00
Barış Soner Uşaklı
a8a85bcb0b
refactor: shorter hook
2026-02-16 12:04:11 -05:00
Barış Soner Uşaklı
1ca9841ce5
fix: dont call getInbox for /recent
...
make sure there are no dupes if called
2026-02-13 12:26:54 -05:00
Julian Lam
fe8fd9d6e5
fix: gate crossposting behind new topics:crosspost privilege
2026-02-12 15:13:59 -05:00
Barış Uşaklı
c65af19985
refactor: add createFieldChecker ( #13973 )
...
* refactor: add createFieldChecker
* refactor: use hasField in topic/data.js
* refactor: use hasField in categories/data.js
* test: fix category nickname logic
* test: fix spec
2026-02-11 11:38:03 -05:00
Barış Uşaklı
62d88555ae
feat: eslint10 ( #13967 )
...
* feat: eslint10
* lint: no-useless-assignment
2026-02-10 12:39:11 -05:00
Barış Soner Uşaklı
52f1c7372c
remove generatedTitle from hash, its added later
2026-02-09 14:01:59 -05:00
Julian Lam
0fbaa937e4
Refactor /world page, closes #13927 ( #13954 )
...
* refactor: wholesale UI/data refactor of world to display in feed-like format
* fix: openapi schema
* fix: remove console log
* fix: restrict 'generatedTitle' from being passed-in via topics API
* fix(deps): bumping themes for world refactor support
* fix: /world title and description update
* fix: missing handleIgnoreWatch in world client side js
2026-02-06 14:07:25 -05:00
Barış Soner Uşaklı
065abbf249
refactor: get rid of cache for tid posters, was never cleared
2026-02-03 20:20:30 -05:00
Barış Soner Uşaklı
5c15a0db7d
Merge branch 'master' into develop
2026-01-25 19:45:31 -05:00
Barış Soner Uşaklı
f98de3e985
fix: closes #13899
2026-01-25 19:45:23 -05:00
Barış Soner Uşaklı
fe081ebd7b
Merge branch 'master' into develop
2026-01-23 12:35:35 -05:00
Julian Lam
eb27b96430
fix: notes announce cache, use cache when retrieving tid posters
2026-01-21 12:53:41 -05:00
Barış Soner Uşaklı
7bc9fe3b75
refactor: dont include scheduled topics in unread
2026-01-20 21:08:38 -05:00
Barış Soner Uşaklı
beb3f8ff94
Merge branch 'master' into develop
2026-01-20 20:15:07 -05:00
Barış Soner Uşaklı
2ba8907ac8
refactor: tags were moved into topic hash a while ago
2026-01-20 11:57:22 -05:00
Julian Lam
0c79eaa529
feat: topic crossposts generate topic events, #13908
2026-01-19 19:06:29 -05:00
Barış Soner Uşaklı
57a73c4854
refactor: crossposts.get to support multiple tids
2026-01-14 18:47:52 -05:00
Julian Lam
bcc204fa93
fix: derp
2026-01-12 15:42:33 -05:00
Julian Lam
2f96eed4af
fix: guard against negative uids crossposting
2026-01-12 14:07:45 -05:00
Julian Lam
82507c0fb1
fix: calling sortedSetRemove to remove multiple values, instead of baking it into sortedSetRemoveBulk
2026-01-12 12:55:18 -05:00
Julian Lam
b9b33f9f8d
fix: unused values
2026-01-12 12:55:18 -05:00
Julian Lam
47e37ed571
test: intify uid/cid if they are numbers (when getting crossposts)
2026-01-12 12:55:18 -05:00
Julian Lam
148663c536
fix: update auto-categorization rules to also handle already-categorized topics via crosspost
2026-01-12 12:55:18 -05:00
Julian Lam
f6cc556d37
fix: topic crosspost delete and purge handling
2026-01-12 12:55:18 -05:00
Julian Lam
0a0a7da9ba
fix: bug where privileges users could not uncrosspost others' crossposts. Tests
2026-01-12 12:55:18 -05:00
Julian Lam
b981082dd7
fix: removed ajaxify refresh on crosspost commit, dynamically update post stats in template, logic fix
2026-01-12 12:55:18 -05:00
Julian Lam
349b087502
refactor: crossposts.get to return limited category data (name, icon, etc.), fixed up crosspost modal to hide uncategorized and all categories options
2026-01-12 12:55:18 -05:00