Rendimenti e quotazioni
Utile per te
null Aberdeen Standard SICAV I -China A Share Equity Fund
Si è verificato un errore nell'elaborarazione del modello.
The following has evaluated to null or missing:
==> assetCategoryPropertyLocalService.fetchCategoryProperty(catId, "chiave")  [in template "10154#10194#TEMPLATE_RENDIMENTI_E_QUOTAZIONI" at line 1183, column 47]

----
Tip: If the failing expression is known to be 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 catKey = assetCategoryPropert...  [in template "10154#10194#TEMPLATE_RENDIMENTI_E_QUOTAZIONI" at line 1183, column 29]
----
1<#-- Questo web content deve poter utilizzare CSS e JS di Intesa_Vita-theme7 o di ISPVita-theme, a seconda di come e' configurata la pagina --> 
2 
3<link href="${themeDisplay.getPathThemeRoot()}/css/portlets/rendimentiequotazioni/dettaglio/jquery.jqplot.min.css" rel="stylesheet" /> 
4<link href="${themeDisplay.getPathThemeRoot()}/css/portlets/rendimentiequotazioni/jquery-ui.css" rel="stylesheet" /> 
5<link href="${themeDisplay.getPathThemeRoot()}/css/portlets/rendimentiequotazioni/dettaglio/rendimentoDettaglioValore.css" rel="stylesheet" /> 
6 
7<#if (impostaDataDefault?has_content && getterUtil.getBoolean(impostaDataDefault.getData()))> 
8    <#assign data_inizio_default_grafico_Data = getterUtil.getBoolean(impostaDataDefault.data_inizio_default_grafico.getData())> 
9<#else> 
10    <#assign data_inizio_default_grafico_Data = 0> 
11</#if> 
12 
13 
14 
15 
16<#assign _scopeThemplateNameSite = themeDisplay.getScopeGroup()> 
17<#assign groupId = themeDisplay.getScopeGroup().getGroupId()> 
18 
19<#if data_inizio_default_grafico_Data gt 0 > 
20    <#assign data_inizio_default_grafico_DateObj = dateUtil.newDate(data_inizio_default_grafico_Data)> 
21    <#assign dataDefaultVisualizzazione = dateUtil.getDate(data_inizio_default_grafico_DateObj, "yyyy/MM/dd", locale)> 
22    <div id="dataDefaultVisualizzazionediv" style="display:none;">${dataDefaultVisualizzazione}</div> 
23<#else> 
24    <div id="dataDefaultVisualizzazionediv" style="display:none;"></div> 
25</#if> 
26 
27<#assign logaritmica = false> 
28<#if Abilita_scala_logaritmica?has_content> 
29    <#assign logaritmica = getterUtil.getBoolean(Abilita_scala_logaritmica.getData())> 
30</#if> 
31 
32<#if groupLocalService.getGroup(groupId).getName()?contains("areapubblica (Staging)") || groupLocalService.getGroup(groupId).getName()?contains("areapubblica")> 
33 
34    <#if Fondo_In_valuta?? && getterUtil.getBoolean(Fondo_In_valuta.getData())>  <#-- Se Fondo_In_valuta = true --> 
35	    <#-- INIZIO GS IN VALUTA --> 
36	    <#assign localeIT = localeUtil.fromLanguageId("it")> 
37        <#assign currentGroup = groupLocalService.getGroup(groupId)> 
38        <#assign checkDisplayDate = !currentGroup.isStagingGroup()> 
39        <#assign user = "">	 
40    	<#if request?has_content && request.getRemoteUser()?has_content && request.getRemoteUser()!=""> 
41            <#assign user = userLocalService.getUserById(getterUtil.getLong(request.getRemoteUser()))> 
42        <#else> 
43            <#assign user = userLocalService.getDefaultUser(getterUtil.getLong(companyId))> 
44        </#if> 
45         
46        <#assign current_url = request.getAttribute("CURRENT_URL")> 
47        <#assign catIdStr = httpUtil.decodeURL(httpUtil.getParameter(current_url, "catId", false))> 
48        <#assign catId = getterUtil.getLong(catIdStr)> 
49        <!-- catIdStr - catId --> 
50    	<#assign subcatIdStr = httpUtil.decodeURL(httpUtil.getParameter(current_url, "subcatId", false))> 
51    	<#assign subcatId = getterUtil.getLong(subcatIdStr)> 
52    	<!-- subcatIdStr - subcatId --> 
53    	<#assign categoria = httpUtil.decodeURL(httpUtil.getParameter(current_url, "categoria", false))> 
54    	<!-- categoria --> 
55    	<#assign sottoCategoria = httpUtil.decodeURL(httpUtil.getParameter(current_url, "sottocategoria", false))> 
56    	<!-- $sottoCategoria --> 
57         
58         
59        <!-- Take layout id --> 
60	    <#assign currentLayoutId = themeDisplay.getPlid()> 
61	    <#assign currentLayout = layoutLocalService.getLayout(currentLayoutId)> 
62	     
63	    <!-- parent layoutId --> 
64    	<#assign currentLayoutParentPlid = currentLayout.getParentPlid()> 
65    	<#assign currentLayoutParent = layoutLocalService.getLayout(currentLayoutParentPlid)> 
66	     
67		 
68	    <#assign catKey = assetCategoryPropertyLocalService.fetchCategoryProperty(catId, "chiave").getValue()> 
69	    <#if validator.isNull(catKey)> 
70    		<#assign catKey = assetCategoryLocalService.getAssetCategory(catId).getName()> 
71    	</#if> 
72		 
73    	<#assign catColor = assetCategoryPropertyLocalService.fetchCategoryProperty(catId, "colore").getValue()> 
74    	 
75        <#assign isOICR = false> 
76    	<!-- pretitolo --> 
77	    <#if getterUtil.getBoolean(visualizza_label_gestione_separata_associata.getData()) || catKey?lower_case == "rivalutabili"> 
78	        <#assign pre_titolo_rendimento = "Gestione Separata"> 
79	    <#elseif categoria?lower_case == "index linked"> 
80	        <#assign pre_titolo_rendimento = "Indice"> 
81	    <#elseif categoria?lower_case == "oicr"> 
82	        <#assign pre_titolo_rendimento = "OICR"> 
83	        <#assign isOICR = true> 
84	    <#else> 
85	    	<#assign pre_titolo_rendimento = "Fondo"> 
86	    </#if> 
87         
88        <!-- valore dei fondi dal web content --> 
89    	<#assign valoreFondoUno =  confTool.getValoreFondoFromStr(valore_1.getData(), locale)> 
90    	 
91    	<#if getterUtil.getBoolean(Fondo_In_valuta.getData())>   
92    	    <!-- titolo --> 
93    	    <#assign titolo_rendimento = Titolo_rendimento.getData()> 
94    	     
95    		<#assign valutaFondoUno = valuta1.getData()> 
96    		<#assign ultimaDataCambio = dateUtil.getDate(confTool.getLatestTassoDiCambio().getDataCambio(), "dd/MM/yyyy", localeIT)> 
97    		 
98    	</#if> 
99    	 
100    	<!-- INIZIO PRIMO BLOCCO -->  
101 
102        <#assign titolo_gs_associata = label_gestione_separata_associata.getData()> 
103        <#assign titolo_da_visualizzare = titolo_rendimento> 
104         
105        <#if getterUtil.getBoolean(visualizza_label_gestione_separata_associata.getData()) && validator.isNotNull(titolo_gs_associata)> 
106        	<#if categoria?lower_case == "previdenza"> 
107            	<#assign titolo_da_visualizzare = titolo_gs_associata> 
108 	        </#if>                     
109        </#if> 
110        <div class="boxesDettaglio togliMargin"> 
111             <div> 
112                <div class="supTitle capitalize">${pre_titolo_rendimento}</div>   
113                <h1 class="titoloRendimento">${titolo_da_visualizzare}</h1>   
114            </div> 
115 
116            <!-- blocco valore corrente valore protetto --> 
117             
118            <script type="text/javascript"> 
119                 
120            var divisaSimboloMap = { 
121            'EUR': '&#8364;', 
122            'USD': '$', 
123            '':'', 
124            '%':'%' 
125            }; 
126             
127                jQuery(document).ready(function(){ 
128                    var listaValuta=jQuery(".titoloValuta"); 
129                    if (listaValuta!=null){ 
130                        for (var i=0;i<listaValuta.length;i++){ 
131                            if (listaValuta.get(i).innerHTML.indexOf(',')!=-1){ 
132                                var listaValuta_split = listaValuta.get(i).innerHTML.split(','); 
133                                var parteIntera = listaValuta_split[0]; 
134                                if(listaValuta_split[1].indexOf(" ")){ 
135                                    var listaValuta1_split = listaValuta_split[1].split(" "); 
136                                    var parteDecimale = listaValuta1_split[0]; 
137                                    var parteValuta = listaValuta1_split[1]; 
138                                }else{ 
139                                    var parteDecimale = listaValuta_split[1]; 
140                                    var parteValuta = ""; 
141
142                                  
143                                var parteValutaMap = (parteValuta!=""?" " + divisaSimboloMap[parteValuta]:""); 
144                                console.log(parteValutaMap + "-" + parteValuta ); 
145                                                                var html = parteIntera + ",<span class='decimali'>" + parteDecimale + "</span>" + (parteValutaMap!=" undefined"? parteValutaMap:parteValuta); 
146                                listaValuta.get(i).innerHTML = html; 
147                            }else{ 
148                            console.log(listaValuta.get(i).innerHTML); 
149                                if(listaValuta.get(i).innerHTML.indexOf(" ")!=-1){ 
150                                var listaValuta_split = listaValuta.get(i).innerHTML.split(" "); 
151                                var parteIntera = listaValuta_split[0]; 
152                                var parteValuta = listaValuta_split[1]; 
153                                    var parteValutaMap = (parteValuta!=""?" " + divisaSimboloMap[parteValuta]:""); 
154                                    console.log(parteValutaMap + "-" + parteValuta ); 
155                                var html = parteIntera + " " + (parteValutaMap!=" undefined"? parteValutaMap:parteValuta); 
156                                        listaValuta.get(i).innerHTML = html; 
157
158
159
160
161                }); 
162            </script> 
163 
164            <!-- blocco a singola colonna --> 
165            <div class="bloccoValori" > 
166                <h4 class="titoloValori">${Label_valore_corrente.getData()}</h4> 
167                <div class="bloccoValuta"> 
168                    <h3 class="titoloValuta">${valoreFondoUno} ${valutaFondoUno}</h3> 
169                    <h6 class="dataValuta">Aggiornato al ${ultimaDataCambio}</h6> 
170                </div> 
171            </div> 
172           
173        </div> 
174        <!-- FINE PRIMO BLOCCO --> 
175         
176        <div class="template_rendimenti_e_quotazioni"> 
177            <!-- INIZIO BLOCCO (GRAFICO STORICO) --> 
178            <div class="boxesDettaglio storicGraph"> 
179                <#assign _listaTassiDiCambio = confTool.getTassoDiCambio()> 
180                <div class="reset"> 
181                    <h5 class="titolo"> 
182                        Andamento del tasso di cambio Euro/Dollari rilevato alle 14:00 ora italiana. <small class="">Dati aggiornati al ${ultimaDataCambio}.</small> 
183                    </h5> 
184                    <#if _listaTassiDiCambio?size gt 0> 
185                        <div class="graficoRendimento" > 
186                            <div id="chartdiv"></div> 
187                        </div> 
188                        <div class="datePickers reset"> 
189                            <p class="inizio"> 
190                                <input type="text" class="datePicker" id="datepickerDa" value="" /> 
191                            </p> 
192                            <p class="fine"> 
193                                <input type="text" class="datePicker" id="datepickerA" value="" /> 
194                            </p> 
195                        </div> 
196                        <p class="reset">Visualizzazione andamento dal <span id="andamentoDa"></span> al <span id="andamentoA"></span></p> 
197                        <p class="reset" style="font-style:italic"> 
198                        	Attenzione: i valori passati non sono indicativi di quelli futuri. 
199                        </p> 
200                    </#if> 
201                </div> 
202            </div> 
203            <!-- FINE BLOCCO GRAFICO --> 
204             
205            <!-- BLOCCO PROSPETTO --> 
206    	    <#if !( 
207    	    !Colonna_prospetto.getSiblings()?has_content ||  
208    	    (Colonna_prospetto.getSiblings()?size==1 && Colonna_prospetto.getSiblings()[0].getData()=='' && 
209    	    (!Colonna_prospetto.getSiblings()[0].Allegato_prospetto.getSiblings()?has_content ||  
210    	    (Colonna_prospetto.getSiblings()[0].Allegato_prospetto.getSiblings()?size==1 && Colonna_prospetto.getSiblings()[0].Allegato_prospetto.getSiblings()[0].getData()=='') 
211    	    )))>  
212    	        <div class="boxesDettaglio togliMargin"> 
213    	            <div class="reset">  
214    	                <h5 class="titolo prospetto">${label_prospetto.getData()}</h5> 
215    	                <p class="">${descrizione_prospetto.getData()}</p> 
216    	            </div> 
217    	 
218    	            <#if $Colonna_prospetto.getSiblings()?has_content> 
219    	            <div class="table"> 
220    	             
221    	                <div class="row theader"> 
222    	                    <div class="cell"> 
223    	                        <!-- prima colonnavuota --> 
224    	                    </div> 
225    	                     
226    	                    <#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto> 
227    	                        <div class="cell"> 
228    	                                ${cur_Colonna_prospetto.getData()} 
229    	                        </div> 
230    	                    </#list> 
231    	                     
232    	                </div> 
233    	 
234    	                <#if Tipo_generazione_righe_prospetto.getData()=="dinamico"> 
235    	  
236    	                    <#if $Nome_Riga_Prospetto.getSiblings()?has_content> 
237    	                        <#assign contatore_righe = 0> 
238    	                        <#list Nome_Riga_Prospetto.getSiblings() as cur_Nome_Riga_Prospetto> 
239    	  
240    	                            <div class="row"> 
241    	                                <div class="cell"> 
242    	                                    <div class="">${cur_Nome_Riga_Prospetto.getData()}</div> 
243    	                                </div> 
244    	  
245    	                                <#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto1> 
246    	                                    <div class="cell"> 
247    	                                        <#assign contatore_allegati = 0> 
248    	                                        <#assign allegatoUrl = ''> 
249    	 
250    	                                        <#list cur_Colonna_prospetto1.Allegato_prospetto.getSiblings() as allegato>	 
251    	                                            <#if contatore_allegati == contatore_righe> 
252    	                                                <#assign allegatoUrl = allegato.getData()> 
253    	                                            </#if> 
254    	                                            <#assign contatore_allegati = contatore_allegati + 1> 
255    	                                        </#list>	                                 
256    									 
257    											<#assign dlFileVersion = ''> 
258    											<#if validator.isNotNull(allegatoUrl)> 
259    												<#assign dlFileVersion = confTool.getLatestDLFileVersion(allegatoUrl, checkDisplayDate)> 
260    											</#if> 
261    											<#if validator.isNotNull(dlFileVersion)> 
262    		                                       	<a class="icona icon-file" href="${allegatoUrl}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
263    		                                    <#else>    
264    		                                    	<div>&mdash;</div> 
265    	                                        </#if> 
266    	                                    </div> 
267    	                                </#list>                         
268    	                            </div> 
269    	 
270    	                            <#assign contatore_righe = contatore_righe + 1> 
271    	                        </#list> 
272    	                     
273    	                    </div> 
274    	  
275    	                    </#if> 
276    	  
277    	                </#if> 
278    	            </#if> 
279    	 
280    	 
281    	            <#if Tipo_generazione_righe_prospetto.getData()=="quadrimestrali">  
282    	                <div class="row"> 
283    	                    <div class="cell"> 
284    	                        <div class="">Composizione al 31/03</div> 
285    	                    </div> 
286    	                     
287    	                    <#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto1> 
288		                        <div class="cell"> 
289		                            <#assign contatore_allegati = 0> 
290		                            <#assign allegatoUrl = ''> 
291		                            <#list cur_Colonna_prospetto1.Allegato_prospetto.getSiblings() as allegato> 
292		                                <#if contatore_allegati == 0> 
293		                                    <#assign allegatoUrl = allegato.getData()> 
294		                                </#if> 
295		                                <#assign contatore_allegati = contatore_allegati + 1> 
296		                            </#list> 
297		                             
298		                            <#assign dlFileVersion = ''> 
299									<#if validator.isNotNull(allegatoUrl)> 
300										<#assign dlFileVersion = confTool.getLatestDLFileVersion(allegatoUrl, checkDisplayDate)> 
301									</#if> 
302									<#if validator.isNotNull(dlFileVersion)> 
303			                            <a class="icona icon-file" href="${allegatoUrl}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
304		                            <#else>    
305		                                <div>&mdash;</div> 
306		                            </#if> 
307		                        </div> 
308		                    </#list> 
309    	                     
310    	                </div> 
311    	                 
312    	                 
313    	                <div class="row"> 
314    	                    <div class="cell"> 
315    	                        <div class="">Composizione al 30/06</div> 
316    	                    </div> 
317    	                     
318    	                    <#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto2> 
319		                        <div class="cell"> 
320		                            <#assign contatore_allegati = 0> 
321		                            <#assign allegatoUrl = ''> 
322		                            <#list cur_Colonna_prospetto2.Allegato_prospetto.getSiblings() as allegato> 
323		                                <#if contatore_allegati == 1> 
324		                                    <#assign allegatoUrl = allegato.getData()> 
325		                                </#if> 
326		                                <#assign contatore_allegati = contatore_allegati + 1> 
327		                            </#list> 
328		                             
329		                            <#assign dlFileVersion = ''> 
330									<#if validator.isNotNull(allegatoUrl)> 
331										<#assign dlFileVersion = confTool.getLatestDLFileVersion(allegatoUrl, checkDisplayDate)> 
332									</#if> 
333									<#if validator.isNotNull(dlFileVersion)> 
334			                            <a class="icona icon-file" href="${allegatoUrl}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
335		                            <#else>    
336		                                <div>&mdash;</div> 
337		                            </#if> 
338		                        </div> 
339		                    </#list> 
340    	                     
341    	                </div> 
342    	                 
343    	                 
344    	                <div class="row"> 
345    	                    <div class="cell"> 
346    	                        <div class="">Composizione al 30/09</div> 
347    	                    </div> 
348    	                     
349    	                    <#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto3> 
350		                        <div class="cell"> 
351		                            <#assign contatore_allegati = 0> 
352		                            <#assign allegatoUrl = ''> 
353		                            <#list cur_Colonna_prospetto3.Allegato_prospetto.getSiblings() as allegato> 
354		                                <#if contatore_allegati == 2> 
355		                                    <#assign allegatoUrl = allegato.getData()> 
356		                                </#if> 
357		                                <#assign contatore_allegati = contatore_allegati + 1> 
358		                            </#list> 
359		                             
360		                            <#assign dlFileVersion = ''> 
361									<#if validator.isNotNull(allegatoUrl)> 
362										<#assign dlFileVersion = confTool.getLatestDLFileVersion(allegatoUrl, checkDisplayDate)> 
363									</#if> 
364									<#if validator.isNotNull(dlFileVersion)> 
365			                            <a class="icona icon-file" href="${allegatoUrl}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
366		                            <#else>    
367		                                <div>&mdash;</div> 
368		                            </#if> 
369		                        </div> 
370		                    </#list> 
371    	                     
372    	                </div> 
373    	                 
374    	                <div class="row"> 
375    	                    <div class="cell"> 
376    	                        <div class="">Composizione al 31/12</div> 
377    	                    </div> 
378    	                     
379    	                    <#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto4> 
380		                        <div class="cell"> 
381		                            <#assign contatore_allegati = 0> 
382		                            <#assign allegatoUrl = ''> 
383		                            <#list cur_Colonna_prospetto4.Allegato_prospetto.getSiblings() as allegato> 
384		                                <#if contatore_allegati == 3> 
385		                                    <#assign allegatoUrl = allegato.getData()> 
386		                                </#if> 
387		                                <#assign contatore_allegati = contatore_allegati + 1> 
388		                            </#list> 
389		                             
390		                            <#assign dlFileVersion = ''> 
391									<#if validator.isNotNull(allegatoUrl)> 
392										<#assign dlFileVersion = confTool.getLatestDLFileVersion(allegatoUrl, checkDisplayDate)> 
393									</#if> 
394									<#if validator.isNotNull(dlFileVersion)> 
395			                            <a class="icona icon-file" href="${allegatoUrl}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
396		                            <#else>    
397		                                <div>&mdash;</div> 
398		                            </#if> 
399		                        </div> 
400		                    </#list> 
401    	                     
402    	                </div> 
403    	            </#if> 
404    	             
405    	            ##</div> 
406    	        </div> 
407    	    </#if> 
408             
409            <!-- INIZIO BLOCCO SMARTPHONE PROSPETTO --> 
410    	    <#if !( 
411    	    !Colonna_prospetto.getSiblings()?has_content ||  
412    	    (Colonna_prospetto.getSiblings()?size==1 && Colonna_prospetto.getSiblings()[0].getData()=='' && 
413    	    (!Colonna_prospetto.getSiblings()[0].Allegato_prospetto.getSiblings()?has_content ||  
414    	    (Colonna_prospetto.getSiblings()[0].Allegato_prospetto.getSiblings()?size==1 && Colonna_prospetto.getSiblings()[0].Allegato_prospetto.getSiblings()[0].getData()=='') 
415    	    )))>  
416    			<div class="table_smart secondaTab prospetto"> 
417    				<table> 
418    					<tbody>                                
419    						 
420    						<#assign tipo_colonne_prospetto = Tipo_generazione_righe_prospetto.getData() > <!-- in realta per gli smart le righe sono colonne --> 
421    						<#if tipo_colonne_prospetto == "dinamico">  
422    	 
423    							<tr class="intestazione_smart"> 
424    								<td colspan="1">Anno</td>    
425    								<#list Nome_Riga_Prospetto.getSiblings() as cur_Nome_Col_Prospetto> 
426    									<td colspan="1">${cur_Nome_Col_Prospetto.getData()}</td> 
427    								</#list> 
428    							</tr> 
429    	 
430    							<#if Colonna_prospetto.getSiblings()?has_content> 
431    								<#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto>                             
432    									<#assign velocityCount = cur_Colonna_prospetto?index/> 
433    									<#if velocityCount % 2 == 0> 
434    										<tr class="pari"> 
435    									<#elseif velocityCount % 2 == 1> 
436    										<tr class="dispari"> 
437    									</#if> 
438    	 
439    											<td>${cur_Colonna_prospetto.getData()}</td> 
440    											<#list cur_Colonna_prospetto.Allegato_prospetto.getSiblings() as allegato>    
441    												<#assign allegatoUrl = ''>   
442    												<td>                                        
443    													<#assign allegatoUrl = allegato.getData()>  
444    													<#assign dlFileVersion = ''> 
445    													<#if validator.isNotNull(allegatoUrl)> 
446    														<#assign dlFileVersion = confTool.getLatestDLFileVersion(allegatoUrl, checkDisplayDate)> 
447    													</#if> 
448    													<#if validator.isNotNull(dlFileVersion)> 
449    														<a class="icona icon-file" href="${allegatoUrl}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
450    													<#else>   
451    														<div>&mdash;</div> 
452    													</#if> 
453    												</td> 
454    											</#list> 
455    										</tr> 
456    								</#list>                    
457    							</#if> 
458    	 
459    						<#elseif tipo_colonne_prospetto == "quadrimestrali"> 
460    	 
461    							<tr class="intestazione_smart"> 
462    								<td colspan="1">Anno</td>    
463    								<td colspan="1">31Mar</td> 
464    								<td colspan="1">30Giu</td> 
465    								<td colspan="1">30Set</td> 
466    								<td colspan="1">31Dic</td> 
467    							</tr> 
468    	 
469    							<#if Colonna_prospetto.getSiblings()?has_content> 
470    	 
471    								<#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto>                             
472    									<#assign velocityCount = cur_Colonna_prospetto?index/> 
473    									<#if velocityCount % 2 == 0> 
474    										<tr class="pari"> 
475    									<#elseif velocityCount % 2 == 1> 
476    										<tr class="dispari"> 
477    									</#if> 
478    	 
479    											<td>${cur_Colonna_prospetto.getData()}</td> 
480    										  
481    											<#assign contatore_allegati = 0>                                         
482    											<#list cur_Colonna_prospetto.Allegato_prospetto.getSiblings() as allegato> 
483    												<#assign allegatoUrl = ''> 
484    												 <td>    
485    													<#assign allegatoUrl = allegato.getData()> 
486    													<#assign dlFileVersion = ''> 
487    													<#if validator.isNotNull(allegatoUrl)> 
488    														<#assign dlFileVersion = confTool.getLatestDLFileVersion(allegatoUrl, checkDisplayDate)> 
489    													</#if> 
490    													<#if validator.isNotNull(dlFileVersion)>                                            
491    														<a class="icona icon-file" href="${allegatoUrl}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
492    													<#else>    
493    														<div>&mdash;</div> 
494    													</#if> 
495    												</td> 
496    											</#list>                                     
497    										</tr> 
498    								</#list>                    
499    							</#if> 
500    						</#if> 
501    					</tbody> 
502    				</table> 
503    			</div> 
504    		</#if> 
505    	    <!-- FINE BLOCCO SMARTPHONE PROSPETTO --> 
506 
507        </div> 
508        <!-- FINE SECONDO BLOCCO -->  
509            	 
510        <!-- BLOCCO (DOWNLOADS BOXES) --> 
511         
512        <#if !( Download_box_label?? && Download_box_label.getData()?has_content && 
513            !Download_box_label.getSiblings()?has_content ||  
514            (Download_box_label.getSiblings()?size==1 &&  
515            (!Download_box_label.getSiblings()[0].getData()?has_content || Download_box_label.getSiblings()[0].getData()=='') && 
516            (!Download_box_label.getSiblings()[0].Nome_allegato.getSiblings()?has_content || 
517            (Download_box_label.getSiblings()[0].Nome_allegato.getSiblings()?size==1 && 
518            (!Download_box_label.getSiblings()[0].Nome_allegato.getSiblings().getData()?has_content || Download_box_label.getSiblings()[0].Nome_allegato.getSiblings()[0].getData()=='') 
519            ))))>            
520             
521            <#list Download_box_label.getSiblings() as cur_Download_box_label>	                 
522                <div class="boxesDettaglio togliMargin"> 
523                    <div class="reset download"> 
524    					<#if getterUtil.getBoolean(cur_Download_box_label.conteggio_file.getData())> 
525    						<#assign file_number = cur_Download_box_label.Nome_allegato.getSiblings()?size> 
526    						<h5 class="titolo">${cur_Download_box_label.getData()} ( ${file_number} file )</h5> 
527    					<#else> 
528    						<h5 class="titolo download">${cur_Download_box_label.getData()}</h5> 
529    					</#if> 
530    					<#if cur_Download_box_label.Nome_allegato.getSiblings()?has_content> 
531    						<div class="archivi"> 
532    							<#list cur_Download_box_label.Nome_allegato.getSiblings() as cur_Download_box> 
533    							 
534    								<#assign fileEntryPath = cur_Download_box.Allegato_url.getData()> 
535     
536    								<#assign dlFileVersion = ''>					 
537    								<#if validator.isNotNull(fileEntryPath)> 
538    									<#assign dlFileVersion = confTool.getLatestDLFileVersion(fileEntryPath, checkDisplayDate)> 
539    								</#if> 
540    								<#if validator.isNotNull(dlFileVersion)> 
541    									<#if cur_Download_box.tipo_allegato.getData()=="excel"> 
542    										<a href="${fileEntryPath}?version=${dlFileVersion.getVersion()}" target="_blank"> 
543    											<h6> 
544    												<span class="icona icon-copy"></span> 
545    									<#else> 
546    										<a href="${fileEntryPath}?version=${dlFileVersion.getVersion()}" target="_blank"> 
547    											<h6> 
548    												<span class="icona icon-file"></span>                      
549    									</#if> 
550    												<div>${cur_Download_box.getData()}</div> 
551    											</h6> 
552    										</a> 
553    								</#if> 
554    							</#list> 
555    						</div> 
556    					</#if> 
557                    </div> 
558                </div> 
559            </#list> 
560    	</#if> 
561         
562    	<!-- FINE BLOCCO (DOWNLOADS BOXES) --> 
563         
564        <script type="text/javascript"> 
565        	jQuery(document).ready(function(){ 
566        	 
567        	        /* Nasconde, se presente lo span che contiene la pagina di dettaglio */ 
568        	        if(jQuery(".breadcrumbs .elementi span").length) { 
569        	            jQuery(".breadcrumbs .elementi span").hide();    
570
571        	         
572        	        if(jQuery("html").is(".smartphone")) 
573
574        	            convertTableToDivs(); 
575        	            swipeProspetto(); 
576        	            jQuery(".boxesDettaglio.togliMargin .bloccoValori").first().before("<div class='carousel-menu'></div>"); 
577        	            jQuery(".boxesDettaglio.togliMargin .bloccoValori").first().before("<div class='carousel-items'></div>"); 
578        	            jQuery(".boxesDettaglio.togliMargin .bloccoValori").appendTo(".boxesDettaglio.togliMargin .carousel-items"); 
579        	             
580        	            jQuery(".boxesDettaglio.togliMargin .bloccoValori").wrap("<div class='carousel-item'></div>"); 
581        	             
582        	            var bullet=jQuery('<span class="carousel-menu-index">&bull;</span>'); 
583        	             
584        	            /* creo l'elenco delle slide */ 
585        	            jQuery(".boxesDettaglio.togliMargin .carousel-item").each(function(){ 
586        	            bullet.clone().appendTo(".boxesDettaglio.togliMargin .carousel-menu"); 
587        	            }); 
588        	             
589        	            var car = ISP.carousel('.boxesDettaglio.togliMargin .carousel-items', '.boxesDettaglio.togliMargin .carousel-menu'); 
590        	            
591        	            car.play(); 
592
593        	    }); 
594        	  
595        	function updateAndamentoLabel(){ 
596        	jQuery("#andamentoDa").html(jQuery("#datepickerDa").val()); 
597        	jQuery("#andamentoA").html(jQuery("#datepickerA").val()); 
598
599        	  
600        	    function applyGradientOnPlot(){ 
601        	    var canvasSeries = jQuery(".jqplot-series-canvas")[0]; 
602        	    var ctx = canvasSeries.getContext("2d"); 
603        	    var my_gradient=ctx.createLinearGradient(0,0,0,300); 
604        	    my_gradient.addColorStop(0, "rgba(251,168,129,0.6)"); 
605        	    my_gradient.addColorStop(1, "rgba(251,168,129,0.1)"); 
606        	    ctx.fillStyle = my_gradient; 
607        	    ctx.fill(); 
608
609        	     
610        	    function updateDatePickers(){ 
611        	    //Aggiorniamo i datepicker con i reali valori visualizzati dal grafico. Necessario per via del padding. 
612        	      		    
613        		   var dataInizialeDefault = jQuery("#dataDefaultVisualizzazionediv").text(); 
614        		   	    
615        		   if(dataInizialeDefault.length>0){ 
616        			var dataNuova = new Date (dataInizialeDefault); 
617        		 
618        			jQuery("#datepickerDa").datepicker("setDate", new Date(dataInizialeDefault)); 
619        		   }else{ 
620        		 	jQuery("#datepickerDa").datepicker("setDate", new Date(gestioneGrafico.plotter.axes.xaxis.min)); 
621
622        		    
623        		    
624        	      jQuery("#datepickerA").datepicker("setDate", new Date(gestioneGrafico.plotter.axes.xaxis.max)); 
625        	      jQuery('#datepickerDa').datepicker('option', 'minDate', new Date(gestioneGrafico.plotter.axes.xaxis.min)); 
626        	      jQuery('#datepickerDa').datepicker('option', 'maxDate', new Date(gestioneGrafico.plotter.axes.xaxis.max)); 
627        	      jQuery('#datepickerA').datepicker('option', 'minDate', new Date(gestioneGrafico.plotter.axes.xaxis.min)); 
628        	      jQuery('#datepickerA').datepicker('option', 'maxDate', new Date(gestioneGrafico.plotter.axes.xaxis.max)); 
629
630        	     
631        	    function aggiornaPerformance(dataIniziale, dataFinale){ 
632        	    var dati = window.gestioneGrafico.datiTraLeDate(dataIniziale, dataFinale); 
633        	    
634        	    var valoreIniziale = dati[0][1]; 
635        	    var valoreFinale = dati[dati.length - 1][1]; 
636        	    
637        	    var performance = ((valoreFinale - valoreIniziale) / valoreIniziale) * 100; 
638        	    if(!isNumber(performance)){ 
639        	    performance = 0; 
640
641        	    var performance_rounded = +performance.toFixed(2); 
642        	    
643        	    var performance_split = []; 
644        	    if(performance_rounded.toString().indexOf(".")>0){ 
645        	    performance_split = performance_rounded.toString().split("."); 
646        	    }else{ 
647        	    performance_split[0] = performance_rounded; 
648        	    performance_split[1] = 0; 
649
650        	    jQuery(".bloccoValori.performance .titoloValuta").html(performance_split[0] + (performance_split[1]!=0?",<span class='decimali'>" + performance_split[1] + "</span>":"") + " %"); 
651
652        	     
653        	    function postDrawProcessing(){ 
654        	        console.log("postDrawHooks!"); 
655        	        applyGradientOnPlot(); 
656        	          
657        	        var dataIniziale = new Date(gestioneGrafico.plotter.axes.xaxis.min); 
658        	        var dataFinale = new Date(gestioneGrafico.plotter.axes.xaxis.max); 
659        	          
660        			aggiornaPerformance(dataIniziale, dataFinale); 
661        	  
662        	        var dataInizialeStr = jQuery.datepicker.formatDate('dd/mm/yy', dataIniziale) 
663        	        var dataFinaleStr = jQuery.datepicker.formatDate('dd/mm/yy', dataFinale); 
664         
665        	        //aggiorno solo se diverso per evitare di far scattare onchange 
666        	        //if (dataInizialeStr!=jQuery("#datepickerDa").val()) { 
667        	        	console.log('aggiorno data iniziale da ' + jQuery("#datepickerDa").val() + ' a ' + dataInizialeStr); 
668        	        	jQuery("#datepickerDa").datepicker("setDate", dataIniziale); 
669        	        //} 
670        	        //if (dataFinaleStr!=jQuery("#datepickerA").val()) { 
671        	       		console.log('aggiorno data finale da ' + jQuery("#datepickerA").val() + ' a ' + dataFinaleStr); 
672        				jQuery("#datepickerA").datepicker("setDate", dataFinale); 
673        			//} 
674        	          
675        	        updateAndamentoLabel(); 
676
677        	      
678        	    function isNumber(n) { 
679        	      return !isNaN(parseFloat(n)) && isFinite(n); 
680
681        	     
682        	    jQuery(document).ready(function() { 
683        	    	 
684        	    	//window.primavolta = true; 
685        	    
686        	        jQuery.jsDate.regional['it-IT'] = { 
687        	            monthNames: ['Gennaio','Febbraio','Marzo','Aprile','Maggio','Giugno','Luglio','Agosto','Settembre','Ottobre','Novembre','Dicembre'], 
688        	            monthNamesShort: ['Gen','Feb','Mar','Apr','Mag','Giu','Lug','Ago','Set','Ott','Nov','Dic'], 
689        	            dayNames: ['Domenica','Lunedi','Martedi','Mercoledi','Giovedi','Venerdi','Sabato'], 
690        	            dayNamesShort: ['Dom','Lun','Mar','Mer','Gio','Ven','Sab'], 
691        	            formatString: '%d-%m-%Y %H:%M:%S' 
692        	        }; 
693        	        jQuery.jsDate.regional.getLocale(); 
694        	    
695        		Date.prototype.sameDay = function(d) { 
696        			 
697        					 
698        		return (this.getFullYear() === d.getFullYear() 
699        	    		&& this.getMonth() === d.getMonth() 
700        				&& this.getDate() === d.getDate()); 
701        		 
702
703        		 
704        	        //Spostato qui perché voglio essere sicuro che gestioneGrafico sia inizializzato quando viene chiamato in questa funzione. 
705        	        //window.gestioneGrafico garantisce che è una variabile globale! -RC 
706        	    window.gestioneGrafico = { 
707        	  
708        	        //Gestione del pad manuale perché quando si impostano un minimo e un massimo per gli assi il pad è ignorato. -RC 
709        	        pad: 1.1,  
710        			 
711        	           tuttiIdatiDelGrafico : function() {  
712        	                 
713        	               var tuttiIDati =[]; 
714        				    
715        				   <#assign _listaTassiDiCambio = confTool.getTassoDiCambio()> 
716        	                    
717        	               <#list _listaTassiDiCambio as tassoDicambio> 
718        	                   tuttiIDati.push([this.getADate('${tassoDicambio.getDataCambioString()}'),'${tassoDicambio.getBfixAsk()}']); 
719        	               </#list> 
720        	                
721        	                //ritorno una copia dell'array che contiene tutti i dati 
722        	               return tuttiIDati.slice(); 
723        	           }, 
724        	            
725        	           getADate: function (dataStr) 
726
727        	               //console.log("getADate dataStr" + dataStr); 
728        	               if (dataStr == null) 
729        	                   return; 
730        	                var partiData = dataStr.split("/"); 
731        	                var day = partiData[0]; 
732        	                var month = partiData[1] - 1; 
733        	                var year = partiData[2]; 
734        	                //console.log("year " + year + " month" + month + " day " + day) 
735        	                var aDate = new Date(year, month, day, 0, 0, 0, 0); 
736        	                return aDate; 
737        	           }, 
738        	            
739        	           datiTraLeDate : function (dataDa, dataA){ 
740        	               //console.log("datiTraLeDate dataDa " + dataDa + " dataA " + dataA); 
741        	                
742        	               var tuttiIdati = this.tuttiIdatiDelGrafico(); 
743        	               //cerco l'elemento minimo superiore a dataDa  
744        	               //cerco l'elemnto massimo inferiore a dataA 
745        	               //l'array di dati originali è gia ordinato per data 
746        	               var indiceDellaDataMinore = -1; 
747        	               var indiceDellaDataMaggiore = -1; 
748        	               var currDate; 
749        	               //cerco la prima data subito superiore a dataDa 
750        	               for (var i=0; i< tuttiIdati.length; i++) { 
751        	                  currDate = moment(tuttiIdati[i][0]).hours(0).minutes(0).seconds(0); 
752        	                  if((currDate.isAfter(dataDa)||(currDate.isSame(dataDa))) && (currDate.isBefore(dataA)||currDate.isSame(dataA))) { 
753        	                      indiceDellaDataMinore = i; 
754        	                     break; 
755
756        	               }   
757        	                //cerco la prima data subito inveriore  a dataA 
758        	               for (var i=tuttiIdati.length -1; i>=0; i--) { 
759        	                  currDate = moment(tuttiIdati[i][0]).hours(0).minutes(0).seconds(0); 
760        	                  if((currDate.isBefore(dataA)|| currDate.isSame(dataA)) && (currDate.isAfter(dataDa)||currDate.isSame(dataDa))) { 
761        	                      indiceDellaDataMaggiore = i; 
762        	                     break; 
763
764
765        	               //a questo punto ho gli indici delle date minore e maggiore, taglio l'array 
766        	               var nDiElementi  = indiceDellaDataMaggiore - indiceDellaDataMinore + 1; 
767        	               console.log("nDiElementi" + nDiElementi); 
768        	               var nuovoRange = tuttiIdati.splice(indiceDellaDataMinore,nDiElementi); 
769        	               //se 0 risultati creo un array con dati [[dataIniziale, 0], [dataFinale, 0]] 
770        	               if (nuovoRange.length == 0){ 
771        	                   console.log("ritorno un range vuoto"); 
772
773        	               
774        	               return nuovoRange; 
775        	           }, 
776        	           getAxisBounds: function(dati, pad, dataDa, dataA){ 
777        	            var _pad = (pad==null||typeof pad == 'undefined')?0:pad; 
778        	            var _dataDa = typeof dataDa == 'undefined'?null:dataDa; 
779        	            var _dataA = typeof dataA == 'undefined'?null:dataA; 
780        				 
781        	            
782        	            var minXVal = null; 
783        	            var maxXVal = null; 
784        	            //Vogliamo che Y parta da 0 o dal minimo valore minore di 0 
785        	            var minYVal = null; 
786        	            var maxYVal = null; 
787        	            
788        	            for(var i=0; i<dati.length; i++){ 
789        					var valY = parseFloat(dati[i][1]); 
790        					if(_dataDa==null&&(minXVal==null||dati[i][0]<minXVal)){ 
791        					minXVal = dati[i][0]; 
792
793        					if(_dataA==null&&(maxXVal==null||dati[i][0]>maxXVal)){ 
794        					maxXVal = dati[i][0]; 
795
796        					if(minYVal==null||valY<minYVal){ 
797        					minYVal = valY; 
798
799        					if(maxYVal==null||valY>maxYVal){ 
800        					maxYVal = valY; 
801
802
803        	            
804        	            if(dataDa!=null){ 
805        	            minXVal = dataDa; 
806
807        	            if(dataA!=null){ 
808        	            maxXVal = dataA; 
809
810        	            
811        	            var padX = 0; 
812        	            var padY = 0; 
813        	            if(dati.length>1){ 
814        	            padX = ((maxXVal - minXVal)*(pad-1))/2; 
815        	//             padY = minYVal>0?((maxYVal - 0)*(pad-1))/2:((maxYVal - minYVal)*(pad-1))/2; 
816        	            padY = ((maxYVal - minYVal)*(pad-1))/2; 
817        	            }else{ 
818        	            padX = 86401000; 
819        	            padY = maxYVal*(pad-1); 
820
821        	            
822        	            if(padY<0){ 
823        	            padY=-padY; 
824        	            }else if(padY==0){ 
825        	            padY=2; 
826
827        	            
828        	            var bounds = { 
829        	            minX: dati.length>1?new Date(minXVal.getTime()):new Date(minXVal.getTime()-padX), 
830        	            maxX: dati.length>1?new Date(maxXVal.getTime()):new Date(maxXVal.getTime()+2*padX), 
831        	//             minY: minYVal>0?0:minYVal-padY, 
832        	            minY: (minYVal-padY), 
833        	            maxY: maxYVal+padY 
834
835        	            
836        	            return bounds; 
837        	           }, 
838        	            zoomHandler: function() { 
839        	              var c = this.plugins.cursor; 
840        	              console.log(c); 
841        	            }, 
842        	            
843        	           plotter: null, 
844        			visualizzaGrafico : function (dati, dataDa, dataA){ 
845        				var seriesToPlot; 
846        				 
847        				try{ 
848        					if (typeof dataDa === 'undefined') dataDa = new Date(gestore.plotter.axes.xaxis.min); 
849        					if (typeof dataA === 'undefined') dataA = new Date(gestore.plotter.axes.xaxis.max); 
850        				}catch(e){ 
851        					//console.log(e); 
852
853        				var minDate = jQuery("#datepickerDa").datepicker('getDate'),//.datepicker('option', 'minDate'), 
854        					maxDate = jQuery("#datepickerA").datepicker('getDate'),//.datepicker('option', 'maxDate'), 
855        					datiFondo = window.gestioneGrafico.tuttiIdatiDelGrafico().slice(); 
856        				datiFondo.sort(function(a,b){ 
857        						return a[0] - b[0]; 
858        					}); 
859        				 
860        				var minFondo = null;	 
861         
862        				for (var i = 0; i < datiFondo.length; i++){						 
863        					if (!isNaN(datiFondo[i][0])){ 
864        						datiFondo[i][0] = new Date(datiFondo[i][0]); 
865
866
867        				 
868        				for (var i = 0; i < datiFondo.length; i++){						 
869        					if (datiFondo[i][0].sameDay(minDate)){ 
870        						minFondo = datiFondo[i]; 
871        						break; 
872
873
874        				for (var i = 0; i < datiFondo.length; i++){						 
875        					if (datiFondo[i][0] >= minDate){ 
876        						minFondo = datiFondo[i]; 
877        						break; 
878
879
880        				if (minFondo == null) minFondo = datiFondo[0]; 
881        				 
882        				var maxFondo = null; 
883        				 
884        				for (var i = 0; i < datiFondo.length; i++){						 
885        					if (datiFondo[i][0].sameDay(maxDate)){ 
886        						maxFondo = datiFondo[i]; 
887        						break; 
888
889
890        				 
891        				if(maxFondo == null){ 
892        					for (var i = 0; i < datiFondo.length; i++){						 
893        						if (datiFondo[i][0] > maxDate){ 
894        							maxFondo = datiFondo[i]; 
895        							break; 
896
897
898
899        				var datiFiltrati=[]; 
900        				for(var i = 0; i < dati.length; i++){ 
901        					if (window.gestioneGrafico.checkData(dati[i][0], minFondo[0], maxFondo[0], datiFondo)){ 
902        						datiFiltrati.push(dati[i]); 
903
904
905        				seriesToPlot = [datiFiltrati]; 
906        				 
907        				var singlePoint = dati.length==1; 
908        	                var bounds = this.getAxisBounds(dati, this.pad, dataDa, dataA); 
909							var logaritmica = logaritmica; 
910        	                console.log("Axis Bounds: " + bounds); 
911        	                   if(this.plotter != null) 
912        	                       this.plotter.destroy(); 
913        	                   if(singlePoint){ 
914        	                    dati.push(dati[0]); 
915
916        	                   this.plotter = jQuery.jqplot('chartdiv',  seriesToPlot,  
917        	                       {  
918        	                           title:{ 
919        	                               text: '', 
920        	                               show: false 
921        	                           }, 
922        	                           axesDefaults: { 
923        	                           }, 
924        	                           cursor:{ 
925        	                                 show: false, 
926        	                                 showTooltip: false, 
927        	                                 zoom: false, 
928        	                                 constrainZoomTo: 'x' 
929        	                               }, 
930        	                           seriesDefaults: { 
931        	                                
932        	                                color: '#fba881',      // CSS color spec to use for the line.  Determined automatically. 
933        	                                showMarker: singlePoint,   // render the data point markers or not. 
934        	                                fill: true,        // fill under the line, 
935        	                                fillAndStroke: singlePoint,       // *stroke a line at top of fill area. 
936        	                                fillColor: '#fba881', 
937        	                                fillAlpha: 0.001,      // *custom alpha to apply to fillColor. 
938        	                                shadow: false   // show shadow or not. 
939        	                                 
940        	                            }, 
941        	                           axes:{ 
942        	                               xaxis:  { 
943        	                                   renderer:jQuery.jqplot.DateAxisRenderer, 
944        	                                   min: bounds.minX, 
945        	                                   max: bounds.maxX, 
946        	                                   //min:minimo, 
947        	                                   //max:maximo, 
948        	                                   tickOptions: {formatString: '%d/%m/%Y'} 
949        	                               }, 
950        	                               yaxis: { 
951        								    renderer:logaritmica==true?jQuery.jqplot.LogAxisRenderer:jQuery.jqplot.LinearAxisRenderer, 
952        	                                min: bounds.minY, 
953        	                                max: bounds.maxY, 
954        	                                tickOptions: {formatString: '%#.3f' +" "+ divisaSimboloMap['EUR'] } 
955
956        	                           }, 
957        	                           series:[{ 
958        	                               lineWidth:2,  
959        	                               markerOptions: 
960
961        	                                    style:'circle' 
962
963        	                                },{ 
964        	                                lineWidth: 1,  
965        	                                markerOptions: 
966
967        	                                    style:'circle' 
968        	                                   }, 
969            	                                color: '#0a4379',      // CSS color spec to use for the line.  Determined automatically. 
970        										linePattern: 'dashed', 
971        										lineWidth: 0.5, 
972            	                                showMarker: singlePoint,   // render the data point markers or not. 
973            	                                fill: false, 
974            	                                shadow: false, 
975            	                                rendererOptions: { 
976            	                                    smooth: true 
977
978        	                                }], 
979        	                            highlighter: { 
980        	                                   show: false, 
981        	                                   sizeAdjust: 7.5, 
982        									   formatString: "%s - %#.3f"  
983        	                                 }, 
984        	                                 grid: { 
985        	                                     drawGridLines: true,        // wether to draw lines across the grid or not. 
986        	                                     gridLineColor: '#f0f1f6',    // *Color of the grid lines. 
987        	                                     background: '#fff',      // CSS color spec for background color of grid. 
988        	                                     borderColor: '#f0f1f6',     // CSS color spec for border around grid. 
989        	                                     borderWidth: 1.0,           // pixel width of border around grid. 
990        	                                     shadow: false,               // draw a shadow for grid. 
991
992        	                       }); 
993        						    
994        						    
995        	               }, 
996         
997        		checkData: function(data, dStart, dEnd, datiFondo){ 
998        				   		var dStart = typeof dStart == 'undefined'?null:dStart; 
999        					    var dEnd = typeof dEnd == 'undefined'?null:dEnd;	            
1000        				   		 
1001        				   		if (dStart == null || dEnd == null){ 
1002        								for(var i=0; i<datiFondo.length; i++){ 
1003        								if(dStart == null || datiFondo[i][0] < dStart){ 
1004        									dStart = datiFondo[i][0]; 
1005
1006        								if(dEnd == null || datiFondo[i][0] > dEnd){ 
1007        									dEnd = datiFondo[i][0]; 
1008
1009
1010        			    	        }       		 
1011        					     if (data >= dStart && data <= dEnd){ 
1012        					    	return true; 
1013        					    }  
1014        				   		return false; 
1015
1016
1017        	        <#if getterUtil.getBoolean(Fondo_In_valuta.getData())> 
1018        				<#if _listaTassiDiCambio?size gt 0> 
1019        				 
1020        					jQuery.jqplot.sprintf.thousandsSeparator = ''; 
1021        					jQuery.jqplot.sprintf.decimalMark = ','; 
1022        					var gestore = gestioneGrafico; 
1023        					var datiDaVisualizzare = gestore.tuttiIdatiDelGrafico(); 
1024        					var bounds = gestioneGrafico.getAxisBounds(datiDaVisualizzare,this.pad); 
1025        					console.log('LIMITS'); 
1026        					console.log(bounds); 
1027        					// inizializzo i date picker con gli estremi delle date disponibili in base ai dati ricevuti 
1028        					jQuery("#datepickerDa").datepicker({ 
1029        						//showOtherMonths: false, 
1030        						//selectOtherMonths: false, 
1031        						changeMonth : true, 
1032        						changeYear : true, 
1033        						dateFormat : "dd/mm/yy", 
1034        						 
1035        						onSelect : function() { 
1036        							jQuery("#datepickerA").datepicker('option', { 
1037        								minDate : jQuery(this).datepicker('getDate') 
1038        							}); 
1039        							updateGraphDatesFromDatePickers(); 
1040        							//updateDatePickers(); 
1041        						}, 
1042        					}, jQuery.datepicker.regional['it']); 
1043        					jQuery("#datepickerDa").datepicker("setDate", bounds.minX); 
1044        				     
1045        					jQuery("#datepickerA").datepicker({ 
1046        						changeMonth : true, 
1047        						changeYear : true, 
1048        						dateFormat : "dd/mm/yy", 
1049        						defaultDate : bounds.maxX, 
1050        						minDate : bounds.minX, 
1051        						maxDate : bounds.maxX, 
1052        						onSelect : function() { 
1053        							jQuery("#datepickerDa").datepicker('option', { 
1054        								maxDate : jQuery(this).datepicker('getDate') 
1055        							}); 
1056        							updateGraphDatesFromDatePickers(); 
1057        						}, 
1058        						beforeShow : function(input, inst) { 
1059        							inst.dpDiv.css({marginLeft: -input.offsetWidth + 'px'}); 
1060
1061        					}, jQuery.datepicker.regional['it']); 
1062        					jQuery("#datepickerA").datepicker("setDate",bounds.maxX); 
1063        					function updateGraphDatesFromDatePickers() { 
1064        						var dataDaStr = jQuery("#datepickerDa").val(); 
1065        						var dataAStr = jQuery("#datepickerA").val(); 
1066        						console.log("date cambiate: da " + dataDaStr + " a " + dataAStr); 						 
1067        						var dataDa = gestore.getADate(dataDaStr); 
1068        						var dataA = gestore.getADate(dataAStr); 
1069        						// se la data è maggiore di data a non fare nulla 
1070        						if (dataDa >= dataA) 
1071        							return; 
1072         
1073        						gestore.plotter.axes.xaxis.min = dataDa; 
1074        						gestore.plotter.axes.xaxis.max = dataA; 
1075         
1076        						var interval = (dataA.getTime() - dataDa.getTime()) / 5; 
1077        						var ticks = []; 
1078        						var currTick = dataDa.getTime(); 
1079        						ticks.push(currTick); 
1080        						for (var i = 0; i < 5; i++) { 
1081        							currTick += interval; 
1082        							ticks.push(currTick); 
1083
1084         
1085        						gestore.plotter.axes.xaxis.ticks = ticks; 
1086        						//gestore.plotter.replot(); 
1087        						var datiDaVisualizzare = window.gestioneGrafico.tuttiIdatiDelGrafico(); 
1088        						window.gestioneGrafico.visualizzaGrafico(datiDaVisualizzare);	 
1089         
1090        						// Necessario per riabilitare zoom 
1091        						gestore.plotter.axes.xaxis.ticks = []; 
1092        					}; 
1093        	                if (Liferay.Browser.isIe() && Liferay.Browser.getVersion() < 9) 
1094
1095        						// carica script che emula il canvas poiché ie < 9 non lo supoporta 
1096        						var exCanvasScriptUrl = "${themeDisplay.getPathThemeRoot()}/js/portlet/rendimentiequotazioni/dettaglio/jqplot/excanvas/excanvas.min.js"; 
1097        						jQuery.getScript(exCanvasScriptUrl, function(data, textStatus, jqxhr) { 
1098        							gestore.visualizzaGrafico(datiDaVisualizzare); 
1099        							 
1100        							applyGradientOnPlot(); 
1101        							jQuery.jqplot.postDrawHooks.push(postDrawProcessing); 
1102        							updateAndamentoLabel(); 
1103        						}); 
1104
1105        					else 
1106
1107        						gestore.visualizzaGrafico(datiDaVisualizzare); 
1108        						applyGradientOnPlot(); 
1109        						jQuery.jqplot.postDrawHooks.push(postDrawProcessing); 
1110        						updateAndamentoLabel(); 
1111
1112        	                updateDatePickers(); 
1113        					updateGraphDatesFromDatePickers(); 
1114        					aggiornaPerformance(datiDaVisualizzare[0][0], datiDaVisualizzare[datiDaVisualizzare.length - 1][0]); 
1115        					jQuery( ".datePicker" ).change(updateGraphDatesFromDatePickers); 
1116							jQuery('#datepickerDa').click(function(){ 
1117								jQuery('#datepickerDa').datepicker('show'); 
1118							}); 
1119							jQuery('#datepickerA').focus(function(){ 
1120								jQuery('#datepickerA').datepicker('show'); 
1121							}); 
1122 
1123							jQuery('#datepickerA').click(function(){ 
1124								jQuery('#datepickerA').datepicker('show'); 
1125							}); 
1126        				</#if> 
1127        	        </#if> 
1128        	    }); 
1129        </script> 
1130         
1131        <!-- FINE GS IN VALUTA -->	 
1132     
1133    <#else>  <!-- Se Fondo_In_valuta = false --> 
1134		<div class="template_rendimenti_e_quotazioni"> 
1135		     
1136		    <link href="${themeDisplay.getPathThemeRoot()}/css/portlets/rendimentiequotazioni/dettaglio/jquery.jqplot.min.css" rel="stylesheet" /> 
1137			<link href="${themeDisplay.getPathThemeRoot()}/css/portlets/rendimentiequotazioni/jquery-ui.css" rel="stylesheet" /> 
1138			<link href="${themeDisplay.getPathThemeRoot()}/css/portlets/rendimentiequotazioni/dettaglio/rendimentoDettaglioValore.css" rel="stylesheet" /> 
1139		     
1140		     
1141		    <#assign localeIT = localeUtil.fromLanguageId('it')> 
1142					 
1143			<#assign currentGroup = groupLocalService.getGroup(groupId)> 
1144			 
1145			<#assign checkDisplayDate = !currentGroup.isStagingGroup()> 
1146			 
1147			<!-- assegnazione di una variabile con il tool custom, deployato sul portale --> 
1148			<!-- get user from request --> 
1149			 
1150			<#assign user = ""> 
1151			<#if request?has_content && request.getRemoteUser()?has_content && request.getRemoteUser()!=""> 
1152                <#assign user = userLocalService.getUserById(getterUtil.getLong(request.getRemoteUser()))> 
1153            <#else> 
1154                <#assign user = userLocalService.getDefaultUser(getterUtil.getLong(companyId))> 
1155            </#if> 
1156             
1157            <#assign current_url = request.getAttribute("CURRENT_URL")> 
1158			 
1159			<if getterUtil.getBoolean(request.getAttribute("isCustomFriendlyUrlFilter")) && request.getAttribute("originalFriendlyUrlFilterUrl")?if_exists> 
1160				<#assign current_url = request.getAttribute("originalFriendlyUrlFilterUrl")?if_exists > 
1161			</if> 
1162			 
1163			<#assign catIdStr = httpUtil.decodeURL(httpUtil.getParameter(current_url, "catId", false))> 
1164            <#assign catId = getterUtil.getLong(catIdStr)> 
1165             
1166			<#assign subcatIdStr = httpUtil.decodeURL(httpUtil.getParameter(current_url, "subcatId", false))> 
1167        	<#assign subcatId = getterUtil.getLong(subcatIdStr)> 
1168        	 
1169			<#assign categoria = httpUtil.decodeURL(httpUtil.getParameter(current_url, "categoria", false))> 
1170        	<#assign sottoCategoria = httpUtil.decodeURL(httpUtil.getParameter(current_url, "sottocategoria", false))> 
1171			 
1172			<!-- Take layout id --> 
1173    	    <#assign currentLayoutId = themeDisplay.getPlid()> 
1174    	    <#assign currentLayout = layoutLocalService.getLayout(currentLayoutId)> 
1175    	     
1176    	    <!-- parent layoutId --> 
1177        	<#assign currentLayoutParentPlid = currentLayout.getParentPlid()> 
1178        	<#if currentLayoutParentPlid != 0> 
1179				<#assign currentLayoutParent = layoutLocalService.getLayout(currentLayoutParentPlid)> 
1180			</#if> 
1181			 
1182			<#if catId != 0> 
1183			    <#assign catKey = assetCategoryPropertyLocalService.fetchCategoryProperty(catId, "chiave").getValue()> 
1184        	    <#if validator.isNull(catKey)> 
1185            		<#assign catKey = assetCategoryLocalService.getAssetCategory(catId).getName()> 
1186            	</#if> 
1187            	 
1188            	<#assign catColor = assetCategoryPropertyLocalService.fetchCategoryProperty(catId, "colore").getValue()> 
1189        	</#if> 
1190        	 
1191        	<#if !catKey??> 
1192        	    <#assign catKey = ""> 
1193        	</#if> 
1194        	 
1195            <#assign isOICR = false> 
1196            <!-- pretitolo --> 
1197    	    <#if (visualizza_label_gestione_separata_associata?has_content && getterUtil.getBoolean(visualizza_label_gestione_separata_associata.getData())) || catKey?lower_case == "rivalutabili"> 
1198    	        <#assign pre_titolo_rendimento = "Gestione Separata"> 
1199    	    <#elseif categoria?lower_case == "index linked"> 
1200    	        <#assign pre_titolo_rendimento = "Indice"> 
1201    	    <#elseif categoria?lower_case == "oicr"> 
1202    	        <#assign pre_titolo_rendimento = "OICR"> 
1203    	        <#assign isOICR = true> 
1204    	    <#else> 
1205    	    	<#assign pre_titolo_rendimento = "Fondo"> 
1206    	    </#if> 
1207    	     
1208    	    <!-- valore dei fondi dal web content -->    
1209			<#assign valoreFondoUno =  confTool.getValoreFondoFromStr(valore_1.getData(), locale)> 
1210			<#assign valoreFondoDue =  confTool.getValoreFondoFromStr(valore_2.getData(), locale)> 
1211		     
1212		    <#if getterUtil.getBoolean(usa_valori_da_fondo.getData())> 
1213		        <#assign usaFondo = true> 
1214					     
1215			    <!-- titolo --> 
1216			    <#assign titolo_rendimento = Titolo_rendimento.getData()> 
1217			     
1218			    <#if titolo_rendimento==""> 
1219			        <#assign titolo_rendimento = Titolo_rendimento.getData()> 
1220			    </#if> 
1221			     
1222			    <!-- valore e valuta dei fondi dal db --> 
1223			    <#if validator.isNotNull(valoreFondoUno)> 
1224    		        <#if validator.isNull(valoreFondoDue) || valoreFondoDue == "0">	 
1225    		            <#assign valoreFondoUno =  confTool.getValoreFondoUnoFromDbLocale(id_fondo.getData(), locale)> 
1226    		            <#assign valoreFondoDue = "">	 
1227    		        <#else> 
1228    		            <#assign valoreFondoUno =  confTool.getValoreFondoUnoFromDbLocale(id_fondo.getData(), locale)> 
1229    		            <#assign valoreFondoDue =  confTool.getValoreFondoDueFromDbLocale(id_fondo.getData(), locale)>	 
1230    		        </#if> 
1231    			<#else> 
1232    				 <#assign valoreFondoUno =  confTool.getValoreFondoUnoFromDbLocale(id_fondo.getData(),locale)> 
1233    		         <#assign valoreFondoDue =  confTool.getValoreFondoDueFromDbLocale(id_fondo.getData(),locale)>	 
1234    			</#if>  
1235			     
1236			    <#if valoreFondoDue=="0" || valoreFondoDue == "0,000"> 
1237			        <#assign valoreFondoDue = ""> 
1238			    </#if> 
1239			 
1240			    <#assign valutaFondoUno =  confTool.getValutaFondoUnoFromDb(id_fondo.getData())> 
1241			    <#assign valutaFondoDue =  confTool.getValutaFondoDueFromDb(id_fondo.getData())> 
1242			     
1243			    <!-- data aggiornamento valore --> 
1244			    <#assign dataAggiornamentoValore = confTool.getDataAggiornamentoFondoFromDb(id_fondo.getData(),'dd MMM yyyy',localeIT)> 
1245			     
1246			    <!-- rating --> 
1247			    <#assign ratings = confTool.getRatingsFromDb(id_fondo.getData())> 
1248			 
1249			<#else> 
1250                <#assign usaFondo = false>  
1251					             
1252			    <!-- titolo --> 
1253			    <#assign titolo_rendimento = Titolo_rendimento.getData()> 
1254			 
1255			    <!-- valuta dei fondi dal web content --> 
1256			    <#assign valutaFondoUno =  valuta1.getData()> 
1257			    <#assign valutaFondoDue =  valuta_2.getData()> 
1258			     
1259			    <!--  data aggiornamento valori --> 
1260				<#assign aggiornato_al_DateObj = dateUtil.parseDate("yyyy-MM-dd", getterUtil.getString(aggiornato_al.getData()), localeIT)> 
1261			    <#assign dataAggiornamentoValore = dateUtil.getDate(aggiornato_al_DateObj, "dd MMM yyyy", localeIT)> 
1262			     
1263			    <!-- rating --> 
1264			    <#assign ratings = Rating.getData()> 
1265			     
1266		    </#if> 
1267		     
1268		    <!-- PRIMO BLOCCO --> 
1269			<#assign breadCrumb = confTool.getBreadcrumb(themeDisplay.getLayout(),themeDisplay) > 
1270		    <div class="boxesDettaglio togliMargin"> 
1271		        <!-- briciole di pane --> 
1272				<div id="breadcrumbs" class="breadcrumbs"> 
1273				    <div class="elementi"> 
1274				         
1275				        <!-- Inizio creazione Breadcrumb --> 
1276						 
1277			        	<#assign titolo_gs_associata = label_gestione_separata_associata.getData()> 
1278				        <#assign titolo_da_visualizzare = titolo_rendimento> 
1279				         
1280				        <#if getterUtil.getBoolean(visualizza_label_gestione_separata_associata.getData()) && validator.isNotNull(titolo_gs_associata)> 
1281				        	<#if categoria?lower_case == "previdenza"> 
1282				            	<#assign titolo_da_visualizzare = titolo_gs_associata> 
1283				 	        </#if>                     
1284						</#if> 
1285						 
1286						<!-- get article's primaryKey --> 
1287		                <#assign article = journalArticleLocalService.getArticle(getterUtil.getLong(groupId), .vars['reserved-article-id'].data, getterUtil.getDouble(.vars['reserved-article-version'].data))> 
1288		                <#assign articlePrimKey = article.resourcePrimKey> 
1289		                <#assign resourcePrimKey = getterUtil.getLong(articlePrimKey)> 
1290		                <#assign categorie = confTool.getCategoriesByResourcePrimKey(resourcePrimKey)> 
1291		                <#assign categorieSize = categorie?size> 
1292						 
1293						<#list breadCrumb?keys as key>  
1294							<a href="${key?replace("../../", "/")}">${breadCrumb[key]}</a> 
1295						</#list> 
1296						<span>${themeDisplay.getLayout().getName()}</span> 
1297						 
1298						<#list categorie as cur_categoria> 
1299						    <#if currentLayoutParent?has_content && cur_categoria.getCategoryId() == catId> 
1300		                        <!--  --> 
1301		                        <a href="/web${currentLayoutParent.getGroup().getFriendlyURL()}${currentLayoutParent.getFriendlyURL()}?selectedCategoryId=${cur_categoria.getCategoryId()}">${cur_categoria.getName()}</a> 
1302		                    </#if>   
1303						</#list> 
1304						 
1305						<#list categorie as cur_categoria> 
1306						    <#if currentLayoutParent?has_content && cur_categoria.getCategoryId() == subcatId> 
1307		                        <!-- cur_categoria.getCategoryId() == catId --> 
1308		                        <a href="/web${currentLayoutParent.getGroup().getFriendlyURL()}${currentLayoutParent.getFriendlyURL()}?selectedCategoryId=${cur_categoria.getCategoryId()}">${cur_categoria.getName()}</a> 
1309		                    </#if>   
1310						</#list> 
1311						 
1312						${titolo_da_visualizzare} 
1313						 
1314						<!-- Fine creazione Breadcrumb --> 
1315						 
1316				    </div> 
1317		        </div> 
1318		        <div> 
1319		            <div class="supTitle capitalize">${pre_titolo_rendimento}</div> 
1320					<h1 class="titoloRendimento">${titolo_da_visualizzare}</h1> 
1321		             
1322		            <#if Notifica_alert?? && Notifica_alert.getData() != ""> 
1323								    	 
1324    			    	<div class="descrizioni notifica_alert">${Notifica_alert.getData()}</div> 
1325    			    	 
1326    			    	<#assign testoFascetta = confTool.getRendimentoParsed(article, themeDisplay.getLanguageId()).getTestoFascetta(article, themeDisplay.getLanguageId(), catId, subcatId)> 
1327    			    	<#if validator.isNotNull(testoFascetta)> 
1328    			    		<div class="fascetta_rendimento ${catColor}">${testoFascetta}</div> 
1329    			    	</#if> 
1330    			    	 
1331    			    </#if> 
1332		             
1333		            <#assign strippedHtmlDescrizione = confTool.stripHTML(Descrizione_rendimento_e_quotazione.getData())?trim> 
1334	                <#if validator.isNotNull(titolo_rendimento) && strippedHtmlDescrizione?lower_case != titolo_rendimento?trim?lower_case> 
1335	                    <div class="descrizioni">${Descrizione_rendimento_e_quotazione.getData()}</div> 
1336	                </#if> 
1337		             
1338		        </div> 
1339		         
1340		        <!-- blocco valore corrente valore protetto --> 
1341	            <!-- script da spostare in hook --> 
1342	            <script type="text/javascript"> 
1343	                 
1344	            var divisaSimboloMap = { 
1345	            'EUR': '&#8364;', 
1346	            'USD': '$', 
1347	            '':'', 
1348	            '%':'%' 
1349	            }; 
1350	             
1351	                jQuery(document).ready(function(){ 
1352	                    var listaValuta=jQuery(".titoloValuta"); 
1353	                    if (listaValuta!=null){ 
1354	                        for (var i=0;i<listaValuta.length;i++){ 
1355	                            if (listaValuta.get(i).innerHTML.indexOf(',')!=-1){ 
1356	                                //                                 var index=listaValuta.get(i).outerHTML.indexOf(','); 
1357	                                //                                 var html = listaValuta.get(i).outerHTML.substring(0,index+1) + "<span class='decimali'>" + listaValuta.get(i).outerHTML.substring(index+1,index+3) + "</span>" + listaValuta.get(i).outerHTML.substring(index+3,listaValuta.get(i).outerHTML.length); 
1358	                                //                                 listaValuta.get(i).outerHTML = html; 
1359	                                var listaValuta_split = listaValuta.get(i).innerHTML.split(','); 
1360	                                var parteIntera = listaValuta_split[0]; 
1361	                                if(listaValuta_split[1].indexOf(" ")){ 
1362	                                    var listaValuta1_split = listaValuta_split[1].split(" "); 
1363	                                    var parteDecimale = listaValuta1_split[0]; 
1364	                                    var parteValuta = listaValuta1_split[1]; 
1365	                                }else{ 
1366	                                    var parteDecimale = listaValuta_split[1]; 
1367	                                    var parteValuta = ""; 
1368
1369	                                  
1370	                                var parteValutaMap = (parteValuta!=""?" " + divisaSimboloMap[parteValuta]:""); 
1371	                                console.log(parteValutaMap + "-" + parteValuta ); 
1372	                                                                var html = parteIntera + ",<span class='decimali'>" + parteDecimale + "</span>" + (parteValutaMap!=" undefined"? parteValutaMap:parteValuta); 
1373	                                listaValuta.get(i).innerHTML = html; 
1374	                            }else{ 
1375	                            console.log(listaValuta.get(i).innerHTML); 
1376	                                if(listaValuta.get(i).innerHTML.indexOf(" ")!=-1){ 
1377	                                var listaValuta_split = listaValuta.get(i).innerHTML.split(" "); 
1378	                                var parteIntera = listaValuta_split[0]; 
1379	                                var parteValuta = listaValuta_split[1]; 
1380	                                    var parteValutaMap = (parteValuta!=""?" " + divisaSimboloMap[parteValuta]:""); 
1381	                                    console.log(parteValutaMap + "-" + parteValuta ); 
1382	                                var html = parteIntera + " " + (parteValutaMap!=" undefined"? parteValutaMap:parteValuta); 
1383	                                        listaValuta.get(i).innerHTML = html; 
1384
1385
1386
1387
1388	                }); 
1389	            </script> 
1390		         
1391		        <#if valoreFondoDue == "" > 
1392                    <!-- blocco a singola colonna 2--> 
1393                     
1394                    <div class="bloccoValori" > 
1395                        <h4 class="titoloValori">${Label_valore_corrente.getData()}</h4> 
1396                        <div class="bloccoValuta"> 
1397                            <h3 class="titoloValuta">${valoreFondoUno} ${valutaFondoUno}</h3> 
1398                            <h6 class="dataValuta">Aggiornato al ${dataAggiornamentoValore}</h6> 
1399                        </div> 
1400                    </div> 
1401                 
1402                <#else> 
1403                 
1404                    <!-- blocco a doppia colonna --> 
1405	                <div class="valoriDoppioWrapper"> 
1406		                <div class="bloccoValori doppio first" > 
1407		                    <h4 class="titoloValori">${Label_valore_corrente.getData()}</h4> 
1408		                    <div class="bloccoValuta"> 
1409		                        <h3 class="titoloValuta">${valoreFondoUno} ${valutaFondoUno}</h3> 
1410		                        <h6 class="dataValuta">Aggiornato al ${dataAggiornamentoValore}</h6> 
1411		                    </div> 
1412		                </div> 
1413		                <div class="bloccoValori doppio" > 
1414		                    <h4 class="titoloValori">${Label_valore_protetto.getData()} 
1415								<#if valore_1_min_garantito.getData()!=""> 
1416
1417								</#if> 
1418							</h4> 
1419		                    <div class="bloccoValuta"> 
1420		                        <h3 class="titoloValuta">${valoreFondoDue} ${valutaFondoDue}</h3> 
1421		                        <h6 class="dataValuta">Aggiornato al ${dataAggiornamentoValore}</h6> 
1422		                    </div> 
1423		                </div> 
1424	                </div> 
1425	                <#if validator.isNotNull(valore_1_min_garantito.getData())> 
1426		                <div class="caption"> 
1427							*&nbsp;${valore_1_min_garantito.getData()} 
1428						</div> 
1429					</#if> 
1430                </#if> 
1431		         
1432		        <div class="reset"> 
1433		         
1434		            <#if isOICR && validator.isNotNull(Societa_di_gestione.getData())> 
1435                		<#assign labelSocietaGestione = "Societ&agrave; di gestione"> 
1436                		<#if validator.isNotNull(Label_societa_di_gestione.getData())> 
1437                			<#assign labelSocietaGestione = Label_societa_di_gestione.getData()> 
1438                		</#if> 
1439                		<div class="gestione"> 
1440                			<h6 class="">${labelSocietaGestione}: <strong>&nbsp;${Societa_di_gestione.getData()}</strong></h6> 
1441                		</div>	                		 
1442                	</#if> 
1443                	 
1444                    <#if Istituto_emittente.getData() != ""> 
1445                        <h5 class="titolo">${Label_obbligazione_strutturata.getData()}</h5> 
1446                        <div class="istituto"> 
1447                            <h6 class="">${Label_istituto_emittente.getData()}: <strong>${Istituto_emittente.getData()}</strong></h6> 
1448                            <h6 class="">${Label_rating.getData()}: <strong>${Rating.getData()}</strong></h6> 
1449                        </div> 
1450                    </#if> 
1451     
1452    				<#assign Data_scadenza_to_show = ''> 
1453                    <#if validator.isNotNull(Data_scadenza.getData())> 
1454						<#assign Data_scadenza_DateObj = dateUtil.parseDate("yyyy-MM-dd", getterUtil.getString(Data_scadenza.getData()), localeIT)> 
1455    					<!-- 01/01/2100 --> 
1456    					<#if dateUtil.compareTo(Data_scadenza_DateObj,dateUtil.newDate(4102441200000)) lt 0 > 
1457    						<#assign Data_scadenza_to_show = 'Scadenza ' + dateUtil.getDate(Data_scadenza_DateObj, "dd/MM/yyyy", localeIT)> 
1458    					</#if> 
1459    				</#if> 
1460     
1461    				<#if validator.isNotNull(Data_scadenza_to_show)> 
1462    					<h6 class="scadenza nomobile"><strong>${Data_scadenza_to_show}</strong></h6> 
1463    				</#if> 
1464		        </div> 
1465		         
1466		        <!-- Da agganciare nel momento in cui caricano i contenuti derivati --> 
1467				<div class="reset"> 
1468                    <#if Istituto_emittente_derivata?? && Istituto_emittente_derivata.getData() != ""> 
1469	                    <h5 class="titolo">${Label_obbligazione_derivata.getData()}</h5> 
1470	                    <div class="istituto derivata"> 
1471	                        <h6 class="">${Label_istituto_emittente_derivata.getData()}:<strong>${Istituto_emittente_derivata.getData()}</strong></h6> 
1472	                        <h6 class="">${Label_rating_derivata.getData()}:<strong>${Rating_derivata.getData()}</strong></h6> 
1473	                    </div> 
1474                    </#if> 
1475                     
1476                    <#if validator.isNotNull(Data_scadenza_to_show)> 
1477                        <h6 class="scadenza onlymobile"><strong>$Data_scadenza_to_show</strong></h6> 
1478					</#if> 
1479 
1480                </div> 
1481		         
1482		    </div> 
1483		     
1484		    <!-- FINE PRIMO BLOCCO --> 
1485					 
1486					         
1487			<!-- SECONDO BLOCCO (GRAFICO STORICO) --> 
1488		     
1489			<#assign _listaRendimenti = []> 
1490		    <#assign hasBenchmark = false> 
1491            <#assign _benchmarkFondoMap = confTool.getBenchmarkFondo(id_fondo.id_benchmark_fondo.getData())> 
1492            <#if _benchmarkFondoMap?size gt 0> 
1493               <#assign hasBenchmark = true> 
1494            </#if> 
1495 
1496				<#if !(!usaFondo ||(usaFondo && (!id_fondo?? || id_fondo.getData()=='')))> 
1497                <div class="boxesDettaglio storicGraph"> 
1498                    <#assign _datiStorico = confTool.getDatiStorico(id_fondo.getData())> 
1499                    <#assign _listaRendimenti = _datiStorico.getValoriRendimenti()> 
1500					 
1501                    <div class="reset"> 
1502                        <#if getterUtil.getBoolean(hasBenchmark)> 
1503                            <style type="text/css"> 
1504    	            			.legendaBenchmark span.fondo::before{ 
1505    	            				color: #fba881; 
1506    	            				background-color: #fba881; 
1507
1508    	            			.legendaBenchmark span.benchmark::before{ 
1509    	            				color: #0a4379; 
1510    	            				background-color: #0a4379; 
1511
1512    	            			.legendaBenchmark span::before{ 
1513    	            				display: inline-block; 
1514    	            				height: 12px; 
1515    	            				width: 12px; 
1516    	            				border-radius: 12px; 
1517    	            				border: 1px solid #eee; 
1518    	            				content: " "; 
1519    	            				margin-right: 8px; 
1520    							    margin-bottom: -3px; 
1521
1522    	            		</style> 
1523    	            	     
1524    	            	    <div class="legendaBenchmark" style="float: right; border: 1px solid #eee; padding: 10px; margin-right: 9px;"> 
1525		            			<span class="fondo"><i></i>Andamento Fondo</span><br/></br> 
1526		            			<span class="benchmark"><i></i>Andamento Benchmark</span> 
1527		            		</div> 
1528    	            	     
1529                        </#if> 
1530                         
1531                        <h5 class="titolo"> 
1532		                    Andamento performance  
1533		                    <#if getterUtil.getBoolean(hasBenchmark)> 
1534		                    	fondo e benchmark <br/> 
1535		                    </#if> 
1536		                    <small class="">Dati aggiornati al ${confTool.getDataAggiornamentoFondoFromDb(id_fondo.getData(),'dd MMM yyyy',localeIT)}</small> 
1537		                </h5> 
1538		                <#if getterUtil.getBoolean(hasBenchmark)> 
1539		                	<div style="clear: right"></div> 
1540		                </#if> 
1541                         
1542                        <#if _listaRendimenti?size gt 0> 
1543                            <div class="graficoRendimento" > 
1544		                        <div id="chartdiv"></div> 
1545		                    </div> 
1546		                    <div class="datePickers reset"> 
1547		                        <p class="inizio"> 
1548		                            <input type="text" class="datePicker" id="datepickerDa" value="${_datiStorico.getDataInizialeString()}" /> 
1549		                        </p> 
1550		                        <p class="fine"> 
1551		                            <input type="text" class="datePicker" id="datepickerA" value="${_datiStorico.getDataFinaleString()}" /> 
1552		                        </p> 
1553		                    </div> 
1554		                    <p class="reset">Visualizzazione andamento dal <span id="andamentoDa"></span> al <span id="andamentoA"></span></p> 
1555		                    <p class="reset" style="font-style:italic"> 
1556		                    	Attenzione: i valori passati non sono indicativi di quelli futuri. 
1557		                    	<#if getterUtil.getBoolean(hasBenchmark)> 
1558		                    		Si evidenzia inoltre che la performance del Fondo risente dei costi gravanti sullo stesso, mentre il benchmark,  
1559		                    		in quanto indice teorico, non è gravato da costi. 
1560		                    	</#if> 
1561		                    </p> 
1562                        </#if> 
1563                    </div> 
1564                </div>		     
1565		    </#if> 
1566		     
1567		    <!-- FINE SECONDO BLOCCO --> 
1568		     
1569		    <!-- BLOCCO PROSPETTO --> 
1570		     
1571		    <#if !( 
1572    		    !Colonna_prospetto.getSiblings()?has_content ||  
1573    		    (Colonna_prospetto.getSiblings()?size==1 && Colonna_prospetto.getSiblings()[0].getData()=='' && 
1574    		    (!Colonna_prospetto.getSiblings()[0].Allegato_prospetto.getSiblings()?has_content ||  
1575    		    (Colonna_prospetto.getSiblings()[0].Allegato_prospetto.getSiblings()?size == 1 && Colonna_prospetto.getSiblings()[0].Allegato_prospetto.getSiblings()[0].getData()=='') 
1576    		    )))> 
1577    		     
1578    		    <div class="boxesDettaglio togliMargin"> 
1579    		        <div class="reset">            
1580		                <p class="">${descrizione_prospetto.getData()}</p> 
1581		            </div> 
1582    		        <#if Colonna_prospetto.getSiblings()?has_content> 
1583    		            <div class="table"> 
1584    		                <div class="row theader"> 
1585			                    <div class="cell"> 
1586			                        <!-- prima colonnavuota --> 
1587			                    </div> 
1588            		            <#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto>  
1589            		                <div class="cell"> 
1590            		                    ${cur_Colonna_prospetto.getData()} 
1591            		                </div> 
1592            		            </#list> 
1593                            </div> 
1594                             
1595                            <#if Tipo_generazione_righe_prospetto.getData()=="dinamico"> 
1596                                <#if Nome_Riga_Prospetto.getSiblings()?has_content> 
1597                                    <#assign contatore_righe = 0> 
1598                                    <#list Nome_Riga_Prospetto.getSiblings() as cur_Nome_Riga_Prospetto> 
1599                                        <div class="row"> 
1600			                                <div class="cell"> 
1601			                                    <div class="">${cur_Nome_Riga_Prospetto.getData()}</div> 
1602			                                </div> 
1603			                                <#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto1>  
1604			                                    <div class="cell"> 
1605    		                                        <#assign contatore_allegati = 0> 
1606    		                                        <#assign allegatoUrl = ''> 
1607			                                         
1608			                                        <#list cur_Colonna_prospetto1.Allegato_prospetto.getSiblings() as allegato> 
1609			                                         
1610			                                            <#if contatore_allegati == contatore_righe> 
1611			                                                <#assign allegatoUrl = allegato.getData()> 
1612			                                            </#if> 
1613			                                            <#assign contatore_allegati = contatore_allegati + 1> 
1614			                                        </#list> 
1615			                                         
1616			                                        <#assign dlFileVersion = ''> 
1617													<#if validator.isNotNull(allegatoUrl)> 
1618														<#assign dlFileVersion = confTool.getLatestDLFileVersion(allegatoUrl, checkDisplayDate)> 
1619													</#if> 
1620													<#if validator.isNotNull(dlFileVersion)> 
1621				                                       	<a class="icona icon-file" href="${allegatoUrl}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
1622				                                    <#else> 
1623				                                    	<div>&mdash;</div> 
1624			                                        </#if> 
1625			                                    </div> 
1626			                                </#list> 
1627			                            </div> 
1628                                        <#assign contatore_righe = contatore_righe + 1> 
1629                                    </#list> 
1630                                </#if> 
1631                            </#if> 
1632                             
1633                            <#if Tipo_generazione_righe_prospetto.getData()=="quadrimestrali"> 
1634                                <div class="row"> 
1635    			                    <div class="cell"> 
1636    			                        <div class="">Composizione al 31/03</div> 
1637    			                    </div> 
1638    			                     
1639    			                    <#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto1> 
1640    			                        <div class="cell"> 
1641    			                            <#assign contatore_allegati = 0> 
1642    			                            <#assign allegatoUrl = ''> 
1643    			                            <#list cur_Colonna_prospetto1.Allegato_prospetto.getSiblings() as allegato> 
1644    			                                <#if contatore_allegati == 0> 
1645    			                                    <#assign allegatoUrl = allegato.getData()> 
1646    			                                </#if> 
1647    			                                <#assign contatore_allegati = contatore_allegati + 1> 
1648    			                            </#list> 
1649    			                             
1650    			                            <#assign dlFileVersion = ''> 
1651    										<#if validator.isNotNull(allegatoUrl)> 
1652    											<#assign dlFileVersion = confTool.getLatestDLFileVersion(allegatoUrl, checkDisplayDate)> 
1653    										</#if> 
1654    										<#if validator.isNotNull(dlFileVersion)> 
1655    				                            <a class="icona icon-file" href="${allegatoUrl}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
1656    			                            <#else>    
1657    			                                <div>&mdash;</div> 
1658    			                            </#if> 
1659    			                        </div> 
1660    			                    </#list> 
1661    			                </div> 
1662                                 
1663                                <div class="row"> 
1664    			                    <div class="cell"> 
1665    			                        <div class="">Composizione al 30/06</div> 
1666    			                    </div> 
1667    			                     
1668    			                    <#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto2> 
1669    			                        <div class="cell"> 
1670    			                            <#assign contatore_allegati = 0> 
1671    			                            <#assign allegatoUrl = ''> 
1672    			                            <#list cur_Colonna_prospetto2.Allegato_prospetto.getSiblings() as allegato> 
1673    			                                <#if contatore_allegati == 1> 
1674    			                                    <#assign allegatoUrl = allegato.getData()> 
1675    			                                </#if> 
1676    			                                <#assign contatore_allegati = contatore_allegati + 1> 
1677    			                            </#list> 
1678    			                             
1679    			                            <#assign dlFileVersion = ''> 
1680    										<#if validator.isNotNull(allegatoUrl)> 
1681    											<#assign dlFileVersion = confTool.getLatestDLFileVersion(allegatoUrl, checkDisplayDate)> 
1682    										</#if> 
1683    										<#if validator.isNotNull(dlFileVersion)> 
1684    				                            <a class="icona icon-file" href="${allegatoUrl}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
1685    			                            <#else>    
1686    			                                <div>&mdash;</div> 
1687    			                            </#if> 
1688    			                        </div> 
1689    			                    </#list> 
1690    			                </div> 
1691    			                 
1692    			                <div class="row"> 
1693    			                    <div class="cell"> 
1694    			                        <div class="">Composizione al 30/09</div> 
1695    			                    </div> 
1696    			                     
1697    			                    <#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto3> 
1698    			                        <div class="cell"> 
1699    			                            <#assign contatore_allegati = 0> 
1700    			                            <#assign allegatoUrl = ''> 
1701    			                            <#list cur_Colonna_prospetto3.Allegato_prospetto.getSiblings() as allegato> 
1702    			                                <#if contatore_allegati == 2> 
1703    			                                    <#assign allegatoUrl = allegato.getData()> 
1704    			                                </#if> 
1705    			                                <#assign contatore_allegati = contatore_allegati + 1> 
1706    			                            </#list> 
1707    			                             
1708    			                            <#assign dlFileVersion = ''> 
1709    										<#if validator.isNotNull(allegatoUrl)> 
1710    											<#assign dlFileVersion = confTool.getLatestDLFileVersion(allegatoUrl, checkDisplayDate)> 
1711    										</#if> 
1712    										<#if validator.isNotNull(dlFileVersion)> 
1713    				                            <a class="icona icon-file" href="${allegatoUrl}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
1714    			                            <#else>    
1715    			                                <div>&mdash;</div> 
1716    			                            </#if> 
1717    			                        </div> 
1718    			                    </#list> 
1719    			                </div> 
1720    			                 
1721    			                <div class="row"> 
1722    			                    <div class="cell"> 
1723    			                        <div class="">Composizione al 31/12</div> 
1724    			                    </div> 
1725    			                     
1726    			                    <#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto4> 
1727    			                        <div class="cell"> 
1728    			                            <#assign contatore_allegati = 0> 
1729    			                            <#assign allegatoUrl = ''> 
1730    			                            <#list cur_Colonna_prospetto4.Allegato_prospetto.getSiblings() as allegato> 
1731    			                                <#if contatore_allegati == 3> 
1732    			                                    <#assign allegatoUrl = allegato.getData()> 
1733    			                                </#if> 
1734    			                                <#assign contatore_allegati = contatore_allegati + 1> 
1735    			                            </#list> 
1736    			                             
1737    			                            <#assign dlFileVersion = ''> 
1738    										<#if validator.isNotNull(allegatoUrl)> 
1739    											<#assign dlFileVersion = confTool.getLatestDLFileVersion(allegatoUrl, checkDisplayDate)> 
1740    										</#if> 
1741    										<#if validator.isNotNull(dlFileVersion)> 
1742    				                            <a class="icona icon-file" href="${allegatoUrl}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
1743    			                            <#else>    
1744    			                                <div>&mdash;</div> 
1745    			                            </#if> 
1746    			                        </div> 
1747    			                    </#list> 
1748    			                </div> 
1749                            </#if> 
1750    		            </div> 
1751    		        </#if> 
1752    		    </div> 
1753    		</#if> 
1754		     
1755		     
1756		    <!-- INIZIO BLOCCO SMARTPHONE PROSPETTO --> 
1757		     
1758		    <#if !( 
1759    		    !Colonna_prospetto.getSiblings()?has_content ||  
1760    		    (Colonna_prospetto.getSiblings()?size==1 && Colonna_prospetto.getSiblings()[0].getData()=='' && 
1761    		    (!Colonna_prospetto.getSiblings()[0].Allegato_prospetto.getSiblings()?has_content ||  
1762    		    (Colonna_prospetto.getSiblings()[0].Allegato_prospetto.getSiblings()?size == 1 && Colonna_prospetto.getSiblings()[0].Allegato_prospetto.getSiblings()[0].getData()=='') 
1763    		    )))> 
1764    		    <div class="table_smart secondaTab prospetto"> 
1765					<table> 
1766						<tbody> 
1767    		                <#assign tipo_colonne_prospetto = Tipo_generazione_righe_prospetto.getData()> <!-- in realta per gli smart le righe sono colonne --> 
1768    		                <#if tipo_colonne_prospetto == "dinamico"> 
1769    		                 
1770    		                    <tr class="intestazione_smart"> 
1771									<td colspan="1">Anno</td>    
1772									<#list Nome_Riga_Prospetto.getSiblings() as cur_Nome_Col_Prospetto> 
1773										<td colspan="1">${cur_Nome_Col_Prospetto.getData()}</td> 
1774									</#list> 
1775								</tr> 
1776								 
1777								<#if Colonna_prospetto.getSiblings()?has_content> 
1778								    <#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto> 
1779								    	<#assign velocityCount = cur_Colonna_prospetto?index/> 
1780								        <#if velocityCount % 2 == 0> 
1781											<tr class="pari"> 
1782										<#elseif velocityCount % 2 == 1> 
1783											<tr class="dispari"> 
1784										</#if> 
1785										 
1786										        <td>${cur_Colonna_prospetto.getData()}</td> 
1787												<#list cur_Colonna_prospetto.Allegato_prospetto.getSiblings() as allegato>  
1788													<#assign allegatoUrl = ''>  
1789													<td>                                        
1790														<#assign allegatoUrl = allegato.getData()>  
1791														<#assign dlFileVersion = ''> 
1792														<#if validator.isNotNull(allegatoUrl)> 
1793															<#assign dlFileVersion = confTool.getLatestDLFileVersion(allegatoUrl, checkDisplayDate)> 
1794														</#if> 
1795														<#if validator.isNotNull(dlFileVersion)> 
1796															<a class="icona icon-file" href="${allegatoUrl}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
1797														<#else>    
1798															<div>&mdash;</div> 
1799														</#if> 
1800													</td> 
1801												</#list> 
1802											</tr> 
1803								    </#list> 
1804								</#if> 
1805    		     
1806    		                <#elseif tipo_colonne_prospetto == "quadrimestrali"> 
1807    		                 
1808    		                    <tr class="intestazione_smart"> 
1809									<td colspan="1">Anno</td>    
1810									<td colspan="1">31Mar</td> 
1811									<td colspan="1">30Giu</td> 
1812									<td colspan="1">30Set</td> 
1813									<td colspan="1">31Dic</td> 
1814								</tr> 
1815								 
1816								<#if Colonna_prospetto.getSiblings()?has_content> 
1817								    <#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto> 
1818								    	<#assign velocityCount = cur_Colonna_prospetto?index/> 
1819								        <#if velocityCount % 2 == 0> 
1820											<tr class="pari"> 
1821										<#elseif velocityCount % 2 == 1> 
1822											<tr class="dispari"> 
1823										</#if> 
1824										 
1825										        <td>${cur_Colonna_prospetto.getData()}</td> 
1826														  
1827												<#assign contatore_allegati = 0>                                        
1828												<#list cur_Colonna_prospetto.Allegato_prospetto.getSiblings() as allegato> 
1829													<#assign allegatoUrl = ''> 
1830													 <td>    
1831														<#assign allegatoUrl = allegato.getData()> 
1832														<#assign dlFileVersion = ''> 
1833														<#if validator.isNotNull(allegatoUrl)> 
1834															<#assign dlFileVersion = confTool.getLatestDLFileVersion(allegatoUrl, checkDisplayDate)> 
1835														</#if> 
1836														<#if validator.isNotNull(dlFileVersion)>                                           
1837															<a class="icona icon-file" href="${allegatoUrl}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
1838														<#else>    
1839															<div>&mdash;</div> 
1840														</#if> 
1841													</td> 
1842												</#list>                                     
1843											</tr> 
1844								    </#list> 
1845    		                    </#if> 
1846    		                </#if> 
1847    		            </tbody> 
1848    		        </table> 
1849    		    </div> 
1850    		</#if> 
1851		     
1852		    <!-- FINE BLOCCO SMARTPHONE PROSPETTO --> 
1853		     
1854		    <!-- BLOCCO INDICI --> 
1855		 
1856		    <#if !( 
1857    	        (!Indici_titolo_alto?has_content || Indici_titolo_alto.getData()=='') &&  
1858    	        (!Label_titolo_valore_iniziale_titoli?has_content || Label_titolo_valore_iniziale_titoli.getData()=='') &&  
1859    	        (!Label_titolo_tabella_valore_iniziale_indici?has_content || Label_titolo_tabella_valore_iniziale_indici.getData()=='') &&  
1860    	        (!Label_titolo_tabella_prestazioni_annuali?has_content || Label_titolo_tabella_prestazioni_annuali.getData()=='') &&  
1861    	        (!Indici_titolo_basso?has_content || Indici_titolo_basso.getData()=='') &&  
1862    	(!titolo_box_tabella?has_content || titolo_box_tabella.getData()=='') 
1863    	        )> 
1864    	         
1865    	        <div class="boxesDettaglio togliMargin"> 
1866		            <div class="reset"> 
1867		                <h5 class="titolo">${Indici_titolo_alto.getData()}</h5> 
1868		                <p class="">${Indici_descrizione_alta.getData()}</p> 
1869		 
1870		                <#if !(!Label_titolo_valore_iniziale_titoli?has_content || Label_titolo_valore_iniziale_titoli.getData()=='')> 
1871			                <#assign fileEntryPath = Nome_allegato_valore_iniziale_titoli.Allegato_valore_iniziale_titoli.getData()>		 
1872							<#assign dlFileVersion = ''>					 
1873							<#if validator.isNotNull(fileEntryPath)> 
1874								<#assign dlFileVersion = confTool.getLatestDLFileVersion(fileEntryPath, checkDisplayDate)> 
1875							</#if> 
1876							 
1877							<#if validator.isNotNull(dlFileVersion)> 
1878			                	<h6 class="titolo">${Label_titolo_valore_iniziale_titoli.getData()}</h6> 
1879								<div class="archivi">					 
1880								   <a href="${fileEntryPath}?version=${dlFileVersion.getVersion()}" target="_blank"> 
1881										<h6> 
1882											<span class="icona icon-file"></span> 
1883											<div>${Nome_allegato_valore_iniziale_titoli.getData()}</div> 
1884										</h6> 
1885									</a> 
1886								</div> 
1887							</#if> 
1888		                </#if> 
1889		                 
1890		                <#if Label_titolo_tabella_valore_iniziale_indici.getData() != ""> 
1891			                <h6 class="titolo indici">${Label_titolo_tabella_valore_iniziale_indici.getData()}</h6> 
1892			            </div> 
1893			            <div class="table"> 
1894			                 
1895			                <#if Riga_valore_iniziale_indici_colonna_1.getSiblings()?has_content> 
1896			                     
1897			                    <#list Riga_valore_iniziale_indici_colonna_1.getSiblings() as cur_Riga_valore_iniziale_indici_colonna_1> 
1898        		                    <div class="row"> 
1899        		                        <div class="cell"> 
1900        		                            ${cur_Riga_valore_iniziale_indici_colonna_1.getData()} 
1901        		                        </div> 
1902        		                         
1903        		                        <div class="cell"> 
1904        		                            ${cur_Riga_valore_iniziale_indici_colonna_1.Riga_valore_iniziale_indici_data_emissione.getData()} 
1905        		                        </div> 
1906        		                         
1907        		                        <div class="cell"> 
1908        		                            ${cur_Riga_valore_iniziale_indici_colonna_1.Riga_valore_iniziale_indici_colonna_3.getData()} 
1909        		                        </div> 
1910        		                    </div> 
1911			                    </#list> 
1912			                     
1913			                </#if> 
1914			            
1915			            </div> 
1916			             
1917			            <!-- INIZIO BLOCCO SMARTPHONE SECONDA TABELLA --> 
1918			            <div class="table_smart secondaTab"> 
1919                			<#if Riga_valore_iniziale_indici_colonna_1.getSiblings()?has_content> 
1920                			<table> 
1921                    			<tbody> 
1922                        			 <#list Riga_valore_iniziale_indici_colonna_1.getSiblings() as cur_Riga_valore_iniziale_indici_colonna_1> 
1923                        			 	<#assign velocityCount = cur_Riga_valore_iniziale_indici_colonna_1?index/> 
1924                            			<#if velocityCount!=1> 
1925                                			<tr class="intestazione_smart"> 
1926                                			    <td colspan="2">${cur_Riga_valore_iniziale_indici_colonna_1.getData()}</td> 
1927                                			</tr> 
1928                                			<tr class="pari"> 
1929                                    			<td>${Riga_valore_iniziale_indici_colonna_1.getSiblings()[0].Riga_valore_iniziale_indici_data_emissione.getData()}</td> 
1930                                			    <td>${cur_Riga_valore_iniziale_indici_colonna_1.Riga_valore_iniziale_indici_data_emissione.getData()}</td> 
1931                                			</tr> 
1932                                			<tr class="dispari"> 
1933                                			    <td>${Riga_valore_iniziale_indici_colonna_1.getSiblings()[0].Riga_valore_iniziale_indici_colonna_3.getData()}</td> 
1934                                			    <td>${cur_Riga_valore_iniziale_indici_colonna_1.Riga_valore_iniziale_indici_colonna_3.getData()}</td> 
1935                                			</tr> 
1936                            			</#if> 
1937                        			 
1938                        			 </#list> 
1939                    			 </tbody> 
1940                			 </table> 
1941                			 </#if> 
1942			            </div> 
1943			            <!-- FINE BLOCCO SMARTPHONE SECONDA TABELLA --> 
1944			  
1945			  
1946			  
1947            			<div class="reset tab"> 
1948            				</#if> 
1949            				<#if Label_titolo_tabella_prestazioni_annuali.getData() != ""> 
1950            					<h6 class="titolo">${Label_titolo_tabella_prestazioni_annuali.getData()}</h6> 
1951            					<#if Prestazione_annuale_data_label.getSiblings()?has_content> 
1952            				</div> 
1953            				<div class="table"> 
1954            				 
1955            					<#list Prestazione_annuale_data_label.getSiblings() as cur_Prestazione_annuale_data_label> 
1956                					<div class="row"> 
1957                						<div class="cell"> 
1958                							${cur_Prestazione_annuale_data_label.getData()} 
1959                						</div> 
1960                						 
1961                						<div class="cell"> 
1962                							${cur_Prestazione_annuale_data_label.Prestazione_annuale_percentuale.getData()} 
1963                						</div> 
1964                					</div> 
1965            					</#list> 
1966            				 
1967            				</div> 
1968            			  
1969            			  
1970            			  
1971            					<!-- INZIO BLOCCO SMARTPHONE --> 
1972            					<div class="table_smart terzaTab"> 
1973            						<table> 
1974            							<tbody> 
1975            								 <#list Prestazione_annuale_data_label.getSiblings() as cur_Prestazione_annuale_data_label> 
1976            								 <#assign velocityCount = cur_Prestazione_annuale_data_label?index/> 
1977            									<#if velocityCount==1> 
1978            										<tr class="intestazione_smart"> 
1979            											<td>${cur_Prestazione_annuale_data_label.getData()}</td> 
1980            											<td class="presta_ann">${cur_Prestazione_annuale_data_label.Prestazione_annuale_percentuale.getData()}</td> 
1981            										</tr> 
1982            									<#elseif velocityCount%2==0> 
1983            										<tr class="pari"> 
1984            											<td>${cur_Prestazione_annuale_data_label.getData()}</td> 
1985            											<td>${cur_Prestazione_annuale_data_label.Prestazione_annuale_percentuale.getData()}</td> 
1986            										</tr> 
1987            									<#elseif velocityCount%2==1> 
1988            										<tr class="dispari"> 
1989            											<td>${cur_Prestazione_annuale_data_label.getData()}</td> 
1990            											<td>${cur_Prestazione_annuale_data_label.Prestazione_annuale_percentuale.getData()}</td> 
1991            										</tr> 
1992            									</#if> 
1993            								</#list> 
1994            							</tbody> 
1995            						</table> 
1996            					</div> 
1997            					  
1998            					<!-- FINE BLOCCO SMARTPHONE --> 
1999             
2000            				</#if> 
2001            			</#if> 
2002		                 
2003		                <!-- INIZIO BLOCCO TABELLA NxM --> 
2004    					<#list titolo_box_tabella.getSiblings() as cur_titolo_box_tabella> 
2005    						<div class="reset"> 
2006    					        <#assign tipoTabella = cur_titolo_box_tabella.tipo_tabella.getData()> 
2007    					        <#assign descrizioneTabella = cur_titolo_box_tabella.descrizione_tabella.getData()> 
2008    					        <#if descrizioneTabella!=''> 
2009    								<h5 class="titolo prospetto"> 
2010    									${cur_titolo_box_tabella.getData()} 
2011    								</h5> 
2012    								<p class="">${descrizioneTabella}</p> 
2013    					        <#else> 
2014    								<h6 class="titolo"> 
2015    									${cur_titolo_box_tabella.getData()} 
2016    								</h6> 
2017    					        </#if> 
2018    					    </div> 
2019    					        
2020    					    <!-- controllo che la prima riga sia valorizzata altrimenti non la stampo --> 
2021    						<#assign contTheaderVisible = 0> 
2022    						<#list cur_titolo_box_tabella.intestazione_tabella.th_tabella.getSiblings() as cur_th_tabella> 
2023    							<#if cur_th_tabella.getData()?has_content> 
2024    								<#assign contTheaderVisible = contTheaderVisible + 1> 
2025    								<#break> 
2026    							</#if> 
2027    						</#list> 
2028    						  
2029    						<#assign contRowVisible = 0> 
2030    						<#if cur_titolo_box_tabella.tr_tabella?has_content> 
2031    							<#list cur_titolo_box_tabella.tr_tabella.getSiblings() as cur_tr_tabella> 
2032    								<#if cur_tr_tabella.getData()?has_content> 
2033    									<#assign contRowVisible = contRowVisible + 1> 
2034    									<#break> 
2035    								<#else> 
2036    								    <#if cur_tr_tabella.td_tabella?has_content> 
2037    										<#list cur_tr_tabella.td_tabella.getSiblings() as cur_td_tabella> 
2038    											<!-- se di tipo testo stampo il campo td_tabella --> 
2039    											<#if tipoTabella?lower_case == 'testo'> 
2040    												<#if cur_td_tabella.getData()?has_content> 
2041    													<#assign contRowVisible = contRowVisible + 1> 
2042    													<#break> 
2043    												</#if> 
2044    											</#if> 
2045    											<!-- se di tipo documento stampo il campo td_allegato_url --> 
2046    											<#if tipoTabella?lower_case == 'documento'> 
2047    												<#if cur_td_tabella.td_allegato_url.getData() && cur_td_tabella.td_allegato_url.getData() != ''> 
2048    													<#assign contRowVisible = contRowVisible + 1> 
2049    													<#break> 
2050    												</#if> 
2051    											</#if> 
2052    										</#list> 
2053    									</#if> 
2054    								</#if> 
2055    							</#list> 
2056    						</#if> 
2057    					  
2058    						<#if (contTheaderVisible gt 0 || cur_titolo_box_tabella.intestazione_tabella.getData()?has_content) || contRowVisible gt 0> 
2059    					        <div class="table"> 
2060    					  
2061    							<#if contTheaderVisible gt 0 || cur_titolo_box_tabella.intestazione_tabella.getData()?has_content> 
2062    							   <div class="row theader"> 
2063    							<#else> 
2064    					           <div class="row theader" style="display:none;"> 
2065    					        </#if> 
2066     
2067    					        <div class="cell"> 
2068    								${cur_titolo_box_tabella.intestazione_tabella.getData()} 
2069    					        </div> 
2070    					        
2071    					        <#list cur_titolo_box_tabella.intestazione_tabella.th_tabella.getSiblings() as cur_th_tabella> 
2072    								<div class="cell"> 
2073    									${cur_th_tabella.getData()} 
2074    								</div> 
2075    					        </#list> 
2076    					        
2077    					        </div> 
2078    							<#if cur_titolo_box_tabella.tr_tabella.isEmpty()?has_content> 
2079    								<#assign rowCount = 0> 
2080    								<#assign velocityCount = 0> 
2081    								<#list cur_titolo_box_tabella.tr_tabella.getSiblings() as cur_tr_tabella> 
2082    									<#assign velocityCount = cur_tr_tabella?index/> 
2083    									<#assign rowCount = velocityCount> 
2084										<div class="row"> 
2085											<#if rowCount==1> 
2086												<div class="cell" style="border-top-color: #D9E2EA; border-top-style: solid; border-top-width: 1px;"> 
2087											<#else> 
2088												<div class="cell"> 
2089											</#if> 
2090											 
2091											<div class="">${cur_tr_tabella.getData()}</div> 
2092										</div> 
2093										 
2094										<#if cur_tr_tabella.td_tabella.isEmpty()?has_content> 
2095											<#list cur_tr_tabella.td_tabella.getSiblings() as cur_td_tabella>          
2096												<#if rowCount==1> 
2097													<div class="cell" style="border-top-color: #D9E2EA; border-top-style: solid; border-top-width: 1px;"> 
2098												<#else> 
2099													<div class="cell"> 
2100												</#if> 
2101												 
2102												<!-- se di tipo testo stampo il campo td_tabella --> 
2103												<#if tipoTabella?lower_case == 'testo'> 
2104													${cur_td_tabella.getData()} 
2105												</#if> 
2106												 
2107												<!-- se di tipo documento stampo il campo td_allegato_url --> 
2108												<#if tipoTabella?lower_case == 'documento'> 
2109													<#assign fileEntryPath = cur_td_tabella.td_allegato_url.getData()> 
2110 
2111													<#assign dlFileVersion = ''>					 
2112													<#if validator.isNotNull(fileEntryPath)> 
2113														<#assign dlFileVersion =$confTool.getLatestDLFileVersion(fileEntryPath, checkDisplayDate)> 
2114													</#if> 
2115													<#if validator.isNotNull(dlFileVersion)> 
2116														<a class="icona icon-file" href="${fileEntryPath}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
2117													<#else>  
2118														<div>&mdash;</div> 
2119													</#if> 
2120												</#if> 
2121												</div> 
2122											</#list> 
2123										</#if> 
2124    									</div> 
2125    									<!-- end if in piu --> 
2126    								</#list> 
2127    								</div> 
2128    							</#if> 
2129    						</#if> 
2130						</#list> 
2131						<!-- FINE BLOCCO TABELLA NxM --> 
2132						  
2133						  
2134						<div class="reset"> 
2135							<h5 class="titolo">${Indici_titolo_basso.getData()}</h5> 
2136						 
2137							<p class="">${Indici_descrizione_bassa.getData()}</p> 
2138						</div> 
2139							 
2140					</div> 
2141				</div> <!-- boxesDettaglio togliMargin --> 
2142 
2143			</#if> 
2144    					         
2145    	             
2146    	     
2147		    <!-- FINE BLOCCO INDICI --> 
2148		     
2149		     
2150		     
2151		    <!-- BLOCCO (DOWNLOADS BOXES) --> 
2152					        
2153	        <#if !(Download_box_label?? && Download_box_label.getData()?has_content && (!Download_box_label.getSiblings()?has_content ||  
2154	            (Download_box_label.getSiblings()?size==1 &&  
2155	            (!Download_box_label.getSiblings()[0].getData()?has_content || Download_box_label.getSiblings()[0].getData()=='') && 
2156	            (!Download_box_label.getSiblings()[0].Nome_allegato.getSiblings()?has_content || 
2157	            (Download_box_label.getSiblings()[0].Nome_allegato.getSiblings()?size==1 && 
2158	            (!Download_box_label.getSiblings()[0].Nome_allegato.getSiblings().getData()?has_content || Download_box_label.getSiblings()[0].Nome_allegato.getSiblings()[0].getData()=='') 
2159	            )))))>             
2160	             
2161	            <#list Download_box_label.getSiblings() as cur_Download_box_label>	                 
2162	                <div class="boxesDettaglio togliMargin"> 
2163	                    <div class="reset download"> 
2164							<#if getterUtil.getBoolean(cur_Download_box_label.conteggio_file.getData())> 
2165								<#assign file_number = cur_Download_box_label.Nome_allegato.getSiblings()?size> 
2166								<h5 class="titolo">${cur_Download_box_label.getData()} ( ${file_number} file )</h5> 
2167							<#else> 
2168								<h5 class="titolo download">${cur_Download_box_label.getData()}</h5> 
2169							</#if> 
2170							<#if cur_Download_box_label.Nome_allegato.getSiblings()?has_content> 
2171								<div class="archivi"> 
2172									<#list cur_Download_box_label.Nome_allegato.getSiblings() as cur_Download_box> 
2173									 
2174										<#assign fileEntryPath = cur_Download_box.Allegato_url.getData()> 
2175 
2176										<#assign dlFileVersion = ''>					 
2177										<#if validator.isNotNull(fileEntryPath)> 
2178											<#assign dlFileVersion = confTool.getLatestDLFileVersion(fileEntryPath, checkDisplayDate)> 
2179										</#if> 
2180										<#if validator.isNotNull(dlFileVersion)> 
2181											<#if cur_Download_box.tipo_allegato.getData()=="excel"> 
2182												<a href="${fileEntryPath}?version=${dlFileVersion.getVersion()}" target="_blank"> 
2183													<h6> 
2184														<span class="icona icon-copy"></span> 
2185											<#else> 
2186												<a href="${fileEntryPath}?version=${dlFileVersion.getVersion()}" target="_blank"> 
2187													<h6> 
2188														<span class="icona icon-file"></span>                      
2189											</#if> 
2190														<div>${cur_Download_box.getData()}</div> 
2191													</h6> 
2192												</a> 
2193										</#if> 
2194									</#list> 
2195								</div> 
2196							</#if> 
2197	                    </div> 
2198	                </div> 
2199                </#list> 
2200        	</#if> 
2201	         
2202	    	<!-- FINE BLOCCO (DOWNLOADS BOXES) -->        
2203	 
2204	        <!-- BLOCCO DISCLAIMER --> 
2205	 
2206	        <footer > 
2207	         
2208	            <p class="caption disclaimer">${disclaimer.getData()}</p> 
2209	         
2210	        </footer> 
2211	         
2212	        <!-- FINE BLOCCO DISCLAIMER --> 
2213	         
2214	         
2215	        <!-- LINK AL TOP --> 
2216	        <a href="#Top" class="back-to-top" title="Torna a inizio pagina"> 
2217	            TORNA A INIZIO PAGINA <span class="icona icon-angle-up"></span> 
2218	        </a> 
2219	        <!-- FINE LINK AL TOP --> 
2220		 
2221			<script type="text/javascript"> 
2222					 
2223    			jQuery(document).ready(function(){ 
2224    			 
2225    			        /* Nasconde, se presente lo span che contiene la pagina di dettaglio */ 
2226    			        if(jQuery(".breadcrumbs .elementi span").length) { 
2227    			            jQuery(".breadcrumbs .elementi span").hide();    
2228
2229    			         
2230    			        if(jQuery("html").is(".smartphone")) 
2231
2232    			            convertTableToDivs(); 
2233    			            swipeProspetto(); 
2234    			            jQuery(".boxesDettaglio.togliMargin .bloccoValori").first().before("<div class='carousel-menu'></div>"); 
2235    			            jQuery(".boxesDettaglio.togliMargin .bloccoValori").first().before("<div class='carousel-items'></div>"); 
2236    			            jQuery(".boxesDettaglio.togliMargin .bloccoValori").appendTo(".boxesDettaglio.togliMargin .carousel-items"); 
2237    			             
2238    			            jQuery(".boxesDettaglio.togliMargin .bloccoValori").wrap("<div class='carousel-item'></div>"); 
2239    			             
2240    			            var bullet=jQuery('<span class="carousel-menu-index">&bull;</span>'); 
2241    			             
2242    			            /* creo l'elenco delle slide */ 
2243    			            jQuery(".boxesDettaglio.togliMargin .carousel-item").each(function(){ 
2244    			            bullet.clone().appendTo(".boxesDettaglio.togliMargin .carousel-menu"); 
2245    			            }); 
2246    			             
2247    			            var car = ISP.carousel('.boxesDettaglio.togliMargin .carousel-items', '.boxesDettaglio.togliMargin .carousel-menu'); 
2248    			            
2249    			            car.play(); 
2250
2251    			    }); 
2252    			  
2253    			function updateAndamentoLabel(){ 
2254    			jQuery("#andamentoDa").html(jQuery("#datepickerDa").val()); 
2255    			jQuery("#andamentoA").html(jQuery("#datepickerA").val()); 
2256
2257    			  
2258    			    function applyGradientOnPlot(){ 
2259    			    var canvasSeries = jQuery(".jqplot-series-canvas")[0]; 
2260    			    var ctx = canvasSeries.getContext("2d"); 
2261    			    var my_gradient=ctx.createLinearGradient(0,0,0,300); 
2262    			    my_gradient.addColorStop(0, "rgba(251,168,129,0.6)"); 
2263    			    my_gradient.addColorStop(1, "rgba(251,168,129,0.1)"); 
2264    			    ctx.fillStyle = my_gradient; 
2265    			    ctx.fill(); 
2266
2267    			     
2268    			    function updateDatePickers(){ 
2269    			    //Aggiorniamo i datepicker con i reali valori visualizzati dal grafico. Necessario per via del padding. 
2270    			      		    
2271    				   var dataInizialeDefault = jQuery("#dataDefaultVisualizzazionediv").text(); 
2272    				   	    
2273    				   if(dataInizialeDefault.length>0){ 
2274    					var dataNuova = new Date (dataInizialeDefault); 
2275    				 
2276    					jQuery("#datepickerDa").datepicker("setDate", new Date(dataInizialeDefault)); 
2277    				   }else{ 
2278    				 	jQuery("#datepickerDa").datepicker("setDate", new Date(gestioneGrafico.plotter.axes.xaxis.min)); 
2279
2280    				    
2281    				    
2282    			      jQuery("#datepickerA").datepicker("setDate", new Date(gestioneGrafico.plotter.axes.xaxis.max)); 
2283    			      jQuery('#datepickerDa').datepicker('option', 'minDate', new Date(gestioneGrafico.plotter.axes.xaxis.min)); 
2284    			      jQuery('#datepickerDa').datepicker('option', 'maxDate', new Date(gestioneGrafico.plotter.axes.xaxis.max)); 
2285    			      jQuery('#datepickerA').datepicker('option', 'minDate', new Date(gestioneGrafico.plotter.axes.xaxis.min)); 
2286    			      jQuery('#datepickerA').datepicker('option', 'maxDate', new Date(gestioneGrafico.plotter.axes.xaxis.max)); 
2287
2288    			     
2289    			    function aggiornaPerformance(dataIniziale, dataFinale){ 
2290    			    var dati = window.gestioneGrafico.datiTraLeDate(dataIniziale, dataFinale); 
2291    			    
2292    			    var valoreIniziale = dati[0][1]; 
2293    			    var valoreFinale = dati[dati.length - 1][1]; 
2294    			    
2295    			    var performance = ((valoreFinale - valoreIniziale) / valoreIniziale) * 100; 
2296    			    if(!isNumber(performance)){ 
2297    			    performance = 0; 
2298
2299    			    var performance_rounded = +performance.toFixed(2); 
2300    			    
2301    			    var performance_split = []; 
2302    			    if(performance_rounded.toString().indexOf(".")>0){ 
2303    			    performance_split = performance_rounded.toString().split("."); 
2304    			    }else{ 
2305    			    performance_split[0] = performance_rounded; 
2306    			    performance_split[1] = 0; 
2307
2308    			    jQuery(".bloccoValori.performance .titoloValuta").html(performance_split[0] + (performance_split[1]!=0?",<span class='decimali'>" + performance_split[1] + "</span>":"") + " %"); 
2309
2310    			     
2311    			    function postDrawProcessing(){ 
2312    			        console.log("postDrawHooks!"); 
2313    			        applyGradientOnPlot(); 
2314    			          
2315    			        var dataIniziale = new Date(gestioneGrafico.plotter.axes.xaxis.min); 
2316    			        var dataFinale = new Date(gestioneGrafico.plotter.axes.xaxis.max); 
2317    			          
2318    					aggiornaPerformance(dataIniziale, dataFinale); 
2319    			  
2320    			        var dataInizialeStr = jQuery.datepicker.formatDate('dd/mm/yy', dataIniziale) 
2321    			        var dataFinaleStr = jQuery.datepicker.formatDate('dd/mm/yy', dataFinale); 
2322     
2323    			        //aggiorno solo se diverso per evitare di far scattare onchange 
2324    			        //if (dataInizialeStr!=jQuery("#datepickerDa").val()) { 
2325    			        	console.log('aggiorno data iniziale da ' + jQuery("#datepickerDa").val() + ' a ' + dataInizialeStr); 
2326    			        	jQuery("#datepickerDa").datepicker("setDate", dataIniziale); 
2327    			        //} 
2328    			        //if (dataFinaleStr!=jQuery("#datepickerA").val()) { 
2329    			       		console.log('aggiorno data finale da ' + jQuery("#datepickerA").val() + ' a ' + dataFinaleStr); 
2330    						jQuery("#datepickerA").datepicker("setDate", dataFinale); 
2331    					//} 
2332    			          
2333    			        updateAndamentoLabel(); 
2334
2335    			      
2336    			    function isNumber(n) { 
2337    			      return !isNaN(parseFloat(n)) && isFinite(n); 
2338
2339    			     
2340    			    jQuery(document).ready(function() { 
2341    			    	 
2342    			    	//window.primavolta = true; 
2343    			    
2344    			        jQuery.jsDate.regional['it-IT'] = { 
2345    			            monthNames: ['Gennaio','Febbraio','Marzo','Aprile','Maggio','Giugno','Luglio','Agosto','Settembre','Ottobre','Novembre','Dicembre'], 
2346    			            monthNamesShort: ['Gen','Feb','Mar','Apr','Mag','Giu','Lug','Ago','Set','Ott','Nov','Dic'], 
2347    			            dayNames: ['Domenica','Lunedi','Martedi','Mercoledi','Giovedi','Venerdi','Sabato'], 
2348    			            dayNamesShort: ['Dom','Lun','Mar','Mer','Gio','Ven','Sab'], 
2349    			            formatString: '%d-%m-%Y %H:%M:%S' 
2350    			        }; 
2351    			        jQuery.jsDate.regional.getLocale(); 
2352    			    
2353    				Date.prototype.sameDay = function(d) { 
2354    					 
2355    							 
2356    				return (this.getFullYear() === d.getFullYear() 
2357    			    		&& this.getMonth() === d.getMonth() 
2358    						&& this.getDate() === d.getDate()); 
2359    				 
2360
2361    				 
2362    			        //Spostato qui perché voglio essere sicuro che gestioneGrafico sia inizializzato quando viene chiamato in questa funzione. 
2363    			        //window.gestioneGrafico garantisce che è una variabile globale! -RC 
2364    			    window.gestioneGrafico = { 
2365    			  
2366    			        //Gestione del pad manuale perché quando si impostano un minimo e un massimo per gli assi il pad è ignorato. -RC 
2367    			        pad: 1.1,  
2368    					 
2369    			           tuttiIdatiDelGrafico : function() {  
2370    			                 
2371    			               var tuttiIDati =[]; 
2372    			                  
2373    			               <#list _listaRendimenti as storicoBean> 
2374    			                   tuttiIDati.push([this.getADate('${storicoBean.getDataAggiornamentoStr()}'),'${storicoBean.getValoreFondoUno()}']); 
2375    			               </#list> 
2376    			                
2377    			                //ritorno una copia dell'array che contiene tutti i dati 
2378    			               return tuttiIDati.slice(); 
2379    			           }, 
2380    			           datiBenchmark : function(){ 
2381    				               var datiBenchmark = []; 
2382    		                   <#list _benchmarkFondoMap?keys as _benchmarkFondoKey> 
2383    		                       datiBenchmark.push([this.getADate('${_benchmarkFondoKey}'),'${_benchmarkFondoMap[_benchmarkFondoKey]}']); 
2384    		                   </#list> 
2385    		                   return datiBenchmark.slice(); 
2386    			           }, 
2387    			           getADate: function (dataStr) 
2388
2389    			               //console.log("getADate dataStr" + dataStr); 
2390    			               if (dataStr == null) 
2391    			                   return; 
2392    			                var partiData = dataStr.split("/"); 
2393    			                var day = partiData[0]; 
2394    			                var month = partiData[1] - 1; 
2395    			                var year = partiData[2]; 
2396    			                //console.log("year " + year + " month" + month + " day " + day) 
2397    			                var aDate = new Date(year, month, day, 0, 0, 0, 0); 
2398    			                return aDate; 
2399    			           }, 
2400    			            
2401    			           datiTraLeDate : function (dataDa, dataA){ 
2402    			               //console.log("datiTraLeDate dataDa " + dataDa + " dataA " + dataA); 
2403    			                
2404    			               var tuttiIdati = this.tuttiIdatiDelGrafico(); 
2405    			               //cerco l'elemento minimo superiore a dataDa  
2406    			               //cerco l'elemnto massimo inferiore a dataA 
2407    			               //l'array di dati originali è gia ordinato per data 
2408    			               var indiceDellaDataMinore = -1; 
2409    			               var indiceDellaDataMaggiore = -1; 
2410    			               var currDate; 
2411    			               //cerco la prima data subito superiore a dataDa 
2412    			               for (var i=0; i< tuttiIdati.length; i++) { 
2413    			                  currDate = moment(tuttiIdati[i][0]).hours(0).minutes(0).seconds(0); 
2414    			                  if((currDate.isAfter(dataDa)||(currDate.isSame(dataDa))) && (currDate.isBefore(dataA)||currDate.isSame(dataA))) { 
2415    			                      indiceDellaDataMinore = i; 
2416    			                     break; 
2417
2418    			               }   
2419    			                //cerco la prima data subito inveriore  a dataA 
2420    			               for (var i=tuttiIdati.length -1; i>=0; i--) { 
2421    			                  currDate = moment(tuttiIdati[i][0]).hours(0).minutes(0).seconds(0); 
2422    			                  if((currDate.isBefore(dataA)|| currDate.isSame(dataA)) && (currDate.isAfter(dataDa)||currDate.isSame(dataDa))) { 
2423    			                      indiceDellaDataMaggiore = i; 
2424    			                     break; 
2425
2426
2427    			               //a questo punto ho gli indici delle date minore e maggiore, taglio l'array 
2428    			               var nDiElementi  = indiceDellaDataMaggiore - indiceDellaDataMinore + 1; 
2429    			               console.log("nDiElementi" + nDiElementi); 
2430    			               var nuovoRange = tuttiIdati.splice(indiceDellaDataMinore,nDiElementi); 
2431    			               //se 0 risultati creo un array con dati [[dataIniziale, 0], [dataFinale, 0]] 
2432    			               if (nuovoRange.length == 0){ 
2433    			                   console.log("ritorno un range vuoto"); 
2434    			                   nuovoRange = [["{$_datiStorico.getDataInizialeString()}"][0],["{$_datiStorico.getDataFinaleString()}"][0]]; 
2435
2436    			               
2437    			               return nuovoRange; 
2438    			           }, 
2439    			           getAxisBounds: function(dati, pad, dataDa, dataA, datiBenchmark){ 
2440    			            var _pad = (pad==null||typeof pad == 'undefined')?0:pad; 
2441    			            var _dataDa = typeof dataDa == 'undefined'?null:dataDa; 
2442    			            var _dataA = typeof dataA == 'undefined'?null:dataA; 
2443    						var _datiBenchmark = typeof datiBenchmark == 'undefined'?null:datiBenchmark; 
2444    			            
2445    			            var minXVal = null; 
2446    			            var maxXVal = null; 
2447    			            //Vogliamo che Y parta da 0 o dal minimo valore minore di 0 
2448    			            var minYVal = null; 
2449    			            var maxYVal = null; 
2450    			            
2451    			            for(var i=0; i<dati.length; i++){ 
2452    							var valY = parseFloat(dati[i][1]); 
2453    							if(_dataDa==null&&(minXVal==null||dati[i][0]<minXVal)){ 
2454    							minXVal = dati[i][0]; 
2455
2456    							if(_dataA==null&&(maxXVal==null||dati[i][0]>maxXVal)){ 
2457    							maxXVal = dati[i][0]; 
2458
2459    							if(minYVal==null||valY<minYVal){ 
2460    							minYVal = valY; 
2461
2462    							if(maxYVal==null||valY>maxYVal){ 
2463    							maxYVal = valY; 
2464
2465
2466    						 
2467    						if(_datiBenchmark != null){ 
2468    							for(var l=0; l<_datiBenchmark.length; l++){ 
2469    								var valY = parseFloat(_datiBenchmark[l][1]); 
2470    								if(minYVal==null||valY<minYVal){ 
2471    								minYVal = valY; 
2472
2473    								if(maxYVal==null||valY>maxYVal){ 
2474    								maxYVal = valY; 
2475
2476
2477
2478    			            
2479    			            if(dataDa!=null){ 
2480    			            minXVal = dataDa; 
2481
2482    			            if(dataA!=null){ 
2483    			            maxXVal = dataA; 
2484
2485    			            
2486    			            var padX = 0; 
2487    			            var padY = 0; 
2488    			            if(dati.length>1){ 
2489    			            padX = ((maxXVal - minXVal)*(pad-1))/2; 
2490    			//             padY = minYVal>0?((maxYVal - 0)*(pad-1))/2:((maxYVal - minYVal)*(pad-1))/2; 
2491    			            padY = ((maxYVal - minYVal)*(pad-1))/2; 
2492    			            }else{ 
2493    			            padX = 86401000; 
2494    			            padY = maxYVal*(pad-1); 
2495
2496    			            
2497    			            if(padY<0){ 
2498    			            padY=-padY; 
2499    			            }else if(padY==0){ 
2500    			            padY=2; 
2501
2502    			            
2503    			            var bounds = { 
2504    			            minX: dati.length>1?new Date(minXVal.getTime()):new Date(minXVal.getTime()-padX), 
2505    			            maxX: dati.length>1?new Date(maxXVal.getTime()):new Date(maxXVal.getTime()+2*padX), 
2506    			//             minY: minYVal>0?0:minYVal-padY, 
2507    			            minY: (minYVal-padY), 
2508    			            maxY: maxYVal+padY 
2509
2510    			            
2511    			            return bounds; 
2512    			           }, 
2513    			            zoomHandler: function() { 
2514    			              var c = this.plugins.cursor; 
2515    			              console.log(c); 
2516    			            }, 
2517    			            
2518    			           plotter: null, 
2519    					visualizzaGrafico : function (dati, dataDa, dataA){ 
2520    						var seriesToPlot; 
2521    						var datiBenchmarkFiltered = []; 
2522    						try{ 
2523    							if (typeof dataDa === 'undefined') dataDa = new Date(gestore.plotter.axes.xaxis.min); 
2524    							if (typeof dataA === 'undefined') dataA = new Date(gestore.plotter.axes.xaxis.max); 
2525    						}catch(e){ 
2526    							//console.log(e); 
2527
2528    						var minDate = jQuery("#datepickerDa").datepicker('getDate'),//.datepicker('option', 'minDate'), 
2529    							maxDate = jQuery("#datepickerA").datepicker('getDate'),//.datepicker('option', 'maxDate'), 
2530    							datiFondo = window.gestioneGrafico.tuttiIdatiDelGrafico().slice(), 
2531    							benchmarkSerie = window.gestioneGrafico.datiBenchmark().slice(); 
2532    						datiFondo.sort(function(a,b){ 
2533    								return a[0] - b[0]; 
2534    							}); 
2535    						 
2536    						var datiBenchmarkRebased = []; 
2537    						var minFondo = null;	 
2538     
2539    						for (var i = 0; i < datiFondo.length; i++){						 
2540    							if (!isNaN(datiFondo[i][0])){ 
2541    								datiFondo[i][0] = new Date(datiFondo[i][0]); 
2542
2543
2544    						 
2545    						for (var i = 0; i < datiFondo.length; i++){						 
2546    							if (datiFondo[i][0].sameDay(minDate)){ 
2547    								minFondo = datiFondo[i]; 
2548    								break; 
2549
2550
2551    						for (var i = 0; i < datiFondo.length; i++){						 
2552    							if (datiFondo[i][0] >= minDate){ 
2553    								minFondo = datiFondo[i]; 
2554    								break; 
2555
2556
2557    						if (minFondo == null) minFondo = datiFondo[0]; 
2558    						 
2559    						var maxFondo = null; 
2560    						 
2561    						for (var i = 0; i < datiFondo.length; i++){						 
2562    							if (datiFondo[i][0].sameDay(maxDate)){ 
2563    								maxFondo = datiFondo[i]; 
2564    								break; 
2565
2566
2567    						 
2568    						if(maxFondo == null){ 
2569    							for (var i = 0; i < datiFondo.length; i++){						 
2570    								if (datiFondo[i][0] > maxDate){ 
2571    									maxFondo = datiFondo[i]; 
2572    									break; 
2573
2574
2575
2576    						var datiFiltrati=[]; 
2577    						for(var i = 0; i < dati.length; i++){ 
2578    							if (window.gestioneGrafico.checkData(dati[i][0], minFondo[0], maxFondo[0], datiFondo)){ 
2579    								datiFiltrati.push(dati[i]); 
2580
2581
2582    						seriesToPlot = [datiFiltrati]; 
2583    						if (window.gestioneGrafico.datiBenchmark().length > 0 ){ 
2584    								console.log("maxFondo[0] "+ maxFondo[0]); 
2585    								for(var i = 0; i < benchmarkSerie.length; i++){ 
2586    									if (window.gestioneGrafico.checkData(benchmarkSerie[i][0], minFondo[0], maxFondo[0], datiFondo)){ 
2587    										datiBenchmarkFiltered.push(benchmarkSerie[i]); 
2588
2589
2590    								//dati ordinati per data 
2591    								datiBenchmarkFiltered.sort(function(a,b){ 
2592    										return a[0] - b[0]; 
2593    									}); 
2594    									 
2595    								datiFiltrati.sort(function(a,b){ 
2596    										return a[0] - b[0]; 
2597    									}); 
2598    								 
2599    								if (datiBenchmarkFiltered.length > 1){ 
2600    									 
2601    									for(var i=0;i<datiBenchmarkFiltered.length; i++){ 
2602    										 
2603    											if(datiBenchmarkFiltered[i][0].getTime() === minFondo[0].getTime() && (datiBenchmarkRebased == null || datiBenchmarkRebased.length == 0 )){ 
2604    												 
2605    												var rebased = datiBenchmarkFiltered[i].slice(); 
2606    												rebased[0] = rebased[0]; 
2607    												rebased[1] = minFondo[1];																		 
2608    												 
2609    												datiBenchmarkRebased.push(rebased); 
2610    												 
2611    											}else{ 
2612    												 
2613													if(i<1){ 
2614														var benchValue = datiBenchmarkFiltered[i][1]; 
2615													}else{ 
2616														var benchValue = ((datiBenchmarkFiltered[i][1]/datiBenchmarkFiltered[i-1][1])*datiBenchmarkRebased[i-1][1]).toFixed(5); 
2617
2618    												 
2619    												var rebased = datiBenchmarkFiltered[i].slice(); 
2620    												 
2621    												rebased[0] = rebased[0]; 
2622    												rebased[1] = benchValue;	 
2623    												datiBenchmarkRebased.push(rebased); 
2624
2625
2626
2627    								seriesToPlot.push(datiBenchmarkRebased); 
2628
2629    						var singlePoint = dati.length==1; 
2630    			                var bounds = this.getAxisBounds(dati, this.pad, dataDa, dataA, datiBenchmarkRebased); 
2631								var logaritmica = logaritmica; 
2632    			                console.log("Axis Bounds: " + bounds); 
2633    			                   if(this.plotter != null) 
2634    			                       this.plotter.destroy(); 
2635    			                   if(singlePoint){ 
2636    			                    dati.push(dati[0]); 
2637
2638    			                   this.plotter = jQuery.jqplot('chartdiv',  seriesToPlot,  
2639    			                       {  
2640    			                           title:{ 
2641    			                               text: '', 
2642    			                               show: false 
2643    			                           }, 
2644    			                           axesDefaults: { 
2645    			                           }, 
2646    			                           cursor:{ 
2647    			                                 show: true, 
2648    			                                 showTooltip: false, 
2649    			                                 zoom: false, 
2650    			                                 constrainZoomTo: 'x' 
2651    			                               }, 
2652    			                           seriesDefaults: { 
2653    			                                
2654    			                                color: '#fba881',      // CSS color spec to use for the line.  Determined automatically. 
2655    			                                showMarker: singlePoint,   // render the data point markers or not. 
2656    			                                fill: true,        // fill under the line, 
2657    			                                fillAndStroke: singlePoint,       // *stroke a line at top of fill area. 
2658    			                                fillColor: '#fba881', 
2659    			                                fillAlpha: 0.001,      // *custom alpha to apply to fillColor. 
2660    			                                shadow: false   // show shadow or not. 
2661    			                                 
2662    			                            }, 
2663    			                           axes:{ 
2664    			                               xaxis:  { 
2665    			                                   renderer:jQuery.jqplot.DateAxisRenderer, 
2666    			                                   min: bounds.minX, 
2667    			                                   max: bounds.maxX, 
2668    			                                   //min:minimo, 
2669    			                                   //max:maximo, 
2670    			                                   tickOptions: {formatString: '%d/%m/%Y'} 
2671    			                               }, 
2672    			                               yaxis: { 
2673    										    renderer:logaritmica==true?jQuery.jqplot.LogAxisRenderer:jQuery.jqplot.LinearAxisRenderer, 
2674    			                                min: bounds.minY, 
2675    			                                max: bounds.maxY, 
2676    			                                tickOptions: {formatString: '%#.3f' +  (divisaSimboloMap['${valutaFondoUno}']!=null?" " + divisaSimboloMap['${valutaFondoUno}']:" " + '${valutaFondoUno}') } 
2677
2678    			                           }, 
2679    			                           series:[{ 
2680    			                               lineWidth:2,  
2681    			                               markerOptions: 
2682
2683    			                                    style:'circle' 
2684
2685    			                                },{ 
2686    			                                lineWidth: 1,  
2687    			                                markerOptions: 
2688
2689    			                                    style:'circle' 
2690    			                                   }, 
2691    		    	                                color: '#0a4379',      // CSS color spec to use for the line.  Determined automatically. 
2692    												linePattern: 'dashed', 
2693    												lineWidth: 0.5, 
2694    		    	                                showMarker: singlePoint,   // render the data point markers or not. 
2695    		    	                                fill: false, 
2696    		    	                                shadow: false, 
2697    		    	                                rendererOptions: { 
2698    		    	                                    smooth: true 
2699
2700    			                                }], 
2701    			                            highlighter: { 
2702    			                                   show: true, 
2703    			                                   sizeAdjust: 7.5, 
2704    											   formatString: "%s - %#.3f"  
2705    			                                 }, 
2706    			                                 grid: { 
2707    			                                     drawGridLines: true,        // wether to draw lines across the grid or not. 
2708    			                                     gridLineColor: '#f0f1f6',    // *Color of the grid lines. 
2709    			                                     background: '#fff',      // CSS color spec for background color of grid. 
2710    			                                     borderColor: '#f0f1f6',     // CSS color spec for border around grid. 
2711    			                                     borderWidth: 1.0,           // pixel width of border around grid. 
2712    			                                     shadow: false,               // draw a shadow for grid. 
2713
2714    			                       }); 
2715    								    
2716    								    
2717    			               }, 
2718     
2719    				checkData: function(data, dStart, dEnd, datiFondo){ 
2720    						   		var dStart = typeof dStart == 'undefined'?null:dStart; 
2721    							    var dEnd = typeof dEnd == 'undefined'?null:dEnd;	            
2722    						   		 
2723    						   		if (dStart == null || dEnd == null){ 
2724    										for(var i=0; i<datiFondo.length; i++){ 
2725    										if(dStart == null || datiFondo[i][0] < dStart){ 
2726    											dStart = datiFondo[i][0]; 
2727
2728    										if(dEnd == null || datiFondo[i][0] > dEnd){ 
2729    											dEnd = datiFondo[i][0]; 
2730
2731
2732    					    	        }       		 
2733    							     if (data >= dStart && data <= dEnd){ 
2734    							    	return true; 
2735    							    }  
2736    						   		return false; 
2737
2738
2739    			        <#if !(!usaFondo ||(usaFondo && (!id_fondo?? || id_fondo.getData()=='')))> 
2740							 
2741    						<#if _listaRendimenti?size gt 0> 
2742    						 
2743    							jQuery.jqplot.sprintf.thousandsSeparator = ''; 
2744    							jQuery.jqplot.sprintf.decimalMark = ','; 
2745    							var gestore = gestioneGrafico; 
2746    							var datiDaVisualizzare = gestore.tuttiIdatiDelGrafico(); 
2747    							var bounds = gestioneGrafico.getAxisBounds(datiDaVisualizzare,this.pad); 
2748    							console.log('LIMITS'); 
2749    							console.log(bounds); 
2750    							// inizializzo i date picker con gli estremi delle date disponibili in base ai dati ricevuti 
2751    							jQuery("#datepickerDa").datepicker({ 
2752    								//showOtherMonths: false, 
2753    								//selectOtherMonths: false, 
2754    								changeMonth : true, 
2755    								changeYear : true, 
2756    								dateFormat : "dd/mm/yy", 
2757    								defaultDate : bounds.minX, 
2758    								minDate : bounds.minX, 
2759    								maxDate : bounds.maxX, 
2760    								onSelect : function() { 
2761    									jQuery("#datepickerA").datepicker('option', { 
2762    										minDate : jQuery(this).datepicker('getDate') 
2763    									}); 
2764    									updateGraphDatesFromDatePickers(); 
2765    									//updateDatePickers(); 
2766    								}, 
2767    							}, jQuery.datepicker.regional['it']); 
2768    							jQuery("#datepickerDa").datepicker("setDate", bounds.minX); 
2769    						     
2770    							jQuery("#datepickerA").datepicker({ 
2771    								changeMonth : true, 
2772    								changeYear : true, 
2773    								dateFormat : "dd/mm/yy", 
2774    								defaultDate : bounds.maxX, 
2775    								minDate : bounds.minX, 
2776    								maxDate : bounds.maxX, 
2777    								onSelect : function() { 
2778    									jQuery("#datepickerDa").datepicker('option', { 
2779    										maxDate : jQuery(this).datepicker('getDate') 
2780    									}); 
2781    									updateGraphDatesFromDatePickers(); 
2782    								}, 
2783    								beforeShow : function(input, inst) { 
2784    									inst.dpDiv.css({marginLeft: -input.offsetWidth + 'px'}); 
2785
2786    							}, jQuery.datepicker.regional['it']); 
2787    							jQuery("#datepickerA").datepicker("setDate",bounds.maxX); 
2788    							function updateGraphDatesFromDatePickers() { 
2789    								var dataDaStr = jQuery("#datepickerDa").val(); 
2790    								var dataAStr = jQuery("#datepickerA").val(); 
2791    								console.log("date cambiate: da " + dataDaStr + " a " + dataAStr); 
2792    								// Se date nulle usa gli estremi 
2793    								if (dataDaStr == '') 
2794    								{	 
2795    									dataDaStr = gestore.getADate("${_datiStorico.getDataInizialeString()}"); 
2796    									jQuery("#datepickerDa").val(dataDaStr); 
2797
2798    								if (dataAStr == '') 
2799
2800    									dataAStr = gestore.getADate("${_datiStorico.getDataFinaleString()}"); 
2801    									jQuery("#datepickerA").val(dataAStr); 
2802
2803    								var dataDa = gestore.getADate(dataDaStr); 
2804    								var dataA = gestore.getADate(dataAStr); 
2805    								// se la data è maggiore di data a non fare nulla 
2806    								if (dataDa >= dataA) 
2807    									return; 
2808     
2809    								gestore.plotter.axes.xaxis.min = dataDa; 
2810    								gestore.plotter.axes.xaxis.max = dataA; 
2811     
2812    								var interval = (dataA.getTime() - dataDa.getTime()) / 5; 
2813    								var ticks = []; 
2814    								var currTick = dataDa.getTime(); 
2815    								ticks.push(currTick); 
2816    								for (var i = 0; i < 5; i++) { 
2817    									currTick += interval; 
2818    									ticks.push(currTick); 
2819
2820     
2821    								gestore.plotter.axes.xaxis.ticks = ticks; 
2822    								//gestore.plotter.replot(); 
2823    								var datiDaVisualizzare = window.gestioneGrafico.tuttiIdatiDelGrafico(); 
2824    								window.gestioneGrafico.visualizzaGrafico(datiDaVisualizzare);	 
2825     
2826    								// Necessario per riabilitare zoom 
2827    								gestore.plotter.axes.xaxis.ticks = []; 
2828    							}; 
2829    			                if (Liferay.Browser.isIe() && Liferay.Browser.getVersion() < 9) 
2830
2831    								// carica script che emula il canvas poiché ie < 9 non lo supoporta 
2832    								var exCanvasScriptUrl = "${themeDisplay.getPathThemeRoot()}/js/portlet/rendimentiequotazioni/dettaglio/jqplot/excanvas/excanvas.min.js"; 
2833    								jQuery.getScript(exCanvasScriptUrl, function(data, textStatus, jqxhr) { 
2834    									gestore.visualizzaGrafico(datiDaVisualizzare); 
2835    									 
2836    									applyGradientOnPlot(); 
2837    									jQuery.jqplot.postDrawHooks.push(postDrawProcessing); 
2838    									updateAndamentoLabel(); 
2839    								}); 
2840
2841    							else 
2842
2843    								gestore.visualizzaGrafico(datiDaVisualizzare); 
2844    								applyGradientOnPlot(); 
2845    								jQuery.jqplot.postDrawHooks.push(postDrawProcessing); 
2846    								updateAndamentoLabel(); 
2847
2848    			                updateDatePickers(); 
2849    							updateGraphDatesFromDatePickers(); 
2850    							aggiornaPerformance(datiDaVisualizzare[0][0], datiDaVisualizzare[datiDaVisualizzare.length - 1][0]); 
2851    							jQuery( ".datePicker" ).change(updateGraphDatesFromDatePickers); 
2852								$('#datepickerDa').focus(function(){ 
2853									$('#datepickerDa').datepicker('show'); 
2854								}); 
2855 
2856								jQuery('#datepickerDa').click(function(){ 
2857									jQuery('#datepickerDa').datepicker('show'); 
2858								}); 
2859								jQuery('#datepickerA').focus(function(){ 
2860									jQuery('#datepickerA').datepicker('show'); 
2861								}); 
2862 
2863								jQuery('#datepickerA').click(function(){ 
2864									jQuery('#datepickerA').datepicker('show'); 
2865								}); 
2866    						</#if> 
2867    			        </#if> 
2868    			    }); 
2869    			</script> 
2870		     
2871		         
2872		</div> 
2873 
2874    </#if>  <#-- Fine Fondo_In_valuta #IF --> 
2875 
2876<#else> 
2877 
2878    <div class="template_rendimenti_e_quotazioni"> 
2879    	 
2880    	<#assign localeIT = localeUtil.fromLanguageId("it")> 
2881    	<#assign currentGroup = groupLocalService.getGroup(groupId)> 
2882    	<#assign checkDisplayDate = !currentGroup.isStagingGroup()> 
2883    	<#assign user = "">	 
2884    	 
2885    	<#if request?has_content && request.getRemoteUser()?has_content && request.getRemoteUser()!=""> 
2886    		<#assign user = userLocalService.getUserById(getterUtil.getLong(request.getRemoteUser()))> 
2887    	<#else> 
2888    		<#assign user = userLocalService.getDefaultUser(getterUtil.getLong(companyId))> 
2889    	</#if> 
2890    	 
2891    	<#assign current_url = request.getAttribute("CURRENT_URL")> 
2892    	<#assign catIdStr = httpUtil.decodeURL(httpUtil.getParameter(current_url, "catId", false))> 
2893    	<#assign catId = getterUtil.getLong(catIdStr)> 
2894    	<!-- catIdStr - catId --> 
2895    	<#assign subcatIdStr = httpUtil.decodeURL(httpUtil.getParameter(current_url, "subcatId", false))> 
2896    	<#assign subcatId = getterUtil.getLong(subcatIdStr)> 
2897    	<!-- subcatIdStr - subcatId --> 
2898    	<#assign categoria = httpUtil.decodeURL(httpUtil.getParameter(current_url, "categoria", false))> 
2899    	<!-- categoria --> 
2900    	<#assign sottoCategoria = httpUtil.decodeURL(httpUtil.getParameter(current_url, "sottocategoria", false))> 
2901    	<!-- $sottoCategoria --> 
2902    	 
2903    	<!-- Take layout id --> 
2904    	<#assign currentLayoutId = themeDisplay.getPlid()> 
2905    	<#assign currentLayout = layoutLocalService.getLayout(currentLayoutId)> 
2906    	 
2907    	<!-- parent layoutId --> 
2908    	<#assign currentLayoutParentPlid = currentLayout.getParentPlid()> 
2909    	<#assign currentLayoutParent = layoutLocalService.getLayout(currentLayoutParentPlid?number)> 
2910    	<#assign catKey = 0> 
2911		<#if validator.isNotNull(catId) && catId!=0> 
2912			<#assign catKey = assetCategoryPropertyLocalService.fetchCategoryProperty(catId, "chiave").getValue()> 
2913		</#if> 
2914		 
2915    	<#if validator.isNotNull(catKey)> 
2916    		<#assign catKey = assetCategoryLocalService.getAssetCategory(catId).getName()> 
2917    	</#if> 
2918		 
2919    	<#if validator.isNotNull(catId) && catId!=0> 
2920			<#assign catColor = assetCategoryPropertyLocalService.fetchCategoryProperty(catId, "colore").getValue()> 
2921    	</#if> 
2922		 
2923    	<#assign isOICR = false> 
2924    	 
2925    	 
2926    	<!-- pretitolo --> 
2927    	<#if getterUtil.getBoolean(visualizza_label_gestione_separata_associata.getData()) || catKey?lower_case == "rivalutabili"> 
2928    		<#assign pre_titolo_rendimento = "Gestione Separata"> 
2929    	<#elseif categoria?lower_case == "index linked"> 
2930    		<#assign pre_titolo_rendimento = "Indice"> 
2931    	<#elseif categoria?lower_case == "oicr"> 
2932    		<#assign pre_titolo_rendimento = "OICR"> 
2933    		<#assign isOICR = true> 
2934    	<#else> 
2935    		<#assign pre_titolo_rendimento = "Fondo"> 
2936    	</#if> 
2937    	 
2938    	<!-- valore dei fondi dal web content --> 
2939        <#assign valoreFondoUno =  confTool.getValoreFondoFromStr(valore_1.getData(), locale)> 
2940        <#assign valoreFondoDue =  confTool.getValoreFondoFromStr(valore_2.getData(), locale)> 
2941    	 
2942    	<#if getterUtil.getBoolean(usa_valori_da_fondo.getData())>  
2943		 
2944    	    <#assign usaFondo = true> 
2945    	     
2946    	    <!-- titolo --> 
2947        	<#assign titolo_rendimento = Titolo_rendimento.getData()> 
2948    	     
2949    	    <#if titolo_rendimento==""> 
2950    	        <#assign titolo_rendimento = Titolo_rendimento.getData()> 
2951    	    </#if> 
2952    	     
2953    	    <!-- valore e valuta dai fondi dal db --> 
2954    	    <#if validator.isNotNull(valoreFondoUno)> 
2955			 
2956    	        <#if validator.isNull(valoreFondoDue) || valoreFondoDue == "0" || valoreFondoDue == "0,000"> 
2957    	            <#assign valoreFondoUno =  confTool.getValoreFondoUnoFromDbLocale(id_fondo.getData(), locale)> 
2958    	            <#assign valoreFondoDue = "">	 
2959    	        <#else> 
2960    	            <#assign valoreFondoUno =  confTool.getValoreFondoUnoFromDbLocale(id_fondo.getData(), locale)> 
2961    	            <#assign valoreFondoDue =  confTool.getValoreFondoDueFromDbLocale(id_fondo.getData(), locale)>	 
2962    	        </#if> 
2963    	    <#else> 
2964    	        <#assign valoreFondoUno =  confTool.getValoreFondoUnoFromDbLocale(id_fondo.getData(),locale)> 
2965    	        <#assign valoreFondoDue =  confTool.getValoreFondoDueFromDbLocale(id_fondo.getData(),locale)>	 
2966    	    </#if> 
2967    	     
2968    	    <#if valoreFondoDue=="0" || valoreFondoDue == "0,000"> 
2969    	        <#assign valoreFondoDue = ""> 
2970    	    </#if> 
2971    	     
2972    	    <#assign valutaFondoUno =  confTool.getValutaFondoUnoFromDb(id_fondo.getData())> 
2973    	    <#assign valutaFondoDue =  confTool.getValutaFondoDueFromDb(id_fondo.getData())> 
2974    	     
2975    	    <!-- data aggiornamento valore --> 
2976    	    <#assign dataAggiornamentoValore = confTool.getDataAggiornamentoFondoFromDb(id_fondo.getData(),'dd MMM yyyy',localeIT)> 
2977    	     
2978    	    <!-- rating --> 
2979    	    <#assign ratings = confTool.getRatingsFromDb(id_fondo.getData())> 
2980    	 
2981    	<#else> 
2982		 
2983            <#assign usaFondo = false>  
2984    			             
2985    	    <!-- titolo --> 
2986    	    <#assign titolo_rendimento = Titolo_rendimento.getData()> 
2987    	 
2988    	    <!-- valuta dei fondi dal web content --> 
2989    	    <#assign valutaFondoUno =  valuta1.getData()> 
2990    	    <#assign valutaFondoDue =  valuta_2.getData()> 
2991    	     
2992    	    <!--  data aggiornamento valori --> 
2993			<#assign aggiornato_al_DateObj = dateUtil.parseDate("yyyy-MM-dd", getterUtil.getString(aggiornato_al.getData()), localeIT)> 
2994			<#assign dataAggiornamentoValore = dateUtil.getDate(aggiornato_al_DateObj, "dd MMM yyyy", localeIT)> 
2995    	     
2996    	    <!-- rating --> 
2997    	    <#assign ratings = Rating.getData()> 
2998    	     
2999    	</#if> 
3000    	         
3001        <!-- PRIMO BLOCCO --> 
3002        <#assign breadCrumb = confTool.getBreadcrumb(themeDisplay.getLayout(),themeDisplay) > 
3003		<#assign titolo_da_visualizzare = titolo_rendimento> 
3004        <div class="boxesDettaglio togliMargin"> 
3005            <div> 
3006                <div class="supTitle capitalize">${pre_titolo_rendimento}</div> 
3007    			<h1 class="titoloRendimento">${titolo_da_visualizzare}</h1> 
3008                 
3009                <#if Notifica_alert?? && Notifica_alert.getData() != ""> 
3010    						    	 
3011    		    	<div class="descrizioni notifica_alert">${Notifica_alert.getData()}</div> 
3012    		    	 
3013    		    	<#assign testoFascetta = confTool.getRendimentoParsed(article, themeDisplay.getLanguageId()).getTestoFascetta(article, themeDisplay.getLanguageId(), catId, subcatId)> 
3014    		    	<#if validator.isNotNull(testoFascetta)> 
3015    		    		<div class="fascetta_rendimento ${catColor}">${testoFascetta}</div> 
3016    		    	</#if> 
3017    		    	 
3018    		    </#if> 
3019                 
3020                <#assign strippedHtmlDescrizione = confTool.stripHTML(Descrizione_rendimento_e_quotazione.getData())?trim> 
3021                <#if validator.isNotNull(titolo_rendimento) && strippedHtmlDescrizione?lower_case != titolo_rendimento?trim?lower_case> 
3022                    <div class="descrizioni">${Descrizione_rendimento_e_quotazione.getData()}</div> 
3023                </#if> 
3024            </div> 
3025     
3026            <!-- blocco valore corrente valore protetto --> 
3027            <script type="text/javascript"> 
3028                 
3029            var divisaSimboloMap = { 
3030            'EUR': '&#8364;', 
3031            'USD': '$', 
3032            '':'', 
3033            '%':'%' 
3034            }; 
3035             
3036                jQuery(document).ready(function(){ 
3037                    var listaValuta=jQuery(".titoloValuta"); 
3038                    if (listaValuta!=null){ 
3039                        for (var i=0;i<listaValuta.length;i++){ 
3040                            if (listaValuta.get(i).innerHTML.indexOf(',')!=-1){ 
3041                                //                                 var index=listaValuta.get(i).outerHTML.indexOf(','); 
3042                                //                                 var html = listaValuta.get(i).outerHTML.substring(0,index+1) + "<span class='decimali'>" + listaValuta.get(i).outerHTML.substring(index+1,index+3) + "</span>" + listaValuta.get(i).outerHTML.substring(index+3,listaValuta.get(i).outerHTML.length); 
3043                                //                                 listaValuta.get(i).outerHTML = html; 
3044                                var listaValuta_split = listaValuta.get(i).innerHTML.split(','); 
3045                                var parteIntera = listaValuta_split[0]; 
3046                                if(listaValuta_split[1].indexOf(" ")){ 
3047                                    var listaValuta1_split = listaValuta_split[1].split(" "); 
3048                                    var parteDecimale = listaValuta1_split[0]; 
3049                                    var parteValuta = listaValuta1_split[1]; 
3050                                }else{ 
3051                                    var parteDecimale = listaValuta_split[1]; 
3052                                    var parteValuta = ""; 
3053
3054                                  
3055                                var parteValutaMap = (parteValuta!=""?" " + divisaSimboloMap[parteValuta]:""); 
3056                                console.log(parteValutaMap + "-" + parteValuta +" nicola" ); 
3057    							console.log (parteIntera + " parteIntera"); 
3058    							console.log (parteIntera + " parteIntera"); 
3059    							 
3060                                                                var html = parteIntera + ",<span class='decimali'>" + parteDecimale + "</span>" + (parteValutaMap!=" undefined"? parteValutaMap:parteValuta); 
3061                                listaValuta.get(i).innerHTML = html; 
3062                            }else{ 
3063                            console.log(listaValuta.get(i).innerHTML); 
3064                                if(listaValuta.get(i).innerHTML.indexOf(" ")!=-1){ 
3065                                var listaValuta_split = listaValuta.get(i).innerHTML.split(" "); 
3066                                var parteIntera = listaValuta_split[0]; 
3067                                var parteValuta = listaValuta_split[1]; 
3068                                    var parteValutaMap = (parteValuta!=""?" " + divisaSimboloMap[parteValuta]:""); 
3069                                    console.log(parteValutaMap + "-" + parteValuta ); 
3070                                var html = parteIntera + " " + (parteValutaMap!=" undefined"? parteValutaMap:parteValuta); 
3071                                        listaValuta.get(i).innerHTML = html; 
3072
3073
3074
3075
3076                }); 
3077            </script> 
3078			 
3079            <#if valoreFondoDue == "" > 
3080                <!-- blocco a singola colonna 3--> 
3081                 
3082                <div class="bloccoValori" > 
3083                    <h4 class="titoloValori">${Label_valore_corrente.getData()}</h4> 
3084                    <div class="bloccoValuta"> 
3085                        <h3 class="titoloValuta">${valoreFondoUno} ${valutaFondoUno}</h3> 
3086                        <h6 class="dataValuta">Aggiornato al ${dataAggiornamentoValore}</h6> 
3087                    </div> 
3088                </div> 
3089             
3090            <#else> 
3091             
3092                <!-- blocco a doppia colonna --> 
3093                <div class="valoriDoppioWrapper"> 
3094                    <div class="bloccoValori doppio first" > 
3095                        <h4 class="titoloValori">${Label_valore_corrente.getData()}</h4> 
3096                        <div class="bloccoValuta"> 
3097                            <h3 class="titoloValuta">${valoreFondoUno} ${valutaFondoUno}</h3> 
3098                            <h6 class="dataValuta">Aggiornato al ${dataAggiornamentoValore}</h6> 
3099                        </div> 
3100                    </div> 
3101                    <div class="bloccoValori doppio" > 
3102                        <h4 class="titoloValori">${Label_valore_protetto.getData()} 
3103    						<#if valore_1_min_garantito.getData()!=""> 
3104
3105    						</#if> 
3106    					</h4> 
3107                        <div class="bloccoValuta"> 
3108                            <h3 class="titoloValuta">${valoreFondoDue} ${valutaFondoDue}</h3> 
3109                            <h6 class="dataValuta">Aggiornato al ${dataAggiornamentoValore}</h6> 
3110                        </div> 
3111                    </div> 
3112                </div> 
3113                <#if validator.isNotNull(valore_1_min_garantito.getData())> 
3114                    <div class="caption"> 
3115    					*&nbsp;${valore_1_min_garantito.getData()} 
3116    				</div> 
3117    			</#if> 
3118            </#if> 
3119                 
3120            <div class="reset"> 
3121            	<#if isOICR && validator.isNotNull(Societa_di_gestione.getData())> 
3122            		<#assign labelSocietaGestione = "Societ&agrave; di gestione"> 
3123            		<#if validator.isNotNull(Label_societa_di_gestione.getData())> 
3124            			<#assign labelSocietaGestione = Label_societa_di_gestione.getData()> 
3125            		</#if> 
3126            		<div class="gestione"> 
3127            			<h6 class="">${labelSocietaGestione}: <strong>&nbsp;${Societa_di_gestione.getData()}</strong></h6> 
3128            		</div>	                		 
3129            	</#if> 
3130            	 
3131                <#if Istituto_emittente.getData() != ""> 
3132                    <h5 class="titolo">${Label_obbligazione_strutturata.getData()}</h5> 
3133                    <div class="istituto"> 
3134                        <h6 class="">${Label_istituto_emittente.getData()}: <strong>${Istituto_emittente.getData()}</strong></h6> 
3135                        <h6 class="">${Label_rating.getData()}: <strong>${Rating.getData()}</strong></h6> 
3136                    </div> 
3137                </#if> 
3138     
3139    			<#assign Data_scadenza_to_show = ''> 
3140                <#if validator.isNotNull(Data_scadenza.getData())> 
3141					<#assign Data_scadenza_DateObj = dateUtil.parseDate("yyyy-MM-dd", getterUtil.getString(Data_scadenza.getData()), localeIT)> 
3142    				<!-- 01/01/2100 --> 
3143    				<#if dateUtil.compareTo(Data_scadenza_DateObj, dateUtil.newDate(4102441200000)) lt 0 > 
3144    					<#assign Data_scadenza_to_show = 'Scadenza ' + dateUtil.getDate(Data_scadenza_DateObj, "dd/MM/yyyy", localeIT)> 
3145    				</#if> 
3146    			</#if> 
3147     
3148    			<#if validator.isNotNull(Data_scadenza_to_show)> 
3149    				<h6 class="scadenza nomobile"><strong>${Data_scadenza_to_show}</strong></h6> 
3150    			</#if> 
3151            </div> 
3152             
3153    		<!-- Da agganciare nel momento in cui caricano i contenuti derivati --> 
3154    		<div class="reset"> 
3155                <#if Istituto_emittente_derivata?? && Istituto_emittente_derivata.getData() != ""> 
3156                    <h5 class="titolo">${Label_obbligazione_derivata.getData()}</h5> 
3157                    <div class="istituto derivata"> 
3158                        <h6 class="">${Label_istituto_emittente_derivata.getData()}:<strong>${Istituto_emittente_derivata.getData()}</strong></h6> 
3159                        <h6 class="">${Label_rating_derivata.getData()}:<strong>${Rating_derivata.getData()}</strong></h6> 
3160                    </div> 
3161                </#if> 
3162                 
3163                <#if validator.isNotNull(Data_scadenza_to_show)> 
3164                    <h6 class="scadenza onlymobile"><strong>$Data_scadenza_to_show</strong></h6> 
3165    			</#if> 
3166     
3167            </div> 
3168                 
3169        </div> 
3170         
3171        <!-- FINE PRIMO BLOCCO --> 
3172    					 
3173    					         
3174    	<!-- SECONDO BLOCCO (GRAFICO STORICO) -->         
3175         
3176		<#assign _listaRendimenti = []> 
3177        <#if !(!usaFondo ||(usaFondo && (!id_fondo?? || id_fondo.getData()=='')))> 
3178            <div class="boxesDettaglio storicGraph"> 
3179                <#assign _datiStorico = confTool.getDatiStorico(id_fondo.getData())> 
3180                <#assign _listaRendimenti = _datiStorico.getValoriRendimenti()> 
3181             
3182                <div class="reset"> 
3183                    <h5 class="titolo"> 
3184                        Andamento performance  
3185                        <small class="">Dati aggiornati al ${confTool.getDataAggiornamentoFondoFromDb(id_fondo.getData(),'dd MMM yyyy',localeIT)}</small> 
3186                    </h5> 
3187     
3188                <#if _listaRendimenti?size gt 0> 
3189                    <div class="graficoRendimento" > 
3190                        <div id="chartdiv"></div> 
3191                    </div> 
3192                    <div class="datePickers reset"> 
3193                        <p class="inizio"> 
3194                            <input type="text" class="datePicker" id="datepickerDa" value="${_datiStorico.getDataInizialeString()}" /> 
3195                        </p> 
3196                        <p class="fine"> 
3197                            <input type="text" class="datePicker" id="datepickerA" value="${_datiStorico.getDataFinaleString()}" /> 
3198                        </p> 
3199                    </div> 
3200                    <p class="reset">Visualizzazione andamento dal <span id="andamentoDa"></span> al <span id="andamentoA"></span></p> 
3201                    <p class="reset" style="font-style:italic"> 
3202                    	Attenzione: i valori passati non sono indicativi di quelli futuri. 
3203                    </p> 
3204                </#if> 
3205                </div> 
3206            </div>		     
3207        </#if> 
3208         
3209        <!-- FINE SECONDO BLOCCO --> 
3210    		     
3211        <!-- BLOCCO PROSPETTO --> 
3212        <#if !( 
3213            !Colonna_prospetto.getSiblings()?has_content ||  
3214            (Colonna_prospetto.getSiblings()?size==1 && Colonna_prospetto.getSiblings()[0].getData()=='' && 
3215            (!Colonna_prospetto.getSiblings()[0].Allegato_prospetto.getSiblings()?has_content ||  
3216            (Colonna_prospetto.getSiblings()[0].Allegato_prospetto.getSiblings()?size == 1 && Colonna_prospetto.getSiblings()[0].Allegato_prospetto.getSiblings()[0].getData()=='') 
3217            )))>  
3218             
3219            <div class="boxesDettaglio togliMargin"> 
3220                <div class="reset">            
3221                 
3222                    <h5 class="titolo prospetto">${label_prospetto.getData()}</h5> 
3223                    <p class="">${descrizione_prospetto.getData()}</p> 
3224                 
3225                </div> 
3226         
3227                <#if Colonna_prospetto.getSiblings()?has_content> 
3228                <div class="table"> 
3229                 
3230                    <div class="row theader"> 
3231                        <div class="cell"> 
3232                            <!-- prima colonnavuota --> 
3233                        </div> 
3234    		            <#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto>  
3235    		                <div class="cell"> 
3236    		                    ${cur_Colonna_prospetto.getData()} 
3237    		                </div> 
3238    		            </#list> 
3239                    </div> 
3240         
3241                    <#if Tipo_generazione_righe_prospetto.getData()=="dinamico"> 
3242         
3243                        <#if Nome_Riga_Prospetto.getSiblings()?has_content> 
3244                            <#assign contatore_righe = 0> 
3245                             
3246                            <#list Nome_Riga_Prospetto.getSiblings() as cur_Nome_Riga_Prospetto> 
3247                                <div class="row"> 
3248                                    <div class="cell"> 
3249                                        <div class="">${cur_Nome_Riga_Prospetto.getData()}</div> 
3250                                    </div> 
3251         
3252                                    <#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto1>  
3253                                        <div class="cell"> 
3254                                            <#assign contatore_allegati = 0> 
3255                                            <#assign allegatoUrl = ''> 
3256                                             
3257                                            <#list cur_Colonna_prospetto1.Allegato_prospetto.getSiblings() as allegato> 
3258                                             
3259                                                <#if contatore_allegati == contatore_righe> 
3260                                                    <#assign allegatoUrl = allegato.getData()> 
3261                                                </#if> 
3262                                                <#assign contatore_allegati = contatore_allegati + 1> 
3263                                            </#list> 
3264                                             
3265                                            <#assign dlFileVersion = ''> 
3266    										<#if validator.isNotNull(allegatoUrl)> 
3267    											<#assign dlFileVersion = confTool.getLatestDLFileVersion(allegatoUrl, checkDisplayDate)> 
3268    										</#if> 
3269    										<#if validator.isNotNull(dlFileVersion)> 
3270    	                                       	<a class="icona icon-file" href="${allegatoUrl}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
3271    	                                    <#else> 
3272    	                                    	<div>&mdash;</div> 
3273                                            </#if> 
3274                                        </div> 
3275                                    </#list>                         
3276                                </div> 
3277         
3278                                <#assign contatore_righe = contatore_righe + 1> 
3279                            </#list> 
3280                         
3281                        </div> 
3282         
3283                        </#if> 
3284                    </#if> 
3285                </#if> 
3286         
3287         
3288                <#if Tipo_generazione_righe_prospetto.getData()=="quadrimestrali"> 
3289                    <div class="row"> 
3290                        <div class="cell"> 
3291                            <div class="">Composizione al 31/03</div> 
3292                        </div> 
3293                         
3294                        <#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto1> 
3295                            <div class="cell"> 
3296                                <#assign contatore_allegati = 0> 
3297                                <#assign allegatoUrl = ''> 
3298                                <#list cur_Colonna_prospetto1.Allegato_prospetto.getSiblings() as allegato> 
3299                                    <#if contatore_allegati == 0> 
3300                                        <#assign allegatoUrl = allegato.getData()> 
3301                                    </#if> 
3302                                    <#assign contatore_allegati = contatore_allegati + 1> 
3303                                </#list> 
3304                                 
3305                                <#assign dlFileVersion = ''> 
3306    							<#if validator.isNotNull(allegatoUrl)> 
3307    								<#assign dlFileVersion = confTool.getLatestDLFileVersion(allegatoUrl, checkDisplayDate)> 
3308    							</#if> 
3309    							<#if validator.isNotNull(dlFileVersion)> 
3310    	                            <a class="icona icon-file" href="${allegatoUrl}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
3311                                <#else>    
3312                                    <div>&mdash;</div> 
3313                                </#if> 
3314                            </div> 
3315                        </#list> 
3316                    </div> 
3317                     
3318                    <div class="row"> 
3319                        <div class="cell"> 
3320                            <div class="">Composizione al 30/06</div> 
3321                        </div> 
3322                         
3323                        <#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto2> 
3324                            <div class="cell"> 
3325                                <#assign contatore_allegati = 0> 
3326                                <#assign allegatoUrl = ''> 
3327                                <#list cur_Colonna_prospetto2.Allegato_prospetto.getSiblings() as allegato> 
3328                                    <#if contatore_allegati == 1> 
3329                                        <#assign allegatoUrl = allegato.getData()> 
3330                                    </#if> 
3331                                    <#assign contatore_allegati = contatore_allegati + 1> 
3332                                </#list> 
3333                                 
3334                                <#assign dlFileVersion = ''> 
3335    							<#if validator.isNotNull(allegatoUrl)> 
3336    								<#assign dlFileVersion = confTool.getLatestDLFileVersion(allegatoUrl, checkDisplayDate)> 
3337    							</#if> 
3338    							<#if validator.isNotNull(dlFileVersion)> 
3339    	                            <a class="icona icon-file" href="${allegatoUrl}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
3340                                <#else>    
3341                                    <div>&mdash;</div> 
3342                                </#if> 
3343                            </div> 
3344                        </#list> 
3345                    </div> 
3346                     
3347                    <div class="row"> 
3348                        <div class="cell"> 
3349                            <div class="">Composizione al 30/09</div> 
3350                        </div> 
3351                         
3352                        <#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto3> 
3353                            <div class="cell"> 
3354                                <#assign contatore_allegati = 0> 
3355                                <#assign allegatoUrl = ''> 
3356                                <#list cur_Colonna_prospetto3.Allegato_prospetto.getSiblings() as allegato> 
3357                                    <#if contatore_allegati == 2> 
3358                                        <#assign allegatoUrl = allegato.getData()> 
3359                                    </#if> 
3360                                    <#assign contatore_allegati = contatore_allegati + 1> 
3361                                </#list> 
3362                                 
3363                                <#assign dlFileVersion = ''> 
3364    							<#if validator.isNotNull(allegatoUrl)> 
3365    								<#assign dlFileVersion = confTool.getLatestDLFileVersion(allegatoUrl, checkDisplayDate)> 
3366    							</#if> 
3367    							<#if validator.isNotNull(dlFileVersion)> 
3368    	                            <a class="icona icon-file" href="${allegatoUrl}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
3369                                <#else>    
3370                                    <div>&mdash;</div> 
3371                                </#if> 
3372                            </div> 
3373                        </#list> 
3374                    </div> 
3375                     
3376                    <div class="row"> 
3377                        <div class="cell"> 
3378                            <div class="">Composizione al 31/12</div> 
3379                        </div> 
3380                         
3381                        <#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto4> 
3382                            <div class="cell"> 
3383                                <#assign contatore_allegati = 0> 
3384                                <#assign allegatoUrl = ''> 
3385                                <#list cur_Colonna_prospetto4.Allegato_prospetto.getSiblings() as allegato> 
3386                                    <#if contatore_allegati == 3> 
3387                                        <#assign allegatoUrl = allegato.getData()> 
3388                                    </#if> 
3389                                    <#assign contatore_allegati = contatore_allegati + 1> 
3390                                </#list> 
3391                                 
3392                                <#assign dlFileVersion = ''> 
3393    							<#if validator.isNotNull(allegatoUrl)> 
3394    								<#assign dlFileVersion = confTool.getLatestDLFileVersion(allegatoUrl, checkDisplayDate)> 
3395    							</#if> 
3396    							<#if validator.isNotNull(dlFileVersion)> 
3397    	                            <a class="icona icon-file" href="${allegatoUrl}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
3398                                <#else>    
3399                                    <div>&mdash;</div> 
3400                                </#if> 
3401                            </div> 
3402                        </#list> 
3403                    </div> 
3404                </#if> 
3405            </div> 
3406        </#if> 
3407             
3408        <!-- INIZIO BLOCCO SMARTPHONE PROSPETTO --> 
3409        <#if !( 
3410    	    !Colonna_prospetto.getSiblings()?has_content ||  
3411    	    (Colonna_prospetto.getSiblings()?size==1 && Colonna_prospetto.getSiblings()[0].getData()=='' && 
3412    	    (!Colonna_prospetto.getSiblings()[0].Allegato_prospetto.getSiblings()?has_content ||  
3413    	    (Colonna_prospetto.getSiblings()[0].Allegato_prospetto.getSiblings()?size == 1 && Colonna_prospetto.getSiblings()[0].Allegato_prospetto.getSiblings()[0].getData()=='') 
3414    	    )))>  
3415        	<div class="table_smart secondaTab prospetto" style="display:none"> 
3416        		<table> 
3417        			<tbody>                                
3418        				 
3419        				<#assign tipo_colonne_prospetto = Tipo_generazione_righe_prospetto.getData()> <!-- in realta per gli smart le righe sono colonne --> 
3420        				<#if tipo_colonne_prospetto == "dinamico">  
3421         
3422        					<tr class="intestazione_smart"> 
3423    							<td colspan="1">Anno</td>    
3424    							<#list Nome_Riga_Prospetto.getSiblings() as cur_Nome_Col_Prospetto> 
3425    								<td colspan="1">${cur_Nome_Col_Prospetto.getData()}</td> 
3426    							</#list> 
3427    						</tr> 
3428         
3429        					<#if Colonna_prospetto.getSiblings()?has_content> 
3430        						<#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto> 
3431        							<#assign velocityCount = cur_Colonna_prospetto?index/> 
3432    						        <#if velocityCount % 2 == 0> 
3433    									<tr class="pari"> 
3434    								<#elseif velocityCount % 2 == 1> 
3435    									<tr class="dispari"> 
3436    								</#if> 
3437    								 
3438    								        <td>${cur_Colonna_prospetto.getData()}</td> 
3439    										<#list cur_Colonna_prospetto.Allegato_prospetto.getSiblings() as allegato>  
3440    											<#assign allegatoUrl = ''>  
3441    											<td>                                        
3442    												<#assign allegatoUrl = allegato.getData()>  
3443    												<#assign dlFileVersion = ''> 
3444    												<#if validator.isNotNull(allegatoUrl)> 
3445    													<#assign dlFileVersion = confTool.getLatestDLFileVersion(allegatoUrl, checkDisplayDate)> 
3446    												</#if> 
3447    												<#if validator.isNotNull(dlFileVersion)> 
3448    													<a class="icona icon-file" href="${allegatoUrl}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
3449    												<#else>    
3450    													<div>&mdash;</div> 
3451    												</#if> 
3452    											</td> 
3453    										</#list> 
3454    									</tr> 
3455    						    </#list> 
3456    						</#if> 
3457         
3458        				<#elseif tipo_colonne_prospetto == "quadrimestrali"> 
3459         
3460        					<tr class="intestazione_smart"> 
3461        						<td colspan="1">Anno</td>    
3462        						<td colspan="1">31Mar</td> 
3463        						<td colspan="1">30Giu</td> 
3464        						<td colspan="1">30Set</td> 
3465        						<td colspan="1">31Dic</td> 
3466        					</tr> 
3467         
3468        					<#if Colonna_prospetto.getSiblings()?has_content> 
3469         
3470        						<#list Colonna_prospetto.getSiblings() as cur_Colonna_prospetto> 
3471        							<#assign velocityCount = cur_Colonna_prospetto?index/> 
3472    						        <#if velocityCount % 2 == 0> 
3473    									<tr class="pari"> 
3474    								<#elseif velocityCount % 2 == 1> 
3475    									<tr class="dispari"> 
3476    								</#if> 
3477    								 
3478    								        <td>${cur_Colonna_prospetto.getData()}</td> 
3479    												  
3480    										<#assign contatore_allegati = 0>                                        
3481    										<#list cur_Colonna_prospetto.Allegato_prospetto.getSiblings() as allegato> 
3482    											<#assign allegatoUrl = ''> 
3483    											 <td>    
3484    												<#assign allegatoUrl = allegato.getData()> 
3485    												<#assign dlFileVersion = ''> 
3486    												<#if validator.isNotNull(allegatoUrl)> 
3487    													<#assign dlFileVersion = confTool.getLatestDLFileVersion(allegatoUrl, checkDisplayDate)> 
3488    												</#if> 
3489    												<#if validator.isNotNull(dlFileVersion)>                                           
3490    													<a class="icona icon-file" href="${allegatoUrl}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
3491    												<#else>    
3492    													<div>&mdash;</div> 
3493    												</#if> 
3494    											</td> 
3495    										</#list>                                     
3496    									</tr> 
3497    						    </#list> 
3498    	                    </#if> 
3499        				</#if> 
3500        			</tbody> 
3501        		</table> 
3502        	</div> 
3503        </#if> 
3504    		     
3505        <!-- FINE BLOCCO SMARTPHONE PROSPETTO --> 
3506         
3507        <!-- BLOCCO INDICI --> 
3508         
3509        <#if !( 
3510            (!Indici_titolo_alto?has_content || Indici_titolo_alto.getData()=='') &&  
3511            (!Label_titolo_valore_iniziale_titoli?has_content || Label_titolo_valore_iniziale_titoli.getData()=='') &&  
3512            (!Label_titolo_tabella_valore_iniziale_indici?has_content || Label_titolo_tabella_valore_iniziale_indici.getData()=='') &&  
3513            (!Label_titolo_tabella_prestazioni_annuali?has_content || Label_titolo_tabella_prestazioni_annuali.getData()=='') &&  
3514            (!Indici_titolo_basso?has_content || Indici_titolo_basso.getData()=='') &&  
3515    (!titolo_box_tabella?has_content || titolo_box_tabella.getData()=='') 
3516            )> 
3517            <div class="boxesDettaglio togliMargin"> 
3518                <div class="reset"> 
3519                    <h5 class="titolo">${Indici_titolo_alto.getData()}</h5> 
3520                    <p class="">${Indici_descrizione_alta.getData()}</p> 
3521     
3522                    <#if !(!Label_titolo_valore_iniziale_titoli?has_content || Label_titolo_valore_iniziale_titoli.getData()=='')> 
3523    	                <#assign fileEntryPath = Nome_allegato_valore_iniziale_titoli.Allegato_valore_iniziale_titoli.getData()>		 
3524    					<#assign dlFileVersion = ''>					 
3525    					<#if validator.isNotNull(fileEntryPath)> 
3526    						<#assign dlFileVersion = confTool.getLatestDLFileVersion(fileEntryPath, checkDisplayDate)> 
3527    					</#if> 
3528    					 
3529    					<#if validator.isNotNull(dlFileVersion)> 
3530    	                	<h6 class="titolo">${Label_titolo_valore_iniziale_titoli.getData()}</h6> 
3531    						<div class="archivi">					 
3532    						   <a href="${fileEntryPath}?version=${dlFileVersion.getVersion()}" target="_blank"> 
3533    								<h6> 
3534    									<span class="icona icon-file"></span> 
3535    									<div>${Nome_allegato_valore_iniziale_titoli.getData()}</div> 
3536    								</h6> 
3537    							</a> 
3538    						</div> 
3539    					</#if> 
3540                    </#if> 
3541     
3542                    <#if Label_titolo_tabella_valore_iniziale_indici.getData() != ""> 
3543            			 <h6 class="titolo indici">${Label_titolo_tabella_valore_iniziale_indici.getData()}</h6> 
3544                    </div> 
3545                    <div class="table"> 
3546                         
3547                        <#if Riga_valore_iniziale_indici_colonna_1.getSiblings()?has_content> 
3548    			                     
3549    	                    <#list Riga_valore_iniziale_indici_colonna_1.getSiblings() as cur_Riga_valore_iniziale_indici_colonna_1> 
3550    		                    <div class="row"> 
3551    		                        <div class="cell"> 
3552    		                            ${cur_Riga_valore_iniziale_indici_colonna_1.getData()} 
3553    		                        </div> 
3554    		                         
3555    		                        <div class="cell"> 
3556    		                            ${cur_Riga_valore_iniziale_indici_colonna_1.Riga_valore_iniziale_indici_data_emissione.getData()} 
3557    		                        </div> 
3558    		                         
3559    		                        <div class="cell"> 
3560    		                            ${cur_Riga_valore_iniziale_indici_colonna_1.Riga_valore_iniziale_indici_colonna_3.getData()} 
3561    		                        </div> 
3562    		                    </div> 
3563    	                    </#list> 
3564    	                     
3565    	                </#if> 
3566                    
3567                    </div> 
3568             
3569                    <!-- INIZIO BLOCCO SMARTPHONE SECONDA TABELLA --> 
3570                    <div class="table_smart secondaTab"> 
3571                        <#if Riga_valore_iniziale_indici_colonna_1.getSiblings()?has_content> 
3572                            <table> 
3573                                <tbody> 
3574                                    <#list Riga_valore_iniziale_indici_colonna_1.getSiblings() as cur_Riga_valore_iniziale_indici_colonna_1> 
3575                                        <#assign velocityCount = cur_Riga_valore_iniziale_indici_colonna_1?index/> 
3576                                        <#if velocityCount!=1> 
3577                                			<tr class="intestazione_smart"> 
3578                                			    <td colspan="2">${cur_Riga_valore_iniziale_indici_colonna_1.getData()}</td> 
3579                                			</tr> 
3580                                			<tr class="pari"> 
3581                                    			<td>${Riga_valore_iniziale_indici_colonna_1.getSiblings()[0].Riga_valore_iniziale_indici_data_emissione.getData()}</td> 
3582                                			    <td>${cur_Riga_valore_iniziale_indici_colonna_1.Riga_valore_iniziale_indici_data_emissione.getData()}</td> 
3583                                			</tr> 
3584                                			<tr class="dispari"> 
3585                                			    <td>${Riga_valore_iniziale_indici_colonna_1.getSiblings()[0].Riga_valore_iniziale_indici_colonna_3.getData()}</td> 
3586                                			    <td>${cur_Riga_valore_iniziale_indici_colonna_1.Riga_valore_iniziale_indici_colonna_3.getData()}</td> 
3587                                			</tr> 
3588                            			</#if> 
3589                                    </#list> 
3590                                </tbody> 
3591                             </table> 
3592                        </#if> 
3593                    </div> 
3594                    <!-- FINE BLOCCO SMARTPHONE SECONDA TABELLA --> 
3595     
3596                    <div class="reset tab"> 
3597                        </#if> 
3598                        <#if Label_titolo_tabella_prestazioni_annuali.getData() != ""> 
3599        					<h6 class="titolo">${Label_titolo_tabella_prestazioni_annuali.getData()}</h6> 
3600        					<#if Prestazione_annuale_data_label.getSiblings()?has_content> 
3601        				</div> 
3602        				 
3603                        <div class="table"> 
3604                        	<#list Prestazione_annuale_data_label.getSiblings() as cur_Prestazione_annuale_data_label> 
3605            					<div class="row"> 
3606            						<div class="cell"> 
3607            							${cur_Prestazione_annuale_data_label.getData()} 
3608            						</div> 
3609            						 
3610            						<div class="cell"> 
3611            							${cur_Prestazione_annuale_data_label.Prestazione_annuale_percentuale.getData()} 
3612            						</div> 
3613            					</div> 
3614        					</#list> 
3615        				 
3616        				</div> 
3617     
3618                    	<!-- INZIO BLOCCO SMARTPHONE --> 
3619                    	<div class="table_smart terzaTab"> 
3620                    		<table> 
3621                    			<tbody> 
3622                    				 <#list Prestazione_annuale_data_label.getSiblings() as cur_Prestazione_annuale_data_label> 
3623                    				 	<#assign velocityCount = cur_Prestazione_annuale_data_label?index/> 
3624    									<#if velocityCount==1> 
3625    										<tr class="intestazione_smart"> 
3626    											<td>${cur_Prestazione_annuale_data_label.getData()}</td> 
3627    											<td class="presta_ann">${cur_Prestazione_annuale_data_label.Prestazione_annuale_percentuale.getData()}</td> 
3628    										</tr> 
3629    									<#elseif velocityCount%2==0> 
3630    										<tr class="pari"> 
3631    											<td>${cur_Prestazione_annuale_data_label.getData()}</td> 
3632    											<td>${cur_Prestazione_annuale_data_label.Prestazione_annuale_percentuale.getData()}</td> 
3633    										</tr> 
3634    									<#elseif velocityCount%2==1> 
3635    										<tr class="dispari"> 
3636    											<td>${cur_Prestazione_annuale_data_label.getData()}</td> 
3637    											<td>${cur_Prestazione_annuale_data_label.Prestazione_annuale_percentuale.getData()}</td> 
3638    										</tr> 
3639    									</#if> 
3640    								</#list> 
3641    							</tbody> 
3642    						</table> 
3643    					</div> 
3644    					  
3645                		<!-- FINE BLOCCO SMARTPHONE --> 
3646                    </#if> 
3647    			</#if> 
3648     
3649                <!-- INIZIO BLOCCO TABELLA NxM --> 
3650    			<#list titolo_box_tabella.getSiblings() as cur_titolo_box_tabella> 
3651    				<div class="reset"> 
3652    			        <#assign tipoTabella = cur_titolo_box_tabella.tipo_tabella.getData()> 
3653    			        <#assign descrizioneTabella = $cur_titolo_box_tabella.descrizione_tabella.getData()> 
3654    			        <#if descrizioneTabella!=''> 
3655    						<h5 class="titolo prospetto"> 
3656    							${cur_titolo_box_tabella.getData()} 
3657    						</h5> 
3658    						<p class="">${descrizioneTabella}</p> 
3659    			        <#else> 
3660    						<h6 class="titolo"> 
3661    							${cur_titolo_box_tabella.getData()} 
3662    						</h6> 
3663    			        </#if> 
3664    			    </div> 
3665        
3666                    <!-- controllo che la prima riga sia valorizzata altrimenti non la stampo --> 
3667    				<#assign contTheaderVisible = 0> 
3668    				<#list cur_titolo_box_tabella.intestazione_tabella.th_tabella.getSiblings() as cur_th_tabella> 
3669    					<#if cur_th_tabella.getData()?has_content> 
3670    						<#assign contTheaderVisible = contTheaderVisible + 1> 
3671    						<#break> 
3672    					</#if> 
3673    				</#list> 
3674      
3675                    <#assign contRowVisible = 0> 
3676    				<#if cur_titolo_box_tabella.tr_tabella?has_content> 
3677    					<#list cur_titolo_box_tabella.tr_tabella.getSiblings() as cur_tr_tabella> 
3678    						<#if cur_tr_tabella.getData()?has_content> 
3679    							<#assign contRowVisible = contRowVisible + 1> 
3680    							<#break> 
3681    						<#else> 
3682    						    <#if cur_tr_tabella.td_tabella?has_content> 
3683    								<#list cur_tr_tabella.td_tabella.getSiblings() as cur_td_tabella> 
3684    									<!-- se di tipo testo stampo il campo td_tabella --> 
3685    									<#if tipoTabella?lower_case == 'testo'> 
3686    										<#if cur_td_tabella.getData()?has_content> 
3687    											<#assign contRowVisible = contRowVisible + 1> 
3688    											<#break> 
3689    										</#if> 
3690    									</#if> 
3691    									<!-- se di tipo documento stampo il campo td_allegato_url --> 
3692    									<#if tipoTabella?lower_case == 'documento'> 
3693    										<#if cur_td_tabella.td_allegato_url.getData() && cur_td_tabella.td_allegato_url.getData() != ''> 
3694    											<#assign contRowVisible = contRowVisible + 1> 
3695    											<#break> 
3696    										</#if> 
3697    									</#if> 
3698    								</#list> 
3699    							</#if> 
3700    						</#if> 
3701    					</#list> 
3702    				</#if> 
3703     
3704                    <#if (contTheaderVisible gt 0 || cur_titolo_box_tabella.intestazione_tabella.getData()?has_content) || contRowVisible gt 0> 
3705    			        <div class="table"> 
3706    			  
3707    					<#if contTheaderVisible gt 0 || cur_titolo_box_tabella.intestazione_tabella.getData()?has_content> 
3708    					   <div class="row theader"> 
3709    					<#else> 
3710    			           <div class="row theader" style="display:none;"> 
3711    			        </#if> 
3712     
3713    			        <div class="cell"> 
3714    						${cur_titolo_box_tabella.intestazione_tabella.getData()} 
3715    			        </div> 
3716    			        
3717    			        <#list cur_titolo_box_tabella.intestazione_tabella.th_tabella.getSiblings() as cur_th_tabella> 
3718    						<div class="cell"> 
3719    							${cur_th_tabella.getData()} 
3720    						</div> 
3721    			        </#list> 
3722    			        
3723    			        </div> 
3724    					<#if cur_titolo_box_tabella.tr_tabella.isEmpty()?has_content> 
3725    						<#assign rowCount = 0> 
3726    						<#assign velocityCount = 0> 
3727    						<#list cur_titolo_box_tabella.tr_tabella.getSiblings() as cur_tr_tabella> 
3728    							<#assign velocityCount = cur_tr_tabella?index/> 
3729    							<#assign rowCount = velocityCount> 
3730    							<div class="row"> 
3731    								<#if rowCount==1> 
3732    									<div class="cell" style="border-top-color: #D9E2EA; border-top-style: solid; border-top-width: 1px;"> 
3733    								<#else> 
3734    									<div class="cell"> 
3735    								</#if> 
3736    								 
3737    								<div class="">${cur_tr_tabella.getData()}</div> 
3738    							</div> 
3739    							 
3740    							<#if cur_tr_tabella.td_tabella.isEmpty()?has_content> 
3741    								<#list cur_tr_tabella.td_tabella.getSiblings() as cur_td_tabella>          
3742    									<#if rowCount==1> 
3743    										<div class="cell" style="border-top-color: #D9E2EA; border-top-style: solid; border-top-width: 1px;"> 
3744    									<#else> 
3745    										<div class="cell"> 
3746    									</#if> 
3747    									 
3748    									<!-- se di tipo testo stampo il campo td_tabella --> 
3749    									<#if tipoTabella?lower_case == 'testo'> 
3750    										${cur_td_tabella.getData()} 
3751    									</#if> 
3752    									 
3753    									<!-- se di tipo documento stampo il campo td_allegato_url --> 
3754    									<#if tipoTabella?lower_case == 'documento'> 
3755    										<#assign fileEntryPath = cur_td_tabella.td_allegato_url.getData()> 
3756     
3757    										<#assign dlFileVersion = ''>					 
3758    										<#if validator.isNotNull(fileEntryPath)> 
3759    											<#assign dlFileVersion =$confTool.getLatestDLFileVersion(fileEntryPath, checkDisplayDate)> 
3760    										</#if> 
3761    										<#if validator.isNotNull(dlFileVersion)> 
3762    											<a class="icona icon-file" href="${fileEntryPath}?version=${dlFileVersion.getVersion()}" target="_blank"></a> 
3763    										<#else>  
3764    											<div>&mdash;</div> 
3765    										</#if> 
3766    									</#if> 
3767    									</div> 
3768    								</#list> 
3769    							</#if> 
3770    							</div> 
3771    							<!-- end if in piu --> 
3772    						</#list> 
3773    						</div> 
3774    					</#if> 
3775    				</#if> 
3776    			</#list> 
3777    			<!-- FINE BLOCCO TABELLA NxM --> 
3778    			  
3779    			  
3780    			<div class="reset"> 
3781    				<h5 class="titolo">${Indici_titolo_basso.getData()}</h5> 
3782    			 
3783    				<p class="">${Indici_descrizione_bassa.getData()}</p> 
3784    			</div> 
3785    				 
3786    		</div> 
3787    	</div> <!-- boxesDettaglio togliMargin --> 
3788     
3789        </#if>     
3790        <!-- FINE BLOCCO INDICI --> 
3791         
3792        <!-- BLOCCO (DOWNLOADS BOXES) --> 
3793        
3794        <#if !(Download_box_label?? && Download_box_label.getData()?has_content && (!Download_box_label.getSiblings()?has_content ||  
3795            (Download_box_label.getSiblings()?size==1 &&  
3796            (!Download_box_label.getSiblings()[0].getData()?has_content || Download_box_label.getSiblings()[0].getData()=='') && 
3797            (!Download_box_label.getSiblings()[0].Nome_allegato.getSiblings()?has_content || 
3798            (Download_box_label.getSiblings()[0].Nome_allegato.getSiblings()?size==1 && 
3799            (!Download_box_label.getSiblings()[0].Nome_allegato.getSiblings().getData()?has_content || Download_box_label.getSiblings()[0].Nome_allegato.getSiblings()[0].getData()=='') 
3800            )))))>             
3801             
3802            <#list Download_box_label.getSiblings() as cur_Download_box_label>	                 
3803                <div class="boxesDettaglio togliMargin"> 
3804                    <div class="reset download"> 
3805    					<#if getterUtil.getBoolean(cur_Download_box_label.conteggio_file.getData())> 
3806    						<#assign file_number = cur_Download_box_label.Nome_allegato.getSiblings()?size> 
3807    						<h5 class="titolo">${cur_Download_box_label.getData()} ( ${file_number} file )</h5> 
3808    					<#else> 
3809    						<h5 class="titolo download">${cur_Download_box_label.getData()}</h5> 
3810    					</#if> 
3811    					<#if cur_Download_box_label.Nome_allegato.getSiblings()?has_content> 
3812    						<div class="archivi"> 
3813    							<#list cur_Download_box_label.Nome_allegato.getSiblings() as cur_Download_box> 
3814    							 
3815    								<#assign fileEntryPath = cur_Download_box.Allegato_url.getData()> 
3816     
3817    								<#assign dlFileVersion = ''>					 
3818    								<#if validator.isNotNull(fileEntryPath)> 
3819    									<#assign dlFileVersion = confTool.getLatestDLFileVersion(fileEntryPath, checkDisplayDate)> 
3820    								</#if> 
3821    								<#if validator.isNotNull(dlFileVersion)> 
3822    									<#if cur_Download_box.tipo_allegato.getData()=="excel"> 
3823    										<a href="${fileEntryPath}?version=${dlFileVersion.getVersion()}" target="_blank"> 
3824    											<h6> 
3825    												<span class="icona icon-copy"></span> 
3826    									<#else> 
3827    										<a href="${fileEntryPath}?version=${dlFileVersion.getVersion()}" target="_blank"> 
3828    											<h6> 
3829    												<span class="icona icon-file"></span>                      
3830    									</#if> 
3831    												<div>${cur_Download_box.getData()}</div> 
3832    											</h6> 
3833    										</a> 
3834    								</#if> 
3835    							</#list> 
3836    						</div> 
3837    					</#if> 
3838                    </div> 
3839                </div> 
3840            </#list> 
3841    	</#if> 
3842         
3843    	<!-- FINE BLOCCO (DOWNLOADS BOXES) -->       
3844     
3845        <!-- BLOCCO DISCLAIMER --> 
3846        <footer> 
3847            <p class="caption disclaimer">${disclaimer.getData()}</p> 
3848        </footer> 
3849        <!-- FINE BLOCCO DISCLAIMER --> 
3850         
3851<#-- 		LINK AL TOP	--> 
3852<#--        <a href="#Top" class="back-to-top" title="Torna a inizio pagina">	--> 
3853<#--            TORNA A INIZIO PAGINA <span class="icona icon-angle-up"></span>	--> 
3854<#--      </a>	--> 
3855<#-- 		FINE LINK AL TOP	--> 
3856     
3857        <script type="text/javascript"> 
3858         
3859         
3860         
3861        jQuery(document).ready(function(){ 
3862         
3863            /* Nasconde, se presente lo span che contiene la pagina di dettaglio */ 
3864            if(jQuery(".breadcrumbs .elementi span").length) { 
3865                jQuery(".breadcrumbs .elementi span").hide();    
3866
3867             
3868            if(jQuery("html").is(".smartphone")) 
3869
3870                convertTableToDivs(); 
3871                swipeProspetto(); 
3872                jQuery(".boxesDettaglio.togliMargin .bloccoValori").first().before("<div class='carousel-menu'></div>"); 
3873                jQuery(".boxesDettaglio.togliMargin .bloccoValori").first().before("<div class='carousel-items'></div>"); 
3874                jQuery(".boxesDettaglio.togliMargin .bloccoValori").appendTo(".boxesDettaglio.togliMargin .carousel-items"); 
3875                 
3876                jQuery(".boxesDettaglio.togliMargin .bloccoValori").wrap("<div class='carousel-item'></div>"); 
3877                 
3878                var bullet=jQuery('<span class="carousel-menu-index">&bull;</span>'); 
3879                 
3880                /* creo l'elenco delle slide */ 
3881                jQuery(".boxesDettaglio.togliMargin .carousel-item").each(function(){ 
3882                bullet.clone().appendTo(".boxesDettaglio.togliMargin .carousel-menu"); 
3883                }); 
3884                 
3885                var car = ISP.carousel('.boxesDettaglio.togliMargin .carousel-items', '.boxesDettaglio.togliMargin .carousel-menu'); 
3886                
3887                car.play(); 
3888
3889        }); 
3890         
3891        function updateAndamentoLabel(){ 
3892        jQuery("#andamentoDa").html(jQuery("#datepickerDa").val()); 
3893        jQuery("#andamentoA").html(jQuery("#datepickerA").val()); 
3894
3895         
3896        function applyGradientOnPlot(){ 
3897        var canvasSeries = jQuery(".jqplot-series-canvas")[0]; 
3898        var ctx = canvasSeries.getContext("2d"); 
3899        var my_gradient=ctx.createLinearGradient(0,0,0,300); 
3900        my_gradient.addColorStop(0, "rgba(251,168,129,0.6)"); 
3901        my_gradient.addColorStop(1, "rgba(251,168,129,0.1)"); 
3902        ctx.fillStyle = my_gradient; 
3903        ctx.fill(); 
3904
3905         
3906        function updateDatePickers(){ 
3907        //Aggiorniamo i datepicker con i reali valori visualizzati dal grafico. Necessario per via del padding. 
3908           //jQuery("#datepickerDa").datepicker("setDate", new Date(gestioneGrafico.plotter.axes.xaxis.min)); 
3909          
3910        	var dataInizialeDefault = jQuery("#dataDefaultVisualizzazionediv").text(); 
3911           	    
3912           if(dataInizialeDefault.length>0){ 
3913        	var dataNuova = new Date (dataInizialeDefault); 
3914         
3915        	jQuery("#datepickerDa").datepicker("setDate", new Date(dataInizialeDefault)); 
3916           }else{ 
3917         	jQuery("#datepickerDa").datepicker("setDate", new Date(gestioneGrafico.plotter.axes.xaxis.min)); 
3918
3919          
3920          
3921          jQuery("#datepickerA").datepicker("setDate", new Date(gestioneGrafico.plotter.axes.xaxis.max)); 
3922          jQuery('#datepickerDa').datepicker('option', 'minDate', new Date(gestioneGrafico.plotter.axes.xaxis.min)); 
3923          jQuery('#datepickerDa').datepicker('option', 'maxDate', new Date(gestioneGrafico.plotter.axes.xaxis.max)); 
3924          jQuery('#datepickerA').datepicker('option', 'minDate', new Date(gestioneGrafico.plotter.axes.xaxis.min)); 
3925          jQuery('#datepickerA').datepicker('option', 'maxDate', new Date(gestioneGrafico.plotter.axes.xaxis.max)); 
3926
3927         
3928        function aggiornaPerformance(dataIniziale, dataFinale){ 
3929        var dati = window.gestioneGrafico.datiTraLeDate(dataIniziale, dataFinale); 
3930         
3931        var valoreIniziale = dati[0][1]; 
3932        var valoreFinale = dati[dati.length - 1][1]; 
3933         
3934        var performance = ((valoreFinale - valoreIniziale) / valoreIniziale) * 100; 
3935        if(!isNumber(performance)){ 
3936        performance = 0; 
3937
3938        var performance_rounded = +performance.toFixed(2); 
3939         
3940        var performance_split = []; 
3941        if(performance_rounded.toString().indexOf(".")>0){ 
3942        performance_split = performance_rounded.toString().split("."); 
3943        }else{ 
3944        performance_split[0] = performance_rounded; 
3945        performance_split[1] = 0; 
3946
3947        jQuery(".bloccoValori.performance .titoloValuta").html(performance_split[0] + (performance_split[1]!=0?",<span class='decimali'>" + performance_split[1] + "</span>":"") + " %"); 
3948
3949         
3950        function postDrawProcessing(){ 
3951            console.log("postDrawHooks!"); 
3952            applyGradientOnPlot(); 
3953              
3954            var dataIniziale = new Date(gestioneGrafico.plotter.axes.xaxis.min); 
3955            var dataFinale = new Date(gestioneGrafico.plotter.axes.xaxis.max); 
3956              
3957        	aggiornaPerformance(dataIniziale, dataFinale); 
3958         
3959            var dataInizialeStr = jQuery.datepicker.formatDate('dd/mm/yy', dataIniziale) 
3960            var dataFinaleStr = jQuery.datepicker.formatDate('dd/mm/yy', dataFinale); 
3961         
3962            //aggiorno solo se diverso per evitare di far scattare onchange 
3963            if (dataInizialeStr!=jQuery("#datepickerDa").val()) { 
3964            	console.log('aggiorno data iniziale da ' + jQuery("#datepickerDa").val() + ' a ' + dataInizialeStr); 
3965            	jQuery("#datepickerDa").datepicker("setDate", dataIniziale); 
3966
3967            if (dataFinaleStr!=jQuery("#datepickerA").val()) { 
3968           		console.log('aggiorno data finale da ' + jQuery("#datepickerA").val() + ' a ' + dataFinaleStr); 
3969        		jQuery("#datepickerA").datepicker("setDate", dataFinale); 
3970
3971              
3972            updateAndamentoLabel(); 
3973
3974          
3975        function isNumber(n) { 
3976          return !isNaN(parseFloat(n)) && isFinite(n); 
3977
3978         
3979        jQuery(document).ready(function() { 
3980         
3981            jQuery.jsDate.regional['it-IT'] = { 
3982                monthNames: ['Gennaio','Febbraio','Marzo','Aprile','Maggio','Giugno','Luglio','Agosto','Settembre','Ottobre','Novembre','Dicembre'], 
3983                monthNamesShort: ['Gen','Feb','Mar','Apr','Mag','Giu','Lug','Ago','Set','Ott','Nov','Dic'], 
3984                dayNames: ['Domenica','Lunedi','Martedi','Mercoledi','Giovedi','Venerdi','Sabato'], 
3985                dayNamesShort: ['Dom','Lun','Mar','Mer','Gio','Ven','Sab'], 
3986                formatString: '%d-%m-%Y %H:%M:%S' 
3987            }; 
3988            jQuery.jsDate.regional.getLocale(); 
3989         
3990            //Spostato qui perché voglio essere sicuro che gestioneGrafico sia inizializzato quando viene chiamato in questa funzione. 
3991            //window.gestioneGrafico garantisce che è una variabile globale! -RC 
3992        window.gestioneGrafico = { 
3993         
3994            //Gestione del pad manuale perché quando si impostano un minimo e un massimo per gli assi il pad è ignorato. -RC 
3995            pad: 1.1,  
3996         
3997               tuttiIdatiDelGrafico : function() {  
3998                     
3999                   var tuttiIDati =[]; 
4000                        
4001                   <#list _listaRendimenti as storicoBean> 
4002	                   tuttiIDati.push([this.getADate('${storicoBean.getDataAggiornamentoStr()}'),'${storicoBean.getValoreFondoUno()}']); 
4003	               </#list> 
4004                    
4005                    //ritorno una copia dell'array che contiene tutti i dati 
4006                   return tuttiIDati.slice(); 
4007               }, 
4008                
4009               getADate: function (dataStr) 
4010
4011                   //console.log("getADate dataStr" + dataStr); 
4012                   if (dataStr == null) 
4013                       return; 
4014                    var partiData = dataStr.split("/"); 
4015                    var day = partiData[0]; 
4016                    var month = partiData[1] - 1; 
4017                    var year = partiData[2]; 
4018                    //console.log("year " + year + " month" + month + " day " + day) 
4019                    var aDate = new Date(year, month, day, 0, 0, 0, 0); 
4020                    return aDate; 
4021               }, 
4022                
4023               datiTraLeDate : function (dataDa, dataA){ 
4024                   //console.log("datiTraLeDate dataDa " + dataDa + " dataA " + dataA); 
4025                    
4026                   var tuttiIdati = this.tuttiIdatiDelGrafico(); 
4027                   //cerco l'elemento minimo superiore a dataDa  
4028                   //cerco l'elemnto massimo inferiore a dataA 
4029                   //l'array di dati originali è gia ordinato per data 
4030                   var indiceDellaDataMinore = -1; 
4031                   var indiceDellaDataMaggiore = -1; 
4032                   var currDate; 
4033                   //cerco la prima data subito superiore a dataDa 
4034                   for (var i=0; i< tuttiIdati.length; i++) { 
4035                      currDate = moment(tuttiIdati[i][0]).hours(0).minutes(0).seconds(0); 
4036                      if((currDate.isAfter(dataDa)||(currDate.isSame(dataDa))) && (currDate.isBefore(dataA)||currDate.isSame(dataA))) { 
4037                          indiceDellaDataMinore = i; 
4038                         break; 
4039
4040                   }   
4041                    //cerco la prima data subito inveriore  a dataA 
4042                   for (var i=tuttiIdati.length -1; i>=0; i--) { 
4043                      currDate = moment(tuttiIdati[i][0]).hours(0).minutes(0).seconds(0); 
4044                      if((currDate.isBefore(dataA)|| currDate.isSame(dataA)) && (currDate.isAfter(dataDa)||currDate.isSame(dataDa))) { 
4045                          indiceDellaDataMaggiore = i; 
4046                         break; 
4047
4048
4049                   //a questo punto ho gli indici delle date minore e maggiore, taglio l'array 
4050                   var nDiElementi  = indiceDellaDataMaggiore - indiceDellaDataMinore + 1; 
4051                   console.log("nDiElementi" + nDiElementi); 
4052                   var nuovoRange = tuttiIdati.splice(indiceDellaDataMinore,nDiElementi); 
4053                   //se 0 risultati creo un array con dati [[dataIniziale, 0], [dataFinale, 0]] 
4054                   if (nuovoRange.length == 0){ 
4055                       console.log("ritorno un range vuoto"); 
4056                       nuovoRange = [["{$_datiStorico.getDataInizialeString()}"][0],["{$_datiStorico.getDataFinaleString()}"][0]]; 
4057
4058                   //se il ragendati ha un solo valore ritorno due valori per far si che il valore sia visibile sul grafico 
4059        //                if (nuovoRange.length == 1){ 
4060        //                    console.log("ritorno un range 1"); 
4061        //                    nuovoRange.push(nuovoRange[0]); 
4062        //                } 
4063                   console.log("nuovo range" + nuovoRange); 
4064                   return nuovoRange; 
4065               }, 
4066               getAxisBounds: function(dati, pad, dataDa, dataA){ 
4067                var _pad = (pad==null||typeof pad == 'undefined')?0:pad; 
4068                var _dataDa = typeof dataDa == 'undefined'?null:dataDa; 
4069                var _dataA = typeof dataA == 'undefined'?null:dataA; 
4070                
4071                var minXVal = null; 
4072                var maxXVal = null; 
4073                //Vogliamo che Y parta da 0 o dal minimo valore minore di 0 
4074                var minYVal = null; 
4075                var maxYVal = null; 
4076                
4077                for(var i=0; i<dati.length; i++){ 
4078                var valY = parseFloat(dati[i][1]); 
4079                if(_dataDa==null&&(minXVal==null||dati[i][0]<minXVal)){ 
4080                minXVal = dati[i][0]; 
4081
4082                if(_dataA==null&&(maxXVal==null||dati[i][0]>maxXVal)){ 
4083                maxXVal = dati[i][0]; 
4084
4085                if(minYVal==null||valY<minYVal){ 
4086                minYVal = valY; 
4087
4088                if(maxYVal==null||valY>maxYVal){ 
4089                maxYVal = valY; 
4090
4091
4092                
4093                if(dataDa!=null){ 
4094                minXVal = dataDa; 
4095
4096                if(dataA!=null){ 
4097                maxXVal = dataA; 
4098
4099                
4100                var padX = 0; 
4101                var padY = 0; 
4102                if(dati.length>1){ 
4103                padX = ((maxXVal - minXVal)*(pad-1))/2; 
4104        //             padY = minYVal>0?((maxYVal - 0)*(pad-1))/2:((maxYVal - minYVal)*(pad-1))/2; 
4105                padY = ((maxYVal - minYVal)*(pad-1))/2; 
4106                }else{ 
4107                padX = 86401000; 
4108                padY = maxYVal*(pad-1); 
4109
4110                
4111                if(padY<0){ 
4112                padY=-padY; 
4113                }else if(padY==0){ 
4114                padY=2; 
4115
4116                
4117                var bounds = { 
4118                minX: dati.length>1?new Date(minXVal.getTime()):new Date(minXVal.getTime()-padX), 
4119                maxX: dati.length>1?new Date(maxXVal.getTime()):new Date(maxXVal.getTime()+2*padX), 
4120        //             minY: minYVal>0?0:minYVal-padY, 
4121                minY: minYVal-padY, 
4122                maxY: maxYVal+padY 
4123
4124                
4125                return bounds; 
4126               }, 
4127                zoomHandler: function() { 
4128                  var c = this.plugins.cursor; 
4129                  console.log(c); 
4130                }, 
4131                
4132               plotter: null, 
4133                    
4134                   visualizzaGrafico : function (dati, dataDa, dataA){ 
4135                    var singlePoint = dati.length==1; 
4136                    var bounds = this.getAxisBounds(dati, this.pad, dataDa, dataA); 
4137					var logaritmica = logaritmica; 
4138                    console.log("Axis Bounds: " + bounds); 
4139                       if(this.plotter != null) 
4140                           this.plotter.destroy(); 
4141                       if(singlePoint){ 
4142                        dati.push(dati[0]); 
4143
4144                       this.plotter = jQuery.jqplot('chartdiv',  [dati],  
4145                           {  
4146                               title:{ 
4147                                   text: '', 
4148                                   show: false 
4149                               }, 
4150                               axesDefaults: { 
4151        //                             numberTicks: 5 
4152                                   // a factor multiplied by the data range on the axis to give the 
4153                                   // axis range so that data points don't fall on the edges of the axis. 
4154                               }, 
4155                               cursor:{ 
4156                                     show: true, 
4157                                     showTooltip: false, 
4158                                     zoom: true, 
4159                                     constrainZoomTo: 'x' 
4160                                   }, 
4161                               seriesDefaults: { 
4162                                    
4163                                    color: '#fba881',      // CSS color spec to use for the line.  Determined automatically. 
4164                                    showMarker: singlePoint,   // render the data point markers or not. 
4165                                    fill: true,        // fill under the line, 
4166                                    fillAndStroke: singlePoint,       // *stroke a line at top of fill area. 
4167                                    fillColor: '#fba881', 
4168                                    fillAlpha: 0.001,      // *custom alpha to apply to fillColor. 
4169                                    shadow: false   // show shadow or not. 
4170                                     
4171                                }, 
4172                               axes:{ 
4173                                   xaxis:  { 
4174                                       renderer:jQuery.jqplot.DateAxisRenderer, 
4175                                       min: bounds.minX, 
4176                                       max: bounds.maxX, 
4177                                       tickOptions: {formatString: '%d/%m/%Y'} 
4178                                   }, 
4179                                   yaxis: { 
4180        						   renderer:logaritmica==true?jQuery.jqplot.LogAxisRenderer:jQuery.jqplot.LinearAxisRenderer, 
4181                                    min: bounds.minY, 
4182                                    max: bounds.maxY, 
4183                                    tickOptions: {formatString: '%#.3f' +  (divisaSimboloMap['${valutaFondoUno}']!=null?" " + divisaSimboloMap['${valutaFondoUno}']:" " + '${valutaFondoUno}') } 
4184
4185                               }, 
4186                               series:[{ 
4187                                   lineWidth:2,  
4188                                   markerOptions: 
4189
4190                                        style:'circle' 
4191
4192                                    }], 
4193                                highlighter: { 
4194                                       show: true, 
4195                                       sizeAdjust: 7.5 
4196                                     }, 
4197                                     grid: { 
4198                                         drawGridLines: true,        // wether to draw lines across the grid or not. 
4199                                         gridLineColor: '#f0f1f6',    // *Color of the grid lines. 
4200                                         background: '#fff',      // CSS color spec for background color of grid. 
4201                                         borderColor: '#f0f1f6',     // CSS color spec for border around grid. 
4202                                         borderWidth: 1.0,           // pixel width of border around grid. 
4203                                         shadow: false,               // draw a shadow for grid. 
4204
4205                                  
4206                           }); 
4207        				    
4208
4209
4210         
4211            <#if !(!usaFondo ||(usaFondo && (!id_fondo?? || id_fondo.getData()=='')))> 
4212							 
4213				<#if _listaRendimenti?size gt 0> 
4214        		 
4215        			jQuery.jqplot.sprintf.thousandsSeparator = ''; 
4216        			jQuery.jqplot.sprintf.decimalMark = ','; 
4217        		 
4218        			var gestore = gestioneGrafico; 
4219        			var datiDaVisualizzare = gestore.tuttiIdatiDelGrafico(); 
4220        			var bounds = gestioneGrafico.getAxisBounds(datiDaVisualizzare, this.pad); 
4221        		 
4222        			// inizializzo i date picker con gli estremi delle date disponibili in base ai dati ricevuti 
4223        			jQuery("#datepickerDa").datepicker({ 
4224        				// showOtherMonths: true, 
4225        				// selectOtherMonths: true, 
4226        				changeMonth : true, 
4227        				changeYear : true, 
4228        				dateFormat : "dd/mm/yy", 
4229        				defaultDate : bounds.minX, 
4230        				minDate : bounds.minX, 
4231        				maxDate : bounds.maxX, 
4232        				onSelect : function() { 
4233        					jQuery("#datepickerA").datepicker('option', { 
4234        						minDate : jQuery(this).datepicker('getDate') 
4235        					}); 
4236        					updateGraphDatesFromDatePickers(); 
4237        					// jQuery(this).change(); 
4238        					// jQuery(this).blur(); 
4239
4240        			// defaultDate: gestore.getADate("$_datiStorico.getDataInizialeString()"), 
4241        			// minDate : gestore.getADate("$_datiStorico.getDataInizialeString()"), 
4242        			// maxDate : gestore.getADate("$_datiStorico.getDataFinaleString()") 
4243        			}, jQuery.datepicker.regional['it']); 
4244        			jQuery("#datepickerA").datepicker({ 
4245        				changeMonth : true, 
4246        				changeYear : true, 
4247        				dateFormat : "dd/mm/yy", 
4248        				defaultDate : bounds.maxX, 
4249        				minDate : bounds.minX, 
4250        				maxDate : bounds.maxX, 
4251        				onSelect : function() { 
4252        					jQuery("#datepickerDa").datepicker('option', { 
4253        						maxDate : jQuery(this).datepicker('getDate') 
4254        					}); 
4255        					updateGraphDatesFromDatePickers(); 
4256        					// jQuery(this).change(); 
4257        					// jQuery(this).blur(); 
4258        				}, 
4259        				beforeShow : function(input, inst) { 
4260        					inst.dpDiv.css({marginLeft: -input.offsetWidth + 'px'}); 
4261        		 
4262
4263        			// defaultDate: gestore.getADate("$_datiStorico.getDataInizialeString()"), 
4264        			// minDate : gestore.getADate("$_datiStorico.getDataInizialeString()"), 
4265        			// maxDate : gestore.getADate("$_datiStorico.getDataFinaleString()") 
4266        			}, jQuery.datepicker.regional['it']); 
4267        		 
4268        			function updateGraphDatesFromDatePickers() { 
4269        				var dataDaStr = jQuery("#datepickerDa").val(); 
4270        				var dataAStr = jQuery("#datepickerA").val(); 
4271        				console.log("date cambiate: da " + dataDaStr + " a " + dataAStr); 
4272        				// Se date nulle usa gli estremi 
4273        				if (dataDaStr == '') 
4274        				{	 
4275        					dataDaStr = gestore.getADate("${_datiStorico.getDataInizialeString()}"); 
4276        					jQuery("#datepickerDa").val(dataDaStr); 
4277
4278        				if (dataAStr == '') 
4279
4280        					dataAStr = gestore.getADate("${_datiStorico.getDataFinaleString()}"); 
4281        					jQuery("#datepickerA").val(dataAStr); 
4282
4283        				var dataDa = gestore.getADate(dataDaStr); 
4284        				var dataA = gestore.getADate(dataAStr); 
4285        				// se la data è maggiore di data a non fare nulla 
4286        				if (dataDa >= dataA) 
4287        					return; 
4288         
4289        				gestore.plotter.axes.xaxis.min = dataDa; 
4290        				gestore.plotter.axes.xaxis.max = dataA; 
4291         
4292        				var interval = (dataA.getTime() - dataDa.getTime()) / 5; 
4293        				var ticks = []; 
4294        				var currTick = dataDa.getTime(); 
4295        				ticks.push(currTick); 
4296        				for (var i = 0; i < 5; i++) { 
4297        					currTick += interval; 
4298        					ticks.push(currTick); 
4299
4300         
4301        				gestore.plotter.axes.xaxis.ticks = ticks; 
4302         
4303        				gestore.plotter.replot(); 
4304         
4305        				// Necessario per riabilitare zoom 
4306        				gestore.plotter.axes.xaxis.ticks = []; 
4307         
4308        				// applyGradientOnPlot(); 
4309            
4310        			}; 
4311        		 
4312                    if (Liferay.Browser.isIe() && Liferay.Browser.getVersion() < 9) 
4313
4314        				// carica script che emula il canvas poiché ie < 9 non lo supoporta 
4315        				var exCanvasScriptUrl = "${themeDisplay.getPathThemeRoot()}/js/portlet/rendimentiequotazioni/dettaglio/jqplot/excanvas/excanvas.min.js"; 
4316        				jQuery.getScript(exCanvasScriptUrl, function(data, textStatus, jqxhr) { 
4317        					gestore.visualizzaGrafico(datiDaVisualizzare); 
4318        					updateDatePickers(); 
4319        					applyGradientOnPlot(); 
4320        					jQuery.jqplot.postDrawHooks.push(postDrawProcessing); 
4321        					updateAndamentoLabel(); 
4322        				}); 
4323        		 
4324
4325        			else 
4326
4327        				gestore.visualizzaGrafico(datiDaVisualizzare); 
4328        				updateDatePickers(); 
4329        				applyGradientOnPlot(); 
4330        				jQuery.jqplot.postDrawHooks.push(postDrawProcessing); 
4331        				updateAndamentoLabel(); 
4332
4333        			updateGraphDatesFromDatePickers(); 
4334        			aggiornaPerformance(datiDaVisualizzare[0][0], datiDaVisualizzare[datiDaVisualizzare.length - 1][0]); 
4335        			 
4336        			 
4337        			jQuery( ".datePicker" ).change(updateGraphDatesFromDatePickers); 
4338					 
4339        		</#if> 
4340				 
4341            </#if> 
4342         
4343             
4344        }); 
4345        </script> 
4346     
4347    </div> 
4348 
4349    <style> 
4350     
4351        .boxesDettaglio .datePickers p .datePicker { 
4352        position: absolute; 
4353        display: block; 
4354        height: 30px; 
4355        width: 105px; 
4356        margin: 0; 
4357        padding: 4px 3px; 
4358        background: transparent; 
4359        color: #fff; 
4360        border: medium none; 
4361        box-shadow: none; 
4362        cursor: pointer; 
4363        z-index: 100; 
4364
4365        .aui .supTitle { 
4366        color: #2d769d; 
4367        text-align: left; 
4368        padding: 0; 
4369        margin: 0; 
4370        font-size: 18px; 
4371        font-weight: normal; 
4372        }	 
4373     
4374    </style> 
4375 
4376</#if> 
4377 
4378 
4379 
4380 
4381<script type="text/javascript" src="${themeDisplay.getPathThemeRoot()}/js/portlet/rendimentiequotazioni/dettaglio/jqplot/jquery.jqplot.min.js"></script> 
4382<script type="text/javascript" src="${themeDisplay.getPathThemeRoot()}/js/portlet/rendimentiequotazioni/dettaglio/jqplot/excanvas/excanvas.min.js"></script> 
4383<script type="text/javascript" src="${themeDisplay.getPathThemeRoot()}/js/portlet/rendimentiequotazioni/dettaglio/jqplot/plugins/jqplot.dateAxisRenderer.min.js"></script> 
4384<script type="text/javascript" src="${themeDisplay.getPathThemeRoot()}/js/portlet/rendimentiequotazioni/dettaglio/jqplot/plugins/jqplot.highlighter.min.js"></script> 
4385<script type="text/javascript" src="${themeDisplay.getPathThemeRoot()}/js/portlet/rendimentiequotazioni/dettaglio/jqplot/plugins/jqplot.cursor.min.js"></script> 
4386<script type="text/javascript" src="${themeDisplay.getPathThemeRoot()}/js/portlet/rendimentiequotazioni/dettaglio/jqplot/plugins/jqplot.logAxisRenderer.js"></script>