An error occurred while processing the template.
The following has evaluated to null or missing:
==> ContentImage  [in template "20101#20127#ARTICLE-DETAIL" at line 126, column 19]

----
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: #if ContentImage.getSiblings()[cur_Ri...  [in template "20101#20127#ARTICLE-DETAIL" at line 126, column 13]
----
1<#assign thisGroup = themeDisplay.getScopeGroup()> 
2<#assign locale = themeDisplay.getLocale() /> 
3 
4<#assign labelGallery="Gallery" /> 
5 
6<#if locale=='es_ES'> 
7    <#assign labelGallery="Galeria" /> 
8</#if> 
9 
10<#assign assetVocabularyLocalService = staticUtil["com.liferay.asset.kernel.service.AssetVocabularyLocalServiceUtil"] /> 
11<#assign groupLocalService = staticUtil["com.liferay.portal.kernel.service.GroupLocalServiceUtil"] /> 
12 
13<#assign groupGlobal = groupLocalService.getCompanyGroup(themeDisplay.getCompanyId())> 
14<#assign vocabLanguage = assetVocabularyLocalService.fetchGroupVocabulary(groupGlobal.getGroupId(), "Language")> 
15<#assign vocabLanguageId = 0> 
16<#if vocabLanguage??> 
17    <#assign vocabLanguageId = vocabLanguage.getVocabularyId()> 
18</#if> 
19<#assign vocabQuality = assetVocabularyLocalService.fetchGroupVocabulary(groupGlobal.getGroupId(), "Quality")> 
20<#assign vocabQualityId = 0> 
21<#if vocabQuality??> 
22    <#assign vocabQualityId = vocabQuality.getVocabularyId()> 
23</#if> 
24 
25<#assign vocabPublishOnSite = assetVocabularyLocalService.fetchGroupVocabulary(groupGlobal.getGroupId(), "PublishOnSite")> 
26<#assign vocabPublishOnSiteId = 0> 
27<#if vocabPublishOnSite??> 
28    <#assign vocabPublishOnSiteId = vocabPublishOnSite.getVocabularyId()> 
29</#if> 
30 
31<#assign assetEntryLocalService = staticUtil["com.liferay.asset.kernel.service.AssetEntryLocalServiceUtil"] /> 
32<#assign journalArticleLocalService = staticUtil["com.liferay.journal.service.JournalArticleLocalServiceUtil"] /> 
33<#assign assetLinkLocalService = staticUtil["com.liferay.asset.kernel.service.AssetLinkLocalServiceUtil"] /> 
34 
35<#assign currentArticle = journalArticleLocalService.getArticle(groupId, .vars['reserved-article-id'].data) /> 
36<#assign currentArticleAssetEntry = assetEntryLocalService.getEntry("com.liferay.journal.model.JournalArticle", currentArticle.getResourcePrimKey()) /> 
37 
38<#assign assetCategories = currentArticleAssetEntry.getCategories() > 
39 
40<#if TopImage.getData()?? && TopImage.getData() != "">  
41<div class="top-image"> 
42     
43    <#assign altLogo = ""> 
44    <#if TopImage.ImageSEODescription?? && TopImage.ImageSEODescription.getData()??> 
45        <#assign altLogo = TopImage.ImageSEODescription.getData()> 
46    </#if> 
47     
48    <img alt="${altLogo}" data-fileentryid="${TopImage.getAttribute("fileEntryId")}" src="${TopImage.getData()}" />  
49</div> 
50</#if> 
51 
52<div class="title"> 
53    ${.vars['reserved-article-title'].data} 
54</div> 
55 
56 
57<div class="summary"> 
58    ${.vars['reserved-article-description'].data} 
59</div> 
60 
61<div class="content-tag-date-social"> 
62     
63     <div class="tag-article d-flex align-items-start tag-logo-content"> 
64        <ul class="d-flex flex-wrap"> 
65            <#list assetCategories as category> 
66                         
67                <#if themeDisplay.permissionChecker.hasPermission(group, "com.liferay.asset.kernel.model.AssetCategory", category.getCategoryId(), "VIEW")> 
68                 
69                <#assign assetVocabulary = assetVocabularyLocalService.getAssetVocabulary(category.getVocabularyId())> 
70 
71                <#if (assetVocabulary.getVocabularyId() != vocabLanguageId && assetVocabulary.getVocabularyId() != vocabQualityId && assetVocabulary.getVocabularyId() != vocabPublishOnSiteId)> 
72                 
73                    <#assign urlSearch = thisGroup.getDisplayURL(themeDisplay, false)+ "/search?q=*&category="+category.getCategoryId()> 
74                        <li>#<a href="${urlSearch}" target="_blank" class="tag-article">${category.getTitle(locale)}</a></li> 
75                    </#if> 
76                 
77                </#if> 
78                 
79            </#list> 
80        </ul> 
81    </div> 
82    
83    <div class="d-flex flex-wrap align-items-center "> 
84        <div class="article-date"> 
85             <#assign ArticleDate_Data = getterUtil.getString(ArticleDate.getData())>  
86            <#if validator.isNotNull(ArticleDate_Data)>  
87                <#assign ArticleDate_DateObj = dateUtil.parseDate("yyyy-MM-dd", ArticleDate_Data, locale)> ${dateUtil.getDate(ArticleDate_DateObj, "dd MMM yyyy", locale)}  
88            </#if> 
89        </div> 
90        <div class="name-author">${currentArticle.getUserName()} </div> 
91        <div class="socials d-flex align-items-center justify-content-center"> 
92            <a href="http://www.facebook.com/sharer.php?u=${themeDisplay.getURLPortal() + themeDisplay.URLCurrent}" class="facebook"> 
93                <i class="fa fa-facebook d-flex align-items-center justify-content-center" aria-hidden="true"></i> 
94            </a> 
95            <a href="https://twitter.com/intent/tweet?url=${themeDisplay.getURLPortal() + themeDisplay.URLCurrent}" class="twitter"> 
96                <i class="fa fa-twitter d-flex align-items-center justify-content-center" aria-hidden="true"></i> 
97            </a> 
98            <a href="http://www.linkedin.com/shareArticle?url=${themeDisplay.getURLPortal() + themeDisplay.URLCurrent}" class="linkedin"> 
99                <i class="fa fa-linkedin d-flex align-items-center justify-content-center" aria-hidden="true"></i> 
100            </a> 
101            <!-- <a href="#" class="whatsapp"> 
102                <i class="fa fa-whatsapp d-flex align-items-center justify-content-center" aria-hidden="true"></i> 
103            </a> --> 
104        </div> 
105    </div> 
106    
107</div> 
108 
109<#if VimeoVideoCode.getData()?? && VimeoVideoCode.getData()?has_content  
110&& VimeoVideoCode.getData() != "null" && VimeoVideoCode.getData() != "" > 
111    <div class="video-section"> 
112         
113        <iframe src="https://player.vimeo.com/video/${VimeoVideoCode.getData()?keep_after("https://vimeo.com/")}?app_id=122963" width="500" height="281" frameborder="0"  allow="autoplay; fullscreen" allowfullscreen=""> 
114        </iframe> 
115    </div> 
116</#if> 
117 
118 
119<#if RichContentBlock.getSiblings()?has_content>  
120    <#list RichContentBlock.getSiblings() as cur_RichContentBlock>  
121        <div class="block-content"> 
122            <div class="block-text"> 
123                ${cur_RichContentBlock.getData()} 
124            </div> 
125             
126            <#if  ContentImage.getSiblings()[cur_RichContentBlock?index]?? && ContentImage.getSiblings()[cur_RichContentBlock?index].getData()?? >    
127                <#assign blockImage =  ContentImage.getSiblings()[cur_RichContentBlock?index]> 
128            <div class="block-image"> 
129                 
130                <#assign altContentImage = ""> 
131                <#if ContentImage.ContentImageSEODescription?? && ContentImage.ContentImageSEODescription.getData()??> 
132                    <#assign altContentImage = ContentImage.ContentImageSEODescription.getData()> 
133                </#if> 
134                 
135                <#if blockImage.getAttribute("fileEntryId")??> 
136                <img alt="${altContentImage}" data-fileentryid="${blockImage.getAttribute("fileEntryId")}" src="${blockImage.getData()}" />  
137                </#if> 
138            </div> 
139            </#if> 
140        </div> 
141    </#list>  
142</#if> 
143 
144<!-- carousel section --> 
145<#if GalleryImage??> 
146    <#if GalleryImage.getSiblings()?has_content && GalleryImage.getData() != ""> 
147        <h3>${labelGallery}</h3> 
148     
149    	<div id="myGallery" class="gallery"> 
150    		<!--<#assign imageMimeTypes = propsUtil.getArray("dl.file.entry.preview.image.mime.types") />--> 
151        <#-- 
152    		<#list RichContentBlock.getSiblings() as cur_RichContentBlock> 
153    			<#if cur_RichContentBlock.ContentImage.getData()?? && cur_RichContentBlock.ContentImage.getData() != "">  
154    				<a class="block-image" href="${cur_RichContentBlock.ContentImage.getData()}" title="${cur_RichContentBlock.ContentImage.getAttribute("alt")}"> 
155                    <img class="picture" alt="${cur_RichContentBlock.ContentImage.getAttribute("alt")}" data-fileentryid="${cur_RichContentBlock.ContentImage.getAttribute("fileEntryId")}" src="${cur_RichContentBlock.ContentImage.getData()}" />  
156                </a> 
157    			</#if> 
158    		</#list> 
159    		--> 
160    		 
161    		    <#list GalleryImage.getSiblings() as cur_GalleryImage>  
162    		        <#if cur_GalleryImage.getData()?? && cur_GalleryImage.getData() != "">  
163    		             
164    		            <#assign galleryLogo = ""> 
165    <#if cur_GalleryImage.GalleryImageSEODescription?? && cur_GalleryImage.GalleryImageSEODescription.getData()??> 
166        <#assign galleryLogo = cur_GalleryImage.GalleryImageSEODescription.getData()> 
167    </#if> 
168    		             
169    		            <a class="block-image" href="${cur_GalleryImage.getData()}" title="${cur_GalleryImage.getAttribute("alt")}"> 
170                    <img class="picture" alt="${galleryLogo}" data-fileentryid="${cur_GalleryImage.getAttribute("fileEntryId")}" src="${cur_GalleryImage.getData()}"/>  
171                </a> 
172                <#-- 
173    		            <img alt="${cur_GalleryImage.getAttribute("alt")}" data-fileentryid="${cur_GalleryImage.getAttribute("fileEntryId")}" src="${cur_GalleryImage.getData()}" />  
174    		            --> 
175    		            </#if> 
176    		    </#list>  
177    		 
178    	</div> 
179        <script type="text/javascript"> 
180        AUI().use("aui-image-viewer", 
181            function(A) { 
182                new A.ImageViewer( 
183
184                    caption: 'Gallery', 
185                    captionFromTitle: true, 
186                    centered: true, 
187                    imageAnim: { 
188                     duration: 1, 
189                     easing: 'easeIn' 
190                    }, 
191                    intervalTime: 2, 
192                    links: '#myGallery a', 
193                    playing: false, 
194                    preloadAllImages: true, 
195                    preloadNeighborImages: true, 
196                    showInfo: true, 
197                    showPlayer: true, 
198                    zIndex: 1000 
199
200                ).render(); 
201
202        ); 
203    	</script> 
204    	 
205    </#if> 
206</#if> 
207 
208 
209 
210<#if Footer?? && Footer.getData()?? && Footer.getData() != "">  
211<div class="footer"> 
212    ${Footer.getData()} 
213</div> 
214</#if> 
215 
216 
217<div class="content-tag-date-social"> 
218    <div class="tag-article d-flex align-items-start tag-logo-content"> 
219        <ul class="d-flex flex-wrap"> 
220            <#list assetCategories as category> 
221                         
222                <#if themeDisplay.permissionChecker.hasPermission(group, "com.liferay.asset.kernel.model.AssetCategory", category.getCategoryId(), "VIEW")> 
223                 
224                <#assign assetVocabulary = assetVocabularyLocalService.getAssetVocabulary(category.getVocabularyId())> 
225 
226                <#if (assetVocabulary.getVocabularyId() != vocabLanguageId && assetVocabulary.getVocabularyId() != vocabQualityId && assetVocabulary.getVocabularyId() != vocabPublishOnSiteId )> 
227                 
228                    <#assign urlSearch = thisGroup.getDisplayURL(themeDisplay, false)+ "/search?q=*&category="+category.getCategoryId()> 
229                                <li>#<a href="${urlSearch}" target="_blank" class="tag-article">${category.getTitle(locale)}</a></li> 
230                    </#if> 
231                     
232                </#if> 
233            </#list> 
234        </ul> 
235    </div> 
236    <div class="d-flex flex-wrap align-items-center "> 
237        <div class="article-date"> 
238             <#assign ArticleDate_Data = getterUtil.getString(ArticleDate.getData())>  
239            <#if validator.isNotNull(ArticleDate_Data)>  
240                <#assign ArticleDate_DateObj = dateUtil.parseDate("yyyy-MM-dd", ArticleDate_Data, locale)> ${dateUtil.getDate(ArticleDate_DateObj, "dd MMM yyyy", locale)}  
241            </#if> 
242        </div> 
243        <div class="name-author">${currentArticle.getUserName()}</div> 
244        <div class="socials d-flex align-items-center justify-content-center"> 
245            <a href="http://www.facebook.com/sharer.php?u=${themeDisplay.getURLPortal() + themeDisplay.URLCurrent}" class="facebook"> 
246                <i class="fa fa-facebook d-flex align-items-center justify-content-center" aria-hidden="true"></i> 
247            </a> 
248            <a href="https://twitter.com/intent/tweet?url=${themeDisplay.getURLPortal() + themeDisplay.URLCurrent}" class="twitter"> 
249                <i class="fa fa-twitter d-flex align-items-center justify-content-center" aria-hidden="true"></i> 
250            </a> 
251            <a href="http://www.linkedin.com/shareArticle?url=${themeDisplay.getURLPortal() + themeDisplay.URLCurrent}" class="linkedin"> 
252                <i class="fa fa-linkedin d-flex align-items-center justify-content-center" aria-hidden="true"></i> 
253            </a> 
254           <!-- <a href="#" class="whatsapp"> 
255                <i class="fa fa-whatsapp d-flex align-items-center justify-content-center" aria-hidden="true"></i> 
256            </a> --> 
257        </div> 
258    </div> 
259    
260</div> 

PARTNERS