Новости
An error occurred while processing the template.
Java method "com.sun.proxy.$Proxy198.getFileEntryByUuidAndGroupId(String, long)" threw an exception when invoked on com.sun.proxy.$Proxy198 object "com.liferay.portlet.documentlibrary.service.impl.DLFileEntryServiceImpl@65183705"; see cause exception in the Java stack trace. ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign rootFileEntry = dlFileEntrySe... [in template "35723#35751#13737242" at line 104, column 9] ----
1<#assign jsonFactoryUtil = serviceLocator.findService("com.liferay.portal.kernel.json.JSONFactory")>
2<#assign AssetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
3<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
4<#assign jsonValidator = serviceLocator.findService("ru.pragmatic.liferay.json.validator.api.JsonValidator")>
5
6
7<#assign articleCreateDate = .vars["reserved-article-create-date"].data />
8<#assign articleModifiedDate = .vars["reserved-article-modified-date"].data />
9<#assign articleDisplayDate = .vars["reserved-article-display-date"].data />
10
11
12<#assign views = 1 />
13<#attempt>
14 <#assign articleId = .vars["reserved-article-id"].data />
15 <#assign article = JournalArticleLocalService.getArticle(groupId ,articleId) />
16 <#assign entry = AssetEntryLocalService.getEntry("com.liferay.journal.model.JournalArticle", article.getResourcePrimKey()) />
17 <#assign views = entry.getViewCount()/>
18<#recover>
19 <#assign views = 1 />
20</#recover>
21
22<div class="page_dates_news">
23 <p>Материал опубликован: <span>${articleDisplayDate}</span></p>
24 <p>Обновлён: <span>${articleModifiedDate}</span></p>
25 <p>Просмотров: <span>${views}</span></p>
26</div>
27
28
29<#assign adaptiveMediaId = 'Preview-1000x0'/>
30<#if image??>
31 <#if image.getSiblings()?has_content>
32 <#assign images = image.getSiblings()>
33 <#if images?size gt 1 || images[0].getData()?has_content>
34 <#-- вывод галереи реализован ниже контента-->
35 <#else>
36 <#-- вывод одной картинки -->
37 <#assign thumbnailUrl = ""/>
38 <#if .vars['reserved-article-small-image-url']??>
39 <#assign thumbnailUrl = .vars['reserved-article-small-image-url'].data/>
40 </#if>
41 </#if>
42 </#if>
43</#if>
44
45<#assign thumbnailUrl = ""/>
46<#if bigPreview?? && bigPreview.getData()?? && bigPreview.getData() != "">
47 <#assign thumbnailUrl = bigPreview.getData()/>
48<#elseif .vars?? && .vars['reserved-article-small-image-url']??>
49 <#assign thumbnailUrl = .vars['reserved-article-small-image-url'].data/>
50</#if>
51
52<#if content??>
53 <div>
54 ${content.getData()}
55 </div>
56</#if>
57
58<#-- hide heading on news pages -->
59<#assign counter = 0>
60
61<#assign portletnamespace = portletDisplay.getNamespace()>
62<#assign video = 'video' + portletnamespace>
63<#assign hiddenInputId = portletnamespace>
64<#assign videoCounter = portletnamespace + 'videoCounter'>
65<#assign videoKalturaN = portletnamespace + 'videoKalturaN'>
66<#assign posterKalturaN = portletnamespace + 'posterKalturaN'>
67<#assign defaultFullPosterId = portletnamespace + 'defaultFullPosterId'>
68<#assign carousel = portletnamespace + 'carousel'>
69
70<#-- sss -->
71<#assign dlFileEntryService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryService")>
72<#assign dlAppService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLAppService")>
73<#assign dlURLHelper = serviceLocator.findService("com.liferay.document.library.util.DLURLHelper")>
74<#-- sss -->
75
76<#assign isPrint = getterUtil.getBoolean(renderRequest.getAttribute('view.jsp-print'))?string('true', 'false')>
77
78
79<#if isPrint == "false">
80 <#if videoLink??>
81 <#if videoLink.getSiblings()?has_content>
82 <#list videoLink.getSiblings() as curVideoLink>
83 <#assign videoLinkTextLength = curVideoLink.getData()?length>
84 <#if videoLinkTextLength gt 0>
85 <#assign videoInfo = jsonFactoryUtil.looseDeserialize(curVideoLink.getData)/>
86
87 <video class="video-js vjs-16-9" poster="${defaultFullPosterURL}" preload="metadata" controls width="100%" height="354" data-source="${videoInfo[0]}">
88 <source src="${videoInfo[3]}" type="video/${videoInfo[2]}">
89 <source src="${videoInfo[5]}" type="video/${videoInfo[4]}">
90 <source src="${videoInfo[7]}" type="video/${videoInfo[6]}">
91 </video>
92 </#if>
93 </#list>
94 </#if>
95 </#if>
96</#if>
97
98<#if album??>
99 <#if album.getData()?has_content>
100 <#assign rootFileUrl = album.getData()>
101 <#assign groupId = rootFileUrl?keep_after("/")?keep_after("/")?keep_before("/")?number>
102 <#assign uuid = rootFileUrl?keep_after_last("/")?keep_before_last("?")>
103
104 <#assign rootFileEntry = dlFileEntryService.getFileEntryByUuidAndGroupId(uuid, groupId)>
105 <#assign albumFolder = rootFileEntry.getFolder()>
106 <#assign albumFolderId = albumFolder.getFolderId()>
107 <#assign albumEntries = dlAppService.getFileEntries(groupId, albumFolderId)>
108
109
110 <#if isPrint == "false">
111 <div style="clear:both"></div>
112 <div class="avo_u_novost_media">
113 <div class="js-universal-slider-hor" id="lalala2" style=""
114 data-slick='{"slidesToShow": 1,
115 "slidesToScroll": 1,
116 "autoplay": true,
117 "dots": true,
118 "adaptiveHeight": true
119 }'>
120 <#list albumEntries as albumEntry>
121 <#assign alt = albumEntry.getDescription()>
122 <#assign fileEntryId = albumEntry.getFileEntryId()>
123 <#assign previewUrl = dlURLHelper.getImagePreviewURL(albumEntry, themeDisplay)>
124 <#assign downloadUrl = dlURLHelper.getPreviewURL(albumEntry, albumEntry.getFileVersion(), themeDisplay, "")>
125 <div class="item">
126 <a href="${downloadUrl}" class="item-img-click">
127 <img src="${downloadUrl}" alt="..." />
128 </a>
129 </div>
130 </#list>
131 </div>
132 </div>
133 <#assign imageViewerSelector = '#lalala2 .item-img-click'>
134 <@imageViewer imageViewerSelector />
135
136 <#else>
137 <#list albumEntries as albumEntry>
138 <#assign alt = albumEntry.getDescription()>
139 <#assign fileEntryId = albumEntry.getFileEntryId()>
140 <#assign previewUrl = dlURLHelper.getImagePreviewURL(albumEntry, themeDisplay)>
141 <#assign downloadUrl = dlURLHelper.getPreviewURL(albumEntry, albumEntry.getFileVersion(), themeDisplay, "")>
142 <p><img src="${previewUrl}" data-large="${downloadUrl}" data-fileentryid="${fileEntryId}" alt="${alt}" /></p>
143 </#list>
144 </#if>
145 <#else>
146 <#-- галерею воткнули сюда -->
147 <#if image??>
148 <#if image.getSiblings()?has_content>
149 <#assign images = image.getSiblings()>
150 <#if images?size gt 1 || images[0].getData()?has_content>
151 <#if isPrint == "false">
152 <div style="clear:both"></div>
153 <div class="avo_u_novost_media">
154 <div class="js-universal-slider-hor" id="lalala" style=""
155 data-slick='{"slidesToShow": 1,
156 "slidesToScroll": 1,
157 "autoplay": true,
158 "dots": true,
159 "adaptiveHeight": true
160 }'>
161 <#list image.getSiblings() as curImage>
162 <#assign imageUrl = curImage.getData()/>
163 <#attempt>
164
165 <#if jsonValidator.isValid(curImage['data'])>
166 <#assign json = jsonFactoryUtil.looseDeserialize(curImage['data'])/>
167 <#assign imageUrl = '/o/adaptive-media/image/' + json.classPK + '/' + adaptiveMediaId + '/' + json.title />
168 <div class="item">
169 <a href="${imageUrl}" class="item-img-click">
170 <img src="${imageUrl}" alt="..." />
171 </a>
172 </div>
173 </#if>
174 <#recover>
175 </#attempt>
176
177 </#list>
178 </div>
179 </div>
180 <#else>
181 <#list image.getSiblings() as curImage>
182 <p><img src="${curImage.getData()}" data-large="${curImage.getData()}" /></p>
183 </#list>
184 </#if>
185 <#else>
186 <#-- вывод одной картинки -->
187 <#if thumbnailUrl?? && thumbnailUrl?has_content >
188 <div style="clear:both"></div>
189 <div class="avo_u_novost_media">
190 <div class="js-universal-slider-hor" id="lalala" style=""
191 data-slick='{"slidesToShow": 1,
192 "slidesToScroll": 1,
193 "autoplay": true,
194 "dots": true,
195 "adaptiveHeight": true
196 }'>
197 <div class="item">
198 <a href="${thumbnailUrl}" class="item-img-click">
199 <img src="${thumbnailUrl}" data-large="${thumbnailUrl}" />
200 </a>
201 </div>
202 </div>
203 </div>
204 </#if>
205 </#if>
206 </#if>
207 <#assign imageViewerSelector = '#lalala .item-img-click'>
208 <@imageViewer imageViewerSelector />
209 </#if>
210 <#-- конец галереи: галерею воткнули сюда -->
211 </#if>
212</#if>
213
214<#macro imageViewer selector>
215 <script>
216 YUI().use(
217 'aui-image-viewer',
218 function(Y) {
219 let imageViewer = new Y.ImageViewer(
220 {
221 caption: 'Фотогалерея',
222 captionFromTitle: true,
223 centered: true,
224 imageAnim: {
225 duration: 1,
226 easing: 'easeIn'
227 },
228 intervalTime: 2,
229 links: '${selector}',
230 playing: false,
231 preloadAllImages: false,
232 preloadNeighborImages: false,
233 showInfo: true,
234 showPlayer: true,
235 zIndex: 223
236 }
237 )
238 imageViewer.render();
239 }
240 );
241 </script>
242</#macro>
243
244
245<style>
246.js-universal-slider-hor .slick-slide img{
247 margin-left: auto;
248 margin-right: auto;
249}
250</style>