mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-10-26 16:46:12 +01:00
fix: #11664, dont create backlinks for quotes
This commit is contained in:
@@ -373,8 +373,13 @@ module.exports = function (Topics) {
|
||||
throw new Error('[[error:invalid-data]]');
|
||||
}
|
||||
|
||||
|
||||
let { content } = postData;
|
||||
// ignore lines that start with `>`
|
||||
content = content.split('\n').filter(line => !line.trim().startsWith('>')).join('\n');
|
||||
// Scan post content for topic links
|
||||
const matches = [...postData.content.matchAll(backlinkRegex)];
|
||||
const matches = [...content.matchAll(backlinkRegex)];
|
||||
console.log('match', matches);
|
||||
if (!matches) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -1163,6 +1163,28 @@ describe('Post\'s', () => {
|
||||
assert(backlinks);
|
||||
assert.strictEqual(backlinks.length, 0);
|
||||
});
|
||||
|
||||
it('should not detect backlinks if they are in quotes', async () => {
|
||||
const content = `
|
||||
@baris said in [ok testing backlinks](/post/32145):
|
||||
> here is a back link to a topic
|
||||
>
|
||||
>
|
||||
> This is a link to [topic 1](${nconf.get('url')}/topic/1/abcdef
|
||||
|
||||
This should not generate backlink
|
||||
`;
|
||||
const count = await topics.syncBacklinks({
|
||||
pid: 2,
|
||||
content: content,
|
||||
});
|
||||
|
||||
const backlinks = await db.getSortedSetMembers('pid:2:backlinks');
|
||||
|
||||
assert.strictEqual(count, 0);
|
||||
assert(backlinks);
|
||||
assert.strictEqual(backlinks.length, 0);
|
||||
});
|
||||
});
|
||||
|
||||
describe('integration tests', () => {
|
||||
|
||||
Reference in New Issue
Block a user