Package: pfg.donationform
IntroductionThis package streamlines the process of creating a donation form within a Plone
site that can process payments via one of the payment processors supported byPloneGetPaid.On its own,PloneGetPaidprovides a useful basis for processing electronic
payments within Plone, including support for a number of payment processors.
However, PloneGetPaid is optimized for the use case of purchasing products, and
makes some assumptions that are suboptimal for collecting donations:It assumes that any item purchased is represented by a content item within the
site, which is not the case for arbitrary donations.It provides no user interface for selecting among predefined donation levels -or-
entering an arbitrary donation amount.Its checkout process requires several steps, whereas making a donation should
be as streamlined as possible.pfg.donationform solves these problems by creating aPloneFormGen-based donation
form with a custom “donation field” that provides an acceptable UI for configuring
a donation amount and recurring donation.  When the form is submitted, it can
either process the donation immediately based on contact and billing fields
included in the form, or can redirect to the standard GetPaid checkout wizard.The donation field may also be used in other PloneFormGen forms.Dependenciespfg.donationform works on both Plone 3 and Plone 4.  Recent versions of
PloneFormGen and PloneGetPaid are required.InstallationAdd GetPaid to your buildout, using the instructions athttp://code.google.com/p/getpaid/wiki/InstallingGetPaidto make sure you get
the correct package versions.Add pfg.donationform to your buildout.Start Zope and install PloneGetPaid via the Add-ons control panel, and configure
its settings.Install “Donation Form” via the Add-ons control panel.Make sure you have configured your Plone site’s mailhost settings.UsageBegin adding a donation form by selecting “Donation Form” from Plone’s
Add menu.  Fill out the fields and click “Add” to finish adding the form.By default GetPaid uses a dummy payment processor that “accepts” payment
without actually doing anything.  You will need to configure GetPaid via its
control panel in Site Setup.CustomizationBecause the generated form is a PloneFormGen form, you may edit or add fields
via the normal PloneFormGen user interface.  If you add a field and want it to
be included in the e-mail that is sent when a donation is made, you must also
edit the mailer adapter and add it to the list of included fields.  (All fields
are not included automatically, in order to avoid sending sensitive credit card
information via e-mail.)If you let the Donation Form creation process add contact and billing fields to
the form, make sure that you do not remove them or change their IDs – the
GetPaid adapter expects to find them.Creditspfg.donationform was created forGroundwirebyDavid Glick.  Thanks also
to Fulvio Casali.Change historyChangelog1.2.3 (2012-01-27)Format donation amounts using the active locale, if possible.
[davisagli]Clear the shopping cart before adding a donation line item.
[yomatters]Default to using separate first/last name fields instead of a single name field.
[davisagli]Default to no limit on term of recurring payments.
[davisagli]Add some additional CSS hooks to the donationfield widget template
[jessesnyder]1.2.2 (2011-07-06)Don’t break if there’s no IIntIds utility.
[davisagli]1.2.1 (2011-07-06)Depend on zope.intid instead of zope.app.intid.
[davisagli]1.2 (2011-06-30)Refactored the DonationFieldLineItemFactory to make it easier to override.
[davisagli]Moved form creation logic to helpers in theutilsmodule.
[davisagli]PloneGetPaid is no longer a hard dependency. You still want it in most cases,
so be sure to install it before installing pfg.donationform unless you know
what you’re doing.
[davisagli]Fix imports for compatibility with Plone 4.1.
[davisagli]1.1 (2011-05-18)Don’t put anything in the custom donation amount field if no suggested
donation was configured (it used to display a ‘0’).
[davisagli]Add a minimum donation setting (defaults to $1) to help avoid automated bots
testing credit cards.
[davisagli]1.0.4 (2010-09-23)Add option to set up recurring payments that continue indefinitely, instead
of prompting the user for a number of months to recur.
[davisagli]Fix view of donation fieldsets when they are contained in other fieldsets.
[davisagli]1.0.3 (2010-08-27)Allow pfg.donationform to be present but not installed when upgrading a site
to Plone 4.
[jbaldivieso]1.0.2 (2010-08-05)Fix regression in handling the case where the default amount is None.
[davisagli]1.0.1 (2010-08-05)Remove the ‘required’ setting for the donation field for now, since it doesn’t
work properly and isn’t trivial to fix. Also the ‘hidden’ and ‘fgDefault’
settings, which don’t make sense for this field.
[davisagli]Fix bugs in highlighting the currently selected level.
[davisagli]Handle predefined donation levels with no label.
[davisagli]Fix the wording for the case where no predefined donation levels are specified.
[davisagli]1.0 (2010-08-03)Mark the cart as an IDonationCart.
[davisagli]Fire a DonationCreatedEvent on the cart after a donation is added.
[davisagli]1.0b1 (2010-05-19)Initial release.
[davisagli]Download