All Our Ideas
The allourideas.org project provides the user-facing website for doing pairwise voting. This project depends on the API provided by pairwise-api. There are several models that are ActiveResource models that connect to the pairwise API.
Changes in this fork
This was created by OKFN in collaboration with the World Bank, for the brazilian state Rio Grande do Sul.
The approach for the poll is different from upstream. Here, we have Consultations (i.e. "How to save the world?"). There are Choices to answer the it (i.e. "Cure cancer"), each of which is inside a Category (i.e. "Healthcare"). Every time a user votes in a consultation, the next prompt will be from a random category.
We've also added the possibility to modify a Choice's Category after it was created (but before it received any votes). But this depends on our fork of pairwise-api (https://github.com/okfn/pairwise-api). If you don't need it, you can use the official repository without problems.
The software was modified to work as a Facebook Canvas App as well. When a user access it through Facebook, we check if we have another user with her e-mail in our database. If so, we link the users together, and log her in as that. If not, we create a new user in our DB. This only works if the user authorized our app before.
If we're authorized, we'll also post a message in the user's timeline each time she add a new Choice to a Consultation.
For a more detailed view of the changes, check our closed issues.
If you would like to join the allourideas email list, send a message to email@example.com. The email list is a place to ask and discuss technical questions about the project.
If you would like to send a question to the allourideas email list, send your message to firstname.lastname@example.org. Note that you can only post if you are already a member of the group.
If you would like to review and search previous content from the email list, visit https://groups.google.com/forum/#!forum/allourideas.
Copyright (c) 2010, Matthew J. Salganik and the Trustees of Princeton University. Licensed under the 3-clause BSD License, which is also known as the "Modified BSD License". Full text of the license is below. This license is GPL compatible (http://www.gnu.org/licenses/license-list.html#ModifiedBSD).
Code for this project has been contributed by (in chronological order): Peter Lubell-Doughtie, Adam Sanders, Pius Uzamere, Dhruv Kapadia, Calvin Lee, Chap Ambrose, Dmitri Garbuzov, Brian Tubergen, and Luke Baker.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
- Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
- Neither the name of the nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL (COPYRIGHT HOLDER) BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.