Introduction

This project provides an event-registration service for Bedework that allows authenticated users to register for events. Users may view and modify their registrations, such as unregistering or changing the number of tickets they’ve requested. When registration is full, users may choose to be placed on a waiting list. Users on waiting lists will automatically be moved up in the queue if space becomes available.

Registered Event

.1. Enabling and Disabling Public Events Registration

.1.1. Enabling Public Events Registration

The public events registration system is enabled by default if you have installed Bedework with the data available in the quickstart.

.1.2. Disabling Public Events Registration

If you wish to disable the public events registration system, remove the "Eventreg admin token" from the System Preferences in the jmx console:

  • Log into the Bedework jmx console, e.g., http://localhost:8080/hawtio

    • Click "org.bedework.bwengine" in the left menu, then "service=System" in the right menu

    • Remove the value in the EventRegAdminToken field

    • Click "Apply Changes"

    • Invoke "saveConfig" to save your changes.

.1.3. Enabling Public Events Registration (possibly after upgrade from a previous release)

First, ensure that the CalWs interface is available. This is the SOAP service that the event registration service uses o communicate with bedework. In system.xml make sure the <calSoapWsURI> element is present and has the same value as the soap:address element in pubcalws-soap/wssvc.wsdl (this requires better explanation—it’s a file deployed in the bw-xml ear)

If you have upgraded from an older release, you may not have the data required for event registration in your system yet. Follow these steps to turn on the event registration system: (Please note: the process outlined below is only set up for the default quickstart and postgresql configs at the moment.)

  • Start up jboss and apacheDS

  • Log into the JMX-Console shipped with Bedework’s JBoss, e.g., http://localhost:8080/hawtio

    • Click "org.bedework.eventreg" in the left menu, then "service=Eventreg" in the right menu

      • If no database exists:

      • Set “create” and “export” attributes to "True"

      • Click "Apply changes" button (at the bottom of the list of attribute values)

      • Find the "schema" operation in the lower list, and click the “Invoke” button to export schema and create database

      • You should see a successful result; click "Back to MBean" button to return to "service=Eventreg"

      • Point at needed systems:

      • Set the WsdlUri attribute value to: http://localhost:8080/wsdls/pubcalws-soap/wssvc.wsdl

      • Set the TzsUri attribute value to: http://localhost:8080/tzsvr

      • Click "Apply changes" button

      • Admin token:

      • If no admin token exists, click “generateAdminToken”

      • You should see a successful result; click "Back to MBean" button to return to "service=Eventreg"

      • You should see a string such as "c0e93685-93cd-4bee-bed2-9996b89be28c" in the EventRegAdminToken attribute value.

      • Copy the EventRegAdminToken value (for use in the next step)

    • Click "org.bedework.bwengine" in the left menu, then "service=System" in the right menu

      • Paste the value into the EventRegAdminToken field

      • Click "Apply Changes" button

      • Invoke the "saveConfig" operation to save your changes.

  • Test:

    • Add a new public event. You should be able to select the checkbox "Users may register for this event", and make the event registerable.

    • Visit the event in public client — you should be able to register for it.

.1.4. Notifications from EventReg

The event registration service will send notifications to the calendar engine when changes take place that might require notifying users. The event registration service calls the calendar engine notification web service (not to be confused with the notification engine). This web service allows the core engine to add notifications to the accounts of subscribed users. It is the job of the notification engine to forward those via email or some other service.

To configure notifications from eventreg, you need to set the BwId, BwToken and BwUri properties in "service=Eventreg"and the NotifierId and NotifierToken values in "org.bedework.bwengine" → "notifications"

1. Event Registration Bedework Calendar Administration

When creating or updating events in the bedework administration client, events may be flagged as 'registerable' by setting the "Users may register for this event" checkbox.

Extra form elements will become visible as shown below. Event administrators can specify how many users may register, how many tickets each registrant may request, and set the opening and closing dates of registration.

Register Event Form

1.1. Displaying the current status

Clicking on the "View registrations" button will take you to a screen showing the current registrations for the event. This screen also allows the administrator to hold some tickets and to update or remove registrations.

1.1.1. Custom Fields

Administrators may add custom field elements for use during registration. These custom fields are displayed to the user when they register for the event. These fields can be used to obtain extra information from the user as they register, for example dietary restrictions.

Currently, the results are only visible in the downloaded registrations.

1.1.2. Data elements

Data about the event is maintained in x-properties attached to the event and provides the following information:

  • Booking window start and end

  • Number of tickets

  • Max number of tickets per person == Event Registration Administration client With this client, administrators can view and modify a registration list and download CSV files of their registrations on-demand.

1.2. Main view

The main view is reached by a link in the calendr admin client. The view seen is dependent on the calendar suite and shows

1.3. Action: List forms

Path

listForms.do

Parameters

calsuite

This lists the current === GET Actions ==== addForm.do ==== adjustTkts.do ==== changes.do ==== commitForm.do ==== deleteField.do ==== deleteForm.do ==== disableForm.do ==== download.do ==== editForm.do ==== logout.do ==== removeReg.do ==== showRegistrations.do ==== updateReg.do

1.4. POST Actions

1.4.1. addField.do

1.4.2. hold.do

2. Reports