Si è verificato un errore nell'elaborarazione del modello.
?substring(...) argument #1 had invalid value: The index must be at least 0, but was -1.

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign journalArticleId = themeDispl...  [in template "20099#20125#42405" at line 4, column 1]
----
1<#assign url = themeDisplay.getURLCurrent() 
2index = 0/> 
3 
4<#assign journalArticleId = themeDisplay.getURLCurrent()?substring(themeDisplay.getURLCurrent()?index_of("id="))+3/> 
5 
6 
7<#assign indexInizio = themeDisplay.getURLCurrent()?index_of("id=")+3> 
8<#assign indexFine= themeDisplay.getURLCurrent()?index_of("&from=")> 
9<#if indexFine!=-1> 
10	<#assign journalArticleId = themeDisplay.getURLCurrent()?substring(indexInizio, indexFine)/> 
11	<#assign indexInizioFrom = themeDisplay.getURLCurrent()?index_of("from=")+5> 
12	<#assign provenienza = themeDisplay.getURLCurrent()?substring(indexInizioFrom)/> 
13</#if> 
14<#if indexFine==-1> 
15<#assign journalArticleId = themeDisplay.getURLCurrent()?substring(indexInizio)> 
16</#if> 
17 
18<!--NEWS --> 
19<#if journalArticleId?has_content> 
20 
21<#if entries?has_content> 
22	<#list entries as curEntry> 
23	  <#if curEntry.getEntryId() == journalArticleId?number> 
24 
25<#assign 
26		assetRenderer = curEntry.getAssetRenderer() 
27		entryTitle = htmlUtil.escape(assetRenderer.getTitle(locale)) 
28		docXml = saxReaderUtil.read(assetRenderer.getArticle().getContent()) 
29		dataCreazione = curEntry.getCreateDate()  
30	  
31		/> 
32		<#if assetRenderer.getArticle().getExpandoBridge()?has_content && assetRenderer.getArticle().getExpandoBridge().getAttribute("progressivoNormativa")?has_content> 
33		  
34				 <#assign numeroDocumento = assetRenderer.getArticle().getExpandoBridge().getAttribute("progressivoNormativa") /> 
35				  
36		</#if> 
37  
38<!-- 
39<#assign 
40titolo = (docXml.valueOf("//dynamic-element[@name='Testo80954957']/dynamic-content/text()")) 
41descrizione = (docXml.valueOf("//dynamic-element[@name='Rtf94737872']/dynamic-content/text()")) 
42dataPubblicazione = docXml.valueOf("//dynamic-element[@name='dattero15170389']/dynamic-content/text()") 
43dataAggiornamento = docXml.valueOf("//dynamic-element[@name='dattero83993746']/dynamic-content/text()") 
44 
45image = docXml.valueOf("//dynamic-element[@name='immagine21517730']/dynamic-content/text()") 
46imageObj = jsonFactoryUtil.createJSONObject(image) 
47	 
48 
49/>--> 
50<#assign fields = assetRenderer.getDDMFormValuesReader().getDDMFormValues().getDDMFormFieldValues()/> 
51								<#list fields as currentField> 
52												<#if currentField.getDDMFormField().getFieldReference()=='titolo'> 
53													<#assign titolo=currentField.getValue().getString(themeDisplay.getLocale()) /> 
54												</#if> 
55												<#if currentField.getDDMFormField().getFieldReference()=='areaDiTesto'> 
56													<#assign descrizione=currentField.getValue().getString(themeDisplay.getLocale()) /> 
57												</#if> 
58												<#if currentField.getDDMFormField().getFieldReference()=='dataPubblicazione'> 
59													<#assign dataPubblicazione=currentField.getValue().getString(themeDisplay.getLocale()) /> 
60												</#if> 
61												<#if currentField.getDDMFormField().getFieldReference()=='immagine'> 
62													<#assign image=currentField.getValue().getString(themeDisplay.getLocale()) /> 
63													<#assign imageObj = jsonFactoryUtil.createJSONObject(image) /> 
64												</#if> 
65												<#if currentField.getDDMFormField().getFieldReference()=='dataAggiornamento'> 
66													<#assign dataAggiornamento=currentField.getValue().getString(themeDisplay.getLocale()) /> 
67												</#if> 
68												<#if currentField.getDDMFormField().getFieldReference()?contains("GruppoCampi")> 
69											  
70													<#assign fieldsListNested  =currentField.getNestedDDMFormFieldValues()/> 
71								 						<#list fieldsListNested as currentFieldNested> 
72															<#if  currentFieldNested.getDDMFormField().getFieldReference()== 'tipoDocumento' > 
73																 <#if currentFieldNested ?has_content && currentFieldNested.getValue()?has_content && currentFieldNested.getValue().getString(themeDisplay.getLocale())?has_content> 
74																 	<#assign selezioneTipoDocumento = currentFieldNested.getValue().getString(themeDisplay.getLocale())/> 
75																	  
76																 		<#if selezioneTipoDocumento?? >  
77																		   <#assign indexInizioSelezione = selezioneTipoDocumento?index_of("[")+2> 
78																				<#assign indexFineSelezione= selezioneTipoDocumento?index_of("]")> 
79																				   
80																				 <#assign codiceTipoDocumento = selezioneTipoDocumento?substring(indexInizioSelezione, indexFineSelezione-1)/> 
81																				  
82																		 		<#if currentFieldNested.getDDMFormField().getDDMFormFieldOptions().getOptions()??> 
83																						<#assign listOptionsTipoDoc = currentFieldNested.getDDMFormField().getDDMFormFieldOptions().getOptions() /> 
84																							<#list listOptionsTipoDoc as currentOptionKey, currentOptionValue>																							  
85																								<#if codiceTipoDocumento == currentOptionKey>  
86																									<#assign valoreTipoDocumento= currentOptionValue.getString(themeDisplay.getLocale()) /> 
87																								  
88																								</#if> 
89																							</#list> 
90																				</#if> 
91																		 </#if> 
92																		 
93																   </#if> 
94															</#if> 
95																	<#if  currentFieldNested.getDDMFormField().getFieldReference()== 'dataDocumento' > 
96																	 <#if currentFieldNested ?has_content && currentFieldNested.getValue()?has_content && currentFieldNested.getValue().getString(themeDisplay.getLocale())?has_content> 
97																	 			<#assign dataDocumento = currentFieldNested.getValue().getString(themeDisplay.getLocale())/> 
98																	 	</#if> 
99																		 
100														 		</#if> 
101														</#list> 
102											</#if> 
103								</#list> 
104<#assign contacts = docXml.getRootElement()/> 
105<#assign categories =curEntry.getCategories()/> 
106 
107       <main class="container ct-main"> 
108			 		<div class="subtitle-wrapper"> 
109            <span class="subtitle"><img src="/o/CSIRTTema/images/svg/calendar.svg" alt="calendario"> ${dataPubblicazione?datetime("yyyy-MM-dd")?string("dd MMMM yyyy")}</span> 
110						<span class="subtitle-id">${languageUtil.get(locale, "label.idDocumento")}:<p><#if valoreTipoDocumento??>${valoreTipoDocumento}</#if><#if dataDocumento?has_content>-${dataDocumento?datetime("yyyy-MM-dd")?string("dd/MM/yyyy")}</#if><#if numeroDocumento?has_content>-${numeroDocumento}</#if></p></span> 
111					</div> 
112            <h1 class="title">${titolo}</h1> 
113            <div id="ctDettCatalogo"> 
114                <div class="cropped img-wrapper"> 
115                    <img src="/documents/${imageObj.getString('groupId')}/${imageObj.getString('uuid')}" alt="">   
116                </div> 
117							<div class="wrapper-between"> 
118 
119                <div class="date-wrapper"> 
120                 	<#if dataAggiornamento?has_content>  
121									  	<span class="subtitle"><img src="/o/CSIRTTema/images/svg/calendar.svg" alt="${languageUtil.get(locale, "label.ricerca.calendario")}">${languageUtil.get(locale, "label.normativa.dataaggiornamento")} :</span> 
122                    	<span class="subtitle subtitle--date"> ${dataAggiornamento?datetime("yyyy-MM-dd")?string("dd MMMM yyyy")}</span> 
123									 </#if>  
124								</div> 
125								</div> 
126							 <div class="text-wrapper"> 
127                    <p>${descrizione}</p> 
128 
129                    <div class="tags-wrap"> 
130					    					<#list categories as category>     
131                           <div class="tag">${category.name}</div> 
132												</#list> 
133                    </div> 
134							 
135 
136							<#attempt> 
137											<#assign fieldsAllegati = assetRenderer.getDDMFormValuesReader().getDDMFormValues().getDDMFormFieldValues()/> 
138											<#list fieldsAllegati as currentFieldAllegati> 
139													<#if currentFieldAllegati.getDDMFormField().getFieldReference()=='allegati'> 
140														<#assign imgObjAllegati = jsonFactoryUtil.createJSONObject(currentFieldAllegati.getValue().getString(themeDisplay.getLocale()))/> 
141														 <#if imgObjAllegati != "{}"> 
142																<div class="link-wrapper"> 
143																	 <a href="/documents/${imgObjAllegati.getString('groupId')}/${imgObjAllegati.getString('uuid')}" title="${imgObjAllegati.getString('title')}"  
144																			 target="blank" aria-label="${languageUtil.get(locale, "label.vaiallink")}" class="link">${imgObjAllegati.getString('title')} 
145																				<img src="/o/CSIRTTema/images/svg/icon-link.svg" alt="link"> 
146																		</a> 
147															</div> 
148														</#if> 
149												</#if> 
150											</#list> 
151										 <#recover> 
152									</#attempt> 
153                </div> 
154            </div> 
155        </main> 
156 
157				<#break> 
158</#if> 
159	</#list> 
160</#if> 
161</#if>