{"id":2152,"date":"2026-02-06T11:57:22","date_gmt":"2026-02-06T10:57:22","guid":{"rendered":"https:\/\/midnightblue-barracuda-188246.hostingersite.com\/ereignisse\/"},"modified":"2026-02-18T18:07:06","modified_gmt":"2026-02-18T17:07:06","slug":"ereignisse","status":"publish","type":"page","link":"https:\/\/www.villaclaudiatorbole.com\/de\/ereignisse\/","title":{"rendered":"Ereignisse"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"2152\" class=\"elementor elementor-2152 elementor-1445\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6016e2f0 e-con-full e-flex e-con e-parent\" data-id=\"6016e2f0\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-47b1d2e3 elementor--h-position-center elementor--v-position-middle elementor-arrows-position-inside elementor-widget elementor-widget-slides\" data-id=\"47b1d2e3\" data-element_type=\"widget\" data-settings=\"{&quot;navigation&quot;:&quot;arrows&quot;,&quot;autoplay&quot;:&quot;yes&quot;,&quot;pause_on_hover&quot;:&quot;yes&quot;,&quot;pause_on_interaction&quot;:&quot;yes&quot;,&quot;autoplay_speed&quot;:5000,&quot;infinite&quot;:&quot;yes&quot;,&quot;transition&quot;:&quot;slide&quot;,&quot;transition_speed&quot;:500}\" data-widget_type=\"slides.default\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"elementor-slides-wrapper elementor-main-swiper swiper\" role=\"region\" aria-roledescription=\"carousel\" aria-label=\"Slides\" dir=\"ltr\" data-animation=\"fadeInUp\">\n\t\t\t\t<div class=\"swiper-wrapper elementor-slides\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"elementor-repeater-item-ad56959 swiper-slide\" role=\"group\" aria-roledescription=\"slide\"><div class=\"swiper-slide-bg elementor-ken-burns elementor-ken-burns--in\" role=\"img\" aria-label=\"Segelregatta\"><\/div><div class=\"elementor-background-overlay\"><\/div><div class=\"swiper-slide-inner\" ><div class=\"swiper-slide-contents\"><\/div><\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-3165e071 e-flex e-con-boxed e-con e-child\" data-id=\"3165e071\" data-element_type=\"container\" data-settings=\"{&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5d169f7 elementor-invisible elementor-widget elementor-widget-heading\" data-id=\"5d169f7\" data-element_type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;slideInDown&quot;}\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Ereignisse<\/h1>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-53119e74 e-flex e-con-boxed e-con e-parent\" data-id=\"53119e74\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-21328771 anima-bottom elementor-widget elementor-widget-heading\" data-id=\"21328771\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Veranstaltungen im Garda Trentino\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-212e986d anima-top elementor-widget elementor-widget-text-editor\" data-id=\"212e986d\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Ein Kalender voller Termine f\u00fcr Gro\u00df und Klein.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-37bbfd7 e-flex e-con-boxed e-con e-parent\" data-id=\"37bbfd7\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b5e3ef9 elementor-widget elementor-widget-html\" data-id=\"b5e3ef9\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div id=\"filter-buttons\" style=\"margin-bottom:1em;\">\r\n  <button data-filter=\"all\" class=\"active\">Alle<\/button>\r\n  <button data-filter=\"musica\">Musik<\/button>\r\n  <button data-filter=\"cultura\">Kultur<\/button>\r\n  <button data-filter=\"gusto\">Geschmack<\/button>\r\n  <button data-filter=\"sports\">Sport<\/button>\r\n  <button data-filter=\"mercato\">Markt<\/button>\r\n  <button data-filter=\"esposizione\">Exposition<\/button>\r\n  <button data-filter=\"fiere e congressi\">Messen und Kongresse<\/button>\r\n  <button data-filter=\"altro\">Mehr<\/button>\r\n<\/div>\r\n\r\n<div id=\"eventi-container\">Der Ladevorgang l\u00e4uft...<\/div>\r\n\r\n<template id=\"tpl-evento\">\r\n  <div class=\"evento-card\">\r\n     <a href=\"#\" class=\"evento-link-immagine\">\r\n    <img decoding=\"async\" class=\"evento-img\" loading=\"lazy\" src=\"\" alt=\"Ereignis-Bild\"><\/a>\r\n    <div class=\"evento-body\">\r\n      <h3 class=\"evento-titolo\"><\/h3>\r\n      <p class=\"evento-date\"><\/p>\r\n      <p class=\"evento-loc\"><\/p>\r\n      <p class=\"evento-desc\"><\/p>\r\n      <a href=\"#\" class=\"evento-pulsante\">Details<\/a>\r\n    <\/div>\r\n  <\/div>\r\n<\/template>\r\n\r\n<script>\r\n(function(){\r\n  const url = 'https:\/\/digiside.laspezia.it\/api\/tonelli\/eventi\/it';\r\n  const container = document.getElementById('eventi-container');\r\n  const tpl       = document.getElementById('tpl-evento');\r\n  const btns      = document.querySelectorAll('#filter-buttons button');\r\n  let eventsData  = [];\r\n\r\n  function slugify(str) {\r\n    return str\r\n      .normalize('NFD').replace(\/[\\u0300-\\u036f]\/g, '')\r\n      .toLowerCase()\r\n      .trim()\r\n      .replace(\/[^a-z0-9]+\/g, '-')\r\n      .replace(\/^-+|-+$\/g, '');\r\n  }\r\n\r\n  function renderEvents(filter) {\r\n    container.innerHTML = '';\r\n    const filtered = eventsData.filter(ev => filter === 'all' || ev.categoria === filter);\r\n\r\n    if (filtered.length === 0) {\r\n      container.innerHTML = '<p>Nessun evento trovato.<\/p>';\r\n      return;\r\n    }\r\n\r\n    filtered.forEach(ev => {\r\n      const clone = tpl.content.cloneNode(true);\r\n      const img = clone.querySelector('.evento-img');\r\n      img.src = ev.immagine;\r\n      img.alt = ev.titolo;\r\n\r\n      clone.querySelector('.evento-titolo').textContent = ev.titolo;\r\n\r\n      const inizio = new Date(ev.dataInizio).toLocaleDateString('it-IT');\r\n      const fine   = new Date(ev.dataFine).toLocaleDateString('it-IT');\r\n      clone.querySelector('.evento-date').textContent =\r\n        (inizio === fine) ? inizio : `${inizio} \u2013 ${fine}`;\r\n\r\n      clone.querySelector('.evento-desc').textContent = ev.descrizioneBreve;\r\n      clone.querySelector('.evento-loc').textContent  = ev.localita;\r\n\r\n      const slug = slugify(ev.titolo);\r\n      clone.querySelector('.evento-pulsante').href = `\/dettaglio-evento\/${ev.id}\/${slug}\/`;\r\n      \r\n      \r\n      clone.querySelector('.evento-link-immagine').href = `\/dettaglio-evento\/${ev.id}\/${slug}\/`;\r\n\r\n      container.appendChild(clone);\r\n    });\r\n  }\r\n\r\n  btns.forEach(btn => {\r\n    btn.addEventListener('click', () => {\r\n      btns.forEach(b => b.classList.remove('active'));\r\n      btn.classList.add('active');\r\n      renderEvents(btn.dataset.filter);\r\n    });\r\n  });\r\n\r\n  container.textContent = 'Caricamento in corso...';\r\n  fetch(url, {\r\n    method: 'POST',\r\n    headers: { 'Content-Type': 'application\/json' },\r\n    body: JSON.stringify({})\r\n  })\r\n  .then(res => {\r\n    if (!res.ok) throw new Error('HTTP ' + res.status);\r\n    return res.json();\r\n  })\r\n  .then(data => {\r\n    eventsData = data;\r\n    renderEvents('all');\r\n  })\r\n  .catch(err => {\r\n    container.innerHTML = `<p class=\"error\">Errore nel caricamento: ${err.message}<\/p>`;\r\n  });\r\n\r\n})();\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Ereignisse Veranstaltungen im Garda Trentino Ein Kalender voller Termine f\u00fcr Gro\u00df und Klein. Alle Musik Kultur Geschmack Sport Markt Exposition Messen und Kongresse Mehr Der Ladevorgang l\u00e4uft&#8230; Details<\/p>\n","protected":false},"author":1,"featured_media":2153,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-2152","page","type-page","status-publish","has-post-thumbnail","hentry"],"_links":{"self":[{"href":"https:\/\/www.villaclaudiatorbole.com\/de\/wp-json\/wp\/v2\/pages\/2152","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.villaclaudiatorbole.com\/de\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.villaclaudiatorbole.com\/de\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.villaclaudiatorbole.com\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.villaclaudiatorbole.com\/de\/wp-json\/wp\/v2\/comments?post=2152"}],"version-history":[{"count":2,"href":"https:\/\/www.villaclaudiatorbole.com\/de\/wp-json\/wp\/v2\/pages\/2152\/revisions"}],"predecessor-version":[{"id":3006,"href":"https:\/\/www.villaclaudiatorbole.com\/de\/wp-json\/wp\/v2\/pages\/2152\/revisions\/3006"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.villaclaudiatorbole.com\/de\/wp-json\/wp\/v2\/media\/2153"}],"wp:attachment":[{"href":"https:\/\/www.villaclaudiatorbole.com\/de\/wp-json\/wp\/v2\/media?parent=2152"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}