Agregátor obsahu

Při zpracování šablony došlo k chybě.
The following has evaluated to null or missing:
==> blogEntry.getCoverImageURL  [in template "10154#10192#19093933" at line 27, column 74]

----
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: coverImageURL = (blogEntry.getCoverIm...  [in template "10154#10192#19093933" at line 27, column 57]
----
1<#-- <link rel="stylesheet" href="https://cdn.jsdelivr.net/bxslider/4.2.12/jquery.bxslider.css"> --> 
2<link rel="stylesheet" href="/o/sktheme-theme/css/external/jquery.bxslider.css"> 
3  
4<#-- <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> --> 
5<script src="/o/sktheme-theme/js/external/jquery.min.js"></script> 
6  
7<#-- <script src="https://cdn.jsdelivr.net/bxslider/4.2.12/jquery.bxslider.min.js"></script> --> 
8<script src="/o/sktheme-theme/js/external/jquery.bxslider.min.js"></script> 
9 
10<#assign AssetTagLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetTagLocalService")> 
11<#assign blogsEntryLocalService = serviceLocator.findService("com.liferay.blogs.service.BlogsEntryLocalService")> 
12<#assign currentGroupUrl = themeDisplay.getScopeGroup().getFriendlyURL()> 
13<#if entries?has_content> 
14	<div class="gov-container "> 
15		<h2 class="u-align--center gov-title--alpha">Aktuality</h2> 
16			<div class="news has-slider" style="opacity: 0"> 
17				<div>				 
18					<#list entries as cur_Carousel> 
19 
20						<#assign  
21							assetRenderer = cur_Carousel.getAssetRenderer()  
22							entryTitle = htmlUtil.escape(assetRenderer.getTitle(locale))  
23							viewURL = assetPublisherHelper.getAssetViewURL(renderRequest, renderResponse, cur_Carousel, true)?replace("\\?.*","","r") 
24							assetTagNames = cur_Carousel.getTagNames() 
25 
26							blogEntry = assetRenderer.getAssetObject() 
27							coverImageURL = (blogEntry.getCoverImageURL(themeDisplay)?has_content)?then(blogEntry.getCoverImageURL(themeDisplay), "") 
28						/> 
29						<#-- get small image of blog, if not found scale down the cover image instead --> 
30						<#assign	smallImageURL = (blogEntry.getSmallImageURL(themeDisplay)?has_content)?then 
31																	(blogEntry.getSmallImageURL(themeDisplay),  
32																	(blogEntry.getCoverImageURL(themeDisplay)?has_content)?then(blogEntry.getCoverImageURL(themeDisplay), "")) />								 
33						<#assign	smallImageId = (blogEntry.getSmallImageURL(themeDisplay)?has_content)?then(blogEntry.getSmallImageFileEntryId(), "") /> 
34						<#-- create carousel style for cover or small image--> 
35						<#assign smallImageStyle = "position:absolute;top:0;left:0;bottom:0;right:0;box-sizing:border-box;padding:0;border:none;margin:auto;display:block;width:0;height:0;min-width:100%;max-width:100%;min-height:100%;max-height:100%" /> 
36						<#if smallImageId?has_content && smallImageId == 0> 
37							<#assign smallImageStyle = "${smallImageStyle};object-fit:cover" /> 
38						</#if> 
39						<#attempt> 
40							<#assign altTextImage = (blogEntry.getExpandoBridge().getAttribute("Image alt text")?has_content)?then(blogEntry.getExpandoBridge().getAttribute("Image alt text"), "")  /> 
41						<#recover> 
42						</#attempt> 
43						<#if altTextImage?has_content> 
44							<#assign altTextImageText = "${altTextImage}" /> 
45						<#elseif (cur_Carousel.getTitle(locale))??/> 
46						  <#assign altTextImageText = cur_Carousel.getTitle(locale) />  
47						<#else /> 
48						  <#assign altTextImageText = "" />  
49						</#if> 
50						 
51						 
52						<div id="item"> 
53							<article class="article-preview"> 
54								<a tabindex="-1" class="u-mb--25" href="${viewURL}"> 
55								  <#if smallImageURL??> 
56										<span style="box-sizing:border-box;display:block;overflow:hidden;width:initial;height:initial;background:none;opacity:1;border:0;margin:0;padding:0;position:absolute;top:0;left:0;bottom:0;right:0"> 
57										  <#--<img alt="" src="${coverImageURL}" decoding="async" data-nimg="fill" style="position:absolute;top:0;left:0;bottom:0;right:0;box-sizing:border-box;padding:0;border:none;margin:auto;display:block;width:0;height:0;min-width:100%;max-width:100%;min-height:100%;max-height:100%;object-fit:cover"/>--> 
58											<img alt="${altTextImageText}" title="${stringUtil.shorten(htmlUtil.stripHtml(altTextImageText), 65)}" src="${smallImageURL}" decoding="async" data-nimg="fill" style="${smallImageStyle}"/> 
59										</span> 
60									</#if> 
61								</a> 
62								<a href="${viewURL}"> 
63									<h3> 
64										<#if (cur_Carousel.getTitle(locale))??> 
65											${cur_Carousel.getTitle(locale)} 
66										</#if> 
67									</h3> 
68								</a> 
69								 
70								<span class="u-color--red u-ml--10"> 
71									<#if (cur_Carousel.getPublishDate())??> 
72										<#assign dateFormat = "d MMM yyyy" /> 
73										${dateUtil.getDate(cur_Carousel.getPublishDate(), dateFormat, locale)} 
74									</#if> 
75								</span> 
76								<p class="u-mt--10"> 
77									<#if validator.isNotNull(cur_Carousel.getDescription())> 
78										<#assign content = cur_Carousel.getDescription() /> 
79									<#else> 
80										<#assign content = cur_Carousel.getSummary() /> 
81									</#if>								 
82									<#if (cur_Carousel.getSummary(locale))??> 
83										<#--${cur_Carousel.getSummary(locale)}--> 
84										${stringUtil.shorten(htmlUtil.stripHtml(content), 150)} 
85									</#if> 
86								</p> 
87							 </article> 
88							</div> 
89					</#list> 
90				</div> 
91			</div> 
92			<div id="news-fallback-list" style="display: none;"> 
93			  <!-- Fallback list will be dynamically populated here --> 
94			</div> 
95		</div> 
96</#if> 
97<div class="u-align--center"><a class="gov-button--primary" href="/web${currentGroupUrl}/aktuality">Všechny aktuality</a></div>