Online event registration has always proved tricky for website developers. Even with the rise of social media, capturing information from participants has always been subject to the nuanced details of organizing events in the real world. How many people are allowed to attend? Do people have to pay to get in? Where am I storing the information we collect so it is most useful to event organizers? These kinds of questions lead to very specific, focused solutions within open-source event management systems, and make it difficult to address the needs of general audiences.
Here at Trellon we have been dealing with event management solutions for a long time. Drupal is a great platform for promoting events, but there are no general, one-size-fits-all solutions for capturing registration information. EventFinder was an early stab at a complete solution, which had its own benefits and drawbacks, and eventually was scrapped in favor of Event- and Location-based solutions. e-Commerce added the ability to have paid event attendance, but even this created some challenges in terms of how the data was stored. Signup and Signup Pay brought developers closer to a general solution, but there are some common use cases that these tools have yet to address:
- Member-only events, where only certain users have permission to register.
- Early-bird registration discounts where the price goes down based on the day.
- Questions from event organizers to get more details from the registrant.
Trellon spent some time dealing with these challenges. While we are still far off from having a single solution that handles all things events, we added some significant capabilities to the Drupal platform through the development of several new modules:
- Restrict signups based on the user's role. This role-based control provides a very flexible means of controlling signups, moreso when combined with many of the other Drupal modules which add and remove roles based on subscriptions, number of posts etc. The module provides this extra configuration area to restrict signups to certain roles:
- Signup and Pay Early Bird. This sensibly named module works in conjunction with Signup Pay to provide the option of discounts for people signing up early. You can discount a fixed amount, or a percentage of the total cost, and multiple discounts can be applied.
- Build a questionnaire using Webform and associate it with an event. If a person signs up for the event, they are reminded to take the survey up until the event passes. This is useful for things like collecting the list of sessions that each person wants to attend, what they would like for their catered lunch, etc. This could be further extended to associate a survey to an event after the fact as well, so you could ask people to rate their experience.
By leveraging the existing technology and Drupal's extraordinarily extensible module system, we were able to keep the client's costs down, and build upon the existing Signup Pay module to exceed expectations with a suite that comprehensively covered all their requests.