Drupal Sites Showcase

A showcase of Drupal sites & Drupal projects

Just Racing UK

Added by on Tue 11th Nov 2008
Just-Racing-UK(300).jpg

Project Info

This month, we launched the new Just Racing UK website, a racing and Triathlon (running, cycling and swimming) event management website. The build process was relatively complicated, involving a fair few modules, some of which were dropped, some of which worked right out the box, and some of which required a good degree of hacking and customisation.

Requirements

Just Racing’s first website was created by a different design company and offered the visitor the ability to view up and coming race events, and book races electronically through a third party. As well as bulking out the process for the visitor, Just Racing incurred very high processing fees.

We were asked to take inspiration from the exiting site, but add the ability to: –

Promote and Process events
Offer payment processing online
Vary sponsorships
Create and manage online start-lists (based upon age and swim-times)
Display previous years race results
Manage race-specific newsletter subscriptions
Utilise an existing database
It went without saying, but a fresh new look was also required.

The Core Modules

With it’s powerful, open framework and incredible array of modules, Drupal (version 5.x) was the first choice for a base platform (we did want Drupal 6, but at the time, Ubercart was not available for this release). The usual modules such as CCK, Views, FCKEditor and Webform were installed as standard.

The tricky part was finding an appropriate event booking and payment system, that could be developed into a larger database for the start-list tracking and newsletter subscriptions.

We looked at CiviCRM, Event, E-Commerce and Ubercart. After a lot of testing, trial and error, Ubercart was chosen as a base for the payment processing. We just needed to turn an event into a product taking into account product expiry (after the event date), single quantity (each user can only register once) and links to previous years’ results and start-lists.

Selling an Event with Ubercart

As with most Drupal concepts, there are many ways to achieve a task. Although there is an Ubercart Event module, after some testing we decided an integration with CCK Date was a better way to go. CCK works so well with views and allows for a much greater level of customisation on the date field that the Event module.

So, a Race Event CCK content type / Ubercart class was created using a combination of CCK Date, CCK Filefield (for results), CCK Imagefield as well as the standard CCK text fields.

By default, Ubercart has loads of physical product fields such as weight, stock level etc.. A custom module was created at this stage to hide these unnecessary inputs using the Form API. After all, an event needs to look like an event for the race editors as well as the visitors.

The final customisation for the race event was an expiry module. Once a race has occurred, we do not want visitors to be able to register for it, although they will revisit the node to view race results. This custom module simply hides the “Add-to-cart” button if a certain date has past and checks again upon payment (for saved carts from the past).

Race events have different pricings depending upon UK club membership discounts as well as single / team registrations. For this reason, Ubercart’s Fixed Price and AAC (Ajax Attribute Calculation) contributions were installed and several minor module and theme hacks were required to make it all work as required.

The Sponsors

Just Racing have a variety of sponsors for each event, as well as varying sponsors over time (which are displayed on the home page). A simple view was created the randomly vary the position of the sponsors. The sponsor nodes themselves use CCK Redirection and CCK Image to display a hyperlinked image to the sponsors’ website.

Event-Specific Newsletter Subscriptions

Just Racing UK needed to manage E-mail lists of people who have entered a particular event. Most of the events repeat annually, and Just Racing did not need year-specific filtering for the newsletters. This made the task very simple – we just created roles for each race name and created an Ubercart product feature to automatically add purchasers of a race to its particular role. The Simplenews with Simplenews Roles modules can be setup to send newsletters to the race-specific roles – perfect.

The Existing Database

One of the critical task was to import an existing database of over 5000 records. Essentially, the only information required was the name, E-mail address, date-of-birth and the races entered.

As the primary purpose of this database was for the newsletters mentioned above, a simple User Import was all that was required. The User Import module does not support varying roles out-the-box, but modifying the module allowed us to map role based columns from the CSV to roles on the user account.

Finally, users were notified on their new account on the website which greatly promoted the site and resulted in a phenomenal increase of event registrations.

Automated Start-Lists

The start list is the positioning of people at the beginning of the race. These are usually grouped by age and estimated swim time, but can vary upon other factors. A custom module was required here, using TAPIr as a display mechanism. Each race event has a custom SQL order clause which can be applied to a SELECT query which generates the list.

Currently, Just Racing are using their existing Excel-based start-list system, but the new one will be live soon!

The Theme

The theme itself was the usual two and three column CSS / XHTML using a PHP template.

As a varying two / three column theme was required, some of the CSS positioning is dependent on the visibility of the sidebars. To make the columns fill to the bottom, we used the overflowing margin trick with a solid back-colour.

The only other point worth mentioning is the primary-links. We wanted to vary the links depending upon whether we have a logged in user, but make sure that they are justified on both sides. We simply set the overflow of the primary-link container to hidden, and positioned the varying items towards the end. This navigation is actually perfect and required no further modifications.

And finally…

The site is doing extremely well attracting a large number of visitors and registrations, and we will continue to promote and optimise the site. An upgrade to Drupal 6 will be required at some point as we very much like to keep things as contemporary as possible.

Still to do is make the automated start-list go live as well as continuing to adapt the site to the evolving requirements of the business.

About NuMedia Advantage

NuMedia Advantage are a design and development company based in the UK specialising in Drupal and PHP development.

Comments (3)

stellarvisions : communication architects's picture

Great project info!
Thanks so much for sharing your process. The site is quite robust. Nice work.

The only thing from a user point of view — is I would like to see the results as text in the browser as well as a downloadable pdf. (Do you have your pdfs set to be searchable?)

One nit picky… the red link text in the upcoming events is almost impossible to read. Both colors are almost the same value; you need more contrast.

best

s

—-
Stella Gassaway
principal

STELLARVISIONS : communication architects

We design culture-driven tools™
that shape how information is
organized, displayed, shared, and
experienced.

Thanks Stella,

I would love for the results to be available as text in the future. Currently, we’ve just added links to the previous years PDFs (searchable PDFs depends on how they have made them), but as time goes on the results will hopefully be included in the database. A lot depends on how much more the client wants to invest, although looking at the current performance, I think it would be worth it.

Similarly, the start-lists will also be text using TAPIr, as soon as we have a large enough data sample to work with. This has already been covered by their initial investment.

Finally, the contrast on the red looks OK from here. We’ll check on a few different machines, and ask the client what they think – changing the grey would be easy though..

Thanks again,

David

stellarvisions : communication architects's picture

Hey David,

I thought budget might have something to do with it.
I was looking at the red on two different Macs one a laptop the other a 24 flatscreen.
It was hard to read when I was looking in windows on the mac too.

Could be I’m just getting old.
Thought you would want to investigate though.

Thanks for the reply.
It’s good to create thoughtful converation.

s

—-
Stella Gassaway
principal

STELLARVISIONS : communication architects

We design culture-driven tools™
that shape how information is
organized, displayed, shared, and
experienced.