A simple add-on to build quizzes with PloneFormGen.
osha.quizzes is a minimalistic Plone add-on that builds on top of the PloneFormGen product to enable you to build simple quizzes trough-the-web.
To install osha.quizzes you simply add osha.quizzes to the list of eggs in your buildout, run buildout and restart Plone. Then, install osha.quizzes using the Add-ons control panel.
- This package does the following:
- extends FormSelectionField with a correct_answer field so users can specify the correct answer from a list of options,
- adds a PFGCorrectAnwserAdapter that iterates through all FormSelectionFields on form submit, calculates the percentage of correct answers and displays the result as a portal status message.
- add a quizzes view, registered for Folders, that lists all FormFolders in a Folder, and opens them in an overlay upon clicking on one.
So, to create a quiz, first create a PloneFormGen’s FormFolder, add some FormSelectionFields to it and set the correct answer for each of them.
Then add the PFGCorrectAnswersAdapter to the FormFolder, give it some some arbitrary title and save. No when you fill out the form and click submit, you’ll get your score in a nice status message.
Finally you can choose to use the quizzes view on a Folder to list all quizzes in that folder and open them in overlays.
- Initial release. [jcerjak, plamut, zupo]
License (3-clause BSD)
Copyright (c) 2012, Syslab.com GmbH All rights reserved.
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 Syslab.com 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 SYSLAB.COM GMBH 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.