in reviewer-akismet/basic.go [65:100]
func (r *Reviewer) Review(content *plugin.ReviewContent) (result *plugin.ReviewResult) {
result = &plugin.ReviewResult{Approved: true}
if len(r.Config.APIKey) == 0 {
return result
}
// If the author is admin, no need to review
if content.Author.Role > 1 {
return result
}
isSpam, err := r.RequestAkismetToCheck(content)
if err != nil {
log.Errorf("Request Akismet to check failed: %v", err)
return &plugin.ReviewResult{
Approved: false,
ReviewStatus: plugin.ReviewStatusNeedReview,
Reason: plugin.TranslateWithData(myI18n.Language(content.Language), i18n.CommentNeedReview, nil),
}
}
if !isSpam {
return result
}
if r.Config.SpamFiltering == "delete" {
return &plugin.ReviewResult{
Approved: false,
ReviewStatus: plugin.ReviewStatusDeleteDirectly,
Reason: plugin.TranslateWithData(myI18n.Language(content.Language), i18n.CommentNeedReview, nil),
}
}
return &plugin.ReviewResult{
Approved: false,
ReviewStatus: plugin.ReviewStatusNeedReview,
Reason: plugin.TranslateWithData(myI18n.Language(content.Language), i18n.CommentNeedReview, nil),
}
}