Hội thảo Thúc đẩy phát triển và ứng dụng phần mềm mã nguồn mở - snn

An error occurred while processing the template.
The following has evaluated to null or missing: ==> entry.getSummary(locale) [in template "20097#20125#39460" at line 69, column 31] ---- Tip: If the failing expression is known to 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: entrySumary = entry.getSummary(locale) [in template "20097#20125#39460" at line 69, column 17] ----
1<script src="https://sp.zalo.me/plugins/sdk.js"></script>
2<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/lightgallery/1.2.19/css/lightgallery.min.css">
3<script src="https://cdnjs.cloudflare.com/ajax/libs/lightgallery/1.2.19/js/lightgallery-all.min.js"></script>
4<script>
5$(document).ready(function(){
6 //slider bgbox_slider_hoatdong
7 try {
8 $('#chitiet_chitiet').find('img').each(function(){
9 $(this).wrap( "<a data-src='"+this.src+"' href='"+this.src+"' class='ls'></a>" );
10 });
11 $('#chitiet_tin').lightGallery({
12 selector: '.ls'
13 });
14
15 }catch(err){}
16});
17
18</script>
19<!--
20
21
22<#assign JournalArticleService = serviceLocator.findService("com.liferay.journal.service.JournalArticleService")>
23
24
25<#assign assetEntryQueryService = objectUtil('com.liferay.asset.kernel.service.AssetEntryLocalServiceUtil')>
26
27<#assign assetEntryQuery = objectUtil('com.liferay.asset.kernel.service.persistence.AssetEntryQuery')>
28
29
30<#assign journalArticleLocalServiceUtil = objectUtil('com.liferay.journal.service.JournalArticleLocalServiceUtil')>
31
32
33
34 <#assign attrs =renderRequest.getAttributeNames()>
35 <#assign attName ='LIFERAY_SHARED_LAYOUT_ASSET_ENTRY'>
36 <#list attrs as item>
37 <#assign attrText =renderRequest.getAttribute(item)>
38 <p style="color:red">${item}</p>
39
40 <#if attName==item>
41 <#assign entry = attrText>
42 </#if>
43
44 <#if item=='PORTLET_ID'>
45 <#assign porlet_id = attrText>
46 </#if>
47 <#if item=='ASSET_PUBLISHER_HELPER'>
48 <#assign assetPublisherHelper = attrText>
49 ${attrText}
50 </#if>
51 </#list>
52 <#if entry??>
53
54 <#else>
55 <#assign journalArticleId = .vars['reserved-article-id'].data>
56 <#assign journalArticleLongId = getterUtil.getLongStrict(journalArticleId)>
57 <#assign groupid = themeDisplay.getScopeGroupId()>
58 <#assign journalArticle = journalArticleLocalServiceUtil.fetchArticle(groupid,journalArticleId)>
59 <#assign entry = assetEntryQueryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
60
61 </#if>
62 <#if entry??>
63 var countxx= ${ entry.getViewCount()};
64 var eID=${entry.getEntryId()};
65
66 <#assign assetRenderer = entry.getAssetRenderer()
67 aEntry= assetEntryQueryService.getAssetEntry(entry.getEntryId())
68 entryTitle = assetRenderer.getTitle(locale)
69 entrySumary = entry.getSummary(locale)
70 entryPublishDate=""
71
72 entryCount= entry.getViewCount()
73 cats= entry.getCategories()
74 sizeCat= cats?size
75 sizeCatID= entry.getCategoryIds()?size
76 sizeC= 0
77 strCat = ''
78 eid= entry.getEntryId()>
79 var countxx= ${ aEntry.getViewCount()};
80 var sizeCatID=${sizeCatID};
81 var sizeCatID=${sizeCat};
82 <#if entry.getPublishDate()??>
83 <#assign pDate = dateUtil.parseDate('yyyy-MM-dd HH:mm:ss', entry.getPublishDate()?datetime?iso("GMT+07")?split("T")[0] + " "+entry.getPublishDate()?datetime?iso("GMT+07")?split("T")[1]?split("-")[0],locale )
84 entryPublishDate = dateUtil.getDate(pDate, 'EEE, dd/MM/yyyy, HH:mm', locale)>
85 </#if>
86 <#assign docXml = saxReaderUtil.read(entry.getAssetRenderer().getArticle().getContent())>
87 <#assign fieldVal = docXml.valueOf("//dynamic-element[@name='doctinbai']/dynamic-content/text()")>
88
89 ${assetEntryQuery.setAllCategoryIds(entry.getCategoryIds())}
90 ${assetEntryQuery.setOrderByCol1('publishDate') }
91 ${assetEntryQuery.setPublishDate(entry.getPublishDate()) }
92 ${assetEntryQuery.setEnd(20) }
93 ${assetEntryQuery}
94 <#assign teste = assetEntryQueryService.getEntries(assetEntryQuery)>
95
96
97 <#if cats?has_content>
98 <#list cats as cat>
99 <#assign sizeC=sizeC+1
100 strCat= strCat+ cat.getName()>
101 <#if sizeC<sizeCat>
102 <#assign strCat= strCat+ '|'>
103 </#if>
104
105 </#list>
106 </#if>
107
108 <@liferay_asset["asset-categories-summary"]
109 className=entry.getClassName()
110 classPK=entry.getClassPK()
111 portletURL=renderResponse.createRenderURL()
112 />
113
114</#if>
115
116 -->
117
118<style>
119#portlet_${porlet_id} .asset-full-content > div:nth-child(1)
120{
121 display:none;
122}
123#portlet_${porlet_id} .asset-full-content > .metadata-author
124{
125 display:none;
126}
127#portlet_${porlet_id} .asset-full-content > .asset-anchor,#portlet_${porlet_id} .separator,#portlet_${porlet_id} .asset-details
128{
129 display:none;
130}
131
132.bgbox_detail{overflow: hidden;}
133.bgchitiethd{border-bottom: 1px solid #dcdcdc; padding: 5px 0px; margin-bottom: 10px;font-weight: bold; font-size: 15px;}
134.bgchitiethd_body{text-align:right;}
135.chitiet_chucnangdoc text{margin-left:15px;}
136
137.chitiet_tieude,.chitiet_tomtat{margin-bottom:10px;}
138.chitiet_tieude{font-size:24px;font-weight: 700;color:#029ae6;line-height: 32px;}
139.chitiet_thoigian{color:#666666;font-size:12px;}
140.chitiet_tomtat{font-weight:bold;}
141.chitiet_chucnangduoi div{margin-left:10px;float:left;}
142.chitiet_chucnangduoi div img{height:20px;}
143
144.breadcrumb{margin:0px;padding:0px;}
145.breadcrumb li{margin-right:10px;}
146.breadcrumb li a{color:#333; font-size: 14px;font-weight:bold;}
147
148.chitiet_tindadua_hd{border-bottom:1px solid #029ae6;font-size:15px;font-weight:bold; text-transform: uppercase;padding: 5px 0px; margin-bottom: 15px;}
149ul.chitiet_tindadua_body{padding: 0px; margin: 0px;}
150.chitiet_tindadua_title a{
151 background: url("/documents/69378/69409/icon-red.png") no-repeat 0px 12px;
152 padding: 5px 0px 5px 15px;color:#333; font-size: 14px; display: inline-block;}
153
154#article-button-voice-start-id-cms{}
155#article-button-voice-start-id-cms[value="2"]{background:url('/documents/69378/69409/dung.png') no-repeat center center;width:77px;height:17px;display: inline-block;cursor: pointer;}
156#article-button-voice-start-id-cms[value="1"]{background:url('/documents/69378/69409/doc.png') no-repeat center center;width:72px;height:17px;display: inline-block;cursor: pointer;}
157.chitiet_luotxem .view-count-info{color:#333;}
158</style>
159<script src="/documents/157771/157843/jscolor.min.js"></script>
160
161<div class="bgbox_detail">
162
163 <div class="bg_titlecate bgchitiethd_cat" style="margin-bottom:5px;"><#attempt>
164 ${strCat}
165 <#recover>
166 </#attempt></div>
167
168 <div class="row bgchitiethd">
169
170 <div class="col-md-5 bgchitiethd_cat">
171 <#if entryPublishDate?has_content>
172 <div id="chitiet_thoigian" class="chitiet_thoigian">${entryPublishDate
173 ?replace('Sun','Chủ nhật')
174 ?replace('Mon','Thứ hai')
175 ?replace('Tue','Thứ ba')
176 ?replace('Wed','Thứ tư')
177 ?replace('Thu','Thứ năm')
178 ?replace('Fri','Thứ sáu')
179 ?replace('Sat','Thứ bảy')} </div>
180 </#if>
181 </div>
182
183 <div class="col-md-7 bgchitiethd_body" >
184 <div class="chitiet_chucnang chitiet_chucnangdoc " >
185
186 <#if fieldVal?has_content>
187 <text >
188 <span data-src='${fieldVal}' onclick="StartListen(this)" value="1" id="article-button-voice-start-id-cms" title="Đọc"></span>
189 </text>
190 </#if>
191
192
193
194 <text>Màu chữ
195 <input class="jscolor {valueElement: 'color_value'}" type="image" src="/documents/69378/69409/icon_mauchu.png" id="color_value" onchange="changeColor()" style="margin-left: 1px;cursor:pointer;" autocomplete="off">
196 </text>
197
198 <text>Cỡ chữ
199 <a class="font-button minus" style="cursor:pointer;" ><img src="/documents/69378/69409/FontTSmall.png"></a>
200 <a class="font-button plus" style="padding-left: 6px;cursor:pointer;"><img src="/documents/69378/69409/FontTLage.png/fe2b021c-9526-8ec4-19d2-54db1ee6bcea?t=1587957860649" ></a>
201 </text>
202 </div>
203 </div>
204
205 </div>
206
207 <div id="chitiet_tin" class="chitiet_tin" style="overflow: hidden; text-align: justify">
208
209
210 <div id="chitiet_tieude" class="chitiet_tieude "><#attempt>${entryTitle}<#recover></#attempt></div>
211
212 <!--<#if entrySumary?has_content><div id="chitiet_tomtat" class="chitiet_tomtat option_toolbar">${entrySumary}</div></#if>-->
213
214 <div id="chitiet_chitiet" class="chitiet_chitiet option_toolbar">${Detail.getData()}</div>
215
216
217 <div class="chitiet_file">
218 <#if FileAttach.getSiblings()?has_content>
219
220 <#assign cfile = 0>
221 <#list FileAttach.getSiblings() as cur_FileAttach>
222
223 <#if cur_FileAttach.getData()?has_content>
224 <#assign cfile += 1>
225 </#if>
226 </#list>
227 <#if (cfile>0)>
228
229 </#if>
230 <#list FileAttach.getSiblings() as cur_FileAttach>
231 <#assign mota = "Tải nội dung tại đây">
232 <#if cur_FileAttach.getData()?has_content>
233 <#if cur_FileAttach.getChild('FileAttachDesc').getData()?has_content>
234 <#assign mota = cur_FileAttach.getChild('FileAttachDesc').getData()>
235 </#if>
236 <a href="${cur_FileAttach.getData()}" target="_blank">
237 ${mota}
238 </a>
239 </#if>
240 </#list>
241 </#if>
242 </div>
243
244 <div id="chitiet_nguon" class="chitiet_nguon bgtin_source option_toolbar" style="clear:both;text-align:right;font-weight:bold;"><p>${Source.getData()}</p></div>
245
246 <div class="chitiet_chucnangk option_toolbar" style="clear:both;">
247
248 <div class="chitiet_luotxem" style="float:left;">
249 <p><span style="float:left">Số lượt xem:</span>
250 <span style="padding-left:3px; float:left" id="luotxemId"><#if entryCount?has_content>${entryCount}</#if></span>
251 <p>
252 </div>
253
254 <div class="chitiet_chucnangduoi" style="float:right;">
255
256 <div class="chitiet_face" onclick="$('.taglib-social-bookmark-facebook').click()" style="cursor:pointer;"><img src="/documents/69378/69409/icon_f.png"/></div>
257 <div class="chitiet_tw" onclick="$('.taglib-social-bookmark-twitter').click()" style="cursor:pointer;"><img src="/documents/69378/69409/icon_tw.png"/></div>
258 <div class="zalo-share-button" id="zalo-share-button" data-oaid="784550885158924319" data-layout="2" data-color="blue" data-customize=false></div>
259
260 <div class="chitiet_in" ><a href="javascript: print();"><img src="/documents/69378/69409/icon_in.png"/></a></div>
261 </div>
262
263 </div>
264
265
266
267
268 <#if fieldVal?has_content>
269 <audio style="display:none" id="myAudio" controls="">
270 <source id="idAudi" src="${doctinbai.getData()}" type="audio/mpeg">
271 </audio>
272 </#if>
273 </div>
274 <#if teste?has_content>
275 <div class="chitiet_tindadua" style="clear:both;margin:10px 0px;">
276 <div class="chitiet_tindadua_hd">Tin đã đưa</div>
277 <ul class="chitiet_tindadua_body">
278
279 <#list teste as test>
280 <#if (test.getEntryId()!=entry.getEntryId())>
281
282 <#assign assetRendererNew = test.getAssetRenderer()
283 viewURL = "">
284 <#attempt>
285 <#assign viewURL = assetPublisherHelper.getAssetViewURL(renderRequest, renderResponse, test)
286 viewURL = $renderer.getURLViewInContext(renderRequest, renderResponse, viewURL)
287 >
288 <#recover>
289 <#attempt>
290 <#if (themeDisplay.getURLCurrent()?contains("/"+themeDisplay.getScopeGroupName()+"/"))>
291 <#assign viewURL = '/web/'+themeDisplay.getScopeGroupName()+"/-/"+test.getAssetRenderer().getUrlTitle() >
292 <#else>
293 <#assign viewURL = '/-/'+test.getAssetRenderer().getUrlTitle() >
294 </#if>
295 <#recover>
296 </#attempt>
297 </#attempt>
298 <li class="chitiet_tindadua_title"><a href="${viewURL}">${htmlUtil.escape(assetRendererNew.getTitle(locale))}<span class="chitiet_tindaduatg"> <#if test.getPublishDate()??>
299 <#assign pDateNew = dateUtil.parseDate('yyyy-MM-dd HH:mm:ss', test.getPublishDate()?datetime?iso("GMT+07")?split("T")[0] + " "+test.getPublishDate()?datetime?iso("GMT+07")?split("T")[1]?split("-")[0],locale )>
300 (${dateUtil.getDate(pDateNew, 'dd/MM/yyyy', locale)})
301</#if></span></a></li>
302</#if>
303 </#list>
304 </ul>
305 </div>
306 </#if>
307</div>
308
309
310
311<script>
312
313function print() {
314 new_win = window.open("", "win1", "width=800, height=640,scrollbars=1");
315 new_win.document.write('<div style="text-align: center; margin-bottom: 5px;"><a target="" title="" href="javascript: window.print();" style="font-family: Verdana; font-size: 12px; color: red; text-decoration: none;">[In trang này]</a></div>');
316 new_win.document.write('<div id="divcopy">');
317 new_win.document.write('<div style="font-weight:bold;padding:10px 0px;">'+$('#chitiet_tieude').html()+'</div>');
318 new_win.document.write($('#chitiet_thoigian').html());
319 new_win.document.write($('#chitiet_tomtat').html());
320 new_win.document.write($('#chitiet_chitiet').html());
321 new_win.document.write($('#chitiet_nguon').html());
322 new_win.document.write('<hr style="clear:bold;"/>');
323 new_win.document.write('<div>Nguồn: www.baclieu.gov.vn</div>');
324 new_win.document.write('</div>');
325 new_win.document.close();
326 new_win.focus();
327 }
328
329
330function changeColor(){
331 var color = $('#color_value').val();
332 $('.option_toolbar p').css("color", "#"+color);
333 $('.option_toolbar span').css("color", "#"+color);
334 }
335$(function () {
336 $(".font-button").bind("click", function () {
337 var size = parseInt($('.option_toolbar').css("font-size"));
338 if ($(this).hasClass("plus")) {
339 size = size + 2;
340 } else {
341 size = size - 2;
342 if (size <= 10) {
343 size = 10;
344 }
345 }
346 $('.option_toolbar').css("font-size", size);
347 $('.option_toolbar p').css("font-size", size);
348 $('.option_toolbar span').css("font-size", size);
349 $('.option_toolbar strong').css("font-size", size);
350 $('.option_toolbar a').css("font-size", size);
351 });
352 try
353 {
354 jscolor.installByClassName('jscolor');
355 }catch(e)
356 {
357
358 }
359
360 });
361
362</script>
363
364<script>
365
366function StartListen() {
367var myAudio = document.getElementById("myAudio");
368 if ($("#article-button-voice-start-id-cms").attr("value") == 1) {
369 $("#article-button-voice-start-id-cms").attr("value", "2");
370 $("#article-button-voice-start-id-cms").attr("title", "Dừng");
371 myAudio.play();
372 }
373 else
374 if ($("#article-button-voice-start-id-cms").attr("value") == 2) {
375 $("#article-button-voice-start-id-cms").attr("value", "1");
376 $("#article-button-voice-start-id-cms").attr("title", "Đọc");
377 myAudio.pause();
378 }
379
380}
381
382function StopListen() {
383 $("#article-button-voice-start-id-cms").attr("value", "1");
384 myAudio.pause()
385};
386
387document.onkeyup=function(e){
388 if (e.keyCode == 83){
389 StartListen();
390 }
391 if (e.keyCode == 80){
392 StopListen();
393 }
394}
395
396</script>
397
398<script>
399try
400{
401 var luotxem = $(".metadata-author").html().replace("Views", "").replace("View", "");
402 $("#luotxemId").html(luotxem);
403}catch(e){}
404
405 $("#zalo-share-button").attr('data-href',location.href);
406</script>
407<style>
408@media (min-width: 767px){
409 .bg-dark .container:nth-child(1) > .row > div:nth-child(2){max-width:74%;flex:auto;}
410 .bg-dark .container:nth-child(1) > .row > div:nth-child(3){display:none;}
411 .bgbox_detail {
412 overflow: hidden;
413 margin-left: 10px;
414}
415}
416</style>