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>