mirror of
				https://github.com/NodeBB/NodeBB.git
				synced 2025-10-31 02:55:58 +01:00 
			
		
		
		
	feat: execute 1b12 rebroadcast logic on all tids even if not posted to a local cid
This commit is contained in:
		| @@ -3,6 +3,7 @@ | ||||
| const nconf = require('nconf'); | ||||
|  | ||||
| const posts = require('../posts'); | ||||
| const topics = require('../topics'); | ||||
| const utils = require('../utils'); | ||||
|  | ||||
| const activitypub = module.parent.exports; | ||||
| @@ -13,8 +14,16 @@ Feps.announce = async function announce(id, activity) { | ||||
| 	if (String(id).startsWith(nconf.get('url'))) { | ||||
| 		({ id: localId } = await activitypub.helpers.resolveLocalId(id)); | ||||
| 	} | ||||
| 	const cid = await posts.getCidByPid(localId || id); | ||||
| 	if (cid === -1 || !utils.isNumber(cid)) { // local cids only | ||||
|  | ||||
| 	/** | ||||
| 	 * Re-broadcasting occurs on | ||||
| 	 *  - local cids (for all tids), and | ||||
| 	 *  - local tids (posted to remote cids) only | ||||
| 	 */ | ||||
| 	const tid = await posts.getPostField(localId || id, 'tid'); | ||||
| 	const cid = await topics.getTopicField(tid, 'cid'); | ||||
| 	const shouldAnnounce = (utils.isNumber(cid) && cid > 0) || utils.isNumber(tid); | ||||
| 	if (!shouldAnnounce) { // inverse conditionals can kiss my ass. | ||||
| 		return; | ||||
| 	} | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user