The Technology Behind This Site

CAVotes.org was made possible by a grant from the James Irvine Foundation (www.irvine.org).

CAVotes.org was designed in a flexible manner that will enable it to adjust over time as we witness user activity and learn more about what you want from this site. If you have ideas, please let us know by contacting us or connecting with us on facebook at www.facebook.com/cavotes.

We are working with SunRain Productions and think/feel studio on this new online environment. SunRain chose to work with Drupal 6 for Drupal's flexibility and, more importantly, active development community.

We are working on some very different things for LWVC Education Fund content delivery, and following is an exploration of some of what we are doing.

Pros & Cons Customizable PDF

Over the years, the League has produced an official "Pros & Cons" document providing a simple, thorough, easy to use summary of California state ballot measures. It has been distributed in print and online to local Leagues, individuals and partners. This format, however, has not easily allowed for updates when content changes. Additionally, it has not allowed the user to choose which content is included in or excluded from the document. Considering how long the California ballot can be, including all the content all the time can get quite lengthy!

The solution we are still refining is an interface allowing anyone to create their own Pros & Cons document with their custom selection of our content. The user is able to choose which information they want in their personalized "Pros & Cons". For example: do you want to see all of the arguments for and against, but not the fiscal impact? You can make that choice. Do you strictly desire information on the fiscal impact? You can limit your PDF to just that information as well. Additionally, this customizable PDF always prints the most recent updates to the content, so any changes over time will be reflected in a new printout.

To accomplish this, SunRain Productions worked with Ashok Modi on the development of a new Drupal module (formal name still TBD, but probably Views Print) that gives the site administrator an interface for setting up a particular view to print with special formatting. The administrator can also customize the header and footer of the PDF, as well as enable the end-user to add their own customized content onto the final printout.

Our module was built with the assistance of the already contributed Print module and the TCPDF pdf generation tool.

This module will be released on Drupal.org in the Summer of 2010.

Mobile / Single Column Theme and Accessibility

An important goal for the CAVotes.org website was that it be accessible to all users, regardless of equipment, physical requirements or individual preferences.

To achieve accessibility, we established a single column theme that is also optimized for the mobile experience. This theme gives the user the choice to strip the user experience down to the basics, which enables the user to get directly to the specific content they desire.

This site also uses Drupal as the core framework, which is known for its compliance with accessibility standards. Our sites are currently on Drupal 6; Drupal 7 has made significant advances in accessibility that we would like to include, and we plan to upgrade to Drupal 7 as our budget allows. For more information on Drupal 7 and accessibility, please see: http://drupal.org/about/accessibility. If you are someone relying on our compliance with accessibility standards and are having difficulty using this site, please contact us to let us know more about your experience so that we can directly address areas where we fall short.

Workflow Flag Integration

One challenge for the CAVotes.org site is the requirement for sophisticated quality control measures for content. The League prides itself on providing quality, vetted content. At the same time, many of the people who are entering, proofing, vetting and approving content are either very busy, or they are new to working with online content. It was very important that a workflow be established for content that ensures quality and also ease of use for the content managers.

To accomplish this, we set up a "recipe" using the contributed Drupal module Workflow, the contributed Drupal module Flag, and a custom built module that has been submitted to Drupal.org since we launched, Workflow Flag.

Workflow enabled us to set up various states for the content so that it can all go through the following publication flow:

  1. Entry onto the site
  2. Fact Checking
  3. Proof Reading
  4. Editor Approval
  5. Executive Approval (if needed)
  6. Published (Live for End-User)

Flag is being used to make it possible for Executive Approval to happen without the Executive taking the time to click on the "Edit" tab to actual edit the content. Flags have been set up that mark the content as "approved" or "approval rescinded," which will automatically publish or unpublish the contnet immediately.

Workflow Flag integrates the two modules together so that the Approval flags do not appear until the content has reached a state beyond Fact Checking and Proof Reading. This ensures that the content cannot be approved too early! Additionally Workflow Flag will assign the "Approved" flag to the content once it reaches the "Published" state, whether or not someone actually took the time to mark the content as "Approved."

SunRain Productions and Jennifer Waggoner, LWVCEF Communications Director, have both presented publically on the Workflow / Flag / Workflow Flag recipe for content quality control at DrupalConSF 2010 and at the Los Angeles Drupal User Group.

A list of Drupal Modules used on the site:

Modules to help site configuration:

  • Admin
  • Admin Menu
  • Admin Role
  • Advanced Help
  • Backup and Migrate
  • Boost
  • Devel
  • Menu CSS Names
  • Menu Trails
  • PathAuto
  • Pathologic
  • Protect Critical Users
  • QA Checklist
  • Rules
  • Token
  • Trigger Unlock
  • URL List
  • XML Sitemap

Modules to help site managers:

  • LWVC User
  • Auto Node Title
  • Better Formats
  • Conditional Fields
  • Content Lock
  • Custom
  • Diff
  • Embedded Media Field
  • File Field
  • File Field Sources
  • Flag
  • Google Analytics
  • Image Resize Filter
  • Image API
  • ImageCache
  • ImageField
  • Insert
  • Mollom
  • Node Auto Term
  • Node Hierarchy
  • NodeReferrer
  • Page Title
  • SpamSpan
  • Suggested Terms
  • Taxonomy Redirect
  • Twitter
  • Vertical Tabs
  • Workflow
  • WYSIWYG

Other general modules for user experience:

  • Regular
  • Blocks 404
  • BrowseCap
  • Calendar
  • CCK
  • Custom Breadcrumbs
  • Date
  • Email
  • External Link
  • Global Redirect
  • gMap
  • IE6NoMore
  • Image
  • JQuery UI
  • Link
  • Location
  • LoginToboggan
  • Print
  • Text Resize
  • Thirfty404
  • Views
  • Views Attach
  • Views Or
  • Views Slideshow

For mobile theme and theme switching

  • Mobile Theme
  • BrowseCap
  • Mobile Tools
  • Switch Theme
  • Nokia Mobile Theme (as a base)

Site Development Credits:

  • Principal Information Architecture, Configuration & Development: Rain Breaw at SunRain Productions
  • Design and Collaboration on Information Architecture: Alice Tang at think/feel studio
  • Module Development & Server Configuration: Ashok Modi
  • Additional Configuration: Tommy Keswick, Benno Sebastian and Patis Lee

More credits for CAVotes.org: click here.

LWVC Education Fund