14 Childcare & Event Registration Shared by Morgan Woods, Hillside Christian Church 3 years ago 7.0 General Intermediate We came up with a system for how we handle registrations that have childcare that has a cost associated with it. Essentially for the event we would have two event registrations, one for the adults and one for childcare, each might have different pricing and different capacities. So to try and make this a clean process for people registering we decided to link the two registrations together with an attribute and a conditional redirect. For example if you register for Rooted as an adult and select Yes on the Will you be needing childcare question, at the end of your adult registration you are automatically pushed into the childcare registration and asked to complete that. We have used recipe this for 50+ registrations with childcare and so at the end I will share a few tips and things that you might run into with this method and how we resolved those.1) First build both the adult registration and the childcare registration.2) On the adult registration you must have a registration attribute (Boolean) asking if they would like childcare. Make it a required question. 3) On that question set the key as 'ChildCare'4) Next on the adult registration go to the Terms/Text Section. To get there: On the adult registration click 'Edit'5) Then expand the Terms/Text section:6) In the box titled 'Registration Confirmation Text" Replace the content with the following: *Change the Link in the lava to match your URL, Page # for your registrations page and Registration Instance ID for the childcare registration. {% assign registrationPageId = '413' %} {% assign childRegistrationInstanceId = '31' %} {% assign childcareAttributeKey = 'Childcare' %} {% for registrant in Registration.Registrants %} {% assign childcareBool = registrant | Attribute: childcareAttributeKey %} {% if childcareBool == 'Yes'%} {% capture newURL %}{{ 'Global' | Attribute:'PublicApplicationRoot' }}page/{{ registrationPageId }}?RegistrationInstanceId={{ childRegistrationInstanceId }}{% endcapture %} {{ newURL | PageRedirect }} {% else %} {% capture currencySymbol %}{{ 'Global' | Attribute:'CurrencySymbol' }}{% endcapture %} {% assign registrantCount = Registration.Registrants | Size %} You have successfully registered the following {{ RegistrationInstance.RegistrationTemplate.RegistrantTerm | PluralizeForQuantity:registrantCount | Downcase }} for {{ RegistrationInstance.Name }}: {% for registrant in Registration.Registrants %} {{ registrant.PersonAlias.Person.FullName }} {% if registrant.Cost > 0 %} - {{ currencySymbol }}{{ registrant.Cost | Format:'#,##0.00' }} {% endif %} {% assign feeCount = registrant.Fees | Size %} {% if feeCount > 0 %} {{ RegistrationInstance.RegistrationTemplate.FeeTerm | PluralizeForQuantity:registrantCount }}: {% for fee in registrant.Fees %} {{ fee.RegistrationTemplateFee.Name }} {{ fee.Option }} {% if fee.Quantity > 1 %} ({{ fee.Quantity }} @ {{ currencySymbol }}{{ fee.Cost | Format:'#,##0.00' }}){% endif %}: {{ currencySymbol }}{{ fee.TotalCost | Format:'#,##0.00' }} {% endfor %} {% endif %} {% endfor %} {% if Registration.TotalCost > 0 %} Total Cost: {{ currencySymbol }}{{ Registration.TotalCost | Format:'#,##0.00' }} {% if Registration.DiscountedCost != Registration.TotalCost %} Total After Discount: {{ currencySymbol }}{{ Registration.DiscountedCost | Format:'#,##0.00' }} {% endif %} {% for payment in Registration.Payments %} Paid {{ currencySymbol }}{{ payment.Amount | Format:'#,##0.00' }} on {{ payment.Transaction.TransactionDateTime| Date:'M/d/yyyy' }} (Acct #: {{ payment.Transaction.FinancialPaymentDetail.AccountNumberMasked }}, Ref #: {{ payment.Transaction.TransactionCode }}) {% endfor %} {% assign paymentCount = Registration.Payments | Size %} {% if paymentCount > 1 %} Total Paid: {{ currencySymbol }}{{ Registration.TotalPaid | Format:'#,##0.00' }} {% endif %} Balance Due: {{ currencySymbol }}{{ Registration.BalanceDue | Format:'#,##0.00' }} {% endif %} A confirmation email has been sent to {{ Registration.ConfirmationEmail }}. If you have any questions please contact {{ RegistrationInstance.ContactPersonAlias.Person.FullName }} at {{ RegistrationInstance.ContactEmail }}. {% endif %} {% endfor %} 7) Now when someone selects yes on the adult registration, after completing payment they will be launched into the childcare registration. BUT, there are a few things to note about this process. We usually title our childcare registration instances: “Thank you for registering for [Event Name]. Please register your children for childcare.” This way the adult knows they successfully finished adult registration and now are being asked to complete childcare reg. Backend:Frontend: If your childcare costs the same as your adult registration, you could have issues with your payment gateway. Payment gateways will typically deny charges that are the same cost to the same vendor in a short period of time. We have overcome this by charging 20$ for an event for adult and $19.99 for childcare. However most of our events childcare is a different price or free.This still leaves a hole where someone could select yes for needing childcare but not do this second step registration. Our people haven’t had this issue too much. We have added language above the question “Are you needing childcare?” that says: “Selecting Yes does not register your kids for childcare. You will be prompted to complete the childcare registration at the end of this form.” You can add this by editing and adding this text to the pre-html for this form question. ALSO this only works if all instances of your template use the same childcare registration, however I'm sure with some extra effort you could add conditional lava to test for which instance it is and redirect to the correct childcare registration.
Jackson Uy Reply 3 months ago Hello! Thanks for sharing this recipe! I was just following the instruction above and noticed that your screenshot of Will you be needing a childcare? attribute was set to Internal. Well, when Internal is enabled the attribute will not show up in the form. If so, how would an end user select if they need a childcare or not when it is hidden? It just will confuse people who are following this recipe and novice with Rock - like me :D. Thanks!
Christine Ronk Reply 6 months ago Hello Morgan, thank you for this recipe! We were wondering if you've copied this and utilized it for multiple instances of this nature? Is this something we could copy and potentially have a staff person, such as an event coordinator just make an instance and do?
Mary DeMoss Reply 7 months ago Thanks for the helpful recipes. Quick notes as I worked through it for future users of the recipe. (1) I think the childcare key should be Childcare vs ChildCare. Looks like the lava is using Childcare.(2) Step two mentions a registration attribute, but you will want to use a registrant attribute per the lava.
Jeff Orians Reply one year ago Quick question - we are unable to get the instance name on the childcare event to show on top of the participant selection registration question. Do you know if that block has been updated, in a recent release, and no longer allows for that instance name to show?
Chris Giddens Reply one year ago I'm still in "la la land" over this! Thank you so much for figuring this out!!
Debbie Newell Reply 2 years ago We'd like to try this; but have a couple of questions: 1) would this work if you offer different pricing options for childcare (i.e. $10 for 1 child / $15 for 2 or more children)? 2)do you have the childcare fees tied into the adult form or the childcare form? Thanks!
Alexis Smith Reply 3 years ago (edited 3 years ago) I found an issue in the code, line 3....there isn't a space between 'Yes' and %}. It was causing me some issues. Just FYI to anyone who can't get it to redirect to the 2nd registration. Thanks to Morgan for all your help!
Tyler Strout Reply 3 years ago (edited 3 years ago) Morgan. This is really great! I think there might have been a problem with the copying of the code to this article. It looks like you have the main Else defined twice. I have included a fixed version below, and I also added a few parameters at the top of the code to make it easier to modify later down the road.It looks like the Lava on this page is preventing the code from being displayed correctly. Feel free to Rock Chat me if you want the updated code.
Julie TenEyck Reply 3 years ago Thanks for this! Can't wait to put this to use for our fall groups with childcare.
Alyssa Winegar Reply 3 years ago Thanks! We just implemented this. I've been looking for a way to make the process cohesive. Also - to your note about titling the childcare instances with "Thank you for registering..." I added that same text to the registration instructions, and kept the instance title as "Childcare | Women's Bible Study" or whatever.
Morgan Woods 3 years ago Great Idea!Yea we started doing this before that was an option. But I love this way of handling it!