How To...

CheckIn Kiosks

The following aticles show different ways how to use a Checkin Kiosk for different purposes. 

Search for Participants Using a Unique QR Code

The main idea here is, that the participant will receive a QR code which is sent with an e-mail template after completing the registration form.This QR code contains a personal and random value which identifies the participant uniquely.

During race pack collection the participant can show this QR code, which is then scanned in the search step of a Check-In Kiosk when working with the Event Tools App.

User Defined Fields and Advanced Settings in Registration

First step is to add an additional field where we can save the string to uniquely identify the participant later.

In the registration form's After Save Actions we add the additional field [IdentificationNo] to store an additional value with a specific expression:

With this expression ("md5([Firstname]&[Lastname]&[YearOfBirth]&[Random]") a combination of the participant's entries ([Firstname], [Lastname], [YearOfBirth]) and a random value are saved in the additnioal field. The field [Random] is a Derived Field which returns a random number between 0 and 1. Additionally we use the md5() function in order to get a more secure string, which is quite impossible to copy.

QR Code Generation

The QR code will be generated in a certificate which can then be sent to participants with the confirmation e-mail. You can generate the QR code under Output >> Certificates via the small barcode icon on the right side in the tools section:

This will first create a barcode, but it can be changed to a QR code with the dropdown you find in the upper section.

After changing to the QR code we need to select the correct field which we want to save in the "QR code data". To do so, select the QR code and start typing the name of field where you save the unique participant data during the online registration. Select the desired field from the dropdown of suggested datafields.

Email Setup

The confirmation email is set up in the Email/SMS Templates. As the participant should receive his QR code with the confirmation email after the online registration, the pre-setup certificate needs to be added as an Attachment to the email:

Event Tools App usage

After logging in into the Event Tools App select your Event and open the Checkin Kiosk for the Bib-Pickup.

By selecting the small, blue QR Code symbol on the buttom of the smartphone the app enables a camera mode which allows to scan QR codes for the search entry field. In this mode the QR code for the bib pickup can be scanned and the participant's information and edit fields are going to be displayed in the next step:

 

After searching the participant in this way, it is possible then to adapt the editable data in the next step. This could be also a Dynamic Bib Assignment.

Dynamically Transponder Assignment

Instead of preparing a chip file and sorting chips correctly to the participant's bibs or racepacks before the event, it is possible to assign transponders easily on-site dynamically by using the Checkin Kiosk.

The transponders can be either assigned manually, by typing in the transponder code, or automatically by using a Decoder, Management or USB-Timing Box. It is also possiible to use the QR-Code scanning option of the Event Tools App.

It is recommend to first import all transponder codes to the Chip File with bib number "0", this allows you to also verify the correct transponders are being assigned if using manual entry. This can be done easily scanning the transponders with a Management Box or a USB-Timing Box connected directly or through TagTool. 

Checkin Kiosk setup

The basic setup for the Checkin Kiosk is the same for all three options. The small differences are explained in each option's description below.

In the general settings it is recommended to set the transponder Assignment Mode to Error un multiple assignment. In this case we get a notification if a transponder is getting assigned a second time (for what reason ever). Additionally, set the accepted transponder codes accordingly to use those in the chip file if applicable.

In the search step of the Checkin Kiosk we determine the fields that can be used for identifying a participant. This could be for example the first- and lastname, or a specific identification number which is encoded in a QR code. This QR code could be scnanned by using the EventTools App in order to search for the participant in the database. How to set up this feature is described in the following article: Searching for Participants using a QR code.

In the step for assigning the transponder code to the participant, the only editable field should be the Transponder1 field (and Transponder2 field, if two transponders per participant are handed over). If more data should be editable, the corresponding fields need to be added either in this step, or in additional step. It is for example also possible to combine the transponder assignment with a [[@41740|dynamic bib assignment].

Manual transponder assignment

The easiest way without any additional equipment is assigning the transponder by typing in the transponder code manually on the laptop or by using the EventTools App.

If a wrong transponder code is entered, we get a notification, that this transponder is not in the chipfile that has been edited before:

If somehow an already assigned transpondercode is entered because of a typo, we get again a notification:

After clicking on the "Finish" button the entry of the correct transponder code is saved to the participants data and the transponder has been assigned correctly.

Transponder assignment with Management, USB-Timing Box or Main Timing System

Instead of reading the small printed transponder code, transponders can also be scanned directly with one of the following devices, you will need to have the RACE RESULT Web Server running on the computer running the kiosk. 

  • Management Box in Check mode
  • USB-Timing Box in Check mode
  • Ubidium
  • Decoder with Active Extension connected

When connected, click the red connection icon to search for available devices and select the relevant device, the connection icon will turn green when it is connected. 

Now it is possible to simply scan the transponder on the device and the transponder code is copied in the entry field automatically. 

Transponder assignment with EventTools App

Using a Checkin Kiosk on the EventTools App gives us the oppurtinity to use the QR-Code scanning option which is implemented in the App.

As a preparation for the transponders, all need to have a sticker on them with a QR-code which contains the Transponder code. In the Checkin Kiosk advanced settings for the editable Transponder1 field  we need to select QR Scanner input when using the EventTools App:

 

By doing so, the small blue QR-Code symbol on the bottom of the screen will be shown in the App for scanning the transponder's QR code and to encode the transponder code:

 

Dynamic Bib Assignment

Using dynamic bib assignment allows for a faster bib collection for participants and can also reduce errors, participants are assigned the next available bib number rather than having to search for and select the correct bib. 

Bib Numbers

The first step is to set up bib number ranges that are outside of the actual bib number ranges which are going to be used for the event. The bib ranges are set up in the Participants Data -> Bib Numbers menu:

After the online-registration the participants are going to be saved in the event file with a bib number in these ranges. During the bib pick up, the bib number will be changed in the participant's data to the bib the participant receives at the bib pick up booth.

If the assigned number ranges overlap with your actual bib number ranges it may be necessary to use the reassign bib numbers in the Adapt Data menu.

Checkin Kiosk

Bib numbers can be dynamically assigned using a Checkin Kioskvolunteers need to simply search for participants and then assign the bib number. 

In the search step we determine the different fields that can be used for searching, e.g. firstname, lastname or a personal identification number that is evaluated during the registration process. By using the Event Tools App it would be even possible to scan a QR code which is for example encoded after the registration for each participant in order to identify the participant uniquely. How to use the App and the QR scan to do so, can be read in this article: Search for Participants Using a Unique QR Code.

In the second step, the only editable field is the Bib field. By using the Special funtion "Hide current value", the current bib number (which is an invalid number) will not be shown: 

 

After the search step and selecting the correct participant, it is possible to enter the new bib number manually:

After clicking Finish the new bib number is assigned to the participant.

Again, when using the Event Tools App to assign the bibs dynamically, it is also possible to use the app in combination with the BLE Reader. In the details for the the Bib entry-field we can determine the BLE Reader as an input device, when using the Event Tools App:


By doing so, the volunteer can just take the bib out of the box, scan the transponder once and the Reader will instantly read the bib number and will automatically fill the corresponding field. This way is a bit less error-prone, as the volunteer has no need to type in any numbers, however it does require that you are using bibs with matching transponder codes. Alternatively you could combine the bib assignment with Dynamically Transponder Assignment.

Registration

Managing Online Payments

Set Entry Fee Based on Group Size

Events may offer discounted entry fees for group registrations, typically calculated in one of the following three ways:

  1. Discount Starting from the n-th Participant: The discount is applied only to the n-th participant and any additional participants thereafter.

  2. Discount for the Entire Group: The discounted entry fee applies to all participants in the group, provided the group meets a minimum size requirement.

  3. Fixed Price for Group Registration: A set price is applied for the group registration, regardless of the number of participants in the group.

Setting up a Registration form of type Self Service

It is often useful that participants are able to change their own data online. For this you can provide participants a unique individual link to a Self Service form (What is a Self Service form?) where they can adapt their data.

Registration Form Setup

The form is setup as a  Registraion Form, create a new form and select the type Single Self Service.

The form type Self Service allows a special element type in the formfields:

This field type is used to show pre-existing data which should not be editable. For example in this case the participant would only be allowed to change his contest or the club name, as these fields are still set as Input Fields

The URL to the participant's personal Self Service form is generated using the Changelink() function, this can be send in an e-mail template, to see how check our Knowledge Base guide on Adding a URL-Link for a Self Service form in an Email template.

When the participant opens the Self Service form via the link he received through the Email, he will see his pre-entered data and be able to adapt the data that is editable for him.

 

Sending a Payment Link with a Self Service Form

In some cases participants may have to pay additional fees after their initial registration either for additional services or because the fees were not captured originally. These fees can be captured using the same Online Payment methods as used in the Registration Forms, and can be sent to participants by creating a Self-Service form with the online payment enabled. 

Registration Form Setup

The payment form is setup as a Registration Form, create a new form and select the type Single Self Service.

In this case it is not necessary to have a step in the registration form where the participant is able to adapt any data, therefore, we add only a very basic "Finalize Payment" step in the self service form, where only the Entry Fees are shown:

To then enable the payment in the form, activate the Online Payment in the form settings. See here for detailed information: Online Payment.

When the participant opens their Self Service form, they will see the summary of entry fees that are due, and the second step will then allow them to complete the online payment. 

The URL to the participant's personal Self Service form is generated using the Changelink() function, this can be send in an e-mail template, to see how check our Knowledge Base guide on Adding a URL-Link for a Self Service form in an Email template.

Adding a URL-Link for a Self Service form in an Email template

When using self-service form it is most common to send these in an e-mail either through to the E-mail / SMS Module or as an e-mail confirmation during registration.

To do so the e-mail format must be set to HTML, then It is possible to insert a URL link by clicking the link icon (  ) and using the Changelink() function.


When clicking the link icon, a small window pops up where the Display Text can be adapted, this is the text that will be shown in the email instead of the whole URL link. In the URL section we call the Changelink() function in square brackets. Inside the ChangeLink() function you need to then type the name of the registration form in quotation marks.

It is very important to select the Protocol type <other> as the ChangeLink() function will already create the https:// prefix.

In order to send out the confirmation Email automatically, the template needs to be added in the After Save Actions of the regular registration form.

Awards

Stop "Double Dipping" for Age Group Award

Sometimes the Overall Gender winners are not elligible for their respective age group prizes (known as double dipping), and so they should be excluded from the Age Group Ranks.

This is easily achieved by adapting the Filter for the Age Group Rank to say that Gender Rank must be greater than, for example, 3.

In this example we are awarding top 3 Males / Females and subsequent Age Group prizes, but the gender top 3 cannot win their age group as well.

To do this we would add "AND [Rank2]>3" to our Filter for the AgeGroupRank

Master, GrandMaster, and Double dipping

Our Knowledge Base article Stop "Double Dipping" for Age Group Award will explain the basics of double-dipping. This article will discuss an advanced double-dipping setup where you have a MasterRank and a GrandMasterRank.

User-Defined Fields/Fcts.

First, create UDFs to help us organize the various filters needed for our rankings. Listed below are the UDFs you will need.

These two UDFs check for rank eligibility. For example, IsMaster checks to see if the participant is aged 40 to 49.

Name Expression
IsMaster
[Age] IN "40-49"
IsGrandMaster
[Age]>=50

 

The award depths UDFs are where you store the award depth value for each ranking.

Name Expression
GenderAwardsDepth 3
MasterAwardsDepth 1
GrandMasterAwardsDepth 1

 

These three check to see if someone is an award winner for that ranking. For example, IsGenderWinner checks to see if someone has a GenderRank greater than 0 and a GenderRank less than or equal to the GenderAwardsDepth. If they do, they are considered a winner for that ranking which will be represented by the number 1. Those who do not fit this filter will be represented with the number 0.

Name Expression
IsGenderWinner
[GenderRank]>0 AND [GenderRank]<=[GenderAwardsDepth]
IsMasterAwardWinner
[MasterRank]>0 AND [MasterRank]<=[MasterAwardsDepth]
IsGrandMasterAwardWinner
[GrandMasterRank]>0 AND [GrandMasterRank]<=[GrandMasterAwardsDepth]

 

Rankings

The above UDFs can now be used to filter your rankings.

Name Filter
GenderRank
[Finished] AND [Status]=0

MasterRank

[Finished] AND [Status]=0 AND [IsMaster] AND [IsGenderWinner]=0
GrandMasterRank
[Finished] AND [Status]=0 AND [IsGrandMaster] AND [IsGenderWinner]=0
AgeGroupRank
[Finished] AND [Status]=0 AND [IsGenderWinner]=0 AND [IsMasterAwardWinner]=0 AND [IsGrandMasterAwardWinner]=0

GenderRank has the default filter checking for if the racer finished the race and if their status is normal (represented by a 0).

MasterRank, we add the filter

AND [IsMaster] AND [IsGenderWinner]=0

IsMaster checks to make sure the participant is eligible for the MasterRank. [IsGenderWinner]=0 checks to make sure the participant is not a GenderRank winner meaning they are not within the specified awards depth for GenderRank.

GrandMasterRank has a similar filter to MasterRank. The only difference is that IsMaster is changed to IsGrandMaster.

AgeGroupRank filters by all the IsWinner UDFs since it is last in the ranking order, we want to make sure that none of the previous winners are eligible for the AgeGroupRank.

Output Report

For an advanced awards report, please see Advanced Awards Report (Different Award Categories in one List).

To add a basic output report for MasterRank and GrandMasterRank you can simply copy the Gender Results report from our standard template. Make sure to update GenderRank to MastersRank in all three sections, Grouping/Sorting, Fileds/Columns, and Filter.

 

Attached to this article is a copy of a basic event file with all of these functions, rankings, and output reports.

 

Advanced Awards Report (Different Award Categories in one List)

The following example shows how to create a single output list that lists all award winners in a single list. Note that this method is only possible when preventing "double dipping" - since each participant can only appear in the list once. 

User Defined Functions

This setup uses some User Defined Functions, isGenderWinner, isAgeGroupWinner, and AwardsDepth to automate some of the calculations.

This assumes you are using one of the standard templates where your ranking that groups by gender is called GenderRank and your ranking that groups by age group is called AgeGroupRank. If your rankings are different, adjust accordingly.

Rankings

Add rules for double dipping to the Rankings settings, add the below to the filter of AgeGroupRank.

AND [GenderRank]>[AwardsDepth]

This will ensure the participants with GenderRank less than or equal to our AwardsDepth will not get a ranking for AgeGroupRank.

Output List

What makes this list work is the Grouping/Sorting and Filter settings. The first grouping should be [Contest.Name] so that all contests are separated in the report.

Use a switch() statement to determine who on the report is considered an OverallWinner and who is an AgeGroupWinner. The UDFs, isGenderWinner, and isAgeGroupWinner, will help with this.

switch([isGenderWinner]=1;"Gender Winner";[isAgeGroupWinner]=1;"Age Group Winner")

Since GenderRank and AgeGroupRank are grouped by Gender, use the UDF MaleFemale as the next grouping criteria. Next, group by AgeGroup.Name but only for the AgeGroup winners.

An if() statement can be used to check the isAgeGroupWinner UDF and return the data filed AgeGroup.Name for participants who are age group winners. Lastly, sort by Status, GenderRank, and then AgeGroupRank.

Output List Filter

For the Filter, the isGenderWinner and isAgeGroupWinner functions can be used. Looking back at the UDF setup, these UDFs are set to filter by Rank greater than 0 and Rank less than AwardsDepth. This ensures that only participants who are in the allotted awards depth will appear on the report.

Setup Multiple Wave Starts

By default the Start Times (T0) will be set per Contest, however many races require wave starts according to other criteria such as age group, a pre-defined wave number or at scheduled intervals in races such as Time Trials, they may even be random waves with athletes checked in for each. 

Pre-Assigned Waves

If wave starts are pre-defined by some criteria then you can set the Start Times to Wave Start according to: and then enter the required field or expression in the entry field, this can be any text or numerical value. 

The list of Start Times will now show a record for each value which is entered in that field or returned by the expression, it will also return an entry with a blank title where no value is returned. 

You can now enter a Start Time for each wave as normal. 

 

Calculated Wave Starts

The alternative is to calculate a wave start time or assigned start time directly in a result, this is useful for Time Trials or races where waves of participants start at fixed intervals, such as pool-based triathlons. 

In a result create the calculation, for example if participants are in pre-assigned waves and each wave starts 30 seconds apart then you could import the Wave number to an ATF and then your Start Time Calculation could be:

T0 + (Val([Wave])-1)*30

We still use T0 for the first wave to start and then for each wave 30 seconds is added, similar expressions could use a Bib number or sorting rank for individual time trial starts. This does rely on each wave starting on time. 

When using a calculated wave start then you should disable Subtract Start Time (T0) in your Timing Point setup, and you would need to subtract the calculated start time for the relevant results. 

 

Random Waves

The final option occurs when no fixed waves are assigned, participants may be checked in over a specific timing point and then started in groups of a certain size. 

In this way T0 is irrelevant, so again ensure this is not subtracted from your results. Setup a result using an advanced rule to take the appropriate check-in time, most likely the Maximum detection at your check-in Timing Point. 

You can then use the Marker on the decoder and capture a marker for each wave start, and use a second result with an advanced rule to look for the appropriate marker. This is most likely to be the First Marker after the check-in result. 

You can now use this result as your reference to subtract as the Start Time. 

 

Participants in the Wrong Wave

If a participant does not start in the correct wave then you can either change the value of the assigned wave value or overwrite the time in the individual participants results. A second wave override ATF is also commonly used as part of an expression so that waves can be re-assigned if the waves are based on a fixed value such as Gender or Age Group. 

Handle Multi-Day Races

When timing a race which will go through midnight over multiple days there are some special considerations to make with your setup in RACE RESULT 12. 

Firstly it is important to understand how the software handles this, rather than using a date/time combination the times will simply continue to count up past 24:00:00 rather than restarting from 00:00:00, so for example 3:30:00am on day 2 would be a time of 27:30:00 or 1:03:30:00 in RACE RESULT 12. 

When working with multi-day races you must set the event Date From and Date Until in the Main Window - Basic Settings. 

Only if this is set you will now be presented with three options in the Timing Settings, this controls how the software handles multi-day events.

Ignore date, time starts over at 0 after midnight - with this option the times will start from 00:00:00 at midnight again and RACE RESULT 12 will NOT calculate results that go through midnight. This is useful for events over multiple days which may have different races on different days and so it makes sense to start each day from 00:00:00

Subtract Event Date - when selected this will automatically consider the Event Start Date as the starting point and the times will now continue to count up past 24:00:00 for every subsequent day after this date. With this setting the date will always be tied to the Event Date.

Subtract this start date - when selected this will by default set to the Event Date From, this date is considered the starting point and the times will now continue to count up past 24:00:00 for every subsequent day after this date. With this setting no matter if the date is changed the times will be correct. 

Transponder Code Validation

The following fucntions allow you to validate an input matches the pattern of a valid RACE RESULT Active Transponder code, for example if participants are required to enter an individual transponder code during registration. Note it does not truly validate if it is a valid Transponder code. 

If you are using Check-In kiosks to assign transponders then it may be easier to use the option to only allow transponders which are in the chip file to validate against your own stock of transponders. You can import a chip file with all bibs set to 0 for this. 

This can be entered as a User-Defined Function which takes an input to validate the value entered. 

Create a user-defined for isTransponder(x), or an applicable function name with the following expression, this checks that the length is 7 characters, the first 5 digits should be letters and the last 2 digits should be numbers.

Len([x])=7 AND isAlpha(left([x];5))=1 AND isNumeric(right([x];2))=1

e.g. isTransponder([Transponder1]) would return 1 if the value in Transponder1 matches this pattern. 

Insert Images / Files

Output Lists

Images stored here can be directly inserted into Outputs using the "[img:.....]" tag.

Certificates

Images can be inserted using either a standard image insert, which opens an image selection window when clicked, or as a data dependent image. For data dependent images you must use the image name, exactly as saved, as text in your expression.

my.raceresult.com Text Boxes

When inserting images in text boxes, such as the Info Page, you must use the image URL to insert the image. When an event file is accessible via my.raceresult.com each image has a publicly accessible URL which can be used to access images in all parts of the software. The format is as follows:

https://my.raceresult.com/EventID/elements/picture.php?eventid=EventID&name=imagename.png

where the EventID and imagename must be replaced with the corresponding Event ID and correct file name.

In the text box of your choice click on the image icon to add an image, the link icon can also be used to link to other files stored in your event file, such as PDFs which may be used for an event guide. 

In the image properties box add relevant URL for your image, you can adjust the image size by using the width and height settings.

E-mails

Images can be inserted into Creating Email Templates in the same way as my.raceresult.com text boxes using the image url. 

If attaching images or files as an attachment to your template then you must ensure that the file type is included in the attachment name, otherwise, the file will be sent with no type and the recipient may be unable to open the file correctly. 

When inserting images into e-mail templates you can optimize the URL by using the Event.ID data field within the URL so it is automatically updated when you copy an event file. This can be useful for e-mail templates if you always use the same name for particular images such as headers or logos.

https://my.raceresult.com/[Event.ID]/elements/picture.php?eventid=[Event.ID]&name=imagename.png

Accessing images in folders

If your image is the common or my folder you need to use URL encoding to access that folder. When accessing a folder normally you would use a slash in between the folder and the file name. Here we want to replace the slash with the URL encoded version of a slash which is %5C. In this example, we are accessing the my folder.

https://my.raceresult.com/EventID/elements/picture.php?eventid=EventID&name=my%5Cimagename.png

Website Integration

You can embed the pages from my.raceresult.com on your own site using some simple Javascript. To find the source code for this you open any of your event files and navigate to my.raceresult.com > Website integration section.

You can use either the HTML code which uses javascript, or the Wordpress plugin, although this is much more limited. 

Dynamic Lists

Since each embedded page uses two key variables (Event ID and page), it is possible to create a single page to handle multiple events or event different pages. You can do this by passing a variable through the web page URL into the embedded Javascript.

Here you can see the eventid variable is passed from the URL into the function to load the event id specified in the URL.

<div id="divRRPublish" class="RRPublish"></div>
    <script type="text/javascript" src="https://my.raceresult.com/RRPublish/load.js.php?lang=en"></script>
    <script type="text/javascript">
        <!--
            var rrp=new RRPublish(document.getElementById("divRRPublish"), eventid, "results");
        rrp.ShowTimerLogo=true;
        rrp.ShowInfoText=false;
        -->
    </script>
    <style>
        /* Add custom CSS here or elsewhere to change the design */
    </style>

 

Embedding Different Languages

By default the embed code includes the language parameter for the current working language, it is possible to change the language for lists and registration according to your needs. 

Default Browser Language

Removing the lang parameter from the URL will allow the script to then query the language of the browser and will automatically use this language, this is the same behaviour as used on my.raceresult.com

Fixed Language

You can build out a web page for each language. Here you can see the language is defined as English by setting the lang variable to en.

<div id="divRRPublish" class="RRPublish"></div>
<script type="text/javascript" src="https://my.raceresult.com/RRPublish/load.js.php?lang=en"></script>
<script type="text/javascript">
<!--
    var rrp=new RRPublish(document.getElementById("divRRPublish"), 123456, "results");
    rrp.ShowTimerLogo=true;
    rrp.ShowInfoText=false;
-->
</script>
<style>
  /* Add custom CSS here or elsewhere to change the design */
</style>

Alternatively this parameter could be passed dynamically from a query parameter, however this would require additional work to implement correctly. 

 

For more information on how multiple languages work within RACE RESULT 12 and a list of all supported language codes, you can check out Multi-Lingual Online-Registration.

Embed Multiple Lists on the Same Page

When embedding multiple lists on a single page you need to define unique div ids for each. By default, the source code for embedding participants, results, and live pages uses the same div id.

This portion of the code shows the div that will contain the loaded page. The id divRRPublish will be the same for all three lists.

<div id="divRRPublish" class="RRPublish"></div>

With the HTML language ids have to be unique. If you want to embed multiple lists on a single page this id needs to be changed. For example, you could add an extension to the name like this

<div id="divRRPublish_results" class="RRPublish"></div>
<script type="text/javascript" src="https://my.raceresult.com/RRPublish/load.js.php?lang=en"></script>
<script type="text/javascript">
<!--
	var rrp=new RRPublish(document.getElementById("divRRPublish_results"), 123456, "results");
	rrp.ShowTimerLogo=true;
	rrp.ShowInfoText=false;
-->
</script>
<style>
  /* Add custom CSS here or elsewhere to change the design */
</style>

In this example, divRRPublish is changed to divRRPublish_results. This creates a unique id that the other lists do not use. Note the variable is changed in two places as shown in bold in the example.

Embed a list of events

If you want to embed a list of all of the events in your RACE RESULT account you can do so by embedding the List of Events source code on your site.

<link rel="stylesheet" type="text/css" href="https://my.raceresult.com/RREvents/style.css">
<div class="EventTable" id="tEventTable">
<div><div>&nbsp;</div><div>&nbsp;</div><div>City</div><div>Event</div><div>Date</div></div>
</div>
<script type="text/javascript" src="https://my.raceresult.com/RREvents/RREvents.js"></script>
<script type="text/javascript">
<!--
	var options= { dateFormat : 'mm/dd/yyyy' };
	var rre=new RREvents(document.getElementById("tEventTable"), null, 'en', options);
	rre.server="https://my.raceresult.com";
	rre.user=11111;
	//rre.year=2017;
	//rre.group=1234;
	//rre.eventlink="http://your.webseite.com/events/show?eventid=[eventid]";
	//rre.openInNewWindow=false;
	rre.loadEvents(function(resultSize) { return true; });
-->
</script>

This source code has several variables that allow you to customize what events are shown.

  • rre.user - This defines the RACE RESULT user account to pull events from
  • rre.year - This will filter events so that only events from the specified year will show
  • rre.group - This will filter the list to only show events in the specified group
  • rre.eventlink - If you have results embedded on your own site you can use this variable to link directly to that page. Note the eventid URL parameter at the end of the URL. You can use this with a dynamic results page list to lookup results from any event id.
  • rre.openInNewWindow - If set to true, when an event is selected it will open in a new window.

Any variables that have the // before them are commented out. This means they will not be loaded.

Customize with CSS

You can customize your embedded results using CSS. This allows you to change anything from font size to button colors. There are a lot of options here. This section will give an example of a basic change and explain the process of locating an element to make a small change. Keep in mind that any CSS code that is added in the Online Registration > Basic Settings section will also be applied here. 

Basic CSS Editing

A basic example of changing CSS could be to change the font color of the entire page. We can do this by adding a style to the <html> tag.

<div id="divRRPublish_results2" class="RRPublish"></div>
<script type="text/javascript" src="https://my.raceresult.com/RRPublish/load.js.php?lang=en"></script>
<script type="text/javascript">
    <!--
        var rrp=new RRPublish(document.getElementById("divRRPublish_results2"), 123456, "results");
    rrp.ShowTimerLogo=true;
    rrp.ShowInfoText=false;
    -->
</script>
<style>
    html {
        color: red;
    }
</style>

Here we use the CSS field color to assign a color of red. This will change the color of all text on the page to red, However, if there is text on the page that has its own style then that text will not be overwritten. You will see this with the text link to show all participants.

Create Backups

Regularly there is need to create a Backup of an event file, for example

  • when one of several contests is finished and you would like to save the current data status.
  • before operations which concern several or all participants, e.g. when deleting data or manipulating data.

 

Creating a Backup

There are several options to create a backup file of an event:

  1. Go to Overview -> Technical Information. You will find a link to download a backup (Note, this option is not available if you are not the owner of the file).
  2. When working offline, a backup can be created easily by copying the event file. Select the file in Windows Explorer and press CTRL+C and then CTRL+V.

Restoring a Backup

If something goes wrong during an operation and you want to revert to the backup, take the following steps:

If you work offline, take these steps:

  1. Close the RACE RESULT Web Server and all other programs that access the file.
  2. Rename the backup file to show that you are working with this file now, and then continue working with it as before.
  3. Remember to create a new backup if you want to try to execute the previously failed operation again.

If you work online and want to access a backup offline on your computer, it is best you take these two steps:

  1. Check out the faulty event file. Close the file after the download and delete it.
  2. Then open the backup file and check it in instead of the faulty file.

Automatic Backups

Every night a backup of all your events saved online is created automatically. If you need access to one of these backups, you can request the backup via email from RACE RESULT.

Backup without Backup file

If you executed an incorrect data manipulation but did not create a backup prior, there is still the possibility to use the History to undo your changes: In the Participants Window under History you can create a complete export of the history and thus create an Excel file which will rewrite the old values via the Participant Import (with the option Update existing participants).

Live Backup

The Live Backup is a function to always have an up-to-date backup on another computer or an external drive (e.g. USB thumb drive). In case of a black-out of the main computer (e.g. hard drive crash) you can continue working with the backup file on another computer. 

The live backup is started in the RACE RESULT Web Server via File->Start Live Backup Locally (backup on a local drive) or Start Live Backup Externally (backup on another computer on which the race result software needs to be running).

Move an Online Event to a Different Account

Events can be shared with multiple accounts through the Access Rights.

It is not possible to directly transfer an existing event to a different account, a copy of the event file must be uploaded to the second account which will generate a new Event ID. Note that unless you delete the original event file, it will still remain active. 

Download backup of the event file

Under Overview>Technical Information, download a backup copy of the event file.

Remove the connection to the event online

Once the event has been downloaded, open it in the offline RACE RESULT Web Server. At this time, the event is still linked to the original online Event ID (in this example, 175168).

Under Online>More, select Remove Connection to Event Online

Upload the event to the other account

Now that the event is no longer set to the original Event ID, it is possible to upload it to a second account by checking-in the file via Online > Move this Event to Server (Check-In).

The Web Server will warn that the event does not exist and will ask if it should be created, select ok to confirm the upload. 

Use Custom Fonts

Fonts can be added to RR12 offline by installing them to your computer as you would install any new font. Fonts are reloaded into RR12 every 5 minutes or when restarting the RACE RESULT Web Server. These fonts can then be used for certificates, PDFs or even Presenter screens. 

Browsers will cache the list of fonts for 24 hours so new fonts will not be visible until you clear your cache or wait 24 hours.

Offline fonts will NOT transfer online. The list of fonts online are fonts available from our servers. This list can not be added to at this time.

How to use Swap Data

Bib Transponders

When participants have swapped their BIB Transponders, follow these steps depending on when the issue is identified:

  • Before the Race:
    Simply swap the BIB numbers between the participants via the Swap Bib Numbers. This ensures that all associated data, including transponder readings, will be processed correctly.

  • During the Race:
    Use the "Swap Participants Data" function. This will update the participant data, swapping BIB numbers and raw timing data between the affected participants.

  • After the Race:
    As with during the race, use the "Swap Participants Data" function to swap BIB numbers and raw data. 

Reusable Transponders

(A-Z Transponders, HuTags, Active Transponders, Bib transponders not linked to the bib number)

If participants swap Reusable Transponders, the approach depends on whether you’re using the Transponder Field or a Chip File for mapping:

Using the Transponder Field

  • Before the Race:
    Manually update the transponder fields in the participants tab, to reflect the correct assignment.

  • During the Race:

    1. Pause timing to avoid further incorrect reads.

    2. Use the "Swap Raw Data" function to correct timing data between participants.

    3. Update the transponder fields in the participant records to reflect the correct assignment.

    4. Resume timing.

  • After the Race:
    Use the "Swap Raw Data" function to adjust results. Additionally, update the transponder fields if you need to replay timing reads later for verification.

Using the Chip File

  • Before the Race:

    • Edit the chip file, ensuring proper transponder-to-participant mapping.

  • During the Race:

    1. Pause timing to prevent further incorrect reads.

    2. Use the "Swap Raw Data" function to correct timing data between participants.

    3. Update the chip file with the correct transponder assignments.

    4. Resume timing.

  • After the Race:

    • ​​​​​​​​​​​​​​Use the "Swap Raw Data" function to adjust results. Additionally, update the chip file if you plan to replay timing reads later for verification.