Valore Condiviso Energia | Casa | Hera Comm - Gruppo Hera
I nostri obiettivi
Noi di Hera Comm vogliamo rappresentare un punto di riferimento per i nostri clienti con lo sviluppo di un modello originale di impresa capace di innovazione e di forte radicamento territoriale, nel rispetto dell’ambiente. Vogliamo contribuire allo sviluppo delle città in cui abitiamo con lo svolgimento di attività che rispondano pienamente agli obiettivi per lo sviluppo sostenibile dell’Agenda Onu 2030.
Le opportunità che abbiamo identificato per noi, sulla base dell’analisi dell’Agenda Onu 2030 e di oltre 98 politiche di sostenibilità a livello mondiale, europeo, nazionale e locale, si collocano all’interno dei seguenti driver del cambiamento:
• Energia - Perseguire la neutralità di carbonio
• Ambiente - Rigenerare le risorse e chiudere il cerchio
• Territorio (e Impresa) - Abilitare la resilienza e innovare
I nostri obiettivi
Noi di Hera Comm vogliamo rappresentare un punto di riferimento per i nostri clienti con lo sviluppo di un modello originale di impresa capace di innovazione e di forte radicamento territoriale, nel rispetto dell’ambiente. Vogliamo contribuire allo sviluppo delle città in cui abitiamo con lo svolgimento di attività che rispondano pienamente agli obiettivi per lo sviluppo sostenibile dell’Agenda Onu 2030.
Le opportunità che abbiamo identificato per noi, sulla base dell’analisi dell’Agenda Onu 2030 e di oltre 98 politiche di sostenibilità a livello mondiale, europeo, nazionale e locale, si collocano all’interno dei seguenti driver del cambiamento:
• Energia - Perseguire la neutralità di carbonio
• Ambiente - Rigenerare le risorse e chiudere il cerchio
• Territorio (e Impresa) - Abilitare la resilienza e innovare
Energia - Perseguire la neutralità di carbonio
Promozione dell’efficienza energetica
Contribuisci anche tu a realizzare questi 2 Sustainable Development Goals dell’Agenda Onu 2030
Energia - Perseguire la neutralità di carbonio
Promozione dell’efficienza energetica
Contribuisci anche tu a realizzare questi 2 Sustainable Development Goals dell’Agenda Onu 2030
Diario dei Consumi
Tieni sempre sotto controllo i tuoi consumi, confrontali con clienti simili a te e segui i nostri consigli per ridurli.
Hera Thermo
Programma e gestisci il riscaldamento di casa dal tuo smartphone. Consumi di meno e risparmi di più!
Hera Caldaia
Con Hera Caldaia il più alto standard di risparmio energetico, performance e comfort entra a casa tua
Hera Scaldacqua
Con Hera Scaldacqua hai sicurezza totale e massimo comfort a tua disposizione
Transizione Energetica e rinnovabili
Contribuisci anche tu a realizzare questi 3 Sustainable Development Goals dell’Agenda Onu 2030
Pannelli Fotovoltaici
Scegli l'energia del sole: semplice, sostenibile e anche conveniente.
Transizione Energetica e rinnovabili
Contribuisci anche tu a realizzare questi 3 Sustainable Development Goals dell’Agenda Onu 2030
Pannelli Fotovoltaici
Scegli l'energia del sole: semplice, sostenibile e anche conveniente.
Ambiente - Rigenerare le risorse e chiudere il cerchio
Tutela dell'aria, del suolo e della biodiversità
Contribuisci anche tu a realizzare questi 2 Sustainable Development Goals dell’Agenda Onu 2030
Ambiente - Rigenerare le risorse e chiudere il cerchio
Tutela dell'aria, del suolo e della biodiversità
Contribuisci anche tu a realizzare questi 2 Sustainable Development Goals dell’Agenda Onu 2030
Java method "static com.liferay.portal.kernel.service.LayoutServiceUtil.getLayoutByUuidAndGroupId(String, long, boolean)" threw an exception; see cause exception in the Java stack trace. ---- FTL stack trace ("~" means nesting-related): - Failed at: articleLayout = layoutServiceUtil.get... [in template "20099#20135#94266" at line 106, column 32] - Reached through: #assign-container [in template "20099#20135#94266" at line 104, column 14] ----
1<style>
2 .card-deck {
3 justify-content: center;
4 width: 100%;
5 }
6 .h-auto{
7 height: auto;
8 }
9 @media (max-width: 991px) {
10 .card {
11 max-width: 100% !important;
12 }
13 }
14 </style>
15 <#assign
16 assetVocabularyServiceUtil = objectUtil("com.liferay.asset.kernel.service.AssetVocabularyLocalServiceUtil")
17 vocabulariesList = assetVocabularyServiceUtil.getGroupVocabularies(themeDisplay.getScopeGroupId())
18 vocabularyId = 0
19 bgtheme = ""
20 immagineStrName = ""
21 prefUrl = layout.getGroup().getDisplayURL(themeDisplay, false)
22 emptyDivNumber = 0
23 emptyDiv = ""
24 totalEntryCounter = 0
25 classLoaderTwoDeck = ""
26 classLoaderTwoCard = ""
27 />
28 <#list vocabulariesList as vocabulary>
29 <#assign vocabularyName = vocabulary.getName() />
30 <#if vocabularyName?? && vocabularyName?lower_case == "servizio">
31 <#assign vocabularyId = vocabulary.getVocabularyId() />
32 </#if>
33 </#list>
34 <#if currentURL?contains("offerte-luce-gas")>
35 <#assign bgtheme = "card-deck-bg" />
36 </#if>
37 <#if entries?has_content>
38 <#assign totalEntryCounter = entries?size />
39 </#if>
40
41 <#if totalEntryCounter % 3 == 1>
42 <#assign emptyDiv = "<div class='card pb-2' style='opacity:0;'></div> <div class='card pb-2' style='opacity:0;'></div>" />
43 <#elseif totalEntryCounter % 3 == 2>
44 <#assign
45 classLoaderTwoDeck = "justify-content: center;"
46 classLoaderTwoCard = "max-width: 30%;text-align: left;"
47 />
48 <#else>
49 <#assign emptyDiv = "" />
50 </#if>
51
52 <#if themeDisplay.getScopeGroup().getParentGroupId() gt 0>
53 <#assign scopeGroupId = themeDisplay.getScopeGroup().getParentGroupId() />
54 <#else>
55 <#assign scopeGroupId = themeDisplay.getScopeGroupId() />
56 </#if>
57 <section id="offerte-luce-gas">
58 <div class="container-fluid ${bgtheme}">
59 <div class="container">
60 <div class="row">
61 <div class="col-lg-12">
62 <#if entries?has_content>
63 <#assign itemCounter = 0/>
64 <#list entries as curEntry>
65 <#assign
66 dateFormat = "dd MM yyyy"
67 itemCounter = itemCounter + 1
68 assetRenderer = curEntry.getAssetRenderer()
69 docXml = saxReaderUtil.read(assetRenderer.getArticle().getContentByLocale(locale.toString()))
70 immagineInEvidenza = docXml.valueOf("//dynamic-element[@name='ImmagineOfferta']/dynamic-content/text()")
71 sottotitolo = docXml.valueOf("//dynamic-element[@name='SottotitoloOfferta']/dynamic-content/text()")
72 titolo = docXml.valueOf("//dynamic-element[@name='TitoloIntro']/dynamic-content/text()")
73 descrizione = docXml.valueOf("//dynamic-element[@name='DescrizioneIntro']/dynamic-content/text()")
74 scadenzaOfferta = docXml.valueOf("//dynamic-element[@name='ScadenzaOfferta']/dynamic-content/text()")
75 offertaFlat = docXml.valueOf("//dynamic-element[@name='OffertaFlat']/dynamic-content/text()")
76 offertaAConsumo = docXml.valueOf("//dynamic-element[@name='OffertaAConsumo']/dynamic-content/text()")
77 primoTestoElenco = docXml.valueOf("//dynamic-element[@name='PrimoTestoElenco']/dynamic-content/text()")
78 secondoTestoElenco = docXml.valueOf("//dynamic-element[@name='SecondoTestoElenco']/dynamic-content/text()")
79 terzoTestoElenco = docXml.valueOf("//dynamic-element[@name='TerzoTestoElenco']/dynamic-content/text()")
80 />
81 <#if currentURL?contains("soluzioni-sostenibili")>
82 <#assign immagineInEvidenza = docXml.valueOf("//dynamic-element[@name='ImmaginePiccola']/dynamic-content/text()") />
83 <#if !immagineInEvidenza?has_content>
84 <#assign immagineInEvidenza = docXml.valueOf("//dynamic-element[@name='ImmagineOfferta']/dynamic-content/text()") />
85 </#if>
86 </#if>
87 <#list "${immagineInEvidenza}"?split(",") as imageTmpSingleVar>
88 <#assign imageSingleVar = imageTmpSingleVar?split(":") />
89 <#if imageSingleVar[0]?contains("groupId")>
90 <#assign immagineStrGroupID = imageSingleVar[1]?replace('"', '') />
91 <#elseif imageSingleVar[0]?contains("name")>
92 <#assign
93 immagineStrName = imageSingleVar[1]?replace('"', '')
94 immagineStrName = immagineStrName?replace(' ', '+')
95 />
96 <#elseif imageSingleVar[0]?contains("uuid")>
97 <#assign immagineStrUUID = imageSingleVar[1]?replace('"', '') />
98 </#if>
99 </#list>
100 <#assign immagineUrl = "" />
101 <#if immagineStrGroupID?? && immagineStrName?? && immagineStrUUID??>
102 <#assign immagineUrl = "/documents/" + immagineStrGroupID + "/0/" + immagineStrName + "/" + immagineStrUUID />
103 </#if>
104 <#assign
105 layoutServiceUtil = objectUtil("com.liferay.portal.kernel.service.LayoutServiceUtil")
106 articleLayout = layoutServiceUtil.getLayoutByUuidAndGroupId(assetRenderer.getArticle().getLayoutUuid(), scopeGroupId, false)
107 friendlyUrl = articleLayout.getFriendlyURL(locale)
108 />
109 <#if prefUrl != "">
110 <#assign friendlyUrl = prefUrl + friendlyUrl />
111 </#if>
112 <#if itemCounter == 1>
113 <div class="card-deck">
114 </#if>
115 <#if itemCounter == 1 & currentURL?contains("soluzioni-sostenibili")>
116 <div class="card-deck" style="justify-content: center";>
117 </#if>
118 <div class="card pb-2" style="${classLoaderTwoCard}">
119 <#assign
120 entryCategories = curEntry.getCategories()
121 hasLuce = false
122 hasGas = false
123 />
124 <#list entryCategories as entryCategory>
125 <#if entryCategory.vocabularyId == vocabularyId>
126 <#switch entryCategory.name?lower_case>
127 <#case "luce">
128 <#assign hasLuce = true />
129 <#break />
130 <#case "gas">
131 <#assign hasGas = true />
132 <#break />
133 <#default>
134 <#break />
135 </#switch>
136 </#if>
137 </#list>
138 <#if hasLuce || hasGas>
139 <span class="card-tag darkish-color smaller bolder">
140 <#if hasLuce && hasGas>
141 Luce & Gas
142 <#elseif hasLuce>
143 Luce
144 <#elseif hasGas>
145 Gas
146 </#if>
147 </span>
148 </#if>
149 <a href="${friendlyUrl}">
150 <#if currentURL?contains("soluzioni-sostenibili") || currentURL?contains("mobilita-sostenibile")>
151 <#if curEntry.getTitle(locale) == "Noleggio auto elettrica" >
152 <#assign backgroundSize = "contain" />
153 <#else>
154 <#assign backgroundSize = "cover" />
155 </#if>
156 <div style="background: url('${immagineUrl}') center center no-repeat; background-size: ${backgroundSize}; height: 232px; border-radius: 10px 10px 0px 0px;"></div>
157 <#else>
158 <img width="100" height="100" loading="lazy" class="card-img-top h-auto" src="${immagineUrl}" alt="${curEntry.getTitle(locale)}" />
159 </#if>
160 </a>
161 <div class="card-body">
162 <a href="${friendlyUrl}" class="greyish-brown">
163 <h3 class="h4 card-title mb-0 gradient-text title-big letter-spacing-sm bolder">${curEntry.getTitle(locale)}</h3>
164 <#if sottotitolo?has_content>
165 <h4 class="h6 d-block gradient-text x-bigger letter-spacing-sm mb-4">${sottotitolo}</h4>
166 </#if>
167 </a>
168 <#if curEntry.getSummary(locale)?has_content>
169 <div class="card-text greyish-brown small letter-spacing-sm">${curEntry.getSummary(locale)}</div>
170 </#if>
171 <!--
172 <#if (offertaFlat?? && offertaFlat != "") || (offertaAConsumo?? && offertaAConsumo != "")>
173 <div class="row text-center pt-3">
174 <#if offertaFlat?? && offertaFlat != "">
175 <div class="col-lg-6">
176 <div><span class="icon-ricarica gradient-text title-bigger"></span></div>
177 <div class="text-uppercase darkish-pink smaller bold">Offerta flat</div>
178 <div class="small">${offertaFlat}</div>
179 </div>
180 </#if>
181 <#if offertaAConsumo?? && offertaAConsumo != "">
182 <div class="col-lg-6">
183 <div><span class="icon-ricarica gradient-text title-bigger"></span></div>
184 <div class="text-uppercase darkish-pink smaller bold">Offerta a consumo</div>
185 <div class="small">${offertaAConsumo}</div>
186 </div>
187 </#if>
188 </div>
189 </#if>
190 <#if (primoTestoElenco?? && primoTestoElenco != "") || (secondoTestoElenco?? && secondoTestoElenco != "") || (terzoTestoElenco?? && terzoTestoElenco != "")>
191 <div class="row align-items-center pt-4 text-center text-uppercase">
192 <#if primoTestoElenco?? && primoTestoElenco != "">
193 <div class="col-lg-4">
194 <div>
195 <span class="icon-check-list gradient-text title-bigger"></span>
196 </div>
197 <div class="medium smaller l12">
198 ${primoTestoElenco}
199 </div>
200 </div>
201 </#if>
202 <#if secondoTestoElenco?? && secondoTestoElenco != "">
203 <div class="col-lg-4">
204 <div>
205 <span class="icon-check-list gradient-text title-bigger"></span>
206 </div>
207 <div class="medium smaller l12">
208 ${secondoTestoElenco}
209 </div>
210 </div>
211 </#if>
212 <#if terzoTestoElenco?? && terzoTestoElenco != "">
213 <div class="col-lg-4">
214 <div>
215 <span class="icon-check-list gradient-text title-bigger"></span>
216 </div>
217 <div class="medium smaller l12">
218 ${terzoTestoElenco}
219 </div>
220 </div>
221 </#if>
222 </div>
223 </#if>
224 -->
225 <#if scadenzaOfferta?has_content>
226 <#assign dataScadenzaOfferta = scadenzaOfferta?split("-") />
227 <#if dataScadenzaOfferta?size == 3>
228 <p class="card-text warm-grey small letter-spacing-sm font-italic">
229 Offerta valida fino al ${dataScadenzaOfferta[2]}/${dataScadenzaOfferta[1]}/${dataScadenzaOfferta[0]}
230 </p>
231 </#if>
232 </#if>
233
234 </div>
235 <div class="card-footer pb-4">
236 <a href="${friendlyUrl}" class="btn btn-small gradient white small letter-spacing-sm">Scopri di più</a>
237 </div>
238 </div>
239
240 <#if itemCounter % 3 == 0>
241 </div>
242 <div class="card-deck">
243 </#if>
244
245 <#if itemCounter == totalEntryCounter>
246 ${emptyDiv}
247 </div>
248 </#if>
249 </#list>
250 </#if>
251 </div>
252 </div>
253 </div>
254 </div>
255 </section>
Territorio (e Impresa) - Abilitare la resilienza e innovare
Innovazione e digitalizzazione
Contribuisci anche tu a realizzare questi 3 Sustainable Development Goals dell’Agenda Onu 2030
Sviluppo economico e inclusione sociale
Contribuisci anche tu a realizzare questi 2 Sustainable Development Goals dell’Agenda Onu 2030
Territorio (e Impresa) - Abilitare la resilienza e innovare
Innovazione e digitalizzazione
Contribuisci anche tu a realizzare questi 3 Sustainable Development Goals dell’Agenda Onu 2030
Sviluppo economico e inclusione sociale
Contribuisci anche tu a realizzare questi 2 Sustainable Development Goals dell’Agenda Onu 2030