Newsroom - Kirloskar Limitless
An error occurred while processing the template.
The following has evaluated to null or missing: ==> curEntry.getAssetRenderer() [in template "20097#20123#505623" at line 36, column 81] ---- 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: assetRenderer = curEntry.getAssetRend... [in template "20097#20123#505623" at line 36, column 65] ----
1<style>
2.awards-filter {
3 max-width: 530px;
4 width: 100%;
5}
6</style>
7
8<#assign serviceContext = staticUtil["com.liferay.portal.kernel.service.ServiceContextThreadLocal"].getServiceContext()>
9<#assign themeDisplay = serviceContext.getThemeDisplay() />
10<section style="visibility: visible;">
11 <div class="container-fluid container-custom">
12 <div class="row">
13 <div class="col-md-12 mt-100">
14 <div id="filter-section" class="row mb-40">
15 <div class="col-md-3">
16 <h2 id="heading" class="m-md-0 mb-xs-20">All News</h2>
17 </div>
18 <div class="col-md-12 d-md-flex justify-content-center">
19 <div class="awards-filter pl-lg-4 mb-xs-20">
20 <label id="filter-text" class="head-dark">Media</label>
21 <select id="select-category" onchange="filterCategoryContent()">
22 <option value="all" disabled selected>Select</option>
23 <option value="news">News</option>
24 <option value="events">Events</option>
25 <option value="all">All</option>
26 </select>
27 </div>
28 </div>
29 </div>
30 </div>
31 <#if entries?has_content>
32 <div class="col-12 mt-40 p-md-0 awards-list" >
33 <div class="row">
34 <#list entries as curEntry>
35 <#assign
36 assetRenderer = curEntry.getAssetRenderer()
37 journalArticle = assetRenderer.getAssetObject()
38 viewURL = assetPublisherHelper.getAssetViewURL(renderRequest, renderResponse, assetRenderer, entry, !stringUtil.equals(assetLinkBehavior, "attrFullContent"))
39 document = saxReaderUtil.read(journalArticle.getContent())
40 rootElement = document.getRootElement()
41 articleId = journalArticle.getId()/>
42
43 <#list rootElement.elements() as dynamicElement>
44 <#if "title" == dynamicElement.attributeValue("name")>
45 <#assign title = dynamicElement.element("dynamic-content").getData() />
46 </#if>
47 <#if "card_image" == dynamicElement.attributeValue("name")>
48 <#assign card_images = dynamicElement.element("dynamic-content").getData()/>
49 <#assign card_image = jsonFactoryUtil.createJSONObject(card_images)/>
50 </#if>
51 <#if (card_image)??>
52 <#assign cardImageUrl = themeDisplay.getPortalURL() + "/documents/" + card_image.getString("groupId") + "/o/" + card_image.getString("title") + "/" + card_image.getString("uuid") />
53 </#if>
54 <#if "cover_image" == dynamicElement.attributeValue("name")>
55 <#assign cover_images = dynamicElement.element("dynamic-content").getData() />
56 <#assign cover_image = jsonFactoryUtil.createJSONObject(cover_images)/>
57 </#if>
58 <#if (cover_image)??>
59 <#assign coverImageUrl = themeDisplay.getPortalURL() + "/documents/" + cover_image.getString("groupId") + "/o/" + cover_image.getString("title") + "/" + cover_image.getString("uuid") />
60 </#if>
61 <#if "sub_title" == dynamicElement.attributeValue("name")>
62 <#assign sub_title = dynamicElement.element("dynamic-content").getData() />
63 </#if>
64 <#if "media_category" == dynamicElement.attributeValue("name")>
65 <#assign media_category = dynamicElement.element("dynamic-content").getData() />
66 </#if>
67 <#if "publication" == dynamicElement.attributeValue("name")>
68 <#assign publication = dynamicElement.element("dynamic-content").getData() />
69 </#if>
70 <#if "author" == dynamicElement.attributeValue("name")>
71 <#assign author = dynamicElement.element("dynamic-content").getData() />
72 </#if>
73 <#if "selection" == dynamicElement.attributeValue("name")>
74 <#assign selection = dynamicElement.element("dynamic-content").getData() />
75 </#if>
76 <#if "date" == dynamicElement.attributeValue("name")>
77 <#assign date = dynamicElement.element("dynamic-content").getData() />
78 </#if>
79 <#if "link" == dynamicElement.attributeValue("name")>
80 <#assign link = dynamicElement.element("dynamic-content").getData() />
81 </#if>
82 <#if "youtube_iframe" == dynamicElement.attributeValue("name")>
83 <#assign youtube_iframe = dynamicElement.element("dynamic-content").getData() />
84 </#if>
85 <#if "description" == dynamicElement.attributeValue("name")>
86 <#assign description = dynamicElement.element("dynamic-content").getData() />
87 </#if>
88 </#list>
89 <#if selection?? >
90 <div class="${selection?lower_case}-card col-md-4 award-unit">
91 <#if card_images?has_content && card_images!="">
92 <a href="./media/${selection?lower_case}?article=${articleId}">
93 <div class="card-image">
94 <#if media_category?has_content >
95 <div class="media-category mt-20 tag-wrap">
96 <a class="tag">${media_category?upper_case}</a>
97 </div>
98 </#if>
99 <img loading="lazy" src="${cardImageUrl}" class="img-responsive curve-all-sm">
100 </div>
101 </a>
102 </#if>
103 <#if title?has_content >
104 <div class="title">
105 <a href="./media/${selection?lower_case}?article=${articleId}">
106 <div class="title"><p>${title}</p></div>
107 </a>
108 </div>
109 </#if>
110 </div>
111 </#if>
112 </#list>
113 </div>
114 </div>
115 </#if>
116 </div>
117 </div>
118</section>
119<script>
120$( document ).ready(function() {
121 var selection = sessionStorage.getItem("selection");
122 var filter = sessionStorage.getItem("filterChange");
123 sessionStorage.removeItem("filterChange");
124 sessionStorage.removeItem("selection");
125 if(filter == "true" && selection != null){
126 $("#select-category option[value=selection]").prop('selected', true);
127 filterCategoryContent();
128 }
129});
130 function filterCategoryContent() {
131 var choice = $("#select-category").val();
132 sessionStorage.setItem("selection",choice);
133 switch(choice) {
134 case "news":
135 $(".press-card").hide();
136 $(".media-card").hide();
137 $(".events-card").hide();
138 $(".news-card").show();
139 break;
140 case "events":
141 $(".news-card").hide();
142 $(".press-card").hide();
143 $(".media-card").hide();
144 $(".events-card").show();
145 break;
146 case "press":
147 $(".news-card").hide();
148 $(".events-card").hide();
149 $(".mediaRelease-card").hide();
150 $(".press-card").show();
151 break;
152 case "media":
153 $(".news-card").hide();
154 $(".events-card").hide();
155 $(".press-card").hide();
156 $(".media-card").show();
157 break;
158 case "all":
159 $(".news-card").show();
160 $(".events-card").show();
161 $(".press-card").show();
162 $(".media-card").show();
163 break;
164 default:
165 $(".news-card").show();
166 $(".events-card").show();
167 $(".press-card").show();
168 $(".media-card").show();
169 }
170 }
171</script>