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