Xuất bản thông tin

null Tổng kết, trao giải Cuộc thi Sáng tạo Thanh thiếu niên - Nhi đồng

Có lỗi xảy ra trong quá trình xử lý biểu mẫu.
Java method "com.sun.proxy.$Proxy2216.getArticle(long, String)" threw an exception when invoked on com.sun.proxy.$Proxy2216 object "com.liferay.journal.change.tracking.internal.service.CTJournalArticleLocalServiceWrapper@448535b0"; see cause exception in the Java stack trace.

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign articlePrimKey = JournalArtic...  [in template "34201#34227#43055" at line 522, column 9]
----
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  <div class="social-buttons right"> 
720				<div> 
721					<p class="other-news">Xem thêm các tin khác </p> 
722				</div> 
723				<div class="row ml-0 mr-0 relatedentry" id="0"> 
724				<div id="paging_container5"> 
725					<ul class="content" style="padding-bottom: 15px;"> 
726					<#list teste as curEntryyy> 
727						<#assign  
728						renderer = curEntryyy.getAssetRenderer()  
729						className = renderer.getClassName() /> 
730						<#if className == "com.liferay.journal.model.JournalArticle"> 
731							<#assign  
732								title2 = curEntryyy.getTitle(locale)  
733								article2 = renderer.getArticle() 
734								publishdate2 = curEntryyy.getPublishDate() 
735								viewcount2 = curEntryyy.getViewCount()   
736								description2 = article2.getDescription(locale) 
737								curEntryyy = curEntryyy 
738								viewURL2 = themeDisplay.getPathFriendlyURLPublic() + themeDisplay.getSiteGroup().getFriendlyURL() + "/chi-tiet-bai-viet/-/asset_publisher/1mOzUrGkrdAE/content/id/${curEntryyy.getEntryId()}?plidlayout=${themeDisplay.getLayout().getPlid()}"/> 
739								 
740							<#if curEntryyy.getAssetRenderer().getThumbnailPath(renderRequest)??> 
741								<#assign smallImageUrl = curEntryyy.getAssetRenderer().getThumbnailPath(renderRequest) > 
742								<#else> 
743									<#assign smallImageUrl = "" > 
744							</#if> 
745						 
746								<li style="margin-top:10px"> 
747								<div class="col-md-12"> 
748									<div class="row ml-0 mr-0"> 
749										<div class="col-sm-3"> 
750											<a href="${viewURL2}"><img src="${smallImageUrl}" alt="img" class="img-fluid w-100 other-imgs"></a> 
751										</div> 
752										<div class="col-sm-9 pl-sm-2"> 
753											<a href="${viewURL2}"><p style="margin-bottom: 5px;" class="limit-tit">${title2}</p></a> 
754											<span class="date-span">${publishdate2}</span> 
755										</div> 
756									</div> 
757								</div> 
758								</li> 
759														 
760						</#if> 
761					</#list> 
762					</ul>	 
763				<div class="page_navigation"></div> 
764				</div> 
765				 
766				</div> 
767			</div> 
768			</#if> 
769			<#if teste?has_content && teste?length &gt; 0> 
770			<div style="text-align: center"> 
771				 
772			</div> 
773			</#if> 
774		</div> 
775   
776  </div> 

Follow

Tin xem nhiều

Danh mục chính Menu

Chính quyền với báo chí

Mục này cập nhật liên tục thông tin nổi bật của báo chí trong và ngoài tỉnh về vùng đất Sen Hồng

Phản hồi báo chí
Thông cáo báo chí
Người phát ngôn
Báo chí với Đồng Tháp

Danh mục chính Menu

Banner Bản tin chỉ đạo điều hành

Banner Video

Banner Tin đồ họa

Banner Megastory

Tin nổi bật