Vivere il comune
Tutti gli eventi, le iniziative e i luoghi d’interesse per scoprire e vivere il territorio comunale.
テンプレート処理中にエラーが発生しました。
Java method "com.sun.proxy.$Proxy1095.getArticle(long, String)" threw an exception when invoked on com.sun.proxy.$Proxy1095 object "com.liferay.journal.service.impl.JournalArticleLocalServiceImpl@7a6dee38"; see cause exception in the Java stack trace.
----
FTL stack trace ("~" means nesting-related):
- Failed at: #assign article = journalArticleLocal... [in template "46861" in function "getCategoriesOfArticle" at line 135, column 1]
----
1<#--
2Add elements from the sidebar to define your template. Type "${" to use the
3autocomplete feature.
4-->
5<#include "${templatesPath}/46861"/>
6<link rel="stylesheet" href="https://unpkg.com/leaflet/dist/leaflet.css" />
7<script src="https://unpkg.com/leaflet/dist/leaflet.js"></script>
8
9
10
11<div class="container">
12<div class="row justify-content-center">
13<div class="col-lg-8 col-12">
14<div class="cmp-hero">
15<section class="align-items-start">
16<div class="it-hero-text-wrapper pt-0 ps-0 pb-4 pb-lg-60">
17<h1 class="text-black" data-element="page-name"><#if Titolo.getData() != ''><div class="marginBottom20"><b></b> ${Titolo.getData()}</div></#if></h1>
18
19<div class="hero-text">
20
21</div>
22</div>
23<div class="category-top">
24
25
26</section>
27</div>
28</div>
29
30<div class="col-lg-4 col-12">
31<#assign articleCategories = getCategoriesOfArticle()>
32
33 <#if articleCategories?has_content>
34 Argomenti <br/>
35 <#list articleCategories as catEntry>
36 <a class="chip chip-simple" href="#">
37 <span class="chip-label">${(catEntry)}</span>
38 </a>
39 </#list>
40
41 </#if>
42
43</div>
44</div>
45</div>
46
47
48<div class="container-fluid my-3">
49<div class="row">
50 <div class="col-12 col-md-12">
51
52 </div>
53</div>
54</div>
55
56<!-- inizio parte centrale -->
57<div class="container">
58 <div class="row border-top border-light row-column-border row-column-menu-left">
59 <aside class="col-lg-3">
60 <div class="cmp-navscroll sticky-top" aria-labelledby="accordion-title-one">
61 <nav class="navbar it-navscroll-wrapper navbar-expand-lg" aria-label="INDICE DELLA PAGINA" data-bs-navscroll="">
62 <div class="navbar-custom" id="navbarNavProgress">
63 <div class="menu-wrapper">
64 <div class="link-list-wrapper">
65
66
67
68 <div class="accordion" id="myAccordion">
69 <div class="card">
70<span class="accordion-header" id="accordion-title-one">
71 <button class="accordion-button pb-10 px-3" type="button" data-toggle="collapse" data-target="#collapseOne" aria-expanded="true" aria-controls="collapseOne">
72 INDICE DELLA PAGINA
73 </button>
74</span>
75
76 <div id="collapseOne" class="collapse show" aria-labelledby="headingOne" data-parent="#myAccordion">
77 <div class="card-body">
78 <ul class="link-list" data-element="page-index">
79 <li class="nav-item">
80 <a class="nav-link gtActive" href="#" data-anchor="descrizione">
81 <span class="title-medium">Descrizione</span>
82 </a>
83 </li>
84 <li class="nav-item">
85 <a class="nav-link" href="#" data-anchor="dove">
86 <span class="title-medium">Dove</span>
87 </a>
88 </li>
89 <li class="nav-item">
90 <a class="nav-link" href="#" data-anchor="geolocalizzazione">
91 <span class="title-medium">Geolocalizzazione</span>
92 </a>
93 </li>
94 <li class="nav-item">
95 <a class="nav-link" href="#" data-anchor="ulteriori-info">
96 <span class="title-medium">Ulteriori informazioni</span>
97 </a>
98 </li>
99 </ul>
100 </div>
101 </div>
102
103 </div>
104 </div>
105
106
107
108 </div>
109 </div>
110 </div>
111 </nav>
112 </div> </aside>
113 <section class="col-lg-9 it-page-sections-container border-light">
114 <article id="descrizione" class="it-page-section anchor-offset" data-audio="">
115
116 <#if Descrizione.getData() != ''><div class="marginBottom20"> <h2 class="mb-3">Descrizione</h2> ${Descrizione.getData()}</div></#if>
117 </article>
118 <div class="row"> </div>
119 <article id="dove" class="it-page-section anchor-offset mt-5">
120 <h2 class="mb-3">Dove</h2>
121 <#if Dove.getData() != ''><div class="marginBottom20"><b></b> ${Dove.getData()}</div></#if>
122 </article>
123 <div class="row"> </div> <div class="row"> </div>
124 <article id="geolocalizzazione" class="it-page-section anchor-offset" data-audio="">
125 <#if Geolocation80590149.getData() != ''><div class="marginBottom20" style="display: none;"><b>Ufficio responsabile</b> ${Geolocation80590149.getData()}</div></#if>
126 <div id="mymap" style="height: 400px;"></div>
127
128
129
130 </article>
131 <div class="row"> </div>
132
133 <article id="ulteriori-info" class="it-page-section anchor-offset mt-5">
134<#if (UlterioriInformazioni.getData())??>
135 ${UlterioriInformazioni.getData()}
136</#if>
137 </article>
138
139
140 </section>
141 </div>
142 </div>
143
144
145<!-- fine -->
146<script src="https://code.jquery.com/jquery-3.6.4.min.js"></script>
147
148<script>
149 /*document.addEventListener('DOMContentLoaded', function () {*/
150 // Ottieni tutti gli elementi con la classe "nav-link"
151 var navLinks = document.querySelectorAll('.nav-link');
152
153 // Aggiungi un gestore di eventi a ciascun elemento
154 navLinks.forEach(function (link) {
155 link.addEventListener('click', function (event) {
156 // Rimuovi la classe "active" da tutti gli elementi
157 navLinks.forEach(function (link) {
158 link.classList.remove('active');
159 });
160
161 // Aggiungi la classe "active" solo all'elemento cliccato
162 this.classList.add('active');
163 });
164
165 // Aggiungi un gestore di eventi per l'hover
166 link.addEventListener('mouseover', function (event) {
167 // Aggiungi la classe "hover" quando l'elemento è passato sopra
168 this.classList.add('hover');
169 });
170
171 link.addEventListener('mouseout', function (event) {
172 // Rimuovi la classe "hover" quando l'elemento non è più passato sopra
173 this.classList.remove('hover');
174 });
175 });
176 // });
177</script>
178<script>
179
180</script>
181
182<!--#<script>
183 document.addEventListener('DOMContentLoaded', function () {
184 var geolocationData = JSON.parse('${Geolocation80590149.getData()?js_string!""}');
185 console.log(geolocationData);
186
187 if (geolocationData && geolocationData.lat && geolocationData.lng) {
188 var lat = parseFloat(geolocationData.lat);
189 var lng = parseFloat(geolocationData.lng);
190
191 console.log('Latitude:', lat);
192 console.log('Longitude:', lng);
193
194 var mymap = L.map('mymap').setView([lat, lng], 15);
195
196 L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
197 attribution: '© OpenStreetMap contributors'
198 }).addTo(mymap);
199
200 L.marker([lat, lng]).addTo(mymap)
201 .bindPopup('Ufficio responsabile')
202 .openPopup();
203 } else {
204 console.error('Dati di geolocalizzazione non validi');
205 }
206 });
207</script>
208#-->
209<script>
210var geolocationData = JSON.parse('${Geolocation80590149.getData()?js_string!""}');
211console.log('DATI DELLA geolocalizzazione');
212console.log(geolocationData);
213</script>
214<script>
215
216
217 var geolocationData = JSON.parse('${Geolocation80590149.getData()?js_string!""}');
218 console.log(geolocationData);
219
220 if (geolocationData && geolocationData.lat && geolocationData.lng) {
221 var lat = parseFloat(geolocationData.lat);
222 var lng = parseFloat(geolocationData.lng);
223
224 console.log('Latitude:', lat);
225 console.log('Longitude:', lng);
226
227 var mymap = L.map('mymap').setView([lat, lng], 15);
228
229 L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
230 attribution: '© OpenStreetMap contributors'
231 }).addTo(mymap);
232
233 L.marker([lat, lng]).addTo(mymap)
234 .bindPopup('Ufficio responsabile')
235 .openPopup();
236 } else {
237 console.error('Dati di geolocalizzazione non validi');
238 }
239
240
241</script>
242
243
244<style>
245 <#if Geolocation80590149.getData() == ''>
246 #ufficioResponsabile {
247 display: none;
248 }
249 </#if>
250</style>
251<#function getCategoriesOfArticle>
252<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
253<#assign articleId=.vars['reserved-article-id'].getData()/>
254<#assign groupId = themeDisplay.getScopeGroupId()/>
255<#assign article = journalArticleLocalService.getArticle(groupId,articleId)/>
256<#assign assetCategoryLocalService = staticUtil["com.liferay.asset.kernel.service.AssetCategoryLocalServiceUtil"]/>
257<#assign resourcePrimaryKey=article.getResourcePrimKey()/>
258<#assign categories = assetCategoryLocalService.getCategoryNames("com.liferay.journal.model.JournalArticle",resourcePrimaryKey)/>
259<#return categories/>
260</#function>
Contatta il comune
- Leggi le domande frequenti
- Richiedi assistenza
- Chiama il numero +39 080-325.91.11
- Prenota appuntamento