Um erro ocorreu enquanto processava o modelo.
The following has evaluated to null or missing: ==> httpServletRequest.getParameter("tag") [in template "22424485586212#55326#141578" at line 148, column 17] ---- 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: #assign tag = httpServletRequest.getP... [in template "22424485586212#55326#141578" at line 148, column 1] ----
1<#-- file path: klabindw/assets/video-gallery/adts/video-gallery.ftl -->
2
3<style>
4.klb-card__imagem-wrapper{
5 position: relative;
6 z-index: 1;
7}
8.klb-blog-section-tag {
9 display: flex;
10 flex-direction: column;
11}
12
13.klb-card .klb-card__imagem{
14 z-index: unset;
15}
16
17.klb-blog-section-tag__top-detail {
18 height: 5px;
19 width: 100%;
20 background: linear-gradient(
21 180deg,
22 rgba(0, 0, 0, 0.16) 0%,
23 rgba(0, 0, 0, 0) 100%
24 );
25 opacity: 0.5;
26}
27
28.klb-blog-section-tag__container {
29 padding: 0 6vw;
30}
31
32.klb-blog-section-tag__wrapper {
33 padding: 40px 0 60px;
34 max-width: 1330px;
35 margin: auto;
36 display: flex;
37 flex-direction: column;
38}
39
40.klb-blog-section-tag__title {
41 font-size: 60px;
42 line-height: 110%;
43 text-align: center;
44 color: #231f20;
45 margin-bottom: 40px;
46}
47
48.klb-blog-section-tag__description {
49 font-family: "Raleway";
50 font-size: 18px;
51 line-height: 160%;
52 color: #231f20;
53 max-width: 900px;
54 margin: auto;
55 margin-bottom: 40px;
56}
57
58.klb-blog-section-tag__content {
59 display: flex;
60 flex-wrap: wrap;
61 gap: 20px;
62}
63
64.klb-blog-section-tag a {
65 text-decoration: none;
66}
67
68.klb-blog-section-tag__item:hover .klb-bigcard__title,
69.klb-blog-section-tag__item:hover .klb-card__title,
70.klb-blog-section-tag__item:hover .klb-bigcard__description,
71.klb-blog-section-tag__item:hover .klb-card__description {
72 color: #8B9F2F;
73}
74
75.klb-blog-section-tag__item {
76 flex: 1 1 23%;
77}
78
79.lfr-pagination ul {
80 display: flex;
81 justify-content: center;
82 gap: 20px;
83}
84
85.lfr-pagination li.disabled a {
86 opacity: 0.5;
87}
88
89.lfr-pagination li a {
90 border: 1px solid #00693A;
91 border-radius: 20px;
92 font-family: 'Raleway';
93 font-style: normal;
94 font-weight: 700;
95 font-size: 12px;
96 text-align: center;
97 text-transform: uppercase;
98 color: #00693A;
99 background: transparent;
100 padding: 8px 16px;
101 min-width: 110px;
102 transition: 0.3s;
103}
104
105.lfr-pagination li:not(.disabled):hover a {
106 background: #00693A;
107 color: #F4F4F4;
108}
109
110@media (max-width: 1024px) {
111 .klb-blog-section-tag__item {
112 flex: 1 1 24%;
113 }
114}
115
116@media (max-width: 900px) {
117 .klb-blog-section-tag__item {
118 flex: 1 1 40%;
119 }
120
121 .klb-blog-section-tag__title {
122 font-size: 30px;
123 line-height: 110%;
124 }
125
126 .klb-blog-section-tag__description {
127 font-size: 16px;
128 line-height: 160%;
129 }
130}
131
132@media (max-width: 660px) {
133 .klb-blog-section-tag__item {
134 flex: 0 0 100%;
135 }
136}
137
138</style>
139
140<#assign dlAppService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLAppService")>
141<#assign dlUtil = serviceLocator.findService("com.liferay.document.library.util.DLURLHelper")>
142<#assign vocabularyLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService") />
143<#assign categoryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService") />
144
145<#assign serviceContext = staticUtil["com.liferay.portal.kernel.service.ServiceContextThreadLocal"].getServiceContext() />
146<#assign httpServletRequest = serviceContext.getRequest()/>
147
148<#assign tag = httpServletRequest.getParameter("tag")?string />
149
150
151<div class="klb-blog-section-tag">
152 <span class="klb-blog-section-tag__top-detail"></span>
153 <div class="klb-blog-section-tag__container">
154 <div class="klb-blog-section-tag__wrapper">
155 <div class="klb-blog-section-tag__title"></div>
156 <div class="klb-blog-section-tag__content"></div>
157 </div>
158 </div>
159</div>
160
161<script>
162 Liferay.on("allPortletsReady", function () {
163
164
165 var title = '${tag?replace("%20", " ")}';
166 var decodeTitle = decodeURI(title);
167 var capitalizeTitle = decodeTitle.charAt(0).toUpperCase() + decodeTitle.slice(1);
168
169 $(".klb-blog-section-tag__title").text(capitalizeTitle)
170
171 $("#klb-blog-footer").addClass("klb-blog-footer--secondary");
172 var klabinSustentabilidadeData = [
173 <#if entries?has_content>
174 <#list entries as entry>
175
176
177 <#list entry.tagNames as tagPost>
178
179 <#if tagPost==tag>
180
181 <#assign assetRenderer = entry.getAssetRenderer() />
182 <#assign article = assetRenderer.getArticle() />
183
184 <#assign document = saxReaderUtil.read(article.getContent()) />
185 <#assign rootElement = document.getRootElement() />
186
187 <#assign xPathSelector = saxReaderUtil.createXPath("dynamic-element[@field-reference='banner']")>
188 <#assign ImagemDeDestaque = xPathSelector.selectSingleNode(rootElement).getStringValue()?trim>
189
190 <#assign urlImage = "">
191 <#if ImagemDeDestaque?? && ImagemDeDestaque!="">
192 <#assign
193 fileJson = jsonFactoryUtil.createJSONObject(ImagemDeDestaque)
194 fileEntryId = getterUtil.getInteger(fileJson.get('fileEntryId'))
195 />
196 <#assign
197 fileEntry = dlAppService.getFileEntry(fileEntryId)
198 urlImage = dlUtil.getDownloadURL(fileEntry, fileEntry.getFileVersion(), themeDisplay, null)?keep_before("?")
199 />
200 </#if>
201
202 <#assign tituloXPath = saxReaderUtil.createXPath("dynamic-element[@field-reference='titulo']") />
203 <#assign titulo = tituloXPath.selectSingleNode(rootElement).getStringValue()?trim />
204
205 <#assign tempoDeLeituraXPath = saxReaderUtil.createXPath("dynamic-element[@field-reference='TempoDeLeitura']") />
206 <#assign TempoDeLeitura = tempoDeLeituraXPath.selectSingleNode(rootElement).getStringValue()?trim />
207
208 <#assign resumoXPath = saxReaderUtil.createXPath("dynamic-element[@field-reference='resumo']") />
209 <#assign resumo = resumoXPath.selectSingleNode(rootElement).getStringValue()?trim />
210
211 <#assign viewURL = assetPublisherHelper.getAssetViewURL(renderRequest, renderResponse, entry) />
212
213 <#if assetLinkBehavior != "showFullContent">
214 <#assign viewURL = assetRenderer.getURLViewInContext(renderRequest, renderResponse, viewURL) />
215 </#if>
216
217 <#if entry.getCategories()??>
218 <#list entry.getCategories() as category>
219 <#assign nome_categoria = "">
220 <#assign vocabulary = vocabularyLocalService.getVocabulary(category.getVocabularyId()) />
221 <#if vocabulary.getTitle(locale) == "Temas dos posts">
222 <#assign nome_categoria += category.getName() >
223 </#if>
224 </#list>
225 </#if>
226
227 {
228 image: '${urlImage}',
229 title: '${titulo}',
230 time: '${TempoDeLeitura}',
231 description: '${resumo}',
232 category : '${nome_categoria}',
233 link: '${viewURL}'
234 },
235 </#if>
236 </#list>
237
238 </#list>
239 </#if>
240 ];
241
242var _categories = {
243 'TECNOLOGIA E INOVAÇÃO': 'https://blog.klabin.com.br/tecnologia-e-inovacao',
244 'E-COMMERCE': 'https://blog.klabin.com.br/e-commerce',
245 'SUSTENTABILIDADE': 'https://blog.klabin.com.br/sustentabilidade',
246 'PRODUTOS': 'https://blog.klabin.com.br/produtos',
247 'NEGÓCIOS': 'https://blog.klabin.com.br/negocios'
248 }
249 function renderTemplate() {
250 var html = klabinSustentabilidadeData.reduce((acc, item, index) => {
251 acc += `
252 <div class="klb-blog-section-tag__item klb-card">
253 <img alt="Imagem do card" class="klb-card__imagem" src="`+item.image+`">
254 <a href="`+item.link+`" aria-label="`+item.title+`"><div class="klb-card__imagem-wrapper" ></div></a>
255 <a class="klb-card__category href="`+_categories[item.category.toUpperCase()]+`"" aria-label="`+item.title+`">`+item.category+`</a>
256 <svg class="klb-card__detail" width="52" height="26" viewBox="0 0 52 26" fill="#D3DF78" xmlns="http://www.w3.org/2000/svg">
257 <path d="M24.8323 0.621826L0.45752 25.2281H27.6022L51.977 0.621826H24.8323Z"/>
258 </svg>
259 <a href="`+item.link+`" aria-label="`+item.title+`"><div class="klb-card__title">`+item.title+`</div></a>
260 <div class="klb-card__legend">
261 <div class="klb-card__time">tempo de leitura: `+item.time+`</div>
262 |
263 <div class="klb-card__share" data-link="`+item.link+`" data-title="`+item.title+`">compartilhe</div>
264 <svg data-link="`+item.link+`" data-title="`+item.title+`" width="10" height="11" viewBox="0 0 10 11" fill="#231F20" xmlns="http://www.w3.org/2000/svg">
265 <path d="M2.40089 7.85679C3.02304 7.8569 3.62053 7.62108 4.06652 7.19932L5.78323 8.18161C5.68523 8.8215 5.90811 9.46831 6.38298 9.92153C6.85785 10.3747 7.52704 10.5793 8.18318 10.472C8.83922 10.3646 9.40282 9.95828 9.69907 9.379C9.9952 8.79972 9.9883 8.11755 9.68023 7.54401C9.37228 6.97059 8.80054 6.57519 8.14236 6.48054C7.48419 6.38589 6.81926 6.60349 6.35375 7.06568L4.71544 6.13305C4.8276 5.73895 4.8276 5.32262 4.71544 4.92852L6.35375 3.99589C6.82693 4.47195 7.50617 4.69824 8.18004 4.60423C8.85391 4.51023 9.4405 4.10747 9.75692 3.52133C10.0734 2.93523 10.0813 2.23701 9.77822 1.64427C9.47518 1.05156 8.89784 0.636314 8.22631 0.527874C7.55467 0.419456 6.87041 0.63109 6.38663 1.09686C5.90286 1.56262 5.67842 2.22583 5.78309 2.87991L4.06649 3.85134C3.49363 3.31142 2.68216 3.08385 1.90168 3.24431C1.1212 3.40476 0.473874 3.93222 0.17483 4.65136C-0.124215 5.3705 -0.0357859 6.18722 0.410643 6.83015C0.857083 7.47296 1.60312 7.85787 2.40089 7.85679ZM7.83547 7.70131C8.04743 7.70131 8.2508 7.78328 8.40065 7.92899C8.55061 8.07471 8.63479 8.27235 8.63479 8.47846C8.63479 8.68457 8.55061 8.88233 8.40065 9.02804C8.2508 9.17376 8.04754 9.25562 7.83558 9.25562C7.62362 9.25562 7.42037 9.17376 7.2704 9.02804C7.12055 8.88233 7.03637 8.68457 7.03637 8.47846C7.03637 8.27236 7.12055 8.07471 7.2704 7.92899C7.42037 7.78328 7.62351 7.70131 7.83547 7.70131ZM7.83547 1.795C8.04743 1.795 8.2508 1.87696 8.40065 2.02267C8.55061 2.16839 8.63479 2.36615 8.63479 2.57226C8.63479 2.77836 8.55061 2.97601 8.40065 3.12173C8.2508 3.26744 8.04754 3.34941 7.83558 3.34941C7.62362 3.34941 7.42037 3.26744 7.2704 3.12173C7.12055 2.97601 7.03637 2.77837 7.03637 2.57226C7.03637 2.36615 7.12055 2.16839 7.2704 2.02267C7.42037 1.87696 7.62351 1.795 7.83547 1.795ZM2.40089 4.43738C2.69768 4.43738 2.98223 4.55198 3.19208 4.75601C3.40191 4.96005 3.51986 5.23673 3.51986 5.52536C3.51986 5.81398 3.4019 6.09065 3.19208 6.2947C2.98224 6.49875 2.69771 6.61334 2.40089 6.61334C2.10419 6.61334 1.81956 6.49874 1.60971 6.2947C1.39988 6.09066 1.28204 5.81398 1.28204 5.52536C1.28204 5.23673 1.39989 4.96007 1.60971 4.75601C1.81955 4.55196 2.10419 4.43738 2.40089 4.43738Z"/>
266 <path d="M2.40089 4.43738C2.69768 4.43738 2.98223 4.55198 3.19208 4.75601C3.40191 4.96005 3.51986 5.23673 3.51986 5.52536C3.51986 5.81398 3.4019 6.09065 3.19208 6.2947C2.98224 6.49875 2.69771 6.61334 2.40089 6.61334C2.10419 6.61334 1.81956 6.49874 1.60971 6.2947C1.39988 6.09066 1.28204 5.81398 1.28204 5.52536C1.28204 5.23673 1.39989 4.96007 1.60971 4.75601C1.81955 4.55196 2.10419 4.43738 2.40089 4.43738Z"/>
267 <path d="M7.83547 1.795C8.04743 1.795 8.2508 1.87696 8.40065 2.02267C8.55061 2.16839 8.63479 2.36615 8.63479 2.57226C8.63479 2.77836 8.55061 2.97601 8.40065 3.12173C8.2508 3.26744 8.04754 3.34941 7.83558 3.34941C7.62362 3.34941 7.42037 3.26744 7.2704 3.12173C7.12055 2.97601 7.03637 2.77837 7.03637 2.57226C7.03637 2.36615 7.12055 2.16839 7.2704 2.02267C7.42037 1.87696 7.62351 1.795 7.83547 1.795Z"/>
268 <path d="M7.83547 7.70131C8.04743 7.70131 8.2508 7.78328 8.40065 7.92899C8.55061 8.07471 8.63479 8.27235 8.63479 8.47846C8.63479 8.68457 8.55061 8.88233 8.40065 9.02804C8.2508 9.17376 8.04754 9.25562 7.83558 9.25562C7.62362 9.25562 7.42037 9.17376 7.2704 9.02804C7.12055 8.88233 7.03637 8.68457 7.03637 8.47846C7.03637 8.27236 7.12055 8.07471 7.2704 7.92899C7.42037 7.78328 7.62351 7.70131 7.83547 7.70131Z"/>
269 </svg>
270 </div>
271 <a href="`+item.link+`" aria-label="`+item.title+`"><div class="klb-card__description">`+item.description+`</div></a>
272 </div>
273 `;
274 return acc;
275 },'')
276
277 var element = $('.klb-blog-section-tag .klb-blog-section-tag__content');
278 element.html(html);
279 }
280
281 renderTemplate();
282 });
283</script>