An error occurred while processing the template.
The following has evaluated to null or missing: ==> OverviewInformation [in template "20115#20151#2170963" at line 113, column 6] ---- 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 OverviewInformation.ContentTitle?... [in template "20115#20151#2170963" at line 113, column 1] ----
1<@leonardo.articleInfo .vars "(T) Press Releases Detail"/>
2<#macro downloadIcon>
3 <svg xmlns="http://www.w3.org/2000/svg" width="14" height="18" viewBox="0 0 14 18">
4 <path fill="#000" fill-rule="nonzero" d="M6.61 12.763l-2.145-2.24a.58.58 0 0 1 0-.796c.211-.22.551-.22.762 0l1.235 1.29V6.75c0-.31.24-.563.538-.563.297 0 .538.252.538.563v4.267l1.235-1.29c.21-.22.551-.22.762 0a.58.58 0 0 1 0 .796l-2.145 2.24a.526.526 0 0 1-.78 0zM12.62 18H1.383C.62 18 0 17.368 0 16.592V5.037c0-.49.19-.968.52-1.314L3.565.544A1.728 1.728 0 0 1 4.82 0h7.797C13.38 0 14 .631 14 1.407v15.186C14 17.37 13.38 18 12.619 18zM4.82 1.125a.682.682 0 0 0-.496.214L1.282 4.52a.755.755 0 0 0-.205.518v11.555c0 .156.137.283.306.283h11.235c.168 0 .305-.127.305-.282V1.407c0-.155-.137-.282-.305-.282H4.821zm-.783 4.5H2.154a.551.551 0 0 1-.539-.563c0-.31.242-.562.539-.562h1.884c.15 0 .27-.126.27-.281V2.25c0-.31.24-.563.538-.563.297 0 .539.252.539.563v1.969c0 .775-.605 1.406-1.347 1.406zm6.193 9.563H3.769a.55.55 0 0 1-.538-.563.55.55 0 0 1 .538-.563h6.462a.55.55 0 0 1 .538.563.55.55 0 0 1-.538.563z"/>
5 </svg>
6</#macro>
7
8<#assign InformationDate_DateObj = dateUtil.parseDate("EEE, dd MMM yyyy HH:mm:ss Z", .vars['reserved-article-display-date'].data, localeUtil.getDefault())>
9
10<#assign currentGroupExpandoBridge = themeDisplay.getScopeGroup().getExpandoBridge()>
11<#assign isDarkTheme = false>
12
13<#if currentGroupExpandoBridge.hasAttribute("dark-theme")>
14 <#assign isDarkTheme = currentGroupExpandoBridge.getAttribute("dark-theme", false)>
15</#if>
16
17<div class="pressrelease-detail">
18<#if (OverviewInformation.ContentTitle.getData())?has_content>
19 <div class="section-container section-container--fixed">
20 <div class="internal-header">
21 <h1 class="internal-header--header"><@leonardo.escapeTitle title=OverviewInformation.ContentTitle.getData()/></h1>
22 <#if OverviewInformation.ContentSubtitle.getData() != "">
23 <h2 class="internal-header--header--small"><@leonardo.escapeTitle title=OverviewInformation.ContentSubtitle.getData()/></h2>
24 </#if>
25 <#if (OverviewInformation.Abstract.getData())?has_content && (OverviewInformation.Abstract.getData()!)?length gt 1>
26 <div class="internal-header--description">${OverviewInformation.Abstract.getData()}</div>
27 </#if>
28 </div>
29 </div>
30</#if>
31
32<#if (OverviewInformation.ContentHtml.getData())?has_content>
33 <div class="section-container section-container--fixed">
34 <div class="section-content">
35 <div class="section-content--content">
36 <p class="content-secondary">
37 <#if OverviewInformation?? && OverviewInformation.InformationLocation.getData() != "">
38 <@leonardo.escapeTitle title=OverviewInformation.InformationLocation.getData()/>
39 </#if>
40 ${dateUtil.getDate(InformationDate_DateObj, "dd MMMM yyyy HH:mm", locale, timeZone)}
41 <#if (OverviewInformation.PriceSensitive.getData())?has_content && getterUtil.getBoolean(OverviewInformation.PriceSensitive.getData())>
42 <span class="price-sensitive">
43 <#if isDarkTheme>
44 ${languageUtil.get(locale, "price-sensitive")}
45 <#else>
46 - ${languageUtil.get(locale, "price-sensitive")}
47 </#if>
48 </span>
49 </#if>
50 </p>
51 <#assign htmlFormatted = leonardo.expandElementsInPage(OverviewInformation.ContentHtml.getData())>
52 <div class="check-html-content">${htmlFormatted}</div>
53 </div>
54 <div class="section-content--action-items">
55 <#if AttachmentSeparator?has_content >
56 <#list AttachmentSeparator.getSiblings() as cur_Attach>
57 <#if cur_Attach.Attachment?? && cur_Attach.Attachment.getData() != "" >
58 <div class="section-content--action-items--download">
59 <#assign file_info = leonardo.findFileEntryInfo(cur_Attach.Attachment.getData()) >
60 <a class="section-content--action-items--download--link"
61 href="${file_info.downloadUrl}"
62 target="_blank"
63 title="${(file_info.title)!cur_Attach.AttachmentTitle.getData()!}">
64 <@downloadIcon />
65 <span class="section-content--action-items--download--link--filename">
66 ${cur_Attach.AttachmentTitle.getData()!(file_info.title)!}
67 <#if (file_info.fileSize)?has_content>
68 (${file_info.mimeType!}, ${file_info.fileSize!} KB)
69 </#if>
70 </span>
71 </a>
72 </div>
73 </#if>
74 </#list>
75 </#if>
76 <#if LinkToPageSeparator?has_content >
77 <#list LinkToPageSeparator.getSiblings() as cur_Link>
78 <#assign targetUrl=leonardo.getTargetUrl(cur_Link.GenericLink, cur_Link.LinkToPage)!>
79 <#if targetUrl?has_content>
80 <#assign target=leonardo.getTarget(cur_Link.LinkTarget!)!>
81 <div class="section-content--action-items--navigate">
82 <a class="section-content--action-items--navigate--link"
83 href="${targetUrl}"
84 target = "${target}"
85 title="${cur_Link.LinkTitle.data!}">
86 ${cur_Link.LinkTitle.data!}
87 <span class="icon--navigate"></span>
88 </a>
89 </div>
90 </#if>
91 </#list>
92 </#if>
93 </div>
94 </div>
95 <@leonardo.shareLink/>
96 </div>
97</#if>
98</div>
99
100
101<!-- Meta Title and Meta Description -->
102<#assign
103 title = ''
104 metaTitle = ''
105 abstract = ''
106 metaDescription = ''
107 shareTitle = ''
108 shareDescription = ''
109 imageFileName = ''
110 ogType='article'
111>
112
113<#if OverviewInformation.ContentTitle?? && (OverviewInformation.ContentTitle.getData())?has_content>
114 <#assign title = OverviewInformation.ContentTitle.getData()>
115</#if>
116<#if OverviewInformation.MetaTitle?? && (OverviewInformation.MetaTitle.getData())?has_content>
117 <#assign metaTitle = OverviewInformation.MetaTitle.getData()>
118<#else>
119 <#assign metaTitle = title >
120</#if>
121
122<#if OverviewInformation.Abstract?? && (OverviewInformation.Abstract.getData())?has_content>
123 <#assign abstract = OverviewInformation.Abstract.getData()>
124</#if>
125
126<#if (.vars['reserved-article-description'].data)?? && (.vars['reserved-article-description'].data)?has_content>
127 <#assign metaDescription = (.vars['reserved-article-description'].data)>
128<#else>
129 <#assign metaDescription = abstract>
130</#if>
131<#if metaTitle != "" >
132 <#assign metaTitle = metaTitle?replace('<[^>]+>','','r')?replace('"','\'')?replace('\n',' ') >
133 <#assign VOID = portalUtil.setPageTitle(metaTitle, themeDisplay.request) />
134</#if>
135
136<#if (metaDescription)?has_content && (metaDescription) != "" >
137 <#assign metaDescription = (metaDescription)?replace('<[^>]+>','','r')?replace('"','\'')>
138 <#assign VOID = portalUtil.setPageDescription(metaDescription, themeDisplay.request) />
139</#if>
140
141<!-- Social Sharing -->
142<#if title != "" >
143 <#assign shareTitle = title?replace('<[^>]+>','','r')?replace('"','\'')?replace('<br>','\'')?replace('\n',' ')>
144</#if>
145<#assign shareDescription = metaDescription >
146<#if (PrimaryImage.getData())?has_content>
147 <#assign imageFileName = PrimaryImage.getData() >
148<#elseif (PrimaryImageAssoc.getData())?has_content >
149 <#assign imageFileName = PrimaryImageAssoc.getData() >
150</#if>
151<@leonardo.socialShareMetaAndLinks shareTitle=shareTitle shareDescription=shareDescription imageFileName=imageFileName ogType=ogType />
152
153
154<#-- markup -->
155<#macro printMarkup logoURL>
156 <#assign journalArticleId = .vars['reserved-article-id'].data>
157 <#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
158 <#assign jArticle = journalArticleLocalService.getArticle(groupId, journalArticleId) >
159 <#-- Detail URL -->
160 <#assign virtualHostURL = portalUtil.getVirtualHostname (themeDisplay.getLayout().getLayoutSet())>
161 <#assign absolutePageUrl = "">
162 <#if (virtualHostURL?has_content && virtualHostURL != "")>
163 <#assign absolutePageUrl = "https://" + virtualHostURL >
164 <#else>
165 <#assign absolutePageUrl = portalUtil.getPortalURL(themeDisplay.getLayout(), themeDisplay)>
166 </#if>
167 <#assign articleUrlTitle = jArticle.getUrlTitle()>
168 <#assign detailUrl = absolutePageUrl+(themeDisplay.i18nPath!"")+"/press-release-detail/-/detail/"+articleUrlTitle >
169 <#assign Modified_DateObj = dateUtil.parseDate("EEE, dd MMM yyyy HH:mm:ss Z", .vars['reserved-article-modified-date'].data, localeUtil.getDefault())>
170
171 <script type="application/ld+json">
172 { "@context": "http://schema.org",
173 "@type": "Article",
174 "url":"${detailUrl}",
175 "name": "${shareTitle}",
176 "image": "${(imageFileName?has_content)?then(absolutePageUrl + imageFileName,'')}",
177 "headline": "${shareTitle}",
178 "datePublished": "${dateUtil.getDate(InformationDate_DateObj, 'yyyy-MM-dd', locale)}T${dateUtil.getDate(InformationDate_DateObj, 'HH:mm:ss',locale)}+0000",
179 "dateModified": "${dateUtil.getDate(Modified_DateObj, 'yyyy-MM-dd', locale)}T${dateUtil.getDate(Modified_DateObj, 'HH:mm:ss',locale)}+0000",
180 "author": { "@type": "Organization",
181 "name": "Leonardo S.p.A." },
182 "publisher": {
183 "@type": "Organization",
184 "name": " Leonardo S.p.A.",
185 "logo": { "@type": "ImageObject",
186 "url": "${logoURL}"} } }
187 </script>
188</#macro>
189<#if (themeDisplay.scopeGroup.friendlyURL)?keep_after_last("/") == 'guest'
190 || (themeDisplay.scopeGroup.friendlyURL)?keep_after_last("/") == 'corporate'
191 || (themeDisplay.scopeGroup.friendlyURL)?keep_after_last("/") == 'helicopters'
192 || (themeDisplay.scopeGroup.friendlyURL)?keep_after_last("/") == 'aircraft'
193 || (themeDisplay.scopeGroup.friendlyURL)?keep_after_last("/") == 'cyber-security'
194 || (themeDisplay.scopeGroup.friendlyURL)?keep_after_last("/") == 'electronics'
195 || (themeDisplay.scopeGroup.friendlyURL)?keep_after_last("/") == 'space'
196 || (themeDisplay.scopeGroup.friendlyURL)?keep_after_last("/") == 'unmanned'
197 >
198 <#if isDarkTheme>
199 <#assign logoImageURL = "https://www.leonardo.com/o/leonardocompany-theme/images/logo-with-text-header-switch.png">
200 <#else>
201 <#assign logoImageURL = "https://www.leonardo.com/o/leonardocompany-theme/images/logo-with-text-resized.png">
202 </#if>
203 <@printMarkup logoURL=logoImageURL/>
204</#if>
205
206<#if (metaDescription)?has_content && (metaDescription) != "" >
207 <script>
208 $( document ).ready(function() {
209 $('meta[name=description]').removeAttr('lang');
210 });
211 </script>
212</#if>