Contributed Plugins

You need at least TracCaptcha 0.2 to use contributed plugins!

I want to help other trac plugins to integrate TracCaptcha. However the 'glue code' for these plugins is not contained in the main TracCaptcha plugin because:

  1. Avoiding additional dependencies (also for the test runs) is much easier if these are separate plugins.
  2. The quality of these plugins really depends on the number of interested users. Bad plugins should not cause a bad reputation for the main plugin. If you use other plugins, please consider writing the necessary glue code and create a ticket so your code is available to others as well.
  3. Other plugins might have different licenses, so encapsulating the specific code in separate plugins prevents 'license pollution' of the main plugin.

These 'glue code' plugins can be found in the contrib directory. Please note that I don't use many external plugins on a regular basis so the quality of the integration code might not be as good as the main TracCaptcha plugin. Also the additional tests for these plugins are not run in the build server yet (see #25).

AccountManager

The  Account Manager Plugin implements a user management infrastructure in Trac. On top of that, it implements some features like 'password change for users', 'web-based user creation', 'form-based login' and 'web-based user registration'. Currently the captcha plugin only cares about new user registration!

To enable the captcha, please add these lines to your trac.ini:

[components]
accountmanager_captcha.* = enabled

DiscussionPlugin

The  DiscussionPlugin provides a simple forum implementation. The captcha is displayed when creating a new topic or posting a reply. To enable the captcha, please add these lines to your trac.ini:

[components]
tracdiscussion_captcha.* = enabled

Due to issues in the IDiscussionFilter interface, the captcha is only validated when you do the final submit, not for previewed topics/replies. This also means the captcha is shown every time when clicking preview, even when the users solved it before.