Retail Brink's Box Central

An error occurred while processing the template.
The following has evaluated to null or missing:
==> header.hardwareImage  [in template "20101#20128#HARDWARE_TEMPLATE" at line 2, column 6]

----
Tip: It's the step after the last dot that caused this error, not those before it.
----
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: #if header.hardwareImage.getData()?? ...  [in template "20101#20128#HARDWARE_TEMPLATE" at line 2, column 1]
----
1<#assign background = ""> 
2<#if header.hardwareImage.getData()?? && header.hardwareImage.getData()?has_content> 
3    <#assign background = "background:url(" + header.hardwareImage.getData() + ") no-repeat center center;-webkit-background-size: cover;-moz-background-size: cover;-o-background-size: cover;background-size: cover;" /> 
4</#if> 
5<div class="image-background fixed-height-medium small" style="${background}"> 
6    <div class="background-overlay gradient"></div> 
7    <div class="page-width"> 
8        <div class="content"> 
9            <@liferay_portlet["runtime"] 
10                defaultPreferences="" 
11                portletProviderAction=portletProviderAction.VIEW 
12                instanceId="new" 
13                portletName="com_liferay_site_navigation_breadcrumb_web_portlet_SiteNavigationBreadcrumbPortlet" 
14            /> 
15 
16            <#if header.hardwareName.getData()?? && header.hardwareName.getData() != ""> 
17                <h2>${header.hardwareName.getData()}</h2> 
18            </#if> 
19            <#if header.hardwareDescription.getData()?? && header.hardwareDescription.getData() != ""> 
20                <p>${header.hardwareDescription.getData()}</p> 
21            </#if> 
22        </div> 
23    </div> 
24</div> 
25 
26<#-- Overview --> 
27<#if overview.overviewEyebrow.getData()?? && overview.overviewEyebrow.getData() != ""> 
28    <div class="component-white"> 
29        <div class="page-width spacing-large"> 
30            <div class="message"> 
31                <div class="row align-center"> 
32                    <div class="col-lg-6 col-sm-12"> 
33                        <div class="message-content"> 
34                        <h3 class="eyebrow">${overview.overviewEyebrow.getData()}</h3> 
35                        <#if overview.overviewTitle.getData()?? && overview.overviewTitle.getData() != ""> 
36                            <h2 class="headline">${overview.overviewTitle.getData()}</h2> 
37                        </#if> 
38                        <#if overview.overviewText.getData()?? && overview.overviewText.getData() != ""> 
39                            <p>${overview.overviewText.getData()}</p> 
40                        </#if> 
41                    </div> 
42                    </div> 
43                    <div class="col-lg-6 col-sm-12"> 
44                    <div class="message-image overlapping-image"> 
45                            <#if overview.overviewImage.getData()?? && overview.overviewImage.getData() != ""> 
46                                <picture> 
47                                    <img alt="${overview.overviewImage.getAttribute("alt")}" src="${overview.overviewImage.getData()}" /> 
48                                </picture> 
49                            </#if> 
50                    </div> 
51                    </div> 
52                </div> 
53                <#if overview.featureName.getSiblings()?has_content> 
54                    <div class="row"> 
55                        <#list overview.featureName.getSiblings() as cur_featureName> 
56                            <div class="col-lg-4 col-sm-12"> 
57                                <div class="message-card"> 
58                                    <#if cur_featureName.featureImage.getData()?? && cur_featureName.featureImage.getData() != ""> 
59                                        <div class="message-card-image"> 
60                                            <img class="translate-y-100-percent" alt="${cur_featureName.featureImage.getAttribute("alt")}" data-fileentryid="${cur_featureName.featureImage.getAttribute("fileEntryId")}" src="${cur_featureName.featureImage.getData()}" /> 
61                                        </div> 
62                                    </#if> 
63                                    <#if cur_featureName.getData()?? && cur_featureName.getData() != ""> 
64                                        <div class="message-card-heading"> 
65                                            <h2>${cur_featureName.getData()}</h2> 
66                                        </div> 
67                                    </#if> 
68                                    <#if cur_featureName.featureDescription.getData()?? && cur_featureName.featureDescription.getData() != ""> 
69                                        <div class="message-card-description"> 
70                                            <p>${cur_featureName.featureDescription.getData()}</p> 
71                                        </div> 
72                                    </#if> 
73                                </div> 
74                            </div> 
75                        </#list> 
76                    </div> 
77                </#if> 
78            </div> 
79        </div> 
80    </div> 
81    <div class="clearFix"></div> 
82</#if> 
83 
84<#-- Product --> 
85<#if (productDetails.productHeader.getData()?? && productDetails.productHeader.getData() != "") || (productDetails.ProductImage.getData()?? && productDetails.ProductImage.getData() != "") || (productDetails.productHTML.getData()?? && productDetails.productHTML.getData() != "")> 
86    <div class="component-gray product"> 
87        <div class="page-width spacing-large"> 
88            <#if productDetails.productHeader.getData()?? && productDetails.productHeader.getData() != ""> 
89                <h2 class="text-center">${productDetails.productHeader.getData()}</h2> 
90            </#if> 
91            <#if productDetails.ProductImage.getData()?? && productDetails.ProductImage.getData() != ""> 
92                <img alt="${productDetails.ProductImage.getAttribute("alt")}" src="${productDetails.ProductImage.getData()}" /> 
93            </#if> 
94            <div class="row"> 
95                <#if productDetails.productHTML.getData()?? && productDetails.productHTML.getData() != ""> 
96                    ${productDetails.productHTML.getData()} 
97                </#if> 
98            </div> 
99            <div class="row"> 
100                <div class="col-lg-4 col-sm-6 col-12 large-margin-top"> 
101                    <#-- Specs --> 
102                    <#if specsDownload.specsButton.getData()?? && specsDownload.specsButton.getData() != "" && specsDownload.specsDoc.getData()?? && specsDownload.specsDoc.getData() != ""> 
103                        <a class="btn-brinks btn-link btn-white" href="${specsDownload.specsDoc.getData()}"> 
104                            <span>${specsDownload.specsButton.getData()}</span> 
105                            <span class="glyphicon glyphicon-download-alt"></span> 
106                        </a> 
107                    </#if> 
108                </div> 
109                <div class="col-lg-4 col-sm-6 col-12 large-margin-top"> 
110                    <#-- Brochure --> 
111                    <#if brochureDownload.brochureButton.getData()?? && brochureDownload.brochureButton.getData() != "" && brochureDownload.brochureDoc.getData()?? && brochureDownload.brochureDoc.getData() != ""> 
112                        <a class="btn-brinks btn-link btn-white" href="${brochureDownload.brochureDoc.getData()}"> 
113                            <span>${brochureDownload.brochureButton.getData()}</span> 
114                            <span class="glyphicon glyphicon-download-alt"></span> 
115                        </a> 
116                    </#if> 
117                </div> 
118            </div> 
119        </div> 
120    </div> 
121</#if> 
122 
123<#-- Customer Testimonial --> 
124<#if customerTestimonial.customerTestimonialLabel.getData()?? && customerTestimonial.customerTestimonialLabel.getData() != ""> 
125    <div class="component-white"> 
126        <div class="page-width spacing-large"> 
127            <div class="testimonial text-center"> 
128                <p class="eyebrow">${customerTestimonial.customerTestimonialLabel.getData()}</p> 
129                <#if customerTestimonial.customerQuote.getData()?? && customerTestimonial.customerQuote.getData() != ""> 
130                    <p class="quote">${customerTestimonial.customerQuote.getData()}</p> 
131                </#if> 
132                <#if customerTestimonial.customerTitle.getData()?? && customerTestimonial.customerTitle.getData() != ""> 
133                    <p class="eyebrow regular"> 
134                        ${customerTestimonial.customerTitle.getData()} 
135                        <#if customerTestimonial.customerCompany.getData()?? && customerTestimonial.customerCompany.getData() != ""> 
136                            <b>${customerTestimonial.customerCompany.getData()}</b> 
137                        </#if> 
138                    </p> 
139                </#if> 
140                <div role="img" aria-label="${customerTestimonial.customerImage.getAttribute('alt')}" class="image" style="background:url(${customerTestimonial.customerImage.getData()}) no-repeat center center;-webkit-background-size: cover;-moz-background-size: cover;-o-background-size: cover;background-size: cover;"></div> 
141            </div> 
142        </div> 
143    </div> 
144</#if> 
145 
146 
147<#-- Case Study, Webinar and Blog Post --> 
148<#assign reservedArticleId = .vars['reserved-article-id'].data /> 
149<#assign insightId  = brinks_freemarker_util.getRelatedArticleIdByCategory(themeDisplay.getCompanyId(), themeDisplay.getScopeGroupId(), reservedArticleId, ["CASE_STUDY", "EVENT", "BLOG_POST"], ["0"], "Services Categories", true, locale)!"" /> 
150<#assign insightId2 = brinks_freemarker_util.getRelatedArticleIdByCategory(themeDisplay.getCompanyId(), themeDisplay.getScopeGroupId(), reservedArticleId, ["CASE_STUDY", "EVENT", "BLOG_POST"], ["${insightId}"], "Services Categories", true, locale)!"" /> 
151<#assign insightId3 = brinks_freemarker_util.getRelatedArticleIdByCategory(themeDisplay.getCompanyId(), themeDisplay.getScopeGroupId(), reservedArticleId, ["CASE_STUDY", "EVENT", "BLOG_POST"], ["${insightId}", "${insightId2}"], "Services Categories", true, locale)!"" /> 
152<#if (validator.isNull(insightId2) && insightId2 == "")> 
153    <#assign insightId2 = brinks_freemarker_util.getRelatedArticleIdByCategory(themeDisplay.getCompanyId(), themeDisplay.getScopeGroupId(), reservedArticleId, ["CASE_STUDY", "EVENT", "BLOG_POST"], ["${insightId}"], "Services Categories", false, locale)!"" /> 
154</#if> 
155 
156<#if (validator.isNull(insightId3) && insightId3 == "")> 
157    <#assign insightId3 = brinks_freemarker_util.getRelatedArticleIdByCategory(themeDisplay.getCompanyId(), themeDisplay.getScopeGroupId(), reservedArticleId, ["CASE_STUDY", "EVENT", "BLOG_POST"], ["${insightId}", "${insightId2}"], "Services Categories", false, locale)!"" /> 
158</#if> 
159 
160<#if (validator.isNotNull(insightId) && insightId?? && insightId != "") && (validator.isNotNull(insightId2) && insightId2?? && insightId2 != "") && (validator.isNotNull(insightId3) && insightId3?? && insightId3 != "")> 
161    <div class="component-gray title-section"> 
162        <div class="page-width"> 
163                <h2 class="spacing-large text-center"> 
164                    <@liferay.language key="more-from-our-insights-library" /> 
165                </h2> 
166                <div class="row equal-height onerow"> 
167                    <#if (validator.isNotNull(insightId) && insightId?? && insightId != "")> 
168                        <div class="col-lg-4 col-md-12"> 
169                                 <@liferay_journal["journal-article"] 
170                                    articleId="${insightId}" 
171                                    ddmTemplateKey="INSIGHT_ABSTRACT" 
172                                    groupId=themeDisplay.getScopeGroupId() /> 
173                        </div> 
174                    </#if> 
175                    <#if (validator.isNotNull(insightId2) && insightId2?? && insightId2 != "")> 
176                        <div class="col-lg-4 col-md-12"> 
177                                 <@liferay_journal["journal-article"] 
178                                    articleId="${insightId2}" 
179                                    ddmTemplateKey="INSIGHT_ABSTRACT" 
180                                    groupId=themeDisplay.getScopeGroupId() /> 
181                        </div> 
182                    </#if> 
183                    <#if (validator.isNotNull(insightId3) && insightId3?? && insightId3 != "")> 
184                        <div class="col-lg-4 col-md-12"> 
185                                <@liferay_journal["journal-article"] 
186                                    articleId="${insightId3}" 
187                                    ddmTemplateKey="INSIGHT_ABSTRACT" 
188                                    groupId=themeDisplay.getScopeGroupId() /> 
189                        </div> 
190                    </#if> 
191                </div> 
192                <div class="button-holder spacing-small text-center"> 
193                    <a class="btn-brinks btn-white btn-link" href="${portalUtil.getLayoutSetFriendlyURL(themeDisplay.getLayoutSet(), themeDisplay)}/insights"> 
194                        <@liferay.language key="view-all-insights" /> 
195                    </a> 
196                </div>     
197        </div> 
198    </div> 
199</#if>