1<#setting locale="pt_BR">
2<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") />
3<#assign assetVocabularyLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService") />
4<#assign AssetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") />
5
6<#assign currentArticle = journalArticleLocalService.getArticle(groupId, .vars['reserved-article-id'].data) />
7<#assign assetEntry = AssetEntryLocalService.getEntry("com.liferay.journal.model.JournalArticle", currentArticle.getResourcePrimKey()) />
8<#assign eventCategories = getEventCategories(assetEntry.getCategories()) />
9
10<#assign title = .vars['reserved-article-title'].data />
11<#assign currentUrl = themeDisplay.getPortalURL() + themeDisplay.getURLCurrent() />
12<#assign dateFormat = "yyyy-MM-dd">
13
14<#assign webContentData = jsonFactoryUtil.createJSONObject(local.getData()) />
15
16<#if webContentData?? && webContentData.classPK??>
17 <#assign assetEntry = AssetEntryLocalService.getEntry(webContentData.className, getterUtil.getLong(webContentData.classPK)) />
18 <#assign assetRenderer = assetEntry.getAssetRenderer() />
19 <#assign journalArticle = assetRenderer.getAssetObject() />
20</#if>
21
22<#assign preferences = freeMarkerPortletPreferences.getPreferences({
23 "portletSetupPortletDecoratorId": "borderless",
24 "portletSetupDisplayStyle": "ddmTemplate_39869"
25}) />
26
27<#-- <#if request.getParameter("acquired")?has_content>
28 <#assign acquired = request.getParameter("acquired") />
29</#if> -->
30
31<#assign images_folder = themeDisplay.getPathThemeImages() />
32
33<#assign classificationsImageMap = {
34 "age18": images_folder + "/classifications/age18.svg",
35 "age16": images_folder + "/classifications/age16.svg",
36 "age14": images_folder + "/classifications/age14.svg",
37 "age12": images_folder + "/classifications/age12.svg",
38 "age10": images_folder + "/classifications/age10.svg",
39 "everyone": images_folder + "/classifications/everyone.svg"
40} />
41
42<#assign classificationsTextMap = {
43 "age18": "Não recomendado para menores de 18 anos",
44 "age16": "Não recomendado para menores de 16 anos",
45 "age14": "Não recomendado para menores de 14 anos",
46 "age12": "Não recomendado para menores de 12 anos",
47 "age10": "Não recomendado para menores de 10 anos",
48 "everyone": "Classificação Livre"
49} />
50
51<#assign classification = eventClassification.getData() />
52
53<div class="event">
54 <#if eventThumbnail.getData()?has_content && eventThumbnail.getData() != "">
55 <div class="card banner banner-destaque banner-full">
56 <div
57 class="banner-img-wrapper lazy-image"
58 style="background-image: url('${eventThumbnail.getData()}&imageThumbnail=2')"
59 >
60 <img class="card-img" data-fileentryid="${eventThumbnail.getAttribute('fileEntryId')}" src="${eventThumbnail.getData()}" />
61 <div class="card-img-mask"></div>
62 </div>
63 <div class="card-img-overlay">
64 <div class="position-absolute w-100 h-100 d-flex align-items-end justify-content-center">
65 <div class="d-none d-lg-block c-mb-n20">
66 <@getActions />
67 </div>
68 <div class="d-lg-none c-mb-n16">
69 <@getActions />
70 </div>
71 </div>
72 <div class="container h-100">
73 <div class="d-flex flex-column h-100">
74 <@liferay_portlet["runtime"]
75 portletName="com_liferay_site_navigation_breadcrumb_web_portlet_SiteNavigationBreadcrumbPortlet"
76 defaultPreferences="${preferences}"
77 />
78 </div>
79 </div>
80 </div>
81 </div>
82 </#if>
83
84 <div class="container c-pt-32 c-pt-lg-5 py-5">
85 <div class="row gutters-24">
86 <div class="col-lg-8">
87 <div class="border-lg-bottom border-gray-ligther c-pb-0 c-pb-lg-32 c-mb-4 c-mb-lg-32">
88 <#if eventCategories?has_content>
89 <div class="d-flex flex-nowrap align-items-center overflow-auto mb-3">
90 <#list eventCategories as category>
91 <@getBadge category />
92 </#list>
93 <#if showFreeTicketTag.getData()?has_content && showFreeTicketTag.getData()?matches("true")>
94 <span
95 class="badge text-gray-dark mr-4"
96 style="background-color: #F7C625;"
97 >
98 <span class="badge-item badge-item-expand">
99 Gratuito - Sujeito a Lotação
100 </span>
101 </span>
102 </#if>
103 </div>
104 </#if>
105
106 <h2 class="text-dark semi-bold mb-4">${title}</h2>
107
108 <ul class="list-unstyled">
109 <#if eventStartDate.getData()?has_content>
110 <li class="d-flex align-items-center h5 text-gray-dark">
111 <i class="las la-clock fs-24 mr-2"></i>
112 ${eventStartDate.getData()?datetime(dateFormat)?string["EEE, d MMM"]}
113 <#if eventEndDate.getData()?has_content>
114 a ${eventEndDate.getData()?datetime(dateFormat)?string["EEE, d MMM"]}
115 </#if>
116 <#if eventStartHour.getData()?has_content>
117 • ${eventStartHour.getData()}h
118 </#if>
119 <#if eventEndHour.getData()?has_content>
120 - ${eventEndHour.getData()}h
121 </#if>
122 </li>
123 </#if>
124 <li class="d-flex align-items-center h5 text-gray-dark mt-3">
125 <i class="las la-map-marker bold fs-24 mr-2"></i>
126 <#if (webContentData?has_content && webContentData.classPK??)>
127 ${webContentData.title}
128 <#else>
129 <#if (customLocal.getData())??>
130 ${customLocal.eventPlace.getData()}
131 </#if>
132 </#if>
133 </li>
134 </ul>
135 </div>
136
137 <div class="d-lg-none">
138 <@liferay_portlet["runtime"]
139 instanceId="event_tickets_mobile"
140 portletName="sescportaleventticketsweb"
141 />
142 </div>
143
144 <#if acquired?has_content && acquired?lower_case?matches("true")>
145 <div class="c-mb-4 c-mb-lg-32">
146 <h4 class="text-dark semi-bold mb-3">Os ingressos foram enviados para:</h4>
147 <p class="text-gray-dark mb-3">
148 Para acessar seus ingressos vá e <a class="btn btn-link d-inline-block p-0" href="${themeDisplay.getPortalURL()}/meus-ingressos">Meu Sesc > Meus Ingressos</a> no nosso site.
149 </p>
150 <p class="text-gray-dark">
151 Ao acessar meus ingressos, você poderá adicioná-lo a sua carteira ou imprimi-los..
152 </p>
153 </div>
154 <#else>
155 <div class="c-mb-4 c-mb-lg-32">
156 <h4 class="text-dark semi-bold mb-3">Descrição do evento</h4>
157 <p class="text-gray-dark text-justify">
158 ${eventDescription.getData()?replace("<p>", "")?replace("</p>", "")}
159 </p>
160 </div>
161
162 <#if (webContentData?has_content && webContentData.classPK??)>
163 <@liferay_journal["journal-article"]
164 articleId=journalArticle.getArticleId()
165 ddmTemplateKey=journalArticle.getDDMTemplateKey()
166 groupId=assetEntry.getGroupId()
167 />
168 <#else>
169 <@getLocation />
170 </#if>
171
172 <div class="c-mb-4 c-mb-lg-32">
173 <h4 class="text-dark semi-bold mb-3">Mais informações</h4>
174
175 <ul class="list-unstyled">
176 <#if instagramLink.getData()?has_content>
177 <li>
178 <a
179 class="btn btn-link justify-content-start py-2"
180 href="${instagramLink.getData()}"
181 target="_blank"
182 >
183 <i class="lab la-instagram fs-24 mr-2"></i>
184 <span class="semi-bold">Instagram</span>
185 </a>
186 </li>
187 </#if>
188
189 <#if twitter.getData()?has_content>
190 <li>
191 <a
192 class="btn btn-link justify-content-start py-2"
193 href="${twitter.getData()}"
194 target="_blank"
195 >
196 <svg
197 width="24"
198 height="22"
199 viewBox="0 0 24 22"
200 fill="none"
201 xmlns="http://www.w3.org/2000/svg"
202 >
203 <g clip-path="url(#clip0_2573_23546)">
204 <path
205 d="M18.9014 0H22.5813L14.5415 9.18937L24 21.6937H16.5938L10.7935 14.1097L4.15636 21.6937H0.473859L9.07331 11.8648L0 0H7.5937L12.837 6.93187L18.9014 0ZM17.6097 19.4909H19.649L6.48577 2.0872H4.29764L17.6097 19.4909Z"
206 fill="#208BDC"
207 />
208 </g>
209 <defs>
210 <clipPath id="clip0_2573_23546">
211 <rect width="24" height="21.6937" fill="white"/>
212 </clipPath>
213 </defs>
214 </svg>
215
216 <span class="semi-bold ml-2">X (Twitter)</span>
217 </a>
218 </li>
219 </#if>
220
221 <#if spotify.getData()?has_content>
222 <li>
223 <a
224 class="btn btn-link justify-content-start py-2"
225 href="${spotify.getData()}"
226 target="_blank"
227 >
228 <i class="lab la-spotify fs-24 mr-2"></i>
229 <span class="semi-bold">Spotify</span>
230 </a>
231 </li>
232 </#if>
233
234 <#if tiktok.getData()?has_content>
235 <li>
236 <a
237 class="btn btn-link justify-content-start py-2"
238 href="${tiktok.getData()}"
239 target="_blank"
240 >
241 <svg
242 width="24"
243 height="24"
244 viewBox="0 0 24 24"
245 fill="none"
246 xmlns="http://www.w3.org/2000/svg"
247 >
248 <path
249 d="M19.5888 6.686C18.5902 6.47238 17.6858 5.94535 17.0077 5.18175C16.3295 4.41816 15.913 3.45791 15.8188 2.441V2H12.3738V15.672C12.3717 16.2773 12.18 16.8667 11.8256 17.3574C11.4712 17.848 10.972 18.2154 10.3981 18.4077C9.82418 18.6 9.20443 18.6077 8.62593 18.4297C8.04743 18.2516 7.53927 17.8968 7.17284 17.415C6.80072 16.9252 6.5943 16.3296 6.5835 15.7145C6.57271 15.0995 6.7581 14.497 7.11281 13.9944C7.46751 13.4918 7.97307 13.1153 8.55619 12.9194C9.1393 12.7235 9.76966 12.7185 10.3558 12.905V9.405C9.04869 9.2243 7.71775 9.45669 6.54919 10.0697C5.38062 10.6826 4.43288 11.6455 3.83852 12.8237C3.24416 14.0018 3.03291 15.3363 3.23432 16.6404C3.43573 17.9445 4.03973 19.1531 4.96184 20.097C5.8412 20.9968 6.96872 21.6141 8.20049 21.8701C9.43226 22.1262 10.7124 22.0094 11.8775 21.5346C13.0426 21.0599 14.0398 20.2487 14.7418 19.2047C15.4438 18.1606 15.8188 16.9311 15.8188 15.673V8.687C17.2111 9.68234 18.8804 10.216 20.5918 10.213V6.79C20.2548 6.79042 19.9186 6.75556 19.5888 6.686Z"
250 fill="#208BDC"
251 />
252 </svg>
253
254 <span class="semi-bold ml-2">Tiktok</span>
255 </a>
256 </li>
257 </#if>
258
259 <#if facebook.getData()?has_content>
260 <li>
261 <a
262 class="btn btn-link justify-content-start py-2"
263 href="${facebook.getData()}"
264 target="_blank"
265 >
266 <i class="lab la-facebook-f fs-24 mr-2"></i>
267 <span class="semi-bold">Facebook</span>
268 </a>
269 </li>
270 </#if>
271
272 <#if youtube.getData()?has_content>
273 <li>
274 <a
275 class="btn btn-link justify-content-start py-2"
276 href="${youtube.getData()}"
277 target="_blank"
278 >
279 <i class="lab la-youtube fs-24 mr-2"></i>
280 <span class="semi-bold">Youtube</span>
281 </a>
282 </li>
283 </#if>
284
285 <#if site.getData()?has_content>
286 <li>
287 <a
288 class="btn btn-link justify-content-start py-2"
289 href="${site.getData()}"
290 target="_blank"
291 >
292 <i class="las la-link fs-24 mr-2"></i>
293 <span class="semi-bold">Site</span>
294 </a>
295 </li>
296 </#if>
297
298 <#if WhatsApp.getData()?has_content>
299 <li>
300 <a
301 class="btn btn-link justify-content-start py-2"
302 href="${WhatsApp.getData()}"
303 target="_blank"
304 >
305 <i class="lab la-whatsapp fs-24 mr-2"></i>
306 <span class="semi-bold">WhatsApp</span>
307 </a>
308 </li>
309 </#if>
310
311 <#if classification?has_content>
312 <li class="d-flex align-items-center py-2">
313 <img src="${classificationsImageMap[classification]}" style="width: 24px; height: 24px;" />
314 <p class="text-gray-dark ml-2">
315 ${classificationsTextMap[classification]}
316 </p>
317 </li>
318 </#if>
319
320 <li class="d-flex flex-column flex-md-row align-items-md-center py-2">
321 <#if phone.getData()?has_content>
322 <span class="d-flex align-items-center mr-md-4">
323 <i class="las la-phone fs-24 bold mr-2"></i>
324 ${phone.getData()}
325 </span>
326 </#if>
327
328 <#if email.getData()?has_content>
329 <span class="d-flex align-items-center mt-3 mt-md-0">
330 <i class="las la-envelope fs-24 mr-2"></i>
331 ${email.getData()}
332 </span>
333 </#if>
334 </li>
335 </ul>
336 </div>
337 </#if>
338
339 <h4 class="text-dark semi-bold mb-3">Política do evento</h4>
340
341 <#if (eventPolicyNotice.getData()?has_content) && (eventPolicyNotice.getData()?lower_case?matches("true"))>
342 <p class="text-gray-dark semi-bold mb-3">Atenção!</p>
343 <p class="text-gray-dark mb-3">
344 A retirada do ingresso para o evento é obrigatória, mas não garante a sua entrada no mesmo. Chegue com antecedência e garanta seu lugar. Pessoas sem ingresso não poderão entrar no evento.
345 </p>
346 </#if>
347
348 <#if (ticketCancellationPolicy.getData()?has_content) && (ticketCancellationPolicy.getData()?lower_case?matches("true"))>
349 <p class="text-gray-dark semi-bold mb-3">Cancelamento de ingresso adquirido</p>
350
351 <p class="text-gray-dark">
352 Caso desista de ir ao evento, acesse
353 <a
354 class="btn btn-link d-inline-block p-0"
355 href="${themeDisplay.getPortalURL()}/group/guest/meus-ingressos"
356 >
357 Meus Ingressos
358 </a>
359 e clique em “cancelar pedido”. O SESC agradece a sua colaboração!
360 </p>
361 </#if>
362
363 <#if getterUtil.getBoolean(AddTermsPDF.getData())>
364 <div class="anexos pt-5">
365 <h4 class="text-dark semi-bold mb-3">Documentação</h4>
366
367 <#if (termsDocumentFolderId.getData())??>
368 <#assign DLFolderLocalService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLFolderLocalService") />
369 <#assign DLFileEntryLocalService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryLocalService") />
370 <#assign classPK = getterUtil.getLong(termsDocumentFolderId.getData()) />
371 <#assign folder = DLFolderLocalService.getDLFolder(classPK) />
372 <#assign fileEntries = DLFileEntryLocalService.getFileEntries(folder.getGroupId(), folder.getFolderId())?filter(file -> !file.isInTrash()) />
373
374 <#if fileEntries?has_content>
375 <div class="list-group">
376 <#list fileEntries as curFile>
377 <a
378 href="${getArticleDLEntryUrl(curFile)}"
379 class="list-group-item list-group-item-flex align-items-center bg-blue-50 p-4"
380 target="_blank"
381 >
382 <div class="autofit-col p-0">
383 <div class="sticker fs-32 text-blue">
384 <span class="inline-item">
385 <#if curFile.getExtension() != "pdf">
386 <i class="las la-file-alt"></i>
387 <#else>
388 <i class="las la-file-pdf"></i>
389 </#if>
390 </span>
391 </div>
392 </div>
393
394 <div class="autofit-col px-3">
395 <h4 class="text-dark semi-bold text-truncate m-0">${curFile.getTitle()}</h4>
396 </div>
397 </a>
398 </#list>
399 </div>
400 </#if>
401 </#if>
402
403 <style>
404 .list-group-item {
405 border: 0;
406 border-radius: 0.5rem !important;
407 overflow: hidden;
408 }
409
410 .list-group-item:hover {
411 text-decoration: none;
412 }
413
414 .list-group-item::before {
415 content: "";
416 background: var(--blue-600);
417 position: absolute;
418 left: 0;
419 width: 2px;
420 top: 1.5rem;
421 bottom: 1.5rem;
422 }
423 </style>
424 </div>
425 </#if>
426 </div>
427
428 <#if (ticketOption.getData())??>
429 <div
430 class="col-lg-4 d-none d-lg-block"
431 data-ticket-type="${ticketOption.getData()}"
432 >
433 <#if (ticketOption.getData() != "sympla")>
434 <@liferay_portlet["runtime"]
435 instanceId="event_tickets"
436 portletName="sescportaleventticketsweb"
437 />
438 <#else>
439 <div class="card card-shadow-elevated rounded-lg overflow-hidden">
440 <div class="card-header bg-blue-900 p-3">
441 <h4 class="text-white semi-bold">Ingresso</h4>
442 </div>
443 <div class="card-body bg-white p-3">
444 <a
445 class="btn btn-primary btn-block"
446 href="${symplaLink.getData()}"
447 target="_blank"
448 >
449 Adquirir ingresso
450 </a>
451 </div>
452 </div>
453 </#if>
454 </div>
455 </#if>
456 </div>
457 </div>
458</div>
459
460<#macro getLocation>
461 <#if (customLocal.getData())??>
462 <div class="c-mb-4 c-mb-lg-32">
463 <h4 class="text-dark semi-bold mb-3">Como chegar?</h4>
464 <div class="row gutters-24">
465 <div class="col-md-4 mb-3 mb-lg-0">
466 <span class="d-block text-dark semi-bold mb-3">
467 ${customLocal.eventPlace.getData()}
468 </span>
469 ${customLocal.addressLine.getData()} ${customLocal.addressComplement.getData()} - ${customLocal.addressLocality.getData()}, ${customLocal.addressCity.getData()} - ${customLocal.addressRegion.getData()}, ${customLocal.postalCode.getData()}
470 </div>
471 <#if customLocal.eventMap.getData()?has_content>
472 <div class="col-md-8">
473 ${customLocal.eventMap.getData()?replace('width="600"', 'width="100%"')}
474 </div>
475 </#if>
476 </div>
477 </div>
478 </#if>
479</#macro>
480
481<#macro getActions>
482 <div class="d-flex align-items-center">
483 <a
484 class="btn btn-action lfr-portal-tooltip mr-4"
485 href="${eventThumbnail.getData()}?imageThumbnail=1"
486 target="_blank"
487 >
488 <i class="las la-expand-arrows-alt"></i>
489 </a>
490
491 <button
492 class="btn btn-action lfr-portal-tooltip mr-4"
493 title="Favoritar"
494 onClick="toggleFavorite(this)"
495 >
496 <i class="lar la-heart"></i>
497 </button>
498
499 <button class="btn btn-share lfr-portal-tooltip">
500 <div class="share">
501 <ul class="nav flex-nowrap align-items-center">
502 <li class="nav-item">
503 <a
504 class="nav-link lfr-portal-tooltip"
505 href="https://www.facebook.com/sharer.php?u=${currentUrl}"
506 title="Facebook"
507 target="_blank"
508 >
509 <i class="lab la-facebook-f"></i>
510 </a>
511 </li>
512
513 <li class="nav-item">
514 <a
515 class="nav-link lfr-portal-tooltip"
516 href="https://www.instagram.com/?url=${currentUrl}"
517 title="Instagram"
518 target="_blank"
519 >
520 <i class="lab la-instagram"></i>
521 </a>
522 </li>
523
524 <li class="nav-item">
525 <a
526 class="nav-link lfr-portal-tooltip"
527 href="https://www.linkedin.com/shareArticle?mini=true&url=${currentUrl}&title=${title}"
528 title="LinkedIn"
529 target="_blank"
530 >
531 <i class="lab la-linkedin-in"></i>
532 </a>
533 </li>
534
535 <li class="nav-item">
536 <a
537 class="nav-link lfr-portal-tooltip"
538 href="http://twitter.com/intent/tweet?text=${title}%0AVeja%20mais%20em:&url=${currentUrl}"
539 title="Twitter"
540 target="_blank"
541 >
542 <i class="lab la-twitter"></i>
543 </a>
544 </li>
545
546 <li class="nav-item">
547 <span
548 class="btn nav-link lfr-portal-tooltip"
549 title="Copiar link"
550 onClick="copyToClipboard('${currentUrl}')"
551 >
552 <i class="las la-link"></i>
553 </span>
554 </li>
555 </ul>
556 </div>
557 <i class="las la-share"></i>
558 </button>
559 </div>
560
561 <script>
562 function toggleFavorite(favorite) {
563 const favoriteIcon = favorite.querySelector('i');
564
565 if (favorite.classList.contains('active')) {
566 favorite.classList.remove('active');
567 favoriteIcon.classList.remove('las');
568 favoriteIcon.classList.add('lar');
569 favorite.setAttribute('title', 'Favoritar');
570 } else {
571 favorite.classList.add('active');
572 favoriteIcon.classList.remove('lar');
573 favoriteIcon.classList.add('las');
574 favorite.setAttribute('title', 'Desfavoritar');
575 }
576 }
577
578 function copyToClipboard(text) {
579 navigator.clipboard.writeText(text);
580 Liferay.Util.openAlert({
581 title: "Link copiado com sucesso!",
582 placement: "top-center",
583 });
584 }
585 </script>
586</#macro>
587
588<#macro getBadge category>
589 <#assign categoryId = category.getCategoryId() />
590 <#assign categoryColorProperty = getCategoryProperty(categoryId, 'color') />
591 <#assign categoryColor = "#" + categoryColorProperty?has_content?then(categoryColorProperty.getValue(), "208bdc") />
592
593 <span
594 class="badge text-white mr-4"
595 style="background-color: ${categoryColor}"
596 >
597 <span class="badge-item badge-item-expand">
598 ${category.getName()}
599 </span>
600 </span>
601</#macro>
602
603<#function getEventCategories categories>
604 <#assign categoryList = [] />
605
606 <#if categories?has_content>
607 <#list categories as category>
608 <#assign vocabulary = assetVocabularyLocalService.getVocabulary(category.vocabularyId) />
609
610 <#if vocabulary.getName()?lower_case == "eventos">
611 <#assign categoryList = categoryList + [category] />
612 <#elseif vocabulary.getName()?lower_case == "unidades">
613 <#assign categoryList = categoryList + [category] />
614 </#if>
615 </#list>
616 </#if>
617
618 <#return categoryList />
619</#function>
620
621<#function getCategoryProperty categoryId key>
622 <#local assetCategoryPropertyLocalService = serviceLocator.findService("com.liferay.asset.category.property.service.AssetCategoryPropertyLocalService") />
623 <#local assetCategoryProperties = assetCategoryPropertyLocalService.getCategoryProperties(categoryId) />
624 <#local assetCategoryProperty = "" />
625
626 <#if assetCategoryProperties?has_content>
627 <#list assetCategoryProperties as curAssetCategoryProperty>
628 <#if curAssetCategoryProperty.getKey()?lower_case == key?lower_case>
629 <#local assetCategoryProperty = curAssetCategoryProperty>
630 </#if>
631 </#list>
632 </#if>
633
634 <#return assetCategoryProperty>
635</#function>
636
637<#function getArticleDLEntryUrl xmlValue>
638 <#local docUrl = "" />
639
640 <#if xmlValue?has_content>
641 <#local jsonObject = xmlValue />
642 <#local entryUuid = jsonObject.uuid />
643 <#assign entryGroupId = getterUtil.getLong(jsonObject.groupId) />
644 <#local dlFileEntry = DLFileEntryLocalService.getDLFileEntryByUuidAndGroupId(entryUuid, entryGroupId) />
645 <#local assetEntry = AssetEntryLocalService.getEntry("com.liferay.document.library.kernel.model.DLFileEntry", dlFileEntry.fileEntryId) />
646 <#if assetEntry.assetRenderer?has_content && assetEntry.assetRenderer??>
647 <#local assetRenderer = assetEntry.assetRenderer />
648 <#local docUrl = assetRenderer.getURLDownload(themeDisplay) />
649 <#else>
650 <#local docUrl = "#" />
651 </#if>
652 </#if>
653
654 <#return docUrl?remove_ending("&download=true") />
655</#function>