Individual Passes - Banner
Individual Passes - Team Training

Team Training

Customized training packages designed to meet your unique training needs

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. Proin sodales pulvinar sic tempor. Sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam fermentum, nulla luctus pharetra vulputate, felis tellus mollis orci, sed rhoncus pronin sapien nunc accuan eget.

Contact Sales
Individual Passes - Compare Passes
An error occurred while processing the template.
The following has evaluated to null or missing:
==> barbriRedisCacheAPI.get("barbripass", productId)  [in template "20096#20121#2805694" at line 104, column 77]

----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: response = barbriRedisCacheAPI.get("b...  [in template "20096#20121#2805694" at line 104, column 66]
----
1<section class="section premium_price_table campare_passes active_none pt-0"> 
2	<div class="container"> 
3		<#if title.getData()?has_content> 
4			<div class="default-heading subtitle_h2"> 
5				<h2>${title.getData()}</h2> 
6				<#if (description.getData())??> 
7					<p>${description.getData()}</p> 
8				</#if> 
9			</div> 
10		</#if> 
11		<div class="table-responsive"> 
12			<table class="table table-bordered moblie_brdr_none"> 
13				<thead> 
14					<tr> 
15						<th class="hide_first_row hide_mobile" scope="col"></th> 
16						<#assign recommendedIndex = 0 /> 
17						<#if tableHeader.getSiblings()?has_content> 
18							<#list tableHeader.getSiblings() as cur_tableHeader> 
19								<#if getterUtil.getBoolean(cur_tableHeader.recommended.getData())> 
20									<#assign recommendedIndex = cur_tableHeader?counter /> 
21									<th scope="col">  
22										<div class="top_title_area blue_bg">  
23										<span> Monthly Subscription </span> ${cur_tableHeader.headerText.getData()}</div> 
24									</th> 
25								<#else> 
26									<th scope="col"> 
27										<div class="top_title_area"> 
28											${cur_tableHeader.headerText.getData()} 
29											<#if cur_tableHeader.headerSecondayText.getData()?has_content> 
30												<div class="month_count">${cur_tableHeader.headerSecondayText.getData()}</div> 
31											</#if> 
32										</div> 
33									</th> 
34								</#if> 
35							</#list> 
36						</#if> 
37					</tr> 
38				</thead> 
39				<tbody> 
40					 
41					<#if benefits.getSiblings()?has_content> 
42						<#list benefits.getSiblings() as cur_benefits> 
43							<#assign greyCSS = ""> 
44							<#if cur_benefits?index % 2 == 1> 
45								<#assign greyCSS = "light_grey_bg"> 
46							</#if> 
47							<tr class="row_light hide_desktop"> 
48								<th scope="row" colspan="5"> 
49									<div class="cource_compare_name"> ${cur_benefits.benefitName.getData()}  
50										<#if cur_benefits.tooltip.getData()?has_content> 
51											<a class="lfr-portal-tooltip" title="${cur_benefits.tooltip.getData()}"><span class="material-symbols-rounded"> info </span></a> 
52										</#if> 
53									</div> 
54								</th> 
55							</tr> 
56							<tr class="row_light"> 
57								<th class="hide_first_row hide_mobile" scope="row"> 
58									<div class="cource_compare_name"> ${cur_benefits.benefitName.getData()}  
59										<#if cur_benefits.tooltip.getData()?has_content> 
60											<a class="lfr-portal-tooltip" title="${cur_benefits.tooltip.getData()}"><span class="material-symbols-rounded"> info </span></a> 
61										</#if> 
62									</div> 
63								</th> 
64								<#if cur_benefits.Table.getSiblings()?has_content> 
65									<#list cur_benefits.Table.getSiblings() as cur_benefits_Table> 
66										<#assign borderClass = ""> 
67										<#if cur_benefits_Table?counter == recommendedIndex> 
68											<#assign borderClass = "highlighted_cell"> 
69										</#if> 
70										<#if getterUtil.getBoolean(cur_benefits_Table.yes.getData())> 
71											<td class="${greyCSS} ${borderClass}"> 
72												<#if cur_benefits_Table.textVal.getData()?has_content> 
73													<div class="grade">${cur_benefits_Table.textVal.getData()}</div> 
74													<#else> 
75													<i class="web-check-success"><span class="path1"></span><span class="path2"></span></i> 
76												</#if> 
77											</td> 
78										<#else> 
79											<td class="${greyCSS} ${borderClass}"> 
80												<#if cur_benefits_Table.textVal.getData()?has_content> 
81													<div class="grade">${cur_benefits_Table.textVal.getData()}</div> 
82													<#else> 
83													<i class="web-close03"></i> 
84												</#if> 
85											</td> 
86										</#if> 
87									</#list> 
88								</#if> 
89							</tr> 
90						</#list> 
91					</#if> 
92					 
93					<tr class="row_light align_area"> 
94						<th class="hide_first_row br_none hide_mobile" scope="row"> </th> 
95						<#if tableHeader.getSiblings()?has_content> 
96							<#list tableHeader.getSiblings() as cur_tableHeader> 
97						<#--<@liferay_portlet["runtime"] portletName="com_barbri_sf_pass_BarbriSFPassDisplayPortlet_INSTANCE_cleFirstCardTable" /> 
98						<@liferay_portlet["runtime"] portletName="com_barbri_sf_pass_BarbriSFPassDisplayPortlet_INSTANCE_cpeSecondCardTable" /> 
99						<@liferay_portlet["runtime"] portletName="com_barbri_sf_pass_BarbriSFPassDisplayPortlet_INSTANCE_allThirdCardTable" />--> 
100						<#assign productId = ''/> 
101							<#if (cur_tableHeader.productID.getData())?? && cur_tableHeader.productID.getData()?has_content> 
102								<#assign productId = cur_tableHeader.productID.getData() /> 
103							</#if> 
104							<#assign response = barbriRedisCacheAPI.get("barbripass", productId)  
105								json = jsonFactoryUtil.createJSONObject(response) 
106							/> 
107						<td class="light_grey_bg bor_radius"> 
108                    <div class="monthly_price cart-item"> 
109                        <div class="price_list"> 
110                            <span class="sale-price"> $${json.pricebook?replace(",", "")?number?string("#,##0.00")} </span> 
111                        </div> 
112                        <input type="hidden" class="product-id" value="${productId}"> 
113                  			<input type="hidden" class="product-name" value="${json.name}"> 
114                  			<input type="hidden" class="product-price" value="${json.pricebook}"> 
115                        <a href="javascript:void(0);" class="btn pc_theme_btn btn-primary btn_maxwidth add-to-cart"> <span class="material-symbols-rounded"> 
116                                shopping_cart </span> Add to Cart </a> 
117                    </div> 
118                </td> 
119						</#list> 
120					</#if> 
121					</tr> 
122				</tbody> 
123			</table> 
124		</div> 
125	</div> 
126</section> 
127<style> 
128body .min-vh-100 section.portlet { 
129    margin: 0; 
130
131body .min-vh-100 .portlet-content.custom-portlet-class { 
132    padding: 0; 
133
134</style> 
135<script> 
136$(document).ready(function() { 
137	let recIndex = ${recommendedIndex} + 1; 
138	$(".align_area td:nth-child("+recIndex+")").addClass("highlighted_cell"); 
139}); 
140</script>