BIS: Suche und Detail

Fehler bei der Verarbeitung der Vorlage.
The following has evaluated to null or missing:
==> employeeData.einrichtungList[0]  [in template "33396#33431#71035" at line 1206, column 40]

----
Tip: It's the final [] step 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 einrichtung = employeeData.ei...  [in template "33396#33431#71035" in macro "employeesExport16" at line 1206, column 17]
	- Reached through: @employeesExport16 employeeData=mitar...  [in template "33396#33431#71035" at line 1153, column 5]
----
1<#assign 
2aui = PortletJspTagLibs["/META-INF/liferay-aui.tld"] 
3liferay_portlet = PortletJspTagLibs["/META-INF/liferay-portlet-ext.tld"] 
4liferay_security = PortletJspTagLibs["/META-INF/liferay-security.tld"] 
5liferay_theme = PortletJspTagLibs["/META-INF/liferay-theme.tld"] 
6liferay_ui = PortletJspTagLibs["/META-INF/liferay-ui.tld"] 
7liferay_util = PortletJspTagLibs["/META-INF/liferay-util.tld"] 
8portlet = PortletJspTagLibs["/META-INF/liferay-portlet.tld"] 
9/> 
10 
11<@liferay_theme["defineObjects"]/> 
12<@portlet["defineObjects"]/> 
13 
14<#assign 
15bis2017 = vr.bis2017 
16utils = vr.utils2017 
17ansicht = utils.ansicht 
18current_url_WithHtml = themeDisplay.getPortalURL() 
19current_uri_WithHtml = themeDisplay.getURLCurrent() 
20currentURL = current_url_WithHtml + current_uri_WithHtml 
21login_url=  getterUtil.getString(themeDisplay.getThemeSetting("Login-URI")) 
22 
23login_url1_WithHtml = 'href="'+login_url+'?p_p_id=com_liferay_login_web_portlet_LoginPortlet&p_p_lifecycle=0&_com_liferay_login_web_portlet_LoginPortlet_redirect=' 
24login_url2_WithHtml = '" rel="nofollow" data-redirect="true"' 
25login_url_WithHtml = login_url1_WithHtml + current_url_WithHtml + current_uri_WithHtml + login_url2_WithHtml 
26 
27header_type = getterUtil.getString(themeDisplay.getThemeSetting("header-type")) 
28hasLongHeader = header_type == 'long' 
29vr_details_card_padding = getterUtil.getBoolean(themeDisplay.getThemeSetting("03-vr-details-card-padding")) 
30 
31showTags = getterUtil.getBoolean(themeDisplay.getThemeSetting("01-show-tags")) 
32 
33showCollapse = getterUtil.getBoolean(themeDisplay.getThemeSetting("03-vr-details-show-collapse")) 
34collapseIcon = getterUtil.getString(themeDisplay.getThemeSetting("03-vr-details-left-collapse-icon")) 
35collapseOnlineServcieIcon = getterUtil.getString(themeDisplay.getThemeSetting("03-vr-details-left-collapse-online-services-icon")) 
36 
37IconBeforeOnlineServices = getterUtil.getString(themeDisplay.getThemeSetting("03-vr-details-left-online-services-icon")) 
38downloadsIcon = getterUtil.getString(themeDisplay.getThemeSetting("03-vr-details-left-downloads-icon")) 
39linksAsButton =  getterUtil.getBoolean(themeDisplay.getThemeSetting("03-vr-details-right-online-services-as-button")) 
40showLines = !showCollapse 
41 
42showEmployeesCollapse = getterUtil.getBoolean(themeDisplay.getThemeSetting("03-vr-details-show-employees-collapse")) 
43showEmployeesCollapseAs = getterUtil.getString(themeDisplay.getThemeSetting("03-vr-details-show-employees-collapse-as")) 
44employeesCollapseIcon = getterUtil.getString(themeDisplay.getThemeSetting("03-vr-details-employees-collapse-icon")) 
45 
46showEmployeeMap = getterUtil.getBoolean(themeDisplay.getThemeSetting("03-vr-details-show-employee-map")) 
47showFacilityMap = getterUtil.getBoolean(themeDisplay.getThemeSetting("03-vr-details-show-facility-map")) 
48 
49showOnlineServicesInMainContent = getterUtil.getBoolean(themeDisplay.getThemeSetting("03-vr-details-left-online-services-show")) 
50 
51showOnlineServicesInMobilePosition = getterUtil.getString(themeDisplay.getThemeSetting("03-vr-details-show-online-services-in-mobile")) 
52 
53plid = themeDisplay.getPlid() 
54createAccountURL = portletURLFactory.create(renderRequest,"com_liferay_login_web_portlet_LoginPortlet", plid,"RENDER_PHASE") 
55 
56vsmGebietID = getterUtil.getString(themeDisplay.getThemeSetting("vsm-gebiet-id")) 
57 
58formularWithLogin = getterUtil.getBoolean(themeDisplay.getThemeSetting("03-vr-details-formular-with-login")) 
59showDLIcons =  getterUtil.getBoolean(themeDisplay.getThemeSetting("03-vr-details-show-icon-legend")) 
60showDLPersoLogo = false 
61showDLMoneyIcon = false 
62showDLLockIcon = false 
63 
64showEinrichtungAnschriftName =    getterUtil.getBoolean(themeDisplay.getThemeSetting("03-vr-details-show-einrichtung-anschrift-name")) 
65showEinrichtungAnschriftNameAlt=  getterUtil.getString(themeDisplay.getThemeSetting("03-vr-details-show-einrichtung-anschrift-name-alt")) 
66 
67eIDLoginURLLevel3 =  getterUtil.getString(themeDisplay.getThemeSetting("03-vr-details-show-eid-login-url-level3")) 
68eIDLoginURLLevel4 =  getterUtil.getString(themeDisplay.getThemeSetting("03-vr-details-show-eid-login-url-level4")) 
69 
70barrierefreiheitserklaerung_kartenerklarung =  getterUtil.getString(themeDisplay.getThemeSetting("barrierefreiheitserklaerung-kartenerklarung")) 
71barrierefreiheitserklaerung_url =  getterUtil.getString(themeDisplay.getThemeSetting("barrierefreiheitserklaerung-url")) 
72 
73loginForAllExtensions = getterUtil.getBoolean(themeDisplay.getThemeSetting("login-for-all-extensions")) 
74 
75downloadCollapse = getterUtil.getBoolean(themeDisplay.getThemeSetting("03-vr-details-show-documents-collapse")) 
76downloadCollapseIcon = getterUtil.getString(themeDisplay.getThemeSetting("03-vr-details-documents-collapse-icon")) 
77downloadCollapseShowAs = getterUtil.getString(themeDisplay.getThemeSetting("03-vr-details-show-documents-collapse-as")) 
78 
79dienstleistungShow = "vr-bis-detail-dienstleistung-show" 
80einrichtungShow = "vr-bis-detail-einrichtung-show" 
81mitarbeiterShow = "vr-bis-detail-mitarbeiter-show" 
82/> 
83 
84${createAccountURL.setParameter("mvcRenderCommandName", "/login/create_account")} 
85${createAccountURL.setParameter("p_p_state", "maximized")} 
86${createAccountURL.setParameter("p_p_mode", "view")} 
87 
88 
89<#if hasLongHeader> 
90    <#assign showLeftInCard = true/> 
91<#else> 
92    <#assign showLeftInCard = !vr_details_card_padding?? && vr_details_card_padding != 0 && vr_details_card_padding != '0' /> 
93</#if> 
94 
95 
96 
97<@portletSearch /> 
98<#if bis2017.ausgewaehlteDienstleistung??> 
99<#-- Dienstleistungen --> 
100    <#assign 
101    dienstleistung = bis2017.ausgewaehlteDienstleistung 
102    textmodul = dienstleistung.textmodul 
103    /> 
104 
105    <div class="row"> 
106        <div class="col-12 col-sm-12 col-md-8 px-4 pl-lg-3"> 
107            <div class="mdl--page__default__01 vr-details-left"> 
108                <#if showLeftInCard> 
109                <div class="card"> 
110                    </#if> 
111                    <div class="service-detail-header"> 
112                        <div class="sideHeadline" id="seitentitel"> 
113                            <h1 class="m-0">${dienstleistung.name}</h1> 
114                        </div> 
115                        <#if showTags > 
116                            <#list dienstleistung.tags as t> 
117                                <span class="badge badge-bot-primary">${t.name}</span> 
118                            </#list> 
119                        </#if> 
120 
121                        <#if existsAndHasContent1(textmodul.kurztext.inhalt!'')> 
122                            <h2 class="sr-only">${getLabelName4(dienstleistung, 'adt.label.dienstleistung.kurztext','Kurzbeschreibung')}</h2> 
123                            ${textmodul.kurztext.inhalt} 
124                        </#if> 
125                    </div> 
126                    <#if showOnlineServicesInMobilePosition == "top" || showOnlineServicesInMobilePosition == "both"> 
127                        <div class="d-block d-md-none w-100"> 
128                            <div class="vr-details-right" style="padding: 0 !important;"> 
129                                <#if existsAndSizeGTZero(dienstleistung.extensions) || existsAndSizeGTZero(dienstleistung.formulare) || (dienstleistung.kontaktformularUrl?? && dienstleistung.kontaktformularUrl?has_content) || existsAndSizeGTZero(dienstleistung.internetadressen)> 
130                                    <div class="card" id="Onlinedienstleistungen-top" style="padding: 0 !important;"> 
131                                        <div class="card-header" style="padding-left: 0 !important; padding-right: 0 !important;"> 
132                                            <h2>${getLabelName4(dienstleistung, 'adt.label.dienstleistung.onlinedienstleistung','Onlinedienstleistungen')}</h2> 
133                                        </div> 
134                                        <div class="card-body" style="padding-left: 0 !important; padding-right: 0 !important;"> 
135                                            <#assign idTopLink ="onlineservicesMid" /> 
136                                            <#assign idBottomLink = "onlineservicesIconsMid" /> 
137                                            <#assign linkCss = "" /> 
138                                            <#assign linkClass = "onlineservices-link"/> 
139                                            <#if linksAsButton> 
140                                                <#assign linkClass = linkClass + " btn btn-secondary w-100 text-left text-break"/> 
141                                            </#if> 
142 
143                                            <#assign lockIcon = '<svg role="img" aria-label="Schlossicon. Für diese Dienstleistung ist ein Login erforderlich" style="height:15px !Important" class="" xmlns="http://www.w3.org/2000/svg" fill="currentColor" class="bi bi-lock-fill" viewBox="0 0 16 16"><path d="M8 1a2 2 0 0 1 2 2v4H6V3a2 2 0 0 1 2-2zm3 6V3a3 3 0 0 0-6 0v4a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2z"/></svg>' /> 
144                                            <#assign moneyIcon = '<svg role="img" aria-label="Geldicon. Diese Dienstleitung ist kostenpflichtig" style="height:15px !Important" width="16" height="16" fill="currentColor" class="bi bi-credit-card" viewBox="0 0 16 16"><path d="M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V4zm2-1a1 1 0 0 0-1 1v1h14V4a1 1 0 0 0-1-1H2zm13 4H1v5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V7z"/><path d="M2 10a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1v-1z"/></svg>' /> 
145                                            <#assign persoIcon = ''/> 
146                                            <#assign beforeLinkTitle = ""/> 
147 
148                                            <#assign dlNeedsLogin = 'Diese Dienstleistung erfordert eine Anmeldung.'/> 
149                                            <#assign dlNeedsEidLogin = 'Anmeldung mit elektronischen Personalausweis erforderlich.'/> 
150                                            <#assign dlHasCosts = 'Diese Dienstleitung ist kostenpflichtig.'/> 
151                                            <#assign dlAndHasCosts = 'und ist kostenpflichtig'/> 
152 
153 
154                                            <#assign internetAdressen = false/> 
155 
156                                            <@onlineServices147 idTopLink, idBottomLink, dienstleistung, linkCss, linkClass, beforeLinkTitle, lockIcon, persoIcon, moneyIcon, dlNeedsLogin, dlNeedsEidLogin, dlHasCosts, dlAndHasCosts, internetAdressen /> 
157 
158                                            <#assign iconLegendLockInfo = "Anmeldung erforderlich"/> 
159                                            <#assign iconLegendMoneyInfo = "Kostenpflichtig"/> 
160                                            <#assign iconLegendPersoInfo = "Anmeldung mit elektronischen Personalausweis erforderlich"/> 
161                                            <#assign persoIcon = "#createPersoIcon13('persoLogoHeader')"/> 
162 
163                                            <@iconLegendList10 idTopLink, idTopLink, "black", persoIcon, iconLegendPersoInfo, lockIcon, iconLegendLockInfo, moneyIcon, iconLegendMoneyInfo /> 
164                                        </div> 
165                                    </div> 
166                                </#if> 
167                            </div> 
168                        </div> 
169                    </#if> 
170                    <div class="el-textmodul"> 
171 
172                        <#if existsAndHasContent1(textmodul.volltext.inhalt!'')> 
173                            <h2 class="sr-only">${getLabelName4(dienstleistung, 'adt.label.dienstleistung.volltext','Beschreibung')}</h2> 
174                            ${textmodul.volltext.inhalt} 
175                        </#if> 
176 
177                        ${renderTextmodul12(textmodul.rechtsgrundlagen,"adt.label.dienstleistung.rechtsgrundlagen","Rechtsgrundlagen")} 
178                        ${renderTextmodul12(textmodul.erforderlicheUnterlagen,"adt.label.dienstleistung.unterlagen","Erforderliche Unterlagen")} 
179 
180                        <#if existsAndHasContent1(dienstleistung.amtFachbereich!'')> 
181                            <#if showCollapse> 
182                                ${collapseBefore20(getLabelName4(dienstleistung, 'adt.label.dienstleistung.amtfachbereich','Amt/Fachbereich'),collapseIcon, 'amtfachbereich')} 
183                            </#if> 
184                            ${content_item3(getLabelName4(dienstleistung, 'adt.label.dienstleistung.amtfachbereich','Amt/Fachbereich'),dienstleistung.amtFachbereich, showLines)} 
185                            <#if showCollapse> 
186                                ${collapseAfter()} 
187                            </#if> 
188                        </#if> 
189 
190                        ${renderTextmodul12(textmodul.fristen,"adt.label.dienstleistung.fristen","Fristen")} 
191 
192                        ${renderTextmodul12(textmodul.bearbeitungsdauer,"adt.label.dienstleistung.bearbeitungsdauer","Bearbeitungsdauer")} 
193 
194                        ${renderTextmodul12(textmodul.weiterfuehrendeInformationen,"adt.label.dienstleistung.weitereinfos","Weitere Informationen")} 
195 
196                        ${renderTextmodul12(textmodul.hinweiseBesonderheiten,"adt.label.dienstleistung.hinweiseBesonderheiten","Hinweise und Besonderheiten")} 
197 
198                        ${renderTextmodul12(textmodul.voraussetzungen,"adt.label.dienstleistung.voraussetzungen","Voraussetzungen")} 
199 
200                        ${renderTextmodul12(textmodul.verfahrensablauf,"adt.label.dienstleistung.verfahrensablauf","Verfahrensablauf")} 
201 
202                        ${renderTextmodul12(textmodul.rechtsbehelf,"adt.label.dienstleistung.rechtsbehelf","Rechtsbehelf")} 
203 
204                        ${renderTextmodul12(textmodul.zusatzAnWenWenden,"adt.label.dienstleistung.zusatzAnWenWenden","An wen wenden")} 
205 
206                        ${renderTextmodul12(textmodul.zusatzAntraegeFormulare,"adt.label.dienstleistung.zusatzAntraegeFormulare","Anträge/Formulare")} 
207 
208                        ${renderTextmodul12(textmodul.zusatzFreigegebenDurch,"adt.label.dienstleistung.zusatzFreigegebenDurch","Freigegeben durch")} 
209 
210                        ${renderTextmodul12(textmodul.zusatzFreigegebenAm,"adt.label.dienstleistung.zusatzFreigegebenAm","Freigegeben am")} 
211 
212                        ${renderTextmodul12(textmodul.zusatzUrheber,"adt.label.dienstleistung.zusatzUrheber","Urheber")} 
213 
214                        ${renderTextmodul12(textmodul.zusatzZustaendigeStelle,"adt.label.dienstleistung.zusatzZustaendigeStelle","Zuständige Stelle")} 
215 
216                        <#if existsAndHasContent1(dienstleistung.kostenmodul.beschreibung!'') || 
217                            existsAndHasContent1(dienstleistung.kostenmodul.kosten!'')> 
218                            <#if showCollapse > 
219                                ${collapseBefore20(getLabelName4(dienstleistung, 'adt.label.dienstleistung.gebuehr','Kosten'), collapseIcon, 'kosten')} 
220                            <#else> 
221                                <hr> 
222                                <h2>${getLabelName4(dienstleistung, 'adt.label.dienstleistung.gebuehr','Kosten')}</h2> 
223                            </#if> 
224                            <@kostenliste3 /> 
225                            <#if showCollapse> 
226                                ${collapseAfter()} 
227                            </#if> 
228                        </#if> 
229 
230                        <#if existsAndHasContent1(dienstleistung.zahlungsweisen!'')> 
231                            <#if showCollapse> 
232                                ${collapseBefore20(getLabelName4(dienstleistung, 'adt.label.dienstleistung.zahlungsweisen','Zahlungsweisen'),collapseIcon,'zahlungsweisen')} 
233                            </#if> 
234                            <#assign zahlungsweiseOutput = ''/> 
235                            <#list dienstleistung.zahlungsweisen as zahlungsweise> 
236                                <#assign zahlungsweiseOutput = zahlungsweiseOutput+"<p>${zahlungsweise.name}</p>" /> 
237                            </#list> 
238                            ${content_item3(getLabelName4(dienstleistung, 'adt.label.dienstleistung.zahlungsweisen','Zahlungsweisen'),zahlungsweiseOutput,showLines)} 
239                            <#if showCollapse> 
240                                ${collapseAfter()} 
241                            </#if> 
242                        </#if> 
243 
244                        <#if existsAndHasContent1(dienstleistung.verwandteDienstleistungen!'')> 
245                            <#if showCollapse> 
246                                ${collapseBefore20(getLabelName4(dienstleistung, 'adt.label.dienstleistung.verwandtedienstleistungen','Verwandte Dienstleistungen'),collapseIcon,'verwandteDienstleistungen')} 
247                            <#else> 
248                                <hr> 
249                                <h2>${getLabelName4(dienstleistung, 'adt.label.dienstleistung.verwandtedienstleistungen','Verwandte Dienstleistungen')}</h2> 
250                            </#if> 
251 
252                            <ul style="padding-top:0 !important;padding-bottom:0 !important;"> 
253                                <#list dienstleistung.verwandteDienstleistungen as dl> 
254                                    <li> 
255                                        <a href="${utils.createRenderUrl(renderResponse,dienstleistungShow, dl.id)}">${dl.name}</a> 
256                                    </li> 
257                                </#list> 
258                            </ul> 
259                            <br> 
260 
261                            <#if showCollapse> 
262                                ${collapseAfter()} 
263                            </#if> 
264                        </#if> 
265                        <#if showOnlineServicesInMainContent> 
266                            <div id="onlineServicesInMainSection" aria-hidden="true" class="d-none d-sm-none d-md-none d-lg-block"> 
267                                <#if existsAndSizeGTZero(dienstleistung.extensions) || existsAndSizeGTZero(dienstleistung.formulare) || (dienstleistung.kontaktformularUrl?? && dienstleistung.kontaktformularUrl?has_content) || existsAndSizeGTZero(dienstleistung.internetadressen)> 
268                                    <#if showCollapse> 
269                                        ${collapseBefore20(getLabelName4(dienstleistung, 'adt.label.dienstleistung.onlinedienstleistung','Onlinedienstleistungen'),collapseOnlineServcieIcon,'onlinedienstleistungenLeftBottom')} 
270                                    </#if> 
271                                    <#if !showCollapse> 
272                                        <div class="card" id="OnlinedienstleistungenMain"> 
273                                        <div class="card-header"> 
274                                            <h2>${getLabelName4(dienstleistung, 'adt.label.dienstleistung.onlinedienstleistung','Onlinedienstleistungen')}</h2> 
275                                        </div> 
276                                        <div class="card-body"> 
277                                    </#if> 
278                                    <#assign idTopLink ="olDlTopMain"/> 
279                                    <#assign idBottomLink = "olDlIconsMain"/> 
280                                    <#assign linkCss = ""/> 
281                                    <#assign linkClass = ""/> 
282                                    <#if linksAsButton> 
283                                        <#assign linkClass = linkClass + "btn btn-secondary w-100 text-left text-break" /> 
284                                    </#if> 
285                                    <#assign lockIcon = '<svg role="img" aria-label="Schlossicon. Für diese Dienstleistung ist ein Login erforderlich" style="height:15px !Important" class="" xmlns="http://www.w3.org/2000/svg" fill="currentColor" class="bi bi-lock-fill" viewBox="0 0 16 16"><path d="M8 1a2 2 0 0 1 2 2v4H6V3a2 2 0 0 1 2-2zm3 6V3a3 3 0 0 0-6 0v4a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2z"/></svg>'/> 
286                                    <#assign moneyIcon = '<svg role="img" aria-label="Geldicon. Diese Dienstleitung ist kostenpflichtig" style="height:15px !Important" width="16" height="16" fill="currentColor" class="bi bi-credit-card" viewBox="0 0 16 16"><path d="M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V4zm2-1a1 1 0 0 0-1 1v1h14V4a1 1 0 0 0-1-1H2zm13 4H1v5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V7z"/><path d="M2 10a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1v-1z"/></svg>'/> 
287                                    <#assign persoIcon = ""/> 
288                                    <#assign beforeLinkTitle = ""/> 
289 
290                                    <#assign dlNeedsLogin = 'Diese Dienstleistung erfordert eine Anmeldung.'/> 
291                                    <#assign dlNeedsEidLogin = 'Anmeldung mit elektronischen Personalausweis erforderlich'/> 
292                                    <#assign dlHasCosts = 'Diese Dienstleitung ist kostenpflichtig.'/> 
293                                    <#assign dlAndHasCosts = 'und ist kostenpflichtig'/> 
294 
295 
296                                    <#assign internetAdressen = false /> 
297 
298                                    <@onlineServices147 idTopLink, idBottomLink, dienstleistung, linkCss, linkClass, beforeLinkTitle, lockIcon, persoIcon, moneyIcon, dlNeedsLogin, dlNeedsEidLogin, dlHasCosts, dlAndHasCosts, internetAdressen/> 
299 
300                                    <#assign iconLegendLockInfo = "Anmeldung erforderlich"/> 
301                                    <#assign iconLegendMoneyInfo = "Kostenpflichtig"/> 
302                                    <#assign iconLegendPersoInfo = "Anmeldung mit elektronischen Personalausweis erforderlich"/> 
303                                    <#assign persoIcon = "#createPersoIcon13('persoLogoUnten')"/> 
304 
305                                    <@iconLegendList10 idBottomLink, idBottomLink, "black", persoIcon, iconLegendPersoInfo, lockIcon, iconLegendLockInfo, moneyIcon, iconLegendMoneyInfo/> 
306 
307                                    <#if !showCollapse> 
308                                        </div> 
309                                        </div> 
310                                    </#if> 
311                                    <#if showCollapse> 
312                                        ${collapseAfter()} 
313                                    </#if> 
314                                </#if> 
315                            </div> 
316                        </#if> 
317                    </div> 
318                    <#if showLeftInCard> 
319                </div> 
320                </#if> 
321            </div> 
322        </div> 
323        <div class="col-12 col-sm-12 col-md-4"> 
324            <div class="mdl--page__default__02 vr-details-right"> 
325                <#if existsAndSizeGTZero(dienstleistung.extensions) || existsAndSizeGTZero(dienstleistung.formulare) || (dienstleistung.kontaktformularUrl?? && dienstleistung.kontaktformularUrl?has_content) || existsAndSizeGTZero(dienstleistung.internetadressen)> 
326                    <div class="card <#if showOnlineServicesInMobilePosition == "top">d-none d-md-block </#if> " id="onlinedienstleistungen-right"> 
327                        <div class="card-header"> 
328                            <h2>${getLabelName4(dienstleistung, 'adt.label.dienstleistung.onlinedienstleistung','Onlinedienstleistungen')}</h2> 
329                        </div> 
330                        <div class="card-body"> 
331 
332                            <#assign idTopLink ="olDlTopSide" /> 
333                            <#assign idBottomLink = "olDlIconsSide"/> 
334                            <#assign linkCss = ""/> 
335                            <#assign linkClass = "onlineservices-link"/> 
336                            <#if linksAsButton> 
337                                <#assign linkClass = linkClass+ " btn btn-secondary w-100 text-left text-break"/> 
338                            </#if> 
339                            <#assign lockIcon = '<svg role="img" aria-label="Schlossicon. Für diese Dienstleistung ist ein Login erforderlich" style="height:15px !Important" class="" xmlns="http://www.w3.org/2000/svg" fill="currentColor" class="bi bi-lock-fill" viewBox="0 0 16 16"><path d="M8 1a2 2 0 0 1 2 2v4H6V3a2 2 0 0 1 2-2zm3 6V3a3 3 0 0 0-6 0v4a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2z"/></svg>'/> 
340                            <#assign moneyIcon = '<svg role="img" aria-label="Geldicon. Diese Dienstleitung ist kostenpflichtig" style="height:15px !Important" width="16" height="16" fill="currentColor" class="bi bi-credit-card" viewBox="0 0 16 16"><path d="M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V4zm2-1a1 1 0 0 0-1 1v1h14V4a1 1 0 0 0-1-1H2zm13 4H1v5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V7z"/><path d="M2 10a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1v-1z"/></svg>'/> 
341                            <#assign persoIcon = ''/> 
342                            <#assign beforeLinkTitle = ""/> 
343                            <#assign dlNeedsLogin = 'Diese Dienstleistung erfordert eine Anmeldung.'/> 
344                            <#assign dlNeedsEidLogin = 'Anmeldung mit elektronischen Personalausweis erforderlich.'/> 
345                            <#assign dlHasCosts = 'Diese Dienstleitung ist kostenpflichtig.'/> 
346                            <#assign dlAndHasCosts = 'und ist kostenpflichtig'/> 
347                            <#assign internetAdressen = false/> 
348 
349                            <@onlineServices147 idTopLink, idBottomLink, dienstleistung, linkCss, linkClass, beforeLinkTitle, lockIcon, persoIcon, moneyIcon, dlNeedsLogin, dlNeedsEidLogin, dlHasCosts, dlAndHasCosts, internetAdressen  /> 
350                            <#assign iconLegendLockInfo = "Anmeldung erforderlich"/> 
351                            <#assign iconLegendMoneyInfo = "Kostenpflichtig"/> 
352                            <#assign iconLegendPersoInfo = "Anmeldung mit elektronischen Personalausweis erforderlich"/> 
353                            <#assign persoIcon = "#createPersoIcon13('persoLogoTopIcons')"/> 
354 
355                            <@iconLegendList10 idBottomLink,idTopLink,"black",persoIcon ,iconLegendPersoInfo ,lockIcon ,iconLegendLockInfo ,moneyIcon ,iconLegendMoneyInfo /> 
356                        </div> 
357                    </div> 
358                </#if> 
359 
360                <#if existsAndHasContent1(dienstleistung.dokumentList!'')> 
361 
362                    <div class="card" id="downloads"> 
363                        <div class="card-header"> 
364                            <h2>${getLabelName4(dienstleistung, 'adt.label.dienstleistung.downloads','Downloads')}</h2> 
365                        </div> 
366                        <div class="card-body"> 
367                            <ul class="el--downloads"> 
368 
369                                <#list dienstleistung.dokumentList as dokument> 
370                                    <#assign url = renderResponse.createResourceURL()/> 
371                                    ${url.setResourceID("vr-bis-detail-document-download")} 
372                                    ${url.setParameter("id", "${dokument.id}")} 
373                                    <li class="mb-2"> 
374                                        <#if downloadCollapse> 
375                                            <#if existsAndHasContent1(dokument.beschreibung!'')> 
376                                                <#assign description = "<div class='mt-2' style='font-size:medium;'>${dokument.beschreibung}</div>" /> 
377                                            <#else> 
378                                                <#assign description = "" /> 
379                                            </#if> 
380                                            <#assign docContent ="<div class='mt-2 mb-4'> 
381                                    <a href='${url}' title='Download ${dokument.name}' download> 
382                                        <i class='bi bi-download mr-2'></i> 
383                                        <span class='ml-2'>Herunterladen</span> 
384                                    </a> 
385                                    <${description}> 
386                                </div>" 
387                                            /> 
388 
389                                            <@collapseList6 "doc${dokument.id}", "${downloadCollapseIcon}$dokument.name", docContent,'downloadCollapse',downloadCollapseShowAs /> 
390                                        <#else> 
391 
392                                            <a href="${url}" title="Download ${dokument.name}"  download> 
393                                                ${downloadsIcon}${dokument.name} 
394                                            </a> 
395                                        </#if> 
396                                    </li> 
397                                </#list> 
398                            </ul> 
399                        </div> 
400                    </div> 
401                </#if> 
402                <#if dienstleistung.einrichtungList?size gt 0> 
403                    <div class="card" id="zustaendigeEinrichtungen"> 
404                        <div class="card-header"> 
405                            <h2 class="el--location__headline el--textmodul__h3">${getLabelName4(dienstleistung, 'adt.label.dienstleistung.einrichtungen','Zuständige Einrichtungen')}</h2> 
406                        </div> 
407                        <div class="card-body"> 
408                            <ul class="list-unstyled pl-0" aria-label="Liste der zuständigen Einrichtungen"> 
409                                <#assign erCounter = 0/> 
410                                <#assign size = dienstleistung.einrichtungList?size/> 
411                                <#list dienstleistung.einrichtungList as einrichtung> 
412                                    <#assign erCounter = erCounter + 1 /> 
413                                    <li class="mb-2" aria-label="Einrichtung ${einrichtung.name}"> 
414                                        <a href="${utils.createRenderUrl(renderResponse,einrichtungShow, einrichtung.id)}">${getFullFacilityName9(einrichtung,'dl-facility-address')}</a> 
415                                        <ul class="list-unstyled pl-0" aria-label="Angaben zur Einrichtung"> 
416                                            <#if existsAndHasContent1(einrichtung.anschrift!'')> 
417                                                <li aria-label="Adresse der Einrichtung"> 
418                                                    <ul class="list-unstyled pl-0" > 
419                                                        <#if existsAndHasContent1(einrichtung.anschrift.name!'') && showEinrichtungAnschriftName> 
420                                                            <li aria-label="${showEinrichtungAnschriftNameAlt}"><strong>${einrichtung.anschrift.name}</strong></li> 
421                                                        </#if> 
422                                                        <li class="el--location__description__item" aria-label="Straße und Hausnummer">${einrichtung.anschrift.strasse} ${einrichtung.anschrift.hausnummer}</li> 
423                                                        <li class="el--location__description__item" aria-label="PLZ und Ort">${einrichtung.anschrift.postleitzahl} ${einrichtung.anschrift.ort}</li> 
424 
425                                                        <#if existsAndHasContent1(einrichtung.anschrift.postfach!'')> 
426                                                            <li class="el--location__description__item">Postfach ${einrichtung.anschrift.getPostfach()}</li> 
427                                                        </#if> 
428                                                        <#if existsAndHasContent1(einrichtung.anschrift.zusatz!'')> 
429                                                            <li class="mt-2 el--location__description__item"><strong>Adresszusatz:</strong><br/>${einrichtung.anschrift.getZusatz()}</li> 
430                                                        </#if> 
431                                                    </ul> 
432                                                </li> 
433                                            </#if> 
434                                            <#if 
435                                            (existsAndHasContent1(einrichtung.telefonnummer!'')) || 
436                                            (existsAndHasContent1(einrichtung.faxnummer!''))|| 
437                                            (existsAndHasContent1(einrichtung.email!'')) 
438
439                                                <li aria-label="Erreichbarkeiten der Einrichtung" class="mt-2"> 
440                                                    <ul class="list-unstyled pl-0" > 
441                                                        <#if existsAndHasContent1(einrichtung.telefonnummer!'')> 
442                                                            <li class="el--location__description__item"><strong>Telefon:</strong><br> <a href="${createPhoneHref3(einrichtung)}">${einrichtung.telefonnummer}</a></li> 
443                                                        </#if> 
444                                                        <#if existsAndHasContent1(einrichtung.faxnummer!'')> 
445                                                            <li class="el--location__description__item"><strong>Fax:</strong><br> <a href="${createFaxHref3(einrichtung)}">${einrichtung.faxnummer}</a> </li> 
446                                                        </#if> 
447                                                        <#if existsAndHasContent1(einrichtung.email!'')> 
448                                                            <li class="el--location__description__item"><strong>E-Mail:</strong><br>  <a href="${createMailHref5(einrichtung)}">${einrichtung.email}</a></li> 
449                                                        </#if> 
450                                                    </ul> 
451                                                </li> 
452                                            </#if> 
453                                        </ul> 
454                                        <#if erCounter < size> 
455                                            <hr> 
456                                        </#if> 
457                                    </li> 
458                                </#list> 
459                            </ul> 
460                        </div> 
461                    </div> 
462                </#if> 
463                <#if existsAndHasContent1(dienstleistung.mitarbeiterList!'') && !showEmployeesCollapse> 
464                    <#assign counter = 0 /> 
465                    <#list dienstleistung.mitarbeiterList as mitarbeiter> 
466                        <#assign counter = counter +1 /> 
467                    </#list> 
468                    <div class="card" id="zustaendigeKontaktpersonen"> 
469                        <div class="card-header"> 
470                            <h2>${getLabelName4(dienstleistung, 'adt.label.dienstleistung.kontaktpersonen','Zuständige Kontaktpersonen')}</h2> 
471                        </div> 
472                        <div class="card-body"> 
473                            <ul class="el--contact"> 
474                                <#assign loop = 1/> 
475                                <#list dienstleistung.mitarbeiterList as mitarbeiter> 
476                                    <#if mitarbeiter??> 
477                                        <li> 
478                                        <#if loop != 1> 
479                                            <hr class="mb-2"> 
480                                        </#if> 
481                                        <p class="el--contact__content"> 
482                                            <a href="${utils.createRenderUrl(renderResponse,mitarbeiterShow, mitarbeiter.id)}">${mitarbeiter.volleAnsprache()}</a> 
483                                            <#if existsAndHasContent1(mitarbeiter.position!'')> 
484                                                <br/><i class="el--contact__content__position" aria-label="Position:">${mitarbeiter.position}</i> 
485                                            </#if> 
486                                        </p> 
487                                        <dl class="el--contact__list"> 
488                                            <#if existsAndHasContent1(mitarbeiter.telefonnummer!'')> 
489                                                <dt>Telefon:</dt> 
490                                                <dd><a href="${createPhoneHref3(mitarbeiter)}">${mitarbeiter.telefonnummer}</a></dd> 
491                                            </#if> 
492                                            <#if existsAndHasContent1(mitarbeiter.mobil!'')> 
493                                                <dt>Mobil:</dt> 
494                                                <dd><a href="${createMobilHref3(mitarbeiter)}">${mitarbeiter.mobil}</a></dd> 
495                                            </#if> 
496                                            <#if existsAndHasContent1(mitarbeiter.email!'')> 
497                                                <dt>E-Mail:</dt> 
498                                                <dd><a href="${createMailHref5(mitarbeiter)}">${mitarbeiter.email}</a></dd> 
499                                            </#if> 
500                                        </dl> 
501                                    </li> 
502                                    <#assign loop = loop + 1 /> 
503                                    </#if> 
504                                </#list> 
505                            </ul> 
506                        </div> 
507                    </div> 
508                </#if> 
509                <#if existsAndHasContent1(dienstleistung.mitarbeiterList!'') && showEmployeesCollapse> 
510                    <#assign counter = 0 /> 
511                    <#list dienstleistung.mitarbeiterList as mitarbeiter> 
512                        <#assign counter = counter +1 /> 
513                    </#list> 
514                    <div class="card" id="zustaendigeKontaktperson"> 
515                        <div class="card-header"> 
516                            <h2>${getLabelName4(dienstleistung, 'adt.label.dienstleistung.kontaktpersonen','Zuständige Kontaktpersonen')}</h2> 
517                        </div> 
518                        <div class="card-body"> 
519                            <ul class="el--contact"> 
520                                <#assign loop = 1/> 
521                                <#list dienstleistung.mitarbeiterList as mitarbeiter> 
522                                <li class="mb-2"> 
523 
524                                    <#assign collapseContent = "<ul class='mt-2'> 
525                                <li > 
526                                    <p> 
527                                        <strong>Profil:</strong> <a href='${utils.createRenderUrl(renderResponse,mitarbeiterShow, mitarbeiter.id)}'>Link</a> 
528                                    </p> 
529                                </li>"/> 
530                                    <#if existsAndHasContent1(mitarbeiter.position!'')> 
531                                        <#assign collapseContent = collapseContent +"<li> 
532                                    <p> 
533                                        <strong>Position:</strong> <i class='el--contact__content__position'>${mitarbeiter.position}</i> 
534                                    </p> 
535                                </li>"/> 
536                                    </#if> 
537                                    <#if existsAndHasContent1(mitarbeiter.telefonnummer!'')> 
538                                        <#assign collapseContent = collapseContent +"<li> 
539                                    <p> 
540                                        <strong>Telefon:</strong> <a href='${createPhoneHref3(mitarbeiter)}'>${mitarbeiter.telefonnummer}</a> 
541                                    </p> 
542                                </li>"/> 
543                                    </#if> 
544                                    <#if existsAndHasContent1(mitarbeiter.mobil!'')> 
545                                        <#assign collapseContent = collapseContent +"<li> 
546                                    <p> 
547                                        <strong>Mobil:</strong> <a href='${createMobilHref3(mitarbeiter)}'>${mitarbeiter.mobil}</a> 
548                                    </p> 
549                                </li>"/> 
550                                    </#if> 
551                                    <#if existsAndHasContent1(mitarbeiter.email!'')> 
552                                        <#assign collapseContent = collapseContent +"<li> 
553                                    <p> 
554                                        <strong>E-Mail:</strong> <a href='${createMailHref5(mitarbeiter)}'>${mitarbeiter.email}</a> 
555                                    </p> 
556                                </li>"/> 
557                                    </#if> 
558                                    <#assign collapseContent = collapseContent +"</ul>"/> 
559 
560                                    <@collapseList6 "mit${mitarbeiter.id}", "${employeesCollapseIcon}${mitarbeiter.volleAnsprache()}",collapseContent,"employeeCollapse",showEmployeesCollapseAs /> 
561                                    <#assign loop = loop + 1 /> 
562                                    </#list> 
563                            </ul> 
564                        </div> 
565                    </div> 
566                </#if> 
567 
568 
569                <#if 
570                existsAndHasContent1(textmodul.volltext.weiterfuehrenderLink!'') || 
571                existsAndHasContent1(textmodul.kurztext.weiterfuehrenderLink!'') || 
572                existsAndHasContent1(textmodul.rechtsgrundlagen.weiterfuehrenderLink!'') || 
573                existsAndHasContent1(textmodul.erforderlicheUnterlagen.weiterfuehrenderLink!'') || 
574                existsAndHasContent1(textmodul.voraussetzungen.weiterfuehrenderLink!'') || 
575                existsAndHasContent1(textmodul.verfahrensablauf.weiterfuehrenderLink!'') || 
576                existsAndHasContent1(textmodul.weiterfuehrendeInformationen.weiterfuehrenderLink!'') || 
577                existsAndHasContent1(textmodul.hinweiseBesonderheiten.weiterfuehrenderLink!'') || 
578                existsAndHasContent1(textmodul.rechtsbehelf.weiterfuehrenderLink!'') || 
579                existsAndHasContent1(textmodul.bearbeitungsdauer.weiterfuehrenderLink!'') || 
580                existsAndHasContent1(textmodul.fristen.weiterfuehrenderLink!'')> 
581                    <div class="card" id="weiterfuehrendeLinks"> 
582                        <div class="card-header"> 
583                            <h2>${getLabelName4(dienstleistung, 'adt.label.dienstleistung.weitereinfos','Weiterführende Informationen')}</h2> 
584                        </div> 
585                        <div class="card-body"> 
586                            <ul class="list-unstyled pl-0"> 
587                                ${linklooper7(textmodul.volltext)} 
588                                ${linklooper7(textmodul.kurztext)} 
589                                ${linklooper7(textmodul.rechtsgrundlagen)} 
590                                ${linklooper7(textmodul.erforderlicheUnterlagen)} 
591                                ${linklooper7(textmodul.voraussetzungen)} 
592                                ${linklooper7(textmodul.verfahrensablauf)} 
593                                ${linklooper7(textmodul.weiterfuehrendeInformationen)} 
594                                ${linklooper7(textmodul.hinweiseBesonderheiten)} 
595                                ${linklooper7(textmodul.rechtsbehelf)} 
596                                ${linklooper7(textmodul.bearbeitungsdauer)} 
597                                ${linklooper7(textmodul.fristen)} 
598                            </ul> 
599                        </div> 
600                    </div> 
601                </#if> 
602            </div> 
603        </div> 
604    </div> 
605</#if> 
606<#if bis2017.ausgewaehlteEinrichtung??> 
607<#-- Einrichtungen --> 
608    <#assign 
609    einrichtung = bis2017.ausgewaehlteEinrichtung 
610    /> 
611    <div class="row"> 
612        <div class="col-12 col-sm-12 col-md-8 px-4 pl-lg-3"> 
613            <div class="vr-details-left"> 
614                <#if showLeftInCard> 
615                <div class="card"> 
616                    </#if> 
617                    <div class="facility-detail-header"> 
618                        <div class="sideHeadline" id="seitentitel"> 
619                            <h1>${getFullFacilityName9(einrichtung,'siteTitle')}</h1> 
620                        </div> 
621                        <#if existsAndHasContent1(einrichtung.kurzbezeichnung!'')> 
622                            <h2 class="sr-only">Kurzbezeichnung</h2> 
623                            <p>${einrichtung.kurzbezeichnung}</p> 
624                        </#if> 
625                    </div> 
626 
627                    <#if existsAndHasContent1(einrichtung.aktuelles!'')> 
628                        <div class="alert alert-info"> 
629                            <h2 class="">Aktuelles</h2> 
630                            <p>${einrichtung.aktuelles}</p> 
631                        </div> 
632                    </#if> 
633                    <#if existsAndHasContent1(einrichtung.beschreibung!'')> 
634                        <h2 class="sr-only">Beschreibung</h2> 
635                        <div>${einrichtung.beschreibung}</div> 
636                    </#if> 
637 
638                    <#if existsAndHasContent1(einrichtung.beschreibungIntern!'')> 
639                        <h2 class="sr-only">Beschreibung Intern</h2> 
640                        <p>${einrichtung.beschreibungIntern}</p> 
641                        <hr/> 
642                    </#if> 
643 
644                    <#if existsAndHasContent1(einrichtung.anschrift!'')> 
645                        <#assign lat = 0/> 
646                        <#assign lng = 0/> 
647                        <#assign mapTitle = 'Karte'/> 
648 
649                        <#if existsAndHasContent1(einrichtung.anschrift.geokodierung!'')> 
650                            <#assign lat = einrichtung.anschrift.geokodierung.latitude?number/> 
651                            <#assign lng = einrichtung.anschrift.geokodierung.longitude?number/> 
652                        </#if> 
653                        <#assign hasMap = lat?has_content && lng?has_content/> 
654 
655                        <h2 class="">Anschrift</h2> 
656                        <div class="el--maplocation__card__content el--textmodul"> 
657                            ${createAddressUL16(einrichtung, 'facility-address','')} 
658                        </div> 
659 
660 
661                        <#if existsAndHasContent1(einrichtung.telefonnummer!'') || 
662                             existsAndHasContent1(einrichtung.faxnummer!'') || 
663                             existsAndHasContent1(einrichtung.email!'')> 
664                            <hr> 
665                            <h2>Kontakt</h2> 
666                            ${createContactList9(einrichtung, 'facility-contact')} 
667                        </#if> 
668                    </#if> 
669 
670                    <div class="el-textmodul"> 
671                        <#if hasMap && showFacilityMap> 
672                            <@openstreetmap52 mapTitle lat lng /> 
673                        </#if> 
674 
675                        <#if existsAndHasContent1(einrichtung.barrierefreieErreichbarkeit!'')> 
676                            <#if showCollapse> 
677                                ${collapseBefore20('Barrierefreie Erreichbarkeit',collapseIcon,'')} 
678                            <#else> 
679                                <hr> 
680                                <h2>Barrierefreie Erreichbarkeit</h2> 
681                            </#if> 
682                            <div class="text"> 
683                                ${einrichtung.barrierefreieErreichbarkeit} 
684                            </div> 
685                            <#if showCollapse> 
686                                ${collapseAfter()} 
687                            </#if> 
688                        </#if> 
689 
690                        <#if existsAndHasContent1(einrichtung.anschrift!'') && (existsAndHasContent1(einrichtung.anschrift.verkehrsanbindung!'') || existsAndHasContent1(einrichtung.anschrift.anfahrtUrl!''))> 
691                            <#if showCollapse> 
692                                ${collapseBefore20('Verkehrsanbindung',collapseIcon,'')} 
693                            <#else> 
694                                <hr> 
695                                <h2>Verkehrsanbindung</h2> 
696                            </#if> 
697                            <#if existsAndHasContent1(einrichtung.anschrift.verkehrsanbindung!'')> 
698                                ${einrichtung.anschrift.verkehrsanbindung} 
699                            </#if> 
700                            <#if existsAndHasContent1(einrichtung.anschrift.anfahrtUrl!'')> 
701                                <#list einrichtung.anschrift.anfahrtUrl as url> 
702                                    <a href="${url.uri}" title="${url.titel}">${url.titel}</a> 
703                                </#list> 
704                            </#if> 
705                            <#if showCollapse> 
706                                ${collapseAfter()} 
707                            </#if> 
708                        </#if> 
709 
710                        <#assign serviceZeitenEmpty = einrichtung.servicezeitenFreitext?has_content /> 
711                        <#if einrichtung.servicezeitenStrukturiert?? && einrichtung.servicezeitenStrukturiert.tage??> 
712                            <#list einrichtung.servicezeitenStrukturiert.tage?values as value> 
713                                <#list value.paare?values as paare> 
714                                    <#if paare?? && paare?has_content> 
715                                        <#assign serviceZeitenEmpty = false /> 
716                                        <#break> 
717                                    </#if> 
718                                </#list> 
719                                <#if !serviceZeitenEmpty> 
720                                    <#break> 
721                                </#if> 
722                            </#list> 
723                        </#if> 
724 
725 
726 
727                        <#if !serviceZeitenEmpty> 
728                            <#if showCollapse> 
729                                ${collapseBefore20('Servicezeiten',collapseIcon,'')} 
730                            <#else> 
731                                <hr> 
732                                <h2>Servicezeiten</h2> 
733                            </#if> 
734 
735                            <@createTimeTable15 einrichtung/> 
736                            <p class="mt-2">${einrichtung.servicezeitenFreitext}</p> 
737                            <#if showCollapse> 
738                                ${collapseAfter()} 
739                            </#if> 
740                        <#elseif existsAndHasContent1(einrichtung.servicezeiten!'')> 
741                            <#if showCollapse> 
742                                ${collapseBefore20('Servicezeiten',collapseIcon,'')} 
743                            <#else> 
744                                <hr> 
745                                <h2>Servicezeiten</h2> 
746                            </#if> 
747                            <p> 
748                                ${einrichtung.servicezeiten} 
749                            </p> 
750                            <#if existsAndHasContent1(einrichtung.servicezeitenFreitext!'')> 
751                                <p class="mt-2"> 
752                                    ${einrichtung.servicezeitenFreitext} 
753                                </p> 
754                            </#if> 
755                            <#if showCollapse> 
756                                ${collapseAfter()} 
757                            </#if> 
758                        </#if> 
759 
760                        <#if existsAndHasContent1(einrichtung.dienstleistungList!'')> 
761                            <#if showCollapse> 
762                                ${collapseBefore20('Dienstleistungen der Einrichtung',collapseIcon,'')} 
763                            <#else> 
764                                <hr> 
765                                <h2>Dienstleistungen der Einrichtung</h2> 
766                            </#if> 
767                            <ul style="padding:0;"> 
768                                <#list einrichtung.dienstleistungList as dienstleistung> 
769                                    <li> 
770                                        <p class="m-0"> 
771                                            <a href="${utils.createRenderUrl(renderResponse, dienstleistungShow, dienstleistung.id)}">${dienstleistung.name}</a> 
772                                        </p> 
773                                    </li> 
774                                </#list> 
775                            </ul> 
776                            <#if showCollapse> 
777                                ${collapseAfter()} 
778                            </#if> 
779                        </#if> 
780 
781 
782                        <#if einrichtung.uebereinrichtung??> 
783                            <#if showCollapse> 
784                                ${collapseBefore20('Diese Einrichtung gehört zu',collapseIcon,'')} 
785                            <#else> 
786                                <hr> 
787                                <h2>Diese Einrichtung gehört zu</h2> 
788                            </#if> 
789                            <p> 
790                                <a href="${utils.createRenderUrl(renderResponse, einrichtungShow, einrichtung.uebereinrichtung.id)}">${getFullFacilityName9(einrichtung.uebereinrichtung,'uebereinrichtung')}</a> 
791                            </p> 
792                            <#if showCollapse> 
793                                ${collapseAfter()} 
794                            </#if> 
795                        </#if> 
796 
797                        <#if existsAndHasContent1(einrichtung.untereinrichtungList!'')> 
798                            <#if showCollapse> 
799                                ${collapseBefore20('Zu dieser Einrichtung gehören',collapseIcon,'')} 
800                            <#else> 
801                                <hr> 
802                                <h2>Zu dieser Einrichtung gehören</h2> 
803                            </#if> 
804                            <ul style=""> 
805                                <#list einrichtung.untereinrichtungList as child> 
806                                    <li> 
807                                        <p class="m-0"> 
808                                            <a href="${utils.createRenderUrl(renderResponse,einrichtungShow, child.id)}">${getFullFacilityName9(child,'untereinrichtungList')}</a> 
809                                        </p> 
810                                    </li> 
811                                </#list> 
812                            </ul> 
813                            <#if showCollapse> 
814                                ${collapseAfter()} 
815                            </#if> 
816                        </#if> 
817                        <#if existsAndHasContent1(einrichtung.internetadressen!'')> 
818                            <#if showCollapse> 
819                                ${collapseBefore20('Internetadressen', collapseIcon,'')} 
820                            <#else> 
821                                <hr> 
822                                <h2>Internetadressen</h2> 
823                            </#if> 
824                            <ul class="list-unstyled" style="padding-top:0 !important;padding-bottom:0 !important;"> 
825                                <#list einrichtung.internetadressen as link> 
826                                    <li> 
827                                        <a href="${link.uri}" title="${link.titel}" 
828                                                <#if link.neuesFenster> target="_blank" </#if> 
829
830                                            ${link.titel} 
831                                        </a> 
832                                    </li> 
833                                </#list> 
834                            </ul> 
835                            <#if showCollapse> 
836                                ${collapseAfter()} 
837                            </#if> 
838                        </#if> 
839                    </div> 
840                </div> 
841                <#if showLeftInCard> 
842            </div> 
843            </#if> 
844 
845        </div> 
846 
847        <div class="col-12 col-sm-12 col-md-4"> 
848            <div class="vr-details-right"> 
849                <#if existsAndHasContent1(einrichtung.mitarbeiterList!'') && !showEmployeesCollapse> 
850 
851                    <div class="card" id="zustaendigeKontaktperson"> 
852                        <div class="card-header"> 
853                            <#if einrichtung.mitarbeiterList?size gt 1> 
854                                <h2>Zuständige Kontaktpersonen</h2> 
855                            <#else> 
856                                <h2>Zuständige Kontaktperson</h2> 
857                            </#if> 
858                        </div> 
859                        <div class="card-body"> 
860                            <ul class="el--contact"> 
861                                <#assign loop = 1 /> 
862                                <#list einrichtung.mitarbeiterList as mitarbeiter> 
863                                    <li> 
864                                        <#if loop != 1> 
865                                            <hr class="mb-2"> 
866                                        </#if> 
867                                        <p class="el--contact__content"> 
868                                            <a href="${utils.createRenderUrl(renderResponse,mitarbeiterShow, mitarbeiter.id)}">${mitarbeiter.volleAnsprache()}</a> 
869                                            <#if existsAndHasContent1(mitarbeiter.position!'')> 
870                                                <br/><i class="el--contact__content__position">${mitarbeiter.position}</i> 
871                                            </#if> 
872                                        </p> 
873                                        <dl class="el--contact__list"> 
874                                            <#if existsAndHasContent1(mitarbeiter.telefonnummer!'')> 
875                                                <dt>Telefon:</dt> 
876                                                <dd><a href="${createPhoneHref3(mitarbeiter)}">${mitarbeiter.telefonnummer}</a></dd> 
877                                            </#if> 
878                                            <#if existsAndHasContent1(mitarbeiter.email!'')> 
879                                                <dt>E-Mail:</dt> 
880                                                <dd><a href="${createMailHref5(mitarbeiter)}">${mitarbeiter.email}</a></dd> 
881                                            </#if> 
882                                        </dl> 
883                                    </li> 
884                                    <#assign loop = loop + 1 /> 
885                                </#list> 
886                            </ul> 
887                        </div> 
888                    </div> 
889                </#if> 
890                <#if existsAndHasContent1(einrichtung.mitarbeiterList!'') && showEmployeesCollapse> 
891 
892                    <div class="card" id="zustaendigeKontaktperson"> 
893                        <div class="card-header"> 
894                            <#if einrichtung.mitarbeiterList?size gt 1> 
895                                <h2>Zuständige Kontaktpersonen</h2> 
896                            <#else> 
897                                <h2>Zuständige Kontaktperson</h2> 
898                            </#if> 
899                        </div> 
900                        <div class="card-body"> 
901 
902                            <ul class="el--contact"> 
903                                <#assign loop = 1/> 
904                                <#list einrichtung.mitarbeiterList as mitarbeiter> 
905                                    <li class="mb-2"> 
906                                        <button data-toggle="collapse" 
907                                                data-target="#mit-${mitarbeiter.id?replace(' ','')}" 
908                                                class=" employeeCollapse <#if showEmployeesCollapseAs == "button"> btn btn-secondary </#if>  w-100 text-left text-break"> 
909                                            ${employeesCollapseIcon}${mitarbeiter.volleAnsprache()}</button> 
910                                        <div id="mit-${mitarbeiter.id?replace(' ','')}" class="collapse"> 
911                                            <ul class="mt-2"> 
912                                                <li > 
913                                                    <p> 
914                                                        <strong>Profil:</strong> <a href="${utils.createRenderUrl(renderResponse,mitarbeiterShow, mitarbeiter.id)}">Link</a> 
915                                                    </p> 
916                                                </li> 
917                                                <#if existsAndHasContent1(mitarbeiter.position!'')> 
918                                                    <li> 
919                                                        <p> 
920                                                            <strong>Position:</strong> <i class="el--contact__content__position">${mitarbeiter.position}</i> 
921                                                        </p> 
922                                                    </li> 
923                                                </#if> 
924                                                <#if existsAndHasContent1(mitarbeiter.telefonnummer!'')> 
925                                                    <li> 
926                                                        <p> 
927                                                            <strong>Telefon:</strong> <a href="${createPhoneHref3(mitarbeiter)}">${mitarbeiter.telefonnummer}</a> 
928                                                        </p> 
929                                                    </li> 
930                                                </#if> 
931                                                <#if existsAndHasContent1(mitarbeiter.mobil!'')> 
932                                                    <li> 
933                                                        <p> 
934                                                            <strong>Mobil:</strong> <a href="${createMobilHref3(mitarbeiter)}">${mitarbeiter.mobil}</a> 
935                                                        </p> 
936                                                    </li> 
937                                                </#if> 
938                                                <#if existsAndHasContent1(mitarbeiter.email!'')> 
939                                                    <li> 
940                                                        <p> 
941                                                            <strong>E-Mail:</strong> <a href="${createMailHref5(mitarbeiter)}">${mitarbeiter.email}</a> 
942                                                        </p> 
943                                                    </li> 
944                                                </#if> 
945                                            </ul> 
946                                        </div> 
947                                    </li> 
948                                    <#assign loop = loop + 1/> 
949                                </#list> 
950                            </ul> 
951                        </div> 
952                    </div> 
953                </#if> 
954            </div> 
955        </div> 
956    </div> 
957</#if> 
958<#if bis2017.ausgewaehlterMitarbeiter??> 
959<#-- Mitarbeitende --> 
960    <#assign 
961    mitarbeiter = bis2017.ausgewaehlterMitarbeiter 
962    /> 
963 
964    <div class="row"> 
965        <div class="col-12 col-sm-12 col-md-8 px-4 pl-lg-3"> 
966            <div class="vr-details-left"> 
967                <#if showLeftInCard> 
968                <div class="card"> 
969                    </#if> 
970                    <div class=""> 
971                        <div class="employee-header"> 
972                            <div class="sideHeadline" id="seitentitel"> 
973                                <h1>${mitarbeiter.volleAnsprache()}</h1> 
974                            </div> 
975 
976                            <#if existsAndHasContent1(mitarbeiter.position!'')> 
977                                <p>${mitarbeiter.position}</p> 
978                            </#if> 
979                        </div> 
980                        <div class="el-textmodul"> 
981                            <#if existsAndHasContent1(mitarbeiter.beschreibung!'')> 
982                                <h2 class="sr-only">Beschreibung</h2> 
983                                <p>${mitarbeiter.beschreibung}</p> 
984                                <hr/> 
985                            </#if> 
986 
987                            <#if existsAndHasContent1(mitarbeiter.beschreibungIntern!'')> 
988                                <h2 class="sr-only">Beschreibung Intern</h2> 
989                                <p>${mitarbeiter.beschreibungIntern}</p> 
990                                <hr/> 
991                            </#if> 
992 
993                            <#if existsAndHasContent1(mitarbeiter.einrichtungList!'')> 
994                                <h2>Anschrift</h2> 
995                                <#assign i = 0 /> 
996                                <#list mitarbeiter.einrichtungList as einrichtung> 
997                                    <#if i < 1> 
998                                        <#if existsAndHasContent1(einrichtung.anschrift!'')> 
999                                            ${createAddressUL16(einrichtung, 'employee-address',mitarbeiter)} 
1000                                        <#else> 
1001                                            <p><strong><a href="${utils.createRenderUrl(renderResponse,$einrichtungShow, $einrichtung.id)}">${einrichtung.name}</a></strong></p> <br/> 
1002                                        </#if> 
1003                                        <#if existsAndHasContent1(mitarbeiter.telefonnummer!'') 
1004                                        || existsAndHasContent1(mitarbeiter.faxnummer!'') 
1005                                        || existsAndHasContent1(mitarbeiter.mobil!'') 
1006                                        ||existsAndHasContent1(mitarbeiter.email!'') 
1007
1008                                            <hr> 
1009                                            <h2>Kontakt</h2> 
1010                                            ${createContactList9(mitarbeiter, 'employee-contact')} 
1011                                        </#if> 
1012 
1013 
1014                                        <#if existsAndHasContent1(einrichtung.anschrift!'') && showEmployeeMap> 
1015                                            <#assign lat = 0/> 
1016                                            <#assign lng = 0/> 
1017                                            <#assign mapTitle = 'Karte'/> 
1018 
1019                                            <#if existsAndHasContent1(einrichtung.anschrift.geokodierung!'')> 
1020                                                <#assign lat = einrichtung.anschrift.geokodierung.latitude?number/> 
1021                                                <#assign lng = einrichtung.anschrift.geokodierung.longitude?number/> 
1022                                            </#if> 
1023                                            <@openstreetmap52 mapTitle lat lng /> 
1024                                        </#if> 
1025                                    </#if> 
1026                                    <#assign i = i+1/> 
1027                                </#list> 
1028                            <#else> 
1029                                <#if existsAndHasContent1(mitarbeiter.telefonnummer!'') 
1030                                || existsAndHasContent1($mitarbeiter.faxnummer!'') 
1031                                || existsAndHasContent1(mitarbeiter.mobil!'') 
1032                                ||existsAndHasContent1(mitarbeiter.email!'') 
1033
1034                                    <h2>Kontakt</h2> 
1035                                    ${createContactList9(mitarbeiter, 'employee-contact')} 
1036                                </#if> 
1037                            </#if> 
1038                            <#assign serviceZeitenEmpty = mitarbeiter.servicezeitenFreitext?has_content /> 
1039                            <#if mitarbeiter.servicezeitenStrukturiert?? && mitarbeiter.servicezeitenStrukturiert.tage??> 
1040                                <#list mitarbeiter.servicezeitenStrukturiert.tage?values as value> 
1041                                    <#list value.paare?values as paare> 
1042                                        <#if paare?? && paare?has_content> 
1043                                            <#assign serviceZeitenEmpty = false /> 
1044                                            <#break> 
1045                                        </#if> 
1046                                    </#list> 
1047                                    <#if !serviceZeitenEmpty> 
1048                                        <#break> 
1049                                    </#if> 
1050                                </#list> 
1051                            </#if> 
1052 
1053                            <#if !serviceZeitenEmpty> 
1054                                <#if showCollapse> 
1055                                    ${collapseBefore20('Servicezeiten',collapseIcon,'')} 
1056                                <#else> 
1057                                    <hr> 
1058                                    <h2>Servicezeiten</h2> 
1059                                </#if> 
1060                                <@createTimeTable15 mitarbeiter/> 
1061                                <p class="mt-2"> 
1062                                    ${mitarbeiter.servicezeitenFreitext} 
1063                                </p> 
1064                                <#if showCollapse> 
1065                                    ${collapseAfter()} 
1066                                </#if> 
1067                            <#elseif existsAndHasContent1(mitarbeiter.servicezeiten!'')> 
1068                                <#if showCollapse> 
1069                                    ${collapseBefore20('Servicezeiten',collapseIcon,'')} 
1070                                <#else> 
1071                                    <hr> 
1072                                    <h2>Servicezeiten</h2> 
1073                                </#if> 
1074                                <p> 
1075                                    ${mitarbeiter.servicezeiten} 
1076                                </p> 
1077                                <#if mitarbeiter.servicezeitenFreitext> 
1078                                    <p class="mt-2"> 
1079                                        ${mitarbeiter.servicezeitenFreitext} 
1080                                    </p> 
1081                                </#if> 
1082                                <#if showCollapse> 
1083                                    ${collapseAfter()} 
1084                                </#if> 
1085                            </#if> 
1086                            <#if existsAndHasContent1(mitarbeiter.dienstleistungList!'')> 
1087                                <#if showCollapse> 
1088                                    ${collapseBefore20('Dienstleistungen',collapseIcon,'')} 
1089                                <#else> 
1090                                    <hr> 
1091                                    <h2>Dienstleistungen</h2> 
1092                                </#if> 
1093                                <ul style="padding: 0"> 
1094                                    <#list mitarbeiter.dienstleistungList as dienstleistung> 
1095                                        <li> 
1096                                            <p> 
1097                                                <a href="${utils.createRenderUrl(renderResponse,dienstleistungShow, dienstleistung.id)}">${dienstleistung.name}</a> 
1098                                            </p> 
1099                                        </li> 
1100                                    </#list> 
1101                                </ul> 
1102 
1103                                <#if showCollapse> 
1104                                    ${collapseAfter()} 
1105                                </#if> 
1106                            </#if> 
1107                        </div> 
1108                    </div> 
1109                    <#if showLeftInCard> 
1110                </div> 
1111                </#if> 
1112            </div> 
1113        </div> 
1114        <div class="col-12 col-sm-12 col-md-4"> 
1115            <div class="vr-details-right"> 
1116                <#if existsAndHasContent1(mitarbeiter.portrait!'')> 
1117                    <#if !showLeftInCard> 
1118                        <#assign portrait = '<div class="w-100"><img src="${mitarbeiter.portrait}" alt="Mitarbeitenden Portrait" style="width: 100%;height: 100%;"/></div>' /> 
1119                    <#else> 
1120                        <#assign portrait = '<div class="w-100" style="text-align:center;"><img src="${mitarbeiter.portrait}" alt="Mitarbeitenden Portrait" style="width: 100%;height: 100%; max-width:200px"/></div>' /> 
1121                    </#if> 
1122                    ${card3('Mitarbeitenden Portrait',portrait)} 
1123                </#if> 
1124 
1125                <#if existsAndHasContent1(mitarbeiter.einrichtungList!'')> 
1126                    <div class="card" id="mbZustaendigeEinrichtungen"> 
1127                        <div class="card-header"> 
1128                            <#if mitarbeiter.einrichtungList?size gt 1 > 
1129                                <h2>Zuständige Einrichtungen</h2> 
1130                            <#else> 
1131                                <h2>Zuständige Einrichtung</h2> 
1132                            </#if> 
1133                        </div> 
1134                        <div class="card-body"> 
1135                            <ul> 
1136                                <#assign counter = 0 /> 
1137                                <#list mitarbeiter.einrichtungList as einrichtung > 
1138                                    <#assign counter = counter + 1/> 
1139                                    <li> 
1140                                        <a href="${utils.createRenderUrl(renderResponse,einrichtungShow, einrichtung.id)}">${getFullFacilityName9(einrichtung,'employee-facility-list')}</a> 
1141                                        <#if counter < mitarbeiter.einrichtungList?size> 
1142                                            <hr> 
1143                                        </#if> 
1144                                    </li> 
1145                                </#list> 
1146                            </ul> 
1147                        </div> 
1148                    </div> 
1149                </#if> 
1150            </div> 
1151        </div> 
1152    </div> 
1153    <@employeesExport16 employeeData=mitarbeiter /> 
1154</#if> 
1155 
1156<#if vr.zfinder2017??> 
1157    <#if vr.zfinder2017.ausgewaehlteLeistung??> 
1158        ausgewaehlteLeistung 
1159    </#if> 
1160    <#if vr.zfinder2017.additionalInformation??> 
1161        additionalInformation 
1162    </#if> 
1163</#if> 
1164 
1165 
1166 
1167 
1168 
1169 
1170 
1171 
1172 
1173 
1174 
1175 
1176 
1177 
1178<#function createLoginURL destination> 
1179    <#assign 
1180    login_url1_WithHtml = 'href="'+ login_url +'?p_p_id=com_liferay_login_web_portlet_LoginPortlet&p_p_lifecycle=0&_com_liferay_login_web_portlet_LoginPortlet_redirect=' 
1181    login_url2_WithHtml = '" rel="nofollow" data-redirect="true"' 
1182    login_url_WithHtml = login_url1_WithHtml + destination + login_url2_WithHtml 
1183    /> 
1184    <#return login_url_WithHtml /> 
1185</#function> 
1186 
1187<#macro employeesExport16 employeeData> 
1188    <div id="export" style="display:none;"> 
1189        <div id="export-id">${employeeData.id}</div> 
1190        <div id="export-person"> 
1191            <div id="export-person-anrede"><#if employeeData.anrede??>${employeeData.anrede}</#if></div> 
1192            <div id="export-person-titel"><#if employeeData.titel??>${employeeData.titel}</#if></div> 
1193            <div id="export-person-vorname"><#if employeeData.vorname??>${employeeData.vorname} </#if></div> 
1194            <div id="export-person-familienname"><#if employeeData.familienname??>${employeeData.familienname} </#if></div> 
1195            <div id="export-person-funktion"><#if employeeData.position??>${employeeData.position} </#if></div> 
1196        </div> 
1197        <div id="export-beschreibung"><#if employeeData.beschreibung??>${employeeData.beschreibung}</#if></div> 
1198        <div id="export-kontakt"> 
1199            <div id="export-kontakt-telefonnummer"><#if employeeData.telefonnummer??>${employeeData.telefonnummer}</#if></div> 
1200            <div id="export-kontakt-faxnummer"><#if employeeData.faxnummer??>${employeeData.faxnummer} </#if></div> 
1201            <div id="export-kontakt-telefonnummer-mobil"><#if employeeData.mobil??>${employeeData.mobil} </#if></div> 
1202            <div id="export-kontakt-email-adresse"><#if employeeData.email??>${employeeData.email} </#if></div> 
1203        </div> 
1204        <div id="export-anschrift"> 
1205            <#if employeeData.einrichtungList??> 
1206                <#assign einrichtung = employeeData.einrichtungList[0]/> 
1207            <#else> 
1208                <#assign einrichtung = '' /> 
1209            </#if> 
1210            <div id="export-anschrift-url-einrichtung"> 
1211                <#if einrichtung?? && einrichtung?has_content> 
1212                    <a href="${utils.createRenderUrl(renderResponse,einrichtungShow, einrichtung.id)}"> 
1213                        ${einrichtung.name} 
1214                    </a> 
1215                </#if> 
1216            </div> 
1217            <#if einrichtung?? && einrichtung?has_content> 
1218                <div id="export-anschrift-strasse"><#if einrichtung.anschrift.strasse??>${einrichtung.anschrift.strasse} </#if></div> 
1219                <div id="export-anschrift-hausnummer"><#if einrichtung.anschrift.hausnummer??>${einrichtung.anschrift.hausnummer} </#if></div> 
1220                <div id="export-anschrift-ort"><#if einrichtung.anschrift.ort??>${einrichtung.anschrift.ort}</#if></div> 
1221                <div id="export-anschrift-postleitzahl"><#if einrichtung.anschrift.postleitzahl??>${einrichtung.anschrift.postleitzahl} </#if></div> 
1222                <div id="export-anschrift-zusatz"><#if einrichtung.anschrift.zusatz??>${einrichtung.anschrift.zusatz} </#if></div> 
1223                <div id="export-anschrift-postfach"><#if einrichtung.anschrift.postfach??>${einrichtung.anschrift.postfach} </#if></div> 
1224            </#if> 
1225 
1226            <div id="export-anschrift-raum"><#if employeeData.raum??>${employeeData.raum} </#if></div> 
1227        </div> 
1228        <div id="export-servicezeiten"> 
1229            <div id="export-servicezeiten-tabelle"> 
1230                <#assign serviceZeitenEmpty = employeeData.servicezeitenFreitext?has_content /> 
1231                <#if employeeData.servicezeitenStrukturiert?? && employeeData.servicezeitenStrukturiert.tage??> 
1232                    <#list employeeData.servicezeitenStrukturiert.tage?values as value> 
1233                        <#list value.paare?values as paare> 
1234                            <#if paare?? && paare?has_content> 
1235                                <#assign serviceZeitenEmpty = false /> 
1236                                <#break> 
1237                            </#if> 
1238                        </#list> 
1239                        <#if !serviceZeitenEmpty> 
1240                            <#break> 
1241                        </#if> 
1242                    </#list> 
1243                </#if> 
1244                <#if serviceZeitenEmpty??> 
1245                    <@createTimeTable15 employeeData/> 
1246                <#elseif employeeData.servicezeiten??> 
1247                    ${employeeData.servicezeiten} 
1248                </#if> 
1249            </div> 
1250            <div id="export-servicezeiten-anmerkungen"><#if employeeData.servicezeitenFreitext??> ${employeeData.servicezeitenFreitext} </#if></div> 
1251        </div> 
1252 
1253        <div id="export-amt-fachbereich"> 
1254            <#if employeeData.amtFachbereich??> 
1255                <a href="${utils.createRenderUrl(renderResponse,einrichtungShow, employeeData.amtFachbereich.id)}">${employeeData.amtFachbereich.name}</a> 
1256            </#if> 
1257        </div> 
1258 
1259        <#if einrichtung??> 
1260            <div id="export-verkehrsanbindung"> 
1261                <#if einrichtung.anschrift.verkehrsanbindung??>${einrichtung.anschrift.verkehrsanbindung}</#if> 
1262            </div> 
1263            <div id="export-geokoordinaten"> 
1264                <#if einrichtung.anschrift.geokodierung??> 
1265                <div id="export-geokooridnaten-breitengrad"><#if einrichtung.anschrift.geokodierung.latitude??>${einrichtung.anschrift.geokodierung.latitude} </#if> 
1266                </div> 
1267                <div id="export-geokooridnaten-laengengrad"><#if einrichtung.anschrift.geokodierung.longitude??>${einrichtung.anschrift.geokodierung.longitude} </#if> 
1268                </div> 
1269                </#if> 
1270                <div id="export-geokooridnaten-anfahrt-url"> 
1271                    <#if einrichtung.anschrift.anfahrtUrl?? && einrichtung.anschrift.anfahrtUrl?has_content> 
1272                        <#assign anfahrtUrl = einrichtung.anschrift.anfahrtUrl[0]/> 
1273                        <a href="${anfahrtUrl.uri}">${anfahrtUrl.titel}</a> 
1274                    </#if> 
1275                </div> 
1276 
1277            </div> 
1278        </#if> 
1279        <div id="export-dienstleistungen"> 
1280            <ul> 
1281                <#if mitarbeiter.dienstleistungList??> 
1282                    <#list employeeData.dienstleistungList as dienstleistung> 
1283                        <li> 
1284                            <a href="${utils.createRenderUrl(renderResponse,dienstleistungShow, dienstleistung.id)}"> 
1285                                ${dienstleistung.name} 
1286                            </a> 
1287                        </li> 
1288                    </#list> 
1289                </#if> 
1290            </ul> 
1291        </div> 
1292        <div id="export-einrichtungen"> 
1293            <ul> 
1294                <#list employeeData.einrichtungList as einrichtung> 
1295                    <li> 
1296                        <a href="${utils.createRenderUrl(renderResponse,einrichtungShow, einrichtung.id)}"> 
1297                            ${einrichtung.name} 
1298                        </a> 
1299                    </li> 
1300                </#list> 
1301            </ul> 
1302        </div> 
1303    </div> 
1304</#macro> 
1305 
1306<#macro portletSearch> 
1307    <script> 
1308        $(document).ready( function() { 
1309            const trigger = $('.search-detail'); 
1310 
1311            $('html').click(function() { 
1312                console.log("hide") 
1313            }); 
1314 
1315            $(trigger).click(function(event){ 
1316                console.log("EGAL!") 
1317                event.stopPropagation(); 
1318            }); 
1319        }); 
1320    </script> 
1321 
1322    <script> 
1323        $(document).ready(function () { 
1324            $(".search-placeholder").append(jQuery(".search-area").parent().parent()); 
1325            $(".search-placeholder").append(jQuery("#wait")); 
1326            $(".search-placeholder").append(jQuery("#resp").parent()); 
1327        }); 
1328 
1329        $('#co').submit(function (evt) { 
1330            evt.preventDefault(); 
1331        }); 
1332    </script> 
1333    <div id="search-dropdown" <#if !bis2017.ausgewaehlteDienstleistung?? || !bis2017.ausgewaehlteEinrichtung?? || !bis2017.ausgewaehlterMitarbeiter??> style="display: none !important" </#if>> 
1334        <div id="resp"> 
1335            <#if vr??> 
1336                <script> 
1337                    $(".search-placeholder").addClass("search-with-results"); 
1338                    $("#form-element-query").keyup(function () { 
1339 
1340                        if (!this.value) { 
1341                            $(".search-placeholder.search").removeClass("search-with-results"); 
1342
1343 
1344                    }); 
1345                </script> 
1346                <div class="row mt-3"> 
1347                    <div class="col-12"> 
1348                        <div class="search-detail"> 
1349                            <#if bis2017.ausgewaehlteDienstleistung?? && bis2017.ausgewaehlteEinrichtung?? && bis2017.ausgewaehlterMitarbeiter?? && (!dienstleistung) && (!mitarbeiter) && (!einrichtung)> 
1350                                <p>Es gab keine Treffer zu Ihrer Suchanfrage.</p> 
1351                            <#else> 
1352                                <div class="row"> 
1353 
1354                                    <#if suchergebnisDienstleistung??> 
1355                                        <div class="col-12 col-sm-12 col-md-6 col-lg-4 col-xl-4"> 
1356                                            <h2>Dienstleistungen (${suchergebnisDienstleistung?size}</h2> 
1357                                            <ol> 
1358                                                <#list suchergebnisDienstleistung as i> 
1359                                                    <li class="mb-2"> 
1360                                                        <a href="${utils.getDienstleistungUrl(i.id)}" class="el--search__form__assist__kat__list__item">${i.name}</a> 
1361                                                    </li> 
1362                                                </#list> 
1363                                            </ol> 
1364                                        </div> 
1365                                    </#if> 
1366 
1367                                    <#if suchergebnisEinrichtung??> 
1368                                        <div class="col-12 col-sm-12 col-md-6 col-lg-4 col-xl-4"> 
1369                                            <h2>Einrichtungen (${suchergebnisEinrichtung?size})</h2> 
1370                                            <ol> 
1371                                                <#list suchergebnisEinrichtung as i> 
1372                                                    <li class="mb-2"> 
1373                                                        <a href="${utils.getEinrichtungUrl(i.id)}" class="el--search__form__assist__kat__list__item">${i.name}</a> 
1374                                                    </li> 
1375                                                </#list> 
1376                                            </ol> 
1377                                        </div> 
1378                                    </#if> 
1379 
1380                                    <#if suchergebnisMitarbeiter??> 
1381                                        <div class="col-12 col-sm-12 col-md-6 col-lg-4 col-xl-4"> 
1382                                            <h2>Ansprechpartner (${suchergebnisMitarbeiter?size})</h2> 
1383                                            <ol> 
1384                                                <#list suchergebnisMitarbeiter as i> 
1385                                                    <li class="mb-2"> 
1386                                                        <a href="${utils.getMitarbeiterUrl(i.id)}" class="el--search__form__assist__kat__list__item">${i.volleAnsprache()}</a> 
1387                                                    </li> 
1388                                                </#list> 
1389                                            </ol> 
1390                                        </div> 
1391                                    </#if> 
1392                                </div> 
1393                            </#if> 
1394                        </div> 
1395                    </div> 
1396                </div> 
1397            </#if> 
1398        </div> 
1399    </div> 
1400    <div class="search-styling"> 
1401        <div class="card p-4"> 
1402            <div class="search-placeholder search"> 
1403                <h1>Suche</h1> 
1404            </div> 
1405        </div> 
1406    </div> 
1407</#macro> 
1408 
1409<#function createPersoIcon13 class> 
1410    <#return '<i aria-label="Icon-Elektronischer Personalausweis" class="'+class+'"><img aria-hidden="true"  style="background: white;border-radius: 0.2rem;width: auto;height: 16px;display: inline;vertical-align: baseline;" class="persoIcon '+class+'" src ="/o/bot-theme/images/perso.svg" alt=""/></i>' /> 
1411</#function> 
1412 
1413<#macro externContentLoader9 headline content contentUrl privacyTitle privacyUrl showButtonText hideButtonText> 
1414    <div class="externContentLoader" aria-hidden="true"> 
1415        <div class="row"> 
1416            <div class="col-12 contentCol"> 
1417                <div class="extern-hide"> 
1418                    ${headline} 
1419                    ${content} 
1420                </div> 
1421                <div class="extern-show d-none"  data-content="${contentUrl}"></div> 
1422            </div> 
1423            <div class="col-6 mt-2"> 
1424                <button class="btn btn-primary load-extern"> 
1425                    ${showButtonText} 
1426                </button> 
1427                <button class="btn btn-primary remove-extern d-none"> 
1428                    ${hideButtonText} 
1429                </button> 
1430            </div> 
1431            <div class="col-6 mt-3 privacyUrl"> 
1432                <a href="${privacyUrl}"> 
1433                    ${privacyTitle} 
1434                </a> 
1435            </div> 
1436        </div> 
1437    </div> 
1438 
1439    <script> 
1440        $(document).ready(function(){ 
1441 
1442            function loadExtern(element,url){ 
1443                $(element).append('<iframe style="height: 100%" src=' + url +' width="100%"></iframe>'); 
1444
1445 
1446            function removeExtern(element){ 
1447                $(element).remove(); 
1448
1449 
1450            function showContent(contentElement,buttonElement){ 
1451                contentElement.removeClass("d-none"); 
1452                buttonElement.removeClass("d-none"); 
1453                contentElement.addClass("d-block"); 
1454                buttonElement.addClass("d-block"); 
1455
1456            function hideContent(contentElement,buttonElement){ 
1457                contentElement.removeClass("d-block"); 
1458                buttonElement.removeClass("d-block"); 
1459                contentElement.addClass("d-none"); 
1460                buttonElement.addClass("d-none"); 
1461
1462            function findClosest(element,toFindElement){ 
1463                return $(element).find(toFindElement); 
1464
1465 
1466            function getParent(element){ 
1467                return $(element).closest(".externContentLoader"); 
1468
1469 
1470            $(".load-extern").on("click",function(){ 
1471                let parent = getParent(this); 
1472                let externShow = findClosest(parent,".extern-show"); 
1473                let externHide = findClosest(parent,".extern-hide"); 
1474                let externShowBtn = $(this); 
1475                let externHideBtn = findClosest(parent,".remove-extern"); 
1476 
1477 
1478                showContent(externShow,externHideBtn); 
1479                hideContent(externHide,externShowBtn); 
1480                loadExtern(externShow,$(externShow).attr("data-content")) 
1481            }) 
1482 
1483            $(".remove-extern").on("click",function(){ 
1484                let parent = getParent(this); 
1485                let externShow = findClosest(parent,".extern-show"); 
1486                let externHide = findClosest(parent,".extern-hide"); 
1487                let externShowBtn = findClosest(parent,".load-extern"); 
1488                let externHideBtn = $(this); 
1489 
1490                hideContent(externShow,externHideBtn); 
1491                showContent(externHide,externShowBtn); 
1492                removeExtern(externShow.children()); 
1493            }) 
1494        }) 
1495    </script> 
1496</#macro> 
1497 
1498<#macro createTimeTable15 baseVariable> 
1499    <#assign serviceZeitenEmpty = baseVariable.servicezeitenFreitext?has_content /> 
1500    <#if baseVariable.servicezeitenStrukturiert?? && baseVariable.servicezeitenStrukturiert.tage??> 
1501        <#list baseVariable.servicezeitenStrukturiert.tage?values as value> 
1502            <#list value.paare?values as paare> 
1503                <#if paare?? && paare?has_content> 
1504                    <#assign serviceZeitenEmpty = false /> 
1505                    <#break> 
1506                </#if> 
1507            </#list> 
1508            <#if !serviceZeitenEmpty> 
1509                <#break> 
1510            </#if> 
1511        </#list> 
1512    </#if> 
1513 
1514 
1515    <#if !serviceZeitenEmpty> 
1516        <table id="serviceTimeTable" class="table table-striped" style="width:100%;"> 
1517            <thead class=""> 
1518            <tr> 
1519                <th style="width: calc(20%)" class="">Wochentag</th> 
1520                <th style="width: calc(80% / 2)" class="">Servicezeitraum 1</th> 
1521                <th style="width: calc(80% / 2)" class="">Servicezeitraum 2</th> 
1522            </tr> 
1523            </thead> 
1524            <tbody> 
1525            <#list baseVariable.servicezeitenStrukturiert.tage as tagName, tagZeiten> 
1526                <#assign emptyTag = true /> 
1527                <#list tagZeiten.paare?values as tagZeitenPaar> 
1528                    <#if tagZeitenPaar?? && tagZeitenPaar?has_content && tagZeitenPaar != '-' > 
1529                        <#assign emptyTag = false /> 
1530                        <#break> 
1531                    </#if> 
1532                </#list> 
1533                <#if emptyTag> 
1534                <#else> 
1535                    <#if tagName??> 
1536                        <#assign 
1537                        tagNameFormated = tagName?substring(0, 1)?upper_case 
1538                        tagNameFormated = tagNameFormated + tagName?substring(1)?lower_case 
1539                        /> 
1540                        <tr> 
1541                            <td>${tagNameFormated}</td> 
1542                            <#assign ersterEintraginSpalte = true /> 
1543                            <#list tagZeiten.paare as key, value> 
1544                                <#if key == "VORMITTAGS"> 
1545                                    <#if value.getVon()?? && value.getBis()?has_content && value.getBis()?? && value.getBis()?has_content> 
1546                                        <td class=""> 
1547                                            ${value.getVon()} bis ${value.getBis()} Uhr 
1548                                        </td> 
1549                                    <#else> 
1550                                        <td class=""></td> 
1551                                    </#if> 
1552                                </#if> 
1553                                <#if key == "NACHMITTAGS"> 
1554                                    <#if value.getVon()?? && value.getBis()?has_content && value.getBis()?? && value.getBis()?has_content> 
1555                                        <td class=""> 
1556                                            ${value.getVon()} bis ${value.getBis()} Uhr 
1557                                        </td> 
1558                                    <#else> 
1559                                        <td class=""></td> 
1560                                    </#if> 
1561                                </#if> 
1562                            </#list> 
1563                        </tr> 
1564                    </#if> 
1565                </#if> 
1566            </#list> 
1567            </tbody> 
1568        </table> 
1569    </#if> 
1570</#macro> 
1571 
1572<#function createPhoneHref3 baseObject > 
1573    <#return createNumberHref3(baseObject.telefonnummer,'tel') /> 
1574</#function> 
1575<#function createFaxHref3 baseObject > 
1576    <#return createNumberHref3(baseObject.faxnummer,'fax') /> 
1577</#function> 
1578<#function createMailHref5 baseObject > 
1579    <#return 'mailto:'+baseObject.email /> 
1580</#function> 
1581<#function createMobilHref3 baseObject > 
1582    <#return createNumberHref3(baseObject.mobil,'tel' ) /> 
1583</#function> 
1584<#function createNumberHref3 baseObject prefix> 
1585    <#assign 
1586    phonenumber = baseObject?replace('-','')?replace(' ','') 
1587    index = phonenumber?index_of('0') 
1588    index = index + 1 
1589    combinatedPhonenumber = prefix+":+49"+phonenumber?substring(index) 
1590    /> 
1591    <#return combinatedPhonenumber /> 
1592</#function> 
1593 
1594<#function createContactList9 base listClass> 
1595    <#assign 
1596    listString = "<ul class='${listClass}' aria-label='Kontaktmöglichkeiten' style='list-style: none !important;padding: 0 !important;'>" 
1597    /> 
1598    <#if base.telefonnummer??> 
1599        <#assign listString = listString+ 
1600        "<li class='telefonnummer-li'> 
1601        <p class='m-0'>Telefon: 
1602            <a href='${createPhoneHref3(base)}' title='anrufen'>${base.telefonnummer} </a> 
1603        </p> 
1604    </li>" 
1605        /> 
1606    </#if> 
1607    <#if base.mobil??> 
1608        <#assign listString = listString+ 
1609        "<li class='mobilnummer-li'> 
1610        <p class='m-0'>Mobil: 
1611            <a href='${createMobilHref3(base)}' title='anrufen'>${base.mobil} </a> 
1612        </p> 
1613    </li>" 
1614        /> 
1615    </#if> 
1616    <#if base.faxnummer??> 
1617        <#assign listString = listString+ 
1618        "<li class='faxnummer-li'> 
1619        <p class='m-0'>Fax: 
1620            <a href='${createFaxHref3(base)}' title='Faxen'>${base.faxnummer} </a> 
1621        </p> 
1622    </li>" 
1623        /> 
1624    </#if> 
1625    <#if base.email??> 
1626        <#assign listString = listString+ 
1627        "<li class='email-li'> 
1628        <p class='m-0'>E-Mail: 
1629            <a href='${createMailHref5(base)}' title='E-Mail schreiben'>${base.email}</a> 
1630        </p> 
1631    </li>" 
1632        /> 
1633    </#if> 
1634    <#assign listString = listString+"</ul>" /> 
1635    <#return listString /> 
1636</#function> 
1637 
1638<#function getFullFacilityName9 einrichtung spanClass> 
1639    <#assign 
1640    getFullFacilityNameCounter = 1 
1641    einrichtungsname = '' 
1642    /> 
1643    <#if einrichtung.breadcrumb?? && einrichtung.breadcrumb?has_content> 
1644        <#list einrichtung.breadcrumb as i> 
1645            <#if i.showAlways && i.name != einrichtung.name> 
1646                <#assign 
1647                einrichtungsname = einrichtungsname+' <span class="facility-name-level-'+getFullFacilityNameCounter+' '+spanClass+'">'+i.name+' </span>' 
1648                getFullFacilityNameCounter = getFullFacilityNameCounter+1 
1649                /> 
1650            </#if> 
1651        </#list> 
1652 
1653    </#if> 
1654 
1655    <#if einrichtungsname == ''> 
1656        <#assign einrichtungsname = '<span class="facility-name-level-1 '+spanClass+'">'+einrichtung.name+'</span>' /> 
1657    <#else> 
1658        <#assign einrichtungsname =   einrichtungsname+'<span class="facility-name-level-'+getFullFacilityNameCounter+' '+spanClass+'">'+einrichtung.name+' </span>' /> 
1659    </#if> 
1660    <#return einrichtungsname /> 
1661</#function> 
1662 
1663<#function createAddressUL16 einrichtung listClass mitarbeiter> 
1664    <#assign 
1665    fullFacilityNameClass = listClass+'name' 
1666    listString ="<ul aria-label='Adresse' class='address-list ${listClass}' style='list-style: none !important;padding: 0 !important;'>" 
1667    listString = listString+ 
1668    "<li> 
1669                ${getFullFacilityName9(einrichtung,fullFacilityNameClass)} 
1670            </li>" 
1671    listString = listString+ 
1672    "<li class='nameDerAdresse-li'> 
1673                    <span class='nameDerAdresse'> 
1674                        ${einrichtung.anschrift.name} 
1675                    </span> 
1676            </li>" 
1677    /> 
1678    <#if existsAndHasContent1(einrichtung.anschrift.strasse!'') || existsAndHasContent1(einrichtung.anschrift.hausnummer!'') > 
1679        <#assign listString = listString+ "<li class='strasse-hausnummer-li'>" /> 
1680        <#if existsAndHasContent1(einrichtung.anschrift.strasse!'')> 
1681            <#assign listString = listString+ "<span aria-label='Strasse' class='strasse'>${einrichtung.anschrift.strasse}</span> "/> 
1682        </#if> 
1683        <#if existsAndHasContent1(einrichtung.anschrift.hausnummer!'')> 
1684            <#assign listString = listString+ "<span aria-label='Hausnummer' class='hausnummer'>${einrichtung.anschrift.hausnummer}</span> "/> 
1685        </#if> 
1686        <#assign listString = listString+ "</li>" /> 
1687    </#if> 
1688    <#if existsAndHasContent1(einrichtung.anschrift.postleitzahl!'') || existsAndHasContent1(einrichtung.anschrift.ort!'')> 
1689        <#assign listString = listString+ "<li class='postleitzahl-ort-li'>" /> 
1690        <#if existsAndHasContent1(einrichtung.anschrift.postleitzahl!'')> 
1691            <#assign listString = listString+ "<span aria-label='Postleitzahl' class='postleitzahl'>${einrichtung.anschrift.postleitzahl}</span> "/> 
1692        </#if> 
1693        <#if existsAndHasContent1(einrichtung.anschrift.ort!'')> 
1694            <#assign listString = listString+ "<span aria-label='Ort' class='ort'>${einrichtung.anschrift.ort}</span>" /> 
1695        </#if> 
1696        <#assign listString = listString+ "</li>"/> 
1697    </#if> 
1698    <#if existsAndHasContent1(mitarbeiter!'')> 
1699        <#if mitarbeiter.raum??> 
1700            <#assign listString = listString+ "<li class='raum-li'>" /> 
1701            <#if einrichtung.anschrift.postleitzahl??> 
1702                <#assign listString = listString+ "<span aria-label='Raum' class='raum'>Raum ${mitarbeiter.raum}</span> "/> 
1703            </#if> 
1704            <#assign listString = listString+ "</li>" /> 
1705        </#if> 
1706    </#if> 
1707 
1708    <#if existsAndHasContent1(einrichtung.anschrift.postfach!'')> 
1709        <#assign listString = listString+ 
1710        "<li class='mt-2 postfach-li'> 
1711            <p class='m-0'><span class='postfach'>Postfach ${einrichtung.anschrift.getPostfach()}</span></p> 
1712            <p class='m-0'>" 
1713        /> 
1714 
1715        <#if existsAndHasContent1(einrichtung.anschrift.postfachPostleitzahl!'')> 
1716            <#assign listString = listString+ "<span aria-label='Postfach Postleitzahl' class='postleitzahl'> 
1717                ${einrichtung.anschrift.postfachPostleitzahl} 
1718                </span>" 
1719            /> 
1720        </#if> 
1721        <#if existsAndHasContent1(einrichtung.anschrift.postfachOrt!'')> 
1722            <#assign listString = listString+ "<span aria-label='Postfach Ort' class='ort'> 
1723                ${einrichtung.anschrift.postfachOrt} 
1724                </span>" 
1725            /> 
1726        </#if> 
1727        <#assign listString = listString+ "</p></li>"/> 
1728    </#if> 
1729    <#if existsAndHasContent1(einrichtung.anschrift.zusatz!'')> 
1730        <#assign listString = listString+ 
1731        "<li class='mt-2 adresszusatz-li'> 
1732        <p class='m-0'> 
1733                        <span class='adresszusatz'> 
1734                            <strong>Adresszusatz: </strong> 
1735                            <br/> 
1736                            ${einrichtung.anschrift.getZusatz()} 
1737                        </span> 
1738        </p></li>" 
1739        /> 
1740    </#if> 
1741    <#assign listString = listString+'</ul>'/> 
1742    <#return listString /> 
1743</#function> 
1744 
1745<#macro kostenliste3> 
1746    <#if existsAndHasContent1(dienstleistung.kostenmodul.beschreibung!'') ||  existsAndHasContent1(dienstleistung.kostenmodul.kosten!'')> 
1747        <#if existsAndHasContent1(dienstleistung.kostenmodul.kosten!'')> 
1748            <#assign showDescription = false /> 
1749            <#list dienstleistung.kostenmodul.kosten as kosten> 
1750                <#if existsAndHasContent1(kosten.beschreibung!'')> 
1751                    <#assign showDescription = true /> 
1752                </#if> 
1753            </#list> 
1754            <table class="w-100"> 
1755                <thead> 
1756                <tr> 
1757                    <th <#if showDescription> style="width:60%" <#else> style="width:80%" </#if> 
1758                            class="pl-0 pr-2 py-2">Name 
1759                    </th> 
1760                    <th class="p-2 d-none">Typ</th> 
1761                    <th <#if showDescription> style="width:15%" <#else> style="width:20%" </#if> 
1762                            class="p-2">Kosten</th> 
1763                    <#if showDescription> 
1764                        <th class="p-2" style="width:25%">Beschreibung</th> 
1765                    </#if> 
1766                </tr> 
1767                </thead> 
1768                <tbody> 
1769                <#list dienstleistung.kostenmodul.kosten as kosten> 
1770                    <tr> 
1771                        <td class="pl-0 pr-2 py-2">${kosten.name}</td> 
1772                        <td class="p-2 d-none"> 
1773                            <#assign kostenTypeName = kosten.typ+'' /> 
1774                            ${kostenTypeName?substring(0, 1)?upper_case}${kostenTypeName?substring(1)?lower_case} 
1775                        </td> 
1776                        <td class="p-2"> 
1777                            <#if kosten.isKostenfrei()> 
1778                                kostenfrei 
1779                            <#elseif kosten.isKostenVariabel()> 
1780                                zwischen ${utils.formatCurrency(kosten.von)} und ${utils.formatCurrency(kosten.bis)} EUR 
1781                            <#else> 
1782                                ${utils.formatCurrency(kosten.von)} EUR 
1783                            </#if> 
1784                        </td> 
1785                        <#if showDescription> 
1786                            <td class="p-2"> <#if kosten.beschreibung??> ${kosten.beschreibung} </#if></td> 
1787                        </#if> 
1788                    </tr> 
1789                </#list> 
1790                </tbody> 
1791            </table> 
1792        </#if> 
1793        ${dienstleistung.kostenmodul.beschreibung} 
1794    </#if> 
1795</#macro> 
1796 
1797<#macro openstreetmap52 headline lat lng> 
1798    <#if (lat?has_content && lng?has_content) && (lat gt 0 && lng gt 0)> 
1799        <hr> 
1800        <h2>${headline}</h2> 
1801        <div style=""> 
1802            <#assign 
1803            url = 'https://www.openstreetmap.org' 
1804            uri = '/export/embed.html?' 
1805            delimiter = '%2C' 
1806            box = 'bbox=' + (lng + 0.000911951065064) + delimiter + (lat + 0.00044345841716) + delimiter + (lng - 0.000911951065064) + delimiter + (lat - 0.00044345421122) + '&amp;layer=mapnik&amp;marker='+lat+delimiter+lng 
1807            headline = getterUtil.getString(themeDisplay.getThemeSetting("03-vr-details-extern-content-map-headline")) 
1808            content = getterUtil.getString(themeDisplay.getThemeSetting("03-vr-details-extern-content-map-content")) 
1809            privacyTitle = getterUtil.getString(themeDisplay.getThemeSetting("03-vr-details-extern-content-map-privacy-title")) 
1810            privacyUrl = getterUtil.getString(themeDisplay.getThemeSetting("03-vr-details-extern-content-map-privacy-url")) 
1811            showButtonText = getterUtil.getString(themeDisplay.getThemeSetting("03-vr-details-extern-content-map-show-button-title")) 
1812            hideButtonText = getterUtil.getString(themeDisplay.getThemeSetting("03-vr-details-extern-content-map-hide-button-title")) 
1813            contentUrl = url+uri+box 
1814            /> 
1815            <@externContentLoader9 headline content contentUrl privacyTitle privacyUrl showButtonText hideButtonText /> 
1816            <hr> 
1817        </div> 
1818    </#if> 
1819</#macro> 
1820 
1821<#function collapseBefore20 title icon colappseId> 
1822    <#if dienstleistung?has_content> 
1823        <#assign shortName = 'dl'/> 
1824    <#elseif einrichtung?has_content> 
1825        <#assign shortName = 'fa'/> 
1826    <#elseif mitarbeiter?has_content> 
1827        <#assign shortName = 'mi'/> 
1828    </#if> 
1829 
1830    <#if colappseId != ''> 
1831        <#assign collapeId = colappseId?replace(' ','')?replace('\\.','')?replace('/','')/> 
1832    <#else> 
1833        <#assign collapeId = title?replace(' ','')?replace('\\.','')?replace('/','')/> 
1834    </#if> 
1835    <#return "<div class='card collapseCard' id='collapse-${shortName}-base-${collapeId}'> 
1836        <div class='card-header'> 
1837            <a class='card-link collapsed' data-toggle='collapse' href='#${shortName}-${collapeId}' aria-expanded='false'> 
1838                ${icon} 
1839                <h2>${title}</h2> 
1840            </a> 
1841        </div> 
1842        <div id='${shortName}-${collapeId}' class='collapse'> 
1843            <div class='card-body'> "/> 
1844</#function> 
1845 
1846<#function collapseAfter> 
1847    <#return "</div></div></div>"/> 
1848</#function> 
1849 
1850<#function createDLnewLink8 css, linkClass, bevoreLinkTitle, icon, title, targetParam, descriptionParam, hrefParam, aditionalAttributsParams> 
1851    <#if descriptionParam?? && descriptionParam?has_content> 
1852        <#assign descriptionTitle = "title='${descriptionParam}'" /> 
1853    </#if> 
1854    <#if targetParam == "blank"> 
1855        <#assign target = "_blank" /> 
1856    <#elseif targetParam == "self"> 
1857        <#assign target = "_self" /> 
1858    <#else> 
1859        <#assign target = "_blank" /> 
1860    </#if> 
1861    <#if hrefParam?has_content && hrefParam != ''> 
1862        <#assign href= "href='${hrefParam}'" /> 
1863    <#else> 
1864        <#assign href = '' /> 
1865    </#if> 
1866 
1867    <#if aditionalAttributsParams?? && aditionalAttributsParams?has_content> 
1868        <#assign attributs = aditionalAttributsParams /> 
1869    <#else> 
1870        <#assign attributs = '' /> 
1871    </#if> 
1872    <#return "<a class='${linkClass}' 
1873       style='${css}' 
1874       target='${target}' 
1875            ${descriptionTitle} 
1876            ${href} 
1877 
1878       ${attributs}> 
1879          <!--${aditionalAttributsParams} --> 
1880        ${bevoreLinkTitle} 
1881        ${icon} 
1882        <span>${title}</span> 
1883    </a>" /> 
1884</#function> 
1885 
1886<#function iconLegendListEntry5 show icon content> 
1887    <#assign value = '' /> 
1888    <#if show> 
1889        <#assign value = "<li class=''> 
1890            <div class='row'> 
1891                <div class='col-2' style='min-height: 35px;display: flex;justify-content: center;align-items: center;'> 
1892                    <p class='mb-0'>${icon} 
1893                </div> 
1894                <div class='col-10' style='min-height: 35px;display: flex;justify-content:left ;align-items: center;'> 
1895                    <p class='mb-0'>${content} 
1896                </div> 
1897            </div> 
1898        </li>" 
1899        /> 
1900    </#if> 
1901    <#return value> 
1902</#function> 
1903 
1904<#macro iconLegendList10 elementId destination fontColor persoLogo persoContent lockIcon lockContent moneyIcon moneyContent> 
1905    <#if showDLLockIcon || showDLMoneyIcon || showDLPersoLogo> 
1906        <div class="<#if showDLIcons??> sr-only </#if>" style="font-size: 0.7rem" id="${elementId}"> 
1907            <h3 class="mb-0 mt-3" style="color:${fontColor}; font-weight: 700 !important;font-size: small !important;">Icon Legende</h3> 
1908            <ul style="font-size: 0.7rem; list-style: none !important; padding-left: 0 !important;" aria-label="Icon Legende"> 
1909                ${iconLegendListEntry5(showDLPersoLogo,persoLogo, persoContent)} 
1910                ${iconLegendListEntry5(showDLLockIcon,lockIcon, lockContent)} 
1911                ${iconLegendListEntry5(showDLMoneyIcon,moneyIcon, moneyContent)} 
1912            </ul> 
1913            <a class="sr-only sr-only-focusable" href="#${destination}" >Sprung zur den Onlinedienstleistungen</a> 
1914        </div> 
1915    </#if> 
1916</#macro> 
1917 
1918<#macro collapseList6 collapseId headline htmlContent htmlClass showAs> 
1919    <button 
1920            data-toggle="collapse" 
1921            data-target="#${collapseId}" 
1922            class="${htmlClass} <#if showAs == "button"> btn btn-secondary </#if> w-100 text-left text-break"> 
1923        ${headline} 
1924    </button> 
1925    <div id="${collapseId}" class="collapse"> 
1926        ${htmlContent} 
1927    </div> 
1928</#macro> 
1929 
1930<#function card3 title content> 
1931    <#return "<div class='card'> 
1932        <div class='card-header'> 
1933            <h2>${title}</h2> 
1934        </div> 
1935        <div class='card-body'> 
1936            ${content} 
1937        </div> 
1938    </div>" /> 
1939</#function> 
1940 
1941<#function getLabelName4 dienstleistung pathName default > 
1942<#-- <#if dienstleistung.labels?? && dienstleistung.labels?has_content> 
1943     ${dienstleistung.labels?size} 
1944     <#if dienstleistung.labels.getOrDefault(pathName, default)?? && dienstleistung.labels.getOrDefault(pathName, default)?has_content> 
1945         <#return dienstleistung.labels.getOrDefault(pathName, default) /> 
1946     </#if> 
1947 <#else>--> 
1948    <#return default> 
1949<#-- </#if>--> 
1950</#function> 
1951 
1952<#function renderTextmodul12 modul labelPath defaultLabelName> 
1953    <#assign 
1954    value ="" 
1955    label = "${getLabelName4(dienstleistung, labelPath,defaultLabelName)}" 
1956    elementId =  labelPath?replace('.','') 
1957    /> 
1958    <#if existsAndHasContent1(modul.inhalt!'')> 
1959        <#if showCollapse> 
1960            <#assign value = value + "${collapseBefore20(label,collapseIcon,elementId)}"/> 
1961        </#if> 
1962        <#assign value = value + "${content_item3(label,modul.inhalt ,showLines)}"/> 
1963        <#if showCollapse> 
1964            <#assign value = value + "${collapseAfter()}"/> 
1965        </#if> 
1966    </#if> 
1967    <#return value/> 
1968</#function> 
1969 
1970<#function content_item3 title content line> 
1971    <#assign value = "<div>" /> 
1972    <#if line == true> 
1973        <#assign value = value + "<hr>"/> 
1974    </#if> 
1975    <#if line == true> 
1976        <#assign value = value + "<h2>${title}</h2>"/> 
1977    </#if> 
1978    <#assign value = value + "${content}</div>"/> 
1979    <#return value /> 
1980</#function> 
1981 
1982<#function linklooper7 linkList> 
1983    <#assign 
1984    value = "" 
1985    class = "" 
1986    target = "" 
1987    /> 
1988    <#if linkList??> 
1989        <#list linkList.weiterfuehrenderLink as link> 
1990            <#if linksAsButton> 
1991                <#assign class = "btn btn-secondary w-100 text-left mt-2" /> 
1992            </#if> 
1993            <#if link.neuesFenster> 
1994                target='_blank' 
1995            </#if> 
1996            <#assign 
1997            value = value + "<li> 
1998                <a href='${link.uri}' title='${link.titel}' class='${class}' ${target}>${IconBeforeOnlineServices}${link.titel}</a> 
1999            </li>"/> 
2000        </#list> 
2001    </#if> 
2002    <#return value> 
2003</#function> 
2004 
2005<#function linklooperUL1 linkList> 
2006    <#assign 
2007    value = "" 
2008    class = "" 
2009    target = "" 
2010    /> 
2011    <#if linkList??> 
2012        <#list linkList.weiterfuehrenderLink as link> 
2013            <#if linksAsButton> 
2014                <#assign class = "btn btn-secondary w-100 text-left" /> 
2015            </#if> 
2016            <#if link.neuesFenster> 
2017                target='_blank' 
2018            </#if> 
2019            <#assign 
2020            value = value + "<li> 
2021                <a href='${link.uri}' title='${link.titel}' class='${class}' ${target}>${link.titel}</a> 
2022            </li>"/> 
2023        </#list> 
2024    </#if> 
2025    <#return value> 
2026</#function> 
2027 
2028<#macro onlineServices147 linkToIconsid destination dienstleistung linkCss linkclass beforeLinkTitle lockIcon persoIcon moneyIcon dlNeedsLogin dlNeedsEidLogin dlHasCosts dlAndHasCosts internetAdressen> 
2029    <#assign 
2030    iconBefore = getterUtil.getString(themeDisplay.getThemeSetting("03-vr-details-left-online-services-icon")) 
2031    beforeLinkTitle = iconBefore 
2032    /> 
2033 
2034    <#if existsAndSizeGTZero(dienstleistung.extensions) 
2035    || existsAndSizeGTZero(dienstleistung.formulare) 
2036    || (dienstleistung.kontaktformularUrl?? && dienstleistung.kontaktformularUrl?has_content) 
2037    || existsAndSizeGTZero(dienstleistung.internetadressen) 
2038    || existsAndSizeGTZero(dienstleistung.textmodul.formulare)> 
2039        <#if showDLIcons && (showDLLockIcon || showDLMoneyIcon)> 
2040            <a class="sr-only sr-only-focusable" href="#${destination}" id="${linkToIconsid}">Sprung zur Icon Legende.</a> 
2041        </#if> 
2042        <ul style="list-style: none !important; padding-left: 0 !important;"> 
2043            <#assign 
2044            css = linkCss 
2045            dlElementClass = linkClass 
2046            /> 
2047            <#if existsAndSizeGTZero(dienstleistung.extensions)> 
2048                <#assign userAuthLevel = utils.getAuthLevel(renderRequest)/> 
2049                <#assign idCounter = 1 /> 
2050                <#list dienstleistung.extensions as formular> 
2051 
2052                    <#assign title = formular.titel/> 
2053                    <#assign minAuthLevel = formular.minAuthLevel /> 
2054                    <#if loginForAllExtensions> 
2055                        <#if minAuthLevel == 0 > 
2056                            <#assign minAuthLevel = 1 /> 
2057                        </#if> 
2058                    </#if> 
2059                    <#if userAuthLevel gte minAuthLevel> 
2060                        <li class="mb-2"> 
2061                            <p class="mb-0"> 
2062                                <#assign description = "${formular.titel}."/> 
2063                                <#if formular.paymentSupported> 
2064                                    <#assign description =description + dlHasCosts /> 
2065                                </#if> 
2066                                <#assign target = 'self'/> 
2067                                <#assign icon = ''/> 
2068                                <#if formular.paymentSupported> 
2069                                    <#assign showDLMoneyIcon = true /> 
2070                                    <#assign icon = icon+moneyIcon /> 
2071                                </#if> 
2072                                <#assign href = formular.uri/> 
2073                                <#assign aditionalAttributs = ''/> 
2074                                ${createDLnewLink8(css dlElementClass iconBefore icon title target description href aditionalAttributs)} 
2075                            </p> 
2076                        </li> 
2077                    <#else> 
2078                        <#if minAuthLevel == 1> 
2079                            <#assign showDLLockIcon = true /> 
2080                            <li class="mb-2"> 
2081                                <p class="mb-0"> 
2082                                    <#assign description = "${formular.titel}. ${dlNeedsLogin}" /> 
2083                                    <#if formular.paymentSupported> 
2084                                        <#assign description = description + dlAndHasCosts /> 
2085                                    </#if> 
2086                                    <#assign target = 'self' /> 
2087                                    <#assign icon = lockIcon /> 
2088                                    <#if formular.paymentSupported > 
2089                                        <#assign showDLMoneyIcon = true /> 
2090                                        <#assign icon =icon+moneyIcon /> 
2091                                    </#if> 
2092                                    <#assign href = '' /> 
2093                                    <#assign aditionalAttributs = "${createLoginURL(formular.uri)}"/> 
2094                                    ${createDLnewLink8(css, dlElementClass, iconBefore, icon, title, target, description, href, aditionalAttributs)} 
2095                                </p> 
2096                            </li> 
2097                        <#elseif minAuthLevel == 2> 
2098                            <#assign showDLLockIcon = true /> 
2099                            <li class="mb-2"> 
2100                                <p class="mb-0"> 
2101                                    <#assign description = "${formular.titel}. ${dlNeedsLogin}"/> 
2102                                    <#if formular.paymentSupported > 
2103                                        <#assign description = description + dlAndHasCosts /> 
2104                                    </#if> 
2105                                    <#assign target = 'self'/> 
2106                                    <#assign icon =lockIcon/> 
2107                                    <#if formular.paymentSupported> 
2108                                        <#assign showDLMoneyIcon = true /> 
2109                                        <#assign icon =icon+moneyIcon/> 
2110                                    </#if> 
2111                                    <#assign href = '' /> 
2112                                    <#assign aditionalAttributs = "${createLoginURL(formular.uri)}"/> 
2113                                    ${createDLnewLink8(css, dlElementClass, iconBefore, icon, title, target, description, href, aditionalAttributs)} 
2114                                </p> 
2115                            </li> 
2116                        <#elseif minAuthLevel == 3> 
2117                            <#assign showDLPersoLogo = true /> 
2118                            <li class="mb-2"> 
2119                                <p class="mb-0"> 
2120                                    <#assign description = "${formular.titel}. ${dlNeedsEidLogin}"/> 
2121                                    <#if formular.paymentSupported> 
2122                                        <#assign description = description + dlAndHasCosts/> 
2123                                    </#if> 
2124                                    <#assign target = 'self'/> 
2125 
2126                                    <#assign persoIconId = 'PersoIcon'+idCounter/> 
2127                                    <#assign icon = "${createPersoIcon13(persoIconId)}"/> 
2128 
2129                                    <#if formular.paymentSupported > 
2130                                        <#assign showDLMoneyIcon = true /> 
2131                                        <#assign icon =icon+moneyIcon/> 
2132                                    </#if> 
2133                                    <#assign serviceName = dienstleistung.name /> 
2134                                    <#assign nameForDescrptionSite = serviceName?replace('\\&','')?replace(' ','&ensp;')?replace('\\?','')?replace('\\#','')?replace('\\*','')?replace('\\+','')?replace('\\','')?replace('\\/','') /> 
2135 
2136                                    <#assign href = "${eIDLoginURLLevel4}?dlname=${nameForDescrptionSite}&dlurl=${themeDisplay.getURLCurrent()}"/> 
2137                                    <#assign aditionalAttributs = '' /> 
2138                                    ${createDLnewLink8(css, dlElementClass, iconBefore, icon, title, target, description, href, aditionalAttributs)} 
2139                                </p> 
2140                            </li> 
2141                        </#if> 
2142                    </#if> 
2143                    <#assign idCounter = idCounter + 1 /> 
2144                </#list> 
2145            </#if> 
2146            <#if !utils.angemeldet && !dienstleistung.nutzbarAlsGast> 
2147                <#if dienstleistung.formulare??> 
2148                    <#assign showDLLockIcon = true/> 
2149                    <#list dienstleistung.formulare as formular> 
2150                        <li class="mb-2"> 
2151                            <p class="mb-0"> 
2152                                <#assign title = formular.titel/> 
2153                                <#assign description = "${title}. ${dlNeedsLogin}"/> 
2154                                <#if formular.neuesFenster> 
2155                                    <#assign target = "blank"/> 
2156                                <#else> 
2157                                    <#assign target = 'self'/> 
2158                                </#if> 
2159                                <#assign icon =lockIcon/> 
2160                                <#assign href = ''/> 
2161                                <#assign aditionalAttributs = "${createLoginURL(formular.uri)}"/> 
2162                                ${createDLnewLink8(css, dlElementClass, iconBefore, icon, title, target, description, href, aditionalAttributs)} 
2163                            </p> 
2164                        </li> 
2165                    </#list> 
2166                </#if> 
2167                <#if dienstleistung.kontaktformularUrl?? && dienstleistung.kontaktformularUrl?has_content> 
2168                    <#assign showDLLockIcon = true /> 
2169                    <li class="mb-2"> 
2170                        <p class="mb-0"> 
2171                            <#assign title = 'Zum Kontaktformular' /> 
2172                            <#assign description = "${title}. ${dlNeedsLogin}"/> 
2173                            <#assign target = ''/> 
2174                            <#assign icon =lockIcon/> 
2175                            <#assign href = ''/> 
2176                            <#assign aditionalAttributs = "${createLoginURL(dienstleistung.kontaktformularUrl)}"/> 
2177                           <!-- ${aditionalAttributs} --> 
2178                            ${createDLnewLink8(css, dlElementClass, iconBefore, icon, title, target, description, href, aditionalAttributs)} 
2179                        </p> 
2180                    </li> 
2181                </#if> 
2182                <#if formularWithLogin> 
2183                    <!-- Linkformulare und Links--> 
2184                    <#if existsAndSizeGTZero(dienstleistung.textmodul.formulare)> 
2185                        <#list dienstleistung.textmodul.formulare.weiterfuehrenderLink as formular> 
2186                            <li class="mb-2"> 
2187                                <p class="mb-0"> 
2188                                    <#if formular.titel != "" && !formular.titel??> 
2189                                        <#assign title = formular.titel/> 
2190                                    <#else> 
2191                                        <#assign title = formular.uri/> 
2192                                    </#if> 
2193 
2194                                    <#assign description = "${title}. ${dlNeedsLogin}"/> 
2195                                    <#if formular.neuesFenster> 
2196                                        <#assign target = 'blank'/> 
2197                                    <#else> 
2198                                        <#assign target = 'self'/> 
2199                                    </#if> 
2200                                    <#assign icon = lockIcon/> 
2201                                    <#assign href = '' /> 
2202                                    <#assign aditionalAttributs = "${createLoginURL(formular.uri)}" /> 
2203                                    ${createDLnewLink8(css, dlElementClass, iconBefore, icon, title, target, description, href, aditionalAttributs)} 
2204                                </p> 
2205                            </li> 
2206                        </#list> 
2207                    </#if> 
2208                    <#if internetAdressen == true && existsAndSizeGTZero(dienstleistung.internetadressen)> 
2209                        <#list dienstleistung.internetadressen as link> 
2210                            <li class="mb-2"> 
2211                                <p class="mb-0"> 
2212                                    <#if link.titel != "" && link.titel??> 
2213                                        <#assign title = link.titel/> 
2214                                    <#else> 
2215                                        <#assign title = link.uri/> 
2216                                    </#if> 
2217 
2218                                    <#assign description = "${title}. ${dlNeedsLogin}"/> 
2219                                    <#if link.neuesFenster> 
2220                                        <#assign target = 'blank'/> 
2221                                    <#else> 
2222                                        <#assign target = 'self'/> 
2223                                    </#if> 
2224                                    <#assign icon =lockIcon/> 
2225                                    <#assign href = ''/> 
2226                                    <#assign aditionalAttributs = "${createLoginURL(link.uri)}"/> 
2227                                    ${createDLnewLink8(css, dlElementClass, iconBefore, icon, title, target, description, href, aditionalAttributs)} 
2228                                </p> 
2229                            </li> 
2230                        </#list> 
2231                    </#if> 
2232                    <!-- Linkformulare und Links ende--> 
2233                </#if> 
2234            <#else> 
2235                <#if existsAndSizeGTZero(dienstleistung.formulare)> 
2236                    <#list dienstleistung.formulare as formular> 
2237                        <li class="mb-2"> 
2238                            <p class="mb-0"> 
2239                                <#assign title = formular.titel/> 
2240                                <#assign description = "${title}. ${dlNeedsLogin}"/> 
2241                                <#if formular.neuesFenster> 
2242                                    <#assign target = 'blank'/> 
2243                                <#else> 
2244                                    <#assign target = 'self'/> 
2245                                </#if> 
2246                                <#assign icon =''/> 
2247                                <#assign href = formular.uri/> 
2248                                <#assign aditionalAttributs = ''/> 
2249                                ${createDLnewLink8(css, dlElementClass, iconBefore, icon, title, target, description, href, aditionalAttributs)} 
2250                            </p> 
2251                        </li> 
2252                    </#list> 
2253                </#if> 
2254                <#if dienstleistung.kontaktformularUrl?? && dienstleistung.kontaktformularUrl?has_content> 
2255                    <li class="mb-2"> 
2256                        <p class="mb-0"> 
2257                            <#assign title = 'Zum Kontaktformular'/> 
2258                            <#assign description = title/> 
2259                            <#assign target = ''/> 
2260                            <#assign icon = ''/> 
2261                            <#assign href = dienstleistung.kontaktformularUrl/> 
2262                            <#assign aditionalAttributs = '' /> 
2263                            ${createDLnewLink8(css, dlElementClass, iconBefore, icon, title, target, description, href, aditionalAttributs)} 
2264                        </p> 
2265                    </li> 
2266                </#if> 
2267            </#if> 
2268            <#if formularWithLogin == false || utils.angemeldet || dienstleistung.nutzbarAlsGast> 
2269                <#if existsAndSizeGTZero(dienstleistung.textmodul.formulare)> 
2270                    <#list dienstleistung.textmodul.formulare.weiterfuehrenderLink as formular > 
2271                        <li class="mb-2"> 
2272                            <p class="mb-0"> 
2273 
2274                                <#if formular.titel != "" && formular.titel??> 
2275                                    <#assign title = formular.titel /> 
2276                                <#else> 
2277                                    <#assign title = formular.uri /> 
2278                                </#if> 
2279 
2280                                <#assign description = title /> 
2281                                <#if formular.neuesFenster > 
2282                                    <#assign target = 'blank'/> 
2283                                <#else> 
2284                                    <#assign target = 'self'/> 
2285                                </#if> 
2286                                <#assign icon ='' /> 
2287                                <#assign href = formular.uri/> 
2288                                <#assign aditionalAttributs = '' /> 
2289                                ${createDLnewLink8(css, dlElementClass, iconBefore, icon, title, target, description, href, aditionalAttributs)} 
2290                            </p> 
2291                        </li> 
2292                    </#list> 
2293                </#if> 
2294                <#if internetAdressen == true && existsAndSizeGTZero(dienstleistung.internetadressen)> 
2295                    <#list dienstleistung.internetadressen as link> 
2296                        <li class="mb-2"> 
2297                            <p class="mb-0"> 
2298                                <#if link.titel != "" && link.titel??> 
2299                                    <#assign title = link.titel/> 
2300                                <#else> 
2301                                    <#assign title = link.uri/> 
2302                                </#if> 
2303 
2304                                <#assign description = title /> 
2305                                <#if link.neuesFenster> 
2306                                    <#assign target = 'blank'/> 
2307                                <#else> 
2308                                    <#assign target = 'self'/> 
2309                                </#if> 
2310                                <#assign icon =''/> 
2311                                <#assign href = link.uri/> 
2312                                <#assign aditionalAttributs = '' /> 
2313                                ${createDLnewLink8(css, dlElementClass, iconBefore, icon, title, target, description, href, aditionalAttributs)} 
2314                            </p> 
2315                        </li> 
2316                    </#list> 
2317                </#if> 
2318            </#if> 
2319        </ul> 
2320    </#if> 
2321</#macro> 
2322 
2323 
2324<#function existsAndSizeGTZero element> 
2325    <#if element?? && element?size gt 0> 
2326        <#return true /> 
2327    <#else> 
2328        <#return false /> 
2329    </#if> 
2330</#function> 
2331 
2332<#function existsAndHasContent1 element> 
2333    <#if element?? && element?has_content> 
2334        <#return true /> 
2335    <#else> 
2336        <#return false /> 
2337    </#if> 
2338</#function>