Publications Office of the EU
Interinstitutional Digital Publishing Committee (IDPC) 2023 plenary meeting - IDPC 2023
DisplayCustomHeader
banner 2023

Interinstitutional Digital Publishing Committee
 

Presentation of the speakers

- Presentation of the speakers -

Objavitelj imovine
Došlo je do pogreške prilikom obrade predloška.
The following has evaluated to null or missing:
==> assetRenderer.getArticle  [in template "10157#10197#10161518" at line 124, column 44]

----
Tip: It's the step after the last dot that caused this error, not those before it.
----
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: #assign article = assetRenderer.getAr...  [in template "10157#10197#10161518" at line 124, column 25]
----
1<style> 
2@media (min-width: 1200px) { 
3    .col5 { 
4        flex: 0 0 25%; 
5        max-width: 25%; 
6        padding-left: 13px; 
7        padding-right: 13px; 
8
9
10 
11@media (min-width: 1200px) { 
12    .col5 { 
13        flex: 0 0 20%; 
14        max-width: 20%; 
15        padding-left: 13px; 
16        padding-right: 13px; 
17
18
19 
20.speakerName { 
21    font-size: 17px; 
22    line-height: 1.15; 
23    color: #444444; 
24
25 
26.speakerJobDescription { 
27    font-size: 13px; 
28    line-height: 1.35; 
29    color: #757575; 
30    padding: 3px 0 11px 0; 
31    font-weight:bold; 
32
33 
34.SpeakerOptionText { 
35    font-size: 13px; 
36    line-height: 18px; 
37    color: #666666; 
38
39 
40.EventSpeakers .card { 
41    border: unset; 
42    border-radius: unset; 
43    background: unset; 
44    padding: unset; 
45
46 
47.EventSpeakers .card-body { 
48    padding: 15px 0 15px 0; 
49
50 
51/* 
52.EventSpeakers .twitterIcon { 
53    background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M19.7029 4.11418C19.0071 4.42251 18.2596 4.63085 17.4737 4.72501C18.2846 4.23984 18.8912 3.47624 19.1804 2.57668C18.4186 3.02917 17.5849 3.34768 16.7154 3.51835C16.1307 2.89407 15.3563 2.48029 14.5124 2.34124C13.6684 2.2022 12.8022 2.34567 12.0481 2.74939C11.2941 3.15311 10.6944 3.79448 10.3422 4.57393C9.99003 5.35338 9.90503 6.22731 10.1004 7.06001C8.55682 6.98251 7.04677 6.5813 5.66827 5.88243C4.28977 5.18356 3.07362 4.20265 2.09875 3.00335C1.76542 3.57835 1.57375 4.24501 1.57375 4.95501C1.57338 5.59418 1.73078 6.22355 2.03198 6.78729C2.33319 7.35103 2.76888 7.83171 3.30042 8.18668C2.68398 8.16707 2.08114 8.0005 1.54208 7.70085V7.75085C1.54202 8.6473 1.85211 9.51616 2.41974 10.21C2.98736 10.9039 3.77756 11.38 4.65625 11.5575C4.0844 11.7123 3.48486 11.7351 2.90292 11.6242C3.15083 12.3955 3.63375 13.07 4.28406 13.5533C4.93437 14.0365 5.71951 14.3043 6.52958 14.3192C5.15444 15.3987 3.45616 15.9843 1.70792 15.9817C1.39823 15.9818 1.08881 15.9637 0.78125 15.9275C2.55581 17.0685 4.62153 17.674 6.73125 17.6717C13.8729 17.6717 17.7771 11.7567 17.7771 6.62668C17.7771 6.46001 17.7729 6.29168 17.7654 6.12501C18.5248 5.57583 19.1803 4.89576 19.7013 4.11668L19.7029 4.11418Z' fill='%233D6ECF'/%3E%3C/svg%3E%0A"); 
54    content: " "; 
55    width:20px; 
56    height:20px; 
57    background-repeat:no-repeat; 
58    display: inline-block; 
59
60*/ 
61 
62.EventSpeakers .xIcon { 
63    width: 20px; 
64    height: 20px; 
65    display: inline-flex; 
66    justify-content: center; 
67    align-items: center; 
68
69.EventSpeakers .xIcon .gs-icon-twitter { 
70    padding: 0 !important; 
71    margin: 0 !important; 
72
73 
74.EventSpeakers .linkedinIcon{ 
75    background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0.833008 2.36501C0.833008 1.95879 0.99438 1.5692 1.28162 1.28196C1.56887 0.994717 1.95845 0.833346 2.36467 0.833346H17.633C17.8343 0.833017 18.0337 0.872398 18.2198 0.949234C18.4059 1.02607 18.575 1.13885 18.7174 1.28113C18.8598 1.4234 18.9728 1.59237 19.0498 1.77835C19.1269 1.96434 19.1665 2.1637 19.1663 2.36501V17.6333C19.1666 17.8347 19.1271 18.0341 19.0501 18.2202C18.9732 18.4063 18.8604 18.5754 18.718 18.7178C18.5757 18.8602 18.4067 18.9731 18.2206 19.0502C18.0346 19.1272 17.8352 19.1668 17.6338 19.1667H2.36467C2.16346 19.1667 1.96422 19.127 1.77834 19.05C1.59245 18.973 1.42357 18.8601 1.28133 18.7178C1.13909 18.5755 1.02628 18.4065 0.94936 18.2206C0.872436 18.0347 0.832899 17.8354 0.833008 17.6342V2.36501ZM8.08967 7.82335H10.5722V9.07001C10.9305 8.35335 11.8472 7.70835 13.2247 7.70835C15.8655 7.70835 16.4913 9.13585 16.4913 11.755V16.6067H13.8188V12.3517C13.8188 10.86 13.4605 10.0183 12.5505 10.0183C11.288 10.0183 10.763 10.9258 10.763 12.3517V16.6067H8.08967V7.82335ZM3.50634 16.4925H6.17967V7.70835H3.50634V16.4917V16.4925ZM6.56217 4.84335C6.56721 5.07224 6.52648 5.29983 6.44237 5.51277C6.35826 5.72571 6.23247 5.91971 6.07237 6.08337C5.91227 6.24704 5.72109 6.37707 5.51005 6.46585C5.29902 6.55463 5.07237 6.60036 4.84342 6.60036C4.61448 6.60036 4.38783 6.55463 4.1768 6.46585C3.96576 6.37707 3.77458 6.24704 3.61448 6.08337C3.45438 5.91971 3.32859 5.72571 3.24447 5.51277C3.16036 5.29983 3.11963 5.07224 3.12467 4.84335C3.13457 4.39406 3.32 3.9665 3.64125 3.65225C3.9625 3.338 4.39403 3.16203 4.84342 3.16203C5.29282 3.16203 5.72435 3.338 6.0456 3.65225C6.36685 3.9665 6.55228 4.39406 6.56217 4.84335Z' fill='%23004494'/%3E%3C/svg%3E%0A"); 
76    content: " "; 
77    width:20px; 
78    height:20px; 
79    background-repeat:no-repeat; 
80    display: inline-block; 
81
82 
83.EventSpeakers .moreInfo { 
84    font-size: 13px; 
85    vertical-align: 5px; 
86    line-height: 18px; 
87    color: #3366CC !important; 
88    text-decoration-line: underline !important; 
89    display: inline-block; 
90
91 
92.EventSpeakers .cardImg { 
93    width:100%; 
94
95 
96.EventSpeakers a { 
97    color: #3366CC !important; 
98    text-decoration:underline !important; 
99
100.speaker-links{ 
101    display:inline; 
102
103 
104.speaker-links * { 
105    float: left; 
106    margin-right: 5px; 
107
108 
109.speaker-links p{ 
110    margin:0; 
111    display: inline; 
112
113 
114.col-sm-6.col-md-3.col-lg-3.col5 { 
115    padding-bottom: 15px; 
116
117</style> 
118<div class="EventSpeakers row"> 
119<#if entries?has_content> 
120		<#list entries as curEntry> 
121			<#assign curEntry = curEntry /> 
122			<#assign assetRenderer = curEntry.getAssetRenderer() /> 
123			<#assign className = assetRenderer.getClassName() /> 
124			<#assign article = assetRenderer.getArticle() /> 
125			<#assign docXml = saxReaderUtil.read(curEntry.getAssetRenderer().getArticle().getContent()) /> 
126 
127			<#assign rootElement = docXml.getRootElement() /> 
128			<#assign availableLocales = rootElement.attribute("available-locales").getText() /> 
129			<#assign defaultLocale = rootElement.attribute("default-locale").getText() /> 
130			 
131			<#if  article.isApproved() > 
132				<#assign articleId = article.getArticleId() /> 
133				 
134				<#assign img = docXml.valueOf("//dynamic-element[@name='SpeakerPhoto']/dynamic-content[@language-id='"+defaultLocale+"']/text()") /> 
135				<#assign jsonimg = jsonFactoryUtil.createJSONObject(img)> 
136				<#assign urlJsonImg = "/documents/" > 
137				<#assign urlJsonImg = urlJsonImg + jsonimg.groupId > 
138				<#assign urlJsonImg = urlJsonImg + "/" + jsonimg.fileEntryId > 
139				<#assign urlJsonImg = urlJsonImg + "/" + jsonimg.name > 
140				<#assign urlJsonImg = urlJsonImg + "/" + jsonimg.uuid > 
141				<#assign altImg = jsonimg.alt > 
142				 
143				<#if (availableLocales?contains(locale)) > 
144					<#assign speakerName = docXml.valueOf("//dynamic-element[@name='SpeakerName']/dynamic-content[@language-id='"+locale+"']/text()") /> 
145					<#assign SpeakerSurname = docXml.valueOf("//dynamic-element[@name='SpeakerSurname']/dynamic-content[@language-id='"+locale+"']/text()") /> 
146					<#assign JobTitle = docXml.valueOf("//dynamic-element[@name='JobTitle']/dynamic-content[@language-id='"+locale+"']/text()") /> 
147					<#assign optionalInformation = docXml.valueOf("//dynamic-element[@name='OptionalInformation']/dynamic-content[@language-id='"+locale+"']/text()") /> 
148					<#assign MoreInfoHTML = docXml.valueOf("//dynamic-element[@name='MoreInfoHTML']/dynamic-content[@language-id='"+locale+"']/text()") /> 
149					<#assign LinkedinURL = docXml.valueOf("//dynamic-element[@name='LinkedinURL']/dynamic-content[@language-id='"+locale+"']/text()") /> 
150					<#assign TwitterURL = docXml.valueOf("//dynamic-element[@name='TwitterURL']/dynamic-content[@language-id='"+locale+"']/text()") /> 
151				<#else> 
152					<#assign speakerName = docXml.valueOf("//dynamic-element[@name='SpeakerName']/dynamic-content[@language-id='"+defaultLocale+"']/text()") /> 
153					<#assign SpeakerSurname = docXml.valueOf("//dynamic-element[@name='SpeakerSurname']/dynamic-content[@language-id='"+defaultLocale+"']/text()") /> 
154					<#assign JobTitle = docXml.valueOf("//dynamic-element[@name='JobTitle']/dynamic-content[@language-id='"+defaultLocale+"']/text()") /> 
155					<#assign optionalInformation = docXml.valueOf("//dynamic-element[@name='OptionalInformation']/dynamic-content[@language-id='"+defaultLocale+"']/text()") /> 
156					<#assign MoreInfoHTML = docXml.valueOf("//dynamic-element[@name='MoreInfoHTML']/dynamic-content[@language-id='"+defaultLocale+"']/text()") /> 
157					<#assign LinkedinURL = docXml.valueOf("//dynamic-element[@name='LinkedinURL']/dynamic-content[@language-id='"+defaultLocale+"']/text()") /> 
158					<#assign TwitterURL = docXml.valueOf("//dynamic-element[@name='TwitterURL']/dynamic-content[@language-id='"+defaultLocale+"']/text()") /> 
159				</#if> 
160				 
161			<div class="col-sm-6 col-md-3 col-lg-3 col5"> 
162				<div class="card"> 
163                    <img src="${urlJsonImg}" class="cardImg" alt="${altImg}"> 
164                      <div class="card-body"> 
165                        <h5 class="card-title speakerName">${speakerName} ${SpeakerSurname}</h5> 
166                        <#if JobTitle != ''> 
167                            <div class="card-title speakerJobDescription">${JobTitle}</div> 
168                        </#if> 
169                        <p class="card-text SpeakerOptionText">${optionalInformation}</p> 
170                            <div class="speaker-links"> 
171                            <#if TwitterURL != ''> 
172                                <a href="${TwitterURL}" class="xIcon" aria-label="X ${speakerName}"><i class="gs-icon-twitter" aria-hidden="true"></i></a> 
173                            </#if> 
174                            <#if LinkedinURL != ''> 
175                            <a href="${LinkedinURL}" class="linkedinIcon" aria-label="Linkedin ${speakerName}"></a> 
176                            </#if> 
177                             
178                                ${MoreInfoHTML} 
179                            </div> 
180                      </div> 
181                </div> 
182            </div> 
183			</#if> 
184			 
185		</#list> 
186	</#if> 
187		</div>