A signup sheet implementation for Plone
Project description
SignupSheet
SignupSheet is an add-on product that allows site managers to create custom registration forms for events, workshops, fundraisers and other events that require online registration. Each SignupSheet defines the fields that are used for each Registrant object they contain, through the ATSchemaEditorNG product. The Registrant object is what the end user fills out and submits. The workflow places each submitted Registrant in a private state once it is submitted so that it can be reviewed and approved.
The SignupSheet has these additional features:
Registrant fields can be exported to CSV
A waiting list and event size can be set, end users are emailed a message stating whether they are pending approval or on the waiting list.
The signup sheet view indicates whether the SignupSheet is ‘full’, ‘open’ or whether user will be put on a waiting list. This is calculated using the event size and waiting list settings.
End user is directed to a customizable thank you page.
The key motivation behind this product is to provides a way for site managers to setup registration forms that do more than email the fields to an address. Having the fields be configurable is essential, since many groups have specific requirements for the data they are collecting for their events.
SignupSheet is released under the GNU General Public Licence, version 2. Please see http://gnu.org for more details.
Installation
Install in the usual way, using the QuickInstaller. Requires ATSchemaEditorNG 0.5 or greater Requires TemplateFields and TALESField
Tested with Plone 3.0.6 and Archetypes 1.5.6 and ATSchemaEditorNG 0.5
Acknowlegements
This product would not be possible without the Poi and RichDocument products by Martin Aspeli. They provided useful example code, specifically around the workflow trigger pattern.
In addition Upfront Contacts by Roche Compaan for the CSV export code.
In addition thanks to Simon Pamies for assisting me with ATSchemaEditorNG, and Andreas Jung for providing useful code improvements.
Naro for the Plone 3 compatibility work
Andres Jung for eggifying SignupSheet
Known Issues and Potential Improvements
Signupsheet needs more explanatory text. Schema editor has been simplified but needs better explanatory text.
It is possible to prematurely fill up registration by malicious user.
CHANGES
0.5 (2010/09/31)
final release
0.5b1 (2010/04/24)
fix tests to be compatible with ATSENG 0.6 [aaronv]
added install of ATSENG to setup_handler [aaronv]
uses ATSENG 0.6
use ParentOrToolManagedSchema for registrant to work around bug when logged-in user edits Registrants
re-applyed the fix added in version 0.4.2 and someway no more available [keul]
added import step for TinyMCE [keul]
removed all available views but Base View [keul]
confirm icon in view_registrants template was broken [keul]
0.4.4 (2010/04/19)
setuphandler is only run when own product is installed. [mlundwall]
RegistrationDeadline and EarlyBirdDate now displayed using toLocalizedTime [keul]
the subscription form now use the POST method [keul]
minor fixes to italian translation [fdelia]
0.4.3 (2010/01/22)
update Italian translations (fdelia)
added fix for XHTML compliance for signupsheet_view
0.4.2.2 (2009/07/12)
updated Italian translations
Espen Moe-Nilssen supplied Norwegian translations
Luca Fabbri supplied Italian translations
0.4.2 (2009/04/14)
changed permission for using modifying the schema to ManagePortalContent (ManagePortal is too restrictive)
0.4.1 (2009/03/39)
fixed bug for anon permissions on registrationDeadline and earlyBirdDate (aaronv)
fixed tests (aaronv)
0.4.0 (2009/03/11)
added additional early-bird workflow (signupsheet_extended_workflow) (ajung)
added additional registrant workflow with confirmation email up confirmation time instead of subscription time (signupsheet_registrant_extended_workflow) (ajung)
0.3.2 (2009/03/09)
fixed dependencies
0.3.1 (2009/03/09)
fixed issue with Anon registrant and metadata updating
added metadata.xml for GS 1.5 support
computeFullname now more robust
tested with Plone 3.1.5 and ATSchemaEditorNG 0.5.0
0.3.0
updates to make Plone 3.0.6 compatible.
added tests for email and posting workflow
bulk of Plone 3 compatibility work done by Radmin Novotny
0.2.0 Beta
Andreas Jung and Radim Novotny contributed significantly to this release.
added Portuguese Brasilian translation. Thanks Vitor Reis.
added ‘view registrants’ that displays current registrants status and allows for confirming and editing registrants
added i18n support for templates
added German translation
updated tests to pass
updated i18n
Because thank_you_page and email_response fields were changed from TextField to ZPTField it is necessary to manually run migration code from Extensions/migrate method fixZPTFields. This method will read old values from these two fields and store the same value in new format. WARNING: if you don’t run migration you will get AttributeError: read when accessing old SignupSheet objects
It is possible to generate HTML emails
workflow script sendInitialEmail is called before the transition, because anonymous can access registrant object only in ‘new’ state. If script will be called after transition, Registrant.sendNotificationMail method won’t have access to registrant object. Access is required due to rendering templates from ZPTField.
removed signupsheet_email_* templates
Introduced TALESField and TemplateFields dependecy. SignupSheet uses these two fields for scripting thank_you_page, confirmation and notification email (subject and message). Syntax is described in field help text:
context = SignupSheet options/registrant = current Registrant object
added notifyEmail field to signupsheet schema. It allows to send notification about new registrant to some email address.
removed registration of SignupSheet.css from portal_css
it is possible to use options/computed_text in email template now
use getSiteEncoding if available
additional i18n work (signupsheet.py - schema)
improved i18n catalogs, added Czech translation
do not depend on Kupu in install code
replaced dtml templates with ZPT with i18n
use base_view for SignupSheet and simplified signupsheet_view template
0.1.1
fixed bug that caused editing existing Registrant objects to fail
added import for ATSENG so test run properly
fixed incorrect security declaration for registrantFieldNames
0.1
Installs ATSENG dependency
Fixed bug for computing status, added tests against bug
Fixed manager can override initial post state
Registrant edit page displays title of SignupSheet
Fixed Thank you message renders proper HTML
Fixed email response so that it is text only
0.1-Beta-2
tracking changes
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.