S'ha produït un error mentre es processava la plantilla.
Failed to get value for key "com.liferay.portal.service.ServiceContextThreadLocal"; see cause exception.

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign serviceContext = staticUtil["...  [in template "10155#10193#252093738" at line 3, column 1]
----
1<#-- PLANTILLA A:HOVER --> 
2<#-- Carreguem la macro getPathForPlugins per obtenir les rutes a les carpetes css, images i js dels plugins que necessitem--> 
3<#assign serviceContext = staticUtil["com.liferay.portal.service.ServiceContextThreadLocal"].getServiceContext() /> 
4<#assign layout = serviceContext.getThemeDisplay() /> 
5 
6 
7<#assign fullTemplatesPath = layout.getPathThemeRoot() + "_SERVLET_CONTEXT_/templates" /> 
8<#include "${fullTemplatesPath}/util/getPathForPlugins.ftl" /> 
9 
10<#assign jsJQueryPath = getPathForPlugins('jquery','js','')?trim /> 
11 
12<#-- Incloem plantilla velocity que té les dues macros necessàries per les traduccions de literals des d'aquesta ADT --> 
13<#include fullTemplatesPath + "/util/preparaTraduccions.ftl" > 
14 
15 
16<#-- Preparem les tres variables necessàries per traduir els literals i preparem les traduccions --> 
17<#assign idiomes = ['ca','es','en'] /> 
18<#assign literals = ['jornades','centre','fullet','solinfo','infoupf','vine'] /> 
19<#assign traduccions = [ 
20    'Jornades de Portes Obertes dels Graus','Jornadas de Puertas Abiertas  de los Grados','Bachelor&#39;s Degrees Open Day', 
21    'Web del centre','Web del centro','Faculty or school website', 
22    'Descarrega el fullet','Descarga el folleto','Download the Bachelor&#39;s Degree Brochure', 
23    'Sol·licita informació','Solicita información','Ask for information', 
24    'Informació per a estudiants de la UPF','Información para estudiantes de la UPF','Information for UPF students', 
25    'Vine a veure&#39;ns','Ven a vernos','Visit us' 
26    ] /> 
27 
28<@preparaTraduccions idiomes, literals, traduccions /> 
29<#-- Fi preparar traduccions i macro --> 
30 
31 
32<#if (entries?has_content) > 
33	<#list entries as curEntry > 
34        <#assign renderer  = curEntry.getAssetRenderer() /> 
35        <#assign className = renderer.getClassName() /> 
36        <#if (className == "com.liferay.portlet.journal.model.JournalArticle") > 
37            <#assign journalArticle = renderer.getArticle() /> 
38            <#assign document = saxReaderUtil.read(journalArticle.getContentByLocale(languageUtil.getLanguageId(renderRequest) )) /> 
39            <#assign rootElement = document.getRootElement() /> 
40                    
41            <#-- declarem tres arrays per guardar els valors dels camps lliures dels estudis --> 
42            <#assign free_fields_estudis_label = [] /> 
43            <#assign free_fields_estudis_text = [] /> 
44            <#assign free_fields_estudis_link = [] /> 
45            <#-- índex pels camps lliures de l'apartat estudis --> 
46            <#assign f = 0 />     
47             
48               
49                    
50            <#-- Recuperem els valors dels camps --> 
51			 
52			<#list rootElement.elements() as dynamicElement > 
53                <#if ("titol_estudi" == dynamicElement.attributeValue("name")) > 
54 
55                    <#assign titol_estudi = dynamicElement.element("dynamic-content").getText() /> 
56                </#if> 
57                <#if ("imatge_fons" == dynamicElement.attributeValue("name") ) > 
58                    <#assign imatge_fons = dynamicElement.element("dynamic-content").getText() /> 
59                </#if>                 
60                <#if ("durada" == dynamicElement.attributeValue("name") ) > 
61                    <#assign durada = dynamicElement.element("dynamic-content").getText() /> 
62                </#if>                                 
63                <#if ("preu" == dynamicElement.attributeValue("name") ) > 
64                    <#assign preu = dynamicElement.element("dynamic-content").getText() /> 
65                </#if> 
66                <#if ("n_places" == dynamicElement.attributeValue("name") ) > 
67                    <#assign n_places = dynamicElement.element("dynamic-content").getText() /> 
68                </#if>                 
69                <#if ("preinscripcio" == dynamicElement.attributeValue("name") ) > 
70                    <#assign preinscripcio = dynamicElement.element("dynamic-content").getText() /> 
71                </#if>                                 
72                <#if ("branca_con" == dynamicElement.attributeValue("name") ) > 
73                    <#assign branca_con = dynamicElement.element("dynamic-content").getText() /> 
74                </#if> 
75                <#if ("horaris" == dynamicElement.attributeValue("name") ) > 
76                    <#assign horaris = dynamicElement.element("dynamic-content").getText() /> 
77                </#if>                 
78                <#if ("calendari" == dynamicElement.attributeValue("name") ) > 
79                    <#assign calendari = dynamicElement.element("dynamic-content").getText() /> 
80                </#if>                                 
81                <#if ("credits" == dynamicElement.attributeValue("name") ) > 
82                    <#assign credits = dynamicElement.element("dynamic-content").getText() /> 
83                </#if> 
84                <#if ("idiomes" == dynamicElement.attributeValue("name") ) > 
85                    <#assign idiomes = dynamicElement.element("dynamic-content").getText() /> 
86                </#if>                 
87                <#if ("lloc" == dynamicElement.attributeValue("name") ) > 
88                    <#assign lloc = dynamicElement.element("dynamic-content").getText() /> 
89                </#if>                                 
90                <#if ("organitzacio" == dynamicElement.attributeValue("name") ) > 
91                    <#assign organitzacio = dynamicElement.element("dynamic-content").getText() /> 
92                </#if> 
93                <#if ("link_web_facultat" == dynamicElement.attributeValue("name") ) > 
94                    <#assign link_web_facultat = dynamicElement.element("dynamic-content").getText() /> 
95                </#if>                 
96                <#if ("sol_info" == dynamicElement.attributeValue("name") ) > 
97                    <#assign sol_info = dynamicElement.element("dynamic-content").getText() /> 
98                </#if>                 
99                <#if ("descarregar_pdf" == dynamicElement.attributeValue("name") ) > 
100                    <#assign descarregar_pdf = dynamicElement.element("dynamic-content").getText() /> 
101                </#if> 
102                <#if ("info_estudiant" == dynamicElement.attributeValue("name") ) > 
103                    <#assign info_estudiant = dynamicElement.element("dynamic-content").getText() /> 
104                </#if> 
105                <#if ("segells" == dynamicElement.attributeValue("name") ) > 
106                    <#assign segells = dynamicElement.element("dynamic-content").getText() /> 
107                </#if>             
108                                 
109                 
110                <#if ("presentacio" == dynamicElement.attributeValue("name") ) > 
111                    <#assign presentacio = dynamicElement.element("dynamic-content").getText() /> 
112					<#list dynamicElement.elements("dynamic-element") as dynamicElementFill > 
113                        <#if ("link_presentacio" == dynamicElementFill.attributeValue("name") ) > 
114                            <#assign link_presentacio = dynamicElementFill.element("dynamic-content").getText() /> 
115                        </#if> 
116                    </#list> 
117                </#if> 
118                 
119                <#if ("dades_i_indicadors" == dynamicElement.attributeValue("name") ) > 
120                    <#assign dades_i_indicadors = dynamicElement.element("dynamic-content").getText() /> 
121                    <#list dynamicElement.elements("dynamic-element") as dynamicElementFill > 
122                        <#if ("link_dades_i_indicadors" == dynamicElementFill.attributeValue("name") ) > 
123                            <#assign link_dades_i_indicadors = dynamicElementFill.element("dynamic-content").getText() /> 
124                        </#if> 
125					</#list> 
126                </#if> 
127                 
128                <#if ("objectius_competencies" == dynamicElement.attributeValue("name") ) > 
129                    <#assign objectius_competencies = dynamicElement.element("dynamic-content").getText() /> 
130					<#list dynamicElement.elements("dynamic-element") as dynamicElementFill > 
131                        <#if ("link_objectius_competencies" == dynamicElementFill.attributeValue("name") ) > 
132                            <#assign link_objectius_competencies = dynamicElementFill.element("dynamic-content").getText() /> 
133                        </#if> 
134					</#list> 
135                </#if> 
136                 
137                <#if ("perfil_estudiant" == dynamicElement.attributeValue("name") ) > 
138                    <#assign perfil_estudiant = dynamicElement.element("dynamic-content").getText() /> 
139					<#list dynamicElement.elements("dynamic-element") as dynamicElementFill > 
140                        <#if ("link_perfil_estudiant" == dynamicElementFill.attributeValue("name") ) > 
141                            <#assign link_perfil_estudiant = dynamicElementFill.element("dynamic-content").getText() /> 
142                        </#if> 
143					</#list> 
144                </#if> 
145             
146                <#if ("pla_estudis" == dynamicElement.attributeValue("name") ) > 
147                    <#assign pla_estudis = dynamicElement.element("dynamic-content").getText() /> 
148					<#list dynamicElement.elements("dynamic-element") as dynamicElementFill > 
149                        <#if ("link_pla_estudis" == dynamicElementFill.attributeValue("name") ) > 
150                            <#assign link_pla_estudis = dynamicElementFill.element("dynamic-content").getText() /> 
151                        </#if> 
152					</#list> 
153                </#if>                 
154                 
155                <#if ("practiques" == dynamicElement.attributeValue("name") ) > 
156                    <#assign practiques = dynamicElement.element("dynamic-content").getText() /> 
157					<#list dynamicElement.elements("dynamic-element") as dynamicElementFill > 
158                        <#if ("link_practiques" == dynamicElementFill.attributeValue("name") ) > 
159                            <#assign link_practiques = dynamicElementFill.element("dynamic-content").getText() /> 
160                        </#if> 
161					</#list> 
162                </#if>                 
163                 
164                <#if ("estades_estranger" == dynamicElement.attributeValue("name") ) > 
165                    <#assign estades_estranger = dynamicElement.element("dynamic-content").getText() /> 
166					<#list dynamicElement.elements("dynamic-element") as dynamicElementFill > 
167                        <#if ("link_estades_estranger" == dynamicElementFill.attributeValue("name") ) > 
168                            <#assign link_estades_estranger = dynamicElementFill.element("dynamic-content").getText() /> 
169                        </#if> 
170					</#list> 
171                </#if> 
172                 
173                <#if ("sortides_professionals" == dynamicElement.attributeValue("name") ) > 
174                    <#assign sortides_professionals = dynamicElement.element("dynamic-content").getText() /> 
175					<#list dynamicElement.elements("dynamic-element") as dynamicElementFill > 
176                        <#if ("link_sortides_professionals" == dynamicElementFill.attributeValue("name") ) > 
177                            <#assign link_sortides_professionals = dynamicElementFill.element("dynamic-content").getText() /> 
178                        </#if> 
179					</#list> 
180                </#if> 
181             
182                <#if ("llengues" == dynamicElement.attributeValue("name") ) > 
183                    <#assign llengues = dynamicElement.element("dynamic-content").getText() /> 
184					<#list dynamicElement.elements("dynamic-element") as dynamicElementFill > 
185                        <#if ("link_llengues" == dynamicElementFill.attributeValue("name") ) > 
186                            <#assign link_llengues = dynamicElementFill.element("dynamic-content").getText() /> 
187                        </#if> 
188					</#list> 
189                </#if> 
190                 
191                <#if ("testimonis" == dynamicElement.attributeValue("name") ) > 
192                    <#assign testimonis = dynamicElement.element("dynamic-content").getText() /> 
193					<#list dynamicElement.elements("dynamic-element") as dynamicElementFill > 
194                        <#if ("link_testimonis" == dynamicElementFill.attributeValue("name") ) > 
195                            <#assign link_testimonis = dynamicElementFill.element("dynamic-content").getText() /> 
196                        </#if> 
197					</#list> 
198                </#if> 
199     
200                <#if ("free_field_estudis" == dynamicElement.attributeValue("name") ) > 
201 
202                    <#assign free_fields_estudis_label = free_fields_estudis_label + [dynamicElement.element("dynamic-content").getText()] /> 
203					<#list dynamicElement.elements("dynamic-element") as dynamicElementFill > 
204                        <#if ("free_field_estudis_text" == dynamicElementFill.attributeValue("name") ) > 
205                            <#assign free_fields_estudis_text = free_fields_estudis_text + [dynamicElementFill.element("dynamic-content").getText()] /> 
206                        </#if> 
207                        <#if ("free_field_estudis_link" == dynamicElementFill.attributeValue("name") ) > 
208                            <#assign free_fields_estudis_link = free_fields_estudis_link + [dynamicElementFill.element("dynamic-content").getText()] /> 
209                        </#if> 
210					</#list> 
211                    <#assign f = f + 1 /> 
212                </#if> 
213                 
214                <!-- ···································································· --> 
215                
216     
217                 
218            </#list> 
219             
220            <#-- Preparem els arrays que contenen tota la informació dels camps --> 
221            <#-- Declarem un array amb els noms dels camps definits i un amb els valors --> 
222            <#assign camps_estudis = ["presentacio", "dades_i_indicadors", "objectius_competencies", "perfil_estudiant", "pla_estudis", "practiques", "estades_estranger", "sortides_professionals", "llengues", "testimonis" ] />                   
223            <#assign camps_estudis_valors = [presentacio, dades_i_indicadors, objectius_competencies, perfil_estudiant, pla_estudis, practiques, estades_estranger, sortides_professionals, llengues, testimonis ] />                         
224            <#assign camps_estudis_links = [link_presentacio, link_dades_i_indicadors, link_objectius_competencies, link_perfil_estudiant, link_pla_estudis, link_practiques, link_estades_estranger, link_sortides_professionals, link_llengues, link_testimonis ] /> 
225                                     
226           
227            <#-- PRINTEM EL HTML DE LA FITXA --> 
228            <#--<link href="${cssBootstrapPath}/bootstrap.min.css" rel="stylesheet"> 
229            <link href="${cssBootstrapPath}/bootstrap-responsive.min.css" rel="stylesheet"> -->                   
230             
231            <style> 
232 
233                /* Amaguem o mostrem elemetns en funció de si estem en la versió reduïda */ 
234                .fitxa_tit_link_web_facultat{ 
235                    display:none !important; 
236
237                .fitxa_reduida .fitxa_tit_link_web_facultat{ 
238                    display:block !important; 
239
240                .titulacio .img { 
241                    background-image: url("${imatge_fons}") !important; 
242                    background-position: center center; 
243                    background-repeat: no-repeat; 
244                    background-size: cover; 
245                    margin-bottom: 20px; 
246                    min-height: 220px; 
247
248                .titulacio .titol { 
249                    color: #fff; 
250                    font-weight: bold; 
251
252                .titulacio table { 
253                    position: relative; 
254                    width:100%; 
255
256                .titulacio td { 
257                    border-left: 1px solid #c8102e; 
258                    border-right: 1px solid #c8102e; 
259                    box-sizing: content-box; 
260                    height: auto; 
261                    padding-left: 10px; 
262                    padding-right: 10px; 
263                    vertical-align: top; 
264
265                .titulacio .titol > a { 
266                    bottom: 0; 
267                    position: absolute; 
268                    right: 10px; 
269                    text-decoration: none; 
270                    z-index: 1; 
271
272                .contingut a { 
273                    color: #c8012e; 
274                    text-decoration: none !important; 
275 
276
277                .titulacio .nav.nav-tabs.nav-stacked p { 
278                    margin: 15px 12px; 
279
280                .titulacio { 
281                    a, p,span { 
282                        color: #353430; 
283
284                }        
285                .contingut h2 { 
286                    color: #c8102e; 
287                    font-size: 20px !important; 
288                    line-height: normal; 
289                    padding-top: 15px; 
290
291                .nav.nav-tabs.nav-stacked { 
292                    margin-bottom: 0; 
293
294                .nav-tabs::after, .nav-pills::after { 
295                    clear: none; 
296
297                .nav-tabs.nav-stacked > li > a { 
298                    border: 1px solid #ddd; 
299                    border-radius: 0; 
300
301                .titulacio .accordion-toggle { 
302                    background-color: #eee; 
303                    color: #353430; 
304                    text-decoration: none !important; 
305
306 
307                .titulacio .nav-tabs .accordion-toggle h3, .titulacio .accordion-toggle.collapsed h3:hover, .titulacio .accordion-toggle.collapsed:hover { 
308                    color: #c8102e; 
309
310                .titulacio .accordion-toggle.collapsed h3 { 
311                    color: #353430; 
312                    display: block; 
313
314                .contingut h3 { 
315                    color: #c8102e; 
316                    font-size: 18px !important; 
317                    font-weight: normal; 
318                    line-height: normal; 
319                    padding-top: 10px; 
320                }        
321                .nav h3 { 
322                    color: #353430; 
323                    display: inline; 
324                    margin: 0px; 
325                    padding: 0px; 
326                    width: auto; 
327
328                .icon-plus-sign.large, .icon-minus-sign.large, .icon-caret-down.large, .icon-angle-up, .icon-angle-down { 
329                    display: inline; 
330                    float: right; 
331                    font-size: 20px; 
332                    line-height: initial; 
333
334                .accordion-toggle .icon-external-link.icon-large { 
335                    display: inline; 
336                    float: right; 
337                    font-size: 15px; 
338                    line-height: initial; 
339                }                
340                .titulacio .btn.info.estudiant { 
341                    background-color: #ffffff; 
342                    border-color: #c8102e; 
343
344                .titulacio .btn.info { 
345                    background-color: #ddd; 
346                    background-image: none; 
347                    border: 1px solid #353430; 
348                    border-radius: 0; 
349                    box-shadow: none; 
350                    box-sizing: border-box; 
351                    font-family: arial; 
352                    font-size: 16px; 
353                    font-weight: bold; 
354                    margin-bottom: 10px; 
355                    padding-bottom: 8px; 
356                    padding-top: 8px; 
357                    text-align: left; 
358                    text-shadow: none; 
359                    text-transform: uppercase; 
360                    width: 100%; 
361
362                .titulacio .panell-info { 
363                    background-color: #ddd; 
364                    background-image: none; 
365                    border: 1px solid #353430; 
366                    border-radius: 0; 
367                    box-shadow: none; 
368                    box-sizing: border-box; 
369                    font-family: arial; 
370                    margin-bottom: 10px; 
371                    text-align: left; 
372                    width: 100%; 
373                    text-shadow: none; 
374                    padding: 8px 12px 4px 12px; 
375
376 
377                .titulacio .panell-info a.tel { 
378                    color: #353430; 
379                }             
380                .titulacio .btn.info.estudiant:hover { 
381                    background-color: #c8102e; 
382                    color: #fff; 
383
384                .titulacio .btn.info:hover { 
385                    background-color: #353430; 
386                    color: #ddd; 
387
388                 
389                .titulacio .btn.info .horari { 
390                    color: inherit; 
391                    font-size: 80%; 
392                    font-weight: inherit; 
393                    line-height: normal; 
394                    text-transform: none; 
395
396                .titulacio a:hover{ 
397                    text-decoration:underline !important; 
398
399                .titol .icon-angle-down, .titol .icon-angle-up{ 
400                    color:#c8102e; 
401                    text-decoration:none !important;                 
402
403                .titulacio .btn.info a{ 
404                    color:#353430; 
405                    font-weight:bold; 
406
407                .titulacio .btn.info a:hover{ 
408                    text-decoration:none; 
409                    color:#ddd; 
410                    font-weight:bold; 
411
412                @media (max-width: 978px) { 
413                    .titulacio.span3 { 
414                        margin-top: 20px; 
415
416
417                .link-edit{ 
418                    float:right; 
419
420                 
421                /*millorar la visió de les fitxetes*/ 
422                .fitxeta.table.table-bordered.table-responsive td { 
423                    border: 0 none; 
424                    padding-bottom: 0; 
425                    padding-top: 0; 
426
427                 
428                
429                /*perquè s'ajustin les taules de fitxa a desktop */ 
430                 
431                 
432                .titulacio.span9 .div-table-responsive { 
433                    display: block; 
434                    margin-bottom: 15px; 
435                    max-width: 647px; 
436                    overflow-x: auto; 
437                    overflow-y: hidden; 
438                    width: 100%; 
439
440 
441                /* Millores ajustament */ 
442                 
443                .nou-disseny .titulacio .panel-collapse.in.collapse { 
444                    padding-top: 15px; 
445                    padding-bottom: 8px; 
446                    padding-left: 12px; 
447                    padding-right: 12px; 
448
449                .nou-disseny .titulacio .panel-collapse.in.collapse p:first-child { 
450                    margin-top: 0; 
451
452                .nou-disseny .titulacio .panel-collapse.in.collapse p { 
453                    margin: 15px 0; 
454
455 
456                .nou-disseny .titulacio .nav.nav-tabs.nav-stacked>li:last-child { 
457                    border-bottom: 0px; 
458
459 
460                /*canvis per millorar la visualització de la fitxeta*/ 
461                 
462                .fitxeta.table.table-bordered.table-responsive td:fist-child { 
463                    border: 0 none; 
464                    padding-bottom: 5px; 
465                    padding-top: 10px; 
466
467                .fitxeta.table.table-bordered.table-responsive td { 
468                    border: 0 none; 
469                    padding-bottom: 5px; 
470                    padding-top: 5px; 
471
472                .fitxeta.table.table-bordered.table-responsive td:last-child { 
473                    border: 0 none; 
474                    padding-bottom: 10px; 
475                    padding-top: 5px; 
476
477                /*NOUS*/ 
478                .fitxa.paddingplus.in.collapse { 
479                    padding-top: 5px; 
480                    padding-bottom: 5px; 
481
482            </style> 
483             
484<#-- plantilla URL de l'edición --> 
485<#include fullTemplatesPath + "/assets/editURL.ftl" > 
486             
487            <div class="row-fluid"> 
488                <div class="contingut"> 
489                    <div class="titulacio span9"> 
490                        <div class="img"></div> 
491 
492                        <table class="fitxeta"> 
493                            <colgroup> 
494                                <col style="background-color: rgb(200, 16, 46);border: 1px solid #c8102e"> 
495                                <col style="background-color:none;border: 1px solid #c8102e;"> 
496                            </colgroup> 
497                            <tbody> 
498                                <tr> 
499                                    <td><span class="titol"><@liferay.language key="durada_label" /></span></td> 
500                                    <td>${durada}</td> 
501                                </tr> 
502                                <tr> 
503                                    <td><span class="titol"><@liferay.language key="preu_label" /></span></td> 
504                                    <td>${preu}</td> 
505                                </tr> 
506                                <tr> 
507                                    <td><span class="titol"><@liferay.language key="n_places_label" /></span></td> 
508                                    <td>${n_places}</td> 
509                                </tr> 
510                                <tr> 
511                                    <td><span class="titol"><@liferay.language key="admissions_label" /></span></td> 
512                                    <td>${preinscripcio}<span class="titol"><a href=".fitxa" data-toggle="collapse"><i title="Fitxa tècnica completa" class="icon-angle-down icon-large"></i></a></span></td> 
513                                </tr> 
514                                <tr> 
515                                    <td><div class="collapse fitxa titol"><@liferay.language key="branca_con_label" /></div></td> 
516                                    <td><div class="collapse fitxa">${branca_con}</div></td> 
517                                </tr> 
518                                <tr> 
519                                    <td><div class="collapse fitxa titol"><@liferay.language key="horaris_label" /></div></td> 
520                                    <td><div class="collapse fitxa">${horaris}</div></td> 
521                                </tr> 
522                                <tr> 
523                                    <td><div class="collapse fitxa titol"><@liferay.language key="calendari_label" /></div></td> 
524                                    <td><div class="collapse fitxa">${calendari}</div></td> 
525                                </tr> 
526                               <tr> 
527                                    <td><div class="collapse fitxa titol"><@liferay.language key="credits_label" /></div></td> 
528                                    <td><div class="collapse fitxa">${credits}</div></td> 
529                                </tr> 
530                                <tr> 
531                                    <td><div class="collapse fitxa titol"><@liferay.language key="idiomes_label" /></div></td> 
532                                    <td><div class="collapse fitxa">${idiomes}</div></td> 
533                                </tr> 
534                                <tr> 
535                                    <td><div class="collapse fitxa titol"><@liferay.language key="lloc_label" /></div></td> 
536                                    <td><div class="collapse fitxa">${lloc}</div></td> 
537                                </tr> 
538                                <tr> 
539                                    <td><div class="collapse fitxa titol"><@liferay.language key="organitzacio_label" /></div></td> 
540                                    <td><div class="collapse fitxa">${organitzacio}</div></td> 
541                                </tr> 
542                            </tbody> 
543                        </table> 
544     
545                         
546                        <#-- Aquestes variables que declarem a sota són modificades per les crides a la macro --> 
547                        <#-- i el valor modificat és el que s'agafa per la següent crida. --> 
548                        <#assign c = 0 /> <#-- comptador de collapses --> 
549						<#assign stamp = randomizer.nextInt()*(-1) /> 
550                        <#assign classCollapse = "" /> 
551                        <#assign classIconAngle = "icon-angle-up" /> 
552                        <#assign classIn = "in" /> 
553 
554                        <@maquetaCampsFitxaTit "fitxa_tit_estudis" camps_estudis camps_estudis_valors camps_estudis_links free_fields_estudis_label free_fields_estudis_text free_fields_estudis_link /> 
555                         
556                    
557                         
558                    </div> 
559                    <div class="titulacio span3"> 
560 
561                        <#if (validator.isNotNull(info_estudiant)) > 
562                            <a href="${info_estudiant}" class="boto_fitxa_info_estudiant"> 
563                                <div class="btn info estudiant"><@tradueix 'infoupf' /></div> 
564                            </a> 
565                        </#if> 
566 
567                        <div class="panell-info"> 
568                            <p><i class="icon-info-sign" style="font-size:28px;color:#777"></i></p> 
569                            <#if (descarregar_pdf != "") > 
570                                <p> 
571                                    <i class="icon-file"></i> <a href="${descarregar_pdf}"><@tradueix 'fullet' /></a> 
572                                </p> 
573                            </#if> 
574                            <p>                            
575                                <strong style="text-transform: uppercase;font-size: 16px;"><@liferay.language key="informa_te_n_titol" /></strong><br/>                             
576                                <#if (sol_info == "") > 
577                                    <a href="https://cau.upf.edu/pie/"> 
578                                <#else> 
579                                    <a href="${sol_info}"> 
580                                </#if>     
581                                    <@tradueix 'solinfo' /></a><br/> 
582                                <a class="tel" href="tel:<@liferay.language key="informa_te_n_href_tel" />"> 
583                                    <i class="icon-phone"></i> <@liferay.language key="informa_te_n_tel" /> 
584                                </a><br/> 
585                                <a href="/web/biblioteca-informatica/punt-informacio-estudiant"><@tradueix 'vine' /></a> 
586                            </p> 
587                        </div> 
588 
589<!-- Comentar quan hi ha les jonades de portes obertes --> 
590                        <#if (locale != "en_US") > 
591                            <a href="/web/graus/sessions-informatives" /> 
592                                <div class="btn info"><@tradueix 'jornades' /></div> 
593                            </a> 
594                        </#if> 
595<!-- FI jornades de portes obertes-->  
596                        <a href="<@liferay.language key="beques_i_ajuts_link" />"> 
597                            <div class="btn info"><@liferay.language key="beques_i_ajuts" /></div> 
598                        </a> 
599 
600                        <#if (link_web_facultat !="") > 
601                            <a class="fitxa_tit_link_web_facultat" href="${link_web_facultat}"> 
602                                <div class="btn info"><@tradueix 'centre' /></div> 
603                            </a> 
604                       </#if> 
605 
606                        <a href="<@liferay.language key="matricula_link" />"> 
607                            <div class="btn info"><@liferay.language key="matricula_label" /></div> 
608                        </a> 
609 
610                        <#if (validator.isNotNull(segells)) > 
611                            <div class="segells">${segells}</div> 
612                        </#if> 
613 
614                        <div class="lfr-meta-actions asset-actions"> 
615                            <#-- plantilla de la vista del botón --> 
616							<#include fullTemplatesPath + "/assets/viewEditButton.ftl" > 
617                        </div> 
618                    </div> 
619                     
620                </div> 
621            </div> 
622             
623        </#if> 
624     
625    </#list> 
626</#if> 
627 
628<script src="${jsJQueryPath}/jquery-1.11.3.min.js"></script> 
629 
630<script> 
631    var colapsades = $(".fitxeta").find("div.collapse.fitxa"); 
632     
633    if(colapsades) {(colapsades).parent("td").css({"padding-top": "0", "padding-bottom": "0"});} 
634 
635    $(".icon-large.icon-angle-down").on ("click", function() { 
636        $(colapsades).addClass("paddingplus"); 
637    }) 
638     
639    $(".icon-large.icon-angle-up").on ("click", function() { 
640        $(colapsades).removeClass("paddingplus"); 
641    }) 
642/* -----------DESCOMENTAR EN EL SEGÜENT DEPLOY DEL THEME */ 
643    $(".titulacio .nav .accordion-toggle").click(function(){ 
644        $(this).find("i").toggleClass("icon-angle-up").toggleClass("icon-angle-down"); 
645    });  
646     
647    $(".titulacio .titol a").click(function(){ 
648        $(this).find("i").toggleClass("icon-angle-up").toggleClass("icon-angle-down") 
649    }); 
650/*-------------------------------*/ 
651    $(".info-tel").on('mouseover',function(){ 
652            $(this).find('a').css('cssText', 'color: #ddd !important'); 
653    }); 
654    $(".info-tel").on('mouseout',function(){ 
655            $(this).find('a').css('cssText', 'color: #333333 !important'); 
656    }); 
657</script> 
658 
659<#macro maquetaCampsFitxaTit class_css camps valors links free_fields_label free_fields_text free_fields_link > 
660 
661    <#assign i = 0 /> 
662    <ul class="nav nav-tabs nav-stacked ${class_css}"> 
663		<#list camps as camp > 
664            <#if (valors[i] != "") > 
665                <li><a data-toggle="collapse" data-parent="#accordion${stamp}" href="#collapse${stamp}${c}" class="accordion-toggle ${classCollapse}"><h3><@liferay.language key=camps[i]+"_label" /><i class="${classIconAngle} icon-large"></i></h3></a> 
666                    <div id="collapse${stamp}${c}" class="panel-collapse ${classIn} collapse"> 
667                        <ul class="nav nav-tabs nav-stacked"> 
668                        <li> 
669                            ${valors[i]} 
670                        </li> 
671                        </ul> 
672                    </div> 
673                </li> 
674                <#assign c = c +1 /> 
675                <#assign classCollapse = "collapsed" /> 
676                <#assign classIconAngle = "icon-angle-down" /> 
677                <#assign classIn = "" /> 
678            <#else> 
679                <#if (links[i] != "") > 
680                    <li><a href="${links[i]}" class="accordion-toggle collapsed"><h3><@liferay.language key=camps[i]+"_label" /><i class="icon-external-link icon-large"></i></h3></a></li>     
681                </#if> 
682            </#if> 
683 
684            <#assign i = i +1 /> 
685        </#list> 
686         
687    <!-- ···························································· --> 
688        <#assign i = 0 /> 
689         
690		<#list free_fields_label as label > 
691		 
692            <#-- fem servir una variable auxiliar per quan $free_fields_text.get($i) sigui null --> 
693            <#assign aux = "" + free_fields_text[i] /> 
694             
695            <#if (aux != "") > 
696                <li><a data-toggle="collapse" data-parent="#accordion${stamp}" href="#collapse${stamp}${c}" class="accordion-toggle ${classCollapse}"><h3>${label}<i class="${classIconAngle} icon-large"></i></h3></a> 
697                    <div id="collapse${stamp}${c}" class="panel-collapse ${classIn} collapse"> 
698                        <ul class="nav nav-tabs nav-stacked"> 
699                        <li> 
700                            ${free_fields_text[i]} 
701                        </li> 
702                        </ul> 
703                    </div> 
704                </li> 
705                <#assign c = c +1 /> 
706                <#assign classCollapse = "collapsed" /> 
707                <#assign classIconAngle = "icon-angle-down" /> 
708                <#assign classIn = "" /> 
709            <#else> 
710                <#if (free_fields_link[i] != "") > 
711                    <li><a href="${free_fields_link[i]}" class="accordion-toggle collapsed"><h3>${label}<i class="icon-external-link icon-large"></i></h3></a></li>     
712                </#if> 
713            </#if> 
714 
715            <#assign i = i +1 /> 
716        </#list>                             
717    </ul>    
718</#macro>