General Assemblies (Italian language only)

The General Assembly, organized annually, is Assofond's main associative event. The private part of the Assembly is usually flanked by a public conference during which, thanks to the contribution of speakers inside and outside the association, topical issues of interest to the industry are discussed.

Back 2020 Assofond General Assembly

An error occurred while processing the template.
The following has evaluated to null or missing:
==> fileEntryURLParts[3]  [in template "20115#20151#40871" at line 153, column 42]

----
Tip: It's the final [] step that caused this error, not those before it.
----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign fileEntryUuid = fileEntryURLP...  [in template "20115#20151#40871" at line 153, column 17]
----
1<#assign serviceContext = staticUtil["com.liferay.portal.kernel.service.ServiceContextThreadLocal"].getServiceContext()> 
2<#assign dlAppLocalService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLAppLocalService")> 
3<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")> 
4 
5<#assign themeDisplay = serviceContext.getThemeDisplay() /> 
6<#assign currentUrl = themeDisplay.getPortalURL() + themeDisplay.getURLCurrent() /> 
7 
8<#assign DataEvento_Data = getterUtil.getString(DataEvento.getData())> 
9<#assign DataFineEvento_Data = getterUtil.getString(DataFineEvento.getData())> 
10 
11<#if Immagine_social?? && Immagine_social.getData() !=''> 
12    <#assign imgSocial = themeDisplay.getPortalURL() + Immagine_social.getData() /> 
13    <#if imgSocial?contains("/image/journal/article")?string == 'true'> 
14        <@liferay_util["html-top"]> 
15            <meta property="og:image" content="${imgSocial?replace('@','')?replace('cdn_hostroot_path','')}"> 
16            <meta name="twitter:image" content="${imgSocial?replace('@','')?replace('cdn_hostroot_path','')}"> 
17        </@> 
18    <#else> 
19        <#assign last = imgSocial?replace('@','')?replace('cdn_hostroot_path','')?last_index_of('/')> 
20        <@liferay_util["html-top"]> 
21            <meta property="og:image" content="${imgSocial?replace('@','')?replace('cdn_hostroot_path','')?substring(0, last)}"> 
22            <meta name="twitter:image" content="${imgSocial?replace('@','')?replace('cdn_hostroot_path','')?substring(0, last)}"> 
23        </@> 
24    </#if> 
25<#else> 
26    <#assign imagesPath = getterUtil.getString(themeDisplay.getPathThemeImages()) /> 
27    <@liferay_util["html-top"]> 
28        <meta property="og:image" content="${imagesPath}/immagine_social.png"> 
29        <meta name="twitter:image" content="${imagesPath}/immagine_social.png"> 
30    </@> 
31</#if> 
32 
33<article class="news event"> 
34    <div class="h2"> 
35        <span class="header-back-to"> 
36            <a onClick="window.history.go(-1)" style="text-decoration:none"> 
37                <svg aria-hidden="true" class="lexicon-icon lexicon-icon-angle-left"> 
38                    <use xlink:href="${themeDisplay.getPathThemeImages()}/lexicon/icons.svg#angle-left"></use> 
39                </svg> 
40            </a> 
41        </span> 
42        <span class="header-title"> 
43            <#if Titolo.getData() !=''> 
44                ${Titolo.getData()} 
45            <#else> 
46                ${.vars['reserved-article-title'].data} 
47            </#if> 
48        </span> 
49    </div> 
50    <date> 
51        <i class="far fa-calendar-check"></i> 
52        <#if validator.isNotNull(DataEvento_Data)> 
53            <#assign start = dateUtil.parseDate("yyyy-MM-dd", DataEvento_Data, locale) /> 
54            <#assign startDay = start?string("dd") /> 
55            <#assign startMonth = start?string("MM") /> 
56            <#assign startYear = start?string("YYYY") /> 
57            <#assign end = dateUtil.parseDate("yyyy-MM-dd", DataFineEvento_Data, locale) /> 
58            <#assign endDay = end?string("dd") /> 
59            <#assign endMonth = end?string("MM") /> 
60            <#assign endYear = end?string("YYYY") /> 
61        </#if> 
62        <#if startDay != endDay || startMonth != endMonth || startYear != endYear> 
63            ${startDay}.${startMonth}.${startYear} - ${endDay}.${endMonth}.${endYear} 
64        <#else> 
65            ${startDay}.${startMonth}.${startYear} 
66        </#if> 
67        <#if OraEvento.getData() !=''> 
68            <br><i class="far fa-clock"></i> 
69            ${OraEvento.getData()} 
70        </#if> 
71    </date> 
72    ${Testo.getData()} 
73    <#if Immagine.getData() !=''> 
74        <div class="owl-carousel owl-theme" id="owl-carousel-news"> 
75            <#list Immagine.getSiblings() as cur_Immagine> 
76                <#if cur_Immagine.getData()?? && cur_Immagine.getData() != ""> 
77                    <img data-fileentryid="${cur_Immagine.getAttribute("fileEntryId")}" alt="${cur_Immagine.getAttribute("alt")}" src="${cur_Immagine.getData()}" /> 
78                </#if> 
79            </#list> 
80        </div> 
81    </#if> 
82 
83    <#assign hasRaccoltaFileText = RaccoltaFile.getData() !='' /> 
84    <#assign hasRaccoltaFileDownload = RaccoltaFile.Download?? && RaccoltaFile.Download.getData() !='' /> 
85    <#assign hasRaccoltaFileUrl = RaccoltaFile.Url?? && RaccoltaFile.Url.getData() !='' /> 
86 
87    <div id="myToggler"> 
88 
89        <#if hasRaccoltaFileText && (hasRaccoltaFileDownload || hasRaccoltaFileUrl)> 
90            <#list RaccoltaFile.getSiblings() as node> 
91                <div class="header toggler-header-collapsed"> 
92                    ${node.getData()} 
93                </div> 
94                <div class="content toggler-content-collapsed"> 
95                    <#if hasRaccoltaFileDownload > 
96                        <ul style="list-style:none;padding:0"> 
97                        <#list RaccoltaFile.Download.getSiblings() as sub> 
98 
99                            <#assign fileEntryURL = sub.getData() /> 
100                            <#assign fileEntryURLParts = fileEntryURL?keep_before("?")?keep_after("/documents/")?split("/")/> 
101                            <#assign fileEntryGroupId = getterUtil.getLong(fileEntryURLParts[0]) /> 
102                            <#assign fileEntryUuid = fileEntryURLParts[3] /> 
103                            <#assign fileEntry = dlAppLocalService.getFileEntryByUuidAndGroupId(fileEntryUuid, fileEntryGroupId) /> 
104                            <#assign fileEntryAssetEntry = assetEntryLocalService.getEntry("com.liferay.document.library.kernel.model.DLFileEntry", 
105                                fileEntry.getFileEntryId()) /> 
106                            <#assign fileEntryAssetRenderer = fileEntryAssetEntry.getAssetRenderer() /> 
107 
108                            <#if fileEntryAssetRenderer.hasViewPermission(themeDisplay.getPermissionChecker())> 
109                                <li><a href="${sub.getData()}" target="_blank" style="text-decoration:none"> 
110                                    <i class="fas fa-download"></i> 
111                                    <#if sub.LabelBottone.getData() !=''> 
112                                        ${sub.LabelBottone.getData()} 
113                                    <#else> 
114                                        <@liferay.language key="download" /> 
115                                    </#if> 
116                                </a></li> 
117                            <#else> 
118														   <li > 
119															   <i class="fas fa-download"> 
120                                   <#if sub.LabelBottone.getData() !=''> 
121                                        ${sub.LabelBottone.getData()} 
122																   </#if> 
123																 </i> 
124															</li> 
125                            </#if> 
126                        </#list> 
127                        </ul> 
128                    </#if> 
129                    <#if hasRaccoltaFileUrl> 
130                        <ul style="list-style:none;padding:0"> 
131                        <#list RaccoltaFile.Url.getSiblings() as sub> 
132                            <li><a href="http://${sub.getData()}" target="_blank" style="text-decoration:none"> 
133                                <i class="fas fa-link"></i> 
134                                <#if sub.LabelBottoneUrl.getData() !=''> 
135                                    ${sub.LabelBottoneUrl.getData()} 
136                                <#else> 
137                                    <@liferay.language key="URL" /> 
138                                </#if> 
139                            </a></li> 
140                        </#list> 
141                        </ul> 
142                    </#if> 
143                </div> 
144            </#list> 
145        </#if> 
146    </div> 
147    <#if !hasRaccoltaFileText && (hasRaccoltaFileDownload || hasRaccoltaFileUrl)> 
148        <#if hasRaccoltaFileDownload> 
149            <#list RaccoltaFile.Download.getSiblings() as sub> 
150                <#assign fileEntryURL = sub.getData() /> 
151                <#assign fileEntryURLParts = fileEntryURL?keep_before("?")?keep_after("/documents/")?split("/")/> 
152                <#assign fileEntryGroupId = getterUtil.getLong(fileEntryURLParts[0]) /> 
153                <#assign fileEntryUuid = fileEntryURLParts[3] /> 
154                <#assign fileEntry = dlAppLocalService.getFileEntryByUuidAndGroupId(fileEntryUuid, fileEntryGroupId) /> 
155                <#assign fileEntryAssetEntry = assetEntryLocalService.getEntry("com.liferay.document.library.kernel.model.DLFileEntry", 
156                    fileEntry.getFileEntryId()) /> 
157                <#assign fileEntryAssetRenderer = fileEntryAssetEntry.getAssetRenderer() /> 
158                <div> 
159                    <#if fileEntryAssetRenderer.hasViewPermission(themeDisplay.getPermissionChecker())> 
160                        <a href="${sub.getData()}" target="_blank" class="btn btn-secondary"> 
161                            <i class="fas fa-download"></i> 
162                            <#if sub.LabelBottone.getData() !=''> 
163                                ${sub.LabelBottone.getData()} 
164                            <#else> 
165                                <@liferay.language key="download" /> 
166                            </#if> 
167                        </a> 
168                    <#else> 
169                        <li class="btn btn-secondary fas fa-download disabled"> 
170                          <#if sub.LabelBottone.getData() !=''> 
171                             ${sub.LabelBottone.getData()} 
172													</#if> 
173												</li> 
174                    </#if> 
175                </div> 
176            </#list> 
177        </#if> 
178        <#if hasRaccoltaFileUrl> 
179            <#list RaccoltaFile.Url.getSiblings() as sub> 
180                <div> 
181                    <a href="http://${sub.getData()}" target="_blank" class="btn btn-secondary"> 
182                        <i class="fas fa-link"></i> 
183                        <#if sub.LabelBottoneUrl.getData() !=''> 
184                            ${sub.LabelBottoneUrl.getData()} 
185                        <#else> 
186                            <@liferay.language key="URL" /> 
187                        </#if> 
188                    </a> 
189                </div> 
190            </#list> 
191        </#if> 
192    </#if> 
193 
194    <#if CampagnaEvento?? && CampagnaEvento.getData() !=''> 
195        <@liferay_portlet["runtime"] 
196        queryString="campaignId=${CampagnaEvento.getData()}" 
197        portletName="com_noovle_assofond_notifications_web_portlet_SubscriptionEventPortlet" /> 
198    </#if> 
199 
200    <div class="social"> 
201        <#assign twitterDataTitle = ""/> 
202        <#assign twitterDataDescription = ""/> 
203        <#if .vars['reserved-article-title'].data?has_content> 
204              <#assign twitterDataTitle = .vars['reserved-article-title'].data /> 
205        </#if> 
206        <#if .vars['reserved-article-description'].data?has_content && .vars['reserved-article-description'].data != ""> 
207              <#assign twitterDataDescription = .vars['reserved-article-description'].data /> 
208        </#if> 
209        <#assign twitterDataText = twitterDataTitle + " - " + twitterDataDescription/> 
210        <span> 
211            <#if themeDisplay.getLanguageId() == "it_IT"> 
212                Condividi su 
213            <#else> 
214                Share on 
215            </#if> 
216        </span> 
217        <a href="https://twitter.com/share" class="twitter-share-button" data-text="${htmlUtil.stripHtml(twitterDataText)}">Tweet</a> <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');</script> 
218          
219        <script src="//platform.linkedin.com/in.js" type="text/javascript"> lang: it_IT</script> 
220            <script type="IN/Share" data-url="${currentUrl}"></script> 
221    </div> 
222</article>     
223<script> 
224    $(document).ready(function() { 
225        var owl = $('#owl-carousel-news'); 
226        owl.owlCarousel({ 
227            loop:true, 
228            autoplay:false, 
229            autoplayTimeout:2000, 
230            nav:true, 
231            navText: [ 
232                "<a target='0' aria-hidden='true' aria-label='Vai alla slide precedente'><span class='fas fa-chevron-left'></span></a>", 
233                "<a target='0' aria-hidden='true' aria-label='Vai alla slide successiva'><span class='fas fa-chevron-right'></span></a>" 
234            ], 
235            dots:true, 
236            items:1 
237        }); 
238    }) 
239</script> 
240<script> 
241    AUI().use( 
242      'aui-toggler', 
243      function(A) { 
244        new A.TogglerDelegate( 
245
246            animated: true, 
247            closeAllOnExpand: true, 
248            container: '#myToggler', 
249            content: '.content', 
250            expanded: false, 
251            header: '.header', 
252            transition: { 
253              duration: 0.2, 
254              easing: 'cubic-bezier(0, 0.1, 0, 1)' 
255
256
257        ); 
258
259    ); 
260</script>