diff options
Diffstat (limited to 'app/notification.go')
-rw-r--r-- | app/notification.go | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/app/notification.go b/app/notification.go index 401675f4e..741dadd9a 100644 --- a/app/notification.go +++ b/app/notification.go @@ -1004,23 +1004,24 @@ func GetExplicitMentions(message string, keywords map[string][]string) *Explicit continue } + word = strings.TrimLeft(word, ":.-_") + if checkForMention(word) { continue } - // remove trailing '.', as that is the end of a sentence - foundWithSuffix := false - for _, suffixPunctuation := range []string{".", ":"} { - for strings.HasSuffix(word, suffixPunctuation) { - word = strings.TrimSuffix(word, suffixPunctuation) - if checkForMention(word) { - foundWithSuffix = true - break - } + foundWithoutSuffix := false + wordWithoutSuffix := word + for strings.LastIndexAny(wordWithoutSuffix, ".-:_") != -1 { + wordWithoutSuffix = wordWithoutSuffix[0 : len(wordWithoutSuffix)-1] + + if checkForMention(wordWithoutSuffix) { + foundWithoutSuffix = true + break } } - if foundWithSuffix { + if foundWithoutSuffix { continue } |