taraCohen-structure

CIBC Private Wealth Management Blog
Tara Cohen

Asset Publisher

An error occurred while processing the template.
The following has evaluated to null or missing:
==> categoryToShow[0]  [in template "10157#10197#256213" at line 77, column 64]

----
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 catName = categoryToShow[0]  [in template "10157#10197#256213" at line 77, column 45]
----
1<style> 
2.wrapper-blogs{ 
3    width:100%; 
4
5.entry-content { 
6    position: relative; 
7    width: 100%; 
8
9.entry.approved { 
10    width: 100%; 
11
12@media all and (min-width:768px){ 
13    .entry .approved .col-md-4 { 
14        flex: none; 
15        max-width: 33.33vw; 
16
17
18 
19</style> 
20<#assign userLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.UserLocalService")> 
21<#assign blogLocalService =  serviceLocator.findService("com.liferay.blogs.service.BlogsEntryLocalService")> 
22<#assign assetCategoryLocalService =  serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")> 
23<#assign assetVocabularyLocalService =  serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService")> 
24      
25    <#assign domainName = themeDisplay.getURLPortal() > 
26    <#assign pageName = themeDisplay.getURLCurrent() > 
27    <#assign url = domainName + pageName> 
28    <#assign defaultBlogUrl = domainName + "/blogTopics"> 
29 
30    <#assign monthTitle = pageName?replace("/", "")> 
31    <#assign monthTitle = monthTitle?replace("-", " ")> 
32    <#assign firstLetter = monthTitle?substring(0, 1)?upper_case> 
33    <#assign remaniningWord = monthTitle?substring(1)> 
34    <#assign monthTitle = firstLetter + remaniningWord> 
35	<#assign AssetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryService")> 
36	<#assign serviceContext = objectUtil("com.liferay.portal.kernel.service.ServiceContextThreadLocal").getServiceContext()> 
37     
38	<#assign httpServletRequest = serviceContext.getRequest()> 
39    <#if request.getParameter("categoryName")??> 
40		<#assign categoryName = request.getParameter("categoryName")> 
41	</#if>  
42 
43    <#if entries??> 
44    <div class="blogs-background"> 
45	    <div class="wrapper-blogs"> 
46	        <#list entries as curBlogEntry> 
47	   			<#if curBlogEntry?index == 0 || curBlogEntry?index == 3 || curBlogEntry?index == 6 || curBlogEntry?index == 9 || curBlogEntry?index == 12>  
48	   			<div class="blogs-row d-flex justify-content-center"> 
49	   			</#if> 
50	            <#assign blogE = blogLocalService.getBlogsEntryByUuidAndGroupId(curBlogEntry.getClassUuid(),curBlogEntry.getGroupId())> 
51	            <#assign blogURL = blogE.getExpandoBridge().getAttribute("Blog Image URL")> 
52				<#if blogURL == "">  
53					<#assign blogURL = themeDisplay.getPathThemeImages() + "/default-blog-image.jpg"> 
54				</#if> 
55	           
56	             <#assign user = userLocalService.fetchUserById(getterUtil.getLong(curBlogEntry.getUserId()))> 
57	            <#assign readMoreUrl = domainName + "/blog/-/blogs/" + blogE.getUrlTitle() > 
58	           	<#assign blogDetailURL = domainName + "/blog/-/blogs/" + blogE.getUrlTitle()> 
59	            <div onclick="javascript: location.href='${blogDetailURL}';" style="cursor: pointer;" class="entry approved col-md-4"> 
60	                <div class="entry-content"> 
61	                <div id="blog-header" class="post-header post-header-author clearfix"> 
62	                    <div class="author-avatar row-fluid" style=""> 
63	                        <div class="span3 img-container"> 
64	                            <#assign assetCategories = assetCategoryLocalService.getCategories("com.liferay.portlet.blogs.model.BlogsEntry", blogE.getEntryId())> 
65	                            <#assign categoryToShow = curBlogEntry.getCategories() > 
66	                            <#if assetCategories?? && (assetCategories?size > 0)>    
67	                                <#list assetCategories as assetCategory >     
68	                                	 <#assign vocabulary = assetVocabularyLocalService.getAssetVocabulary(assetCategory.getVocabularyId())>  
69	                                	 <#if vocabulary.getName().equals("Blog Topics")>      
70	                                	 	<#assign categoryToShow = assetCategory.getName()> 
71	                                	 	<#break> 
72	                                	 </#if> 
73	                                </#list>                 
74	                        		<div class="blog-category-over-image">${categoryToShow}</div> 
75	                        	</#if> 
76	                        	 <#if categoryToShow??> 
77	                        	    <#assign catName = categoryToShow[0] > 
78									<div style="" class="blog-category-over-image">${catName.getName()}</div> 
79	                        	 </#if> 
80	                            <img src="${blogURL}" alt="" style="width:100%;height: auto;"> 
81	                        </div> 
82	                         
83	                        <div class="span8 entry-header"> 
84	                            <h1 class="entry-title margin-top-6"> 
85	                                <span>${htmlUtil.escape(curBlogEntry.title)}</span> 
86	                            </h1> 
87	                            <p class="post-header-meta"> 
88									 
89								    
90	                                <#assign date = curBlogEntry.getPublishDate()>	                 
91	                                <#assign date1 =  dateUtil.getDate(date, "MMMM dd, yyyy", locale)> 
92	                                 
93	                                <span class="author">${curBlogEntry.getUserName()}</span><br>     
94						            <span class="publish-date">${date1}</span> 
95	                                 
96	                            </p> 
97	                        </div> 
98	                    </div> 
99	                </div> 
100	            </div> 
101	 
102	            <div style="clear: both;"></div> 
103	            <div class="entry-body"> 
104	                 
105	               
106	                 
107	                ${stringUtil.shorten(htmlUtil.stripHtml(blogE.getContent()),  400)} 
108	                      
109	            </div> 
110	 
111	            </div> 
112				<#if curBlogEntry?index == 2 || curBlogEntry?index == 5 || curBlogEntry?index == 8 || curBlogEntry?index == 11 || curBlogEntry?index == 14 || curBlogEntry?index == entries?size-1>  
113	   				</div> 
114	   			</#if>	 
115	            </#list> 
116	  </div>  
117  </div>  
118  </#if>