By markus_petrux on
Hi!
Just wanted to ping about the idea to have a module in Drupal to use akismet.
For now, I have just starter to look at the docs, implementations of the askimet api with other CMS and writting the first lines... If there's enough interest, I may commit the module to the Drupal contributors repository, otherwise I'll probably leave that just a simple experiment.
I'm wondering if anyone here has experience using akismet. Good? Bad? Anyone used akismet with wordpress? Does it really worth?
Thanks for any feedback you can give.
Comments
James started one
walkah started on an Akismet implementation in Vancouver -- contact him for info.
Good to know
I have already committed to the contributions repository what I've been doing to date.
http://drupal.org/node/50498
However, while working on it I've been finding several issues with the comments module. I would appreciate help to review those issues and, if necessary, fix/commit to drupal core.
Here's the list of issues I've been opening related to the comments module:
http://drupal.org/project/issues/drupal?components=comment.module&states...
Doubt is the beginning, not the end of wisdom.
I'll be glad to help
I would love to see a akismet module for drupal! I have never built a module though.... However, I am some-what into PHP programming. So if you need help let me know!
My Drupal Sites: Learn PHP Free & Christian Cosmos
Thanks for your
Thanks for your interest.
I'm currently working to finish this module. It is already able to check for spam in comments (currently running at my site). I still need to add support for checking spam in content and probably a report similar to the comments approval queue.
Will post about it as soon as I get something distributable.
Doubt is the beginning, not the end of wisdom.
Great news!
Great news! Currently building a new site with Drupal, and I'm quite pleased with Akismet on my Movable type / phpBB hybrid... it does a great job!
Can't wait for your module ;)
---
e! Science News
Sweet!
Sweet!
I have commited what's done to CVS and blogged about it here:
http://www.phpmix.org/story/protected_by_akismet
It is not finished, but it is comming... :-)
Doubt is the beginning, not the end of wisdom.
Just an update...
I may have something in beta stage soon. I posted a couple of comments here:
http://www.phpmix.org/story/protected_by_akismet#comment-53
Doubt is the beginning, not the end of wisdom.
Nice!
Sadly I don't have a production Drupal website yet (just one on my local desktop, for dev purposes) so I'm not sure I can help in the Beta, but I'm sure interested in your module!
As a side note, I dropped a comment in the official thread on phpBB forum about a phpBB plugin (linked from your site) as I already implemented a working phpBB version of Akismet. I'll probably give my files to Foutain of Apples if he wants them in order to make an official mod out of it.
Keep up the good work ;)
---
e! Science News
Thanks :)
Thanks :)
Yeah, I just saw your comment at phpBB. It seems FoA is going to work it out by himself, but he's done pretty good MODs already...
Back to the Drupal module, one thing I'm not sure yet, is where to implement the spam moderation queue. Although the Form API in 4.7 is pretty powerful, I don't see how I could "alter" admin/nodes or admin/comment to add the functionality that's needed to review comment spam. ie. aside from the publish/unpublish status there will be a new pair here, marked as spam or not. In fact, when content is marked as spam it is also unpublished, but then it is possible to publish content without submitting it to akismet as "ham", which would be a bad practice because Akismet needs this information to learn from mistakes. So there may be published content that's still marked as spam in the database.
I also thought about using the publish/unpublish status as the marked as spam flag, but that may not be desired on some circumstancies, so I opted for creating a new table where content marked as spam is recorded. Hence, we have 2 pair of similar status: published/unpublished and marked as spam or not.
Anyway, I believe I'll create a new page (say) at admin/akismet with a tab for nodes and another one for comments that will show content in "unpublished" status, but also content "marked as spam".
Does that look good?
Meanwhile, I have already implemented the spam counter, I need to create a themable block for it. And also will try to add e-mail capabilities to (optionally) notify admins of queued content, etc.
Doubt is the beginning, not the end of wisdom.
Re-use spam module?
Perhaps you might want to look at re-using the spam module completely, and just use Akismet for the check function.
hmm... one of the things
hmm... one of the things that Akismet recommends is to disable any other spam filter in place. So, maybe an Akismet module is more like an alternative to the spam module. I think it's because Akismet needs as much information as possible. Also, Akismet needs a way to allow users send information back (submit non caught spam or correct false possitives), so it can learn from mistakes to become better et al....
Doubt is the beginning, not the end of wisdom.
Yes, I understand that
What I'm suggesting is to re-use the entire spam module framework, and just plugin the Akismet components. So, the current spam module wouldn't be used at all for classification, but it already has a massive framework in place for moderating, marking, etc. spam content.
So, when you "mark as spam", instead of just sitting in the queue, that's where you would hook in Akismet.
Just a suggestion, and at the very least you can re-use large chunks of code out of spam module.
Ah, great resource I should say, thanks
It's been great to check what I've been doing to date, specially to confirm the method to deal with node/comment deletions or switch published/unpublished statuses.
That makes me feel that some code in node/comment modules could be reorganized to easy this kind of tasks, should a contrib module (such as spam, akismet or maybe others) need to perform certain "low" level operations...
Ah, just noticed a bug in spam module in function spam_delete_node(). This fuction could be invoked from hook_cron, which is a process that runs as anonymous user. However, spam_delete_node() uses node_delete() which checks for the user to have delete permission on nodes (through the access(delete) hook). The problem is the anonymous user doesn't have delete permission on nodes, probably. hmm... where's best to contact Jeremy regarding this module?
While coding the akismet module I also noticed a bug in the comment module, hook_comment(delete) is not invoked when node is deleted, reported here:
http://drupal.org/node/67703
I may also add in the future the ability to let users (with an explicit permission) to report spam to administrators in a similar fashion as the spam module currently has. Good idea.
Thanks for the info :-)
Doubt is the beginning, not the end of wisdom.
About moderation permissions...
I have currently implemented spam moderation based on 'administer nodes' and 'administer comment' permissions. However, I've been thinking that someone may need more granularity... what about adding new _optional_ permissions such as 'moderate spam in comments' and 'moderate spam in node-type' to the party?
That way it wouldn't be necessary to be a complete content administrator to just publish/unpublish content or submit spam/ham to akismet.
Doubt is the beginning, not the end of wisdom.
Just did this.
I have just implemented different permission sets to allow site administrators delegate spam moderation more easily.
For those who have simple role requirements, users with administer nodes or administer comments permission might be enough.
However, there may be sites that need more granularity so they can now delegate moderate spam in comments or moderate spam in nodes of type %type to any user role. This way it won't be necessary to be a complete content administrator to just publish/unpublish content or submit spam/ham to Akismet.
Doubt is the beginning, not the end of wisdom.
I use Akismet in my
I use Akismet in my WordPress blog and I've had nothing but good experiences with it. (I know there are some people who have complained about false positives, but I haven't had a problem with it personally), I think an Akismet module would be a great addition to Drupal's module collection.
nikkiana
everytomorrow.org - blogsNH
Download available for testing
Please, read this for details. Thanks
http://www.phpmix.org/story/protected_by_akismet#comment-68
Doubt is the beginning, not the end of wisdom.
Spam counter with customizable (and themable) block
I have just implemented a customizable (and themable) block to display the akismet spam counter.
There is also a new option in the settings panel that allows administrators set how many blocks they wish to use (or none at all). This is aimed to keep the block administration panel as clean as possible.
For now, these changes are available from CVS only. See diff for details.
Doubt is the beginning, not the end of wisdom.
Version 1.0.0 Released! :-)
http://drupal.org/node/68535
Doubt is the beginning, not the end of wisdom.