System Requirements
This document describes the minimum system requirements for the WP Cycling Event Management System. It is intended to be used for performing a gap analysis between the current system and the system developed by SCS Systems.
1. Events calendar
Keeping a regional cycling calendar is most important for us. Our members should be able to see not only a chronological list of events, but also be able to visualize this on a calendar.
We use All-in-one-events-calendar on Wordpress to provide a high level view on our website. Here I would suggest we provide a feed in the Events Mangement software which this calendar can ingest (i.e. iCal or similar format).
2. Event detail page
We need to display the details of the event. I think OnlineEntry has this covered well, so will not elaborate further.
3. Event categories
Participants should be able to select between multiple categories (subevents) when entering. These categories might differ in the following ways;
-
Distance
-
Start time
-
Price
-
Course
3.1. Age categories
In addition to the above some categories should have age restrictions. We implement an optional minimum and maximum age per category, with selection algorithm which will elimitate any categories not allowed by age.
3.2. Gender categories
Further, certain categories can be limited on gender, such as our Ladies Category in the league. The same mechanism should be possible.
3.3. Additional categories
Despite possible age and gender restrictions, as mentioned above, there is still a need to override some of these constraints. An additional function is needed to allow a category to be configured to allow the selection of another.
Optionally a product/price should be attached to it, charging an additional fee for that. Or alternatively and additional verification step has to be added to allow it.
This is typically used at a regulated event where, for instance, a master/vets rider can "ride up" to the Elite category. Although they do not fall within the age limits of that category, it is allowed, provided their national license was issues in that category.
4. Products and Checkout
Historically we used WooCommerce products, which we then link to the event entries, resolved via a Category / Event to Product lookup mechanism. WooCommerce then provide the normal cart, discount, coupon and checkout functionality.
5. Series
In addition to an Event we have the concept of a Series; a collection of events. We use it for 2 purposes;
-
To define common configuration parameters that we use in every event in a series (i.e. the 2017 Road League Series), which configures the products, categories, discounts, age categories, etc. all in one place. By linking an Event to a Series it inherits these properties, but it can be overwritten at Event level.
-
To allow another level of subscription/membership, which could incur an additional fee (via a product association). This is used for when we either want to charge a fee for entering a series (i.e. to cover the cost of the race number and administration), or to allow reporting (i.e. for a series leaderboard) of all the participants that took part in a series.
A series entry is typically never explicitly selected. It gets added automatically to an event entry, if a) that event is linked to a series and b) the participant has not entered the series, thus not partaken in an earlier event of the series.
If a Series product is added to the cart it is bound to the participant’s event entry which triggered it. When deleting the event entry the series entry is also deleted. It is not possible to only delete the series entry from the cart (the delete link is disabled).
6. CSA Membership and Licensing
6.1. Integration
The integration with the CSA Membership and License Validation service is trivial, but it forms an integral part of the validation process when entering a race.
6.2. Configuration
We have the following configuration parameters which can be set at series, event or category level;
-
CSA Membership Required
-
CSA License Required
-
CSA Day License not allowed (i.e. in a regional and national event you must have a license, you cannot take one out on the day).
-
Cascading configuration from Series → Event → Category. If a CSA setting is set at Series level it ripples down to the underlying entities.
-
Overrides - An explicit override can then also be placed at Event or Category level to override the setting at Series or Event level.