summaryrefslogtreecommitdiff
path: root/modules/akismet/helpers
diff options
context:
space:
mode:
Diffstat (limited to 'modules/akismet/helpers')
-rw-r--r--modules/akismet/helpers/akismet.php2
-rw-r--r--modules/akismet/helpers/akismet_event.php17
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);
+ }
+ }
}