Xuất bản thông tin

null Ngành giáo dục siết chặt quản lý việc thông tin trên mạng xã hội

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 299, 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 299, 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 
266<#assign  
267    title = .vars['reserved-article-title'].data 
268	portalURL = themeDisplay.getPortalURL()  
269	currentUrl = portalURL + themeDisplay.getURLCurrent()  
270	imageUrl = portalURL + .vars['reserved-article-small-image-url'].data 
271	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"  
272	displayDate = .vars['reserved-article-display-date'].data 
273	summary = .vars['reserved-article-description'].data/> 
274	 
275	 
276 
277<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")> 
278 
279<#assign scopeId = themeDisplay.getScopeGroupId()> 
280 
281<#assign thumnail_logo = "https://thunghiem.dongthap.gov.vn/o/portal-dt-home-theme/images/dong-thap/banner-vietnamese.jpg"> 
282 
283<#assign contentId = .vars['reserved-article-id'].data> 
284 
285<#assign article = journalArticleLocalService.getArticle(getterUtil.getLong(scopeId), contentId)> 
286<#assign articlePrimKey = article.resourcePrimKey> 
287<#assign userLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.UserLocalService")> 
288<#assign catLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")> 
289<#assign articleCatId = catLocalService.getCategoryIds("com.liferay.journal.model.JournalArticle", getterUtil.getLong(articlePrimKey))> 
290 
291<#assign categoryList = catLocalService.getAssetEntryAssetCategories(getterUtil.getLong(articlePrimKey))> 
292 
293<#assign layoutService =  serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService") /> 
294<#if (request.getParameter("plidlayout")?has_content)> 
295    <#assign plidlayout = request.getParameter("plidlayout") /> 
296    <#else> 
297    <#assign plidlayout = 2 /> 
298</#if> 
299<#assign layout = layoutService.fetchLayout(plidlayout?number) /> 
300<#assign curLayout = layoutService.fetchLayout(plid?number) /> 
301<#assign pageTitle = layout.getName(locale) /> 
302<#assign pageUrl = layout.getFriendlyURL(locale) /> 
303<#assign curPageTitle = curLayout.getName(locale) /> 
304<#assign originalLocale = .locale> 
305<#setting locale = localeUtil.getDefault()> 
306<#assign displayDate = displayDate?datetime("EEE, d MMM yyyy HH:mm:ss Z")> 
307<#assign locale = originalLocale> 
308<#assign displayDate = displayDate?string("HH:mm dd/MM/yyyy")> 
309 
310<#assign listLayoutDHD = [5474,5512,179]> 
311<#assign layo = themeDisplay.getPlid() /> 
312<#assign articleCatIds = "" /> 
313<#list articleCatId as item> 
314	<#assign articleCatIds = articleCatIds + item + "," /> 
315</#list> 
316 
317<#assign assetEntryQueryService = objectUtil('com.liferay.asset.kernel.service.AssetEntryLocalServiceUtil')> 
318 
319<#assign assetEntryQuery = objectUtil('com.liferay.asset.kernel.service.persistence.AssetEntryQuery')> 
320 
321 
322 
323<#assign search = assetEntryQuery.setAllCategoryIds(articleCatId)> 
324<#assign search = assetEntryQuery.setOrderByCol1("publishDate")/> 
325<#assign search = assetEntryQuery.setStart(0)/> 
326<#assign search = assetEntryQuery.setEnd(10)/> 
327<#assign search = assetEntryQuery.setOrderByType1("DESC")/> 
328 
329<#assign teste = assetEntryQueryService.getEntries(assetEntryQuery) 
330		totalPage = 0/> 
331 
332 <liferay-util:html-top outputKey="htmltop" style="display:none;"> 
333	<meta name="title" property="og:title" content="${title}"/> 
334    <meta name="image" property="og:image" content="${imageUrl}"/> 
335    <meta name="image" property="og:image:secure_url" content="${imageUrl}"/> 
336    <meta name="description" property="og:description" content="${summary?replace("<p>","")?replace("</p>","")}"/> 
337    <meta name="url" property="og:url" content="${currentUrl}"/> 
338</liferay-util:html-top> 
339 
340<script> 
341	$(document).ready(function () { 
342		var modal = $('.modal-thongtin'); 
343		var btn = $('.btnsend'); 
344		var button_dt = $('.button-dt'); 
345		var button_dt_close = $('.button-dt-close'); 
346		var span = $('.close'); 
347		var baiVietId = $('#baiVietId'); 
348		var tieuDe = $('#tieuDe'); 
349		var commentContent = $('#commentContent'); 
350		var commentName = $('#commentName'); 
351		var commentAddress = $('#commentAddress'); 
352		var commentEmail = $('#commentEmail'); 
353		 
354		btn.click(function () { 
355			if (commentContent.val().length == 0) { 
356				alert('Vui lòng nhập nội dung ý kiến!'); 
357			} else { 
358				modal.show(); 
359				btn.hide(); 
360
361		}); 
362		 
363		 
364		button_dt.click(function () { 
365		const valid = /^[^\s@]+@[^\s@]+\.[^\s@]+$/; 
366			if (commentName.val().length == 0) { 
367				commentName.css('border-color', 'red'); 
368				commentName.focus(); 
369			} else if (commentAddress.val().length == 0) { 
370				commentAddress.css('border-color', 'red'); 
371				commentAddress.focus(); 
372			} else if (commentEmail.val().length == 0) { 
373				commentEmail.css('border-color', 'red'); 
374				commentEmail.focus(); 
375			} else if (!valid.test(commentEmail.val())) { 
376				commentEmail.css('border-color', 'red'); 
377				commentEmail.focus(); 
378				alert('Vui lòng nhập đúng email!'); 
379			}else { 
380				comment(baiVietId.val(), tieuDe.val(), commentContent.val(), commentName.val(), commentAddress.val(), commentEmail.val(), ${groupId}); 
381				commentContent.val(''); 
382				commentName.val(''); 
383				commentAddress.val(''); 
384				commentEmail.val(''); 
385				modal.hide(); 
386				btn.show(); 
387				 
388
389		}); 
390		 
391		button_dt_close.click(function () { 
392			commentContent.val(''); 
393			commentName.val(''); 
394			commentAddress.val(''); 
395			commentEmail.val(''); 
396			commentName.css('border-color', '#ccc'); 
397			commentAddress.css('border-color', '#ccc'); 
398			commentEmail.css('border-color', '#ccc'); 
399			modal.hide(); 
400			btn.show(); 
401			 
402		}); 
403 
404		span.click(function () { 
405			commentContent.val(''); 
406			commentName.val(''); 
407			commentAddress.val(''); 
408			commentEmail.val(''); 
409			modal.hide(); 
410			$('.replyBox').hide(); 
411			btn.show(); 
412			 
413			$('.inputReplyContent').val(''); 
414			commentNameReply.val(''); 
415			commentAddressReply.val(''); 
416			commentEmailReply.val(''); 
417			modal_reply.hide(); 
418			$('.replyBox').hide(); 
419			btnreply.show(); 
420		}); 
421 
422		$(window).on('click', function (e) { 
423		if ($(e.target).is('.modal-thongtin')) { 
424			commentContent.val(''); 
425			commentName.val(''); 
426			commentAddress.val(''); 
427			commentEmail.val(''); 
428			modal.hide(); 
429			btn.show(); 
430
431		if ($(e.target).is('.modal-thongtin-reply')) { 
432			$('.inputReplyContent').val(''); 
433			commentNameReply.val(''); 
434			commentAddressReply.val(''); 
435			commentEmailReply.val(''); 
436			modal_reply.hide(); 
437			btnreply.show(); 
438
439		}); 
440		 
441		 
442		var modal_reply = $('.modal-thongtin-reply'); 
443		var btnreply = $('.btnreply'); 
444		var button_dt_reply = $('.button-dt-reply'); 
445		var button_dt_reply_close = $('.button-dt-reply-close'); 
446		var span = $('.close'); 
447		var commentNameReply = $('#commentNameReply'); 
448		var commentAddressReply = $('#commentAddressReply'); 
449		var commentEmailReply = $('#commentEmailReply'); 
450		 
451		function submitreply() { 
452			var commentId = $('#commentId').val(); 
453			if ($('#inputReplyContent' + commentId).val().length == 0) { 
454				alert('Vui lòng nhập nội dung ý kiến!'); 
455			} else { 
456				modal_reply.show(); 
457				$('#commentContentReply').val($('#inputReplyContent' + commentId).val()); 
458				btnreply.hide(); 
459
460
461		 
462		button_dt_reply.click(function () { 
463			if (commentNameReply.val().length == 0) { 
464				commentNameReply.css('border-color', 'red'); 
465			} else if (commentAddressReply.val().length == 0) { 
466				commentAddressReply.css('border-color', 'red'); 
467			} else if (commentEmailReply.val().length == 0) { 
468				commentEmailReply.css('border-color', 'red'); 
469			} else { 
470				replyComment($('#commentId').val(),baiVietId.val(), tieuDe.val(), $('#commentContentReply').val(), commentNameReply.val(), commentAddressReply.val(), commentEmailReply.val()); 
471				$('.inputReplyContent').val(''); 
472				commentNameReply.val(''); 
473				commentAddressReply.val(''); 
474				commentEmailReply.val(''); 
475				modal_reply.hide(); 
476
477		}); 
478		 
479		button_dt_reply_close.click(function () { 
480			$('.inputReplyContent').val(''); 
481			commentNameReply.val(''); 
482			commentAddressReply.val(''); 
483			commentEmailReply.val(''); 
484			modal_reply.hide(); 
485			 
486		}); 
487	}); 
488	 
489	function submitreply() { 
490		var commentId = $('#commentId').val(); 
491		if ($('#inputReplyContent' + commentId).val().length == 0) { 
492			alert('Vui lòng nhập nội dung ý kiến!'); 
493		} else { 
494			$('.modal-thongtin-reply').show(); 
495			$('#commentContentReply').val($('#inputReplyContent' + commentId).val()); 
496			$('.btnreply').hide(); 
497
498
499	 
500	function changePageSize(){ 
501		var pageSize = $('#pageSize').val(); 
502		var pageIndex = $('#pageIndex').val(); 
503		paginate(pageIndex, pageSize); 
504
505	 
506	function changePageIndex(){ 
507		var pageSize = $('#pageSize').val(); 
508		var pageIndex = $('#pageIndex').val(); 
509		$('#curPage').val(pageIndex); 
510		paginate(pageIndex, pageSize);	 
511
512	 
513 
514</script> 
515<script type="text/javascript" src="https://dongthap.gov.vn/documents/34223/0/html2pdf.js"></script> 
516<script> 
517      function generatePDF() { 
518        // Choose the element that our invoice is rendered in. 
519        const element = document.getElementById("contentText"); 
520        // Choose the element and save the PDF for our user. 
521        html2pdf() 
522          .from(element) 
523          .save(); 
524
525      </script> 
526<script src="https://sp.zalo.me/plugins/sdk.js"></script> 
527<div class="main-content"> 
528	<div class="panel" id="main-body"> 
529		<div class="shortcode-content hreview">			 
530		    <#if listLayoutDHD?seq_index_of(layo) &gt; -1 > 
531		        <div class="brumnoidung"> 
532                	<ul class="breadcrumb"> 
533                		<li class="breadcrumb-item crum1"><a href="/home">Trang chủ</a></li> 
534                		<li class="breadcrumb-item active">Tin tức</li> 
535                	</ul> 
536                </div> 
537                <#else> 
538				<span style="position: relative;font-weight: bold;font-size: 17px;border-left: 3px solid #ed0678;padding: 5px;background-color: darkgrey;" class="tieuDe-asset"> 
539					<a href="https://dongthap.gov.vn">Trang chủ</a> 
540				</span> 
541				<#assign journalArticleId = .vars['reserved-article-id'].data> 
542				<#assign journalArticleResourceLocalServiceUtil = staticUtil["com.liferay.journal.service.JournalArticleResourceLocalServiceUtil"]> 
543				<#assign assetCategoryLocalServiceUtil = staticUtil["com.liferay.asset.kernel.service.AssetCategoryLocalServiceUtil"]> 
544 
545				<#assign articleResourcePK = journalArticleResourceLocalServiceUtil.getArticleResourcePrimKey(groupId, journalArticleId)/> 
546				<#assign categoryList=assetCategoryLocalServiceUtil.getCategories("com.liferay.journal.model.JournalArticle",articleResourcePK) > 
547				 
548				<#list categoryList as thisCategory> 
549					<#if (thisCategory_index==0)> 
550						<span class="curPage-title" style="font-size: 17px;padding-left: 17px;font-weight: bold;">${thisCategory.getName()}</span> 
551					</#if> 
552				</#list> 
553			</#if> 
554			 
555			<div class="article-head"> 
556				<div class="article-info" style="border-top: 0px;border-bottom: 0px;margin-left: 11px;"> 
557					<div class="social-buttons left"> 
558                        ${displayDate} 
559					</div> 
560					<div class="social-buttons right"> 
561					    <a class="social-thing" onclick="voiceSpeak('contentText','voiceSex')"; style="margin-right: 5px;" 
562							data-toggle="tooltip" title="Đọc bài viết"> 
563							<img class="volume-up" src="/o/portal-dt-home-theme/images/icons/trothinh_volume-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
564						</a> 
565						<a id="void-pause" class="social-thing" onclick="voicePause()"; style="margin-right: 1px;display:none;" 
566							data-toggle="tooltip" title="Tạm dừng đọc"> 
567							<span class="fa fa-pause" style="vertical-align: middle;opacity: 1;width: 13px;color: dimgray;"/> 
568						</a> 
569						<a id="void-resume" class="social-thing" onclick="voiceResume()"; style="margin-right: 1px;display:none;" 
570							data-toggle="tooltip" title="Tiếp tục đọc"> 
571							<span class="fa fa-repeat" style="vertical-align: middle;opacity: 1;width: 13px;color: dimgray;"></span> 
572						</a> 
573						<a id="void-stop" class="social-thing" onclick="voiceCancel()"; style="margin-right: 1px;display:none;" 
574							data-toggle="tooltip" title="Dừng đọc"> 
575							<span class="fa fa-stop"style="vertical-align: middle;opacity: 1;width: 13px;color: dimgray;"/> 
576						</a> 
577						<a class="social-thing" style="margin-right: 5px;"> 
578							<img src="/o/portal-dt-home-theme/images/icons/trothinh_wall-ico.png" style="vertical-align: middle;opacity: 1;width: 1px;height: 13px"/> 
579						</a> 
580						<a class="social-thing" onclick="giamTuongPhan();" style="margin-right: 5px;" 
581							data-toggle="tooltip" title="Giảm tương phản"> 
582							<img src="/o/portal-dt-home-theme/images/icons/trothinh_bright-down-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
583						</a> 
584						<a class="social-thing" onclick="tangTuongPhan();" style="margin-right: 5px;" 
585							data-toggle="tooltip" title="Tăng tương phản"> 
586							<img src="/o/portal-dt-home-theme/images/icons/trothinh_bright-up-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
587						</a> 
588						<a class="social-thing" style="margin-right: 5px;"> 
589							<img src="/o/portal-dt-home-theme/images/icons/trothinh_wall-ico.png" style="vertical-align: middle;opacity: 1;width: 1px;height: 13px"/> 
590						</a> 
591						<a class="social-thing" onclick="fontMinus();" style="margin-right: 5px;" 
592							data-toggle="tooltip" title="Giảm cỡ chữ"> 
593							<img src="/o/portal-dt-home-theme/images/icons/trothinh_zoom-down-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
594						</a> 
595						<a class="social-thing" onclick="fontDefault();" style="margin-right: 5px;" 
596							data-toggle="tooltip" title="Cỡ chữ mặc định"> 
597							<img src="/o/portal-dt-home-theme/images/icons/trothinh_zoom-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
598						</a> 
599						<a class="social-thing" onclick="fontPlus();" style="margin-right: 5px;" 
600							data-toggle="tooltip" title="Tăng cỡ chữ"> 
601							<img src="/o/portal-dt-home-theme/images/icons/trothinh_zoom-up-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
602						</a> 
603						<a class="social-thing" style="margin-right: 5px;"> 
604							<img src="/o/portal-dt-home-theme/images/icons/trothinh_wall-ico.png" style="vertical-align: middle;opacity: 1;width: 1px;height: 13px"/> 
605						</a> 
606						<a class="social-thing" onclick="printPage('contentText');" style="margin-right: 5px;" 
607							data-toggle="tooltip" title="In bài viết"> 
608							<img src="/o/portal-dt-home-theme/images/icons/trothinh_print-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
609						</a> 
610						<a class="social-thing" onclick="generatePDF();" style="margin-right: 5px;" 
611							data-toggle="tooltip" title="Lưu bài viết"> 
612							<img src="https://dongthap.gov.vn/documents/34223/4699960/dl.png" style="vertical-align: middle;opacity: 1;width: 16px;"/> 
613						</a> 
614						<a class="social-thing" href="https://mail.google.com/mail/?view=cm&fs=1&su=${title}&body=${currentUrl}" style="margin-right: 5px;" 
615							data-toggle="tooltip" title="Gửi mail" target="_blank"> 
616							<img src="/o/portal-dt-home-theme/images/icons/trothinh_mail-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;height:13px"/> 
617						</a> 
618					</div> 
619					<input type="hidden" id="voiceSex" value="Vietnamese Female"></input> 
620					<input type="hidden" id="tuongphan" value="3"></input> 
621					<input type="hidden" id="baiVietId" name="baiVietId" value="${articlePrimKey}"></input> 
622					<input type="hidden" id="commentId" name="commentId" value=""></input> 
623					<input type="hidden" id="tieuDe" name="tieuDe" value="${title?html}"></input> 
624					<input type="hidden" id="articleCatIds" name="articleCatIds" value="${articleCatIds}"></input> 
625					<input type="hidden" value="1" id="curPage"/> 
626					<input type="hidden" value="0" id="totalRelated"/> 
627				</div> 
628			</div> 
629		</div> 
630		 
631		<div id="contentText"  style="margin:10px"> 
632		<input type="hidden" id="thumbnailUrl" name="thumbnailUrl" value="${imageUrl}"></input> 
633			<h2 class="title-divvv" style="color: #ed0678;font-weight: bold;">${title}</h2> 
634		    <div class="tomtat">${summary}</div> 
635		    ${noiDung.getData()} 
636		</div> 
637		<div class="mb-3 pr-3" style="width:100%;display: inline-block;"> 
638			<#if tacGia?has_content && tacGia.getOptions()?has_content> 
639				<#list tacGia.getOptions() as item>  
640					<#if item?has_content> 
641						<#assign u = userLocalService.fetchUser(item?number)/>	 
642							<#if u?has_content> 
643								<#if u.getExpandoBridge()?has_content && u.getExpandoBridge().getAttribute("Bút danh")?has_content && u.getExpandoBridge().getAttribute("Email cá nhân")?has_content> 
644									<#assign ten = u.getExpandoBridge().getAttribute("Bút danh")/> 
645									<#assign email = u.getExpandoBridge().getAttribute("Email cá nhân")/> 
646								</#if> 
647								<#assign portraitURL = u.getPortraitURL(themeDisplay)/> 
648								<#if ten?has_content && email?has_content> 
649									<div class="right d-flex ml-3"> 
650										<div style="text-align:right"> 
651											<span><b>${ten}</b></span><br> 
652											<span>${email}</span> 
653										</div> 
654										<div class="ml-2"> 
655											<span class="sticker"> 
656												<span class="inline-item" id="personal-menu-icon-wrapper"> 
657													<span class="rounded-circle sticker" style="width:2.5rem;height:2.5rem"> 
658														<span class="sticker-overlay"> 
659															<img alt="thumbnail" class="img-fluid" src="${portraitURL}"> 
660														</span> 
661													</span> 
662												</span>	 
663											</span> 
664										</div> 
665									</div> 
666								</#if> 
667							</#if> 
668					</#if> 
669				</#list> 
670			</#if> 
671			<#if congTacVien?has_content && congTacVien.tenCongTacVien?has_content && congTacVien.emailCongTacVien?has_content && congTacVien.tenCongTacVien.getData()?has_content> 
672				<#assign tenCongTacVien = congTacVien.tenCongTacVien.getData()/> 
673				<#assign emailCongTacVien = congTacVien.emailCongTacVien.getData()/> 
674				<div class="right d-flex ml-3"> 
675					<div style="text-align:right"> 
676						<span><b>${tenCongTacVien}</b></span><br> 
677						<span>${emailCongTacVien}</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="/documents/34223/2640277/avata.jpg"> 
685									</span> 
686								</span> 
687							</span>	 
688						</span> 
689					</div> 
690				</div> 
691			</#if> 
692		</div> 
693		 
694		<div class="article-info"> 
695			<div class="social-buttons"> 
696				<button class="quantam" id="quantam" onclick="follow(${articlePrimKey},'${title?html}');">					 
697				</button> 
698                <!-- <div class="zalo-follow-only-button" data-oaid="3540423014405379625" style="width: 88px;"></div> --> 
699                <div class="zalo-share-button" data-href="${currentUrl}" data-oaid="4499765515963062717" data-layout="1" data-color="blue"></div> 
700                <iframe src="${srcfb}" width="140" height="35" style="border:none;overflow:hidden" scrolling="no" frameborder="0" allowTransparency="true" allow="encrypted-media"></iframe> 
701		    </div> 
702			<#if listLayoutDHD?seq_index_of(layo) &gt; -1 > 
703				<#if teste?has_content> 
704					<div class="tinkhac"> 
705						<div class="bg-tinkhac"></div> 
706						<ul class="list-unstyled"> 
707						<#list teste as curEntryyy> 
708							<#assign  
709							renderer = curEntryyy.getAssetRenderer()  
710							className = renderer.getClassName() /> 
711						<#if className == "com.liferay.journal.model.JournalArticle"> 
712							<#assign  
713									title = curEntryyy.getTitle(locale)  
714									article = renderer.getArticle()  
715									description = article.getDescription(locale)  
716									curEntryyy = curEntryyy  
717									viewURL = "/chi-tiet-chuyen-trang-dh-dang/-/asset_publisher/hPvLbtAWEWEb/content/id/${curEntryyy.getEntryId()}?plidlayout=${themeDisplay.getLayout().getPlid()}" /> 
718							<#if description?has_content && description?length &gt; 300> 
719								<#assign description = description?substring(0,300) + " ..."/> 
720							</#if> 
721 
722									<#if curEntryyy.getAssetRenderer().getThumbnailPath(renderRequest)??> 
723										<#assign smallImageUrl = curEntryyy.getAssetRenderer().getThumbnailPath(renderRequest) > 
724										<#else> 
725											<#assign smallImageUrl = "" > 
726									</#if> 
727									<li><a href="${viewURL}">${title}</a></li> 
728							 
729						</#if> 
730						</#list> 
731						</ul> 
732					</div> 
733				</#if> 
734			<#else> 
735			<div class="social-buttons right"> 
736				<div> 
737					<p class="other-news">CÓ THỂ BẠN QUAN TÂM</p> 
738				</div> 
739				<div class="row ml-0 mr-0 relatedentry" id="relatedentry"> 
740					 
741				</div> 
742			</div> 
743			</#if> 
744			 
745			<div style="text-align: center"> 
746				<div class="pagination2" style="position: relative; justify-content: center;"> 
747					Hiển thị  
748					<select id="pageSize" onchange="changePageSize();"> 
749						<option>6</option> 
750						<option>10</option> 
751						<option>20</option> 
752					</select>  
753					Tới trang  
754					<select id="pageIndex" onchange="changePageIndex();"> 
755						<option>1</option> 
756					</select>  
757					của <span id="totalPage" style="vertical-align: middle;font-size: 12px;">135</span> 
758					<a id="previousP" onclick="previousPP();">&lt;</a> 
759					<a id="nextP" onclick="nextPP();">&gt;</a>					 
760				</div> 
761			</div> 
762		</div> 
763		 
764		<h2 class="botting-border">Ý kiến của bạn</h2> 
765		<section class="form-gradient"> 
766			<div style="padding-bottom: 1px" class="buttonIn"> 
767				<textarea id="commentContent" class="md-textarea" rows="3" required="true" placeholder="Nhập ý kiến của bạn..."></textarea> 
768				<button type="button" class="btnsend"><i class="fa fa-paper-plane"></i> Gửi</button>					 
769			</div> 
770			<form> 
771				<div class="modal-thongtin"> 
772					<div class="modal-thongtin-content"> 
773						<span class="close">&times;</span> 
774						<h3>Thông tin độc giả</h3> 
775						<div class="row mb-2"> 
776							<div class="col-sm-2 align-self-center"> 
777								<label for="commentName" class="mb-1">Họ tên (<red style="color: red;">*</red>)</label> 
778							</div> 
779							<div class="col-sm-10  pl-2"> 
780								<input type="text" id="commentName" class="form-control" required="true"> 
781							</div> 
782						</div> 
783						<div class="row mb-2"> 
784							<div class="col-sm-2 align-self-center"> 
785								<label for="commentAddress" class="mb-1">Địa chỉ (<red style="color: red;">*</red>)</label> 
786							</div> 
787							<div class="col-sm-10  pl-2"> 
788								<input type="text" id="commentAddress" class="form-control" required="true"> 
789							</div> 
790						</div> 
791						<div class="row mb-2"> 
792							<div class="col-sm-2 align-self-center"> 
793								<label for="commentEmail" class="mb-1">Địa chỉ email (<red style="color: red;">*</red>)</label> 
794							</div> 
795							<div class="col-sm-10 pl-2"> 
796								<input type="email" id="commentEmail" class="form-control valid-email" required="true"> 
797							</div> 
798						</div> 
799						<div class="d-flex justify-content-end" style="margin: 0 24px 10px 0"> 
800							<button type="button" class="button-dt"><i class="fa fa-paper-plane"></i> Gửi</button> 
801							<button type="button" class="button-dt-close">Đóng</button> 
802						</div> 
803					</div> 
804				</div> 
805			</form> 
806			<form> 
807				<div class="modal-thongtin-reply"> 
808					<div class="modal-thongtin-content"> 
809						<span class="close">&times;</span> 
810						<h3>Thông tin độc giả</h3> 
811						<div class="row mb-2"> 
812							<div class="col-sm-2 align-self-center"> 
813								<label for="commentNameReply" class="mb-1">Họ tên (<red style="color: red;">*</red>)</label> 
814							</div> 
815							<div class="col-sm-10  pl-2"> 
816								<input type="text" id="commentNameReply" class="form-control" required="true"> 
817								<input type="hidden" id="commentContentReply" class="form-control" required="true"> 
818							</div> 
819						</div> 
820						<div class="row mb-2"> 
821							<div class="col-sm-2 align-self-center"> 
822								<label for="commentAddressReply" class="mb-1">Địa chỉ (<red style="color: red;">*</red>)</label> 
823							</div> 
824							<div class="col-sm-10  pl-2"> 
825								<input type="text" id="commentAddressReply" class="form-control" required="true"> 
826							</div> 
827						</div> 
828						<div class="row mb-2"> 
829							<div class="col-sm-2 align-self-center"> 
830								<label for="commentEmailReply" class="mb-1">Địa chỉ email (<red style="color: red;">*</red>)</label> 
831							</div> 
832							<div class="col-sm-10 pl-2"> 
833								<input type="email" id="commentEmailReply" class="form-control valid-email" required="true"> 
834							</div> 
835						</div> 
836						<div class="d-flex justify-content-end" style="margin: 0 24px 10px 0"> 
837							<button type="button" class="button-dt-reply"><i class="fa fa-paper-plane"></i> Gửi</button> 
838							<button type="button" class="button-dt-reply-close">Đóng</button> 
839						</div> 
840					</div> 
841				</div> 
842			</form> 
843		</section> 
844		<div class="comment-list"> 
845			<div style="width:100%;display:inline-block;background: gainsboro;"> 
846				<p style="color:#ed0678;margin: 4px;" class="left"><b>Ý kiến bạn đọc</b> (<span id="comment-count">0</span>)</p> 
847			</div> 
848			<div id="comment-show-list">	 
849				 
850			</div> 
851		</div> 
852	 
853	</div> 
854</div> 
855<#macro getMetadataField 
856 	fieldName 
857
858 	<#if stringUtil.split(metadataFields)?seq_contains(fieldName)> 
859 		<span class="metadata-entry metadata-${fieldName}"> 
860 			<#assign dateFormat = "dd MMM yyyy - HH:mm:ss" /> 
861  
862 			<#if stringUtil.equals(fieldName, "author")> 
863 				<@liferay.language key="by" /> ${htmlUtil.escape(portalUtil.getUserName(assetRenderer.getUserId(), assetRenderer.getUserName()))} 
864 			<#elseif stringUtil.equals(fieldName, "categories")> 
865 				<@liferay_asset["asset-categories-summary"] 
866 					className=curEntry.getClassName() 
867 					classPK=curEntry.getClassPK() 
868 					portletURL=renderResponse.createRenderURL() 
869 				/> 
870 			<#elseif stringUtil.equals(fieldName, "create-date")> 
871 				${dateUtil.getDate(curEntry.getCreateDate(), dateFormat, locale)} 
872 			<#elseif stringUtil.equals(fieldName, "expiration-date")> 
873 				${dateUtil.getDate(curEntry.getExpirationDate(), dateFormat, locale)} 
874 			<#elseif stringUtil.equals(fieldName, "modified-date")> 
875 				${dateUtil.getDate(curEntry.getModifiedDate(), dateFormat, locale)} 
876 			<#elseif stringUtil.equals(fieldName, "priority")> 
877 				${curEntry.getPriority()} 
878 			<#elseif stringUtil.equals(fieldName, "publish-date")> 
879 				${dateUtil.getDate(curEntry.getPublishDate(), dateFormat, locale)} 
880 			<#elseif stringUtil.equals(fieldName, "tags")> 
881 				<@liferay_asset["asset-tags-summary"] 
882 					className=curEntry.getClassName() 
883 					classPK=curEntry.getClassPK() 
884 					portletURL=renderResponse.createRenderURL() 
885 				/> 
886 			<#elseif stringUtil.equals(fieldName, "view-count")> 
887 				${curEntry.getViewCount()} <@liferay.language key="views" /> 
888 			</#if> 
889 		</span> 
890 	</#if> 
891</#macro> 
892 
893<script type="text/javascript"> 
894		$(document).ready(function () { 
895			var imageURL = document.getElementById('thumbnailUrl').value; 
896			var ogmetatag = document.createElement('meta'); 
897			ogmetatag.setAttribute('property', 'og:image'); 
898			ogmetatag.setAttribute('content', imageURL); 
899			document.head.appendChild(ogmetatag); 
900			 
901		}) 
902</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

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