The book club has two main options for managing event data in Drupal. The options are indicative of a common trend amongst Drupal's contributed modules. Specifically, there is a long-standing module in the Drupal community simply called Event (http:// drupal.org/project/event), which natively handles most of the required features. The other option, and the one we will be using in this chapter, is a combination of CCK and Views add-ons: the Date module (http://drupal.org/project/date) and the Calendar module (http://drupal.org/project/calendar), respectively. The main differences are as follows:
• The Event module allows per-content-type "event enabling," which means that it will add a start and end time to any existing content type. Included with the module is also an entire system for viewing your created events and even a block for listing upcoming events.
• The Date module offers a CCK field type for handling dates. The Calendar module is a Views plug-in that renders a view in a browsable calendar layout.
Both options are capable of meeting all the requirements for the book club's site. In fact, when compared side by side, they look functionally equivalent: both options allow us to create new events, view a list of upcoming events, and offer rich, full-featured calendar displays. In fact, by working with any content type, the Event module still allows us to use CCK to build custom content types for our event data (for example, for holding additional information about events). This significantly blurs the line between the solutions, particularly compared to the choice between the Image module and Imagefield, as discussed in Chapter 7. With the Image module, a specific content type ("image") is defined, whereas with Event you can reuse any custom content type. Furthermore, Event is a single module without any dependencies, whereas Date and Calendar require CCK and Views respectively. So why not use the Event module?
As we've discussed in several earlier chapters, the CCK and Views modules represent the future of site building with Drupal. Their added flexibility and granularity present far more flexible options for tailoring the modules to fit our site's exact needs. By being more narrowly focused, Date and Calendar also implement their specific features more completely. This is particularly true of the Date module, which has several more options for date format support than Event. Also, by going with a CCK and Views native solution, improvements and efficiencies will automatically trickle down as CCK and Views continue to evolve new features.
Essentially, the reason to use the Event module would be either for legacy purposes or ease of installation. For more information about event-related modules, see the Event category on Drupal.org (http://drupal.org/project/Modules/category/61).
Was this article helpful?