Please note: this module is deprecated in favor of the BOTCHA module.
BETA VERSION
This module is quite fresh so use it with care until bugs have been reported and fixed. Please test this module in a development environment before using.
What it does
The JavaScript Validate Forms project was built to prevent spam without getting in the way of user's interactions with forms. It, like many other spam prevention modules adds a field to your forms. However, unlike some other modules like Spamicide and Gotcha, it does not require the bot to fill in the bogus form item. JS Validate Forms uses JavaScript to fill in the form item with the GMT in seconds as passed in from the server (via Drupal.settings). The server then checks the submission to make sure that the field is filled in and that time has elapsed since the user accessed the page.
Bots normally do not run in a real browser. Thus they may lack JavaScript. Since JS is required to fill in the "hidden" form item, it should be helpful it controlling spam. If the bot fills in the validation field item, it will need incredible amounts of luck to insert a value that is accepted in the server side validation. Essentially, the bot will have to input a GMT timestamp, in seconds, that falls between the access time and a 24 hour window.