blogtopics
Cookie notice
CIBC uses cookies to understand how you use our website and to improve your experience. This includes personalizing CIBC content on our mobile apps, our website and third-party sites and apps. To learn more about how we do this, go to Manage my advertising preferences.
BlogTopicTabStructure
CIBC Private Wealth Management Blog
Asset Publisher
An error occurred while processing the template.
The following has evaluated to null or missing: ==> userLocalService.fetchUserById(getterUtil.getLong(curBlogEntry.getUserId())) [in template "10157#10197#256213" at line 56, column 38] ---- 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 user = userLocalService.fetch... [in template "10157#10197#256213" at line 56, column 22] ----
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>
Asset Publisher
An error occurred while processing the template.
The following has evaluated to null or missing: ==> userLocalService.fetchUserById(getterUtil.getLong(curBlogEntry.getUserId())) [in template "10157#10197#256213" at line 56, column 38] ---- 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 user = userLocalService.fetch... [in template "10157#10197#256213" at line 56, column 22] ----
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>
Asset Publisher
An error occurred while processing the template.
The following has evaluated to null or missing: ==> userLocalService.fetchUserById(getterUtil.getLong(curBlogEntry.getUserId())) [in template "10157#10197#256213" at line 56, column 38] ---- 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 user = userLocalService.fetch... [in template "10157#10197#256213" at line 56, column 22] ----
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>
Asset Publisher
An error occurred while processing the template.
The following has evaluated to null or missing: ==> userLocalService.fetchUserById(getterUtil.getLong(curBlogEntry.getUserId())) [in template "10157#10197#256213" at line 56, column 38] ---- 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 user = userLocalService.fetch... [in template "10157#10197#256213" at line 56, column 22] ----
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>
Asset Publisher
An error occurred while processing the template.
The following has evaluated to null or missing: ==> userLocalService.fetchUserById(getterUtil.getLong(curBlogEntry.getUserId())) [in template "10157#10197#256213" at line 56, column 38] ---- 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 user = userLocalService.fetch... [in template "10157#10197#256213" at line 56, column 22] ----
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>
Asset Publisher
An error occurred while processing the template.
The following has evaluated to null or missing: ==> userLocalService.fetchUserById(getterUtil.getLong(curBlogEntry.getUserId())) [in template "10157#10197#256213" at line 56, column 38] ---- 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 user = userLocalService.fetch... [in template "10157#10197#256213" at line 56, column 22] ----
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>
Asset Publisher
An error occurred while processing the template.
The following has evaluated to null or missing: ==> userLocalService.fetchUserById(getterUtil.getLong(curBlogEntry.getUserId())) [in template "10157#10197#256213" at line 56, column 38] ---- 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 user = userLocalService.fetch... [in template "10157#10197#256213" at line 56, column 22] ----
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>