Building a Donation Form Management System for Denver Rescue Mission

Overview

During this session we will discuss how we tackled the problem of building a flexible donation form management system which integrated seamlessly with BlackBaud's Luminate Online donation API. This session will concentrate mostly on the custom back-end and JavaScript development involved in building the donation form management system for Denver Rescue Mission. We will provide some insight to the statistics and feedback we have received from Denver Rescue Mission and some of the custom functionality extensions we built to meet their specific needs.

Back-end Development

We will discuss how we approached the task from a mainly technical point of view, specifically the back-end build using the Entity, Form, Block, and Field APIs, and a custom integration with Luminate Online. The system was built to be self-contained and client agnostic, with custom exposed hooks to define custom functionality, and the only contrib modules we relied upon were Entity, EntityReference, and Replicate in a bid to ensure that the contrib footprint was not a barrier to entry for future clients. 

Theming and JavaScript 

We built our own custom drag-and-drop form builder using JavaScript and we will discuss the merits of such an approach and why we had to roll our own rather than using anything currently available as a contrib module. As part of the development for this module we also created an option for each form instance to define it's own set of CSS and JS includes to allow for custom styling and functionality on a per-form basis. We will discuss how we achieved this and how we approached JavaScript inheritance for this purpose.

60 minutes
Speaker(s): owenbush Time: July 29th - CAMP 1:15pm-2:10pm Room: Room 211 Track: Development and Site Building