diff options
author | Bharat Mediratta <bharat@menalto.com> | 2009-01-08 02:56:49 +0000 |
---|---|---|
committer | Bharat Mediratta <bharat@menalto.com> | 2009-01-08 02:56:49 +0000 |
commit | bc36ba609db3b030d28a8768023b35441f8b9b9e (patch) | |
tree | c08b06dc707c53313066f966d9e3179d15244ad0 | |
parent | 8bf388a6f671faba94f46ad9e982139c211378ee (diff) |
Add akismet::$test_mode, initialize it to TEST_MODE and don't contact
akismet if it's on. Force it on in the scaffolding so that we don't
try to run all comments we add from there through Akismet.
-rw-r--r-- | core/controllers/welcome.php | 2 | ||||
-rw-r--r-- | modules/akismet/helpers/akismet.php | 14 | ||||
-rw-r--r-- | modules/akismet/helpers/akismet_event.php | 8 |
3 files changed, 16 insertions, 8 deletions
diff --git a/core/controllers/welcome.php b/core/controllers/welcome.php index 1509c54e..c77e90a9 100644 --- a/core/controllers/welcome.php +++ b/core/controllers/welcome.php @@ -298,6 +298,7 @@ class Welcome_Controller extends Template_Controller { url::redirect("welcome"); } + akismet::$test_mode = 1; for ($i = 0; $i < $count; $i++) { $photo = $photos[array_rand($photos)]; comment::create( @@ -305,6 +306,7 @@ class Welcome_Controller extends Template_Controller { "johndoe@example.com", $this->random_phrase(rand(8, 500)), $photo->id); } + akismet::$test_mode = 0; url::redirect("welcome"); } diff --git a/modules/akismet/helpers/akismet.php b/modules/akismet/helpers/akismet.php index b34ed1ac..12d7a106 100644 --- a/modules/akismet/helpers/akismet.php +++ b/modules/akismet/helpers/akismet.php @@ -18,6 +18,8 @@ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ class akismet_Core { + public static $test_mode = TEST_MODE; + // Lets not send everything to Akismet private static $white_list = array( "HTTP_USER_AGENT", @@ -41,6 +43,10 @@ class akismet_Core { * @return $string "spam", "ham" or "unknown" */ public static function check_comment($comment) { + if (akismet::$test_mode) { + return; + } + $request = self::_build_request("comment-check", $comment); $response = self::_http_post($request); $answer = $response->body[0]; @@ -58,6 +64,10 @@ class akismet_Core { * @param Comment_Model $comment A comment to check */ public static function submit_spam($comment) { + if (akismet::$test_mode) { + return; + } + $request = self::_build_request("submit-spam", $comment); self::_http_post($request); } @@ -67,6 +77,10 @@ class akismet_Core { * @param Comment_Model $comment A comment to check */ public static function submit_ham($comment) { + if (akismet::$test_mode) { + return; + } + $request = self::_build_request("submit-ham", $comment); self::_http_post($request); } diff --git a/modules/akismet/helpers/akismet_event.php b/modules/akismet/helpers/akismet_event.php index 2a42acb3..c18b217b 100644 --- a/modules/akismet/helpers/akismet_event.php +++ b/modules/akismet/helpers/akismet_event.php @@ -19,10 +19,6 @@ */ class akismet_event_Core { public static function comment_created($comment) { - if (TEST_MODE) { - return; - } - switch(akismet::check_comment($comment)) { case "spam": $comment->state = "spam"; @@ -41,10 +37,6 @@ class akismet_event_Core { } 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") { |