Có lỗi xảy ra trong quá trình xử lý biểu mẫu.
Can't convert this string to number: "845'" The blamed expression: ==> plidlayout?number [in template "34201#34227#43055" at line 570, column 45] ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign layout = layoutService.fetchL... [in template "34201#34227#43055" at line 570, column 1] ----
1<style>
2.component-title {
3 color: #212529;
4 font-size: 1.125rem;
5 font-weight: 500;
6 line-height: 1.2;
7 margin-bottom: calc((1.9375rem - (1em * 1.2)) / 2);
8 margin-top: calc((1.9375rem - (1em * 1.2)) / 2);
9 visibility: hidden;
10}
11.portlet-title-text {
12 display: inline-block;
13 margin-top: 0;
14 max-width: 95%;
15 overflow: hidden;
16 text-overflow: ellipsis;
17 vertical-align: top;
18 white-space: nowrap;
19 visibility: hidden;
20}
21.mb-3, .my-3 {
22 margin-bottom: 1rem !important;
23 margin: -90px 0px 0px 0px;
24}
25 .other-news {
26 color: #cb373b;
27 font-weight: bold;
28 margin-top: 5px;
29 margin-bottom: 3px;
30 overflow: hidden;
31 }
32 .other-news:after {
33 content:"";
34 display: inline-block;
35 height: 0.5em;
36 vertical-align: bottom;
37 width: 100%;
38 margin-right: -100%;
39 margin-left: 10px;
40 border-top: 1px solid #cb373b;
41 }
42 .date-span {
43 color: #888888;
44 font-size: 14px;
45 font-weight: normal;
46 }
47 .limit-tit {
48 display: block;
49 text-overflow: ellipsis;
50 word-wrap: break-word;
51 overflow: hidden;
52 max-height: 6em;
53 display: -webkit-box;
54 -webkit-line-clamp: 2;
55 -webkit-box-orient: vertical;
56 margin: 0;
57 }
58 @media only screen and (min-width: 768px) {
59 .other-imgs {
60 height: 60px;
61 }
62 }
63 @media only screen and (max-width: 500px) {
64 .curPage-title {
65 display: none;
66 }
67 .title-divvv {
68 text-align: justify;
69 margin-top: 50px;
70 }
71 }
72 .pagination2 {
73 display: inline-block;
74 }
75
76 .pagination2 a {
77 cursor: pointer;
78 color: black;
79 float: left;
80 padding: 8px 16px;
81 text-decoration: none;
82 transition: background-color .3s;
83 border: 1px solid #ddd;
84 margin: 0 4px;
85 }
86
87 .pagination2 a.active {
88 background-color: #4CAF50;
89 color: white;
90 border: 1px solid #4CAF50;
91 }
92
93 .pagination2 a:hover:not(.active) {
94 background-color: #ddd;
95 }
96 .tieuDe-asset::after {
97 position: absolute;
98 content: "";
99 left: 100%;
100 top: 0;
101 border-top: 14px solid transparent;
102 border-bottom: 15px solid transparent;
103 border-left: 13px solid darkgray;
104 }
105 .asset-full-content.clearfix.mb-5.show-asset-title {
106 margin-bottom: 0 !important;
107 }
108 .article-head {
109 margin-bottom: 0;
110 }
111 @media only screen and (max-width: 768px) {
112 #contentText iframe {
113 width: 100% !important;
114 }
115 .article-head .article-info {
116 margin-bottom: 0;
117 padding: 15px 0 8px 0;
118 }
119 }
120 @media only screen and (max-width: 500px) {
121 .curPage-title {
122 display: unset !important;
123 }
124 }
125 .paginate-pagination ul {
126
127 margin: 20px 0;
128 padding: 0;
129 list-style: none;
130
131}
132
133.paginate-pagination ul:after {
134
135 content: ' ';
136 display: table;
137 clear: both;
138
139}
140
141.paginate-pagination ul > li {
142
143 float: left;
144 margin-right: 3px;
145
146}
147
148.paginate-pagination ul > li > a.page {
149
150 display: block;
151 height: 30px;
152 width: 30px;
153 text-align: center;
154 line-height: 30px;
155 border: 1px solid #ddd;
156 background: white;
157 text-decoration: none;
158 cursor: pointer;
159
160}
161
162.paginate-pagination ul > li > a.page:hover { opacity: 0.7; }
163.paginate-pagination ul > li > a.page.active { opacity: 0.7; cursor: default; }
164
165.paginate-pagination ul > li > a.page-next.deactive,
166.paginate-pagination ul > li > a.page-prev.deactive { opacity: 0.7; cursor: default; }
167</style>
168<style>
169
170.page_navigation , .alt_page_navigation{
171 padding-bottom: 10px;
172
173}
174
175.page_navigation a, .alt_page_navigation a{
176float: left;
177 width: 32px;
178 text-align: center;
179 padding: 6px 0;
180 border: 1px solid #cdcdcd;
181 border-right: none;
182 background: #fff;
183 color: #45afe4;
184}
185.page_navigation a:hover{
186 cursor: pointer;
187 background: rgb(216, 241, 255);
188}
189.ellipse{
190 float: left;
191 border-right:1px solid #cdcdcd;
192}
193.active_page{
194 background-color:#45afe4 !important;
195 color:#fff !important;
196}
197</style>
198<script type="text/javascript">
199;
200(function($) { /*******************************************************************************************/
201
202 $.fn.pajinate = function(options) {
203 // Set some state information
204 var current_page = 'current_page';
205 var items_per_page = 'items_per_page';
206
207 var meta;
208
209 // Setup default option values
210 var defaults = {
211 item_container_id: '.content',
212 items_per_page: 5,
213 nav_panel_id: '.page_navigation',
214 nav_info_id: '.info_text',
215 num_page_links_to_display: 5,
216 start_page: 0,
217 wrap_around: false,
218 nav_label_first: 'First',
219 nav_label_prev: 'Prev',
220 nav_label_next: 'Next',
221 nav_label_last: 'Last',
222 nav_order: ["first", "prev", "num", "next", "last"],
223 nav_label_info: 'Showing {0}-{1} of {2} results',
224 show_first_last: true,
225 abort_on_small_lists: false,
226 jquery_ui: false,
227 jquery_ui_active: "ui-state-highlight",
228 jquery_ui_default: "ui-state-default",
229 jquery_ui_disabled: "ui-state-disabled"
230 };
231
232 var options = $.extend(defaults, options);
233 var $item_container;
234 var $page_container;
235 var $items;
236 var $nav_panels;
237 var total_page_no_links;
238 var jquery_ui_default_class = options.jquery_ui ? options.jquery_ui_default : '';
239 var jquery_ui_active_class = options.jquery_ui ? options.jquery_ui_active : '';
240 var jquery_ui_disabled_class = options.jquery_ui ? options.jquery_ui_disabled : '';
241
242 return this.each(function() {
243 $page_container = $(this);
244 $item_container = $(this).find(options.item_container_id);
245 $items = $page_container.find(options.item_container_id).children();
246
247 if (options.abort_on_small_lists && options.items_per_page >= $items.size()) return $page_container;
248
249 meta = $page_container;
250
251 // Initialize meta data
252 meta.data(current_page, 0);
253 meta.data(items_per_page, options.items_per_page);
254
255 // Get the total number of items
256 var total_items = $item_container.children().size();
257
258 // Calculate the number of pages needed
259 var number_of_pages = Math.ceil(total_items / options.items_per_page);
260
261 // Construct the nav bar
262 var more = '<a class="ellipse more">...</a>';
263 var less = '<a class="ellipse less">...</a>';
264 var first = !options.show_first_last ? '' : '<a class="first_link ' + jquery_ui_default_class + '" href="">' + options.nav_label_first + '</a>';
265 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>';
266
267 var navigation_html = "";
268
269 for (var i = 0; i < options.nav_order.length; i++) {
270 switch (options.nav_order[i]) {
271 case "first":
272 navigation_html += first;
273 break;
274 case "last":
275 navigation_html += last;
276 break;
277 case "next":
278 navigation_html += '<a class="next_link ' + jquery_ui_default_class + '" href="">' + options.nav_label_next + '</a>';
279 break;
280 case "prev":
281 navigation_html += '<a class="previous_link ' + jquery_ui_default_class + '" href="">' + options.nav_label_prev + '</a>';
282 break;
283 case "num":
284 navigation_html += less;
285 var current_link = 0;
286 while (number_of_pages > current_link) {
287 navigation_html += '<a class="page_link ' + jquery_ui_default_class + '" href="" longdesc="' + current_link + '">' + (current_link + 1) + '</a>';
288 current_link++;
289 }
290 navigation_html += more;
291 break;
292 default:
293 break;
294 }
295
296 }
297
298 // And add it to the appropriate area of the DOM
299 $nav_panels = $page_container.find(options.nav_panel_id);
300 $nav_panels.html(navigation_html).each(function() {
301
302 $(this).find('.page_link:first').addClass('first');
303 $(this).find('.page_link:last').addClass('last');
304
305 });
306
307 // Hide the more/less indicators
308 $nav_panels.children('.ellipse').hide();
309
310 // Set the active page link styling
311 $nav_panels.find('.previous_link').next().next().addClass('active_page ' + jquery_ui_active_class);
312
313 /* Setup Page Display */
314 // And hide all pages
315 $items.hide();
316 // Show the first page
317 $items.slice(0, meta.data(items_per_page)).show();
318
319 /* Setup Nav Menu Display */
320 // Page number slices
321 total_page_no_links = $page_container.find(options.nav_panel_id + ':first').children('.page_link').size();
322 options.num_page_links_to_display = Math.min(options.num_page_links_to_display, total_page_no_links);
323
324 $nav_panels.children('.page_link').hide(); // Hide all the page links
325 // And only show the number we should be seeing
326 $nav_panels.each(function() {
327 $(this).children('.page_link').slice(0, options.num_page_links_to_display).show();
328 });
329
330 /* Bind the actions to their respective links */
331
332 // Event handler for 'First' link
333 $page_container.find('.first_link').click(function(e) {
334 e.preventDefault();
335
336 movePageNumbersRight($(this), 0);
337 gotopage(0);
338 });
339
340 // Event handler for 'Last' link
341 $page_container.find('.last_link').click(function(e) {
342 e.preventDefault();
343 var lastPage = total_page_no_links - 1;
344 movePageNumbersLeft($(this), lastPage);
345 gotopage(lastPage);
346 });
347
348 // Event handler for 'Prev' link
349 $page_container.find('.previous_link').click(function(e) {
350 e.preventDefault();
351 showPrevPage($(this));
352 });
353
354
355 // Event handler for 'Next' link
356 $page_container.find('.next_link').click(function(e) {
357 e.preventDefault();
358 showNextPage($(this));
359 });
360
361 // Event handler for each 'Page' link
362 $page_container.find('.page_link').click(function(e) {
363 e.preventDefault();
364 gotopage($(this).attr('longdesc'));
365 });
366
367 // Goto the required page
368 gotopage(parseInt(options.start_page));
369 toggleMoreLess();
370 if (!options.wrap_around) tagNextPrev();
371 });
372
373 function showPrevPage(e) {
374 new_page = parseInt(meta.data(current_page)) - 1;
375
376 // Check that we aren't on a boundary link
377 if ($(e).siblings('.active_page').prev('.page_link').length == true) {
378 movePageNumbersRight(e, new_page);
379 gotopage(new_page);
380 }
381 else if (options.wrap_around) {
382 gotopage(total_page_no_links - 1);
383 }
384
385 };
386
387 function showNextPage(e) {
388 new_page = parseInt(meta.data(current_page)) + 1;
389
390 // Check that we aren't on a boundary link
391 if ($(e).siblings('.active_page').next('.page_link').length == true) {
392 movePageNumbersLeft(e, new_page);
393 gotopage(new_page);
394 }
395 else if (options.wrap_around) {
396 gotopage(0);
397 }
398
399 };
400
401 function gotopage(page_num) {
402
403 page_num = parseInt(page_num, 10)
404
405 var ipp = parseInt(meta.data(items_per_page));
406
407 // Find the start of the next slice
408 start_from = page_num * ipp;
409
410 // Find the end of the next slice
411 end_on = start_from + ipp;
412 // Hide the current page
413 var items = $items.hide().slice(start_from, end_on);
414
415 items.show();
416
417 // Reassign the active class
418 $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);
419
420 // Set the current page meta data
421 meta.data(current_page, page_num);
422 /*########## Ajout de l'option page courante + nombre de pages*/
423 var $current_page = parseInt(meta.data(current_page)+1);
424 // Get the total number of items
425 var total_items = $item_container.children().size();
426 // Calculate the number of pages needed
427 var $number_of_pages = Math.ceil(total_items / options.items_per_page);
428 /*##################################################################*/
429 $page_container.find(options.nav_info_id).html(options.nav_label_info.replace("{0}", start_from + 1).
430 replace("{1}", start_from + items.length).replace("{2}", $items.length).replace("{3}", $current_page).replace("{4}", $number_of_pages));
431
432 // Hide the more and/or less indicators
433 toggleMoreLess();
434
435 // Add a class to the next or prev links if there are no more pages next or previous to the active page
436 tagNextPrev();
437
438 // check if the onPage callback is available and call it
439 if (typeof(options.onPageDisplayed) !== "undefined" ) {
440 options.onPageDisplayed.call(this, page_num + 1)
441 }
442
443 }
444
445 // Methods to shift the diplayed index of page numbers to the left or right
446
447
448 function movePageNumbersLeft(e, new_p) {
449 var new_page = new_p;
450
451 var $current_active_link = $(e).siblings('.active_page');
452
453 if ($current_active_link.siblings('.page_link[longdesc=' + new_page + ']').css('display') == 'none') {
454
455 $nav_panels.each(function() {
456 $(this).children('.page_link').hide() // Hide all the page links
457 .slice(parseInt(new_page - options.num_page_links_to_display + 1), new_page + 1).show();
458 });
459 }
460
461 }
462
463 function movePageNumbersRight(e, new_p) {
464 var new_page = new_p;
465
466 var $current_active_link = $(e).siblings('.active_page');
467
468 if ($current_active_link.siblings('.page_link[longdesc=' + new_page + ']').css('display') == 'none') {
469
470 $nav_panels.each(function() {
471 $(this).children('.page_link').hide() // Hide all the page links
472 .slice(new_page, new_page + parseInt(options.num_page_links_to_display)).show();
473 });
474 }
475 }
476
477 // Show or remove the ellipses that indicate that more page numbers exist in the page index than are currently shown
478
479
480 function toggleMoreLess() {
481
482 if (!$nav_panels.children('.page_link:visible').hasClass('last')) {
483 $nav_panels.children('.more').show();
484 }
485 else {
486 $nav_panels.children('.more').hide();
487 }
488
489 if (!$nav_panels.children('.page_link:visible').hasClass('first')) {
490 $nav_panels.children('.less').show();
491 }
492 else {
493 $nav_panels.children('.less').hide();
494 }
495 }
496
497 /* Add the style class ".no_more" to the first/prev and last/next links to allow custom styling */
498
499 function tagNextPrev() {
500 if ($nav_panels.children('.last').hasClass('active_page')) {
501 $nav_panels.children('.next_link').add('.last_link').addClass('no_more ' + jquery_ui_disabled_class);
502 }
503 else {
504 $nav_panels.children('.next_link').add('.last_link').removeClass('no_more ' + jquery_ui_disabled_class);
505 }
506
507 if ($nav_panels.children('.first').hasClass('active_page')) {
508 $nav_panels.children('.previous_link').add('.first_link').addClass('no_more ' + jquery_ui_disabled_class);
509 }
510 else {
511 $nav_panels.children('.previous_link').add('.first_link').removeClass('no_more ' + jquery_ui_disabled_class);
512 }
513 }
514
515 };
516
517})(jQuery);
518</script>
519<script type="text/javascript">
520 $(document).ready(function(){
521 $('#paging_container5').pajinate({
522 nav_label_first : '<<',
523 nav_label_last : '>>',
524 nav_label_prev : '<',
525 nav_label_next : '>'
526 });
527 });
528
529 </script>
530<#assign
531 title = .vars['reserved-article-title'].data
532 portalURL = themeDisplay.getPortalURL()
533 currentUrl = portalURL + themeDisplay.getURLCurrent()
534 imageUrl = portalURL + .vars['reserved-article-small-image-url'].data
535 srcfb = "https://www.facebook.com/plugins/like.php?href=${currentUrl}&width=172&layout=button_count&action=like&size=small&share=true&height=46&appId"
536 displayDate = .vars['reserved-article-display-date'].data
537 summary = .vars['reserved-article-description'].data/>
538
539 <#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
540
541 <#assign scopeId = themeDisplay.getScopeGroupId()>
542
543 <#assign contentId = .vars['reserved-article-id'].data>
544
545 <#assign articlePrimKey = JournalArticleLocalService.getArticle(getterUtil.getLong(scopeId), contentId).resourcePrimKey>
546
547 <#assign catLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
548 <#assign articleCatId = catLocalService.getCategoryIds("com.liferay.journal.model.JournalArticle", getterUtil.getLong(articlePrimKey))>
549
550 <#assign categoryList = catLocalService.getAssetEntryAssetCategories(getterUtil.getLong(articlePrimKey))>
551
552 <#assign assetEntryQueryService = objectUtil('com.liferay.asset.kernel.service.AssetEntryLocalServiceUtil')>
553
554 <#assign assetEntryQuery = objectUtil('com.liferay.asset.kernel.service.persistence.AssetEntryQuery')>
555
556
557 <#assign search = assetEntryQuery.setAllCategoryIds(articleCatId)>
558 <#assign search = assetEntryQuery.setOrderByCol1("publishDate")/>
559 <#assign search = assetEntryQuery.setOrderByType1("DESC")/>
560
561 <#assign teste = assetEntryQueryService.getEntries(assetEntryQuery)
562 totalPage = 0/>
563
564<#assign layoutService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService") />
565<#if (request.getParameter("plidlayout")?has_content)>
566 <#assign plidlayout = request.getParameter("plidlayout") />
567 <#else>
568 <#assign plidlayout = 2 />
569</#if>
570<#assign layout = layoutService.fetchLayout(plidlayout?number) />
571<#assign curLayout = layoutService.fetchLayout(plid?number) />
572<#assign pageTitle = layout.getName(locale) />
573<#assign pageUrl = layout.getFriendlyURL(locale) />
574<#assign curPageTitle = curLayout.getName(locale) />
575<#assign originalLocale = .locale>
576<#setting locale = localeUtil.getDefault()>
577<#assign displayDate = displayDate?datetime("EEE, d MMM yyyy HH:mm:ss Z")>
578<#assign locale = originalLocale>
579<#assign displayDate = displayDate?string("HH:mm dd/MM/yyyy")>
580
581<#assign listLayoutDHD = [5474,5512,179]>
582<#assign layo = themeDisplay.getPlid() />
583
584<script src="https://sp.zalo.me/plugins/sdk.js"></script>
585<liferay-util:html-top outputKey="htmltop">
586 <meta name="url" property="og:url" content="${currentUrl}" />
587 <meta name="type" property="og:type" content="article" />
588 <meta name="title" property="og:title" content="${.vars['reserved-article-title'].data}" />
589 <meta name="image" property="og:image" content="${imageUrl}" >
590</liferay-util:html-top>
591
592
593
594<div class="row">
595 <div class="col-8">
596
597
598 <#if listLayoutDHD?seq_index_of(layo) > -1 >
599 <div class="brumnoidung">
600 <ul class="breadcrumb">
601 <li class="breadcrumb-item crum1"><a href="/home">Trang chủ</a></li>
602 <li class="breadcrumb-item active">Tin tức</li>
603 </ul>
604 </div>
605 <#else>
606 <span style="position: relative;font-weight: bold;font-size: 17px;border-left: 3px solid #ed0678;padding: 5px;background-color: darkgrey;" class="tieuDe-asset">
607 <a href="${pageUrl}">${pageTitle}</a>
608 </span>
609 <#assign journalArticleId = .vars['reserved-article-id'].data>
610 <#assign journalArticleResourceLocalServiceUtil = staticUtil["com.liferay.journal.service.JournalArticleResourceLocalServiceUtil"]>
611 <#assign assetCategoryLocalServiceUtil = staticUtil["com.liferay.asset.kernel.service.AssetCategoryLocalServiceUtil"]>
612
613 <#assign articleResourcePK = journalArticleResourceLocalServiceUtil.getArticleResourcePrimKey(groupId, journalArticleId)/>
614 <#assign categoryList=assetCategoryLocalServiceUtil.getCategories("com.liferay.journal.model.JournalArticle",articleResourcePK) >
615
616 <#list categoryList as thisCategory>
617 <#if (thisCategory_index==0)>
618 <span class="curPage-title" style="font-size: 17px;padding-left: 17px;font-weight: bold;">${thisCategory.getName()}</span>
619 </#if>
620 </#list>
621 </#if>
622
623 <div class="article-head">
624 <div class="article-info" style="border-top: 0px;border-bottom: 0px;margin-left: 11px;">
625 <div class="social-buttons left">
626 ${displayDate}
627 </div>
628 <div class="social-buttons right">
629 <a class="social-thing" onclick="voiceSpeak('contentText','voiceSex')"; style="margin-right: 5px;"
630 data-toggle="tooltip" title="Đọc bài viết">
631 <img class="volume-up" src="/o/portal-dt-home-theme/images/icons/trothinh_volume-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/>
632 </a>
633 <a id="void-pause" class="social-thing" onclick="voicePause()"; style="margin-right: 1px;display:none;"
634 data-toggle="tooltip" title="Tạm dừng đọc">
635 <span class="fa fa-pause" style="vertical-align: middle;opacity: 1;width: 13px;color: dimgray;"/>
636 </a>
637 <a id="void-resume" class="social-thing" onclick="voiceResume()"; style="margin-right: 1px;display:none;"
638 data-toggle="tooltip" title="Tiếp tục đọc">
639 <span class="fa fa-repeat" style="vertical-align: middle;opacity: 1;width: 13px;color: dimgray;"></span>
640 </a>
641 <a id="void-stop" class="social-thing" onclick="voiceCancel()"; style="margin-right: 1px;display:none;"
642 data-toggle="tooltip" title="Dừng đọc">
643 <span class="fa fa-stop"style="vertical-align: middle;opacity: 1;width: 13px;color: dimgray;"/>
644 </a>
645 <a class="social-thing" style="margin-right: 5px;">
646 <img src="/o/portal-dt-home-theme/images/icons/trothinh_wall-ico.png" style="vertical-align: middle;opacity: 1;width: 1px;height: 13px"/>
647 </a>
648 <a class="social-thing" onclick="giamTuongPhan();" style="margin-right: 5px;"
649 data-toggle="tooltip" title="Giảm tương phản">
650 <img src="/o/portal-dt-home-theme/images/icons/trothinh_bright-down-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/>
651 </a>
652 <a class="social-thing" onclick="tangTuongPhan();" style="margin-right: 5px;"
653 data-toggle="tooltip" title="Tăng tương phản">
654 <img src="/o/portal-dt-home-theme/images/icons/trothinh_bright-up-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/>
655 </a>
656 <a class="social-thing" style="margin-right: 5px;">
657 <img src="/o/portal-dt-home-theme/images/icons/trothinh_wall-ico.png" style="vertical-align: middle;opacity: 1;width: 1px;height: 13px"/>
658 </a>
659 <a class="social-thing" onclick="fontMinus();" style="margin-right: 5px;"
660 data-toggle="tooltip" title="Giảm cỡ chữ">
661 <img src="/o/portal-dt-home-theme/images/icons/trothinh_zoom-down-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/>
662 </a>
663 <a class="social-thing" onclick="fontDefault();" style="margin-right: 5px;"
664 data-toggle="tooltip" title="Cỡ chữ mặc định">
665 <img src="/o/portal-dt-home-theme/images/icons/trothinh_zoom-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/>
666 </a>
667 <a class="social-thing" onclick="fontPlus();" style="margin-right: 5px;"
668 data-toggle="tooltip" title="Tăng cỡ chữ">
669 <img src="/o/portal-dt-home-theme/images/icons/trothinh_zoom-up-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/>
670 </a>
671 <a class="social-thing" style="margin-right: 5px;">
672 <img src="/o/portal-dt-home-theme/images/icons/trothinh_wall-ico.png" style="vertical-align: middle;opacity: 1;width: 1px;height: 13px"/>
673 </a>
674 <a class="social-thing" onclick="printPage('contentText');" style="margin-right: 5px;"
675 data-toggle="tooltip" title="In bài viết">
676 <img src="/o/portal-dt-home-theme/images/icons/trothinh_print-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;"/>
677 </a>
678 <a class="social-thing" href="https://mail.google.com/mail/?view=cm&fs=1&su=${title}&body=${currentUrl}" style="margin-right: 5px;"
679 data-toggle="tooltip" title="Gửi mail" target="_blank">
680 <img src="/o/portal-dt-home-theme/images/icons/trothinh_mail-btn.png" style="vertical-align: middle;opacity: 1;width: 16px;height:13px"/>
681 </a>
682 </div>
683 <input type="hidden" id="voiceSex" value="Vietnamese Female"></input>
684 <input type="hidden" id="tuongphan" value="3"></input>
685 </div>
686 </div>
687
688 <div style="margin:10px">
689 <h2 class="title-divvv" style="color: #ed0678;font-weight: bold;">${title}</h2>
690 </div>
691 <div id="contentText" style="margin:10px">
692 <b>${summary}</b>
693 ${noiDung.getData()}
694 </div>
695 <div class="article-info">
696 <div class="social-buttons">
697 <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>
698 <div class="zalo-follow-only-button" data-oaid="3540423014405379625" style="width: 88px;"></div>
699 <div class="zalo-share-button" data-href="" data-oaid="4499765515963062717" data-layout="1" data-color="blue" data-customize=false></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) > -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 > 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
736
737 </div>
738 </div>
739 <div class="col-4" style="padding-left:20px">
740
741
742 <div class="social-buttons right">
743 <div>
744 <p class="other-news">Xem thêm các tin khác </p>
745 </div>
746 <div class="row ml-0 mr-0 relatedentry" id="0">
747 <div id="paging_container5">
748 <ul class="content" style="padding-bottom: 15px;">
749 <#list teste as curEntryyy>
750 <#assign
751 renderer = curEntryyy.getAssetRenderer()
752 className = renderer.getClassName() />
753 <#if className == "com.liferay.journal.model.JournalArticle">
754 <#assign
755 title2 = curEntryyy.getTitle(locale)
756 article2 = renderer.getArticle()
757 publishdate2 = curEntryyy.getPublishDate()
758 viewcount2 = curEntryyy.getViewCount()
759 description2 = article2.getDescription(locale)
760 curEntryyy = curEntryyy
761 viewURL2 = themeDisplay.getPathFriendlyURLPublic() + themeDisplay.getSiteGroup().getFriendlyURL() + "/chi-tiet-bai-viet/-/asset_publisher/1mOzUrGkrdAE/content/id/${curEntryyy.getEntryId()}?plidlayout=${themeDisplay.getLayout().getPlid()}"/>
762
763 <#if curEntryyy.getAssetRenderer().getThumbnailPath(renderRequest)??>
764 <#assign smallImageUrl = curEntryyy.getAssetRenderer().getThumbnailPath(renderRequest) >
765 <#else>
766 <#assign smallImageUrl = "" >
767 </#if>
768
769 <li style="margin-top:10px">
770 <div class="col-md-12">
771 <div class="row ml-0 mr-0">
772 <div class="col-sm-3">
773 <a href="${viewURL2}"><img src="${smallImageUrl}" alt="img" class="img-fluid w-100 other-imgs"></a>
774 </div>
775 <div class="col-sm-9 pl-sm-2">
776 <a href="${viewURL2}"><p style="margin-bottom: 5px;" class="limit-tit">${title2}</p></a>
777 <span class="date-span">${publishdate2}</span>
778 </div>
779 </div>
780 </div>
781 </li>
782
783 </#if>
784 </#list>
785 </ul>
786 <div class="page_navigation"></div>
787 </div>
788
789 </div>
790 </div>
791 </#if>
792 <#if teste?has_content && teste?length > 0>
793 <div style="text-align: center">
794
795 </div>
796 </#if>
797 </div>
798
799 </div>