Events - iMOD
Asset Publisher
An error occurred while processing the template.
The following has evaluated to null or missing: ==> dynamicElement.element("dynamic-content") [in template "10131#10164#3229373" at line 23, column 64] ---- 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: ${dynamicElement.element("dynamic-con... [in template "10131#10164#3229373" at line 23, column 62] ----
1<#if entries?has_content>
2
3<div class="c-events c-row">
4 <#list entries as entry>
5 <#assign assetRenderer=entry.getAssetRenderer() />
6 <#assign article=assetRenderer.getArticle() />
7 <#assign entryTitle=htmlUtil.escape(assetRenderer.getTitle(locale)) />
8 <#assign journalArticle=assetRenderer.getArticle() />
9 <#assign document=saxReaderUtil.read(journalArticle.getContent()) />
10 <#assign rootElement=document.getRootElement() />
11 <#setting locale=locale.toString()>
12 <#assign viewURL = htmlUtil.escapeHREF(assetPublisherHelper.getAssetViewURL(renderRequest, renderResponse, entry, true)) />
13
14 <#assign startDayString = "" >
15 <#assign startMonthString = "" >
16 <#assign startDateString = "" >
17 <#assign endDateString = "" >
18 <#assign timeString = "" >
19 <#assign isEventPast = "upcoming-event" />
20 <#assign locationString = "">
21
22 <#list rootElement.elements() as dynamicElement>
23 <!-- ${dynamicElement.attributeValue("name")} : ${dynamicElement.element("dynamic-content").getData()} -->
24 <#if "EventDate"==dynamicElement.attributeValue("name")>
25 <#assign startDate=dynamicElement.element("dynamic-content").getData() />
26 <#if startDate?has_content>
27 <#assign startDate_DateObj=startDate?date("yyyy-MM-dd") />
28 <#assign startDateString=dateUtil.getDate(startDate_DateObj, "dd MMMM yyyy" , locale) />
29 <#assign startDayString=dateUtil.getDate(startDate_DateObj, "dd" , locale) />
30 <#assign startMonthString=dateUtil.getDate(startDate_DateObj, "MMM" , locale) />
31 <#if .now?date > startDate?date("yyyy-MM-dd")>
32 <#assign isEventPast = "past-event" />
33 </#if>
34 </#if>
35 </#if>
36 <#if "EventEndDate"==dynamicElement.attributeValue("name")>
37 <#assign endDate=dynamicElement.element("dynamic-content").getData() />
38 <#if endDate?has_content>
39 <#assign endDate_DateObj=endDate?date("yyyy-MM-dd") />
40 <#assign endDateString=dateUtil.getDate(endDate_DateObj, "dd MMMM yyyy" , locale) />
41 </#if>
42 </#if>
43 <#if "EventTime"==dynamicElement.attributeValue("name")>
44 <#assign timeString = dynamicElement.element("dynamic-content").getData() />
45 </#if>
46 <#if "EventLocation"==dynamicElement.attributeValue("name")>
47 <#assign locationString = dynamicElement.element("dynamic-content").getData() />
48 </#if>
49 </#list>
50 <div class="c-events__item ${isEventPast}">
51 <div class="c-events__item__date"><span>${startDayString}</span>${startMonthString}</div>
52 <h4 class="c-events__item__title h1"><a class="type-inherit" href="${viewURL}" title="read more about ${entryTitle}">${entryTitle}</a></h4>
53 <p class="c-events__item__time-date-place">
54 <span class="c-events__item__time-date-place__date">
55 <#if endDateString != "">
56 ${startDateString} - ${endDateString}
57 <#else>
58 ${startDateString}
59 </#if>
60 </span>
61 <span class="c-events__item__time-date-place__time">${timeString}</span>
62 <span class="c-events__item__time-date-place__place">${locationString}</span>
63 </p>
64 <a class="c-events__item__link regular-text" href="${viewURL}"><img src="${themeDisplay.getPathThemeImages()}/chevron_right.svg"> Read more</a>
65 </div>
66
67 </#list>
68</div>
69</#if>