Skip to content

Check In

Nick Airdo edited this page Sep 2, 2016 · 7 revisions

Check-in Tools Plugin

This plugin found in the RockShop provides several tools to assist with check-in setup and troubleshooting.

Post Installation Instructions

Associated Devices

You can find this block under Admin Tools | Check-in | Named Locations, right below the Location Detail block.

Check-in Summary

This block is located under Admin Tools | Installed Plugins | Check-in Summary. Feel free to move it wherever you like. By default it only shows the Ability Level and Grade filter properties of the group, but you can add attributes for Age, Last Name, and Special Needs filter properties in the block settings.

Check-in State Debugger

Just drop the block on your check-in page of choice, then enable the debug block setting or pass ?debug=true in the query string to see the data dump.

Misc (unpublished) Custom

Custom Blocks

Our custom check-in blocks are used to change the normal behavior of Rock's check-in system to allow for selecting multiple members of family to check-in. This was created before Rock v5 "Family Check-in" and is very similar, but very different in architecture. Our architecture relies simply on changes made to blocks while the Rock v5 Family Check-in coordinates changes with the CheckInState object to achieve the final results.

NOTE: We are going to move away from these custom blocks in favor of the Rock Family Check-in system -- with one exception. We will continue using our custom Success block in order to do server side printing to our non-ZPL LP2824 Zebra printers.

Success.ascx - This block allows for using an alternate method to print (using .Net's PrintDocument feature) which is necessary for printing to non-ZPL based printers. The code says it all, but in a nutshell, the custom label's first line specifies the assembly and classname to load to handle the printing. There is a helper class that performs the dynamic assembly loading so that only the assembly (.DLL) needs to exist in the bin folder and the assembly and classname reference in the label in order for this technique to work. More details are below in the Custom Labels section.

Custom Labels

For our legacy labels that create nametags, claim-tickets and attendance labels, we use the following technique to load the custom assembly during the Success stage of check-in. The assemblies are from our custom com.centralaz.CheckInLabels project and are put into the bin folder.

A ZPL file (.prn) is preloaded into Rock and the first line of the file is the string Assembly:<assemblyName>,<assesmblyClass> (where assemblyName is the name of the assembly and assemblyClass is class name that handles the printing). The remaining lines specify merge fields and are surrounded with ^FD and ^FS fields.

Example .prn file:

Assembly:com.centralaz.CheckInLabels,ChildrensLabelProvider
^FDCentralAZ.AttendanceLabelTitle^FS
^FDCentralAZ.BirthdayImageFile^FS
^FDCentralAZ.ClaimCardTitle^FS
^FDCentralAZ.ClaimCardFooter^FS
^FDCentralAZ.HealthNotesTitle^FS
^FDCentralAZ.LogoImageFile^FS
^FDCentralAZ.ParentsInitialsTitle^FS
^FDCentralAZ.ServicesLabel^FS