Asset-Herausgeber

Fehler bei der Verarbeitung der Vorlage.
For "...[...]" left-hand operand: Expected a hash, but this has evaluated to a string (wrapper: f.t.SimpleScalar):
==> mediumData [in template "252001#252047#WCD_DEBATTENBLOG_AUSGABEDETAIL_INTRO" at line 45, column 91]
----
FTL stack trace ("~" means nesting-related):
- Failed at: #assign linkToDMT = FrontendService.m... [in template "252001#252047#WCD_DEBATTENBLOG_AUSGABEDETAIL_INTRO" at line 45, column 1]
----
1<#-- bezieht sich auf WCS Publikationsverbund --> 
2<#assign articleTitle = .vars['reserved-article-title'].data/> 
3<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") /> 
4<#assign version = .vars['reserved-article-version'].data?number /> 
5<#assign articleId = .vars['reserved-article-id'].data /> 
6<#assign article = JournalArticleLocalService.fetchArticle( articleGroupId, articleId , version ) /> 
7 
8<#if requestMap??>  
9 <#assign 
10 renderUrl = requestMap['render-url'] 
11 control_panel = renderUrl?contains('control_panel')  
12
13</#if> 
14  
15<#if control_panel?? && control_panel> 
16 <#if FrontendService.user.isPrivilegedUser(permissionChecker.getUser())> 
17 <pre> 
18 articleId = ${.vars['reserved-article-id'].data} 
19 version = ${.vars['reserved-article-version'].data} 
20 groupId = ${articleGroupId} 
21 structurekey = ${article.getDDMStructureKey()} 
22 </pre> 
23 <pre style="white-space: pre-wrap;"> 
24 ${FrontendService.json.transformToJson( article, true )} 
25 </pre> 
26 </#if> 
27<#else>  
28 <#include "${fullTemplatesPath}/functions/relatedContentUtil.ftl" /> 
29 <#include "${fullTemplatesPath}/macros/page-modules/PMShare.ftl" /> 
30  
31 <#-- Quelle macro 
32 ------------------------------------------------------------------------------------------------------------------------> 
33<#macro mediaReference groupId uuid > 
34 <#local mediaObj = FrontendService.media.getDMTJsonObject(groupId, uuid, locale)!"" > 
35 
36 <#if mediaObj?has_content && (mediaObj.quelle)?has_content > 
37 <#local source = mediaObj.quelle?substring(1, (mediaObj.quelle?length - 1))> 
38 <#if source?has_content> 
39 <span class="o-imagesource">${source}</span> 
40 </#if> 
41 </#if> 
42</#macro> 
43  
44<#assign mediumData = mediumDMTKASDEMEDIUM.data!""?eval /> 
45<#assign linkToDMT = FrontendService.media.getImageURLForAMConfiguration('hd-resolution', mediumData["groupId"]?number, mediumData["uuid"]) /> <#-- Cover --> 
46  
47<#if !isDPMColorSchemeNEW()> 
48 <div class="c-page-intro"> 
49 <div class="o-page-module o-page-module--bare-bottom"> 
50 <div class="c-page-intro__wrapper"> 
51 <div class="c-page-intro__meta"> 
52  
53 <#-- Erscheinungsdatum --> 
54 <#assign erscheinungsdatum_Data = getterUtil.getString(erscheinungsdatum.getData())> 
55 <#if validator.isNotNull(erscheinungsdatum_Data)> 
56 <#assign erscheinungsdatum_DateObj = dateUtil.parseDate("yyyy-MM-dd", erscheinungsdatum_Data, locale)> 
57 <span class="o-metadata o-metadata--date"> 
58 ${dateUtil.getDate(erscheinungsdatum_DateObj, "dd. MMMM yyyy", locale)} 
59 </span> 
60 </#if> 
61  
62 <#-- Laufendenummer --> 
63 <#if validator.isNotNull(laufendenummer)> 
64 <span class="o-metadata o-metadata--hash"> 
65 <@liferay.language key="ausgabe" /> ${laufendenummer.getData()} 
66 </span> 
67 </#if> 
68  
69 </div> 
70  
71 <#-- Titel --> 
72 <div class="o-page-headline__wrapper"> 
73  
74 <div class="c-share"> 
75 <div class="c-share__wrapper--aside"> 
76 <div class="c-share c-share--aside c-share--aside-new"> 
77 <ul class="c-share__list"> 
78 <@ShareLink "print" /> 
79 <@ShareLink "mail" /> 
80 <@ShareLink "share" /> 
81 </ul> 
82 </div> 
83 </div> 
84 <@ShareOverlay /> 
85 </div> 
86  
87 <h2 class="o-page-headline"> 
88 ${articleTitle} 
89 </h2> 
90 </div> 
91  
92  
93 </div> 
94 </div> 
95  
96 <#-- Cover --> 
97 <#-- Kurzbeschreibung --> 
98 <div class="o-page-module c-page-main c-page-main--detail c-page-main--publikationverbunddetail"> 
99 <div class="c-page-main__text o-richtext"> 
100 <p>${beschreibung.getData()}</p> 
101 </div> 
102 </div> 
103  
104 <div class="c-page-intro__media-content o-page-module"> 
105 <#if linkToDMT?has_content> 
106 <div class="c-page-intro__image" style="background-image: url('${linkToDMT}')"> 
107 <@mediaReference mediumData["groupId"]?number mediumData["uuid"] /> 
108 </div> 
109 </#if> 
110 </div> 
111  
112 <#-- Kurzbeschreibung --> 
113 <#if (document_pdfDMTBASICDOCUMENT.getData())?has_content> 
114 <div class="o-page-module c-page-main"> 
115 <div class="c-aside-teaser"> 
116 <div class="c-aside-teaser__entry"> 
117 <a title="<@liferay.language key='Download PDF' />" class="o-cta o-cta--secondary c-aside-teaser__cta" href="${document_pdfDMTBASICDOCUMENT.getData()}" target="_blank"> 
118 <@liferay.language key="Download PDF" /> 
119 </a> 
120 </div> 
121 </div> 
122 </div> 
123 </#if> 
124 </div> 
125 </#if> 
126 
127 <#if isDPMColorSchemeNEW()> 
128 <div class="c-current-issue__content"> 
129 
130 <#-- Ausgaben Cover --> 
131 <div class="c-current-issue__image-content"> 
132 <div class="c-image__image"> 
133 <#if linkToDMT?has_content> 
134 <img src="${linkToDMT}"> 
135 </#if> 
136 </div> 
137 </div> 
138 
139 <div class="c-current-issue__text-content"> 
140 
141 <div class="c-current-issue__meta o-metadata"> 
142 <#-- Erscheinungsdatum --> 
143 <#assign erscheinungsdatum_Data = getterUtil.getString(erscheinungsdatum.getData())> 
144 
145 <#if validator.isNotNull(erscheinungsdatum_Data)> 
146 <#assign erscheinungsdatum_DateObj = dateUtil.parseDate("yyyy-MM-dd", erscheinungsdatum_Data, locale)> 
147 <span class="o-metadata o-metadata--date"> 
148 ${dateUtil.getDate(erscheinungsdatum_DateObj, "dd. MMMM yyyy", locale)} 
149 </span> 
150 </#if> 
151 
152 <#-- laufende nummer --> 
153 <#if validator.isNotNull(laufendenummer)> 
154 <span class="o-metadata o-metadata--hash"><@liferay.language key="ausgabe" /> ${laufendenummer.getData()}</span> 
155 </#if> 
156 </div> 
157 
158 <#-- Titel --> 
159 <h3 class="c-current-issue__headline"> 
160 ${articleTitle!""} 
161 </h3> 
162 
163 <#-- Beschreibung --> 
164 <p class="c-current-issue__copy"> 
165 ${beschreibung.getData()} 
166 </p> 
167 
168 <div class="c-share"> 
169 <div class="c-share__wrapper--aside"> 
170 <div class="c-share c-share--aside c-share--aside-new"> 
171 <ul class="c-share__list"> 
172 <@ShareLink "print" /> 
173 <@ShareLink "mail" /> 
174 <@ShareLink "share" /> 
175 </ul> 
176 </div> 
177 </div> 
178 <@ShareOverlay /> 
179 </div> 
180 </div> 
181 </div> 
182 
183 <#-- Downloadlink --> 
184 <#if (document_pdfDMTBASICDOCUMENT.getData())?has_content> 
185 <div class="c-aside-teaser"> 
186 <div class="c-aside-teaser__entry"> 
187 <a title="<@liferay.language key='Download PDF' />" class="o-cta o-cta--secondary c-aside-teaser__cta" href="${document_pdfDMTBASICDOCUMENT.getData()}" target="_blank"> 
188 <@liferay.language key="Download PDF" /> 
189 </a> 
190 </div> 
191 </div> 
192 </#if> 
193 </#if> 
194</#if> 

Asset-Herausgeber

Inhalt

Normal - gibt es das noch?

"Normaler" als man glaubt?

Kommentiert

  • Total digital

    Anmerkungen zur Mode der intellektuellen Spökenkiekerei

    von Reinhard Mohr

Impulse

Erinnert

Gelesen

Aus der Stiftung

Asset-Herausgeber

Weitere Artikel

Fehler bei der Verarbeitung der Vorlage.
For "...[...]" left-hand operand: Expected a hash, but this has evaluated to a string (wrapper: f.t.SimpleScalar):
==> mediumData [in template "252001#252047#WCD_DEBATTENBLOG_ALLE_ARTIKEL" at line 119, column 97]
----
FTL stack trace ("~" means nesting-related):
- Failed at: #assign linkToDMT = FrontendService.m... [in template "252001#252047#WCD_DEBATTENBLOG_ALLE_ARTIKEL" at line 119, column 7]
----
1<#include "${fullTemplatesPath}/functions/relatedContentUtil.ftl" /> 
2<#-- bezieht sich auf WCS Publikation --> 
3<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") /> 
4<#assign AssetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") /> 
5 
6<#assign articleId = .vars['reserved-article-id'].data /> 
7<#assign articleTitle = .vars['reserved-article-title'].data /> 
8 
9<#-- get link from frontend service --> 
10<#assign contentUrl = "/404" > 
11<#assign journalArticle = JournalArticleLocalService.getArticle(groupId, articleId) /> 
12<#if journalArticle?has_content> 
13 <#assign className = "com.liferay.journal.model.JournalArticle"> 
14 <#assign resourcePrimKey = journalArticle.getResourcePrimKey()!""> 
15 <#assign assetEntry = AssetEntryLocalService.getEntry(className, resourcePrimKey) /> 
16 
17 <#if assetEntry?has_content> 
18 <#assign classPK = assetEntry.getClassPK()!"" > 
19 <#assign contentUrl = FrontendService.article.getFriendlyUrl(classPK, themeDisplay.getLocale(), themeDisplay.getScopeGroupId()) > 
20 </#if> 
21</#if> 
22 
23<#function getJournalArticle referenceStructure > 
24 <#local journalArticle = "" > 
25  
26 <#attempt> 
27 <#local data = FrontendService.json.parseAsJson(referenceStructure.getData()) > 
28 <#if data?is_hash> 
29 <#local classPK = data['classPK'] > 
30 <#local className = data['className'] > 
31 <#local entry = AssetEntryLocalService.getEntry(className, classPK?number)! > 
32 <#if entry??> 
33 <#local assetRenderer = entry.getAssetRenderer() /> 
34 <#local journalArticle = (assetRenderer.getArticle())! /> 
35 </#if> 
36 </#if> 
37 <#recover> 
38 <#-- catch block --> 
39 </#attempt> 
40  
41 <#return journalArticle > 
42  
43</#function> 
44 
45<#function getSaxReaderDocument dataObj > 
46 <#local document = "" > 
47  
48 <#local journalArticle = getJournalArticle(dataObj) > 
49 <#if journalArticle?has_content> 
50 <#local document = (saxReaderUtil.read(journalArticle.getContentByLocale(locale.toString())))!"" /> 
51 </#if> 
52  
53 <#return document > 
54  
55</#function> 
56 
57<#-- Quelle macro 
58------------------------------------------------------------------------------------------------------------------------> 
59<#macro mediaReference groupId uuid > 
60 <#local mediaObj = FrontendService.media.getDMTJsonObject(groupId, uuid, locale)!"" > 
61 
62 <#if mediaObj?has_content && (mediaObj.quelle)?has_content > 
63 <#local source = mediaObj.quelle?substring(1, (mediaObj.quelle?length - 1))> 
64 <#if source?has_content> 
65 <span class="o-imagesource">${source}</span> 
66 </#if> 
67 </#if> 
68</#macro> 
69 
70 <#-- PERSON macro 
71 ------------------------------------------------------------------------------------------------------------------------> 
72 <#macro personName document > 
73 <#if document?has_content> 
74 <#local anredetitel = ""> 
75 <#local vorname = ""> 
76 <#local nachname = ""> 
77  
78 <#if document.selectSingleNode("/root/dynamic-element[@name='anredetitel']/dynamic-content")??> 
79 <#local node = document.selectSingleNode("/root/dynamic-element[@name='anredetitel']/dynamic-content") /> 
80 <#local nodeText = node.getText() /> 
81 <#if nodeText?has_content > 
82 <#local anredetitel = nodeText > 
83 </#if> 
84 </#if> 
85  
86 <#if document.selectSingleNode("/root/dynamic-element[@name='vorname']/dynamic-content")??> 
87 <#local node = document.selectSingleNode("/root/dynamic-element[@name='vorname']/dynamic-content") /> 
88 <#local nodeText = node.getText() /> 
89 <#if nodeText?has_content > 
90 <#local vorname = nodeText > 
91 </#if> 
92 </#if> 
93  
94 <#if document.selectSingleNode("/root/dynamic-element[@name='nachname']/dynamic-content")??> 
95 <#local node = document.selectSingleNode("/root/dynamic-element[@name='nachname']/dynamic-content") /> 
96 <#local nodeText = node.getText() /> 
97 <#if nodeText?has_content > 
98 <#local nachname = nodeText > 
99 </#if> 
100 </#if> 
101  
102 </#if> 
103  
104 <#if anredetitel?has_content || vorname?has_content || nachname?has_content > 
105 <span class="o-metadata o-metadata--author"> 
106 von ${anredetitel} ${vorname} ${nachname}  
107 </span> 
108 </#if> 
109 </#macro> 
110 
111<a class="c-teaserlist-item__content o-link-bare" href="${contentUrl}"> 
112 
113 <#-- Artikel Cover --> 
114 <#assign bg = "/o/kas-de-debattenblog-theme/images/generic-fallback.png"> 
115 <#assign linkToDMT = bg> 
116 <#if (coverDMTKASDEMEDIUM.getData())?has_content> 
117 <#assign bg = coverDMTKASDEMEDIUM.getData() > 
118 <#assign mediumData = coverDMTKASDEMEDIUM.data!""?eval /> 
119 <#assign linkToDMT = FrontendService.media.getImageURLForAMConfiguration('hd-resolution', mediumData["groupId"]?number, mediumData["uuid"]) /> <#-- Cover --> 
120 </#if> 
121 
122 <#if isDPMColorSchemeNEW()> 
123 <div class="c-teaserlist-item__left"> 
124 </#if> 
125 
126 <div class="c-teaserlist-item__media" style="background-image: url('${linkToDMT}')"> 
127 <#if mediumData?has_content> 
128 <@mediaReference mediumData["groupId"]?number mediumData["uuid"] /> 
129 </#if> 
130 </div> 
131 
132 <#if isDPMColorSchemeNEW()> 
133 
134 <#-- Laufendenummer --> 
135 <#assign verbundJournalArticle = FrontendService.publication.getVerbundToPublikation(journalArticle)!"" > 
136 <#if verbundJournalArticle?has_content> 
137 <#assign document = (saxReaderUtil.read(verbundJournalArticle.getContentByLocale(locale.toString())))!"" /> 
138 <#if document?has_content> 
139 
140 <#if document.selectSingleNode("/root/dynamic-element[@name='laufendenummer']/dynamic-content")??> 
141 <#assign node = document.selectSingleNode("/root/dynamic-element[@name='laufendenummer']/dynamic-content") /> 
142 <#assign laufendenummer = node.getText() /> 
143 <#if laufendenummer?has_content > 
144 <span class="o-metadata o-metadata--hash"><@liferay.language key="ausgabe" /> ${laufendenummer}</span> 
145 </#if> 
146 </#if> 
147 </#if> 
148 </#if> 
149 
150 <#-- Erscheinungsdatum --> 
151 <#assign erscheinungsdatum_Data = getterUtil.getString(erscheinungsdatum.getData())> 
152  
153 <#if validator.isNotNull(erscheinungsdatum_Data)> 
154 <#assign erscheinungsdatum_DateObj = dateUtil.parseDate("yyyy-MM-dd", erscheinungsdatum_Data, locale)> 
155 <span class="o-metadata o-metadata--date"> 
156 ${dateUtil.getDate(erscheinungsdatum_DateObj, "dd. MMMM yyyy", locale)} 
157 </span> 
158 </#if> 
159 </#if> 
160 
161 <#-- Titel --> 
162 <h4 class="c-teaserlist-item__headline"> 
163 ${articleTitle!""} 
164 </h4> 
165 
166 <#-- Untertitel --> 
167 <p class="c-teaserlist-item__description"> 
168 ${untertitel.getData()} 
169 </p> 
170 
171 <#if isDPMColorSchemeNEW()> 
172 <#if autorenWCSKASDEPERSON.getSiblings()?has_content> 
173 <#list autorenWCSKASDEPERSON.getSiblings() as cur_autorenWCSKASDEPERSON> 
174 <#assign document = getSaxReaderDocument(cur_autorenWCSKASDEPERSON) > 
175 <#-- <span class="o-metadata o-metadata--author"> --> 
176 <@personName document /> 
177 <#-- </span> --> 
178 </#list> 
179 </span> 
180 </#if> 
181 </#if> 
182 
183 <#if isDPMColorSchemeNEW()> 
184 </div> 
185 <div class="c-teaserlist-item__right"> 
186 </#if> 
187 
188 <button class="o-cta c-teaserlist-item__cta"> 
189 <#if !isDPMColorSchemeNEW()> 
190 <@liferay.language key="jetzt.lesen" /> 
191 </#if> 
192 <#if isDPMColorSchemeNEW()> 
193 <@liferay.language key="artikel.lesen" /> 
194 </#if> 
195 </button> 
196 
197 <#if isDPMColorSchemeNEW()> 
198 </div> 
199 </#if> 
200</a> 
Fehler bei der Verarbeitung der Vorlage.
For "...[...]" left-hand operand: Expected a hash, but this has evaluated to a string (wrapper: f.t.SimpleScalar):
==> mediumData [in template "252001#252047#WCD_DEBATTENBLOG_ALLE_ARTIKEL" at line 119, column 97]
----
FTL stack trace ("~" means nesting-related):
- Failed at: #assign linkToDMT = FrontendService.m... [in template "252001#252047#WCD_DEBATTENBLOG_ALLE_ARTIKEL" at line 119, column 7]
----
1<#include "${fullTemplatesPath}/functions/relatedContentUtil.ftl" /> 
2<#-- bezieht sich auf WCS Publikation --> 
3<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") /> 
4<#assign AssetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") /> 
5 
6<#assign articleId = .vars['reserved-article-id'].data /> 
7<#assign articleTitle = .vars['reserved-article-title'].data /> 
8 
9<#-- get link from frontend service --> 
10<#assign contentUrl = "/404" > 
11<#assign journalArticle = JournalArticleLocalService.getArticle(groupId, articleId) /> 
12<#if journalArticle?has_content> 
13 <#assign className = "com.liferay.journal.model.JournalArticle"> 
14 <#assign resourcePrimKey = journalArticle.getResourcePrimKey()!""> 
15 <#assign assetEntry = AssetEntryLocalService.getEntry(className, resourcePrimKey) /> 
16 
17 <#if assetEntry?has_content> 
18 <#assign classPK = assetEntry.getClassPK()!"" > 
19 <#assign contentUrl = FrontendService.article.getFriendlyUrl(classPK, themeDisplay.getLocale(), themeDisplay.getScopeGroupId()) > 
20 </#if> 
21</#if> 
22 
23<#function getJournalArticle referenceStructure > 
24 <#local journalArticle = "" > 
25  
26 <#attempt> 
27 <#local data = FrontendService.json.parseAsJson(referenceStructure.getData()) > 
28 <#if data?is_hash> 
29 <#local classPK = data['classPK'] > 
30 <#local className = data['className'] > 
31 <#local entry = AssetEntryLocalService.getEntry(className, classPK?number)! > 
32 <#if entry??> 
33 <#local assetRenderer = entry.getAssetRenderer() /> 
34 <#local journalArticle = (assetRenderer.getArticle())! /> 
35 </#if> 
36 </#if> 
37 <#recover> 
38 <#-- catch block --> 
39 </#attempt> 
40  
41 <#return journalArticle > 
42  
43</#function> 
44 
45<#function getSaxReaderDocument dataObj > 
46 <#local document = "" > 
47  
48 <#local journalArticle = getJournalArticle(dataObj) > 
49 <#if journalArticle?has_content> 
50 <#local document = (saxReaderUtil.read(journalArticle.getContentByLocale(locale.toString())))!"" /> 
51 </#if> 
52  
53 <#return document > 
54  
55</#function> 
56 
57<#-- Quelle macro 
58------------------------------------------------------------------------------------------------------------------------> 
59<#macro mediaReference groupId uuid > 
60 <#local mediaObj = FrontendService.media.getDMTJsonObject(groupId, uuid, locale)!"" > 
61 
62 <#if mediaObj?has_content && (mediaObj.quelle)?has_content > 
63 <#local source = mediaObj.quelle?substring(1, (mediaObj.quelle?length - 1))> 
64 <#if source?has_content> 
65 <span class="o-imagesource">${source}</span> 
66 </#if> 
67 </#if> 
68</#macro> 
69 
70 <#-- PERSON macro 
71 ------------------------------------------------------------------------------------------------------------------------> 
72 <#macro personName document > 
73 <#if document?has_content> 
74 <#local anredetitel = ""> 
75 <#local vorname = ""> 
76 <#local nachname = ""> 
77  
78 <#if document.selectSingleNode("/root/dynamic-element[@name='anredetitel']/dynamic-content")??> 
79 <#local node = document.selectSingleNode("/root/dynamic-element[@name='anredetitel']/dynamic-content") /> 
80 <#local nodeText = node.getText() /> 
81 <#if nodeText?has_content > 
82 <#local anredetitel = nodeText > 
83 </#if> 
84 </#if> 
85  
86 <#if document.selectSingleNode("/root/dynamic-element[@name='vorname']/dynamic-content")??> 
87 <#local node = document.selectSingleNode("/root/dynamic-element[@name='vorname']/dynamic-content") /> 
88 <#local nodeText = node.getText() /> 
89 <#if nodeText?has_content > 
90 <#local vorname = nodeText > 
91 </#if> 
92 </#if> 
93  
94 <#if document.selectSingleNode("/root/dynamic-element[@name='nachname']/dynamic-content")??> 
95 <#local node = document.selectSingleNode("/root/dynamic-element[@name='nachname']/dynamic-content") /> 
96 <#local nodeText = node.getText() /> 
97 <#if nodeText?has_content > 
98 <#local nachname = nodeText > 
99 </#if> 
100 </#if> 
101  
102 </#if> 
103  
104 <#if anredetitel?has_content || vorname?has_content || nachname?has_content > 
105 <span class="o-metadata o-metadata--author"> 
106 von ${anredetitel} ${vorname} ${nachname}  
107 </span> 
108 </#if> 
109 </#macro> 
110 
111<a class="c-teaserlist-item__content o-link-bare" href="${contentUrl}"> 
112 
113 <#-- Artikel Cover --> 
114 <#assign bg = "/o/kas-de-debattenblog-theme/images/generic-fallback.png"> 
115 <#assign linkToDMT = bg> 
116 <#if (coverDMTKASDEMEDIUM.getData())?has_content> 
117 <#assign bg = coverDMTKASDEMEDIUM.getData() > 
118 <#assign mediumData = coverDMTKASDEMEDIUM.data!""?eval /> 
119 <#assign linkToDMT = FrontendService.media.getImageURLForAMConfiguration('hd-resolution', mediumData["groupId"]?number, mediumData["uuid"]) /> <#-- Cover --> 
120 </#if> 
121 
122 <#if isDPMColorSchemeNEW()> 
123 <div class="c-teaserlist-item__left"> 
124 </#if> 
125 
126 <div class="c-teaserlist-item__media" style="background-image: url('${linkToDMT}')"> 
127 <#if mediumData?has_content> 
128 <@mediaReference mediumData["groupId"]?number mediumData["uuid"] /> 
129 </#if> 
130 </div> 
131 
132 <#if isDPMColorSchemeNEW()> 
133 
134 <#-- Laufendenummer --> 
135 <#assign verbundJournalArticle = FrontendService.publication.getVerbundToPublikation(journalArticle)!"" > 
136 <#if verbundJournalArticle?has_content> 
137 <#assign document = (saxReaderUtil.read(verbundJournalArticle.getContentByLocale(locale.toString())))!"" /> 
138 <#if document?has_content> 
139 
140 <#if document.selectSingleNode("/root/dynamic-element[@name='laufendenummer']/dynamic-content")??> 
141 <#assign node = document.selectSingleNode("/root/dynamic-element[@name='laufendenummer']/dynamic-content") /> 
142 <#assign laufendenummer = node.getText() /> 
143 <#if laufendenummer?has_content > 
144 <span class="o-metadata o-metadata--hash"><@liferay.language key="ausgabe" /> ${laufendenummer}</span> 
145 </#if> 
146 </#if> 
147 </#if> 
148 </#if> 
149 
150 <#-- Erscheinungsdatum --> 
151 <#assign erscheinungsdatum_Data = getterUtil.getString(erscheinungsdatum.getData())> 
152  
153 <#if validator.isNotNull(erscheinungsdatum_Data)> 
154 <#assign erscheinungsdatum_DateObj = dateUtil.parseDate("yyyy-MM-dd", erscheinungsdatum_Data, locale)> 
155 <span class="o-metadata o-metadata--date"> 
156 ${dateUtil.getDate(erscheinungsdatum_DateObj, "dd. MMMM yyyy", locale)} 
157 </span> 
158 </#if> 
159 </#if> 
160 
161 <#-- Titel --> 
162 <h4 class="c-teaserlist-item__headline"> 
163 ${articleTitle!""} 
164 </h4> 
165 
166 <#-- Untertitel --> 
167 <p class="c-teaserlist-item__description"> 
168 ${untertitel.getData()} 
169 </p> 
170 
171 <#if isDPMColorSchemeNEW()> 
172 <#if autorenWCSKASDEPERSON.getSiblings()?has_content> 
173 <#list autorenWCSKASDEPERSON.getSiblings() as cur_autorenWCSKASDEPERSON> 
174 <#assign document = getSaxReaderDocument(cur_autorenWCSKASDEPERSON) > 
175 <#-- <span class="o-metadata o-metadata--author"> --> 
176 <@personName document /> 
177 <#-- </span> --> 
178 </#list> 
179 </span> 
180 </#if> 
181 </#if> 
182 
183 <#if isDPMColorSchemeNEW()> 
184 </div> 
185 <div class="c-teaserlist-item__right"> 
186 </#if> 
187 
188 <button class="o-cta c-teaserlist-item__cta"> 
189 <#if !isDPMColorSchemeNEW()> 
190 <@liferay.language key="jetzt.lesen" /> 
191 </#if> 
192 <#if isDPMColorSchemeNEW()> 
193 <@liferay.language key="artikel.lesen" /> 
194 </#if> 
195 </button> 
196 
197 <#if isDPMColorSchemeNEW()> 
198 </div> 
199 </#if> 
200</a> 
Fehler bei der Verarbeitung der Vorlage.
For "...[...]" left-hand operand: Expected a hash, but this has evaluated to a string (wrapper: f.t.SimpleScalar):
==> mediumData [in template "252001#252047#WCD_DEBATTENBLOG_ALLE_ARTIKEL" at line 119, column 97]
----
FTL stack trace ("~" means nesting-related):
- Failed at: #assign linkToDMT = FrontendService.m... [in template "252001#252047#WCD_DEBATTENBLOG_ALLE_ARTIKEL" at line 119, column 7]
----
1<#include "${fullTemplatesPath}/functions/relatedContentUtil.ftl" /> 
2<#-- bezieht sich auf WCS Publikation --> 
3<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") /> 
4<#assign AssetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") /> 
5 
6<#assign articleId = .vars['reserved-article-id'].data /> 
7<#assign articleTitle = .vars['reserved-article-title'].data /> 
8 
9<#-- get link from frontend service --> 
10<#assign contentUrl = "/404" > 
11<#assign journalArticle = JournalArticleLocalService.getArticle(groupId, articleId) /> 
12<#if journalArticle?has_content> 
13 <#assign className = "com.liferay.journal.model.JournalArticle"> 
14 <#assign resourcePrimKey = journalArticle.getResourcePrimKey()!""> 
15 <#assign assetEntry = AssetEntryLocalService.getEntry(className, resourcePrimKey) /> 
16 
17 <#if assetEntry?has_content> 
18 <#assign classPK = assetEntry.getClassPK()!"" > 
19 <#assign contentUrl = FrontendService.article.getFriendlyUrl(classPK, themeDisplay.getLocale(), themeDisplay.getScopeGroupId()) > 
20 </#if> 
21</#if> 
22 
23<#function getJournalArticle referenceStructure > 
24 <#local journalArticle = "" > 
25  
26 <#attempt> 
27 <#local data = FrontendService.json.parseAsJson(referenceStructure.getData()) > 
28 <#if data?is_hash> 
29 <#local classPK = data['classPK'] > 
30 <#local className = data['className'] > 
31 <#local entry = AssetEntryLocalService.getEntry(className, classPK?number)! > 
32 <#if entry??> 
33 <#local assetRenderer = entry.getAssetRenderer() /> 
34 <#local journalArticle = (assetRenderer.getArticle())! /> 
35 </#if> 
36 </#if> 
37 <#recover> 
38 <#-- catch block --> 
39 </#attempt> 
40  
41 <#return journalArticle > 
42  
43</#function> 
44 
45<#function getSaxReaderDocument dataObj > 
46 <#local document = "" > 
47  
48 <#local journalArticle = getJournalArticle(dataObj) > 
49 <#if journalArticle?has_content> 
50 <#local document = (saxReaderUtil.read(journalArticle.getContentByLocale(locale.toString())))!"" /> 
51 </#if> 
52  
53 <#return document > 
54  
55</#function> 
56 
57<#-- Quelle macro 
58------------------------------------------------------------------------------------------------------------------------> 
59<#macro mediaReference groupId uuid > 
60 <#local mediaObj = FrontendService.media.getDMTJsonObject(groupId, uuid, locale)!"" > 
61 
62 <#if mediaObj?has_content && (mediaObj.quelle)?has_content > 
63 <#local source = mediaObj.quelle?substring(1, (mediaObj.quelle?length - 1))> 
64 <#if source?has_content> 
65 <span class="o-imagesource">${source}</span> 
66 </#if> 
67 </#if> 
68</#macro> 
69 
70 <#-- PERSON macro 
71 ------------------------------------------------------------------------------------------------------------------------> 
72 <#macro personName document > 
73 <#if document?has_content> 
74 <#local anredetitel = ""> 
75 <#local vorname = ""> 
76 <#local nachname = ""> 
77  
78 <#if document.selectSingleNode("/root/dynamic-element[@name='anredetitel']/dynamic-content")??> 
79 <#local node = document.selectSingleNode("/root/dynamic-element[@name='anredetitel']/dynamic-content") /> 
80 <#local nodeText = node.getText() /> 
81 <#if nodeText?has_content > 
82 <#local anredetitel = nodeText > 
83 </#if> 
84 </#if> 
85  
86 <#if document.selectSingleNode("/root/dynamic-element[@name='vorname']/dynamic-content")??> 
87 <#local node = document.selectSingleNode("/root/dynamic-element[@name='vorname']/dynamic-content") /> 
88 <#local nodeText = node.getText() /> 
89 <#if nodeText?has_content > 
90 <#local vorname = nodeText > 
91 </#if> 
92 </#if> 
93  
94 <#if document.selectSingleNode("/root/dynamic-element[@name='nachname']/dynamic-content")??> 
95 <#local node = document.selectSingleNode("/root/dynamic-element[@name='nachname']/dynamic-content") /> 
96 <#local nodeText = node.getText() /> 
97 <#if nodeText?has_content > 
98 <#local nachname = nodeText > 
99 </#if> 
100 </#if> 
101  
102 </#if> 
103  
104 <#if anredetitel?has_content || vorname?has_content || nachname?has_content > 
105 <span class="o-metadata o-metadata--author"> 
106 von ${anredetitel} ${vorname} ${nachname}  
107 </span> 
108 </#if> 
109 </#macro> 
110 
111<a class="c-teaserlist-item__content o-link-bare" href="${contentUrl}"> 
112 
113 <#-- Artikel Cover --> 
114 <#assign bg = "/o/kas-de-debattenblog-theme/images/generic-fallback.png"> 
115 <#assign linkToDMT = bg> 
116 <#if (coverDMTKASDEMEDIUM.getData())?has_content> 
117 <#assign bg = coverDMTKASDEMEDIUM.getData() > 
118 <#assign mediumData = coverDMTKASDEMEDIUM.data!""?eval /> 
119 <#assign linkToDMT = FrontendService.media.getImageURLForAMConfiguration('hd-resolution', mediumData["groupId"]?number, mediumData["uuid"]) /> <#-- Cover --> 
120 </#if> 
121 
122 <#if isDPMColorSchemeNEW()> 
123 <div class="c-teaserlist-item__left"> 
124 </#if> 
125 
126 <div class="c-teaserlist-item__media" style="background-image: url('${linkToDMT}')"> 
127 <#if mediumData?has_content> 
128 <@mediaReference mediumData["groupId"]?number mediumData["uuid"] /> 
129 </#if> 
130 </div> 
131 
132 <#if isDPMColorSchemeNEW()> 
133 
134 <#-- Laufendenummer --> 
135 <#assign verbundJournalArticle = FrontendService.publication.getVerbundToPublikation(journalArticle)!"" > 
136 <#if verbundJournalArticle?has_content> 
137 <#assign document = (saxReaderUtil.read(verbundJournalArticle.getContentByLocale(locale.toString())))!"" /> 
138 <#if document?has_content> 
139 
140 <#if document.selectSingleNode("/root/dynamic-element[@name='laufendenummer']/dynamic-content")??> 
141 <#assign node = document.selectSingleNode("/root/dynamic-element[@name='laufendenummer']/dynamic-content") /> 
142 <#assign laufendenummer = node.getText() /> 
143 <#if laufendenummer?has_content > 
144 <span class="o-metadata o-metadata--hash"><@liferay.language key="ausgabe" /> ${laufendenummer}</span> 
145 </#if> 
146 </#if> 
147 </#if> 
148 </#if> 
149 
150 <#-- Erscheinungsdatum --> 
151 <#assign erscheinungsdatum_Data = getterUtil.getString(erscheinungsdatum.getData())> 
152  
153 <#if validator.isNotNull(erscheinungsdatum_Data)> 
154 <#assign erscheinungsdatum_DateObj = dateUtil.parseDate("yyyy-MM-dd", erscheinungsdatum_Data, locale)> 
155 <span class="o-metadata o-metadata--date"> 
156 ${dateUtil.getDate(erscheinungsdatum_DateObj, "dd. MMMM yyyy", locale)} 
157 </span> 
158 </#if> 
159 </#if> 
160 
161 <#-- Titel --> 
162 <h4 class="c-teaserlist-item__headline"> 
163 ${articleTitle!""} 
164 </h4> 
165 
166 <#-- Untertitel --> 
167 <p class="c-teaserlist-item__description"> 
168 ${untertitel.getData()} 
169 </p> 
170 
171 <#if isDPMColorSchemeNEW()> 
172 <#if autorenWCSKASDEPERSON.getSiblings()?has_content> 
173 <#list autorenWCSKASDEPERSON.getSiblings() as cur_autorenWCSKASDEPERSON> 
174 <#assign document = getSaxReaderDocument(cur_autorenWCSKASDEPERSON) > 
175 <#-- <span class="o-metadata o-metadata--author"> --> 
176 <@personName document /> 
177 <#-- </span> --> 
178 </#list> 
179 </span> 
180 </#if> 
181 </#if> 
182 
183 <#if isDPMColorSchemeNEW()> 
184 </div> 
185 <div class="c-teaserlist-item__right"> 
186 </#if> 
187 
188 <button class="o-cta c-teaserlist-item__cta"> 
189 <#if !isDPMColorSchemeNEW()> 
190 <@liferay.language key="jetzt.lesen" /> 
191 </#if> 
192 <#if isDPMColorSchemeNEW()> 
193 <@liferay.language key="artikel.lesen" /> 
194 </#if> 
195 </button> 
196 
197 <#if isDPMColorSchemeNEW()> 
198 </div> 
199 </#if> 
200</a> 

Asset-Herausgeber

Die Politische Meinung und Team

Die Zeitschrift bietet als Bezugspunkte fundierte Analysen historischer Hintergründe und eine der individuellen Eigenverantwortung verpflichtete, im christlichen Menschenbild verankerte Ethik. Die Politische Meinung erscheint fünfmal im Jahr. Der Bezugspreis für fünf Hefte beträgt 50,00 € zzgl. Porto. Der Einzelheftpreis beträgt 12,00 €. Schüler und Studenten erhalten einen Sonderrabatt (25 Prozent). Die Bezugsdauer verlängert sich jeweils um ein Jahr, sofern das Abonnement nicht bis zum 15. November eines Jahres schriftlich abbestellt wird. Bestellungen über den Verlag, durch den Buchhandel oder per E-Mail an politische-meinung@kas.de

Dr. Bernd Löhmann

Chefredakteur "Die Politische Meinung"

bernd.loehmann@kas.de +49 30 26996-3603

Konstantin Otto

Geschäftsführer "Die Politische Meinung",
Redakteur

konstantin.otto@kas.de +49 30 26996 -3325

Dr. Ralf Thomas Baus

Referent "Die Politische Meinung"

ralf.baus@kas.de +49 30 26996-3503 +49 30 26996-3551

Cornelia Wurm

Redaktionsassistenz "Die Politische Meinung"

cornelia.wurm@kas.de +49 2241 246-2592 +49 2241 246-2610

Jenny Kahlert

Sekretärin / Sachbearbeiterin

jenny.kahlert@kas.de +49 30 26996-3663 +49 30 26996-3551