1<#-- Nieuws.ftl -->
2<#-- VERSIE 16-01-2026 -->
3
4<style>
5 .icon-x {
6 width: 1em;
7 height: 1em;
8 vertical-align: -0.125em;
9 }
10</style>
11<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") />
12<#assign journalArticle = journalArticleLocalService.getArticle(getterUtil.getLong(groupId), .vars['reserved-article-id'].data) />
13<#assign extra_sfeerbeeld = journalArticle.getExpandoBridge().getAttribute("extra_sfeerbeeld") />
14<@liferay_util["html-top"] outputKey="metaog">
15 <#if extra_sfeerbeeld?has_content>
16 <meta property="og:image" content="${extra_sfeerbeeld}" />
17 </#if>
18 <meta property="og:type" content="article" />
19 <meta property="og:locale" content="${locale}" />
20</@>
21
22<#assign articlePrimKey = journalArticle.getResourcePrimKey() />
23<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") />
24<#assign asset = assetEntryLocalService.getEntry('com.liferay.journal.model.JournalArticle', journalArticle.resourcePrimKey) />
25<#assign dlfileEntryLocalServiceUtil = serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryLocalService") />
26
27<#-- Site variabelen ophalen om de link naar aanmelden en e-mailen -->
28<#assign groupService = serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService") />
29<#assign group = themeDisplay.getScopeGroup() />
30<#assign link_contact_formulier = group.getExpandoBridge().getAttribute("link_contact_formulier") />
31<#assign link_default_image_nieuws = group.getExpandoBridge().getAttribute("link_default_image_nieuws") />
32<#assign userpics_url = group.getExpandoBridge().getAttribute("base_url_voor_userpics") />
33
34<#-- Contactformulier URL -->
35<#assign originalLocale = locale>
36<#setting locale = localeUtil.getDefault()>
37<#setting datetime_format = "EEE, dd MMM yyyy hh:mm:ss Z">
38<#assign displaydate = .vars['reserved-article-display-date'].data>
39<#assign displaydate = displaydate?datetime>
40<#assign linkcontactformulierurl = "/en/web/open-universiteit/" + link_contact_formulier />
41<#assign currentNieuwsUrl = request.getAttribute("CURRENT_COMPLETE_URL") />
42
43<#if currentNieuwsUrl?starts_with("http://")>
44 <#assign currentNieuwsUrlHttpHttps = currentNieuwsUrl?replace("http://", "https://") />
45<#else>
46 <#assign currentNieuwsUrlHttpHttps = currentNieuwsUrl />
47</#if>
48
49<#-- Sfeerbeeld -->
50<#if Sfeerbeeld?has_content && Sfeerbeeld.getData()!="">
51 <#assign sfeerbeeld_url = Sfeerbeeld.getData() />
52<#else>
53 <#assign sfeerbeeld_url = link_default_image_nieuws />
54</#if>
55
56<#if sfeerbeeld_url?has_content>
57 <#assign picURL = sfeerbeeld_url />
58 <#assign altText = "" />
59
60 <#if picURL?has_content>
61 <#assign image_url = picURL?split("_head_large.")[0] + "_head_small.jpg" />
62 <#assign uuid = ((picURL?split(".jpg/")[1])!"")?split("?")[0] />
63 <#if uuid?has_content && groupId != 0>
64 <#assign dlfileEntry = dlfileEntryLocalServiceUtil.fetchDLFileEntryByUuidAndGroupId(uuid,getterUtil.getLong(groupId)) />
65 <#assign altText = dlfileEntry.getDescription() />
66 <#if altText == "">
67 <#assign altText = dlfileEntry.getTitle() />
68 </#if>
69 </#if>
70 </#if>
71</#if>
72
73<#-- Twitter en Facebook URL genereren -->
74<#assign Current_URL = currentNieuwsUrlHttpHttps />
75<#assign facebook_URL = Current_URL />
76<#assign titleLinkedIn = htmlUtil.stripHtml(.vars['reserved-article-title'].data) />
77<#assign InleidingLinkedIn = htmlUtil.stripHtml(Inleiding.getData()) />
78<#assign InleidingLinkedIn = InleidingLinkedIn[0..*265] />
79<#assign linkedin_URL = httpUtil.encodeURL(Current_URL) + "&title=" + httpUtil.encodeURL(titleLinkedIn) + "+&summary=+" + httpUtil.encodeURL(InleidingLinkedIn) + "+&source=+" + httpUtil.encodeURL("Open Universiteit") />
80<#assign InleidingAsPlainText = Inleiding.getData()?replace("<.*?>","","r") />
81<#assign mailto = "mailto:?subject=" + languageUtil.get(locale, 'GELEZEN_OP_OU_NL') + " " + .vars['reserved-article-title'].data + "&body=" + InleidingAsPlainText + " [" + Current_URL + "]" />
82
83<#-- Contact persoon informatie ophalen -->
84<#assign Persoon_Tonen = "false" />
85
86<#if Persoon.getChild("Persoon_Tonen").getData()=="true">
87 <#assign Persoon_Tonen = "true" />
88 <#assign Persoon_Gebruikersacroniem = Persoon.getChild("Persoon_Gebruikersacroniem").getData() />
89 <#assign Persoon_Naam = Persoon.getChild("Persoon_Naam").getData() />
90 <#assign Persoon_Titel = Persoon.getChild("Persoon_Titel").getData() />
91 <#if (Persoon.Persoon_Gebruikersacroniem.getData())?has_content>
92 <#assign Persoon_Foto_URL = userpics_url + Persoon.Persoon_Foto_Url.getData() />
93 <#assign Persoon_Link = "/profiel/"+Persoon_Gebruikersacroniem?upper_case />
94 <#else>
95 <#assign Persoon_Foto_URL = Persoon.Persoon_Foto_Url.getData() />
96 </#if>
97 <#if Persoon_Functie?has_content && Persoon_Functie != "">
98 <#assign Persoon_Functie = Persoon.Persoon_Functie.getData() />
99 </#if>
100</#if>
101
102<#-- category name -->
103<#assign vocLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService") />
104<#assign catLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService") />
105<#assign companyGroupId = themeDisplay.getCompanyGroupId() />
106<#assign vocabulary = vocLocalService.getGroupVocabulary(companyGroupId,"Wetenschapsgebied") />
107<#assign vocabularyId = vocabulary.vocabularyId />
108<#assign thema = "" />
109<#assign vocabularyThema = vocLocalService.getGroupVocabulary(companyGroupId,"Thema") />
110<#assign vocabularyThemaId = vocabularyThema.vocabularyId />
111<#assign articleCatNames = catLocalService.getCategoryNames("com.liferay.journal.model.JournalArticle", getterUtil.getLong(articlePrimKey)) />
112<#assign categories = catLocalService.getCategories("com.liferay.journal.model.JournalArticle", getterUtil.getLong(articlePrimKey)) />
113<#assign categoryName = "corporate" />
114<#list categories as category>
115 <#if category.vocabularyId == vocabularyId>
116 <#assign categoryName = category.getName() />
117 <#assign categoryName = categoryName?replace("\\W", " ", "r")?replace("\\s+", "-", "r")?lower_case />
118 <#if categoryName?starts_with("-")>
119 <#assign categoryName = categoryName?string[1] />
120 </#if>
121 <#elseif category.vocabularyId == vocabularyThemaId>
122 <#assign thema = category.getName() />
123 </#if>
124</#list>
125
126<#assign colorKey = " bg--corporate " />
127<#if categoryName == "cultuurwetenschappen">
128 <#assign colorKey = " bg--cw " />
129<#elseif categoryName == "milieu-natuurwetenschappen" || categoryName == "natuurwetenschappen" />
130 <#assign colorKey = " bg--nw " />
131<#elseif categoryName == "informatica" || categoryName == "informatiekunde"/>
132 <#assign colorKey = " bg--inf " />
133<#elseif categoryName == "managementwetenschappen" />
134 <#assign colorKey = " bg--mw " />
135<#elseif categoryName == "onderwijswetenschappen" />
136 <#assign colorKey = " bg--ow " />
137<#elseif categoryName == "psychologie" />
138 <#assign colorKey = " bg--psy " />
139<#elseif categoryName == "rechtswetenschappen" />
140 <#assign colorKey = " bg--rw " />
141<#elseif categoryName == "gezondheidswetenschappen" />
142 <#assign colorKey = " bg--gw " />
143</#if>
144
145<#-- Create link for meer lezen -->
146<#assign overzichtlink = group.getExpandoBridge().getAttribute("link_naar_alle_items_Artikelen") />
147<#assign vocabularySoort = vocLocalService.getGroupVocabulary(companyGroupId,"Soort") />
148<#assign vocabularyIdSoort = vocabularySoort.vocabularyId />
149<#assign tekstNaarAlleArtikelen = "Meer artikelen" />
150<#assign tekstInBreadcrumb = "Artikelen" />
151<#list categories as category>
152 <#if category.vocabularyId == vocabularyIdSoort>
153 <#assign soortCategory = category.getName() />
154 <#assign overzichtlink = overzichtlink + "?categorieen=${soortCategory}" />
155 <#if soortCategory?upper_case == "NIEUWSBERICHT">
156 <#assign tekstInBreadcrumb = "Nieuwsbericht" />
157 <#assign tekstNaarAlleArtikelen = "Meer nieuwsberichten" />
158 <#elseif soortCategory?upper_case == "WEBCOLUMN">
159 <#assign tekstInBreadcrumb = "Webcolumns" />
160 <#assign tekstNaarAlleArtikelen = "Meer webcolumns" />
161 <#elseif soortCategory?upper_case == "PODCAST">
162 <#assign tekstInBreadcrumb = "Podcasts" />
163 <#assign tekstNaarAlleArtikelen = "Meer Podcasts" />
164 </#if>
165 <#if thema?? && thema?has_content>
166 <#assign filterThema = thema?replace("\\s+", "+", "r") />
167 <#assign overzichtlink = overzichtlink + ",${filterThema}" />
168 </#if>
169 </#if>
170</#list>
171
172<#list asset.getTags() as tag>
173 <#if tag.name == "persbericht">
174 <#assign tekstNaarAlleArtikelen = "Meer persberichten" />
175 <#assign tekstInBreadcrumb = "Persberichten" />
176 <#assign overzichtlink = group.getExpandoBridge().getAttribute("persberichten_overzichtspagina") />
177 </#if>
178</#list>
179<#assign titleFlipped = false />
180<#list asset.getTags() as tag>
181 <#if tag.name == "fliptitle">
182 <#assign titleFlipped = true />
183 </#if>
184</#list>
185<!-- START BREADCRUMB -->
186<section class="container-fluid section breadcrumbs">
187 <div class="layout__content-container">
188 <ul aria-label="Klikpad" class="breadcrumb breadcrumb-horizontal">
189 <li class="first breadcrumb-truncate"><a href="/en/web/open-universiteit">Open Universiteit</a><span class="divider">/</span></li>
190 <li class="current-parent breadcrumb-truncate"><a href="/en/web/open-universiteit/${overzichtlink}">${tekstInBreadcrumb}</a><span class="divider">/</span></li>
191 <li class="active last breadcrumb-truncate"><a href="${currentNieuwsUrlHttpHttps}">${htmlUtil.stripHtml(.vars['reserved-article-title'].data)} </a><span class="divider">/</span></li>
192 </ul>
193 </div>
194</section>
195
196<!-- START FULL IMAGE -->
197<section class="container-fluid section padding-top padding-bottom">
198 <div class="full-image full-image--smaller">
199 <div class="full-image__bg">
200 <img src="${image_url}" alt="${altText}" style="display:none"/>
201 <div class="full-image__bg__img" id="Article_${.vars['reserved-article-id'].data}" style="background: url('${image_url}') no-repeat center; background-size: cover;"></div>
202 </div>
203 <#if !titleFlipped>
204 <div class="full-image__content">
205 <div class="layout__content-container">
206 <div class="row">
207 <div class="col-md-12">
208 <#if thema?? && thema?has_content && !getterUtil.getBoolean((Titel_Verbergen.getData())!false)>
209 <span class="o-label ${colorKey}">${thema}</span>
210 <div class="full-image__content__title">${.vars['reserved-article-title'].data}</div>
211 <#elseif !getterUtil.getBoolean((Titel_Verbergen.getData())!false)>
212 <div class="full-image__content__title">${.vars['reserved-article-title'].data}</div>
213 <div class="full-image__content__stripe ${colorKey}"></div>
214 </#if>
215 </div>
216 </div>
217 </div>
218 </div>
219 </#if>
220 </div>
221</section>
222<!-- END FULL IMAGE -->
223
224<!-- START SECTION - CONTENT -->
225<section class="container-fluid section padding-top padding-bottom">
226 <div class="layout__content-container">
227 <div class="content">
228 <div class="row">
229 <div class="content__left col-xs-12 col-md-8">
230 <#if titleFlipped>
231 <div>
232 <#if !getterUtil.getBoolean((Titel_Verbergen.getData())!false)>
233 <h1 style="margin: 0 20px 20px 0">${.vars['reserved-article-title'].data}</h1>
234 </#if>
235 </div>
236 </#if>
237 <div class="paragraph--intro">
238 ${Inleiding.getData()}
239 </div>
240 <div>
241 ${Artikel.getData()}
242 </div>
243 <div class="social-media social-media__intro">
244 <ul class="social-media__container">
245 <li class="social-media__item"><a href="https://www.facebook.com/share.php?u=${facebook_URL}" class="fa fa-facebook" target="_blank"></a></li>
246 <li class="social-media__item"><a href="https://www.linkedin.com/shareArticle?mini=true&url=${linkedin_URL}" class="fa fa-linkedin" target="_blank"></a></li>
247 <li class="social-media__item"><a href="${mailto}" class="fa fa-envelope-o" target="_blank"></a></li>
248 <li class="social-media__item"><a onclick="printFunction()" class="fa fa-print" target="_blank"></a></li>
249 </ul>
250 </div>
251 <div class="content__date">Laatst gewijzigd op: ${displaydate?datetime?string("d MMM yyyy H:mm")}</div>
252 <div class="m-t-l m-b-l" style="text-align: center;">
253 <a href="${overzichtlink}" class="btn btn--tertiary btn--right ">${tekstNaarAlleArtikelen}</a>
254 <a href="https://www.ou.nl/aanmelden-nieuwsbrieven" target="_blank" class="btn btn--primary btn--left ">Aanmelden nieuwsbrieven</a>
255 </div>
256 </div>
257
258 <div class="content__right pull-top col-padding-left col-xs-12 col-md-4">
259 <#if Persoon_Tonen=="true">
260 <a href="${Persoon_Link}" class="person person--small bg__gray sidebar-widget" data-senna-off="true" target="_blank">
261 <div class="person__container">
262 <#if Persoon.Persoon_Foto_Url.getData() != "">
263 <div class="person__photo person__photo__large" style="background: url(${Persoon_Foto_URL}) no-repeat center; background-size: cover;"></div>
264 </#if>
265 <div class="person__content">
266 <div class="person__name">${Persoon_Titel} ${Persoon_Naam}</div>
267 <#if Persoon_Functie?has_content && Persoon_Functie != "">
268 <div class="person__function">${Persoon_Functie}</div>
269 </#if>
270 </div>
271 </div>
272 </a>
273 </#if>
274
275 <#if Publicatie?has_content && Publicatie.getSiblings()?first.Publicatie_Titel.getData()?has_content>
276 <div class="publications-widget bg__gray sidebar-widget">
277 <div class="publications-widget__container">
278 <div class="section-title sidebar-widget__title">
279 <h4>Publicaties </h4>
280 <div class="section-title__stripe"></div>
281 </div>
282 <div class="list list-navigation">
283 <ul>
284 <#list Publicatie.getSiblings() as Publicatie>
285 <li>
286 <a class="list-navigation__item" href="${Publicatie.Publicatie_Link.getData()}">
287 <div class="list-navigation__item__content">
288 <div class="publications-widget__title">
289 ${Publicatie.Publicatie_Titel.getData()}
290 </div>
291 <div class="publications-widget__content">
292 ${Publicatie.Publicatie_Beschrijving.getData()}
293 </div>
294 </div>
295 <div class="list-navigation__item__arrow">
296 <span class="fa fa-chevron-right"></span>
297 </div>
298 </a>
299 </li>
300 </#list>
301 </ul>
302 </div>
303 </div>
304 </div>
305 </#if>
306
307 <#if Gerelateerde_studies?has_content && Gerelateerde_studies.getChild("Opleidingcode").getData()?has_content>
308 <#assign Gerelateerde_studies = Gerelateerde_studies.getChild("Opleidingcode").getSiblings() />
309
310 <div class="related-education-widget bg__gray sidebar-widget">
311 <div class="section-title sidebar-widget__title">
312 <h4>Gerelateerde studies</h4>
313 <div class="section-title__stripe"></div>
314 </div>
315 <div class="list list-navigation">
316 <ul>
317 <#list Gerelateerde_studies as studieCode>
318 <#assign Sku = studieCode.getData() />
319 <#assign Opleidinglink = "/opleiding?sku=" + Sku />
320 <#assign opleidingArticle = "" />
321 <#assign opleidingArticle = (journalArticleLocalService.fetchArticle(getterUtil.getLong(groupId), Sku))! />
322
323 <#if opleidingArticle?has_content>
324 <#assign Opleidingnaam = "" />
325 <#assign Opleidingnaam = opleidingArticle.getTitle(locale) />
326 <#assign document = saxReaderUtil.read(opleidingArticle.getContentByLocale(locale)) />
327 <#assign rootElement = document.getRootElement() />
328 <#assign Studievorm = "" />
329 <#assign xPathSelector = saxReaderUtil.createXPath("dynamic-element[@name='Studievorm']") />
330 <#assign Studievorm = xPathSelector.selectSingleNode(rootElement).getStringValue() />
331 <#assign Studiepunten = "" />
332 <#assign xPathSelector = saxReaderUtil.createXPath("dynamic-element[@name='Studiepunten']") />
333 <#assign Studiepunten = xPathSelector.selectSingleNode(rootElement).getStringValue() />
334 <#assign Wetenschapsgebied = "" />
335 <#assign xPathSelector = saxReaderUtil.createXPath("dynamic-element[@name='Wetenschapsgebied']") />
336 <#assign Wetenschapsgebied = xPathSelector.selectSingleNode(rootElement).getStringValue() />
337 <#assign Wetenschapsgebied = Wetenschapsgebied?replace("\\W", " ", "r")?trim?replace("\\s+", "-", "r")?lower_case />
338
339 <#assign SkuColor = " bg--corporate " />
340 <#if Wetenschapsgebied == "cultuurwetenschappen">
341 <#assign SkuColor = " bg--cw " />
342 <#elseif Wetenschapsgebied == "milieu-natuurwetenschappen" || categoryName == "natuurwetenschappen" />
343 <#assign SkuColor = " bg--nw " />
344 <#elseif Wetenschapsgebied == "informatica-en-informatiekunde" />
345 <#assign SkuColor = " bg--inf " />
346 <#elseif Wetenschapsgebied == "managementwetenschappen" />
347 <#assign SkuColor = " bg--mw " />
348 <#elseif Wetenschapsgebied == "onderwijswetenschappen" />
349 <#assign SkuColor = " bg--ow " />
350 <#elseif Wetenschapsgebied == "psychologie" />
351 <#assign SkuColor = " bg--psy " />
352 <#elseif Wetenschapsgebied == "rechtswetenschappen" />
353 <#assign SkuColor = " bg--rw " />
354 <#elseif Wetenschapsgebied == "gezondheidswetenschappen" />
355 <#assign SkuColor = " bg--gw " />
356 </#if>
357
358 <li>
359 <#if Sku?contains("-")>
360 <a href="${Opleidinglink}" class="list-navigation__item list__item" style="display:table;">
361 <div class="related-education-widget__tile ${SkuColor}" style="line-height:20px; display:table-cell; vertical-align:middle;" data-wg="${Wetenschapsgebied}">
362 <#assign index = Sku?index_of("-") + 1 />
363 <#assign sku1 = Sku?substring(0, index) />
364 <#assign sku2 = Sku?substring(index, Sku?length) />
365 ${sku1}</br>
366 ${sku2}
367 </div>
368 <div class="related-education-widget__content" style="margin-left:10px;">
369 <div class="list__item__description">${Studievorm}| ${Studiepunten}</div>
370 <h4 class="list__item__title">${Opleidingnaam}</h4>
371 </div>
372 <div class="list-navigation__item__arrow">
373 <span class="fa fa-chevron-right"></span>
374 </div>
375 </a>
376 <#else>
377 <a href="${Opleidinglink}" class="list-navigation__item list__item">
378 <div class="related-education-widget__tile ${SkuColor}" data-wg="${Wetenschapsgebied}">
379 ${Sku}
380 </div>
381 <div class="related-education-widget__content">
382 <div class="list__item__description">${Studievorm}| ${Studiepunten}</div>
383 <h4 class="list__item__title">${Opleidingnaam}</h4>
384 </div>
385 <div class="list-navigation__item__arrow">
386 <span class="fa fa-chevron-right"></span>
387 </div>
388 </a>
389 </#if>
390 </li>
391 </#if>
392 </#list>
393 </ul>
394 </div>
395 </div>
396 </#if>
397
398
399 <#if GerelateerdOnderzoek?has_content && GerelateerdOnderzoek.getSiblings()?first.Onderzoek_Titel.getData()?has_content>
400 <div class="publications-widget bg__gray sidebar-widget">
401 <div class="publications-widget__container">
402 <div class="section-title sidebar-widget__title">
403 <h4>Gerelateerd onderzoek </h4>
404 <div class="section-title__stripe"></div>
405 </div>
406 <div class="list list-navigation">
407 <ul>
408 <#list GerelateerdOnderzoek.getSiblings() as GerelateerdOnderzoek>
409 <li>
410 <a class="list-navigation__item" href="${GerelateerdOnderzoek.Onderzoek_Link.getData()}">
411 <div class="list-navigation__item__content">
412 <div class="publications-widget__title">
413 ${GerelateerdOnderzoek.Onderzoek_Titel.getData()}
414 </div>
415 <div class="publications-widget__content">
416 ${GerelateerdOnderzoek.Onderzoek_Beschrijving.getData()}
417 </div>
418 </div>
419 <div class="list-navigation__item__arrow">
420 <span class="fa fa-chevron-right"></span>
421 </div>
422 </a>
423 </li>
424 </#list>
425 </ul>
426 </div>
427 </div>
428 </div>
429 </#if>
430
431 <#if Podcast?has_content && Podcast.getSiblings()?first.Podcast_Titel.getData()?has_content>
432 <div class="publications-widget bg__gray sidebar-widget">
433 <div class="publications-widget__container">
434 <div class="section-title sidebar-widget__title">
435 <h4>Podcast </h4>
436 <div class="section-title__stripe"></div>
437 </div>
438 <div class="list list-navigation">
439 <ul>
440 <#list Podcast.getSiblings() as Podcast>
441 <li>
442 <a class="list-navigation__item" href="${Podcast.Podcast_Link.getData()}">
443 <div class="list-navigation__item__content">
444 <div class="publications-widget__title">
445 ${Podcast.Podcast_Titel.getData()}
446 </div>
447 <div class="publications-widget__content">
448 ${Podcast.Podcast_Beschrijving.getData()}
449 </div>
450 </div>
451 <div class="list-navigation__item__arrow">
452 <span class="fa fa-chevron-right"></span>
453 </div>
454 </a>
455 </li>
456 </#list>
457 </ul>
458 </div>
459 </div>
460 </div>
461 </#if>
462 </div>
463 </div>
464 </div>
465 </div>
466</section>
467<!-- END SECTION - CONTENT -->
468<script>
469 history.scrollRestoration = "manual";
470 $(document).ready(function() {
471 $("html,body").animate({scrollTop: 0}, 100); //100ms for example
472 });
473</script>