diff options
Diffstat (limited to 'modules/akismet/helpers')
-rw-r--r-- | modules/akismet/helpers/akismet.php | 2 | ||||
-rw-r--r-- | modules/akismet/helpers/akismet_event.php | 17 |
2 files changed, 18 insertions, 1 deletions
diff --git a/modules/akismet/helpers/akismet.php b/modules/akismet/helpers/akismet.php index 132b9206..b34ed1ac 100644 --- a/modules/akismet/helpers/akismet.php +++ b/modules/akismet/helpers/akismet.php @@ -104,7 +104,7 @@ class akismet_Core { $comment_data["permalink"] = url::site("comments/{$comment->id}"); $comment_data["blog"] = url::base(false, "http"); $comment_data["user_agent"] = $comment->user_agent; - $comment_data["referrer"] = $_SERVER["HTTP_REFERER"]; + $comment_data["referrer"] = !empty($_SERVER["HTTP_REFERER"]) ? $_SERVER["HTTP_REFERER"] : ""; $comment_data["comment_type"] = "comment"; $comment_data["comment_author"] = $comment->author; $comment_data["comment_author_email"] = $comment->email; diff --git a/modules/akismet/helpers/akismet_event.php b/modules/akismet/helpers/akismet_event.php index 8f530faa..2a42acb3 100644 --- a/modules/akismet/helpers/akismet_event.php +++ b/modules/akismet/helpers/akismet_event.php @@ -19,9 +19,14 @@ */ class akismet_event_Core { public static function comment_created($comment) { + if (TEST_MODE) { + return; + } + switch(akismet::check_comment($comment)) { case "spam": $comment->state = "spam"; + module::incr_var("comment", "spam_caught"); break; case "ham": @@ -34,4 +39,16 @@ class akismet_event_Core { } $comment->save(); } + + public static function comment_changed($old, $new) { + if (TEST_MODE) { + return; + } + + if ($old->state != "spam" && $new->state == "spam") { + akismet::submit_spam($new); + } else if ($old->state == "spam" && $new->state != "spam") { + akismet::submit_ham($new); + } + } } |