Xuất bản thông tin

null Gặp gỡ các ứng cử viên đại biểu HĐND Huyện Châu Thành nhiệm kỳ 2021-2026

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 547, 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 547, 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<style> 
146 
147.page_navigation , .alt_page_navigation{ 
148	padding-bottom: 10px; 
149	 
150
151 
152.page_navigation a, .alt_page_navigation a{ 
153float: left; 
154    width: 32px; 
155    text-align: center; 
156    padding: 6px 0; 
157    border: 1px solid #cdcdcd; 
158    border-right: none; 
159    background: #fff; 
160    color: #45afe4; 
161
162.page_navigation a:hover{ 
163    cursor: pointer; 
164    background: rgb(216, 241, 255); 
165
166.ellipse{ 
167	float: left; 
168	 border-right:1px solid #cdcdcd; 
169
170.active_page{ 
171	background-color:#45afe4 !important; 
172	color:#fff !important; 
173
174</style> 
175<script type="text/javascript"> 
176
177(function($) { /*******************************************************************************************/ 
178 
179	$.fn.pajinate = function(options) { 
180		// Set some state information 
181		var current_page = 'current_page'; 
182		var items_per_page = 'items_per_page'; 
183 
184		var meta; 
185 
186		// Setup default option values 
187		var defaults = { 
188			item_container_id: '.content', 
189			items_per_page: 5, 
190			nav_panel_id: '.page_navigation', 
191			nav_info_id: '.info_text', 
192			num_page_links_to_display: 5, 
193			start_page: 0, 
194			wrap_around: false, 
195			nav_label_first: 'First', 
196			nav_label_prev: 'Prev', 
197			nav_label_next: 'Next', 
198			nav_label_last: 'Last', 
199			nav_order: ["first", "prev", "num", "next", "last"], 
200			nav_label_info: 'Showing {0}-{1} of {2} results', 
201			show_first_last: true, 
202			abort_on_small_lists: false, 
203			jquery_ui: false, 
204			jquery_ui_active: "ui-state-highlight", 
205			jquery_ui_default: "ui-state-default", 
206			jquery_ui_disabled: "ui-state-disabled" 
207		}; 
208 
209		var options = $.extend(defaults, options); 
210		var $item_container; 
211		var $page_container; 
212		var $items; 
213		var $nav_panels; 
214		var total_page_no_links; 
215		var jquery_ui_default_class = options.jquery_ui ? options.jquery_ui_default : ''; 
216		var jquery_ui_active_class = options.jquery_ui ? options.jquery_ui_active : ''; 
217		var jquery_ui_disabled_class = options.jquery_ui ? options.jquery_ui_disabled : ''; 
218 
219		return this.each(function() { 
220			$page_container = $(this); 
221			$item_container = $(this).find(options.item_container_id); 
222			$items = $page_container.find(options.item_container_id).children(); 
223 
224			if (options.abort_on_small_lists && options.items_per_page >= $items.size()) return $page_container; 
225 
226			meta = $page_container; 
227 
228			// Initialize meta data 
229			meta.data(current_page, 0); 
230			meta.data(items_per_page, options.items_per_page); 
231 
232			// Get the total number of items 
233			var total_items = $item_container.children().size(); 
234 
235			// Calculate the number of pages needed 
236			var number_of_pages = Math.ceil(total_items / options.items_per_page); 
237 
238			// Construct the nav bar 
239			var more = '<a class="ellipse more">...</a>'; 
240			var less = '<a class="ellipse less">...</a>'; 
241			var first = !options.show_first_last ? '' : '<a class="first_link ' + jquery_ui_default_class + '" href="">' + options.nav_label_first + '</a>'; 
242			var last = !options.show_first_last ? '' : '<a style="border:1px solid #cdcdcd;" class="last_link ' + jquery_ui_default_class + '" href="">' + options.nav_label_last + '</a>'; 
243 
244			var navigation_html = ""; 
245 
246			for (var i = 0; i < options.nav_order.length; i++) { 
247				switch (options.nav_order[i]) { 
248				case "first": 
249					navigation_html += first; 
250					break; 
251				case "last": 
252					navigation_html += last; 
253					break; 
254				case "next": 
255					navigation_html += '<a class="next_link ' + jquery_ui_default_class + '" href="">' + options.nav_label_next + '</a>'; 
256					break; 
257				case "prev": 
258					navigation_html += '<a class="previous_link ' + jquery_ui_default_class + '" href="">' + options.nav_label_prev + '</a>'; 
259					break; 
260				case "num": 
261					navigation_html += less; 
262					var current_link = 0; 
263					while (number_of_pages > current_link) { 
264						navigation_html += '<a  class="page_link ' + jquery_ui_default_class + '" href="" longdesc="' + current_link + '">' + (current_link + 1) + '</a>'; 
265						current_link++; 
266
267					navigation_html += more; 
268					break; 
269				default: 
270					break; 
271
272 
273
274 
275			// And add it to the appropriate area of the DOM	 
276			$nav_panels = $page_container.find(options.nav_panel_id); 
277			$nav_panels.html(navigation_html).each(function() { 
278 
279				$(this).find('.page_link:first').addClass('first'); 
280				$(this).find('.page_link:last').addClass('last'); 
281 
282			}); 
283 
284			// Hide the more/less indicators 
285			$nav_panels.children('.ellipse').hide(); 
286 
287			// Set the active page link styling 
288			$nav_panels.find('.previous_link').next().next().addClass('active_page ' + jquery_ui_active_class); 
289 
290			/* Setup Page Display */ 
291			// And hide all pages 
292			$items.hide(); 
293			// Show the first page			 
294			$items.slice(0, meta.data(items_per_page)).show(); 
295 
296			/* Setup Nav Menu Display */ 
297			// Page number slices 
298			total_page_no_links = $page_container.find(options.nav_panel_id + ':first').children('.page_link').size(); 
299			options.num_page_links_to_display = Math.min(options.num_page_links_to_display, total_page_no_links); 
300 
301			$nav_panels.children('.page_link').hide(); // Hide all the page links 
302			// And only show the number we should be seeing 
303			$nav_panels.each(function() { 
304				$(this).children('.page_link').slice(0, options.num_page_links_to_display).show(); 
305			}); 
306 
307			/* Bind the actions to their respective links */ 
308 
309			// Event handler for 'First' link 
310			$page_container.find('.first_link').click(function(e) { 
311				e.preventDefault(); 
312 
313				movePageNumbersRight($(this), 0); 
314				gotopage(0); 
315			}); 
316 
317			// Event handler for 'Last' link 
318			$page_container.find('.last_link').click(function(e) { 
319				e.preventDefault(); 
320				var lastPage = total_page_no_links - 1; 
321				movePageNumbersLeft($(this), lastPage); 
322				gotopage(lastPage); 
323			}); 
324 
325			// Event handler for 'Prev' link 
326			$page_container.find('.previous_link').click(function(e) { 
327				e.preventDefault(); 
328				showPrevPage($(this)); 
329			}); 
330 
331 
332			// Event handler for 'Next' link 
333			$page_container.find('.next_link').click(function(e) { 
334				e.preventDefault(); 
335				showNextPage($(this)); 
336			}); 
337 
338			// Event handler for each 'Page' link 
339			$page_container.find('.page_link').click(function(e) { 
340				e.preventDefault(); 
341				gotopage($(this).attr('longdesc')); 
342			}); 
343 
344			// Goto the required page 
345			gotopage(parseInt(options.start_page)); 
346			toggleMoreLess(); 
347			if (!options.wrap_around) tagNextPrev(); 
348		}); 
349 
350		function showPrevPage(e) { 
351			new_page = parseInt(meta.data(current_page)) - 1; 
352 
353			// Check that we aren't on a boundary link 
354			if ($(e).siblings('.active_page').prev('.page_link').length == true) { 
355				movePageNumbersRight(e, new_page); 
356				gotopage(new_page); 
357
358			else if (options.wrap_around) { 
359				gotopage(total_page_no_links - 1); 
360
361 
362		}; 
363 
364		function showNextPage(e) { 
365			new_page = parseInt(meta.data(current_page)) + 1; 
366 
367			// Check that we aren't on a boundary link 
368			if ($(e).siblings('.active_page').next('.page_link').length == true) { 
369				movePageNumbersLeft(e, new_page); 
370				gotopage(new_page); 
371
372			else if (options.wrap_around) { 
373				gotopage(0); 
374
375 
376		}; 
377 
378		function gotopage(page_num) { 
379 
380			page_num = parseInt(page_num, 10) 
381 
382			var ipp = parseInt(meta.data(items_per_page)); 
383 
384			// Find the start of the next slice 
385			start_from = page_num * ipp; 
386 
387			// Find the end of the next slice 
388			end_on = start_from + ipp; 
389			// Hide the current page	 
390			var items = $items.hide().slice(start_from, end_on); 
391 
392			items.show(); 
393 
394			// Reassign the active class 
395			$page_container.find(options.nav_panel_id).children('.page_link[longdesc=' + page_num + ']').addClass('active_page ' + jquery_ui_active_class).siblings('.active_page').removeClass('active_page ' + jquery_ui_active_class); 
396 
397			// Set the current page meta data							 
398			meta.data(current_page, page_num); 
399			/*########## Ajout de l'option page courante + nombre de pages*/ 
400	            	var $current_page = parseInt(meta.data(current_page)+1); 
401	            	// Get the total number of items 
402	            	var total_items = $item_container.children().size(); 
403	            	// Calculate the number of pages needed 
404	            	var $number_of_pages = Math.ceil(total_items / options.items_per_page); 
405            		/*##################################################################*/ 
406			$page_container.find(options.nav_info_id).html(options.nav_label_info.replace("{0}", start_from + 1). 
407			replace("{1}", start_from + items.length).replace("{2}", $items.length).replace("{3}", $current_page).replace("{4}", $number_of_pages)); 
408 
409			// Hide the more and/or less indicators 
410			toggleMoreLess(); 
411 
412			// Add a class to the next or prev links if there are no more pages next or previous to the active page 
413			tagNextPrev(); 
414 
415			// check if the onPage callback is available and call it 
416			if (typeof(options.onPageDisplayed) !== "undefined" ) { 
417				options.onPageDisplayed.call(this, page_num + 1) 
418
419 
420
421 
422		// Methods to shift the diplayed index of page numbers to the left or right 
423 
424 
425		function movePageNumbersLeft(e, new_p) { 
426			var new_page = new_p; 
427 
428			var $current_active_link = $(e).siblings('.active_page'); 
429 
430			if ($current_active_link.siblings('.page_link[longdesc=' + new_page + ']').css('display') == 'none') { 
431 
432				$nav_panels.each(function() { 
433					$(this).children('.page_link').hide() // Hide all the page links 
434					.slice(parseInt(new_page - options.num_page_links_to_display + 1), new_page + 1).show(); 
435				}); 
436
437 
438
439 
440		function movePageNumbersRight(e, new_p) { 
441			var new_page = new_p; 
442 
443			var $current_active_link = $(e).siblings('.active_page'); 
444 
445			if ($current_active_link.siblings('.page_link[longdesc=' + new_page + ']').css('display') == 'none') { 
446 
447				$nav_panels.each(function() { 
448					$(this).children('.page_link').hide() // Hide all the page links 
449					.slice(new_page, new_page + parseInt(options.num_page_links_to_display)).show(); 
450				}); 
451
452
453 
454		// Show or remove the ellipses that indicate that more page numbers exist in the page index than are currently shown 
455 
456 
457		function toggleMoreLess() { 
458 
459			if (!$nav_panels.children('.page_link:visible').hasClass('last')) { 
460				$nav_panels.children('.more').show(); 
461
462			else { 
463				$nav_panels.children('.more').hide(); 
464
465 
466			if (!$nav_panels.children('.page_link:visible').hasClass('first')) { 
467				$nav_panels.children('.less').show(); 
468
469			else { 
470				$nav_panels.children('.less').hide(); 
471
472
473 
474		/* Add the style class ".no_more" to the first/prev and last/next links to allow custom styling */ 
475 
476		function tagNextPrev() { 
477			if ($nav_panels.children('.last').hasClass('active_page')) { 
478				$nav_panels.children('.next_link').add('.last_link').addClass('no_more ' + jquery_ui_disabled_class); 
479
480			else { 
481				$nav_panels.children('.next_link').add('.last_link').removeClass('no_more ' + jquery_ui_disabled_class); 
482
483 
484			if ($nav_panels.children('.first').hasClass('active_page')) { 
485				$nav_panels.children('.previous_link').add('.first_link').addClass('no_more ' + jquery_ui_disabled_class); 
486
487			else { 
488				$nav_panels.children('.previous_link').add('.first_link').removeClass('no_more ' + jquery_ui_disabled_class); 
489
490
491 
492	}; 
493 
494})(jQuery); 
495</script> 
496<script type="text/javascript"> 
497			$(document).ready(function(){ 
498				$('#paging_container5').pajinate({ 
499					nav_label_first : '<<', 
500					nav_label_last : '>>', 
501					nav_label_prev : '<', 
502					nav_label_next : '>' 
503				}); 
504			});			 
505			 
506		</script> 
507<#assign  
508    title = .vars['reserved-article-title'].data 
509	portalURL = themeDisplay.getPortalURL()  
510	currentUrl = portalURL + themeDisplay.getURLCurrent()  
511	imageUrl = portalURL + .vars['reserved-article-small-image-url'].data  
512	srcfb = "https://www.facebook.com/plugins/like.php?href=${currentUrl}&width=172&layout=button_count&action=like&size=small&share=true&height=46&appId"  
513	displayDate = .vars['reserved-article-display-date'].data 
514	summary = .vars['reserved-article-description'].data/> 
515 
516	<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")> 
517 
518	<#assign scopeId = themeDisplay.getScopeGroupId()> 
519 
520	<#assign contentId = .vars['reserved-article-id'].data> 
521 
522	<#assign articlePrimKey = JournalArticleLocalService.getArticle(getterUtil.getLong(scopeId), contentId).resourcePrimKey> 
523 
524	<#assign catLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")> 
525	<#assign articleCatId = catLocalService.getCategoryIds("com.liferay.journal.model.JournalArticle", getterUtil.getLong(articlePrimKey))> 
526	 
527	<#assign categoryList = catLocalService.getAssetEntryAssetCategories(getterUtil.getLong(articlePrimKey))> 
528     
529	<#assign assetEntryQueryService = objectUtil('com.liferay.asset.kernel.service.AssetEntryLocalServiceUtil')> 
530 
531	<#assign assetEntryQuery = objectUtil('com.liferay.asset.kernel.service.persistence.AssetEntryQuery')> 
532	 
533 
534	<#assign search = assetEntryQuery.setAllCategoryIds(articleCatId)> 
535	<#assign search = assetEntryQuery.setOrderByCol1("publishDate")/> 
536    <#assign search = assetEntryQuery.setOrderByType1("DESC")/> 
537 
538	<#assign teste = assetEntryQueryService.getEntries(assetEntryQuery) 
539			totalPage = 0/> 
540 
541<#assign layoutService =  serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService") /> 
542<#if (request.getParameter("plidlayout")?has_content)> 
543    <#assign plidlayout = request.getParameter("plidlayout") /> 
544    <#else> 
545    <#assign plidlayout = 2 /> 
546</#if> 
547<#assign layout = layoutService.fetchLayout(plidlayout?number) /> 
548<#assign curLayout = layoutService.fetchLayout(plid?number) /> 
549<#assign pageTitle = layout.getName(locale) /> 
550<#assign pageUrl = layout.getFriendlyURL(locale) /> 
551<#assign curPageTitle = curLayout.getName(locale) /> 
552<#assign originalLocale = .locale> 
553<#setting locale = localeUtil.getDefault()> 
554<#assign displayDate = displayDate?datetime("EEE, d MMM yyyy HH:mm:ss Z")> 
555<#assign locale = originalLocale> 
556<#assign displayDate = displayDate?string("HH:mm dd/MM/yyyy")> 
557 
558<#assign listLayoutDHD = [5474,5512,179]> 
559<#assign layo = themeDisplay.getPlid() /> 
560 
561<script src="https://sp.zalo.me/plugins/sdk.js"></script> 
562<liferay-util:html-top outputKey="htmltop"> 
563    <meta name="url" property="og:url" content="${currentUrl}" /> 
564	<meta name="type" property="og:type" content="article" /> 
565    <meta name="title" property="og:title" content="${.vars['reserved-article-title'].data}" /> 
566    <meta name="image" property="og:image" content="${imageUrl}" > 
567</liferay-util:html-top> 
568 
569 
570 
571<div class="row"> 
572  <div class="col-8"> 
573   
574   
575  <#if listLayoutDHD?seq_index_of(layo) &gt; -1 > 
576		        <div class="brumnoidung"> 
577                	<ul class="breadcrumb"> 
578                		<li class="breadcrumb-item crum1"><a href="/home">Trang chủ</a></li> 
579                		<li class="breadcrumb-item active">Tin tức</li> 
580                	</ul> 
581                </div> 
582                <#else> 
583				<span style="position: relative;font-weight: bold;font-size: 17px;border-left: 3px solid #ed0678;padding: 5px;background-color: darkgrey;" class="tieuDe-asset"> 
584					<a href="${pageUrl}">${pageTitle}</a> 
585				</span> 
586				<#assign journalArticleId = .vars['reserved-article-id'].data> 
587				<#assign journalArticleResourceLocalServiceUtil = staticUtil["com.liferay.journal.service.JournalArticleResourceLocalServiceUtil"]> 
588				<#assign assetCategoryLocalServiceUtil = staticUtil["com.liferay.asset.kernel.service.AssetCategoryLocalServiceUtil"]> 
589 
590				<#assign articleResourcePK = journalArticleResourceLocalServiceUtil.getArticleResourcePrimKey(groupId, journalArticleId)/> 
591				<#assign categoryList=assetCategoryLocalServiceUtil.getCategories("com.liferay.journal.model.JournalArticle",articleResourcePK) > 
592				 
593				<#list categoryList as thisCategory> 
594					<#if (thisCategory_index==0)> 
595						<span class="curPage-title" style="font-size: 17px;padding-left: 17px;font-weight: bold;">${thisCategory.getName()}</span> 
596					</#if> 
597				</#list> 
598			</#if> 
599			 
600			<div class="article-head"> 
601				<div class="article-info" style="border-top: 0px;border-bottom: 0px;margin-left: 11px;"> 
602					<div class="social-buttons left"> 
603                        ${displayDate} 
604					</div> 
605					<div class="social-buttons right"> 
606					    <a class="social-thing" onclick="voiceSpeak('contentText','voiceSex')"; style="margin-right: 5px;" 
607							data-toggle="tooltip" title="Đọc bài viết"> 
608							<img class="volume-up" src="/o/portal-dt-home-theme/images/icons/trothinh_volume-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
609						</a> 
610						<a id="void-pause" class="social-thing" onclick="voicePause()"; style="margin-right: 1px;display:none;" 
611							data-toggle="tooltip" title="Tạm dừng đọc"> 
612							<span class="fa fa-pause" style="vertical-align: middle;opacity: 1;width: 13px;color: dimgray;"/> 
613						</a> 
614						<a id="void-resume" class="social-thing" onclick="voiceResume()"; style="margin-right: 1px;display:none;" 
615							data-toggle="tooltip" title="Tiếp tục đọc"> 
616							<span class="fa fa-repeat" style="vertical-align: middle;opacity: 1;width: 13px;color: dimgray;"></span> 
617						</a> 
618						<a id="void-stop" class="social-thing" onclick="voiceCancel()"; style="margin-right: 1px;display:none;" 
619							data-toggle="tooltip" title="Dừng đọc"> 
620							<span class="fa fa-stop"style="vertical-align: middle;opacity: 1;width: 13px;color: dimgray;"/> 
621						</a> 
622						<a class="social-thing" style="margin-right: 5px;"> 
623							<img src="/o/portal-dt-home-theme/images/icons/trothinh_wall-ico.png" style="vertical-align: middle;opacity: 1;width: 1px;height: 13px"/> 
624						</a> 
625						<a class="social-thing" onclick="giamTuongPhan();" style="margin-right: 5px;" 
626							data-toggle="tooltip" title="Giảm tương phản"> 
627							<img src="/o/portal-dt-home-theme/images/icons/trothinh_bright-down-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
628						</a> 
629						<a class="social-thing" onclick="tangTuongPhan();" style="margin-right: 5px;" 
630							data-toggle="tooltip" title="Tăng tương phản"> 
631							<img src="/o/portal-dt-home-theme/images/icons/trothinh_bright-up-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
632						</a> 
633						<a class="social-thing" style="margin-right: 5px;"> 
634							<img src="/o/portal-dt-home-theme/images/icons/trothinh_wall-ico.png" style="vertical-align: middle;opacity: 1;width: 1px;height: 13px"/> 
635						</a> 
636						<a class="social-thing" onclick="fontMinus();" style="margin-right: 5px;" 
637							data-toggle="tooltip" title="Giảm cỡ chữ"> 
638							<img src="/o/portal-dt-home-theme/images/icons/trothinh_zoom-down-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
639						</a> 
640						<a class="social-thing" onclick="fontDefault();" style="margin-right: 5px;" 
641							data-toggle="tooltip" title="Cỡ chữ mặc định"> 
642							<img src="/o/portal-dt-home-theme/images/icons/trothinh_zoom-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
643						</a> 
644						<a class="social-thing" onclick="fontPlus();" style="margin-right: 5px;" 
645							data-toggle="tooltip" title="Tăng cỡ chữ"> 
646							<img src="/o/portal-dt-home-theme/images/icons/trothinh_zoom-up-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
647						</a> 
648						<a class="social-thing" style="margin-right: 5px;"> 
649							<img src="/o/portal-dt-home-theme/images/icons/trothinh_wall-ico.png" style="vertical-align: middle;opacity: 1;width: 1px;height: 13px"/> 
650						</a> 
651						<a class="social-thing" onclick="printPage('contentText');" style="margin-right: 5px;" 
652							data-toggle="tooltip" title="In bài viết"> 
653							<img src="/o/portal-dt-home-theme/images/icons/trothinh_print-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
654						</a> 
655						<a class="social-thing" href="https://mail.google.com/mail/?view=cm&fs=1&su=${title}&body=${currentUrl}" style="margin-right: 5px;" 
656							data-toggle="tooltip" title="Gửi mail" target="_blank"> 
657							<img src="/o/portal-dt-home-theme/images/icons/trothinh_mail-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;height:13px"/> 
658						</a> 
659					</div> 
660					<input type="hidden" id="voiceSex" value="Vietnamese Female"></input> 
661					<input type="hidden" id="tuongphan" value="3"></input> 
662				</div> 
663			</div> 
664		 
665		<div style="margin:10px"> 
666	        <h2 class="title-divvv" style="color: #ed0678;font-weight: bold;">${title}</h2> 
667	    </div> 
668		<div id="contentText"  style="margin:10px"> 
669		    <b>${summary}</b> 
670		    ${noiDung.getData()} 
671		</div> 
672		<div class="article-info"> 
673			<div class="social-buttons"> 
674				<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> 
675                <div class="zalo-follow-only-button" data-oaid="3540423014405379625" style="width: 88px;"></div> 
676                <div class="zalo-share-button" data-href="" data-oaid="4499765515963062717" data-layout="1" data-color="blue" data-customize=false></div> 
677                <iframe src="${srcfb}" width="140" height="35" style="border:none;overflow:hidden" scrolling="no" frameborder="0" allowTransparency="true" allow="encrypted-media"></iframe> 
678		    </div> 
679			<#if listLayoutDHD?seq_index_of(layo) &gt; -1 > 
680				<#if teste?has_content> 
681					<div class="tinkhac"> 
682						<div class="bg-tinkhac"></div> 
683						<ul class="list-unstyled"> 
684						<#list teste as curEntryyy> 
685							<#assign  
686							renderer = curEntryyy.getAssetRenderer()  
687							className = renderer.getClassName() /> 
688						<#if className == "com.liferay.journal.model.JournalArticle"> 
689							<#assign  
690									title = curEntryyy.getTitle(locale)  
691									article = renderer.getArticle()  
692									description = article.getDescription(locale)  
693									curEntryyy = curEntryyy  
694									viewURL = "/chi-tiet-chuyen-trang-dh-dang/-/asset_publisher/hPvLbtAWEWEb/content/id/${curEntryyy.getEntryId()}?plidlayout=${themeDisplay.getLayout().getPlid()}" /> 
695							<#if description?has_content && description?length &gt; 300> 
696								<#assign description = description?substring(0,300) + " ..."/> 
697							</#if> 
698 
699									<#if curEntryyy.getAssetRenderer().getThumbnailPath(renderRequest)??> 
700										<#assign smallImageUrl = curEntryyy.getAssetRenderer().getThumbnailPath(renderRequest) > 
701										<#else> 
702											<#assign smallImageUrl = "" > 
703									</#if> 
704									<li><a href="${viewURL}">${title}</a></li> 
705							 
706						</#if> 
707						</#list> 
708						</ul> 
709					</div> 
710				</#if> 
711			<#else> 
712   
713   
714  </div> 
715  </div> 
716  <div class="col-4" style="padding-left:20px"> 
717   
718   
719  
720			</#if> 
721			<#if teste?has_content && teste?length &gt; 0> 
722			<div style="text-align: center"> 
723				 
724			</div> 
725			</#if> 
726		</div> 
727   
728  </div>