Page not found when submitting spam

Ares78 - July 22, 2008 - 03:27
Project:Akismet
Version:6.x-1.x-dev
Component:Code
Category:bug report
Priority:critical
Assigned:Unassigned
Status:needs review
Description

I just recently upgraded to version 6 of Akimet, after upgrading drupal as well to version 6, ran update.php as well. Now when I try to submit spam on any page, it goes to a 404 Page not found error. The same if I try to Unpublish a comment.

#1

Ares78 - July 26, 2008 - 00:32
Category:bug report» support request

moved to the correct area, my apologies... I should clarify, when marking a posted comment as spam, it will go to the 404 Page not found error, I'm not actually submitting spam myself :P

#2

coofercat - July 29, 2008 - 18:56

For what it's worth, I get the same problem (after a similar upgrade experience). Actually, I'm finding most Akismet based comment management is problematic :-(

#3

keathmilligan - August 3, 2008 - 18:12

Same issue. So far, Akismet module does not appear to be working at all.

#4

tcblack - August 22, 2008 - 17:40

Ditto on the same issue.
When I click "Submit Spam" or "Submit Ham" in a commentI get a 404.

#5

alpinejag - August 23, 2008 - 12:45

same here

#6

Napzilla - August 25, 2008 - 05:46
Component:User interface» Code
Category:support request» bug report

Akismet causes me to receive the same 404 message when I'm trying to post any content at all, not just when marking a comment as spam.

#7

Drupalone - March 5, 2009 - 14:12

I get the same error. But I think this modul is not maintained anymore...

#8

peterpoe - March 27, 2009 - 11:43
Version:6.x-1.0-beta1» 6.x-1.x-dev
Status:active» needs review

Try applying this patch, which should solve this problem. It also fixes a bug (which you could not even see, since it the 404 error blocked everything) where the "submit ham" link on node and comments would not work.

AttachmentSize
akismet_3_27_2009.patch 2.84 KB

#9

hyrcan - March 28, 2009 - 21:55

Dang beat me to the punch, was going to work on this today.

Patch mostly works.

Had to change the function call on line 302 form:

    if (!$map[2] = comment_load($map[2])) {

over to :

    if (!$map[2] = _comment_load($map[2])) {

I'm working on a clean patch with both changes as I type, I'll upload soon.

EDIT:
Oops. Also forgot, there's several l() calls that are not formated for drupal 6.

#10

hyrcan - March 28, 2009 - 22:43

Ok, so there's several things here that were causing the akismet module to not work at all for me. I've several of which peterpoe knocked out in the patch in #8

I had also found a few more that were still causing some problems. Which include multiple cases of the incorrect use of the l() function. In drupal 6 the extra attributes are in an array, not as separate arguments. And a couple more instances where the akismet_content_load function was being fed the whole object and not just the id.

I've rolled them all into a patch, which (fingers crossed) should take care of the basics. This doesn't address the admin screens layout or any other issues, but does get the links working completely again.

AttachmentSize
akismet_03_28_2009.patch 7.24 KB

#12

spookypld - April 2, 2009 - 09:41

@@ -269,15 +269,13 @@ function akismet_menu() {
         'file' => 'akismet.admin.inc',
       );
     }
-  }
-  else {
     $item = array(
       'title' => 'switch content status',
       'page callback' => 'akismet_page',
       'page arguments' => array(0, 1, 2, 3),
       'load arguments' => array('%map', '%index'),
       'access callback' => 'akismet_access_callback',
-      'access argument' => array(0, 1, 2, 3),
+      'access arguments' => array(0, 1, 2, 3),
     );
     foreach (array('publish', 'unpublish', 'submit-spam', 'submit-ham') as $op) {
       $items['akismet/%akismet/%/'. $op] = $item;

What does it mean ?

I count to 17 rows? I've found it a little bit messy :/

#13

peterpoe - April 2, 2009 - 13:35

@spookypld: It's a patch, see http://drupal.org/node/60108

 
 

Drupal is a registered trademark of Dries Buytaert.