Escape special characters in email query (#25079)
This commit is contained in:
1 parent
c6ec42e735
commit
5267f8c3c1
1 file changed
+4
-1
@@ -553,8 +553,11 @@ export default class SalesforceCRMService implements CRM {
|
||||
setFallbackToContact?: boolean;
|
||||
conn: Connection;
|
||||
}) {
|
||||
// Escape SOSL reserved characters: ? & | ! { } [ ] ( ) ^ ~ * : \ " ' + -
|
||||
// eslint-disable-next-line no-useless-escape
|
||||
const escapedEmail = email.replace(/([?&|!{}[\]()^~*:\\"'+\-])/g, "\\$1");
|
||||
const searchResult = await conn.search(
|
||||
`FIND {${email}} IN EMAIL FIELDS RETURNING Lead(Id, Email, OwnerId, Owner.Email), Contact(Id, Email, OwnerId, Owner.Email)`
|
||||
`FIND {${escapedEmail}} IN EMAIL FIELDS RETURNING Lead(Id, Email, OwnerId, Owner.Email), Contact(Id, Email, OwnerId, Owner.Email)`
|
||||
);
|
||||
|
||||
if (searchResult.searchRecords.length === 0) {
|
||||
|
||||
Reference in new issue
Block a user