Projects
An error occurred while processing the template.
The following has evaluated to null or missing: ==> viewURL [in template "10155#10193#7586726" at line 59, column 128] ---- 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: ${viewURL} [in template "10155#10193#7586726" at line 59, column 126] ----
1<#include "${fullTemplatesPath}/util/getPathForPlugins.ftl" />
2<#assign imgUpfPath = getPathForPlugins('upf','images','')?trim />
3
4<#if (entries?has_content) >
5<div class="fitxa_projecte_llistat">
6 <#--#set( $cont = 0 ) -->
7 <#list entries as entry >
8 <#assign renderer = entry.getAssetRenderer() />
9 <#assign className = renderer.getClassName() />
10 <#if (className == "com.liferay.journal.model.JournalArticle") >
11
12 <#assign journalArticle = renderer.getArticle() />
13 <#assign document = saxReaderUtil.read(journalArticle.getContentByLocale(localeUtil.toLanguageId(locale))) />
14 <#assign rootElement = document.getRootElement() />
15
16
17 <div class="fitxa_projecte_llistat_item">
18
19 <#assign resum = "" />
20 <#assign existLink = false />
21 <#list rootElement.elements() as dynamicElement >
22
23 <#if ("Imagen" == dynamicElement.attributeValue("name") ) >
24 <#assign imagenData = dynamicElement.element("dynamic-content").getData() />
25 <#include "${fullTemplatesPath}/util/getImatgeUrl.ftl" />
26 <#assign imagen = getImatgeUrl(imagenData) />
27 </#if>
28 <#if ("Nombre" == dynamicElement.attributeValue("name") ) >
29 <#assign nom = dynamicElement.element("dynamic-content").getText() />
30 </#if>
31 <#if ("Resumen" == dynamicElement.attributeValue("name") ) >
32 <#assign resum = dynamicElement.element("dynamic-content").getText() />
33 <#if (resum?has_content) >
34 <#assign resum = stringUtil.shorten(resum, 250) />
35 <#if (resum?length == 250) >
36 <#assign resum = resum + "..." />
37 </#if>
38 </#if>
39 </#if>
40 <#if ("WebProyecto" == dynamicElement.attributeValue("name") ) >
41 <#assign link = dynamicElement.element("dynamic-content").getText() />
42 </#if>
43
44 </#list>
45
46 <#if (link??) && (link == "") >
47 <#--
48 Mirem si el link de visualització conté la partícula "asset_publisher",
49 en aquest cas, mantenim la url generada, sinó, afegim "/maximized"
50 -->
51
52 <#include "${fullTemplatesPath}/util/viewAdtURL.ftl" />
53 <@viewAdtURL entry=entry />
54 </#if>
55
56 <div class="row">
57 <div class="col-md-3">
58 <#if (imagenData?has_content) >
59 <a class="viewLink" href='<#if link?? && (link != "")>${link}<#else>${viewURL}</#if> '>
60 <div style='background-image:url("${imagen}")' class="fitxa_projecte_llistat_logo"></div>
61 </a>
62 <#else>
63 <a class="viewLink" href='<#if link?? && (link != "")>${link}<#else>${viewURL}</#if> '>
64 <div class="fitxa_projecte_blanc">
65 <i class="fa-stack fa-3x">
66 <i class="fa-regular fa-square fa-stack-2x"></i>
67 <i class="fa-solid fa-shapes fa-stack-1x"></i>
68 </i>
69 </div>
70 </a>
71 </#if>
72 </div>
73 <div class="col-md-9">
74 <div class="lfr-meta-actions asset-actions">
75 <#-- plantilla de la url d'edició-->
76 <#include "${fullTemplatesPath}/util/viewEditButton.ftl" />
77 <@viewEditButton entry=entry />
78 </div>
79 <a class="viewLink" href='<#if link?? && (link != "")>${link}<#else>${viewURL}</#if> '><p class="fitxa_projecte_llistat_dato"><span class="nom">${nom}</span><br>${resum}</p></a>
80 </div>
81 </div>
82
83 </div> <#--# fitxa_projecte_llistat_item-->
84 </#if>
85 </#list>
86</div>
87</#if> <#--Final entries?has_content-->
88
89
90<style type="text/css">
91
92.fitxa_projecte_blanc{
93 color: rgb(0,0,0,0.1);
94 text-align: center;
95 padding: 5px;
96 }
97 .upf__edit-asset-button {
98 position: absolute;
99 right: 0;
100 margin-top: 1rem;
101}
102
103 .fitxa_projecte_llistat_item .row {
104 display: flex !important;
105 flex-wrap: wrap !important;
106 align-items: stretch !important;
107 margin-left: 0 !important;
108 }
109
110 .fitxa_projecte_llistat_item a:hover{
111 text-decoration: none;
112 }
113
114 .fitxa_projecte_llistat_item {
115 width: 100%;
116 margin: 0 0 10px 0;
117 box-sizing: content-box;
118 background-color: #eee;
119 z-index: 0;
120 cursor: pointer;
121 border: 1px solid #eee;
122 box-sizing: border-box;
123 }
124 .fitxa_projecte_llistat_item:hover {
125 background-color: #35342F;
126 border: 1px solid #35342F;
127 transition:all 0.1s ease 0s;
128 }
129 .fitxa_projecte_llistat_item:hover p, .fitxa_projecte_llistat_item:hover span {
130 color: #fff !important;
131 }
132 .fitxa_projecte_llistat_item:hover .fitxa_projecte_llistat_logo {
133 transform: scale(1.0, 1.0);
134 }
135 span.nom {
136 font-weight: bold;
137 text-transform: uppercase;
138 }
139 .fitxa_projecte_llistat_item .row [class*="span"] {
140 padding: 10px;
141 }
142
143
144 .safari.mac .fitxa_projecte_llistat_item .row .col-md-9 {
145 margin-left: 10px !important;
146
147 }
148
149 .fitxa_projecte_llistat_item .col-md-3 {
150 background-color: #fff;
151 }
152 .fitxa_projecte_llistat_logo {
153 background-position: center center;
154 background-image: url(${imgUpfPath}/fitxa-projecte.png);
155 background-repeat: no-repeat;
156 background-size: contain;
157 min-width: 80px;
158 min-height: 80px;
159 display: block;
160 margin: auto;
161 position: relative;
162 line-height: initial;
163 transform: scale(0.9, 0.9);
164 width: 100%;
165 height: 100%;
166 }
167 @media (max-width: 767px) {
168 p.fitxa_projecte_llistat_dato {
169 text-align: center;
170 }
171
172 }
173</style>
An error occurred while processing the template.
The following has evaluated to null or missing: ==> viewURL [in template "10155#10193#7586726" at line 59, column 128] ---- 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: ${viewURL} [in template "10155#10193#7586726" at line 59, column 126] ----
1<#include "${fullTemplatesPath}/util/getPathForPlugins.ftl" />
2<#assign imgUpfPath = getPathForPlugins('upf','images','')?trim />
3
4<#if (entries?has_content) >
5<div class="fitxa_projecte_llistat">
6 <#--#set( $cont = 0 ) -->
7 <#list entries as entry >
8 <#assign renderer = entry.getAssetRenderer() />
9 <#assign className = renderer.getClassName() />
10 <#if (className == "com.liferay.journal.model.JournalArticle") >
11
12 <#assign journalArticle = renderer.getArticle() />
13 <#assign document = saxReaderUtil.read(journalArticle.getContentByLocale(localeUtil.toLanguageId(locale))) />
14 <#assign rootElement = document.getRootElement() />
15
16
17 <div class="fitxa_projecte_llistat_item">
18
19 <#assign resum = "" />
20 <#assign existLink = false />
21 <#list rootElement.elements() as dynamicElement >
22
23 <#if ("Imagen" == dynamicElement.attributeValue("name") ) >
24 <#assign imagenData = dynamicElement.element("dynamic-content").getData() />
25 <#include "${fullTemplatesPath}/util/getImatgeUrl.ftl" />
26 <#assign imagen = getImatgeUrl(imagenData) />
27 </#if>
28 <#if ("Nombre" == dynamicElement.attributeValue("name") ) >
29 <#assign nom = dynamicElement.element("dynamic-content").getText() />
30 </#if>
31 <#if ("Resumen" == dynamicElement.attributeValue("name") ) >
32 <#assign resum = dynamicElement.element("dynamic-content").getText() />
33 <#if (resum?has_content) >
34 <#assign resum = stringUtil.shorten(resum, 250) />
35 <#if (resum?length == 250) >
36 <#assign resum = resum + "..." />
37 </#if>
38 </#if>
39 </#if>
40 <#if ("WebProyecto" == dynamicElement.attributeValue("name") ) >
41 <#assign link = dynamicElement.element("dynamic-content").getText() />
42 </#if>
43
44 </#list>
45
46 <#if (link??) && (link == "") >
47 <#--
48 Mirem si el link de visualització conté la partícula "asset_publisher",
49 en aquest cas, mantenim la url generada, sinó, afegim "/maximized"
50 -->
51
52 <#include "${fullTemplatesPath}/util/viewAdtURL.ftl" />
53 <@viewAdtURL entry=entry />
54 </#if>
55
56 <div class="row">
57 <div class="col-md-3">
58 <#if (imagenData?has_content) >
59 <a class="viewLink" href='<#if link?? && (link != "")>${link}<#else>${viewURL}</#if> '>
60 <div style='background-image:url("${imagen}")' class="fitxa_projecte_llistat_logo"></div>
61 </a>
62 <#else>
63 <a class="viewLink" href='<#if link?? && (link != "")>${link}<#else>${viewURL}</#if> '>
64 <div class="fitxa_projecte_blanc">
65 <i class="fa-stack fa-3x">
66 <i class="fa-regular fa-square fa-stack-2x"></i>
67 <i class="fa-solid fa-shapes fa-stack-1x"></i>
68 </i>
69 </div>
70 </a>
71 </#if>
72 </div>
73 <div class="col-md-9">
74 <div class="lfr-meta-actions asset-actions">
75 <#-- plantilla de la url d'edició-->
76 <#include "${fullTemplatesPath}/util/viewEditButton.ftl" />
77 <@viewEditButton entry=entry />
78 </div>
79 <a class="viewLink" href='<#if link?? && (link != "")>${link}<#else>${viewURL}</#if> '><p class="fitxa_projecte_llistat_dato"><span class="nom">${nom}</span><br>${resum}</p></a>
80 </div>
81 </div>
82
83 </div> <#--# fitxa_projecte_llistat_item-->
84 </#if>
85 </#list>
86</div>
87</#if> <#--Final entries?has_content-->
88
89
90<style type="text/css">
91
92.fitxa_projecte_blanc{
93 color: rgb(0,0,0,0.1);
94 text-align: center;
95 padding: 5px;
96 }
97 .upf__edit-asset-button {
98 position: absolute;
99 right: 0;
100 margin-top: 1rem;
101}
102
103 .fitxa_projecte_llistat_item .row {
104 display: flex !important;
105 flex-wrap: wrap !important;
106 align-items: stretch !important;
107 margin-left: 0 !important;
108 }
109
110 .fitxa_projecte_llistat_item a:hover{
111 text-decoration: none;
112 }
113
114 .fitxa_projecte_llistat_item {
115 width: 100%;
116 margin: 0 0 10px 0;
117 box-sizing: content-box;
118 background-color: #eee;
119 z-index: 0;
120 cursor: pointer;
121 border: 1px solid #eee;
122 box-sizing: border-box;
123 }
124 .fitxa_projecte_llistat_item:hover {
125 background-color: #35342F;
126 border: 1px solid #35342F;
127 transition:all 0.1s ease 0s;
128 }
129 .fitxa_projecte_llistat_item:hover p, .fitxa_projecte_llistat_item:hover span {
130 color: #fff !important;
131 }
132 .fitxa_projecte_llistat_item:hover .fitxa_projecte_llistat_logo {
133 transform: scale(1.0, 1.0);
134 }
135 span.nom {
136 font-weight: bold;
137 text-transform: uppercase;
138 }
139 .fitxa_projecte_llistat_item .row [class*="span"] {
140 padding: 10px;
141 }
142
143
144 .safari.mac .fitxa_projecte_llistat_item .row .col-md-9 {
145 margin-left: 10px !important;
146
147 }
148
149 .fitxa_projecte_llistat_item .col-md-3 {
150 background-color: #fff;
151 }
152 .fitxa_projecte_llistat_logo {
153 background-position: center center;
154 background-image: url(${imgUpfPath}/fitxa-projecte.png);
155 background-repeat: no-repeat;
156 background-size: contain;
157 min-width: 80px;
158 min-height: 80px;
159 display: block;
160 margin: auto;
161 position: relative;
162 line-height: initial;
163 transform: scale(0.9, 0.9);
164 width: 100%;
165 height: 100%;
166 }
167 @media (max-width: 767px) {
168 p.fitxa_projecte_llistat_dato {
169 text-align: center;
170 }
171
172 }
173</style>