Xuất bản thông tin

null Thông báo chiêu sinh Lớp tập huấn nghiệp vụ Kiểm soát HTX năm 2022

Có lỗi xảy ra trong quá trình xử lý biểu mẫu.
The following has evaluated to null or missing:
==> layoutService.fetchLayout(plidlayout?number)  [in template "34201#34227#43055" at line 389, 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: #assign layout = layoutService.fetchL...  [in template "34201#34227#43055" at line 389, column 1]
----
1<style> 
2	.other-news { 
3        color: #cb373b; 
4        font-weight: bold; 
5        margin-top: 5px; 
6        margin-bottom: 3px; 
7        overflow: hidden; 
8
9    .other-news:after { 
10        content:""; 
11        display: inline-block; 
12        height: 0.5em; 
13        vertical-align: bottom; 
14        width: 100%; 
15        margin-right: -100%; 
16        margin-left: 10px; 
17        border-top: 1px solid #cb373b; 
18
19	.date-span { 
20        color: #888888; 
21        font-size: 14px; 
22        font-weight: normal; 
23
24	.limit-tit { 
25        display: block; 
26        text-overflow: ellipsis; 
27        word-wrap: break-word; 
28        overflow: hidden; 
29        max-height: 6em; 
30        display: -webkit-box; 
31        -webkit-line-clamp: 2; 
32        -webkit-box-orient: vertical; 
33        margin: 0; 
34
35	@media only screen and (min-width: 768px) { 
36		.other-imgs { 
37			height: 60px; 
38
39
40	@media only screen and (max-width: 500px) { 
41		.curPage-title { 
42			display: none; 
43
44		.title-divvv { 
45			text-align: justify; 
46    		margin-top: 50px; 
47
48
49	.pagination2 { 
50		display: inline-block; 
51
52 
53	.pagination2 a { 
54	    cursor: pointer; 
55		color: black; 
56		float: left; 
57		padding: 8px 16px; 
58		text-decoration: none; 
59		transition: background-color .3s; 
60		border: 1px solid #ddd; 
61		margin: 0 4px; 
62
63 
64	.pagination2 a.active { 
65		background-color: #4CAF50; 
66		color: white; 
67		border: 1px solid #4CAF50; 
68
69 
70	.pagination2 a:hover:not(.active) { 
71		background-color: #ddd; 
72
73	.tieuDe-asset::after { 
74		position: absolute; 
75		content: ""; 
76		left: 100%; 
77		top: 0; 
78		border-top: 14px solid transparent; 
79		border-bottom: 15px solid transparent; 
80		border-left: 13px solid darkgray; 
81
82	.asset-full-content.clearfix.mb-5.show-asset-title { 
83		margin-bottom: 0 !important; 
84
85	.article-head { 
86		margin-bottom: 0; 
87
88	@media only screen and (max-width: 768px) { 
89		#contentText iframe { 
90			width: 100% !important; 
91
92		.article-head .article-info { 
93			margin-bottom: 0; 
94			padding: 15px 0 8px 0; 
95
96
97	@media only screen and (max-width: 500px) { 
98		.curPage-title { 
99			display: unset !important; 
100
101
102	.paginate-pagination ul { 
103	 
104	margin: 20px 0; 
105	padding: 0; 
106	list-style: none; 
107	 
108
109 
110.paginate-pagination ul:after { 
111	 
112	content: ' '; 
113	display: table; 
114	clear: both; 
115	 
116
117 
118.paginate-pagination ul > li { 
119	 
120	float: left; 
121	margin-right: 3px; 
122	 
123
124 
125.paginate-pagination ul > li > a.page { 
126	 
127	display: block; 
128	height: 30px; 
129	width: 30px; 
130	text-align: center; 
131	line-height: 30px; 
132	border: 1px solid #ddd; 
133	background: white; 
134	text-decoration: none; 
135	cursor: pointer; 
136	 
137
138 
139.paginate-pagination ul > li > a.page:hover { opacity: 0.7; } 
140.paginate-pagination ul > li > a.page.active { opacity: 0.7; cursor: default; } 
141 
142.paginate-pagination ul > li > a.page-next.deactive, 
143.paginate-pagination ul > li > a.page-prev.deactive { opacity: 0.7; cursor: default; } 
144</style> 
145<script type="text/javascript"> 
146(function( $ ) { 
147 
148    $.paginate = function(element, options) { 
149 
150        /* 
151            #Defaults 
152        */ 
153        var defaults = { 
154            perPage:                15,              //how many items per page 
155            autoScroll:             true,           //boolean: scroll to top of the container if a user clicks on a pagination link 
156            scope:                  '',             //which elements to target 
157            paginatePosition:       ['bottom'],     //defines where the pagination will be displayed 
158            containerTag:           'nav', 
159            paginationTag:          'ul', 
160            itemTag:                'li', 
161            linkTag:                'a', 
162            useHashLocation:        true,           //Determines whether or not the plugin makes use of hash locations 
163            onPageClick:            function() {}   //Triggered when a pagination link is clicked 
164 
165        }; 
166 
167        var plugin = this; 
168        var plugin_index = $('.paginate').length; 
169 
170        plugin.settings = {}; 
171 
172        var $element = $(element); 
173 
174        var curPage, items, offset, maxPage; 
175 
176        /* 
177            #Initliazes plugin 
178        */ 
179        plugin.init = function() { 
180            plugin.settings = $.extend({}, defaults, options); 
181 
182            curPage = 1; 
183            items =  $element.children(plugin.settings.scope); 
184            maxPage = Math.ceil( items.length / plugin.settings.perPage ); //determines how many pages exist 
185 
186            var paginationHTML = generatePagination(); //generate HTML for pageination 
187 
188            if($.inArray('top', plugin.settings.paginatePosition) > -1) { 
189                $element.before(paginationHTML); 
190
191 
192            if($.inArray('bottom', plugin.settings.paginatePosition) > -1) { 
193                $element.after(paginationHTML); 
194
195 
196            $element.addClass("paginate"); 
197            $element.addClass("paginate-" + plugin_index); 
198 
199            var hash = location.hash.match(/\#paginate\-(\d)/i); 
200 
201            //Check if URL has matching location hash 
202            if(hash && plugin.settings.useHashLocation) { 
203                plugin.switchPage(hash[1]); 
204            } else { 
205                plugin.switchPage(1); //go to initial page 
206
207 
208        }; 
209 
210        /* 
211            #Switch to Page > 'page' 
212        */ 
213        plugin.switchPage = function(page) { 
214 
215            if(page == "next") { 
216                page = curPage + 1; 
217
218 
219            if(page == "prev") { 
220                page = curPage - 1; 
221
222 
223            //If page is out of range return false 
224            if(page < 1 || page > maxPage) { 
225                return false; 
226
227 
228            if(page > maxPage) { 
229                $('.paginate-pagination-' + plugin_index).find('.page-next').addClass("deactive"); 
230                return false; 
231            } else { 
232                $('.paginate-pagination-' + plugin_index).find('.page-next').removeClass("deactive"); 
233
234 
235            $('.paginate-pagination-' + plugin_index).find('.active').removeClass('active'); 
236            $('.paginate-pagination-' + plugin_index).find('.page-' + page).addClass('active'); 
237 
238            offset = (page - 1) * plugin.settings.perPage; 
239 
240            $( items ).hide(); 
241 
242            //Display items of page 
243            for(i = 0; i < plugin.settings.perPage; i++) { 
244                if($( items[i + offset] ).length) 
245                    $( items[i + offset] ).fadeTo(100, 1); 
246
247 
248            //Deactive prev button 
249            if(page == 1) { 
250                $('.paginate-pagination-' + plugin_index).find('.page-prev').addClass("deactive"); 
251            } else { 
252                $('.paginate-pagination-' + plugin_index).find('.page-prev').removeClass("deactive"); 
253
254 
255            //Deactive next button 
256            if(page == maxPage) { 
257                $('.paginate-pagination-' + plugin_index).find('.page-next').addClass("deactive"); 
258            } else { 
259                $('.paginate-pagination-' + plugin_index).find('.page-next').removeClass("deactive"); 
260
261 
262            curPage = page; 
263 
264            return curPage; 
265 
266        }; 
267 
268        /* 
269        #Kills plugin 
270        */ 
271        plugin.kill = function() { 
272 
273            $( items ).show(); 
274            $('.paginate-pagination-' + plugin_index).remove(); 
275            $element.removeClass('paginate'); 
276            $element.removeData('paginate'); 
277 
278        }; 
279 
280        /* 
281        #Generates HTML for pagination (nav) 
282        */ 
283        var generatePagination = function() { 
284 
285            var paginationEl = '<' + plugin.settings.containerTag + ' class="paginate-pagination paginate-pagination-' + plugin_index + '" data-parent="' + plugin_index + '">'; 
286            paginationEl += '<' + plugin.settings.paginationTag + '>'; 
287 
288            paginationEl += '<' + plugin.settings.itemTag + '>'; 
289            paginationEl += '<' + plugin.settings.linkTag + ' href="#" data-page="prev" class="page page-prev">&laquo;</' + plugin.settings.linkTag + '>'; 
290            paginationEl += '</' + plugin.settings.itemTag + '>'; 
291 
292            for(i = 1; i <= maxPage; i++) { 
293                paginationEl += '<' + plugin.settings.itemTag + '>'; 
294                paginationEl += '<' + plugin.settings.linkTag + ' href="#paginate-' + i + '" data-page="' + i + '" class="page page-' + i + '">' + i + '</' + plugin.settings.linkTag + '>'; 
295                paginationEl += '</' + plugin.settings.itemTag + '>'; 
296
297 
298            paginationEl += '<' + plugin.settings.itemTag + '>'; 
299            paginationEl += '<' + plugin.settings.linkTag + ' href="#" data-page="next" class="page page-next">&raquo;</' + plugin.settings.linkTag + '>'; 
300            paginationEl += '</' + plugin.settings.itemTag + '>'; 
301 
302            paginationEl += '</' + plugin.settings.paginationTag + '>'; 
303            paginationEl += '</' + plugin.settings.containerTag + '>'; 
304 
305            //Adds event listener for the buttons 
306            $(document).on('click', '.paginate-pagination-' + plugin_index + ' .page', function(e) { 
307                e.preventDefault(); 
308 
309                var page = $(this).data('page'); 
310                var paginateParent = $(this).parents('.paginate-pagination').data('parent'); 
311 
312                //Call onPageClick callback function 
313                $('.paginate-' + paginateParent).data('paginate').settings.onPageClick(); 
314 
315                page = $('.paginate-' + paginateParent).data('paginate').switchPage(page); 
316 
317                if(page) { 
318                    if(plugin.settings.useHashLocation) 
319                        location.hash = '#paginate-' + page; //set location hash 
320 
321                    if(plugin.settings.autoScroll) 
322                        $('html, body').animate({scrollTop: $('.paginate-' + paginateParent).offset().top}, 'slow'); 
323 
324
325 
326            }); 
327 
328            return paginationEl; 
329 
330        }; 
331 
332        plugin.init(); 
333 
334    }; 
335 
336    $.fn.paginate = function(options) { 
337 
338        return this.each(function() { 
339            if (undefined === $(this).data('paginate')) { 
340                var plugin = new $.paginate(this, options); 
341                    $(this).data('paginate', plugin); 
342
343        }); 
344 
345    }; 
346 
347}( jQuery )); 
348</script> 
349<#assign  
350    title = .vars['reserved-article-title'].data 
351	portalURL = themeDisplay.getPortalURL()  
352	currentUrl = portalURL + themeDisplay.getURLCurrent()  
353	imageUrl = portalURL + .vars['reserved-article-small-image-url'].data  
354	srcfb = "https://www.facebook.com/plugins/like.php?href=${currentUrl}&width=172&layout=button_count&action=like&size=small&share=true&height=46&appId"  
355	displayDate = .vars['reserved-article-display-date'].data 
356	summary = .vars['reserved-article-description'].data/> 
357 
358	<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")> 
359 
360	<#assign scopeId = themeDisplay.getScopeGroupId()> 
361 
362	<#assign contentId = .vars['reserved-article-id'].data> 
363 
364	<#assign articlePrimKey = JournalArticleLocalService.getArticle(getterUtil.getLong(scopeId), contentId).resourcePrimKey> 
365 
366	<#assign catLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")> 
367	<#assign articleCatId = catLocalService.getCategoryIds("com.liferay.journal.model.JournalArticle", getterUtil.getLong(articlePrimKey))> 
368	 
369	<#assign categoryList = catLocalService.getAssetEntryAssetCategories(getterUtil.getLong(articlePrimKey))> 
370     
371	<#assign assetEntryQueryService = objectUtil('com.liferay.asset.kernel.service.AssetEntryLocalServiceUtil')> 
372 
373	<#assign assetEntryQuery = objectUtil('com.liferay.asset.kernel.service.persistence.AssetEntryQuery')> 
374	 
375 
376	<#assign search = assetEntryQuery.setAllCategoryIds(articleCatId)> 
377	<#assign search = assetEntryQuery.setOrderByCol1("publishDate")/> 
378    <#assign search = assetEntryQuery.setOrderByType1("DESC")/> 
379 
380	<#assign teste = assetEntryQueryService.getEntries(assetEntryQuery) 
381			totalPage = 0/> 
382 
383<#assign layoutService =  serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService") /> 
384<#if (request.getParameter("plidlayout")?has_content)> 
385    <#assign plidlayout = request.getParameter("plidlayout") /> 
386    <#else> 
387    <#assign plidlayout = 2 /> 
388</#if> 
389<#assign layout = layoutService.fetchLayout(plidlayout?number) /> 
390<#assign curLayout = layoutService.fetchLayout(plid?number) /> 
391<#assign pageTitle = layout.getName(locale) /> 
392<#assign pageUrl = layout.getFriendlyURL(locale) /> 
393<#assign curPageTitle = curLayout.getName(locale) /> 
394<#assign originalLocale = .locale> 
395<#setting locale = localeUtil.getDefault()> 
396<#assign displayDate = displayDate?datetime("EEE, d MMM yyyy HH:mm:ss Z")> 
397<#assign locale = originalLocale> 
398<#assign displayDate = displayDate?string("HH:mm dd/MM/yyyy")> 
399 
400<#assign listLayoutDHD = [5474,5512,179]> 
401<#assign layo = themeDisplay.getPlid() /> 
402 
403<script src="https://sp.zalo.me/plugins/sdk.js"></script> 
404<liferay-util:html-top outputKey="htmltop"> 
405    <meta name="url" property="og:url" content="${currentUrl}" /> 
406	<meta name="type" property="og:type" content="article" /> 
407    <meta name="title" property="og:title" content="${.vars['reserved-article-title'].data}" /> 
408    <meta name="image" property="og:image" content="${imageUrl}" > 
409</liferay-util:html-top> 
410 
411 
412 
413<div class="row"> 
414  <div class="col-8"> 
415   
416   
417  <#if listLayoutDHD?seq_index_of(layo) &gt; -1 > 
418		        <div class="brumnoidung"> 
419                	<ul class="breadcrumb"> 
420                		<li class="breadcrumb-item crum1"><a href="/home">Trang chủ</a></li> 
421                		<li class="breadcrumb-item active">Tin tức</li> 
422                	</ul> 
423                </div> 
424                <#else> 
425				<span style="position: relative;font-weight: bold;font-size: 17px;border-left: 3px solid #ed0678;padding: 5px;background-color: darkgrey;" class="tieuDe-asset"> 
426					<a href="${pageUrl}">${pageTitle}</a> 
427				</span> 
428				<#assign journalArticleId = .vars['reserved-article-id'].data> 
429				<#assign journalArticleResourceLocalServiceUtil = staticUtil["com.liferay.journal.service.JournalArticleResourceLocalServiceUtil"]> 
430				<#assign assetCategoryLocalServiceUtil = staticUtil["com.liferay.asset.kernel.service.AssetCategoryLocalServiceUtil"]> 
431 
432				<#assign articleResourcePK = journalArticleResourceLocalServiceUtil.getArticleResourcePrimKey(groupId, journalArticleId)/> 
433				<#assign categoryList=assetCategoryLocalServiceUtil.getCategories("com.liferay.journal.model.JournalArticle",articleResourcePK) > 
434				 
435				<#list categoryList as thisCategory> 
436					<#if (thisCategory_index==0)> 
437						<span class="curPage-title" style="font-size: 17px;padding-left: 17px;font-weight: bold;">${thisCategory.getName()}</span> 
438					</#if> 
439				</#list> 
440			</#if> 
441			 
442			<div class="article-head"> 
443				<div class="article-info" style="border-top: 0px;border-bottom: 0px;margin-left: 11px;"> 
444					<div class="social-buttons left"> 
445                        ${displayDate} 
446					</div> 
447					<div class="social-buttons right"> 
448					    <a class="social-thing" onclick="voiceSpeak('contentText','voiceSex')"; style="margin-right: 5px;" 
449							data-toggle="tooltip" title="Đọc bài viết"> 
450							<img class="volume-up" src="/o/portal-dt-home-theme/images/icons/trothinh_volume-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
451						</a> 
452						<a id="void-pause" class="social-thing" onclick="voicePause()"; style="margin-right: 1px;display:none;" 
453							data-toggle="tooltip" title="Tạm dừng đọc"> 
454							<span class="fa fa-pause" style="vertical-align: middle;opacity: 1;width: 13px;color: dimgray;"/> 
455						</a> 
456						<a id="void-resume" class="social-thing" onclick="voiceResume()"; style="margin-right: 1px;display:none;" 
457							data-toggle="tooltip" title="Tiếp tục đọc"> 
458							<span class="fa fa-repeat" style="vertical-align: middle;opacity: 1;width: 13px;color: dimgray;"></span> 
459						</a> 
460						<a id="void-stop" class="social-thing" onclick="voiceCancel()"; style="margin-right: 1px;display:none;" 
461							data-toggle="tooltip" title="Dừng đọc"> 
462							<span class="fa fa-stop"style="vertical-align: middle;opacity: 1;width: 13px;color: dimgray;"/> 
463						</a> 
464						<a class="social-thing" style="margin-right: 5px;"> 
465							<img src="/o/portal-dt-home-theme/images/icons/trothinh_wall-ico.png" style="vertical-align: middle;opacity: 1;width: 1px;height: 13px"/> 
466						</a> 
467						<a class="social-thing" onclick="giamTuongPhan();" style="margin-right: 5px;" 
468							data-toggle="tooltip" title="Giảm tương phản"> 
469							<img src="/o/portal-dt-home-theme/images/icons/trothinh_bright-down-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
470						</a> 
471						<a class="social-thing" onclick="tangTuongPhan();" style="margin-right: 5px;" 
472							data-toggle="tooltip" title="Tăng tương phản"> 
473							<img src="/o/portal-dt-home-theme/images/icons/trothinh_bright-up-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
474						</a> 
475						<a class="social-thing" style="margin-right: 5px;"> 
476							<img src="/o/portal-dt-home-theme/images/icons/trothinh_wall-ico.png" style="vertical-align: middle;opacity: 1;width: 1px;height: 13px"/> 
477						</a> 
478						<a class="social-thing" onclick="fontMinus();" style="margin-right: 5px;" 
479							data-toggle="tooltip" title="Giảm cỡ chữ"> 
480							<img src="/o/portal-dt-home-theme/images/icons/trothinh_zoom-down-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
481						</a> 
482						<a class="social-thing" onclick="fontDefault();" style="margin-right: 5px;" 
483							data-toggle="tooltip" title="Cỡ chữ mặc định"> 
484							<img src="/o/portal-dt-home-theme/images/icons/trothinh_zoom-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
485						</a> 
486						<a class="social-thing" onclick="fontPlus();" style="margin-right: 5px;" 
487							data-toggle="tooltip" title="Tăng cỡ chữ"> 
488							<img src="/o/portal-dt-home-theme/images/icons/trothinh_zoom-up-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
489						</a> 
490						<a class="social-thing" style="margin-right: 5px;"> 
491							<img src="/o/portal-dt-home-theme/images/icons/trothinh_wall-ico.png" style="vertical-align: middle;opacity: 1;width: 1px;height: 13px"/> 
492						</a> 
493						<a class="social-thing" onclick="printPage('contentText');" style="margin-right: 5px;" 
494							data-toggle="tooltip" title="In bài viết"> 
495							<img src="/o/portal-dt-home-theme/images/icons/trothinh_print-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
496						</a> 
497						<a class="social-thing" href="https://mail.google.com/mail/?view=cm&fs=1&su=${title}&body=${currentUrl}" style="margin-right: 5px;" 
498							data-toggle="tooltip" title="Gửi mail" target="_blank"> 
499							<img src="/o/portal-dt-home-theme/images/icons/trothinh_mail-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;height:13px"/> 
500						</a> 
501					</div> 
502					<input type="hidden" id="voiceSex" value="Vietnamese Female"></input> 
503					<input type="hidden" id="tuongphan" value="3"></input> 
504				</div> 
505			</div> 
506		 
507		<div style="margin:10px"> 
508	        <h2 class="title-divvv" style="color: #ed0678;font-weight: bold;">${title}</h2> 
509	    </div> 
510		<div id="contentText"  style="margin:10px"> 
511		    <b>${summary}</b> 
512		    ${noiDung.getData()} 
513		</div> 
514		<div class="article-info"> 
515			<div class="social-buttons"> 
516				<a href="#"><img src="https://dongthap.gov.vn/documents/34223/36207/quantam-btn.jpg/03716e20-b334-f2ab-e186-370511edfc77?t=1594708727042" style="width: 80px; height: 20px; margin-right: 2px"></a> 
517                <div class="zalo-follow-only-button" data-oaid="3540423014405379625" style="width: 88px;"></div> 
518                <div class="zalo-share-button" data-href="" data-oaid="4499765515963062717" data-layout="1" data-color="blue" data-customize=false></div> 
519                <iframe src="${srcfb}" width="140" height="35" style="border:none;overflow:hidden" scrolling="no" frameborder="0" allowTransparency="true" allow="encrypted-media"></iframe> 
520		    </div> 
521			<#if listLayoutDHD?seq_index_of(layo) &gt; -1 > 
522				<#if teste?has_content> 
523					<div class="tinkhac"> 
524						<div class="bg-tinkhac"></div> 
525						<ul class="list-unstyled"> 
526						<#list teste as curEntryyy> 
527							<#assign  
528							renderer = curEntryyy.getAssetRenderer()  
529							className = renderer.getClassName() /> 
530						<#if className == "com.liferay.journal.model.JournalArticle"> 
531							<#assign  
532									title = curEntryyy.getTitle(locale)  
533									article = renderer.getArticle()  
534									description = article.getDescription(locale)  
535									curEntryyy = curEntryyy  
536									viewURL = "/chi-tiet-chuyen-trang-dh-dang/-/asset_publisher/hPvLbtAWEWEb/content/id/${curEntryyy.getEntryId()}?plidlayout=${themeDisplay.getLayout().getPlid()}" /> 
537							<#if description?has_content && description?length &gt; 300> 
538								<#assign description = description?substring(0,300) + " ..."/> 
539							</#if> 
540 
541									<#if curEntryyy.getAssetRenderer().getThumbnailPath(renderRequest)??> 
542										<#assign smallImageUrl = curEntryyy.getAssetRenderer().getThumbnailPath(renderRequest) > 
543										<#else> 
544											<#assign smallImageUrl = "" > 
545									</#if> 
546									<li><a href="${viewURL}">${title}</a></li> 
547							 
548						</#if> 
549						</#list> 
550						</ul> 
551					</div> 
552				</#if> 
553			<#else> 
554   
555   
556  </div> 
557  </div> 
558  <div class="col-4" style="padding-left:20px"> 
559   
560   
561  <div class="social-buttons right"> 
562				<div> 
563					<p class="other-news">Xem thêm các tin khác </p> 
564				</div> 
565				<div class="row ml-0 mr-0 relatedentry" id="0"> 
566					<ul id="pags"> 
567					<#list teste as curEntryyy> 
568						<#assign  
569						renderer = curEntryyy.getAssetRenderer()  
570						className = renderer.getClassName() /> 
571						<#if className == "com.liferay.journal.model.JournalArticle"> 
572							<#assign  
573								title2 = curEntryyy.getTitle(locale)  
574								article2 = renderer.getArticle() 
575								publishdate2 = curEntryyy.getPublishDate() 
576								viewcount2 = curEntryyy.getViewCount()   
577								description2 = article2.getDescription(locale) 
578								curEntryyy = curEntryyy 
579								viewURL2 = themeDisplay.getPathFriendlyURLPublic() + themeDisplay.getSiteGroup().getFriendlyURL() + "/chi-tiet-bai-viet/-/asset_publisher/1mOzUrGkrdAE/content/id/${curEntryyy.getEntryId()}?plidlayout=${themeDisplay.getLayout().getPlid()}"/> 
580								 
581							<#if curEntryyy.getAssetRenderer().getThumbnailPath(renderRequest)??> 
582								<#assign smallImageUrl = curEntryyy.getAssetRenderer().getThumbnailPath(renderRequest) > 
583								<#else> 
584									<#assign smallImageUrl = "" > 
585							</#if> 
586						 
587								<li style="margin-top:10px"> 
588								<div class="col-md-12 pr-md-2 mb-2"> 
589									<div class="row ml-0 mr-0"> 
590										<div class="col-sm-3"> 
591											<a href="${viewURL2}"><img src="${smallImageUrl}" alt="img" class="img-fluid w-100 other-imgs"></a> 
592										</div> 
593										<div class="col-sm-9 pl-sm-2"> 
594											<a href="${viewURL2}"><p style="margin-bottom: 5px;" class="limit-tit">${title2}</p></a> 
595											<span class="date-span">${publishdate2}</span> 
596										</div> 
597									</div> 
598								</div> 
599								</li> 
600														 
601						</#if> 
602					</#list> 
603					</ul> 
604				</div> 
605			</div> 
606			</#if> 
607			<#if teste?has_content && teste?length &gt; 0> 
608			<div style="text-align: center"> 
609				<script> 
610		//call paginate 
611		$('#pags').paginate(); 
612		</script> 
613			</div> 
614			</#if> 
615		</div> 
616   
617  </div>