mod
As I mentioned earlier, I've been working on an implementation of the Akismet spam filter for ATutor. This is now ready for download. The spam filter utilises Wordpress' Akismet spam prevention, and as such requires an Akismet API key to work properly. (My original post has some discussion on how to aquire this, including some correspondence with Akismet regarding pricing.) This means that ATutor will need to check with the Akismet servers whenever a new post is made to ensure it is legit. Should the Akismet servers be down, or the API key be invalid, or the Akismet servers return any other error, the post will be marked as not spam and allowed through the filter.
To install the spam filter, both the module and the patch needs to be installed. The patch will make some alterations to the following files:
- /include/vitals.inc.php
- /forum/new_thread.php
- /forum/delete_thread.php
- /forum/move_thread.php
The spam filter is only implemented for the forum as of yet. However, implementing it for other input forms is a rather small job and patches for this could easily be assembled following the example in forum/new_thread.php.
All new forum posts are now stored in a log that can be accessed from the administrator panel. Spam posts will be marked as such, and the administrator will have the option to clear these posts, inserting them into the forum and telling Akismet that these posts are legit (ham). The administrator also has the option to mark clean posts as spam, should which will remove them from the forum and tell Akismet that these posts are spam.
Developers, please note that the code that handles insertions of posts that are caught in the filter and are later cleared of their spam status is somewhat tangled. This is due to the way the forums handle insertions (and updates), especially with respect to post counts. If the forums in the future are rewritten/improved this code will need to be revisited.
