IL GEOMETRA
Il Geometra e il Geometra laureato
VIDEO
UNA VITA DA GEOMETRA, STORIE DI SUCCESSO
Une erreur s'est produite lors du traitement du modèle.
The following has evaluated to null or missing:
==> titoloNodePath.selectSingleNode(rootElement) [in template "20115#20151#344530" at line 52, column 23]
----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----
----
FTL stack trace ("~" means nesting-related):
- Failed at: #assign titoloNode = titoloNodePath.s... [in template "20115#20151#344530" at line 52, column 1]
----
1<#-- =================== INIZIO PARTE NEWS LOOP =================== -->
2<div class="col-lg-12 wow fadeInRight" style="padding:0px;">
3
4 <div class="news-feed mb-4">
5 <header>
6 <h4 class="mb-0 font-size-20" style="color:white !important; margin-block-start:0!important;">NEws del geometra laureato</h4>
7 </header>
8 <main>
9
10<#if entries?has_content>
11
12 <#assign idxLoop = 0 />
13
14 <#list entries as curEntry> <#-- INIZIO LOOP (indici 0-based)-->
15
16
17<#assign idxLoop = curEntry?index />
18
19
20
21<#assign newsTitle = curEntry.getTitle(locale) />
22<#assign newsSummary = curEntry.getSummary(locale) />
23<#assign dataPub = curEntry.getPublishDate() />
24
25
26
27<#assign renderer = curEntry.getAssetRenderer() />
28<#assign Article = renderer.getArticle() />
29<#assign smallImageID = Article.getSmallImageId() />
30<#if smallImageID??>
31<#assign smallImageURL = "/image/image_gallery?img_id=${smallImageID}" />
32<#else>
33<#assign smallImageURL = Article.getSmallImageURL() />
34</#if>
35
36<#assign viewURL = assetPublisherHelper.getAssetViewURL(renderRequest, renderResponse, curEntry) />
37<#assign viewURLAsset = renderer.getURLViewInContext(renderRequest, renderResponse, viewURL) />
38
39
40
41<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
42<#assign DDMStructureLocalService = serviceLocator.findService("com.liferay.dynamic.data.mapping.service.DDMStructureLocalService") >
43<#assign article = journalArticleLocalService.getLatestArticle(Article.resourcePrimKey) />
44<#assign docTotale = article.getContentByLocale(localeUtil.toLanguageId(localeUtil.getDefault())) />
45<#assign doc = saxReaderUtil.read(article.getContentByLocale(localeUtil.toLanguageId(localeUtil.getDefault()))) />
46
47<#-- INIZIO LETTURA CAMPI -->
48<#assign rootElement = doc.getRootElement() />
49<#assign news = rootElement.selectNodes("/Ttiolo") />
50
51<#assign titoloNodePath = saxReaderUtil.createXPath("dynamic-element[@name='Ttiolo']") />
52<#assign titoloNode = titoloNodePath.selectSingleNode(rootElement) />
53
54<#assign xPathSelector = saxReaderUtil.createXPath("dynamic-content") />
55<#assign titoloVal = xPathSelector.selectSingleNode(titoloNode).getStringValue() />
56
57<#assign xPathData = saxReaderUtil.createXPath("dynamic-element[@name='DataNotizia']/dynamic-content") />
58<#assign dataNotizia = xPathData.selectSingleNode(titoloNode).getStringValue() />
59
60<#assign xPathAbstract = saxReaderUtil.createXPath("dynamic-element[@name='Abstract']/dynamic-content") />
61<#assign abstract = xPathAbstract.selectSingleNode(titoloNode).getStringValue() />
62
63<#assign xPathFoto = saxReaderUtil.createXPath("dynamic-element[@name='Foto']/dynamic-content") />
64<#assign fotoLink = xPathFoto.selectSingleNode(titoloNode).getStringValue() />
65
66
67<#-- ========== COSTRUZIONE HTML SINGOLA NEWS ==================== -->
68
69
70
71 <div class="news-box">
72
73 <#if dataNotizia?? && dataNotizia?has_content>
74 <#assign someDate = dataNotizia?date.xs>
75
76<div class="date mb-1" style="color:black !important;">${someDate?string["dd/MM/yyyy"]}</div>
77</#if>
78
79<!-- NASCOSTA IMMAGINE -->
80<#if fotoLink?? && false>
81 <div class="img-box mb-3 p-5" style="background-image: url(${fotoLink}); background-position: center center; background-size: cover">
82
83 </div>
84 </#if>
85 <!-- NASCOSTA IMMAGINE -->
86
87
88 <!--a href="${viewURLAsset?replace('bFFNlfVUGr8U','atokTJ1vRGEQ')?replace('hifOY88BjsjG','atokTJ1vRGEQ')}">${titoloVal}</a-->
89
90 <a href="${viewURLAsset?replace('sjdfidiiriuru','5xXCrPteqBpy')?replace('albano','5xXCrPteqBpy')?replace('ronin','5xXCrPteqBpy')}" >${titoloVal}</a>
91
92</div>
93
94
95
96
97
98<#-- =================== FINE COSTRUZIONE SINGOLA News ======================= -->
99
100
101<#-- FINE -->
102
103
104
105
106
107
108
109 </#list> <#-- FINE LOOP -->
110
111
112
113</#if>
114<#-- FINE NEWS LOOP -->
115
116
117<a href="/news" class="text-uppercase text-red font-weight-700">Leggi tutte le news</a>
118
119
120 </main>
121 </div> <!-- chiusura news-feed -->
122
123 </div> <#-- chiusura div menu laterale -->
124
125
126
127
128
129
130<#-- CSS PER NASCONDERE IL TITOLO DEL WEB CONTENT -->
131<style type="text/css">
132.portlet-title-text{display: none;}
133</style>
134
135
136<#-- TEMP CSS GIUSEPPE -->
137<style type="text/css">
138/******* CARD NEWS *******/
139
140.news-card {
141 display:flow-root;
142 font-size: 22px;
143 background: transparent;
144 text-align: center;
145 font-weight: 700;
146 line-height: 1.1;
147 padding: 0;
148 color: var(--black);
149 -webkit-transition: background 200ms;
150 -moz-transition: background 200ms;
151 -ms-transition: background 200ms;
152 -o-transition: background 200ms;
153 transition: background 200ms;
154}
155
156.news-card:hover {
157 background: #fff;
158 text-decoration: none;
159 color: var(--black);
160 -webkit-transition: background 200ms;
161 -moz-transition: background 200ms;
162 -ms-transition: background 200ms;
163 -o-transition: background 200ms;
164 transition: background 200ms;
165}
166
167.news-card .card-img {
168 width: 70px;
169 height: 70px;
170 margin: 0;
171 display: flex;
172 align-items: center;
173 justify-content: center;
174 float: left;
175}
176
177.news-card img {
178 border-radius: 8px;
179}
180
181.news-card p {
182 margin-bottom: 0;
183 margin-top: 1rem;
184 font-size: 1.1rem;
185
186}
187
188.titolinews
189{
190 font-size: 1.0rem;
191 font-weight: 600;
192
193}
194
195
196.tag-news
197{
198border-radius: 5px;
199padding: 5px;
200background-color: var(--red);
201font-size: 12px;
202}
203
204
205/***** END CARD NEWS *****/
206h4 {
207 font-family: Montserrat !important;
208 line-height: 1.3;
209
210}
211
212
213</style>
L’IMPRONTA ECOLOGICA DEI GEOMETRI
L’intensificarsi della riflessione sociale sul rapporto tra l’uomo, il territorio e l’ambiente antropizzato – parte costitutiva del bagaglio formativo della Categoria – ha fatto emergere al suo interno l’esigenza di assumere verso la collettività una responsabilità più ampia e consapevole rispetto al passato, nonché il desiderio e l’ambizione di confrontarsi su temi fortemente innovativi quale quello della sostenibilità ambientale. Partendo da questa duplice esigenza la Categoria ha intrapreso un percorso che l’ha condotta a definire la sua specifica “impronta ecologica”, e ad orientare l’attività progettuale verso un orizzonte di sostenibilità.