Banner Principal - Doble Check

Título Destacados - Doble Check

Publicador de contenidos

Publicador de contenidos

Se ha producido un error al procesar la plantilla.
For "?min" left-hand operand: Expected a sequence or collection, but this has evaluated to a number (wrapper: f.t.SimpleNumber):
==> firstParagraph?length  [in template "20097#20123#77105" at line 17, column 63]

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign firstParagraph = firstParagra...  [in template "20097#20123#77105" in function "getFirstParagraph" at line 17, column 9]
----
1<#-- Inyectar servicio remoto para manejar imágenes correctamente --> 
2    <#assign service = serviceLocator.findService("com.liferay.document.library.kernel.service.DLAppService")> 
3 
4    <#-- Función para construir URL de la imagen --> 
5    <#function getFileEntryURL fileEntry> 
6      <#return themeDisplay.getPathContext() + "/documents/" + fileEntry.getRepositoryId()?c + "/" + 
7        fileEntry.getFolderId()?c + "/" + htmlUtil.unescape(fileEntry.getTitle())> 
8    </#function> 
9 
10    <#-- Función para extraer el primer párrafo del HTML --> 
11    <#function getFirstParagraph htmlContent> 
12      <#-- Buscar el primer párrafo usando una expresión regular simple --> 
13      <#assign firstParagraph = htmlContent?replace('.*?<p[^>]*>(.*?)</p>.*', '$1', 'r')> 
14      <#-- Si no encuentra un párrafo, usar los primeros 200 caracteres --> 
15      <#if firstParagraph == htmlContent> 
16        <#assign firstParagraph = htmlContent?replace('<[^>]*>', '', 'r')> 
17        <#assign firstParagraph = firstParagraph?substring(0, firstParagraph?length?min(200)) + (firstParagraph?length > 200)?then('...', '')> 
18      </#if> 
19      <#return firstParagraph> 
20    </#function> 
21 
22 
23      <#if entries?has_content> 
24        <#list entries as curEntry> 
25          <#assign renderer = curEntry.getAssetRenderer() /> 
26          <#assign journalArticle = renderer.getArticle() /> 
27          <#assign document = saxReaderUtil.read(journalArticle.getContent()) /> 
28          <#assign rootElement = document.getRootElement() /> 
29 
30          <#-- Inicializar variables --> 
31          <#assign imagenPortada = "/documents/20121/49457/Portada.jpg/307a8a4a-25c8-822a-1f93-32c4d3218d9b?version=1.1&t=1752169972481&imagePreview=1"> 
32          <#assign imagenPortadaAlt = "Imagen por defecto"> 
33          <#assign tituloNoticia = "" /> 
34          <#assign descripcion_noticia = "" /> 
35          <#assign primerParrafo = "" /> 
36          <#assign etiquetaNoticia = "DOBLE CHECK" /> 
37          <#assign fechaFormateada = "" /> 
38          <#assign link = "#" /> 
39 
40          <#list rootElement.elements() as dynamicElement> 
41            <#if "ImagenPortada" == dynamicElement.attributeValue("name")> 
42              <#assign imgObj = dynamicElement.element("dynamic-content").getText() /> 
43              <#if imgObj?has_content> 
44                <#assign imgJson = jsonFactoryUtil.createJSONObject(imgObj) /> 
45                <#if imgJson.has("fileEntryId")> 
46                  <#assign imgFileEntry = service.getFileEntry(imgJson.fileEntryId?number) /> 
47                  <#assign imagenPortada = getFileEntryURL(imgFileEntry) /> 
48                  <#assign imagenPortadaAlt = imgJson.alt!"Imagen por defecto" /> 
49                </#if> 
50              </#if> 
51            </#if> 
52            <#if "Titulo" == dynamicElement.attributeValue("name")> 
53              <#assign tituloNoticia = dynamicElement.element("dynamic-content").getText() /> 
54            </#if> 
55            <#if "Contenido" == dynamicElement.attributeValue("name")> 
56              <#assign descripcion_noticia = dynamicElement.element("dynamic-content").getText() /> 
57              <#-- Extraer solo el primer párrafo --> 
58              <#assign primerParrafo = getFirstParagraph(descripcion_noticia) /> 
59            </#if> 
60            <#if "Etiqueta" == dynamicElement.attributeValue("name")> 
61              <#assign etiquetaNoticia = dynamicElement.element("dynamic-content").getText() /> 
62            </#if> 
63            <#if "FechaDate" == dynamicElement.attributeValue("name")> 
64                <#assign dateNoticia = dynamicElement.element("dynamic-content").getData()> 
65                <#if dateNoticia?? && dateNoticia != ""> 
66                    <#assign fechaFormateada = dateNoticia?date("yyyy-MM-dd")?string("dd 'de' MMMM 'del' yyyy")> 
67                </#if> 
68            </#if> 
69          </#list> 
70 
71          <#if curEntry??> 
72            <#assign link = assetPublisherHelper.getAssetViewURL(renderRequest, renderResponse, renderer, curEntry, true) /> 
73          </#if> 
74 
75<a href="${link} " class="a-reset black clean-link-article" aria-label="Leer noticia: ${tituloNoticia}"> 
76            <article class="news-cover-card " style="min-height: 380px; padding-top: 0px; margin-top: -17px;"> 
77              <img 
78                class="news-detail-list__image" 
79                src="${imagenPortada}" 
80                alt="${imagenPortadaAlt}" 
81                loading="lazy" 
82              /> 
83              <div class="news-cover-list__content"> 
84                <span class="heading-7 tag bg-color-doble-check-accesibilidad fw-bold white u-rounded-10"> 
85                  ${etiquetaNoticia} 
86                </span> 
87                <p class="heading-4 fw-bold gray-5" style="margin-bottom:32px;"> 
88                  ${tituloNoticia} 
89                </p> 
90                <span class="items-sm black"> 
91                  ${fechaFormateada} 
92                </span> 
93                 
94                <#-- Mostrar solo el primer párrafo --> 
95                <p class="items-lg black limite-texto-8" style="margin-bottom:20px;"> 
96                    ${primerParrafo} 
97                </p> 
98           
99                <span class="black" aria-label="Leer noticia: ${tituloNoticia}"> 
100                  Leer más 
101                </span> 
102              </div> 
103            </article> 
104          </a> 
105        </#list> 
106      </#if> 

Sidebar lateral - Doble Check

Card Quiénes Somos - Doble Check

QUIÉNES SOMOS

¿Querés saber más sobre Doble Check o deseás enviarnos sugerencias de verificaciones? Entrá en confianza y mandanos un mensaje; acá, te decimos cómo podés hacerlo.

Conocé más de nosotros