DigiNepsy-klinikka
Virhe tapahtui prosessoidessa esitysmallia.
The following has evaluated to null or missing: ==> link_service_channel.ServiceChannels_WebPageChannel_Areas.ServiceChannels_WebPageChannel_Areas_Municipality [in template "594611#594639#PTV_PALVELU_TEMPLATE" at line 600, column 24] ---- Tip: It's the step after the last dot that caused this error, not those before it. ---- Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: #list link_service_channel.ServiceCha... [in template "594611#594639#PTV_PALVELU_TEMPLATE" at line 600, column 17] ----
1<style>
2 :root {
3 --main-bg-color: #FFCF29;
4 --secondary-bg-color: #FFF1BF;
5
6 --lapha-primary-blue: #333399;
7 --lapha-primary-pink: #FF99CC;
8 }
9
10 .panel .sub-panel {
11 display: none;
12 }
13
14 .panel .sub-panel.show {
15 display: block;
16 }
17
18 .ptv-service {
19 background: white;
20 padding-bottom: 1px;
21 }
22
23 .ptv-service > * {
24 padding: 0 10px;
25 font-family: 'Montserrat';
26 }
27
28 .ptv-service > h1 {
29 margin-left: 0 !important;
30 margin-right: 0 !important;
31 margin-bottom: 1.75rem;
32 font-size: 2rem;
33 color: var(--lapha-primary-blue);
34 }
35
36 .ptv-service h2 {
37 font-size: 1.25rem;
38 margin-top: 2rem;
39 margin-bottom: 1.25rem;
40 }
41
42 .ptv-service h3 {
43 font-size: 1.3rem;
44 font-weight: 500;
45 margin-top: 1.5rem;
46 margin-bottom: 1rem;
47 }
48
49 .ptv-service h4 {
50 font-size: 1.25rem;
51 font-weight: 500;
52 margin-top: 1.5rem;
53 margin-bottom: 1rem;
54 }
55
56 .ptv-service p {
57 margin-bottom: 1rem !important;
58 }
59
60 .ptv-service a {
61 color: var(--lapha-primary-blue);
62 }
63
64 .ptv-service .servicechannel {
65 margin-top: 2rem;
66 margin-bottom: 2rem;
67 }
68
69 .panel-header.ptv-main-button.collapseToggler {
70 display: none;
71 }
72
73 .panel-header.ptv-main-button.collapseToggler.show {
74 display: flex;
75 }
76
77 .panel-header.ptv-main-button.collapseToggler[aria-expanded="false"]::after, .panel-header-child.collapseToggler[aria-expanded="false"]::after {
78 font-family: "Font Awesome 6 Free";
79 content: "\f067";
80 font-weight: 900;
81 margin-right: 1rem;
82 color: var(--lapha-primary-blue);
83 font-size: 20px;
84 }
85
86 .panel-header.ptv-main-button.collapseToggler[aria-expanded="true"]::after, .panel-header-child.collapseToggler[aria-expanded="true"]::after {
87 font-family: "Font Awesome 6 Free";
88 content: "\f068";
89 font-weight: 900;
90 margin-right: 1rem;
91 color: var(--lapha-primary-blue);
92 font-size: 20px;
93 }
94
95 .ptv-service .panel-header, .ptv-service .panel-header-child {
96 display: flex;
97 flex-direction: row;
98 justify-content: space-between;
99 align-items: center;
100 border: none;
101 width: 100%;
102 }
103
104 .ptv-service .panel-header {
105 padding: 0.75rem 1.5rem;
106 background-color: #FFFFFF;
107 border-bottom: 1px solid var(--lapha-primary-blue);
108 margin-bottom: 1rem;
109 color: var(--lapha-primary-blue);
110 }
111
112 .ptv-service .panel-header:hover, .ptv-service .panel-header:active, .ptv-service .panel-header:focus {
113 // background-color: var(--main-bg-color) !important;
114 }
115
116 .ptv-service .panel-header-child {
117 padding: 0.75rem 1.375rem;
118 background-color: white;
119 border: 2px solid whitesmoke;
120 border-radius: 0;
121 }
122
123 .ptv-service .panel-header-child:hover, .ptv-service .panel-header-child:active, .ptv-service .panel-header-child:focus {
124 background-color: white !important;
125 border-bottom: 2px solid var(--lapha-primary-blue);
126 }
127
128 .ptv-service .panel-title {
129 display: inline-flex;
130 flex: 1 1 auto;
131 margin: 0 !important;
132 padding-right: 1.5rem;
133 font-family: 'Montserrat';
134 font-weight: 500 !important;
135 text-align: left;
136 color: var(--lapha-primary-blue)
137 }
138
139 .ptv-service ul > li {
140 background-image: none;
141 }
142
143 .ptv-service li > a {
144 display: block;
145 }
146
147 .ptv-service .child-content {
148 // display: flex;
149 }
150
151 .ptv-service .schedule {
152 // margin-left: 1rem;
153 }
154
155 .ptv-service .schedule ul {
156 width: max-content;
157 }
158
159 .ptv-service .links {
160 margin: auto;
161 }
162
163 .ptv-service .links a {
164 border-radius: 20px;
165 padding: 0.5rem;
166 padding-left: 1rem;
167 padding-right: 1rem;
168 background-color: var(--lapha-primary-blue);
169 border: 1px solid #FFFFFF;
170 color: #FFFFFF;
171 width: max-content;
172 // margin-left: 1rem;
173 }
174
175 .ptv-service h2.panel-title {
176 font-size: 1.125rem !important;
177 font-weight: bold !important;
178 }
179
180 .ptv-service span.panel-title {
181 color: inherit;
182 font-size: 1rem;
183 }
184
185 /*.ptv-service .panel-header:hover h2.panel-title,
186 .ptv-service .panel-header:active h2.panel-title,
187 .ptv-service .panel-header:focus h2.panel-title {
188 color: white !important;
189 }*/
190
191 .ptv-service .panel-header-child:hover span.panel-title,
192 .ptv-service .panel-header-child:active span.panel-title,
193 .ptv-service .panel-header-child:focus span.panel-title {
194 font-weight: 700;
195 }
196
197 .ptv-service .panel-body {
198 padding: 0;
199 }
200
201 .ptv-service .panel-body-child {
202 padding: 1.5rem 1rem;
203 border: 2px solid whitesmoke;
204 border-top: 1px solid #333399;
205 }
206
207 .ptv-service .panel-body-child ul {
208 list-style-type: none;
209 padding-left: 0;
210 }
211
212 .ptv-service .panel-body-child h3, h4, p {
213 // margin: 0 !important;
214 }
215
216 .ptv-service .phone-channel_phone-numbers_container {
217 margin: 1.5rem 0 0 0;
218 padding: 0;
219 }
220
221 .ptv-service .phone-channel_phone-numbers_row {
222 list-style-type: none;
223 padding-left: 0;
224 }
225
226 .ptv-service .phone-channel_phone-numbers_row li {
227 display: flex;
228 flex-direction: column;
229 margin-bottom: 1rem;
230 box-sizing: border-box;
231 }
232
233 .ptv-service .phone-channel_phone-numbers_row li:nth-child(odd) {
234 // padding-right: 0.75rem;
235 }
236
237 .ptv-service .phone-channel_phone-numbers_row li:nth-child(even) {
238 // padding-left: 0.75rem;
239 }
240
241 @media (max-width: 767.98px) {
242 .ptv-service .phone-channel_phone-numbers_row li:nth-child(odd) {
243 padding-right: 0;
244 }
245
246 .ptv-service .phone-channel_phone-numbers_row li:nth-child(even) {
247 padding-left: 0;
248 }
249 #ptv-selected-city {
250 padding-top: 1rem;
251 }
252 .ptv-service a {
253 word-break: break-word;
254 }
255 }
256
257 .ptv-service .servicehours__info, .ptv-service .servicehours__info span, .ptv-service .servicehours__times, .ptv-service .address_street, .ptv-service .address_city {
258 display: block;
259 width: 100%;
260 }
261
262 .ptv-service .servicehours__times {
263 list-style-type: none;
264 padding-left: 0;
265 }
266
267 .additional-info {
268 // background: var(--secondary-bg-color);
269 // margin-left: -2rem;
270 // padding: 0.1rem 0 1rem 2rem;
271 // border: 1px solid var(--main-bg-color);
272 // border-radius: .25rem;
273 }
274
275 .omakunta button:hover, .omakunta button:active, .omakunta .btn:hover, .omakunta .btn:active {
276 filter: none;
277 }
278
279 .panel-title-count {
280 margin-left: 1rem;
281 padding: 0 10px;
282 background-color: var(--lapha-primary-pink);
283 border-radius: 50px;
284 height: fit-content;
285 }
286
287 /* Style the tab */
288 .tab {
289 overflow: hidden;
290 border-bottom: 2px solid var(--lapha-primary-blue);
291 }
292
293 /* Style the buttons that are used to open the tab content */
294 .tab button {
295 background-color: inherit;
296 float: left;
297 border: none;
298 outline: none;
299 cursor: pointer;
300 padding: 14px 16px;
301 transition: 0.3s;
302 }
303
304 .tablinks {
305 padding: 0.7rem;
306 }
307
308 /* Change background color of buttons on hover */
309 .tab button:hover {
310 background-color: #ddd;
311 }
312
313 /* Create an active/current tablink class */
314 .tab button.active {
315 background-color: var(--lapha-primary-blue);
316 color: #FFFFFF;
317 }
318
319 /* Style the tab content */
320 .tabcontent {
321 display: none;
322 padding: 6px 12px;
323 border-top: none;
324 padding-top: 2rem;
325 }
326
327 .tablist {
328 list-style-type: none;
329 padding: 0;
330 }
331
332 .tablist li {
333 list-style-type: none;
334 margin: 0;
335 }
336
337 .ptv-tab-content {
338 border: 2px solid #F6F6FA;
339 margin: 1rem 0;
340 word-break: break-word;
341 }
342
343 .ptv-select {
344 background-color: #fee0f0;
345 margin-top: 2rem;
346 padding: 2rem;
347 }
348
349 .ptv-select-div-title {
350 font-weight: bold !important;
351 color: var(--lapha-primary-blue) !important;
352 }
353
354 .ptv-select-div-row {
355 margin-top: 1rem;
356 }
357
358 .ptv-selected-city-text {
359 margin: auto;
360 }
361
362 #ptv-selected-city {
363 color: var(--lapha-primary-blue);
364 font-size: 22px;
365 font-weight: 600;
366 margin: 0 !important;
367 }
368
369 #lapha-ptv-municipality {
370 border: 2px solid #F6F6FA;
371 padding: 0.3rem;
372 }
373</style>
374
375<script>
376 function switchTab(evt, category) {
377 var i, tabcontent, tablinks;
378 tabcontent = document.getElementsByClassName("tabcontent");
379 for (i = 0; i < tabcontent.length; i++) {
380 tabcontent[i].style.display = "none";
381 }
382 tablinks = document.getElementsByClassName("tablinks");
383 for (i = 0; i < tablinks.length; i++) {
384 tablinks[i].className = tablinks[i].className.replace(" active", "");
385 }
386 document.getElementById(category).style.display = "block";
387 evt.currentTarget.className += " active";
388 }
389
390 function activateFirstTab() {
391 var i, tabcontent, tablinks;
392 tabcontent = document.getElementsByClassName("tabcontent");
393 tablinks = document.getElementsByClassName("tablinks");
394
395 if (tablinks.length) {
396 tablinks[0].className += " active";
397 tabcontent[0].style.display = "block";
398 }
399 }
400
401 window.onload = activateFirstTab;
402
403 // TO BE DONE
404 /* window.addEventListener(
405 "load",
406 function() {
407 var i, subPanel, arr;
408 subPanel = document.getElementsByClassName("sub-panel");
409 arr = [];
410
411 for(i = 0; i < subPanel.length; i++) {
412 arr.push(subPanel[i]);
413 }
414
415 arr.sort(function(a, b) {
416 return a.getAttribute("datastuff").localeCompare(b.getAttribute("datastuff"));
417 })
418 console.log(arr);
419 },
420 false
421 ); */
422</script>
423
424<#assign serviceHourParser=utilLocator.findUtil("o/ptv-portlet", "fi.vismaconsulting.istekki.ptv.admin.template.util.PTVDateParser") />
425<#assign ptvLocalizationHelper = utilLocator.findUtil("o/ptv-portlet", "fi.vismaconsulting.istekki.ptv.admin.template.util.PTVLocalizationHelper") />
426
427<#if ServiceChannels??>
428 <#assign linkingInformations = ServiceChannels.getSiblings() />
429</#if>
430
431<#macro newLinesToBr data >
432 ${data?replace("\n+", "</p> <p>","r")}
433</#macro>
434
435<#macro localize str>
436 ${ptvLocalizationHelper.localize(locale, str)}
437</#macro>
438
439<#macro parse_standard serviceHourItem >
440 <#assign additionalInformation = serviceHourItem.getAdditionalInformation() />
441 <#assign validOn = serviceHourItem.getValidOn() />
442
443 <#if validOn != "" >
444 <span class="servicehours__info">${serviceHourItem.getValidOn()}</span>
445 </#if>
446
447 <#if additionalInformation != "">
448 <span class="servicehours__info">${additionalInformation}</span>
449 </#if>
450
451 <#if serviceHourItem.getStatus() == "OPEN_WHOLE_DAY">
452 <span class="servicehours__times">
453 <@localize "ptv.open.whole.day" />
454 </span>
455 </#if>
456
457 <#if serviceHourItem.getStatus() == "CLOSED_WHOLE_DAY" >
458 <span class="servicehours__times">
459 <@localize "ptv.closed.whole.day" />
460 </span>
461 </#if>
462
463 <#if serviceHourItem.getOpeningTimes()?? >
464 <ul class="servicehours__times">
465 <#list serviceHourItem.getOpeningTimes() as openingTimeItem>
466 <li>
467 <#if openingTimeItem.getDayFrom() != "" || openingTimeItem.getDayTo() != "">
468 <span class="servicehours__opendate">
469 </#if>
470
471 <#if openingTimeItem.getDayFrom() != "">
472 ${openingTimeItem.getDayFrom()}
473 </#if>
474
475 <#if openingTimeItem.getDayFrom() != "" && openingTimeItem.getDayTo() != "">
476 -
477 </#if>
478
479 <#if openingTimeItem.getDayTo() != "">
480 ${openingTimeItem.getDayTo()}
481 </#if>
482
483 <#if openingTimeItem.getDayFrom() != "" || openingTimeItem.getDayTo() != "">
484 </span>
485 </#if>
486
487 <span class="servicehours__opentime">
488 ${openingTimeItem.getOpenTime()}
489 </span>
490 </li>
491 </#list>
492 </ul>
493 </#if>
494</#macro>
495
496<div class="ptv-service">
497 <#assign kuntaList = [] />
498
499 <h1 id="ptv-service-title">${ServiceNames_Name.getData()}</h1>
500
501 <#if ServiceDescriptions_GD_Description?? && ServiceDescriptions_GD_Description.getData() != "">
502 <p>
503 <@newLinesToBr data=ServiceDescriptions_GD_Description.getData() />
504 </p>
505 </#if>
506
507 <#if ServiceDescriptions_Description?? && ServiceDescriptions_Description.getData() != "">
508 <p>
509 <@newLinesToBr data=ServiceDescriptions_Description.getData() />
510 </p>
511 </#if>
512
513 <#if ServiceVouchersInUse?? && ServiceVouchersInUse.getData() != "">
514 <#if getterUtil.getBoolean(ServiceVouchersInUse.getData())>
515 <h2>Palveluseteli</h2><br>
516 <#list ServiceVouchers.getSiblings() as voucher>
517 <p>${voucher.ServiceVouchers_Value.getData()}</p><br>
518 <p>${voucher.ServiceVouchers_Language.getData()}</p><br>
519 <p>${voucher.ServiceVouchers_Url.getData()}</p><br>
520 <p>${voucher.ServiceVouchers_AdditionalInformation.getData()}</p><br>
521 </#list>
522 </#if>
523 </#if>
524
525 <#if Requirements.getSiblings()?has_content && Requirements.getData() != "">
526 <h2>Kenelle ja millä ehdoin</h2>
527 <#list Requirements.getSiblings() as cur_Requirements>
528 <p>
529 <@newLinesToBr data=cur_Requirements.getData() /></p>
530 </#list>
531 </#if>
532
533 <#assign municipalities_select = [] />
534
535 <!-- E-Channel -->
536 <#if ServiceChannels_EChannel?? && ServiceChannels_EChannel?has_content>
537 <#list ServiceChannels_EChannel.getSiblings() as e_service_channel>
538 <#if e_service_channel.ServiceChannels_EChannel_Areas?? && e_service_channel.ServiceChannels_EChannel_Areas.getSiblings()??>
539 <#list e_service_channel.ServiceChannels_EChannel_Areas.ServiceChannels_EChannel_Areas_Municipality.getSiblings() as e_channel>
540 <#if e_channel.ServiceChannels_EChannel_Areas_Municipality_Name?? && e_channel.ServiceChannels_EChannel_Areas_Municipality_Name.getData() != "">
541 <#if !municipalities_select?seq_contains(e_channel.ServiceChannels_EChannel_Areas_Municipality_Name.getData())>
542 <#assign municipalities_select = municipalities_select + [e_channel.ServiceChannels_EChannel_Areas_Municipality_Name.getData()] />
543 </#if>
544 </#if>
545 </#list>
546 </#if>
547 </#list>
548 </#if>
549
550
551 <!-- Phone -->
552 <#if ServiceChannels_PhoneChannel?? && ServiceChannels_PhoneChannel?has_content>
553 <#list ServiceChannels_PhoneChannel.getSiblings() as phone_service_channel>
554 <#if phone_service_channel.ServiceChannels_PhoneChannel_Areas?? && phone_service_channel.ServiceChannels_PhoneChannel_Areas.getSiblings()??>
555 <#list phone_service_channel.ServiceChannels_PhoneChannel_Areas.ServiceChannels_PhoneChannel_Areas_Municipality.getSiblings() as phone_channel>
556 <#if phone_channel.ServiceChannels_PhoneChannel_Areas_Municipality_Name?? && phone_channel.ServiceChannels_PhoneChannel_Areas_Municipality_Name.getData() != "">
557 <#if !municipalities_select?seq_contains(phone_channel.ServiceChannels_PhoneChannel_Areas_Municipality_Name.getData())>
558 <#assign municipalities_select = municipalities_select + [phone_channel.ServiceChannels_PhoneChannel_Areas_Municipality_Name.getData()] />
559 </#if>
560 </#if>
561 </#list>
562 </#if>
563 </#list>
564 </#if>
565
566 <!-- Location -->
567 <#if ServiceChannels_LocationChannel?? && ServiceChannels_LocationChannel?has_content>
568 <#list ServiceChannels_LocationChannel.getSiblings() as location_service_channel>
569 <#if location_service_channel.ServiceChannels_LocationChannel_Areas.ServiceChannels_LocationChannel_Areas_Municipality?? && location_service_channel.ServiceChannels_LocationChannel_Areas.ServiceChannels_LocationChannel_Areas_Municipality.getSiblings()??>
570 <#list location_service_channel.ServiceChannels_LocationChannel_Areas.ServiceChannels_LocationChannel_Areas_Municipality.getSiblings() as location_channel>
571 <#if location_channel.ServiceChannels_LocationChannel_Areas_Municipality_Name?? && location_channel.ServiceChannels_LocationChannel_Areas_Municipality_Name.getData()??>
572 <#if !municipalities_select?seq_contains(location_channel.ServiceChannels_LocationChannel_Areas_Municipality_Name.getData())>
573 <#assign municipalities_select = municipalities_select + [location_channel.ServiceChannels_LocationChannel_Areas_Municipality_Name.getData()] />
574 </#if>
575 </#if>
576 </#list>
577 </#if>
578 </#list>
579 </#if>
580
581 <!-- Printable Form -->
582 <#if ServiceChannels_PrintableFormChannel?? && ServiceChannels_PrintableFormChannel?has_content>
583 <#list ServiceChannels_PrintableFormChannel.getSiblings() as form_service_channel>
584 <#if form_service_channel.ServiceChannels_PrintableFormChannel_Areas?? && form_service_channel.ServiceChannels_PrintableFormChannel_Areas.getSiblings()??>
585 <#list form_service_channel.ServiceChannels_PrintableFormChannel_Areas.ServiceChannels_PrintableFormChannel_Areas_Municipality.getSiblings() as form_channel>
586 <#if form_channel.ServiceChannels_PrintableFormChannel_Areas_Municipality_Name?? && form_channel.ServiceChannels_PrintableFormChannel_Areas_Municipality_Name.getData() != "">
587 <#if !municipalities_select?seq_contains(form_channel.ServiceChannels_PrintableFormChannel_Areas_Municipality_Name.getData())>
588 <#assign municipalities_select = municipalities_select + [form_channel.ServiceChannels_PrintableFormChannel_Areas_Municipality_Name.getData()] />
589 </#if>
590 </#if>
591 </#list>
592 </#if>
593 </#list>
594 </#if>
595
596 <!-- Webpage (Links) -->
597 <#if ServiceChannels_WebPageChannel?? && ServiceChannels_WebPageChannel?has_content>
598 <#list ServiceChannels_WebPageChannel.getSiblings() as link_service_channel>
599 <#if link_service_channel.ServiceChannels_WebPageChannel_Areas?? && link_service_channel.ServiceChannels_WebPageChannel_Areas.getSiblings()??>
600 <#list link_service_channel.ServiceChannels_WebPageChannel_Areas.ServiceChannels_WebPageChannel_Areas_Municipality.getSiblings() as link_channel>
601 <#if link_channel.ServiceChannels_WebPageChannel_Areas_Municipality_Name?? && link_channel.ServiceChannels_WebPageChannel_Areas_Municipality_Name.getData() != "">
602 <#if !municipalities_select?seq_contains(link_channel.ServiceChannels_WebPageChannel_Areas_Municipality_Name.getData())>
603 <#assign municipalities_select = municipalities_select + [link_channel.ServiceChannels_WebPageChannel_Areas_Municipality_Name.getData()] />
604 </#if>
605 </#if>
606 </#list>
607 </#if>
608 </#list>
609 </#if>
610
611 <#if municipalities_select?? && municipalities_select?has_content>
612 <h2>Paikkakuntavalinta</h2>
613 <p>Valitse paikkakunta ja saat näkyviin yhteystiedot, sähköiset palvelut ja muut palveluun liittyvät tiedot.</p>
614
615 <div class="ptv-select">
616 <p class="ptv-select-div-title">Valitse paikkakunta: </p>
617 <div class="row ptv-select-div-row">
618 <div class="col-md-5 col-xs-12">
619 <select id="lapha-ptv-municipality">
620 <#if !themeDisplay.getURLCurrent()?contains("?id=")>
621 <option value="">Valitse paikkakunta</option>
622 <#else>
623 <option value="">Kaikki</option>
624 </#if>
625 <#list municipalities_select?sort as municipality>
626 <option value="${municipality}">${municipality}</option>
627 </#list>
628 </select>
629 </div>
630 <div class="col-md-7 col-xs-12 ptv-selected-city-text">
631 <p id="ptv-selected-city">
632 <#assign selectedCity = themeDisplay.getURLCurrent()?keep_after("?id=") />
633 <#list municipalities_select as municipality>
634 <#if selectedCity?replace("%C3%A4", "ä")?replace("%C3%B6", "ö")?matches(municipality)>
635 Valittuna: ${municipality}
636 </#if>
637 </#list>
638 <#if selectedCity?matches("") && themeDisplay.getURLCurrent()?contains("?id=")>
639 Valittuna: Kaikki
640 </#if>
641 <#if selectedCity?matches("") && !themeDisplay.getURLCurrent()?contains("?id=")>
642 Ei valittuna paikkakuntaa
643 </#if>
644 </p>
645 </div>
646 </div>
647 </div>
648 </#if>
649
650 <#if ServiceDescriptions_UserInstruction?? && ServiceDescriptions_UserInstruction.getData() != "">
651 <h2> Toimi näin </h2>
652
653 <p>
654 <@newLinesToBr data=ServiceDescriptions_UserInstruction.getData() />
655 </p>
656 </#if>
657
658 <div aria-orientation="vertical" class="panel-group servicechannel" id="ptv-panel-group_${Id.getData()}"
659 role="tablist">
660
661 <!--
662 verkkoasiointi (eChannel):
663 - nimi "chat" - serviceChannelNames
664 - description ("chat on käytössä") - serviceChannelDescriptions
665 - linkki "siirry verkkoasiointiin" - webPages.url
666 -->
667 <#if ServiceChannels_EChannel?? && ServiceChannels_EChannel.getSiblings()?? >
668 <div class="panel top-panel" role="tablist">
669 <button
670 class="panel-header ptv-main-button collapseToggler"
671 id="${Id.getData()}_heading1"
672 data-toggle="liferay-collapse"
673 data-target="#col_${Id.getData()}_collapse1"
674 aria-expanded="false"
675 aria-controls="${Id.getData()}_collapse1"
676 >
677 <h2 class="panel-title">
678 Digipalvelut <span class="panel-title-count ptv-count">0</span>
679 </h2>
680
681 </button>
682
683 <div id="col_${Id.getData()}_collapse1" class="panel-collapse collapse"
684 aria-labelledby="${Id.getData()}_heading1" data-parent="#ptv-panel-group_${Id.getData()}">
685 <div class="panel-body">
686 <div aria-orientation="vertical" class="panel-group servicechannel_child"
687 id="ptv-panel-group_${Id.getData()}_child-panel-group1">
688 <#list ServiceChannels_EChannel.getSiblings() as channel >
689 <#assign kuntaList><#if channel.ServiceChannels_EChannel_Areas?? && channel.ServiceChannels_EChannel_Areas?has_content><#list channel.ServiceChannels_EChannel_Areas.ServiceChannels_EChannel_Areas_Municipality.getSiblings() as municipalities>${municipalities.ServiceChannels_EChannel_Areas_Municipality_Name.getData()},</#list></#if></#assign>
690 <div class="panel sub-panel" datastuff="${kuntaList}">
691 <button
692 class="panel-header-child collapseToggler"
693 id="${Id.getData()}_heading1_${channel.ServiceChannels_EChannel_Id.getData()}"
694 data-toggle="liferay-collapse"
695 data-target="#col_${Id.getData()}_collapse1_childCollapse_${channel.ServiceChannels_EChannel_Id.getData()}"
696 aria-expanded="false"
697 aria-controls="${Id.getData()}_collapse1_childCollapse_${channel.ServiceChannels_EChannel_Id.getData()}"
698 >
699 <span class="panel-title">${channel.ServiceChannels_EChannel_ServiceChannelNames_Name.getData()}</span>
700
701 </button>
702
703 <div
704 id="col_${Id.getData()}_collapse1_childCollapse_${channel.ServiceChannels_EChannel_Id.getData()}"
705 class="panel-collapse collapse"
706 aria-labelledby="${Id.getData()}_heading1_${channel.ServiceChannels_EChannel_Id.getData()}"
707 data-parent="#ptv-panel-group_${Id.getData()}_child-panel-group1"
708 >
709 <div class="panel-body-child">
710 <div class="text-content">
711 <h3>${channel.ServiceChannels_EChannel_ServiceChannelNames_Name.getData()}</h3>
712
713 <#if channel.ServiceChannels_EChannel_ServiceChannelDescriptions_Description??>
714 <p>
715 <@newLinesToBr data=channel.ServiceChannels_EChannel_ServiceChannelDescriptions_Description.getData() />
716 </p>
717 </#if>
718 </div>
719
720 <ul class="links">
721 <#list channel.ServiceChannels_EChannel_WebPages.getSiblings() as webPage>
722 <li>
723 <#if webPage.ServiceChannels_EChannel_WebPages_Language.getData() == locale?split("_")[0]>
724 <a href="${webPage.ServiceChannels_EChannel_WebPages_Url.getData()}"
725 target="_blank" rel="noopener noreferrer">
726 <#if webPage.ServiceChannels_EChannel_WebPages_Value.getData() != "">
727 ${webPage.ServiceChannels_EChannel_WebPages_Value.getData()}
728 <#else>
729 Siirry verkkoasiointiin
730 </#if>
731 </a>
732 </#if>
733 </li>
734 </#list>
735 </ul>
736 <#if linkingInformations??>
737 <#list linkingInformations as linkingInfo>
738 <#if linkingInfo.ServiceChannels_Id?? && channel.ServiceChannels_EChannel_Id??>
739 <#if linkingInfo.ServiceChannels_Id.getData() == channel.ServiceChannels_EChannel_Id.getData()>
740 <#if linkingInfo.ServiceChannels_Description?? || linkingInfo.ServiceChannels_ServiceHours??>
741 <div class="additional-info">
742 <h4>
743 <@localize "ptv.additional.info" />
744 </h4>
745 <#if linkingInfo.ServiceChannels_Description??>
746 <p>
747 ${linkingInfo.ServiceChannels_Description.getData()}
748 </p>
749 </#if>
750
751 <#if linkingInfo.ServiceChannels_ServiceHours??>
752 <!-- palveluajat, liitännäistieto -->
753 <#assign serviceHourItems = "" />
754 <#assign serviceHourItems = serviceHourParser.parse(linkingInfo.ServiceChannels_ServiceHours.getSiblings(), "ServiceChannels", locale) />
755
756 <#if serviceHourItems["DaysOfTheWeek"]?? >
757 <h5>
758 <@localize "ptv.service.opening.times" />
759 </h5>
760
761 <#list serviceHourItems["DaysOfTheWeek"] as serviceHourItem >
762 <@parse_standard serviceHourItem />
763 </#list>
764 </#if>
765
766 <#if serviceHourItems["Special"]?? >
767 <#list serviceHourItems["Special"] as serviceHourItem >
768 <@parse_standard serviceHourItem />
769 </#list>
770 </#if>
771
772 <#if serviceHourItems["Exception"]?? >
773 <h5>
774 <@localize "ptv.exceptional.opening.times" />
775 </h5>
776
777 <#list serviceHourItems["Exception"] as serviceHourItem >
778 <@parse_standard serviceHourItem />
779 </#list>
780 </#if>
781 </#if>
782 </div>
783 </#if>
784 </#if>
785 </#if>
786 </#list>
787 </#if>
788 </div>
789 </div>
790 </div>
791 </#list>
792 </div>
793 </div>
794 </div>
795 </div>
796 </#if>
797
798 <!--
799 Soita (phoneChannel)
800 -->
801 <#if ServiceChannels_PhoneChannel?? && ServiceChannels_PhoneChannel.getSiblings()??>
802 <div class="panel top-panel" role="tablist">
803 <button
804 class="panel-header ptv-main-button collapseToggler"
805 id="${Id.getData()}_heading4"
806 data-toggle="liferay-collapse"
807 data-target="#col_${Id.getData()}_collapse4"
808 aria-expanded="false"
809 aria-controls="${Id.getData()}_collapse4"
810 >
811 <h2 class="panel-title">Soita <span class="panel-title-count ptv-count">0</span></h2>
812 </button>
813
814 <div id="col_${Id.getData()}_collapse4" class="panel-collapse collapse"
815 aria-labelledby="${Id.getData()}_heading4" data-parent="#ptv-panel-group_${Id.getData()}">
816 <div class="panel-body">
817 <div aria-orientation="vertical" class="panel-group servicechannel_child"
818 id="ptv-panel-group_${Id.getData()}_child-panel-group4">
819 <#list ServiceChannels_PhoneChannel.getSiblings() as channel>
820 <#assign kuntaList><#if channel.ServiceChannels_PhoneChannel_Areas?? && channel.ServiceChannels_PhoneChannel_Areas?has_content><#list channel.ServiceChannels_PhoneChannel_Areas.ServiceChannels_PhoneChannel_Areas_Municipality.getSiblings() as municipalities>${municipalities.ServiceChannels_PhoneChannel_Areas_Municipality_Name.getData()},</#list></#if></#assign>
821 <div class="panel sub-panel" datastuff="${kuntaList}">
822 <button
823 class="panel-header-child collapseToggler"
824 id="${Id.getData()}_heading4_${channel.ServiceChannels_PhoneChannel_Id.getData()}"
825 data-toggle="liferay-collapse"
826 data-target="#col_${Id.getData()}_collapse4_childCollapse_${channel.ServiceChannels_PhoneChannel_Id.getData()}"
827 aria-expanded="false"
828 aria-controls="${Id.getData()}_collapse4_childCollapse_${channel.ServiceChannels_PhoneChannel_Id.getData()}"
829 >
830 <span class="panel-title">${channel.ServiceChannels_PhoneChannel_ServiceChannelNames_Name.getData()}</span>
831 </button>
832
833 <div
834 id="col_${Id.getData()}_collapse4_childCollapse_${channel.ServiceChannels_PhoneChannel_Id.getData()}"
835 class="panel-collapse collapse"
836 aria-labelledby="${Id.getData()}_heading4_${channel.ServiceChannels_PhoneChannel_Id.getData()}"
837 data-parent="#ptv-panel-group_${Id.getData()}_child-panel-group4"
838 >
839 <div class="panel-body-child">
840 <div class="child-content">
841 <div class="text-content">
842 <h3>${channel.ServiceChannels_PhoneChannel_ServiceChannelNames_Name.getData()}</h3>
843
844 <#if channel.ServiceChannels_PhoneChannel_ServiceChannelDescriptions_Description??>
845 <p>
846 <@newLinesToBr data=channel.ServiceChannels_PhoneChannel_ServiceChannelDescriptions_Description.getData() />
847 </p>
848 </#if>
849
850 <div class="phone-channel_phone-numbers_container container-fluid">
851 <ul class="phone-channel_phone-numbers_row row no-gutters">
852 <#list channel.ServiceChannels_PhoneChannel_PhoneNumbers.getSiblings() as phoneNumber >
853 <#if phoneNumber.ServiceChannels_PhoneChannel_PhoneNumbers_Language.getData() == locale?split("_")[0] >
854 <li class="col-12 col-md-6">
855 <span class="phone-number_info">${phoneNumber.ServiceChannels_PhoneChannel_PhoneNumbers_AdditionalInformation.getData()} </span>
856 <span class="phone-number_number">puh. <a
857 href="tel:${phoneNumber.ServiceChannels_PhoneChannel_PhoneNumbers_PrefixNumber.getData()} ${phoneNumber.ServiceChannels_PhoneChannel_PhoneNumbers_Number.getData()}">${phoneNumber.ServiceChannels_PhoneChannel_PhoneNumbers_PrefixNumber.getData()} ${phoneNumber.ServiceChannels_PhoneChannel_PhoneNumbers_Number.getData()}</a></span>
858 </li>
859 </#if>
860 </#list>
861 </ul>
862 </div>
863 </div>
864
865 <!-- palveluajat -->
866 <div class="schedule">
867 <#assign serviceHourItems = "" />
868 <#assign serviceHourItems = serviceHourParser.parse(channel.ServiceChannels_PhoneChannel_ServiceHours.getSiblings(), "ServiceChannels_PhoneChannel", locale) />
869
870 <#if serviceHourItems["DaysOfTheWeek"]?? >
871 <h4>
872 <@localize "ptv.standard.opening.times" />
873 </h4>
874
875 <#list serviceHourItems["DaysOfTheWeek"] as serviceHourItem >
876 <@parse_standard serviceHourItem />
877 </#list>
878 </#if>
879
880 <#if serviceHourItems["Special"]?? >
881 <#list serviceHourItems["Special"] as serviceHourItem >
882 <@parse_standard serviceHourItem />
883 </#list>
884 </#if>
885
886 <#if serviceHourItems["Exception"]?? >
887 <h4>
888 <@localize "ptv.exceptional.opening.times" />
889 </h4>
890
891 <#list serviceHourItems["Exception"] as serviceHourItem >
892 <@parse_standard serviceHourItem />
893 </#list>
894 </#if>
895 <#if linkingInformations??>
896 <#list linkingInformations as linkingInfo>
897 <#if linkingInfo.ServiceChannels_Id?? && channel.ServiceChannels_PhoneChannel_Id??>
898 <#if linkingInfo.ServiceChannels_Id.getData() == channel.ServiceChannels_PhoneChannel_Id.getData()>
899 <#if linkingInfo.ServiceChannels_Description?? || linkingInfo.ServiceChannels_ServiceHours??>
900 <div class="additional-info">
901 <h4>
902 <@localize "ptv.additional.info" />
903 </h4>
904 <#if linkingInfo.ServiceChannels_Description??>
905 <p>
906 ${linkingInfo.ServiceChannels_Description.getData()}
907 </p>
908 </#if>
909
910 <#if linkingInfo.ServiceChannels_ServiceHours??>
911 <!-- palveluajat, liitännäistieto -->
912 <#assign serviceHourItems = "" />
913 <#assign serviceHourItems = serviceHourParser.parse(linkingInfo.ServiceChannels_ServiceHours.getSiblings(), "ServiceChannels", locale) />
914 <#if serviceHourItems["DaysOfTheWeek"]?? >
915 <h5>
916 <@localize "ptv.service.opening.times" />
917 </h5>
918
919 <#list serviceHourItems["DaysOfTheWeek"] as serviceHourItem >
920 <@parse_standard serviceHourItem />
921 </#list>
922 </#if>
923
924 <#if serviceHourItems["Special"]?? >
925 <#list serviceHourItems["Special"] as serviceHourItem >
926 <@parse_standard serviceHourItem />
927 </#list>
928 </#if>
929
930 <#if serviceHourItems["Exception"]?? >
931 <h5>
932 <@localize "ptv.exceptional.opening.times" />
933 </h5>
934
935 <#list serviceHourItems["Exception"] as serviceHourItem >
936 <@parse_standard serviceHourItem />
937 </#list>
938 </#if>
939 </#if>
940 </div>
941 </#if>
942 </#if>
943 </#if>
944 </#list>
945 </#if>
946 </div>
947 </div>
948 </div>
949 </div>
950 </div>
951 </#list>
952 </div>
953 </div>
954 </div>
955 </div>
956 </#if>
957
958 <!--
959 palvelupaikat (locationChannel)
960 - nimi "iisalmen terveyskeskus" serviceChannelNames
961 - description "jos epäilet koronavirustartuntaa" serviceChannelDescriptions
962 - käyntitiedot
963 - ("korva-nenä ja kurkkutautien lääkärin vastaanotto" "addresses[type:Location].additionalInformation"
964 - osoite
965 - katu addresses[type:Location].streetAddress.street[language:fi].value, addresses[type:Location].streetNumber
966 - kunta addresses[type:Location].streetAddress.municipality[language:fi].value
967 - postinumero addresses[type:Location].streetAddress.postalCode
968 - palveluajat (ma-pe 8:00-15:30) serviceHours (katso aiempi toteutus)
969 - muut yhteystiedot (puhelin sairaanhoitajat, muut)
970 - yhteystiedon nimi phoneNumbers.additionalInformation
971 - yhteystiedon numero phoneNumbers.prefixNumber + phoneNumbers.number
972 -->
973 <#if ServiceChannels_LocationChannel?? && ServiceChannels_LocationChannel.getSiblings()??>
974 <div class="panel top-panel" role="tablist">
975 <button
976 class="panel-header ptv-main-button collapseToggler"
977 id="${Id.getData()}_heading3"
978 data-toggle="liferay-collapse"
979 data-target="#col_${Id.getData()}_collapse3"
980 aria-expanded="false"
981 aria-controls="${Id.getData()}_collapse3"
982 >
983 <h2 class="panel-title">Käyntipaikat <span class="panel-title-count ptv-count">0</span></h2>
984
985 </button>
986
987 <div id="col_${Id.getData()}_collapse3" class="panel-collapse collapse"
988 aria-labelledby="${Id.getData()}_heading3" data-parent="#ptv-panel-group_${Id.getData()}">
989 <div class="panel-body">
990 <div aria-orientation="vertical" class="panel-group servicechannel_child"
991 id="ptv-panel-group_${Id.getData()}_child-panel-group3">
992 <#list ServiceChannels_LocationChannel.getSiblings() as channel>
993 <#assign kuntaList><#if channel.ServiceChannels_LocationChannel_Areas?? && channel.ServiceChannels_LocationChannel_Areas?has_content><#list channel.ServiceChannels_LocationChannel_Areas.ServiceChannels_LocationChannel_Areas_Municipality.getSiblings() as municipalities>${municipalities.ServiceChannels_LocationChannel_Areas_Municipality_Name.getData()},</#list></#if></#assign>
994 <div class="panel sub-panel" datastuff="${kuntaList}">
995 <button
996 class="panel-header-child collapseToggler"
997 id="${Id.getData()}_heading3_${channel.ServiceChannels_LocationChannel_Id.getData()}"
998 data-toggle="liferay-collapse"
999 data-target="#col_${Id.getData()}_collapse3_childCollapse_${channel.ServiceChannels_LocationChannel_Id.getData()}"
1000 aria-expanded="false"
1001 aria-controls="${Id.getData()}_collapse3_childCollapse_${channel.ServiceChannels_LocationChannel_Id.getData()}"
1002 >
1003 <span class="panel-title">${channel.ServiceChannels_LocationChannel_ServiceChannelNames_Name.getData()}</span>
1004
1005 </button>
1006
1007 <div id="col_${Id.getData()}_collapse3_childCollapse_${channel.ServiceChannels_LocationChannel_Id.getData()}"
1008 class="panel-collapse collapse"
1009 aria-labelledby="${Id.getData()}_heading3_${channel.ServiceChannels_LocationChannel_Id.getData()}"
1010 data-parent="#ptv-panel-group_${Id.getData()}_child-panel-group3"
1011 >
1012 <div class="panel-body-child">
1013 <h3>${channel.ServiceChannels_LocationChannel_ServiceChannelNames_Name.getData()}</h3>
1014
1015 <#if channel.ServiceChannels_LocationChannel_ServiceChannelDescriptions_Description??>
1016 <p>
1017 <@newLinesToBr data=channel.ServiceChannels_LocationChannel_ServiceChannelDescriptions_Description.getData() />
1018 </p>
1019 </#if>
1020
1021 <#if channel.ServiceChannels_LocationChannel_Addresses?? && channel.ServiceChannels_LocationChannel_Addresses.getSiblings()??>
1022 <br><h4>
1023 Osoite
1024 </h4><br>
1025 </#if>
1026
1027 <#list channel.ServiceChannels_LocationChannel_Addresses.getSiblings() as address >
1028 <#if address.ServiceChannels_LocationChannel_Addresses_Type.getData() == "Location" >
1029 <#if address.ServiceChannels_LocationChannel_Addresses_SubType.getData() == "Single">
1030 <#list address.ServiceChannels_LocationChannel_Addresses_AddressHome.getSiblings() as home >
1031 <#assign actualAddressItem = home />
1032 </#list>
1033
1034 <p>
1035 ${actualAddressItem.ServiceChannels_LocationChannel_Addresses_AddressHome_AdditionalInformation.getData()}
1036 </p>
1037
1038 <p>
1039 <span class="address_street">
1040 ${actualAddressItem.ServiceChannels_LocationChannel_Addresses_AddressHome_Street.getData()}
1041 ${actualAddressItem.ServiceChannels_LocationChannel_Addresses_AddressHome_StreetNumber.getData()},
1042 </span>
1043
1044 <span class="address_city">
1045 ${actualAddressItem.ServiceChannels_LocationChannel_Addresses_AddressHome_PostalCode.getData()}
1046 ${actualAddressItem.ServiceChannels_LocationChannel_Addresses_AddressHome_PostOffice.getData()}
1047 </span>
1048 </p><br>
1049 </#if>
1050 </#if>
1051 </#list>
1052
1053 <!-- palveluajat -->
1054 <#assign serviceHourItems = "" />
1055 <#assign serviceHourItems = serviceHourParser.parse(channel.ServiceChannels_LocationChannel_ServiceHours.getSiblings(), "ServiceChannels_LocationChannel", locale) />
1056
1057 <#if serviceHourItems["DaysOfTheWeek"]?? >
1058 <h4>
1059 <@localize "ptv.standard.opening.times" />
1060 </h4>
1061
1062 <#list serviceHourItems["DaysOfTheWeek"] as serviceHourItem >
1063 <@parse_standard serviceHourItem />
1064 </#list>
1065 </#if>
1066
1067 <#if serviceHourItems["Special"]?? >
1068 <#list serviceHourItems["Special"] as serviceHourItem >
1069 <@parse_standard serviceHourItem />
1070 </#list>
1071 </#if>
1072
1073 <#if serviceHourItems["Exception"]?? >
1074 <h4>
1075 <@localize "ptv.exceptional.opening.times" />
1076 </h4>
1077
1078 <#list serviceHourItems["Exception"] as serviceHourItem >
1079 <@parse_standard serviceHourItem />
1080 </#list>
1081 </#if>
1082
1083 <!-- Muut yhteystiedot -->
1084 <h4>Muut yhteystiedot</h4>
1085
1086 <#if channel.ServiceChannels_LocationChannel_Emails?? && channel.ServiceChannels_LocationChannel_Emails.getData()?? && channel.ServiceChannels_LocationChannel_Emails.getData() != "">
1087 <h5>Sähköposti</h5>
1088
1089 <p>
1090 <a href="mailto: ${channel.ServiceChannels_LocationChannel_Emails.getData()}">
1091 ${channel.ServiceChannels_LocationChannel_Emails.getData()}
1092 </a>
1093 </p>
1094 </#if>
1095
1096 <#if channel.ServiceChannels_LocationChannel_PhoneNumbers?? && channel.ServiceChannels_LocationChannel_PhoneNumbers.getSiblings()??>
1097 <#list channel.ServiceChannels_LocationChannel_PhoneNumbers.getSiblings() as phoneNumber>
1098 <#assign actualPhoneNumberItem = phoneNumber />
1099 </#list>
1100
1101 <#if
1102 actualPhoneNumberItem.ServiceChannels_LocationChannel_PhoneNumbers_Number?? &&
1103 actualPhoneNumberItem.ServiceChannels_LocationChannel_PhoneNumbers_Number.getData()?? &&
1104 actualPhoneNumberItem.ServiceChannels_LocationChannel_PhoneNumbers_Number.getData() != ""
1105 >
1106 <h5>Puhelin</h5>
1107
1108 <ul>
1109 <#list channel.ServiceChannels_LocationChannel_PhoneNumbers.getSiblings() as phoneNumber>
1110 <li>
1111 puh.
1112 <a href="tel:${phoneNumber.ServiceChannels_LocationChannel_PhoneNumbers_PrefixNumber.getData()} ${phoneNumber.ServiceChannels_LocationChannel_PhoneNumbers_Number.getData()}">
1113 <#if
1114 phoneNumber.ServiceChannels_LocationChannel_PhoneNumbers_PrefixNumber?? &&
1115 phoneNumber.ServiceChannels_LocationChannel_PhoneNumbers_PrefixNumber.getData()?? &&
1116 phoneNumber.ServiceChannels_LocationChannel_PhoneNumbers_PrefixNumber.getData() != "" &&
1117 phoneNumber.ServiceChannels_LocationChannel_PhoneNumbers_Number?? &&
1118 phoneNumber.ServiceChannels_LocationChannel_PhoneNumbers_Number.getData()?? &&
1119 phoneNumber.ServiceChannels_LocationChannel_PhoneNumbers_Number.getData() != ""
1120 >
1121 ${phoneNumber.ServiceChannels_LocationChannel_PhoneNumbers_PrefixNumber.getData()}
1122 </#if>
1123
1124 <#if
1125 phoneNumber.ServiceChannels_LocationChannel_PhoneNumbers_Number?? &&
1126 phoneNumber.ServiceChannels_LocationChannel_PhoneNumbers_Number.getData()?? &&
1127 phoneNumber.ServiceChannels_LocationChannel_PhoneNumbers_Number.getData() != ""
1128 >
1129 ${phoneNumber.ServiceChannels_LocationChannel_PhoneNumbers_Number.getData()}
1130 </#if>
1131 </a>
1132 </li>
1133 </#list>
1134 </ul>
1135 </#if>
1136 </#if>
1137
1138 <#if channel.ServiceChannels_LocationChannel_Addresses?? && channel.ServiceChannels_LocationChannel_Addresses.getSiblings()??>
1139 <#list channel.ServiceChannels_LocationChannel_Addresses.getSiblings() as address >
1140 <#if address.ServiceChannels_LocationChannel_Addresses_Type.getData() == "Location" >
1141 <#if address.ServiceChannels_LocationChannel_Addresses_SubType.getData() == "Single">
1142 <#if address.ServiceChannels_LocationChannel_Addresses_PostOfficeBox?? && address.ServiceChannels_LocationChannel_Addresses_PostOfficeBox.getSiblings()??>
1143 <#list address.ServiceChannels_LocationChannel_Addresses_PostOfficeBox.getSiblings() as postOfficeBox >
1144 <#assign actualAddressItem = postOfficeBox />
1145 </#list>
1146
1147 <#if
1148 (
1149 actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox_AdditionalInformation?? &&
1150 actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox_AdditionalInformation.getData()?? &&
1151 actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox_AdditionalInformation.getData()?? != ""
1152 ) ||
1153 (
1154 actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox?? &&
1155 actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox_postOfficeBox.getData()?? &&
1156 actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox_postOfficeBox.getData()?? != "" &&
1157 actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox_PostalCode.getData()?? &&
1158 actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox_PostalCode.getData()?? != "" &&
1159 actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox_PostOffice.getData()?? &&
1160 actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox_PostOffice.getData()?? != ""
1161 )
1162 >
1163 <h5>Postiosoite</h5>
1164 </#if>
1165
1166 <#if
1167 actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox_AdditionalInformation?? &&
1168 actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox_AdditionalInformation.getData()?? &&
1169 actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox_AdditionalInformation.getData()?? != ""
1170 >
1171 <p>
1172 ${actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox_AdditionalInformation.getData()}
1173 </p>
1174 </#if>
1175
1176 <#if
1177 actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox?? &&
1178 actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox_postOfficeBox.getData()?? &&
1179 actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox_postOfficeBox.getData()?? != "" &&
1180 actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox_PostalCode.getData()?? &&
1181 actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox_PostalCode.getData()?? != "" &&
1182 actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox_PostOffice.getData()?? &&
1183 actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox_PostOffice.getData()?? != ""
1184 >
1185 <p>
1186 <span class="address_street">
1187 ${actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox_postOfficeBox.getData()}
1188 </span>
1189
1190 <span class="address_city">
1191 ${actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox_PostalCode.getData()}
1192 ${actualAddressItem.ServiceChannels_LocationChannel_Addresses_postOfficeBox_PostOffice.getData()}
1193 </span>
1194 </p>
1195 </#if>
1196 </#if>
1197 </#if>
1198 </#if>
1199 </#list>
1200 </#if>
1201
1202 <#if channel.ServiceChannels_LocationChannel_WebPages?? && channel.ServiceChannels_LocationChannel_WebPages.getSiblings()??>
1203 <#list channel.ServiceChannels_LocationChannel_WebPages.getSiblings() as webPage>
1204 <#assign actualWebPageItem = webPage />
1205 </#list>
1206
1207 <#if
1208 actualWebPageItem.ServiceChannels_LocationChannel_PhoneNumbers_Number?? &&
1209 actualWebPageItem.ServiceChannels_LocationChannel_PhoneNumbers_Number.getData()?? &&
1210 actualWebPageItem.ServiceChannels_LocationChannel_PhoneNumbers_Number.getData() != ""
1211 >
1212 <h5>Verkkosivu</h5>
1213
1214 <ul>
1215 <#list channel.ServiceChannels_LocationChannel_WebPages.getSiblings() as webPage>
1216 <#if
1217 webPage.ServiceChannels_LocationChannel_WebPages_Url?? &&
1218 webPage.ServiceChannels_LocationChannel_WebPages_Url.getData()?? &&
1219 webPage.ServiceChannels_LocationChannel_WebPages_Url.getData() != ""
1220 >
1221 <li>
1222 <a target="_blank"
1223 href="${webPage.ServiceChannels_LocationChannel_WebPages_Url.getData()}"
1224 rel="noopener noreferrer">
1225 <#if
1226 webPage.ServiceChannels_LocationChannel_WebPages_Value?? &&
1227 webPage.ServiceChannels_LocationChannel_WebPages_Value.getData()?? &&
1228 webPage.ServiceChannels_LocationChannel_WebPages_Value.getData() != ""
1229 >
1230 ${webPage.ServiceChannels_LocationChannel_WebPages_Value.getData()}
1231 <#else>
1232 ${webPage.ServiceChannels_LocationChannel_WebPages_Url.getData()}
1233 </#if>
1234 </a>
1235 </li>
1236 </#if>
1237 </#list>
1238 </ul>
1239 </#if>
1240 </#if>
1241 <#if linkingInformations??>
1242 <#list linkingInformations as linkingInfo>
1243 <#if linkingInfo.ServiceChannels_Id?? && channel.ServiceChannels_LocationChannel_Id??>
1244 <#if linkingInfo.ServiceChannels_Id.getData() == channel.ServiceChannels_LocationChannel_Id.getData()>
1245 <#if linkingInfo.ServiceChannels_Description?? || linkingInfo.ServiceChannels_ServiceHours??>
1246 <div class="additional-info">
1247 <h4>
1248 <@localize "ptv.additional.info" />
1249 </h4>
1250 <#if linkingInfo.ServiceChannels_Description??>
1251 <p>
1252 ${linkingInfo.ServiceChannels_Description.getData()}
1253 </p>
1254 </#if>
1255
1256 <#if linkingInfo.ServiceChannels_ServiceHours??>
1257 <!-- palveluajat, liitännäistieto -->
1258 <#assign serviceHourItems = "" />
1259 <#assign serviceHourItems = serviceHourParser.parse(linkingInfo.ServiceChannels_ServiceHours.getSiblings(), "ServiceChannels", locale) />
1260
1261 <#if serviceHourItems["DaysOfTheWeek"]?? >
1262 <h5>
1263 <@localize "ptv.service.opening.times" />
1264 </h5>
1265 <#list serviceHourItems["DaysOfTheWeek"] as serviceHourItem >
1266 <@parse_standard serviceHourItem />
1267 </#list>
1268 </#if>
1269
1270 <#if serviceHourItems["Special"]?? >
1271 <#list serviceHourItems["Special"] as serviceHourItem >
1272 <@parse_standard serviceHourItem />
1273 </#list>
1274 </#if>
1275
1276 <#if serviceHourItems["Exception"]?? >
1277 <#list serviceHourItems["Exception"] as serviceHourItem >
1278 <@parse_standard serviceHourItem />
1279 </#list>
1280 </#if>
1281 </#if>
1282 </div>
1283 </#if>
1284 </#if>
1285 </#if>
1286 </#list>
1287 </#if>
1288 </div>
1289 </div>
1290 </div>
1291 </#list>
1292 </div>
1293 </div>
1294 </div>
1295 </div>
1296 </#if>
1297
1298 <!--
1299 lomakkeet (printableFormChannel)
1300 - nimi serviceChannelNames
1301 - [lomake]
1302 - lomakkeen nimi (sama kuin nimi) serviceChannelNames
1303 - linkki lomakkeeseen channelUrls.value
1304 -->
1305 <#if ServiceChannels_PrintableFormChannel?? && ServiceChannels_PrintableFormChannel.getSiblings()?? >
1306 <div class="panel top-panel" role="tablist">
1307 <button
1308 class="panel-header ptv-main-button collapseToggler"
1309 id="col_${Id.getData()}_heading2"
1310 data-toggle="liferay-collapse"
1311 data-target="#col_${Id.getData()}_collapse2"
1312 aria-expanded="false"
1313 aria-controls="${Id.getData()}_collapse2"
1314 >
1315 <h2 class="panel-title">Lomakkeet <span class="panel-title-count ptv-count">0</span></h2>
1316 </button>
1317 <div id="col_${Id.getData()}_collapse2" class="panel-collapse collapse"
1318 aria-labelledby="${Id.getData()}_heading2" data-parent="#ptv-panel-group_${Id.getData()}">
1319 <div class="panel-body">
1320 <div aria-orientation="vertical" class="panel-group servicechannel_child"
1321 id="ptv-panel-group_${Id.getData()}_child-panel-group2">
1322 <#list ServiceChannels_PrintableFormChannel.getSiblings() as channel>
1323 <#assign kuntaList><#if channel.ServiceChannels_PrintableFormChannel_Areas?? && channel.ServiceChannels_PrintableFormChannel_Areas?has_content><#list channel.ServiceChannels_PrintableFormChannel_Areas.ServiceChannels_PrintableFormChannel_Areas_Municipality.getSiblings() as municipalities>${municipalities.ServiceChannels_PrintableFormChannel_Areas_Municipality_Name.getData()},</#list></#if></#assign>
1324 <div class="panel sub-panel" datastuff="${kuntaList}">
1325 <button
1326 class="panel-header-child collapseToggler"
1327 id="${Id.getData()}_heading1_${channel.ServiceChannels_PrintableFormChannel_Id.getData()}"
1328 data-toggle="liferay-collapse"
1329 data-target="#col_${Id.getData()}_collapse2_childCollapse_${channel.ServiceChannels_PrintableFormChannel_Id.getData()}"
1330 aria-expanded="false"
1331 aria-controls="${Id.getData()}_collapse2_childCollapse_${channel.ServiceChannels_PrintableFormChannel_Id.getData()}"
1332 >
1333 <span class="panel-title">${channel.ServiceChannels_PrintableFormChannel_ServiceChannelNames_Name.getData()}</span>
1334
1335 </button>
1336
1337 <div id="col_${Id.getData()}_collapse2_childCollapse_${channel.ServiceChannels_PrintableFormChannel_Id.getData()}"
1338 class="panel-collapse collapse"
1339 aria-labelledby="${Id.getData()}_heading1_${channel.ServiceChannels_PrintableFormChannel_Id.getData()}"
1340 data-parent="#ptv-panel-group_${Id.getData()}_child-panel-group2"
1341 >
1342 <div class="panel-body-child">
1343 <h3>${channel.ServiceChannels_PrintableFormChannel_ServiceChannelNames_Name.getData()}</h3>
1344
1345 <#if channel.ServiceChannels_PrintableFormChannel_ServiceChannelDescriptions_ShortDescription??>
1346 <p>
1347 ${channel.ServiceChannels_PrintableFormChannel_ServiceChannelDescriptions_ShortDescription.getData()}
1348 </p>
1349 </#if>
1350
1351 <a href="${channel.ServiceChannels_PrintableFormChannel_ChannelUrls_PDF.getData()}"
1352 target="_blank" rel="noopener noreferrer">
1353 ${channel.ServiceChannels_PrintableFormChannel_ServiceChannelNames_Name.getData()}
1354 </a>
1355 <#if linkingInformations??>
1356
1357 <#list linkingInformations as linkingInfo>
1358 <#if linkingInfo.ServiceChannels_Id?? && channel.ServiceChannels_PrintableFormChannel_Id??>
1359 <#if linkingInfo.ServiceChannels_Id.getData() == channel.ServiceChannels_PrintableFormChannel_Id.getData()>
1360 <#if linkingInfo.ServiceChannels_Description?? || linkingInfo.ServiceChannels_ServiceHours??>
1361 <div class="additional-info">
1362 <h4>
1363 <@localize "ptv.additional.info" />
1364 </h4>
1365 <#if linkingInfo.ServiceChannels_Description??>
1366 <p>
1367 ${linkingInfo.ServiceChannels_Description.getData()}
1368 </p>
1369 </#if>
1370
1371 <#if linkingInfo.ServiceChannels_ServiceHours??>
1372 <!-- palveluajat, liitännäistieto -->
1373 <#assign serviceHourItems = "" />
1374 <#assign serviceHourItems = serviceHourParser.parse(linkingInfo.ServiceChannels_ServiceHours.getSiblings(), "ServiceChannels", locale) />
1375
1376 <#if serviceHourItems["DaysOfTheWeek"]?? >
1377 <h5>
1378 <@localize "ptv.service.opening.times" />
1379 </h5>
1380
1381 <#list serviceHourItems["DaysOfTheWeek"] as serviceHourItem >
1382 <@parse_standard serviceHourItem />
1383 </#list>
1384 </#if>
1385
1386 <#if serviceHourItems["Special"]?? >
1387 <#list serviceHourItems["Special"] as serviceHourItem >
1388 <@parse_standard serviceHourItem />
1389 </#list>
1390 </#if>
1391
1392 <#if serviceHourItems["Exception"]?? >
1393 <h5>
1394 <@localize "ptv.exceptional.opening.times" />
1395 </h5>
1396
1397 <#list serviceHourItems["Exception"] as serviceHourItem >
1398 <@parse_standard serviceHourItem />
1399 </#list>
1400 </#if>
1401 </#if>
1402 </div>
1403 </#if>
1404 </#if>
1405 </#if>
1406 </#list>
1407 </#if>
1408 </div>
1409 </div>
1410 </div>
1411 </#list>
1412 </div>
1413 </div>
1414 </div>
1415 </div>
1416 </#if>
1417
1418 <!--
1419 linkit (webPageChannel)
1420 - nimi "neuvolan verkkosivut"
1421 - linkit ("neuvolan verkkosivut, ylasavonsote.fi/neuvolat")
1422 -->
1423 <#if ServiceChannels_WebPageChannel?? && ServiceChannels_WebPageChannel.getSiblings()?? >
1424 <div class="panel top-panel" role="tablist">
1425 <button
1426 class="panel-header ptv-main-button collapseToggler"
1427 id="col_${Id.getData()}_heading5"
1428 data-toggle="liferay-collapse"
1429 data-target="#col_${Id.getData()}_collapse5"
1430 aria-expanded="false"
1431 aria-controls="${Id.getData()}_collapse5"
1432 >
1433 <h2 class="panel-title">Linkit <span class="panel-title-count ptv-count">0</span></h2>
1434
1435 </button>
1436
1437 <div id="col_${Id.getData()}_collapse5" class="panel-collapse collapse" aria-labelledby="${Id.getData()}_heading5" data-parent="#ptv-panel-group_${Id.getData()}">
1438 <div class="panel-body">
1439 <div aria-orientation="vertical" class="panel-group servicechannel_child" id="ptv-panel-group_${Id.getData()}_child-panel-group5">
1440 <#list ServiceChannels_WebPageChannel.getSiblings() as channel>
1441 <#assign kuntaList><#if channel.ServiceChannels_WebPageChannel_Areas?? && channel.ServiceChannels_WebPageChannel_Areas?has_content><#list channel.ServiceChannels_WebPageChannel_Areas.ServiceChannels_WebPageChannel_Areas_Municipality.getSiblings() as municipalities>${municipalities.ServiceChannels_WebPageChannel_Areas_Municipality_Name.getData()},</#list></#if></#assign>
1442 <div class="panel sub-panel" datastuff="${kuntaList}">
1443 <button
1444 class="panel-header-child collapseToggler"
1445 id="${Id.getData()}_heading5_${channel.ServiceChannels_WebPageChannel_Id.getData()}"
1446 data-toggle="liferay-collapse"
1447 data-target="#col_${Id.getData()}_collapse5_childCollapse_${channel.ServiceChannels_WebPageChannel_Id.getData()}"
1448 aria-expanded="false"
1449 aria-controls="${Id.getData()}_collapse5_childCollapse_${channel.ServiceChannels_WebPageChannel_Id.getData()}"
1450 >
1451 <span class="panel-title">${channel.ServiceChannels_WebPageChannel_ServiceChannelNames_Name.getData()}</span>
1452 </button>
1453
1454 <div
1455 id="col_${Id.getData()}_collapse5_childCollapse_${channel.ServiceChannels_WebPageChannel_Id.getData()}"
1456 class="panel-collapse collapse"
1457 aria-labelledby="${Id.getData()}_heading5_${channel.ServiceChannels_WebPageChannel_Id.getData()}"
1458 data-parent="#ptv-panel-group_${Id.getData()}_child-panel-group5"
1459 >
1460 <div class="panel-body-child">
1461 <h3>${channel.ServiceChannels_WebPageChannel_ServiceChannelNames_Name.getData()}</h3>
1462
1463 <#if channel.ServiceChannels_WebPageChannel_ServiceChannelDescriptions_ShortDescription??>
1464 <p>
1465 ${channel.ServiceChannels_WebPageChannel_ServiceChannelDescriptions_ShortDescription.getData()}
1466 </p>
1467 </#if>
1468
1469 <ul class="links">
1470 <#list channel.ServiceChannels_WebPageChannel_WebPages.getSiblings() as webPage>
1471 <li>
1472 <a href="${webPage.ServiceChannels_WebPageChannel_WebPages_Url.getData()}" target="_blank" rel="noopener noreferrer">
1473 <#if webPage.ServiceChannels_WebPageChannel_WebPages_Value.getData() != "">
1474 ${webPage.ServiceChannels_WebPageChannel_WebPages_Value.getData()}
1475 <#else>
1476 ${channel.ServiceChannels_WebPageChannel_ServiceChannelNames_Name.getData()}
1477 </#if>
1478 </a>
1479 </li>
1480 </#list>
1481 </ul>
1482 </div>
1483 </div>
1484 </div>
1485 </#list>
1486 </div>
1487 </div>
1488 </div>
1489 </div>
1490 </#if>
1491
1492 <!-- POISTA KUN TABIT TOIMII (alempaa)
1493 <div class="to-be-deleted">
1494 <#if ServiceDescriptions_GD_BackgroundDescription?? && ServiceDescriptions_GD_BackgroundDescription.getData() != "">
1495 <h2>Tausta</h2>
1496 <#if ServiceDescriptions_GD_BackgroundDescription.getData() != "">
1497 <p>${ServiceDescriptions_GD_BackgroundDescription.getData()}</p>
1498 </#if>
1499 <br>
1500 </#if>
1501
1502 <#if Legislation??>
1503 <h2>Lainsäädäntö</h2><br>
1504 <#list Legislation.getSiblings() as name>
1505 <p>${name.Legislation_Names.getData()}</p><br>
1506 </#list>
1507 </#if>
1508 <#if Legislation_WebPages?? && Legislation_WebPages.getSiblings()??>
1509 <#list Legislation_WebPages.getSiblings() as site>
1510 <#if site.Legislation_WebPages_Url.getData()?? && site.Legislation_WebPages_Url.getData() != "">
1511 <a href="${site.Legislation_WebPages_Url.getData()}">${site.Legislation_WebPages_Url.getData()}</a><br>
1512 </#if>
1513 </#list>
1514 </#if>
1515
1516 <#if OntologyTerms?? && OntologyTerms.getSiblings()??>
1517 <#list OntologyTerms.getSiblings() as terms>
1518 <p>${terms.OntologyTerms_Name.getData()}</p>
1519 </#list>
1520 </#if>
1521 </div>
1522 POISTA KUN TABIT TOIMII (ylempää)-->
1523
1524 <!-- TABS -->
1525 <#assign flag = 0>
1526 <#if Legislation??>
1527 <#list Legislation.getSiblings() as name>
1528 <#if name.Legislation_Names.getData() != "">
1529 <#assign flag = 1>
1530 </#if>
1531 </#list>
1532 </#if>
1533
1534 <#if (ServiceDescriptions_ChargeTypeAdditionalInfo?? && ServiceDescriptions_ChargeTypeAdditionalInfo.getData() != "") || (ServiceDescriptions_GD_BackgroundDescription?? && ServiceDescriptions_GD_BackgroundDescription.getData() != "") || flag == 1>
1535 <div class="ptv-tab-content">
1536 <div class="tab">
1537 <#if ServiceDescriptions_GD_BackgroundDescription?? && ServiceDescriptions_GD_BackgroundDescription.getData() != "">
1538 <button class="tablinks" onclick="switchTab(event, 'BackgroundInfo')">Tausta</button>
1539 </#if>
1540 <#if ServiceDescriptions_ChargeTypeAdditionalInfo?? && ServiceDescriptions_ChargeTypeAdditionalInfo.getData() != "">
1541 <button class="tablinks" onclick="switchTab(event, 'CustomerPayments')">Asiakasmaksut</button>
1542 </#if>
1543 <#if Legislation?? || (Legislation_WebPages?? && Legislation_WebPages.getSiblings()??) || flag == 1>
1544 <button class="tablinks" onclick="switchTab(event, 'Legislation')">Lainsäädäntö</button>
1545 </#if>
1546 </div>
1547
1548 <#if ServiceDescriptions_GD_BackgroundDescription?? && ServiceDescriptions_GD_BackgroundDescription.getData() != "">
1549 <div id="BackgroundInfo" class="tabcontent">
1550 <p><@newLinesToBr data=ServiceDescriptions_GD_BackgroundDescription.getData() /></p>
1551 </div>
1552 </#if>
1553
1554 <#if ServiceDescriptions_ChargeTypeAdditionalInfo?? && ServiceDescriptions_ChargeTypeAdditionalInfo.getData() != "">
1555 <div id="CustomerPayments" class="tabcontent">
1556 <p><@newLinesToBr data=ServiceDescriptions_ChargeTypeAdditionalInfo.getData() /></p>
1557 </div>
1558 </#if>
1559
1560 <#if Legislation?? || (Legislation_WebPages?? && Legislation_WebPages.getSiblings()??)>
1561 <div id="Legislation" class="tabcontent">
1562 <p>
1563 <#if Legislation??>
1564 <#list Legislation.getSiblings() as name>
1565 <#if name.Legislation_Names.getData() != "">
1566 ${name.Legislation_Names.getData()}:
1567 </#if>
1568 </#list>
1569 </#if>
1570 <#if Legislation_WebPages?? && Legislation_WebPages.getSiblings()??>
1571 <ul class="tablist">
1572 <#list Legislation_WebPages.getSiblings() as site>
1573 <#if site.Legislation_WebPages_Url.getData()?? && site.Legislation_WebPages_Url.getData() != "">
1574 <li><a href="${site.Legislation_WebPages_Url.getData()}">${site.Legislation_WebPages_Url.getData()}</a></li><br>
1575 </#if>
1576 </#list>
1577 </ul>
1578 </#if>
1579 </p>
1580 </div>
1581 </#if>
1582 </div>
1583 </#if>
1584 <!-- TABS-->
1585 </div>
1586</div>
1587
1588<div class="lapha_ptv-phonebook-item">
1589 <#if ServiceChannels_PhoneChannel?? && ServiceChannels_PhoneChannel.getSiblings?? >
1590 <#list ServiceChannels_PhoneChannel.getSiblings() as channel>
1591 <div class="panel-body-child">
1592 <h3>${channel.ServiceChannels_PhoneChannel_ServiceChannelNames_Name.getData()}</h3>
1593
1594 <#if channel.ServiceChannels_PhoneChannel_ServiceChannelDescriptions_Description??>
1595 <p>
1596 <@newLinesToBr data=channel.ServiceChannels_PhoneChannel_ServiceChannelDescriptions_Description.getData() />
1597 </p>
1598 </#if>
1599
1600 <div class="phone-channel_phone-numbers_container container-fluid">
1601 <ul class="phone-channel_phone-numbers_row row no-gutters">
1602 <#list channel.ServiceChannels_PhoneChannel_PhoneNumbers.getSiblings() as phoneNumber >
1603 <#if phoneNumber.ServiceChannels_PhoneChannel_PhoneNumbers_Language.getData() == locale?split("_")[0] >
1604 <li class="col-12 col-md-6">
1605 <span class="phone-number_info">${phoneNumber.ServiceChannels_PhoneChannel_PhoneNumbers_AdditionalInformation.getData()} </span>
1606 <span class="phone-number_number">puh. <a
1607 href="tel:${phoneNumber.ServiceChannels_PhoneChannel_PhoneNumbers_PrefixNumber.getData()} ${phoneNumber.ServiceChannels_PhoneChannel_PhoneNumbers_Number.getData()}">${phoneNumber.ServiceChannels_PhoneChannel_PhoneNumbers_PrefixNumber.getData()} ${phoneNumber.ServiceChannels_PhoneChannel_PhoneNumbers_Number.getData()}</a></span>
1608 </li>
1609 </#if>
1610 </#list>
1611 </ul>
1612 </div>
1613
1614 <!-- palveluajat -->
1615 <#assign serviceHourItems = "" />
1616 <#assign serviceHourItems = serviceHourParser.parse(channel.ServiceChannels_PhoneChannel_ServiceHours.getSiblings(), "ServiceChannels_PhoneChannel", locale) />
1617
1618 <#if serviceHourItems["DaysOfTheWeek"]?? >
1619 <h4>
1620 <@localize "ptv.standard.opening.times" />
1621 </h4>
1622
1623 <#list serviceHourItems["DaysOfTheWeek"] as serviceHourItem >
1624 <@parse_standard serviceHourItem />
1625 </#list>
1626 </#if>
1627
1628 <#if serviceHourItems["Special"]?? >
1629 <#list serviceHourItems["Special"] as serviceHourItem >
1630 <@parse_standard serviceHourItem />
1631 </#list>
1632 </#if>
1633
1634 <#if serviceHourItems["Exception"]?? >
1635 <h4>
1636 <@localize "ptv.exceptional.opening.times" />
1637 </h4>
1638
1639 <#list serviceHourItems["Exception"] as serviceHourItem >
1640 <@parse_standard serviceHourItem />
1641 </#list>
1642 </#if>
1643 <#if linkingInformations??>
1644 <#list linkingInformations as linkingInfo>
1645 <#if linkingInfo.ServiceChannels_Id?? && channel.ServiceChannels_PhoneChannel_Id??>
1646 <#if linkingInfo.ServiceChannels_Id.getData() == channel.ServiceChannels_PhoneChannel_Id.getData()>
1647 <#if linkingInfo.ServiceChannels_Description?? || linkingInfo.ServiceChannels_ServiceHours??>
1648 <div class="additional-info">
1649 <h4>
1650 <@localize "ptv.additional.info" />
1651 </h4>
1652 <#if linkingInfo.ServiceChannels_Description??>
1653 <p>
1654 ${linkingInfo.ServiceChannels_Description.getData()}
1655 </p>
1656 </#if>
1657
1658 <#if linkingInfo.ServiceChannels_ServiceHours??>
1659 <!-- palveluajat, liitännäistieto -->
1660 <#assign serviceHourItems = "" />
1661 <#assign serviceHourItems = serviceHourParser.parse(linkingInfo.ServiceChannels_ServiceHours.getSiblings(), "ServiceChannels", locale) />
1662 <#if serviceHourItems["DaysOfTheWeek"]?? >
1663 <h5>
1664 <@localize "ptv.service.opening.times" />
1665 </h5>
1666
1667 <#list serviceHourItems["DaysOfTheWeek"] as serviceHourItem >
1668 <@parse_standard serviceHourItem />
1669 </#list>
1670 </#if>
1671
1672 <#if serviceHourItems["Special"]?? >
1673 <#list serviceHourItems["Special"] as serviceHourItem >
1674 <@parse_standard serviceHourItem />
1675 </#list>
1676 </#if>
1677
1678 <#if serviceHourItems["Exception"]?? >
1679 <h5>
1680 <@localize "ptv.exceptional.opening.times" />
1681 </h5>
1682
1683 <#list serviceHourItems["Exception"] as serviceHourItem >
1684 <@parse_standard serviceHourItem />
1685 </#list>
1686 </#if>
1687 </#if>
1688 </div>
1689 </#if>
1690 </#if>
1691 </#if>
1692 </#list>
1693 </#if>
1694 </div>
1695 </#list>
1696 </#if>
1697</div>
1698
1699<div class="lapha_ptv-service-list-item">
1700 <span>${ServiceNames_Name.getData()}</span><br>
1701</div>