Xuất bản thông tin

null Khẩn trương sửa chữa, bảo trì các trường học có dấu hiệu xuống cấp

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 308, 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 308, 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		padding: 8px 16px; 
57		text-decoration: none; 
58		transition: background-color .3s; 
59		border: 1px solid #ddd; 
60		margin: 0px; 
61
62	 
63	.pagination2 select {	     
64		cursor: pointer; 
65		padding: 6px 6px; 
66		margin: 0px; 
67
68 
69	.pagination2 a.active { 
70		background-color: #4CAF50; 
71		color: white; 
72		border: 1px solid #4CAF50; 
73
74 
75	.pagination2 a:hover:not(.active) { 
76		background-color: #ddd; 
77
78	.tieuDe-asset::after { 
79		position: absolute; 
80		content: ""; 
81		left: 100%; 
82		top: 0; 
83		border-top: 14px solid transparent; 
84		border-bottom: 15px solid transparent; 
85		border-left: 13px solid darkgray; 
86
87	.asset-full-content.clearfix.mb-5.show-asset-title { 
88		margin-bottom: 0 !important; 
89
90	.article-head { 
91		margin-bottom: 0; 
92
93	@media only screen and (max-width: 768px) { 
94		#contentText iframe { 
95			width: 100% !important; 
96
97		.article-head .article-info { 
98			margin-bottom: 0; 
99			padding: 15px 0 8px 0; 
100
101
102	@media only screen and (max-width: 500px) { 
103		.curPage-title { 
104			display: unset !important; 
105
106
107	button.quantam { 
108		background-color: red; 
109		border: red solid 2.5px; 
110		border-radius: 3px; 
111		color: white; 
112		font-size: 13px; 
113
114	.botting-border { 
115		width: 145px; 
116		color: #292a32; 
117		background: unset; 
118		font-family: "Roboto Slab"; 
119		text-transform: unset; 
120		font-weight: bold; 
121		font-size: 20px; 
122		margin-bottom: 15px; 
123		border-bottom: 3px solid #d1d2d4; 
124
125	.botting-border:after { 
126		content: ''; 
127		display: block; 
128		border-bottom: 3px solid #ed0678; 
129		margin-bottom: -3px; 
130		max-width: 32%; 
131
132	 
133	.buttonIn {  
134        position: relative;  
135    }  
136       
137	.btnsend {  
138		color: #FFF; 
139		background-color: #EC0677; 
140		border-color: #EC0677; 
141		padding: 3px 0.75rem; 
142        position: absolute;  
143        border-radius: 1px;  
144        right: 20px; 
145        z-index: 2;  
146        border: none;  
147        top: 22px;  
148        height: 30px;  
149        cursor: pointer;   
150        transform: translateX(2px);  
151    }  
152	.button-dt {  
153		color: #FFF; 
154		background-color: #EC0677; 
155		border-color: #EC0677; 
156		padding: 3px 0.75rem; 
157        border-radius: 1px;  
158        height: 30px;  
159		margin: 3px; 
160    }  
161	.button-dt-close {  
162		color: #FFF; 
163		background-color: #EC0677; 
164		border-color: #EC0677; 
165		padding: 3px 0.75rem; 
166        border-radius: 1px;  
167        height: 30px;  
168		margin: 3px; 
169    }  
170    .md-textarea {  
171        margin: 0px;  
172        padding: 30px 70px 0px 15px; 
173        width: 100%;  
174		height: 80px; 
175        outline: none;  
176        border-radius: 3px;  
177    }  
178	.comment{ 
179		display: inline-block; 
180		margin-top: 5px; 
181		width: 100%; 
182
183	.comment-text{ 
184		padding-left: 51px; 
185		margin-top: -9px; 
186		font-size: 14px; 
187
188	 
189	.comment-child{ 
190		margin-left:35px; 
191
192	 
193	 
194	.modal-thongtin { 
195		display: none; 
196		position: fixed; 
197		z-index: 1; 
198		padding-top: 100px; 
199		left: 0; 
200		top: 0; 
201		width: 100%; 
202		height: 100%; 
203		overflow: auto; 
204		background-color: rgb(0, 0, 0); 
205		background-color: rgba(0, 0, 0, .4); 
206
207	 
208	.modal-thongtin-reply { 
209		display: none; 
210		position: fixed; 
211		z-index: 1; 
212		padding-top: 100px; 
213		left: 0; 
214		top: 0; 
215		width: 100%; 
216		height: 100%; 
217		overflow: auto; 
218		background-color: rgb(0, 0, 0); 
219		background-color: rgba(0, 0, 0, .4); 
220
221 
222	.modal-thongtin-content { 
223		background-color: #fefefe; 
224		margin: auto; 
225		padding: 20px; 
226		border: 1px solid #888; 
227		width: 60%; 
228
229 
230	.close { 
231		color: #aaaaaa; 
232		float: right; 
233		font-size: 28px; 
234		font-weight: bold; 
235
236 
237	.close:hover, 
238	.close:focus { 
239		color: #000; 
240		text-decoration: none; 
241		cursor: pointer; 
242
243	 
244	.btnreply { 
245		color: #FFF; 
246		background-color: #EC0677; 
247		border-color: #EC0677; 
248		padding: 3px 0.75rem; 
249		border: none; 
250		height: 33px; 
251
252.tomtat p{ 
253	text-align: justify; 
254	font-size:12pt !important; 
255	line-height:160% !important; 
256	font-weight:bold; 
257
258sup { 
259    top: 6px !important; 
260    font-size: 8px !important; 
261
262 
263</style> 
264 
265<script> 
266    $(document).ready(function () { 
267        const divs = document.querySelectorAll('.nav-link'); 
268        divs.forEach(el => el.addEventListener('click', event => { 
269          location.href = event.target.getAttribute("href"); 
270        	 
271        })); 
272         
273    }); 
274</script> 
275<#assign  
276    title = .vars['reserved-article-title'].data 
277	portalURL = themeDisplay.getPortalURL()  
278	currentUrl = portalURL + themeDisplay.getURLCurrent()  
279	imageUrl = portalURL + .vars['reserved-article-small-image-url'].data 
280	srcfb = "https://www.facebook.com/plugins/like.php?href=${currentUrl}&width=172&layout=button_count&action=like&size=small&share=true&height=46&appId=2034212100232051"  
281	displayDate = .vars['reserved-article-display-date'].data 
282	summary = .vars['reserved-article-description'].data/> 
283	 
284	 
285 
286<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")> 
287 
288<#assign scopeId = themeDisplay.getScopeGroupId()> 
289 
290<#assign thumnail_logo = "https://thunghiem.dongthap.gov.vn/o/portal-dt-home-theme/images/dong-thap/banner-vietnamese.jpg"> 
291 
292<#assign contentId = .vars['reserved-article-id'].data> 
293 
294<#assign article = journalArticleLocalService.getArticle(getterUtil.getLong(scopeId), contentId)> 
295<#assign articlePrimKey = article.resourcePrimKey> 
296<#assign userLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.UserLocalService")> 
297<#assign catLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")> 
298<#assign articleCatId = catLocalService.getCategoryIds("com.liferay.journal.model.JournalArticle", getterUtil.getLong(articlePrimKey))> 
299 
300<#assign categoryList = catLocalService.getAssetEntryAssetCategories(getterUtil.getLong(articlePrimKey))> 
301 
302<#assign layoutService =  serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService") /> 
303<#if (request.getParameter("plidlayout")?has_content)> 
304    <#assign plidlayout = request.getParameter("plidlayout") /> 
305    <#else> 
306    <#assign plidlayout = 2 /> 
307</#if> 
308<#assign layout = layoutService.fetchLayout(plidlayout?number) /> 
309<#assign curLayout = layoutService.fetchLayout(plid?number) /> 
310<#assign pageTitle = layout.getName(locale) /> 
311<#assign pageUrl = layout.getFriendlyURL(locale) /> 
312<#assign curPageTitle = curLayout.getName(locale) /> 
313<#assign originalLocale = .locale> 
314<#setting locale = localeUtil.getDefault()> 
315<#assign displayDate = displayDate?datetime("EEE, d MMM yyyy HH:mm:ss Z")> 
316<#assign locale = originalLocale> 
317<#assign displayDate = displayDate?string("HH:mm dd/MM/yyyy")> 
318 
319<#assign listLayoutDHD = [5474,5512,179]> 
320<#assign layo = themeDisplay.getPlid() /> 
321<#assign articleCatIds = "" /> 
322<#list articleCatId as item> 
323	<#assign articleCatIds = articleCatIds + item + "," /> 
324</#list> 
325 
326<#assign assetEntryQueryService = objectUtil('com.liferay.asset.kernel.service.AssetEntryLocalServiceUtil')> 
327 
328<#assign assetEntryQuery = objectUtil('com.liferay.asset.kernel.service.persistence.AssetEntryQuery')> 
329 
330 
331 
332<#assign search = assetEntryQuery.setAllCategoryIds(articleCatId)> 
333<#assign search = assetEntryQuery.setOrderByCol1("publishDate")/> 
334<#assign search = assetEntryQuery.setStart(0)/> 
335<#assign search = assetEntryQuery.setEnd(10)/> 
336<#assign search = assetEntryQuery.setOrderByType1("DESC")/> 
337 
338<#assign teste = assetEntryQueryService.getEntries(assetEntryQuery) 
339		totalPage = 0/> 
340		 
341		<meta name="DC.Description" content="${summary?replace("<p>","")?replace("</p>","")}"> 
342        <meta name="DC.DateCreated" content="${displayDate}"> 
343        <meta name="DC.Title" content="${title}"> 
344        <meta name="DC.Coverage" content="Việt Nam"> 
345        <meta name="DC.Creator" content="Admin Cổng thông tin Đồng Tháp"> 
346        <meta name="DC.Publisher" content="Cơ quan phát ngôn của tỉnh Đồng Tháp"> 
347        <meta name="DC.Subject" content="${title}"> 
348        <meta name="DC.Relation" content=""> 
349        <meta name="DC.Rights" content="Bất kỳ ai cũng có quyền truy cập"> 
350        <meta name="DC.Type" content="Text"> 
351        <meta name="DC.DateIssued" content="${displayDate}"> 
352        <meta name="DC.Format" content="text/html"> 
353        <meta name="DC.Identifier" content="https://dongthap.gov.vn"> 
354        <meta name="DC.Language" content="Việt Nam"> 
355        <meta name="DC.DateValid" content="${displayDate}"> 
356        <meta name="DC.DateModified" content="${displayDate}"> 
357 
358 <liferay-util:html-top outputKey="htmltop" style="display:none;"> 
359	<meta name="title" property="og:title" content="${title}"/> 
360    <meta name="image" property="og:image" content="${imageUrl}"/> 
361    <meta name="image" property="og:image:secure_url" content="${imageUrl}"/> 
362    <meta name="description" property="og:description" content="${summary?replace("<p>","")?replace("</p>","")}"/> 
363    <meta name="url" property="og:url" content="${currentUrl}"/> 
364</liferay-util:html-top> 
365 
366<script> 
367	$(document).ready(function () { 
368		var modal = $('.modal-thongtin'); 
369		var btn = $('.btnsend'); 
370		var button_dt = $('.button-dt'); 
371		var button_dt_close = $('.button-dt-close'); 
372		var span = $('.close'); 
373		var baiVietId = $('#baiVietId'); 
374		var tieuDe = $('#tieuDe'); 
375		var commentContent = $('#commentContent'); 
376		var commentName = $('#commentName'); 
377		var commentAddress = $('#commentAddress'); 
378		var commentEmail = $('#commentEmail'); 
379		 
380		btn.click(function () { 
381			if (commentContent.val().length == 0) { 
382				alert('Vui lòng nhập nội dung ý kiến!'); 
383			} else { 
384				modal.show(); 
385				btn.hide(); 
386
387		}); 
388		 
389		button_dt.click(function () { 
390		const valid = /^[^\s@]+@[^\s@]+\.[^\s@]+$/; 
391			if (commentName.val().length == 0) { 
392				commentName.css('border-color', 'red'); 
393				commentName.focus(); 
394			} else if (commentAddress.val().length == 0) { 
395				commentAddress.css('border-color', 'red'); 
396				commentAddress.focus(); 
397			} else if (commentEmail.val().length == 0) { 
398				commentEmail.css('border-color', 'red'); 
399				commentEmail.focus(); 
400			} else if (!valid.test(commentEmail.val())) { 
401				commentEmail.css('border-color', 'red'); 
402				commentEmail.focus(); 
403				alert('Vui lòng nhập đúng email!'); 
404			}else { 
405				comment(baiVietId.val(), tieuDe.val(), commentContent.val(), commentName.val(), commentAddress.val(), commentEmail.val(), ${groupId}); 
406				commentContent.val(''); 
407				commentName.val(''); 
408				commentAddress.val(''); 
409				commentEmail.val(''); 
410				modal.hide(); 
411				btn.show(); 
412				 
413
414		}); 
415		 
416		button_dt_close.click(function () { 
417			commentContent.val(''); 
418			commentName.val(''); 
419			commentAddress.val(''); 
420			commentEmail.val(''); 
421			commentName.css('border-color', '#ccc'); 
422			commentAddress.css('border-color', '#ccc'); 
423			commentEmail.css('border-color', '#ccc'); 
424			modal.hide(); 
425			btn.show(); 
426			 
427		}); 
428 
429		span.click(function () { 
430			commentContent.val(''); 
431			commentName.val(''); 
432			commentAddress.val(''); 
433			commentEmail.val(''); 
434			modal.hide(); 
435			$('.replyBox').hide(); 
436			btn.show(); 
437			 
438			$('.inputReplyContent').val(''); 
439			commentNameReply.val(''); 
440			commentAddressReply.val(''); 
441			commentEmailReply.val(''); 
442			modal_reply.hide(); 
443			$('.replyBox').hide(); 
444			btnreply.show(); 
445		}); 
446 
447		$(window).on('click', function (e) { 
448		if ($(e.target).is('.modal-thongtin')) { 
449			commentContent.val(''); 
450			commentName.val(''); 
451			commentAddress.val(''); 
452			commentEmail.val(''); 
453			modal.hide(); 
454			btn.show(); 
455
456		if ($(e.target).is('.modal-thongtin-reply')) { 
457			$('.inputReplyContent').val(''); 
458			commentNameReply.val(''); 
459			commentAddressReply.val(''); 
460			commentEmailReply.val(''); 
461			modal_reply.hide(); 
462			btnreply.show(); 
463
464		}); 
465		 
466		 
467		var modal_reply = $('.modal-thongtin-reply'); 
468		var btnreply = $('.btnreply'); 
469		var button_dt_reply = $('.button-dt-reply'); 
470		var button_dt_reply_close = $('.button-dt-reply-close'); 
471		var span = $('.close'); 
472		var commentNameReply = $('#commentNameReply'); 
473		var commentAddressReply = $('#commentAddressReply'); 
474		var commentEmailReply = $('#commentEmailReply'); 
475		 
476		function submitreply() { 
477			var commentId = $('#commentId').val(); 
478			if ($('#inputReplyContent' + commentId).val().length == 0) { 
479				alert('Vui lòng nhập nội dung ý kiến!'); 
480			} else { 
481				modal_reply.show(); 
482				$('#commentContentReply').val($('#inputReplyContent' + commentId).val()); 
483				btnreply.hide(); 
484
485
486		 
487		button_dt_reply.click(function () { 
488			if (commentNameReply.val().length == 0) { 
489				commentNameReply.css('border-color', 'red'); 
490			} else if (commentAddressReply.val().length == 0) { 
491				commentAddressReply.css('border-color', 'red'); 
492			} else if (commentEmailReply.val().length == 0) { 
493				commentEmailReply.css('border-color', 'red'); 
494			} else { 
495				replyComment($('#commentId').val(),baiVietId.val(), tieuDe.val(), $('#commentContentReply').val(), commentNameReply.val(), commentAddressReply.val(), commentEmailReply.val()); 
496				$('.inputReplyContent').val(''); 
497				commentNameReply.val(''); 
498				commentAddressReply.val(''); 
499				commentEmailReply.val(''); 
500				modal_reply.hide(); 
501
502		}); 
503		 
504		button_dt_reply_close.click(function () { 
505			$('.inputReplyContent').val(''); 
506			commentNameReply.val(''); 
507			commentAddressReply.val(''); 
508			commentEmailReply.val(''); 
509			modal_reply.hide(); 
510			 
511		}); 
512	}); 
513	 
514	function submitreply() { 
515		var commentId = $('#commentId').val(); 
516		if ($('#inputReplyContent' + commentId).val().length == 0) { 
517			alert('Vui lòng nhập nội dung ý kiến!'); 
518		} else { 
519			$('.modal-thongtin-reply').show(); 
520			$('#commentContentReply').val($('#inputReplyContent' + commentId).val()); 
521			$('.btnreply').hide(); 
522
523
524	 
525	function changePageSize(){ 
526		var pageSize = $('#pageSize').val(); 
527		var pageIndex = $('#pageIndex').val(); 
528		paginate(pageIndex, pageSize); 
529
530	 
531	function changePageIndex(){ 
532		var pageSize = $('#pageSize').val(); 
533		var pageIndex = $('#pageIndex').val(); 
534		$('#curPage').val(pageIndex); 
535		paginate(pageIndex, pageSize);	 
536
537	 
538 
539</script> 
540<script type="text/javascript" src="https://dongthap.gov.vn/documents/34223/0/html2pdf.js"></script> 
541<script> 
542      function generatePDF() { 
543        // Choose the element that our invoice is rendered in. 
544        const element = document.getElementById("contentText"); 
545        // Choose the element and save the PDF for our user. 
546        html2pdf() 
547          .from(element) 
548          .save(); 
549
550      </script> 
551<script src="https://sp.zalo.me/plugins/sdk.js"></script> 
552<div class="main-content"> 
553	<div class="panel" id="main-body"> 
554		<div class="shortcode-content hreview">			 
555		    <#if listLayoutDHD?seq_index_of(layo) &gt; -1 > 
556		        <div class="brumnoidung"> 
557                	<ul class="breadcrumb"> 
558                		<li class="breadcrumb-item crum1"><a href="/home">Trang chủ</a></li> 
559                		<li class="breadcrumb-item active">Tin tức</li> 
560                	</ul> 
561                </div> 
562                <#else> 
563				<span style="position: relative;font-weight: bold;font-size: 17px;border-left: 3px solid #ed0678;padding: 5px;background-color: darkgrey;" class="tieuDe-asset"> 
564					<a href="https://dongthap.gov.vn">Trang chủ</a> 
565				</span> 
566				<#assign journalArticleId = .vars['reserved-article-id'].data> 
567				<#assign journalArticleResourceLocalServiceUtil = staticUtil["com.liferay.journal.service.JournalArticleResourceLocalServiceUtil"]> 
568				<#assign assetCategoryLocalServiceUtil = staticUtil["com.liferay.asset.kernel.service.AssetCategoryLocalServiceUtil"]> 
569 
570				<#assign articleResourcePK = journalArticleResourceLocalServiceUtil.getArticleResourcePrimKey(groupId, journalArticleId)/> 
571				<#assign categoryList=assetCategoryLocalServiceUtil.getCategories("com.liferay.journal.model.JournalArticle",articleResourcePK) > 
572				 
573				<#list categoryList as thisCategory> 
574					<#if (thisCategory_index==0)> 
575						<span class="curPage-title" style="font-size: 17px;padding-left: 17px;font-weight: bold;">${thisCategory.getName()}</span> 
576					</#if> 
577				</#list> 
578			</#if> 
579			 
580			<div class="article-head"> 
581				<div class="article-info" style="border-top: 0px;border-bottom: 0px;margin-left: 11px;"> 
582					<div class="social-buttons left"> 
583                        ${displayDate} 
584					</div> 
585					<div class="social-buttons right"> 
586					    <a class="social-thing" onclick="voiceSpeak('contentText','voiceSex')"; style="margin-right: 5px;" 
587							data-toggle="tooltip" title="Đọc bài viết"> 
588							<img class="volume-up" src="/o/portal-dt-home-theme/images/icons/trothinh_volume-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
589						</a> 
590						<a id="void-pause" class="social-thing" onclick="voicePause()"; style="margin-right: 1px;display:none;" 
591							data-toggle="tooltip" title="Tạm dừng đọc"> 
592							<span class="fa fa-pause" style="vertical-align: middle;opacity: 1;width: 13px;color: dimgray;"/> 
593						</a> 
594						<a id="void-resume" class="social-thing" onclick="voiceResume()"; style="margin-right: 1px;display:none;" 
595							data-toggle="tooltip" title="Tiếp tục đọc"> 
596							<span class="fa fa-repeat" style="vertical-align: middle;opacity: 1;width: 13px;color: dimgray;"></span> 
597						</a> 
598						<a id="void-stop" class="social-thing" onclick="voiceCancel()"; style="margin-right: 1px;display:none;" 
599							data-toggle="tooltip" title="Dừng đọc"> 
600							<span class="fa fa-stop"style="vertical-align: middle;opacity: 1;width: 13px;color: dimgray;"/> 
601						</a> 
602						<a class="social-thing" style="margin-right: 5px;"> 
603							<img src="/o/portal-dt-home-theme/images/icons/trothinh_wall-ico.png" style="vertical-align: middle;opacity: 1;width: 1px;height: 13px"/> 
604						</a> 
605						<a class="social-thing" onclick="giamTuongPhan();" style="margin-right: 5px;" 
606							data-toggle="tooltip" title="Giảm tương phản"> 
607							<img src="/o/portal-dt-home-theme/images/icons/trothinh_bright-down-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
608						</a> 
609						<a class="social-thing" onclick="tangTuongPhan();" style="margin-right: 5px;" 
610							data-toggle="tooltip" title="Tăng tương phản"> 
611							<img src="/o/portal-dt-home-theme/images/icons/trothinh_bright-up-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
612						</a> 
613						<a class="social-thing" style="margin-right: 5px;"> 
614							<img src="/o/portal-dt-home-theme/images/icons/trothinh_wall-ico.png" style="vertical-align: middle;opacity: 1;width: 1px;height: 13px"/> 
615						</a> 
616						<a class="social-thing" onclick="fontMinus();" style="margin-right: 5px;" 
617							data-toggle="tooltip" title="Giảm cỡ chữ"> 
618							<img src="/o/portal-dt-home-theme/images/icons/trothinh_zoom-down-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
619						</a> 
620						<a class="social-thing" onclick="fontDefault();" style="margin-right: 5px;" 
621							data-toggle="tooltip" title="Cỡ chữ mặc định"> 
622							<img src="/o/portal-dt-home-theme/images/icons/trothinh_zoom-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
623						</a> 
624						<a class="social-thing" onclick="fontPlus();" style="margin-right: 5px;" 
625							data-toggle="tooltip" title="Tăng cỡ chữ"> 
626							<img src="/o/portal-dt-home-theme/images/icons/trothinh_zoom-up-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
627						</a> 
628						<a class="social-thing" style="margin-right: 5px;"> 
629							<img src="/o/portal-dt-home-theme/images/icons/trothinh_wall-ico.png" style="vertical-align: middle;opacity: 1;width: 1px;height: 13px"/> 
630						</a> 
631						<a class="social-thing" onclick="printPage('contentText');" style="margin-right: 5px;" 
632							data-toggle="tooltip" title="In bài viết"> 
633							<img src="/o/portal-dt-home-theme/images/icons/trothinh_print-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
634						</a> 
635						<a class="social-thing" onclick="generatePDF();" style="margin-right: 5px;" 
636							data-toggle="tooltip" title="Lưu bài viết"> 
637							<img src="https://dongthap.gov.vn/documents/34223/4699960/dl.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
638						</a> 
639						<a class="social-thing" href="https://mail.google.com/mail/?view=cm&fs=1&su=${title}&body=${currentUrl}" style="margin-right: 5px;" 
640							data-toggle="tooltip" title="Gửi mail" target="_blank"> 
641							<img src="/o/portal-dt-home-theme/images/icons/trothinh_mail-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;height:13px"/> 
642						</a> 
643					</div> 
644					<input type="hidden" id="voiceSex" value="Vietnamese Female"></input> 
645					<input type="hidden" id="tuongphan" value="3"></input> 
646					<input type="hidden" id="baiVietId" name="baiVietId" value="${articlePrimKey}"></input> 
647					<input type="hidden" id="commentId" name="commentId" value=""></input> 
648					<input type="hidden" id="tieuDe" name="tieuDe" value="${title?html}"></input> 
649					<input type="hidden" id="articleCatIds" name="articleCatIds" value="${articleCatIds}"></input> 
650					<input type="hidden" value="1" id="curPage"/> 
651					<input type="hidden" value="0" id="totalRelated"/> 
652				</div> 
653			</div> 
654		</div> 
655		 
656		<div id="contentText"  style="margin:10px"> 
657		<input type="hidden" id="thumbnailUrl" name="thumbnailUrl" value="${imageUrl}"></input> 
658			<h2 class="title-divvv" style="color: #ed0678;font-weight: bold;">${title}</h2> 
659		    <div class="tomtat">${summary}</div> 
660		    ${noiDung.getData()} 
661		</div> 
662		<div class="mb-3 pr-3" style="width:100%;display: inline-block;"> 
663			<#if tacGia?has_content && tacGia.getOptions()?has_content> 
664				<#list tacGia.getOptions() as item>  
665					<#if item?has_content> 
666						<#assign u = userLocalService.fetchUser(item?number)/>	 
667							<#if u?has_content> 
668								<#if u.getExpandoBridge()?has_content && u.getExpandoBridge().getAttribute("Bút danh")?has_content && u.getExpandoBridge().getAttribute("Email cá nhân")?has_content> 
669									<#assign ten = u.getExpandoBridge().getAttribute("Bút danh")/> 
670									<#assign email = u.getExpandoBridge().getAttribute("Email cá nhân")/> 
671								</#if> 
672								<#assign portraitURL = u.getPortraitURL(themeDisplay)/> 
673								<#if ten?has_content && email?has_content> 
674									<div class="right d-flex ml-3"> 
675										<div style="text-align:right"> 
676											<span><b>${ten}</b></span><br> 
677											<span>${email}</span> 
678										</div> 
679										<div class="ml-2"> 
680											<span class="sticker"> 
681												<span class="inline-item" id="personal-menu-icon-wrapper"> 
682													<span class="rounded-circle sticker" style="width:2.5rem;height:2.5rem"> 
683														<span class="sticker-overlay"> 
684															<img alt="thumbnail" class="img-fluid" src="${portraitURL}"> 
685														</span> 
686													</span> 
687												</span>	 
688											</span> 
689										</div> 
690									</div> 
691								</#if> 
692							</#if> 
693					</#if> 
694				</#list> 
695			</#if> 
696			<#if congTacVien?has_content && congTacVien.tenCongTacVien?has_content && congTacVien.emailCongTacVien?has_content && congTacVien.tenCongTacVien.getData()?has_content> 
697				<#assign tenCongTacVien = congTacVien.tenCongTacVien.getData()/> 
698				<#assign emailCongTacVien = congTacVien.emailCongTacVien.getData()/> 
699				<div class="right d-flex ml-3"> 
700					<div style="text-align:right"> 
701						<span><b>${tenCongTacVien}</b></span><br> 
702						<span>${emailCongTacVien}</span> 
703					</div> 
704					<div class="ml-2"> 
705						<span class="sticker"> 
706							<span class="inline-item" id="personal-menu-icon-wrapper"> 
707								<span class="rounded-circle sticker" style="width:2.5rem;height:2.5rem"> 
708									<span class="sticker-overlay"> 
709										<img alt="thumbnail" class="img-fluid" src="/documents/34223/2640277/avata.jpg"> 
710									</span> 
711								</span> 
712							</span>	 
713						</span> 
714					</div> 
715				</div> 
716			</#if> 
717		</div> 
718		 
719		<div class="article-info"> 
720			<div class="social-buttons"> 
721				<button class="quantam" id="quantam" onclick="follow(${articlePrimKey},'${title?html}');">					 
722				</button> 
723                <!-- <div class="zalo-follow-only-button" data-oaid="3540423014405379625" style="width: 88px;"></div> --> 
724                <div class="zalo-share-button" data-href="${currentUrl}" data-oaid="4499765515963062717" data-layout="1" data-color="blue"></div> 
725                <iframe src="${srcfb}" width="140" height="35" style="border:none;overflow:hidden" scrolling="no" frameborder="0" allowTransparency="true" allow="encrypted-media"></iframe> 
726		    </div> 
727			<#if listLayoutDHD?seq_index_of(layo) &gt; -1 > 
728				<#if teste?has_content> 
729					<div class="tinkhac"> 
730						<div class="bg-tinkhac"></div> 
731						<ul class="list-unstyled"> 
732						<#list teste as curEntryyy> 
733							<#assign  
734							renderer = curEntryyy.getAssetRenderer()  
735							className = renderer.getClassName() /> 
736						<#if className == "com.liferay.journal.model.JournalArticle"> 
737							<#assign  
738									title = curEntryyy.getTitle(locale)  
739									article = renderer.getArticle()  
740									description = article.getDescription(locale)  
741									curEntryyy = curEntryyy  
742									viewURL = "/chi-tiet-chuyen-trang-dh-dang/-/asset_publisher/hPvLbtAWEWEb/content/id/${curEntryyy.getEntryId()}?plidlayout=${themeDisplay.getLayout().getPlid()}" /> 
743							<#if description?has_content && description?length &gt; 300> 
744								<#assign description = description?substring(0,300) + " ..."/> 
745							</#if> 
746 
747									<#if curEntryyy.getAssetRenderer().getThumbnailPath(renderRequest)??> 
748										<#assign smallImageUrl = curEntryyy.getAssetRenderer().getThumbnailPath(renderRequest) > 
749										<#else> 
750											<#assign smallImageUrl = "" > 
751									</#if> 
752									<li><a href="${viewURL}">${title}</a></li> 
753							 
754						</#if> 
755						</#list> 
756						</ul> 
757					</div> 
758				</#if> 
759			<#else> 
760			<div class="social-buttons right"> 
761				<div> 
762					<p class="other-news">CÓ THỂ BẠN QUAN TÂM</p> 
763				</div> 
764				<div class="row ml-0 mr-0 relatedentry" id="relatedentry"> 
765					 
766				</div> 
767			</div> 
768			</#if> 
769			 
770			<div style="text-align: center"> 
771				<div class="pagination2" style="position: relative; justify-content: center;"> 
772					Hiển thị  
773					<select id="pageSize" onchange="changePageSize();"> 
774						<option>6</option> 
775						<option>10</option> 
776						<option>20</option> 
777					</select>  
778					Tới trang  
779					<select id="pageIndex" onchange="changePageIndex();"> 
780						<option>1</option> 
781					</select>  
782					của <span id="totalPage" style="vertical-align: middle;font-size: 12px;">135</span> 
783					<a id="previousP" onclick="previousPP();">&lt;</a> 
784					<a id="nextP" onclick="nextPP();">&gt;</a>					 
785				</div> 
786			</div> 
787		</div> 
788		 
789		<h2 class="botting-border">Ý kiến của bạn</h2> 
790		<section class="form-gradient"> 
791			<div style="padding-bottom: 1px" class="buttonIn"> 
792				<textarea id="commentContent" class="md-textarea" rows="3" required="true" placeholder="Nhập ý kiến của bạn..."></textarea> 
793				<button type="button" class="btnsend"><i class="fa fa-paper-plane"></i> Gửi</button>					 
794			</div> 
795			<form> 
796				<div class="modal-thongtin"> 
797					<div class="modal-thongtin-content"> 
798						<span class="close">&times;</span> 
799						<h3>Thông tin độc giả</h3> 
800						<div class="row mb-2"> 
801							<div class="col-sm-2 align-self-center"> 
802								<label for="commentName" class="mb-1">Họ tên (<red style="color: red;">*</red>)</label> 
803							</div> 
804							<div class="col-sm-10  pl-2"> 
805								<input type="text" id="commentName" class="form-control" required="true"> 
806							</div> 
807						</div> 
808						<div class="row mb-2"> 
809							<div class="col-sm-2 align-self-center"> 
810								<label for="commentAddress" class="mb-1">Địa chỉ (<red style="color: red;">*</red>)</label> 
811							</div> 
812							<div class="col-sm-10  pl-2"> 
813								<input type="text" id="commentAddress" class="form-control" required="true"> 
814							</div> 
815						</div> 
816						<div class="row mb-2"> 
817							<div class="col-sm-2 align-self-center"> 
818								<label for="commentEmail" class="mb-1">Địa chỉ email (<red style="color: red;">*</red>)</label> 
819							</div> 
820							<div class="col-sm-10 pl-2"> 
821								<input type="email" id="commentEmail" class="form-control valid-email" required="true"> 
822							</div> 
823						</div> 
824						<div class="d-flex justify-content-end" style="margin: 0 24px 10px 0"> 
825							<button type="button" class="button-dt"><i class="fa fa-paper-plane"></i> Gửi</button> 
826							<button type="button" class="button-dt-close">Đóng</button> 
827						</div> 
828					</div> 
829				</div> 
830			</form> 
831			<form> 
832				<div class="modal-thongtin-reply"> 
833					<div class="modal-thongtin-content"> 
834						<span class="close">&times;</span> 
835						<h3>Thông tin độc giả</h3> 
836						<div class="row mb-2"> 
837							<div class="col-sm-2 align-self-center"> 
838								<label for="commentNameReply" class="mb-1">Họ tên (<red style="color: red;">*</red>)</label> 
839							</div> 
840							<div class="col-sm-10  pl-2"> 
841								<input type="text" id="commentNameReply" class="form-control" required="true"> 
842								<input type="hidden" id="commentContentReply" class="form-control" required="true"> 
843							</div> 
844						</div> 
845						<div class="row mb-2"> 
846							<div class="col-sm-2 align-self-center"> 
847								<label for="commentAddressReply" class="mb-1">Địa chỉ (<red style="color: red;">*</red>)</label> 
848							</div> 
849							<div class="col-sm-10  pl-2"> 
850								<input type="text" id="commentAddressReply" class="form-control" required="true"> 
851							</div> 
852						</div> 
853						<div class="row mb-2"> 
854							<div class="col-sm-2 align-self-center"> 
855								<label for="commentEmailReply" class="mb-1">Địa chỉ email (<red style="color: red;">*</red>)</label> 
856							</div> 
857							<div class="col-sm-10 pl-2"> 
858								<input type="email" id="commentEmailReply" class="form-control valid-email" required="true"> 
859							</div> 
860						</div> 
861						<div class="d-flex justify-content-end" style="margin: 0 24px 10px 0"> 
862							<button type="button" class="button-dt-reply"><i class="fa fa-paper-plane"></i> Gửi</button> 
863							<button type="button" class="button-dt-reply-close">Đóng</button> 
864						</div> 
865					</div> 
866				</div> 
867			</form> 
868		</section> 
869		<div class="comment-list"> 
870			<div style="width:100%;display:inline-block;background: gainsboro;"> 
871				<p style="color:#ed0678;margin: 4px;" class="left"><b>Ý kiến bạn đọc</b> (<span id="comment-count">0</span>)</p> 
872			</div> 
873			<div id="comment-show-list">	 
874				 
875			</div> 
876		</div> 
877	 
878	</div> 
879</div> 
880<#macro getMetadataField 
881 	fieldName 
882
883 	<#if stringUtil.split(metadataFields)?seq_contains(fieldName)> 
884 		<span class="metadata-entry metadata-${fieldName}"> 
885 			<#assign dateFormat = "dd MMM yyyy - HH:mm:ss" /> 
886  
887 			<#if stringUtil.equals(fieldName, "author")> 
888 				<@liferay.language key="by" /> ${htmlUtil.escape(portalUtil.getUserName(assetRenderer.getUserId(), assetRenderer.getUserName()))} 
889 			<#elseif stringUtil.equals(fieldName, "categories")> 
890 				<@liferay_asset["asset-categories-summary"] 
891 					className=curEntry.getClassName() 
892 					classPK=curEntry.getClassPK() 
893 					portletURL=renderResponse.createRenderURL() 
894 				/> 
895 			<#elseif stringUtil.equals(fieldName, "create-date")> 
896 				${dateUtil.getDate(curEntry.getCreateDate(), dateFormat, locale)} 
897 			<#elseif stringUtil.equals(fieldName, "expiration-date")> 
898 				${dateUtil.getDate(curEntry.getExpirationDate(), dateFormat, locale)} 
899 			<#elseif stringUtil.equals(fieldName, "modified-date")> 
900 				${dateUtil.getDate(curEntry.getModifiedDate(), dateFormat, locale)} 
901 			<#elseif stringUtil.equals(fieldName, "priority")> 
902 				${curEntry.getPriority()} 
903 			<#elseif stringUtil.equals(fieldName, "publish-date")> 
904 				${dateUtil.getDate(curEntry.getPublishDate(), dateFormat, locale)} 
905 			<#elseif stringUtil.equals(fieldName, "tags")> 
906 				<@liferay_asset["asset-tags-summary"] 
907 					className=curEntry.getClassName() 
908 					classPK=curEntry.getClassPK() 
909 					portletURL=renderResponse.createRenderURL() 
910 				/> 
911 			<#elseif stringUtil.equals(fieldName, "view-count")> 
912 				${curEntry.getViewCount()} <@liferay.language key="views" /> 
913 			</#if> 
914 		</span> 
915 	</#if> 
916</#macro> 
917 
918<script type="text/javascript"> 
919		$(document).ready(function () { 
920			var imageURL = document.getElementById('thumbnailUrl').value; 
921			var ogmetatag = document.createElement('meta'); 
922			ogmetatag.setAttribute('property', 'og:image'); 
923			ogmetatag.setAttribute('content', imageURL); 
924			document.head.appendChild(ogmetatag); 
925			 
926		}) 
927</script> 

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

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 Megastory

Banner Tin đồ họa

Tin nổi bật