Entête de page
Willkommen in den Museen
QuickLink (Découvrir, En ce moment, Visiter)
Asset-Herausgeber
Ausstellungen zu entdecken
Asset-Herausgeber
Asset-Herausgeber
Fehler bei der Verarbeitung der Vorlage.
The following has evaluated to null or missing:
==> alt [in template "20116#20160#450079371" at line 32, column 59]
----
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: ${alt?html} [in template "20116#20160#450079371" at line 32, column 57]
----
1<#setting locale = locale />
2<#setting datetime_format="iso">
3<#if !themeDisplay.scopeGroup.publicLayoutSet.virtualHostname?has_content || themeDisplay.scopeGroup.isStagingGroup()>
4 <#assign homeURL = "/web${layout.group.friendlyURL}/" />
5<#else>
6 <#assign homeURL = "/" />
7</#if>
8<#assign portletHelper = serviceLocator.findService("eu.strasbourg.utils.api.PortletHelperService") />
9
10<section id="oeuvre">
11 <div class="content container">
12 <div class="infos">
13 <h2>${portletHelper.getPortletTitle('eu.museum.collection', renderRequest)}</h2>
14 <p><@liferay_ui.message key="eu.museum.collection.description" /></p>
15 <a href="https://musees-strasbourg.skin-web.org/" target="_blank" class="button1" aria-label="<@liferay_ui.message key="eu.museum.all-collection" /> (<@liferay_ui.message key="eu.new-window" />)" title="<@liferay_ui.message key="eu.museum.all-collection" /> (<@liferay_ui.message key="eu.new-window" />)"><@liferay_ui.message key="eu.museum.all-collection" /></a>
16 </div>
17 <#if entries?has_content>
18 <div id="listCollections" class="list">
19 <div class="gutter-sizer"></div>
20 <#list entries as curEntry>
21 <#if curEntry?has_content && curEntry.getAssetRenderer()?has_content && curEntry.getAssetRenderer().getArticle()?has_content>
22 <#assign content = strasbourg.buildFieldValues(curEntry.getClassPK()) />
23 <#assign image = content.image />
24 <#assign imageURL ="" />
25 <#if image?has_content>
26 <#assign imageURL = image.contentUrl />
27 <#assign alt = image.description />
28 </#if>
29 <#assign title = content.title />
30 <#assign link = content.link />
31 <a href="${link}" target="_blank" aria-label="${title?html} (<@liferay_ui.message key="eu.new-window" />)" title="${title?html} (<@liferay_ui.message key="eu.new-window" />)" class="oeuvre-thumbnail">
32 <img src="${imageURL}" alt="${alt?html}" title="${alt?html}" />
33 <div class="info">
34 <div class="title">
35 <span>${title}</span>
36 </div>
37 <div class="museums">
38 <#if curEntry.categories?first?has_content>
39 <#assign vocabularyLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService") />
40 <span>
41 <#assign nbMusees = 0 />
42 <#list curEntry.categories as category>
43 <#assign vocabulary = vocabularyLocalService.getVocabulary(category.vocabularyId) />
44 <#if vocabulary.name == "Musées">
45 <#if nbMusees gt 0 >
46 ,
47 </#if>
48 ${category.getTitle(locale)}
49 <#assign nbMusees++ />
50 </#if>
51 </#list>
52 </span>
53 </#if>
54 </div>
55 </div>
56 </a>
57 </#if>
58 </#list>
59 </div>
60 </#if>
61 </div>
62</section>