Agrégateur de contenus

bildnisbildnis. Künstlerinterviews

Agrégateur de contenus

Une erreur s'est produite lors du traitement du modèle.
When calling macro "PMShare", required parameter "content" (parameter #1) was specified, but had null/missing value.
----
Tip: If the parameter value expression on the caller side is known to be legally null/missing, you may want to specify a default value for it with the "!" operator, like paramValue!defaultValue.
----
----
FTL stack trace ("~" means nesting-related):
- Failed at: #macro PMShare content registerLink="" [in template "kas-de-theme_SERVLET_CONTEXT_/templates/macros/page-modules/PMShare.ftl" in macro "PMShare" at line 33, column 1]
- Reached through: @PMShare registerLink [in template "252001#252047#7621026" at line 304, column 9]
----
1<#-- used @ Veranstaltungen-Detailseite, Main Content --> 
2<#-- used @ Themen-Detailseite, Main Content --> 
3<#-- used @ Publikationen-Detailseite, Main Content --> 
4<#-- used @ Personen-Detailseite, Main Content --> 
5 
6<#include "${fullTemplatesPath}/functions/liferayServicesUtil.ftl" /> 
7<#include "${fullTemplatesPath}/functions/relatedContentUtil.ftl" /> 
8<#include "${fullTemplatesPath}/macros/debugging.ftl" /> 
9 
10<#include "${fullTemplatesPath}/macros/page-modules/PMPageContent.ftl" /> 
11 
12<#-- additional intro+special content for personen-detailpage --> 
13<#include "${fullTemplatesPath}/macros/page-modules/PMShare.ftl" /> 
14<#include "${fullTemplatesPath}/macros/page-modules/PMIntro.ftl" /> 
15<#include "${fullTemplatesPath}/macros/page-modules/PMIntroBanner.ftl" /> 
16<#include "${fullTemplatesPath}/macros/page-modules/PMPersonContent.ftl" /> 
17<#include "${fullTemplatesPath}/macros/page-modules/PMPersonDocuments.ftl" /> 
18<#include "${fullTemplatesPath}/macros/atomic-modules/AMMetadata.ftl" /> 
19<#include "${fullTemplatesPath}/macros/atomic-modules/AMAddress.ftl" /> 
20<#include "${fullTemplatesPath}/macros/atomic-modules/AMDatetime.ftl" /> 
21<#include "${fullTemplatesPath}/macros/atomic-modules/AMMetadataContact.ftl" /> 
22 
23<#assign 
24 
25 DLFileEntryLocalService = getDLFileEntryLocalService() 
26 JournalArticleService = getJournalArticleService() 
27 
28 
29 themeDisplay = getThemeDisplay() 
30 
31 locale = themeDisplay.getLocale() 
32 default_locale = FrontendService.language.defaultLocale() 
33 
34 currentUrl = themeDisplay.getURLCurrent() 
35 editmode = FrontendService.user.isPrivilegedUser(themeDisplay) 
36 
37 layout = themeDisplay.getLayout() 
38 layouttpl = layout.getTypeSettingsProperties().getProperty("layout-template-id") 
39/> 
40 
41<#if layouttpl?contains("LAYOUT_KASDE_VERANSTALTUNGEN_DETAIL")> 
42 <#assign 
43 classModifier = "c-page-main--veranstaltungedetail" 
44 portletId = "ADT_KASDE_VERANSTALTUNGEN_CONTENT" 
45 /> 
46<#elseif layouttpl?contains("LAYOUT_KASDE_PUBLIKATIONEN_DETAIL")> 
47 <#assign 
48 classModifier = "c-page-main--publikationendetail" 
49 portletId = "ADT_KASDE_PUBLIKATIONEN_CONTENT" 
50 /> 
51<#elseif layouttpl?contains("LAYOUT_KASDE_THEMEN_DETAIL")> 
52 <#assign 
53 classModifier = "c-page-main--themadetail" 
54 portletId = "ADT_KASDE_THEMA_CONTENT" 
55 /> 
56<#elseif layouttpl?contains("LAYOUT_KASDE_PERSONEN_DETAIL")> 
57 <#assign 
58 classModifier = "c-page-main--themadetail" 
59 portletId = "ADT_KASDE_PERSONEN_CONTENT" 
60 /> 
61<#else> 
62 <#assign 
63 classModifier = "c-page-main" 
64 portletId = "ADT_KASDE_CONTENT" 
65 /> 
66</#if> 
67 
68<#assign content = [] > 
69 
70<#-- check if on detail page --> 
71<#-- Publikationen, Veranstaltungen --> 
72<#-- check if it is a hidden detail page - get article from url --> 
73<#if currentUrl?contains("/-/content") > 
74 
75 <#attempt> 
76 <#assign journalArticle = FrontendService.article.getArticleToUrl(currentUrl, groupId?number)!"" > 
77 <#recover> 
78 <#if (editmode?? && editmode)> 
79 <@errorMessage languageUtil.get(locale, "kein.journalArticle.gefunden") "ADT_KASDE_CONTENT" layouttpl currentUrl /> 
80 </#if> 
81 </#attempt> 
82 
83 <#if journalArticle?has_content> 
84 
85 <#if journalArticle.resourcePrimKey??> 
86 <#assign primaryKey = journalArticle.resourcePrimKey?number > 
87 <#elseif journalArticle.classPK??> 
88 <#assign primaryKey = journalArticle.classPK?number > 
89 </#if> 
90 
91 <#assign 
92 jsonString = FrontendService.article.getWebcontent(primaryKey) 
93 json = FrontendService.json.parseAsJson(jsonString) 
94 
95 data = {} 
96 registerLink = "" 
97  
98 /> 
99 <@debugJsonString jsonString "ADT_KASDE_CONTENT" /> 
100 
101 <#-- Personen Detailpage Content renders also the intro --> 
102 <#if layouttpl?contains("LAYOUT_KASDE_PERSONEN_DETAIL")> 
103 <#-- get general data for Person--> 
104 <#assign 
105 data_person = getRelatedPerson(json, locale, primaryKey, FrontendService, themeDisplay) 
106 data_intro = {} 
107 data_abteilung = [] 
108 /> 
109 
110 <#-- get Projekte (Auslandsbüros) for Person --> 
111 <#assign data_auslandsbuero = getRelatedProjekte(locale, primaryKey, FrontendService, themeDisplay) /> 
112 <#if data_auslandsbuero?has_content> 
113 <#assign data_person = data_person + {"auslandsbuero": data_auslandsbuero} /> 
114 </#if> 
115 
116 <#-- get Abteilungen for Person --> 
117 <#assign abbteilungen = FrontendService.category.getCategoriesToArticle(primaryKey, "ABTEILUNG") /> 
118 <#if abbteilungen?? > 
119 <#list abbteilungen as abteilung > 
120 <#assign 
121 data_abteilung = data_abteilung + [{ 
122 "title": abteilung.getTitle(locale), 
123 "href": FrontendService.category.getAnzeigeseiteToCategory(abteilung, locale, themeDisplay.getScopeGroupId())!"/_404" 
124 }] 
125 /> 
126 </#list> 
127 </#if> 
128 <#if data_abteilung?has_content> 
129 <#assign data_person = data_person + {"abteilung": data_abteilung} /> 
130 </#if> 
131 
132 <#-- assign Data for Intro --> 
133 <#if data_person.name?? && data_person.lastname?? > 
134 <#assign name = data_person.name + " " + data_person.lastname > 
135 
136 <#if data_person.anredetitel??> 
137 <#assign name = data_person.anredetitel + " " + name /> 
138 </#if> 
139 <#assign data_intro = data_intro + { "title" : name } /> 
140 </#if> 
141 
142 <#if data_person.subheadline??> 
143 <#assign data_intro = data_intro + {"subheadline" : data_person.subheadline} /> 
144 </#if> 
145 
146 <#-- render title + function --> 
147 <div class="o-page-module o-page-module--full"> 
148 <@PMIntro "ADT_KASDE_PERSON_INTRO" data_intro AMMetadata AMDatetime/> 
149 <#-- render blue box --> 
150 <@PMIntroBanner "ADT_KASDE_PERSON_INTRO_BANNER" data_person "" /> 
151 <#-- render contact data, auslandsbüros, abteilungen --> 
152 <@PMPersonContent "ADT_KASDE_PERSON_INFO" data_person "" AMMetadataContact AMAddress /> 
153 <#-- render persons document --> 
154 <#if data_person.documents??> 
155 <@PMPersonDocuments "ADT_KASDE_PERSON_DOCUMENT" data_person.documents "" /> 
156 </#if> 
157 </div> 
158 
159 </#if> 
160 
161 <#-- Veranstaltungs-Detail only --> 
162 <#if layouttpl?contains("LAYOUT_KASDE_VERANSTALTUNGEN_DETAIL")> 
163 <#-- Headline "Im Detail" for Veranstaltungs-Detail --> 
164 <#assign data = data + { "headline" : languageUtil.get(locale, "details") }> 
165 
166 <#-- ausgebucht --> 
167 <#if hasContent('ausgebucht', locale, json)> 
168 <#assign data = data + { "ausgebucht" : getValueForLanguage('ausgebucht', locale, json, "first") }> 
169 </#if> 
170 
171 <#-- storniert --> 
172 <#if hasContent('storniert', locale, json)> 
173 <#assign data = data + { "storniert" : getValueForLanguage('storniert', locale, json, "first") }> 
174 </#if> 
175 <#-- Programm Data --> 
176 <#assign program = getProgramm(json) > 
177 <#if program?has_content> 
178 <#assign data = data + { "program" : program } > 
179 </#if> 
180 
181 <#assign registerLink = FrontendService.event.getEventSignupLink(themeDisplay)!"" /> 
182 </#if> 
183 
184 <#-- Beschreibung --> 
185 <#if hasContent('beschreibung', locale, json)> 
186 <#assign data = data + { "description" : getValueForLanguage('beschreibung', locale, json, "first") }> 
187 </#if> 
188 
189 <#-- Contenttext --> 
190 <#if (json["contenttext"][locale])?? > 
191 <#assign data = data + { "text": json["contenttext"][locale] } > 
192 <#elseif (json["contenttext"][default_locale])??> 
193 <#assign data = data + { "text": json["contenttext"][default_locale] } > 
194 </#if> 
195 
196 <#if (json["contentbildunterschrift"][locale])?? > 
197 <#assign data = data + { "caption": json["contentbildunterschrift"][locale] } > 
198 <#elseif (json["contentbildunterschrift"][default_locale])??> 
199 <#assign data = data + { "caption": json["contentbildunterschrift"][default_locale] } > 
200 </#if> 
201 
202 <#-- Bilderstrecke --> 
203 <#assign series = getContentBilderstrecke(json) > 
204 <#if series?has_content> 
205 <#assign data = data + { "series" : series } /> 
206 </#if> 
207 
208 <#-- Media --> 
209 <#if (json["contentmediumDMTKASDEMEDIUM"][locale])?? > 
210 <#assign data = data + { "media": json["contentmediumDMTKASDEMEDIUM"][locale] } > 
211 <#elseif (json["contentmediumDMTKASDEMEDIUM"][default_locale])??> 
212 <#assign data = data + { "media": json["contentmediumDMTKASDEMEDIUM"][default_locale] } > 
213 </#if> 
214 
215 <#-- Programm Download --> 
216 <#if hasContent('documentDMTBASICDOCUMENT', locale, json)> 
217 <#assign 
218 documentDMTBASICDOCUMENTString = getValueForLanguage('documentDMTBASICDOCUMENT', locale, json, "first") 
219 documentDMTBASICDOCUMENT = FrontendService.json.parseAsJson(documentDMTBASICDOCUMENTString) 
220 dmtJson_doc = FrontendService.media.getDMTJsonObject( documentDMTBASICDOCUMENT.groupId?number, documentDMTBASICDOCUMENT.uuid, locale )!"" 
221 /> 
222 
223 <#if dmtJson_doc?has_content> 
224 <#assign url = FrontendService.media.getLinkToDMT(dmtJson_doc)/> 
225 <#if url?has_content> 
226 <#assign 
227 data = data + { 
228 "documentDMTBASICDOCUMENT": { 
229 "title": documentDMTBASICDOCUMENT.title, 
230 "url": url 
231
232
233 /> 
234 </#if> 
235 </#if> 
236 </#if> 
237 
238 <#-- Biogramm Special Data lebenslauf, veroeffentlichungen, literatur --> 
239 <#if hasContent('lebenslauf', locale, json)> 
240 <#assign data = data + { "lebenslauf" : getValueForLanguage('lebenslauf', locale, json, "first") }> 
241 </#if> 
242 
243 <#if hasContent('veroeffentlichungen', locale, json)> 
244 <#assign data = data + { "veroeffentlichungen" : getValueForLanguage('veroeffentlichungen', locale, json, "first") }> 
245 </#if> 
246 
247 <#if hasContent('literatur', locale, json)> 
248 <#assign data = data + { "literatur" : getValueForLanguage('literatur', locale, json, "first") }> 
249 </#if> 
250 
251 <#if data?has_content> 
252 <#assign content = content + [data]> 
253 </#if> 
254 
255 </#if> 
256 
257<#else> 
258 <#list entries as entry> 
259 <#assign 
260 primaryKey = entry.classPK?number 
261 jsonString = FrontendService.article.getWebcontent(primaryKey) 
262 json = FrontendService.json.parseAsJson(jsonString) 
263 /> 
264 <@debugJsonString jsonString "ADT_KASDE_CONTENT" /> 
265 
266 <#assign data = {} > 
267 
268 <#if (json["contenttext"][locale])?? > 
269 <#assign data = data + { "text": json["contenttext"][locale] } > 
270 <#elseif (json["contenttext"][default_locale])??> 
271 <#assign data = data + { "text": json["contenttext"][default_locale] } > 
272 </#if> 
273 
274 <#-- Bilderstrecke --> 
275 <#assign series = getContentBilderstrecke(json) > 
276 <#if series?has_content> 
277 <#assign data = data + { "series" : series } /> 
278 </#if> 
279 
280 <#-- Media --> 
281 <#if (json["contentmediumDMTKASDEMEDIUM"][locale])?? > 
282 <#assign data = data + { "media": json["contentmediumDMTKASDEMEDIUM"][locale] } > 
283 <#elseif (json["contentmediumDMTKASDEMEDIUM"][default_locale])??> 
284 <#assign data = data + { "media": json["contentmediumDMTKASDEMEDIUM"][default_locale] } > 
285 </#if> 
286 
287 <#if (json["contentbildunterschrift"][locale])?? > 
288 <#assign data = data + { "caption": json["contentbildunterschrift"][locale] } > 
289 <#elseif (json["contentbildunterschrift"][default_locale])??> 
290 <#assign data = data + { "caption": json["contentbildunterschrift"][default_locale] } > 
291 </#if> 
292 
293 <#if data?has_content> 
294 <#assign content = content + [data]> 
295 </#if> 
296 
297 </#list> 
298 
299</#if> 
300 
301<#if content?has_content > 
302 <#if !layouttpl?contains("LAYOUT_KASDE_PERSONEN_DETAIL")> 
303 <@PMPageContent portletId content classModifier /> 
304 <@PMShare registerLink /> 
305 </#if> 
306<#elseif (editmode?? && editmode)> 
307 <@errorMessage languageUtil.get(locale, "keine.inhalte.vorhanden") "ADT_KASDE_CONTENT" layouttpl currentUrl /> 
308</#if> 

Agrégateur de contenus

NATALIA STACHON

Afficher le détail

Agrégateur de contenus

Agrégateur de contenus

STEF HEIDHUES

Afficher le détail

Agrégateur de contenus

ONDREJ DRESCHER

Afficher le détail

Agrégateur de contenus

Agrégateur de contenus

RUPRECHT VON KAUFMANN

Afficher le détail

Agrégateur de contenus

ALEXEJ MESCHTSCHANOW

Afficher le détail

Agrégateur de contenus

Agrégateur de contenus

FRANZISKA HOLSTEIN

Afficher le détail

Agrégateur de contenus

NEZAKET EKICI

Afficher le détail

Agrégateur de contenus

Agrégateur de contenus

CYRILL LACHAUER

Afficher le détail

Agrégateur de contenus

MICHAEL MÜLLER

Afficher le détail

Agrégateur de contenus

Agrégateur de contenus

Agrégateur de contenus

Contact

Dr. Hans-Jörg Clement

Dr

Stellv. Leiter der Hauptabteilung Begabtenförderung und Kultur / Leiter Kultur und Kurator / Geschäftsführer EHF 2010

hans-joerg.clement@kas.de +49 30 26996-3221