در حین انجام عملیات خطایی رخ داده است.
The following has evaluated to null or missing:
==> slideshow  [in template "20097#20123#37390" at line 107, column 48]

----
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: #if getterUtil.getBoolean(slideshow.g...  [in template "20097#20123#37390" at line 107, column 21]
----
1<#-- Retrieve the published date meta data field of the web content --> 
2<#assign displaydate = .vars['reserved-article-display-date'].data> 
3<#-- Save the original page locale for later --> 
4<#assign originalLocale = .locale> 
5 
6<#-- Set the page locale to the portals default locale --> 
7<#setting locale = localeUtil.getDefault()> 
8 
9<#-- Parse the date to a date object --> 
10<#assign displaydate = displaydate?datetime("EEE, d MMM yyyy HH:mm:ss Z")> 
11 
12<#-- Set the page locale back to the original page locale --> 
13<#--#assign locale = ''--> 
14<#assign dateFormat = "dd MM yyyy" />  
15<#assign publishDate=dateUtil.getDate(displaydate,dateFormat,locale)/> 
16 
17 
18<!--publish view Count--> 
19<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")> 
20 <#assign assetLinkLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetLinkLocalService" )> 
21 <#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService" )> 
22 <#assign getterUtil = staticUtil["com.liferay.portal.kernel.util.GetterUtil"] /> 
23 <#assign currentArticle = JournalArticleLocalService.getArticle(getterUtil.getLong(groupId),.vars['reserved-article-id'].data)> 
24 <#assign currentArticleResourcePrimKey = currentArticle.getResourcePrimKey()> 
25 <#assign currentArticleAssetEntry = assetEntryLocalService.getEntry("com.liferay.journal.model.JournalArticle", currentArticleResourcePrimKey)/> 
26 <#assign viewCount = currentArticleAssetEntry.viewCount/> 
27 
28<div class="main-new-content"> 
29    <div class="header"> 
30        <div class="date--view"> 
31            <div class="date"> 
32                <span class="icon-calander"><span class="path1"></span><span class="path2"></span></span> 
33                <span class="main-c" id="id-12-${.vars['reserved-article-id'].data}"></span> 
34                <script> 
35                    //date 
36                    var lang = document.getElementsByTagName("html")[0].getAttribute("lang"); 
37                    var date_element = document.getElementById("id-12-${.vars['reserved-article-id'].data}"); 
38                    if( lang == "fa-IR"){ 
39                        date_element.innerHTML = 
40                        moment('${publishDate}', 'DD MM YYYY') 
41                        .locale('fa') 
42                        .format('dddd DD MMMM YYYY'); 
43                    }else if (lang == "ar-SA") { 
44                        date_element.innerHTML = 
45                        moment('${publishDate}', 'DD MM YYYY') 
46                        .locale('ar') 
47                        .format('dddd DD / MM / YYYY'); 
48                    }else if (lang == "en-US") { 
49                        date_element.innerHTML = 
50                        moment('${publishDate}', 'DD MM YYYY') 
51                        .locale('en') 
52                        .format('dddd DD MMMM YYYY'); 
53
54                    date_element.setAttribute("id", ""); 
55                </script> 
56            </div> 
57            <div class="view d-flex"> 
58                <span class="icon-view  mr-1" style="position: relative;top: 3px;" ><span class="path1"></span><span class="path2"></span></span> 
59                <span class="main-c">${viewCount}</span> 
60            </div> 
61        </div> 
62        <#if lead?? && lead.getData() !=""> 
63            <h5 class="lead"> 
64                ${lead.getData()} 
65            </h5> 
66        </#if> 
67        <a href="${friendlyURLs[themeDisplay.getLanguageId()]!""}"> 
68        <h3 class="title" id="title-sharing"> 
69            ${.vars['reserved-article-title'].data} 
70        </h3> 
71        </a> 
72    </div> 
73    <div class="body"> 
74     
75        <#if .vars['reserved-article-small-image-url'].data != ""> 
76            <img class="bold-img" src="${.vars['reserved-article-small-image-url'].data}" alt="" /> 
77        </#if> 
78     
79        <p class="description"> 
80            ${.vars['reserved-article-description'].data} 
81        </p> 
82        <p> 
83        ${content.getData()} 
84        </p> 
85 
86        <#if images?? > 
87        <#if images.getSiblings()?has_content> 
88		 
89        	<#if images.getSiblings()[0].getData() != "" > 
90    	        <#assign 
91                    theme_display = themeDisplay 
92        	        css_folder = theme_display.getPathThemeCss() 
93        	        javascript_folder = theme_display.getPathThemeJavaScript() 
94                /> 
95                <link type="text/css" rel="stylesheet" href="${css_folder}/lightgallery/css/lightgallery.css" /> 
96             
97                <!-- lightgallery plugins --> 
98                <link type="text/css" rel="stylesheet" href="${css_folder}/lightgallery/css/lg-zoom.css" /> 
99                <link type="text/css" rel="stylesheet" href="${css_folder}/lightgallery/css/lg-thumbnail.css" /> 
100			    <script src="${javascript_folder}/lightgallery/lightgallery.umd.js"></script> 
101                <!-- Or use the minified version --> 
102                <script src="${javascript_folder}/lightgallery/lightgallery.min.js"></script> 
103             
104                <!-- lightgallery plugins --> 
105                <script src="${javascript_folder}/lightgallery/plugins/thumbnail/lg-thumbnail.umd.js"></script> 
106                <script src="${javascript_folder}/lightgallery/plugins/zoom/lg-zoom.umd.js"></script> 
107            	    <#if getterUtil.getBoolean(slideshow.getData())> 
108    					<div id="inline-gallery-container" class="inline-gallery-container"></div> 
109 
110    					<script> 
111     
112    						const $lgContainer = document.getElementById("inline-gallery-container"); 
113    						const inlineGallery = lightGallery($lgContainer, { 
114                                container: $lgContainer, 
115    							  dynamic: true, 
116                                  // Turn off hash plugin in case if you are using it 
117                                  // as we don't want to change the url on slide change 
118                                  hash: false, 
119                                  // Do not allow users to close the gallery 
120                                  closable: false, 
121                                  // Add maximize icon to enlarge the gallery 
122                                  showMaximizeIcon: true, 
123                                  // Append caption inside the slide item 
124                                  // to apply some animation for the captions (Optional) 
125                                  appendSubHtmlTo: ".lg-item", 
126                                  // Delay slide transition to complete captions animations 
127                                  // before navigating to different slides (Optional) 
128                                  // You can find caption animation demo on the captions demo page 
129                                  slideDelay: 400, 
130    							plugins: [lgZoom, lgThumbnail], 
131    							animateThumb: 1, 
132                                pager: !1, 
133                                hash: !1, 
134                                zoomFromOrigin: !1, 
135                                toggleThumb: !0, 
136                                allowMediaOverlap: !0, 
137    							dynamicEl: [ 
138    							<#list images.getSiblings() as cur_other_images> 
139
140    									src: '${cur_other_images.getData()}', 
141    									thumb: '${cur_other_images.getData()}&imageThumbnail=1', 
142    									subHtml: ``, 
143    								}, 
144    							</#list>	 
145    							], 
146    							  thumbWidth: 120, 
147                                  thumbHeight: "80px", 
148                                  thumbMargin: 4 
149    						}); 
150     
151    						// Since we are using dynamic mode, we need to programmatically open lightGallery 
152    						inlineGallery.openGallery(); 
153    					</script> 
154                       <style> 
155                        .inline-gallery-container { 
156                          height: 500px; 
157
158                        .rtl .lg-outer { 
159                            text-align: right; 
160
161                        .rtl .inline-gallery-container .lg-outer .lg-thumb-outer.lg-thumb-align-middle { 
162                            direction: ltr; 
163
164                         
165                        .rtl .inline-gallery-container .lg-outer .lg-thumb-item { 
166                            float: left !important; 
167
168                         
169                        .lg-thumb-item img { 
170                            margin: 0 !important; 
171                            border-radius: 0 !important; 
172
173                         
174                        .lg-container { 
175                            font-family: inherit; 
176
177                       </style> 
178                    <#else> 
179                        <div id="animated-thumbnails" class="row"> 
180                            <#list images.getSiblings() as cur_other_images> 
181                                <a href="${cur_other_images.getData()}" class="col-12 col-sm-6 col-md-4 mb-4"> 
182                                    <img src="${cur_other_images.getData()}&imageThumbnail=1" /> 
183                                </a> 
184                            </#list> 
185                        </div> 
186                        <script> 
187                        lightGallery(document.getElementById('animated-thumbnails'), { 
188                            thumbnail: true, 
189                            animateThumb: !1, 
190                            pager: !1, 
191                            plugins: [lgZoom,lgThumbnail], 
192                            hash: !1, 
193                            zoomFromOrigin: !1, 
194                            toggleThumb: !0, 
195                            allowMediaOverlap: !0 
196                        }); 
197 
198                        </script> 
199                        <style> 
200                        #animated-thumbnails img { 
201                            margin: 0 !important; 
202                            border-radius: 0 !important; 
203                            max-width: 100%; 
204                            width: 100%; 
205                            height: 15em; 
206                            object-fit: cover; 
207
208                        .rtl .lg-outer { 
209                            text-align: right; 
210
211                        .lg-outer .lg-thumb-item { 
212                            float: right !important; 
213
214                        .lg-thumb-item img { 
215                            margin: 0 !important; 
216                            border-radius: 0 !important; 
217
218                        .lg-container { 
219                            font-family: inherit; 
220
221                       </style> 
222                    </#if> 
223            </#if> 
224        </#if> 
225    </#if> 
226    </div> 
227</div> 
228 
229<style> 
230.main-new-content { 
231  /*max-width: 925px;*/ 
232  margin: auto; 
233
234 
235 
236/* url */ 
237.main-new-content .url-box { 
238    margin: 1.5em 0 2em; 
239
240 
241.main-new-content .url-box input { 
242    position: absolute; 
243    visibility: hidden; 
244    opacity: 0; 
245
246 
247.main-new-content .url-box .btn-box button{ 
248    background: #2356ae; 
249    color: #FFF; 
250    padding: 0.55em 1.6em; 
251    border: 0; 
252    border-radius: 0.5em; 
253
254 
255.main-new-content .url-box .btn-box { 
256  position: relative; 
257  display: inline-block; 
258
259 
260.main-new-content .url-box .btn-box .tooltiptext { 
261  visibility: hidden; 
262    width: 140px; 
263    background-color: #555; 
264    color: #ffffff; 
265    text-align: center; 
266    border-radius: 6px; 
267    padding: 5px; 
268    position: absolute; 
269    z-index: 1; 
270    bottom: 150%; 
271    left: 50%; 
272    margin-left: -75px; 
273    opacity: 0; 
274    transition: opacity 0.3s; 
275
276 
277.main-new-content .url-box .btn-box .tooltiptext::after { 
278  content: ""; 
279  position: absolute; 
280  top: 100%; 
281  left: 50%; 
282  margin-left: -5px; 
283  border-width: 5px; 
284  border-style: solid; 
285  border-color: #555 transparent transparent transparent; 
286
287 
288.main-new-content .url-box .btn-box:hover .tooltiptext { 
289  visibility: visible; 
290  opacity: 1; 
291
292/* url */ 
293 
294 
295.main-new-content .tags { 
296    margin: 1.5em 0 1em 0; 
297
298 
299.main-new-content .tags h4 { 
300    color: #223a70; 
301
302 
303.main-new-content .header { 
304  width: 100%; 
305  display: flex; 
306  flex-direction: column; 
307
308.main-new-content .header .img-header {  
309    position: relative; 
310
311.main-new-content .header .img-header:before { 
312    content: ""; 
313    position: absolute; 
314    background: linear-gradient(0deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)); 
315    border-radius: 10px; 
316    left: 0; 
317    right: 0; 
318    height: 100%; 
319    width: 100%; 
320
321.main-new-content .header .img-header img { 
322  width: 100%; 
323  border-radius: 0.5em; 
324  /*box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.15);*/ 
325
326.main-new-content .header .date--view { 
327  display: flex; 
328  justify-content: space-between; 
329  margin-top: 0.5em; 
330  //margin-top: -2.7em; 
331  color: #223A70; 
332
333.main-new-content .header .date--view .date, 
334.main-new-content .header .date--view .view { 
335  font-size: 0.8em; 
336   
337
338.main-new-content .header .date--view .date .main-c { 
339    position: relative; 
340    top: -0.2em; 
341
342.main-new-content .header .tools { 
343  display: flex; 
344  margin-bottom: 0.7em; 
345  justify-content: flex-end; 
346
347.main-new-content .header .tools > div { 
348  cursor: pointer; 
349
350html.ltr .main-new-content .header .tools > div + div { 
351  margin-left: 1.5em; 
352
353html.rtl .main-new-content .header .tools > div + div { 
354  margin-right: 1.5em; 
355
356.main-new-content .header .tools > div:hover::before { 
357  color: #1b51b0; 
358
359.main-new-content .header .tools > div::before { 
360  font-size: 1.3em; 
361  transition: all ease-in-out 0.2s; 
362
363.main-new-content .header .tools .razi-icon-share { 
364  position: relative; 
365  padding-bottom: 0.8em; 
366
367.main-new-content .header .tools .razi-icon-print:before { 
368    color: #223A70; 
369
370.main-new-content .header .tools .razi-icon-share:hover .share-box { 
371  opacity: 1; 
372  visibility: visible; 
373
374.main-new-content .header .tools .razi-icon-share .share-box { 
375  display: flex; 
376  align-items: center; 
377  position: absolute; 
378  right: 0; 
379  top: calc(100%); 
380  border-radius: 0.5em; 
381  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); 
382  padding: 0.5em; 
383  z-index: 1; 
384  background: white; 
385  opacity: 0; 
386  visibility: collapse; 
387  transition: all ease-in-out 0.2s; 
388
389html.rtl .main-new-content .header .tools .razi-icon-share .share-box { 
390  right: unset; 
391  left: 0; 
392
393.main-new-content .header .tools .razi-icon-share .share-box a:hover img { 
394  transform: scale(1.1); 
395
396html.ltr .main-new-content .header .tools .razi-icon-share .share-box a + a { 
397  margin-left: 0.7em; 
398
399html.rtl .main-new-content .header .tools .razi-icon-share .share-box a + a { 
400  margin-right: 0.7em; 
401
402.main-new-content .header .tools .razi-icon-share .share-box a img { 
403  transition: all ease-in-out 0.2s; 
404  width: 1.8em; 
405  height: 1.8em; 
406
407.main-new-content .header h3 { 
408  font-size: 1.2em; 
409  margin: 0 0 1.93em 0; 
410  margin-bottom: 0.5em; 
411  color: #223A70; 
412  line-height: 1.8em; 
413
414.main-new-content .header .lead { 
415  font-size: 1.1em; 
416  margin: 1em 0 0 0; 
417  color: #726E6E; 
418  line-height: 1.8em; 
419
420.main-new-content .body p { 
421    margin: 1em 0; 
422    color: #726E6E; 
423    font-size: 1em; 
424    line-height: 2.18em; 
425
426.rtl .main-new-content .body p * { 
427    font-family: 'IRANSansFaNum' !important; 
428
429html.rtl .main-new-content .body .bold-img { 
430    float:left; 
431    margin-right:1.5em; 
432
433html.ltr .main-new-content .body .bold-img { 
434    float:right; 
435    margin-left:1.5em; 
436
437.main-new-content .body .bold-img { 
438  width: 25em; 
439  border-radius: 0.5em; 
440  //border: 2px solid #223a70; 
441
442.main-new-content .body img:not(.bold-img) { 
443  margin: 1em 0; 
444  border-radius: 0.5em; 
445  max-width: 100%; 
446
447.main-new-content .body .parent-video { 
448    text-align:center; 
449
450.main-new-content .body .parent-video video { 
451    max-width:100%; 
452    margin: 1em 0; 
453
454 
455.main-new-content .body .slide-show { 
456    max-width:100%; 
457    margin: 1em 0; 
458
459.main-new-content .body .slide-show .secondary-slider { 
460    margin-top: 0.7em; 
461
462.main-new-content .body .slide-show .secondary-slider .splide__slide  { 
463    border-radius: 0.5em; 
464    border: 2px solid #FFF; 
465
466.main-new-content .body .slide-show .secondary-slider .splide__slide.is-active { 
467    border-color: #1b51b0; 
468
469.main-new-content .body .slide-show .secondary-slider .splide__slide img  { 
470    width:100%; 
471    height:3.75em; 
472    object-fit: cover; 
473
474.main-new-content .body .slide-show .primary-slider .splide__track  { 
475    padding: 2px 0; 
476
477.main-new-content .body .slide-show .primary-slider .splide__track .splide__slide  { 
478    border-radius: 0.5em; 
479    border: 2px solid #1b51b0; 
480
481.main-new-content .body .slide-show .secondary-slider .splide__arrow { 
482    background: transparent; 
483    opacity: 1; 
484
485.main-new-content .body .slide-show .secondary-slider .splide__arrow > span { 
486    font-size: 1.7em; 
487
488 
489@media print { 
490    .footer, 
491    .razi-navbar, 
492    .main-new-content .header .tools, 
493    .dispaly-page-news, 
494    .parent-portlet-page-comments, 
495    .parent-breadcrumb { 
496        display: none !important; 
497
498
499@media only screen and (max-width: 768px) { 
500  .main-new-content { 
501    font-size: 14px; 
502
503  .main-new-content .header { 
504    flex-direction: row; 
505    flex-wrap: wrap; 
506
507  .main-new-content .header > img { 
508    order: 1; 
509    width: 100%; 
510    margin-top: 1.8em; 
511
512  .main-new-content .header > h3 { 
513    order: 4; 
514    margin-top: 0.7em; 
515
516  .main-new-content .header .date--view { 
517    order: 1; 
518    flex-grow: 1; 
519    margin-top: 1.6em; 
520    font-size: 16px; 
521
522  /*html.ltr .main-new-content .header .date--view { 
523    margin-right: 5em; 
524
525  html.rtl .main-new-content .header .date--view { 
526    margin-left: 5em; 
527  }*/ 
528  .main-new-content .header .tools { 
529    order: 2; 
530    margin-top: 1.6em; 
531
532  .main-new-content .header .tools .razi-icon-print { 
533    display: none; 
534
535  .main-new-content .header .lead { 
536    width: 100%; 
537    order: 3; 
538
539
540@media only screen and (max-width: 576px) { 
541  .main-new-content { 
542    font-size: 13px; 
543
544  .main-new-content .header > img { 
545    min-height: 176px; 
546
547  .main-new-content .header .date--view { 
548    font-size: 14px; 
549    /*margin-right: 2em;*/ 
550
551 
552  .main-new-content .body p { 
553    margin: 1em 0; 
554    font-size: 1em; 
555
556  .main-new-content .body img { 
557    width: 100%; 
558
559
560</style>