Mighty Events is a simple module that gives you the ability to track event attendance, as well as communicate with attendees for each event.
The module is very-much in an alpha stage. Indeed, it even has placeholder text in the administration area. It is fully-functional, but it simply provides a front-end form with attendance tracking on the back-end. Future features are outlined below.
- Per-event attendee tracking
- Allow attendees to update their RSVP, if logged in
- Attendee notifications about event information
- Accept payments for event attendance
- Export attendance data to CSV, PDF, etc.
If you'd like to play around with MightyEvents while it's in alpha, here are a few things you need to know:
Here's the basic structure of an event form:
<form method="post" action="">
<input type="hidden" name="action" value="mightyEvents/attendee/SaveAttendee">
<input type="hidden" name="attendee_event_id" value="1">
<label for="attendee_name">Attendee Name</label>
<input type="text" name="attendee_name">
<label for="attendee_email">Attendee Email Address</label>
<input type="text" name="attendee_email">
<label for="attendee_seats">Seats Required</label>
<input type="text" name="attendee_seats">
<input type="submit" value="Reserve your Seat">
</form>
Date is submitted via POST into the module, where it's validated and saved to
the database. The name attributes on each input require a namespace of
attendee_XXXX to make sure the module only captures the POST values it needs.
Notice that the action attribute on the form is blank. This submits it to the
same page by default. A Flash value is passed as a Notice on success, or an
Error when something's not right. (Usually bad data.) The action hidden
input actually sends the data to the Mighty Events controller, which processes
the data.
There are currently two tables used in MightyEvents: Attendees and Events. The Events table isn't currently being used, but will eventually be a part of a Many-to-Many relationship with the attendees, which will allow for attendees to signup for multiple events. (This is slated for a future release; it'll be very soon, however.)
