Campaign Modules

As Jon mentioned in his Copenhagen recap, one topic we discussed with several people at DrupalCon was campaign websites. Between the Activism project and the NGP Campaign Features, there's already a lot going on in this space. The work we did for Fair Elections Now takes a different approach, with nodes of any content type used to record actions, giving the full flexibility of CCK.
We're really happy with this approach. The site is great for demonstrating the activity around of the campaign, and was recently mentioned on CNN's political blog. As happy as we are with the results, we didn't want to further fragment efforts by creating yet another very similar project. Still, we want to help these efforts as much as we can, as this whole "democracy" thing seems very promising. So we're going to start by sharing code here in hopes it will prove helpful to existing projects.

Political Campaign

This set of modules handles the structure of political campaigns, with general goals (e.g. get a bill through congress, get Justin Beiber banned from Twittter, etc.), specific actions toward accomplishing those goals (e.g. contact your congressperson, attend a demonstration, etc.), and specific goals for those actions (e.g. get 100 people to do this in the next month).
Download Political Campaign module (10KB)

US Congress

This set of modules handles information about people already in or hoping to join US Congress. When both are installed, it works with the Political Campaign modules to track candidate support for campaign goals. It also comes with a generic wrapper for the Sunlight Foundation API (with code some copied directly from the CiviCRM-specific Sunlight Foundation module), as well as a module to use that API to populate US Congress data in CCK.
Download US Congress module (7KB)

Convio Donate

Lastly, here's a module for handling donations via Convio. This relies on code from the many independent efforts to create a Convio API module. Once that work settles into a single codebase, we'll post this module as an addition to it.
Download Convio Donate module (3KB)

Code Drupal Planet

Read This Next