Странички воспитателей
Во время обработки запрошенного шаблона произошла ошибка...
The following has evaluated to null or missing: ==> bigPfolderSelectorreview [in template "222922#222957#12977083" at line 77, column 44] ---- 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: #elseif folderSelector.getData()?? &&... [in template "222922#222957#12977083" at line 77, column 5] ----
1<#assign adaptiveMediaId = 'Thumbnail-300x300'>
2
3<#assign dlAppService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLAppService")>
4<#assign dlURLHelper = serviceLocator.findService("com.liferay.document.library.util.DLURLHelper")>
5<#assign DocumentConversionUtil = staticUtil["com.liferay.document.library.kernel.document.conversion.DocumentConversionUtil"]>
6<#assign JsonFactoryUtil = staticUtil["com.liferay.portal.kernel.json.JSONFactoryUtil"]>
7
8<div class="card-teacher">
9 <div class="card-teacher__row">
10 <div class="card-teacher__left">
11
12 <#if bigPreview.getData()?? && bigPreview.getData() != "">
13 <img alt="${bigPreview.getAttribute("alt")}" data-fileentryid="${bigPreview.getAttribute("fileEntryId")}" src="${bigPreview.getData()}" />
14 </#if>
15
16 <div class="card-teacher__social">
17 <#if vk.getData()?? && vk.getData() != "">
18 <a class="card-teacher__vk" href="${vk.getData()}" title="Вконтакте" target="_blank">
19 <@icon_vk />
20 </a>
21 </#if>
22
23 <#if whatsapp.getData()?? && whatsapp.getData() != "">
24 <a class="card-teacher__whatsapp" href="${whatsapp.getData()}" title="Whatsapp" target="_blank">
25 <@icon_whatsapp />
26 </a>
27 </#if>
28
29 <#if odnoklas.getData()?? && odnoklas.getData() != "">
30 <a class="card-teacher__odnoklas" href="${odnoklas.getData()}" title="Одноклассники" target="_blank">
31 <@icon_odnoklas />
32 </a>
33 </#if>
34
35 <#if viber.getData()?? && viber.getData() != "">
36 <a class="card-teacher__viber" href="${viber.getData()}" title="Viber" target="_blank">
37 <@icon_viber />
38 </a>
39 </#if>
40
41 <#if telegram.getData()?? && telegram.getData() != "">
42 <a class="card-teacher__telegram" href="${telegram.getData()}" title="Telegram" target="_blank">
43 <@icon_telegram />
44 </a>
45 </#if>
46
47 <#if websiteUrl??>
48 <#if websiteUrl.getSiblings()?has_content>
49 <#list websiteUrl.getSiblings() as cur_websiteUrl>
50 <a class="card-teacher__telegram" href="${cur_websiteUrl.getData()}" title="Персональный сайт" target="_blank">
51 <@icon_website />
52 </a>
53
54 </#list>
55 </#if>
56 </#if>
57 </div>
58 </div>
59 <div class="card-teacher__right">
60 <p class="card-teacher__line"><b>ФИО: </b>${fio.getData()}</p>
61 <p class="card-teacher__line"><b>Должность: </b> ${position.getData()}</p>
62 <p class="card-teacher__line"><b>Стаж работы: </b>${workExperience.getData()}</p>
63 <div class="card-teacher__about">
64 <h5>О себе:</h5>
65 ${about.getData()}
66 </div>
67 </div>
68
69 </div>
70
71 <#if bigPreview.getData()?? && bigPreview.getData() != "">
72 <#assign bigPreviewUrl = bigPreview.getData()>
73 <#assign bigPreviewUuid = bigPreviewUrl?keep_after_last("/")?keep_before_last("?")>
74 <#assign bigPreviewGroupId = bigPreviewUrl?keep_after("/")?keep_after("/")?keep_before("/")?number>
75 <#assign bigPreviewFileEntry = dlAppService.getFileEntryByUuidAndGroupId(bigPreviewUuid, bigPreviewGroupId)>
76 <#assign personalFolder = bigPreviewFileEntry.getFolder()>
77 <#elseif folderSelector.getData()?? && bigPfolderSelectorreview.getData() != "">
78 <#assign folderSelectorUrl = folderSelector.getData()>
79 <#assign folderSelectorUuid = folderSelectorUrl?keep_after_last("/")?keep_before_last("?")>
80 <#assign folderSelectorGroupId = folderSelectorUrl?keep_after("/")?keep_after("/")?keep_before("/")?number>
81 <#assign folderSelectorFileEntry = dlAppService.getFileEntryByUuidAndGroupId(folderSelectorUuid, folderSelectorGroupId)>
82 <#assign personalFolder = bigPreviewFileEntry.getFolder()>
83 </#if>
84
85 <#if personalFolder?has_content >
86 <#assign contentFolders = dlAppService.getFolders(personalFolder.getGroupId(), personalFolder.getFolderId())>
87 <div class="card-teacher__bottom">
88
89 <#if youtubeUrl??>
90 <#if youtubeUrl.getSiblings()?has_content>
91 <div class="card-teacher__videos">
92 <#list youtubeUrl.getSiblings() as cur_youtubeUrl>
93 <#if youtubeUrl.getData()?? && youtubeUrl.getData() != "">
94 <div class="card-teacher__video">
95 <iframe width="100%" height="100%" src="${cur_youtubeUrl.getData()}" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen>
96 </iframe>
97 </div>
98 </#if>
99 </#list>
100 </div>
101 </#if>
102 </#if>
103
104
105 <#list contentFolders?filter(folder -> folder.getName()?starts_with('[D'))?sort_by('name') as documentsFolder >
106 <#attempt>
107 <#assign documentFolders = dlAppService.getFolders(documentsFolder.getGroupId(), documentsFolder.getFolderId()) >
108 <#recover>
109 <#assign documentFolders = [] >
110 </#attempt>
111 <#if documentFolders?size gt 0>
112 <div class="card-teacher__bottom-t">
113 <h3 class="card-teacher-title">${documentsFolder.getName()?keep_after(']')?trim}</h3>
114 <#list documentFolders as documentFolder>
115 <#assign documentEntries = dlAppService.getFileEntries(documentFolder.getGroupId(), documentFolder.getFolderId())>
116
117 <#if documentEntries?size gt 0>
118 <div class="card-teacher__documents accordion">
119 <div class="item">
120 <header class="portlet-header">
121 <h5>${documentFolder.getName()}</h5>
122 </header>
123 <ul class="text">
124 <#list documentEntries as documentEntry>
125 <#assign documentExtension = documentEntry.getExtension()>
126 <#assign downloadUrl = dlURLHelper.getDownloadURL(documentEntry, documentEntry.getFileVersion(), themeDisplay, '')>
127 <#assign isDocumentConvertible = DocumentConversionUtil.isEnabled() && (DocumentConversionUtil .getConversions(documentExtension)?seq_contains ('pdf' ))/>
128
129 <#assign target = ''/>
130 <#if isDocumentConvertible>
131 <#assign downloadUrl = downloadUrl?replace('&download=true', '')/>
132 <#assign downloadUrl = downloadUrl + '&targetExtension=pdf'/>
133 <#assign target = 'target="_blank"'/>
134 </#if>
135 <#if documentExtension == 'pdf'>
136 <#assign downloadUrl = downloadUrl?replace('&download=true', '')/>
137 <#assign target = 'target="_blank"'/>
138 </#if>
139
140 <#if documentEntry.getDescription()?has_content>
141 <#assign entityTitle = documentEntry.getDescription()/>
142 <#else>
143 <#assign entityTitle = documentEntry.getTitle()/>
144 </#if>
145
146 <li><a href="${downloadUrl}" ${target}>${entityTitle}</a></li>
147 </#list>
148 </ul>
149 </div>
150 </div>
151 </#if>
152 </#list>
153 </div>
154 </#if>
155 </#list>
156
157 <#list contentFolders?filter(folder -> folder.getName()?starts_with('[G'))?sort_by('name') as galleriesFolder >
158 <#attempt>
159 <#assign galleryFolders = dlAppService.getFolders(galleriesFolder.getGroupId(), galleriesFolder.getFolderId()) >
160 <#recover>
161 <#assign galleryFolders = [] >
162 </#attempt>
163 <#if galleryFolders?size gt 0>
164 <div class="card-teacher__bottom-b">
165 <h3 class="card-teacher-title">${galleriesFolder.getName()?keep_after(']')?trim}</h3>
166
167 <#list galleryFolders as galleryFolder>
168 <#assign albumEntries = dlAppService.getFileEntries(galleryFolder.getGroupId(), galleryFolder.getFolderId())>
169
170 <#if albumEntries?size gt 0>
171 <#assign imagesGalleryId = 'card-teacher_gallery' + randomNamespace + galleryFolder.getFolderId()>
172 <div class="card-teacher__gallery accordion">
173 <div class="item">
174 <header class="portlet-header">
175 <h5 class="card-teacher__gallery-title">${galleryFolder.getName()}</h5>
176 </header>
177 <div class="text" id="${imagesGalleryId}">
178 <div class="card-teacher__images">
179 <#list albumEntries as albumEntry>
180 <#assign alt = albumEntry.getDescription()>
181 <#assign fileEntryId = albumEntry.getFileEntryId()>
182 <#assign previewUrl = dlURLHelper.getThumbnailSrc(albumEntry, themeDisplay)>
183 <#assign downloadUrl = dlURLHelper.getPreviewURL(albumEntry, albumEntry.getFileVersion(), themeDisplay, "")>
184 <a href="${downloadUrl}" class="card-teacher__image">
185 <img src="${previewUrl}" alt="..." />
186 </a>
187 </#list>
188 </div>
189 </div>
190 </div>
191 <#assign imageViewerSelector = '#' + imagesGalleryId + ' .card-teacher__image'>
192 <@imageViewer imageViewerSelector />
193 </div>
194 </#if>
195 </#list>
196 </div>
197 </#if>
198 </#list>
199 </div>
200 </#if>
201</div>
202
203
204
205<style>
206 .card-teacher__row {
207 display: flex;
208 gap: 30px;
209 }
210 .card-teacher__row:first-child {
211 margin-bottom: 30px;
212 }
213 .card-teacher__left {
214 flex: 0 0 auto;
215 }
216 .card-teacher__left img{
217 overflow: hidden;
218 max-width: 300px !important;
219 }
220 .card-teacher__bottom-t {
221 margin-bottom: 50px;
222 }
223 .card-teacher__bottom .card-teacher__bottom-b:not(:last-child) {
224 margin-bottom: 50px;
225 }
226 .card-teacher__gallery:not(:last-child) {
227 margin-bottom: 15px;
228 }
229 .card-teacher__gallery-title {
230 margin-bottom: 10px;
231 }
232 .card-teacher__images {
233 display: grid;
234 grid-template-columns: repeat(4, 1fr);
235 grid-gap: 20px;
236 align-items: center;
237 }
238 .card-teacher__image img{
239 object-fit: contain;
240 max-height: 300px;
241 }
242 .card-teacher__image {
243 justify-self: center;
244 }
245 .card-teacher__documents.accordion {
246 margin-bottom: 15px;
247 }
248 .card-teacher-title {
249 padding: 0 0 10px 0;
250 }
251 .card-teacher__social {
252 display: flex;
253 gap: 10px;
254 margin-top: 15px;
255 flex-wrap: wrap;
256 max-width: 230px;
257 }
258 .card-teacher__social a {
259 display: block;
260 }
261 .card-teacher__social a svg {
262 width: 30px;
263 height: 30px;
264 }
265 .carousel-control.image-viewer-base-control {
266 top: 0;
267 bottom: 0;
268 width: 15%;
269 opacity: 0.5;
270 }
271 .carousel-control.image-viewer-base-control-left {
272 left: 0;
273 }
274 .carousel-control.image-viewer-base-control-right {
275 right: 0;
276 }
277 .carousel-control.image-viewer-base-control .glyphicon {
278 width: 20px;
279 height: 20px;
280 display: block;
281 position: absolute;
282 top: 50%;
283 transform: translate(0, -50%);
284 }
285 .carousel-control.image-viewer-base-control .lexicon-icon {
286 position: absolute;
287 top: 50%;
288 transform: translate(0, -50%);
289 }
290 .carousel-control.image-viewer-base-control .glyphicon-chevron-left {
291 left: 30px;
292 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='white' viewBox='0 0 512 512'%3E%3Cpath class='lexicon-icon-outline' d='M114.106 254.607c0.22 6.936 2.972 13.811 8.272 19.11l227.222 227.221c11.026 11.058 28.94 11.058 39.999 0 11.058-11.026 11.058-28.94 0-39.999l-206.333-206.333c0 0 206.333-206.333 206.333-206.333 11.058-11.059 11.058-28.973 0-39.999-11.058-11.059-28.973-11.059-39.999 0l-227.221 227.221c-5.3 5.3-8.052 12.174-8.273 19.111z'%3E%3C/path%3E%3C/svg%3E");
293 }
294 .carousel-control.image-viewer-base-control .glyphicon-chevron-right {
295 right: 30px;
296 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' fill='white'%3E%3Cpath class='lexicon-icon-outline' d='M396.394 255.607c-0.22-6.936-2.973-13.81-8.272-19.111l-227.221-227.221c-11.026-11.059-28.94-11.059-39.999 0-11.058 11.026-11.058 28.941 0 39.999l206.333 206.333c0 0-206.333 206.333-206.333 206.333-11.058 11.058-11.058 28.973 0 39.999 11.059 11.059 28.972 11.059 39.999 0l227.221-227.221c5.3-5.3 8.053-12.175 8.272-19.111z'%3E%3C/path%3E%3C/svg%3E");
297 }
298 .carousel-control.image-viewer-base-control:hover {
299 opacity: 1;
300 }
301
302 .card-teacher__videos {
303 display: grid;
304 grid-template-columns: repeat(3, 1fr);
305 grid-gap: 15px;
306 margin-bottom: 30px;
307 }
308 .card-teacher__video {
309 height: 260px;
310 }
311
312 @media (max-width: 1199px){
313 .card-teacher__videos {
314 grid-template-columns: repeat(2, 1fr);
315 }
316 }
317 @media (max-width: 991px){
318 .card-teacher__images {
319 grid-template-columns: repeat(3, 1fr);
320 }
321 }
322 @media (max-width: 768px){
323 .card-teacher__row {
324 display: block;
325
326 }
327 .card-teacher__images {
328 grid-template-columns: repeat(2, 1fr);
329 }
330 .card-teacher__videos {
331 grid-template-columns: 1fr;
332 }
333 }
334
335
336</style>
337
338
339<#macro icon_vk>
340 <svg width="48" height="48" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg">
341 <path d="M0 23.04C0 12.1788 0 6.74826 3.37413 3.37413C6.74826 0 12.1788 0 23.04 0H24.96C35.8212 0 41.2517 0 44.6259 3.37413C48 6.74826 48 12.1788 48 23.04V24.96C48 35.8212 48 41.2517 44.6259 44.6259C41.2517 48 35.8212 48 24.96 48H23.04C12.1788 48 6.74826 48 3.37413 44.6259C0 41.2517 0 35.8212 0 24.96V23.04Z" fill="#0077FF"/>
342 <path d="M25.54 34.5801C14.6 34.5801 8.3601 27.0801 8.1001 14.6001H13.5801C13.7601 23.7601 17.8 27.6401 21 28.4401V14.6001H26.1602V22.5001C29.3202 22.1601 32.6398 18.5601 33.7598 14.6001H38.9199C38.0599 19.4801 34.4599 23.0801 31.8999 24.5601C34.4599 25.7601 38.5601 28.9001 40.1201 34.5801H34.4399C33.2199 30.7801 30.1802 27.8401 26.1602 27.4401V34.5801H25.54Z" fill="white"/>
343 </svg>
344</#macro>
345
346<#macro icon_whatsapp>
347 <svg xmlns="http://www.w3.org/2000/svg" aria-label="WhatsApp" role="img" viewBox="0 0 512 512">
348 <rect width="512" height="512" rx="15%" fill="#25d366"/>
349 <path fill="#25d366" stroke="#fff" stroke-width="26" d="M123 393l14-65a138 138 0 1150 47z"/>
350 <path fill="#fff" d="M308 273c-3-2-6-3-9 1l-12 16c-3 2-5 3-9 1-15-8-36-17-54-47-1-4 1-6 3-8l9-14c2-2 1-4 0-6l-12-29c-3-8-6-7-9-7h-8c-2 0-6 1-10 5-22 22-13 53 3 73 3 4 23 40 66 59 32 14 39 12 48 10 11-1 22-10 27-19 1-3 6-16 2-18"/>
351 </svg>
352</#macro>
353
354<#macro icon_odnoklas>
355 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512">
356 <path d="M184.2 177.1c0-22.1 17.9-40 39.8-40s39.8 17.9 39.8 40c0 22-17.9 39.8-39.8 39.8s-39.8-17.9-39.8-39.8zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-305.1 97.1c0 44.6 36.4 80.9 81.1 80.9s81.1-36.2 81.1-80.9c0-44.8-36.4-81.1-81.1-81.1s-81.1 36.2-81.1 81.1zm174.5 90.7c-4.6-9.1-17.3-16.8-34.1-3.6 0 0-22.7 18-59.3 18s-59.3-18-59.3-18c-16.8-13.2-29.5-5.5-34.1 3.6-7.9 16.1 1.1 23.7 21.4 37 17.3 11.1 41.2 15.2 56.6 16.8l-12.9 12.9c-18.2 18-35.5 35.5-47.7 47.7-17.6 17.6 10.7 45.8 28.4 28.6l47.7-47.9c18.2 18.2 35.7 35.7 47.7 47.9 17.6 17.2 46-10.7 28.6-28.6l-47.7-47.7-13-12.9c15.5-1.6 39.1-5.9 56.2-16.8 20.4-13.3 29.3-21 21.5-37z" fill=" #ED760E"/>
357 </svg>
358</#macro>
359
360<#macro icon_viber>
361 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" width="48px" height="48px">
362 <path fill="#fff" d="M24,5C21.361,5,13.33,5,8.89,9.054C6.246,11.688,5,15.494,5,21v3c0,5.506,1.246,9.312,3.921,11.976 c1.332,1.215,3.148,2.186,5.368,2.857L15,39.047v5.328C15,45,15.181,45,15.241,45c0.123,0,0.32-0.039,0.694-0.371 c0.09-0.089,0.75-0.803,3.96-4.399l0.324-0.363l0.485,0.031C21.779,39.965,22.888,40,24,40c2.639,0,10.67,0,15.11-4.055 C41.753,33.311,43,29.505,43,24v-3c0-5.506-1.246-9.312-3.921-11.976C34.67,5,26.639,5,24,5z"/><path fill="#7e57c2" d="M33.451 28.854c-1.111-.936-1.624-1.219-3.158-2.14C29.654 26.331 28.68 26 28.169 26c-.349 0-.767.267-1.023.523C26.49 27.179 26.275 28 25.125 28c-1.125 0-3.09-1.145-4.5-2.625C19.145 23.965 18 22 18 20.875c0-1.15.806-1.38 1.462-2.037C19.718 18.583 20 18.165 20 17.816c0-.511-.331-1.47-.714-2.109-.921-1.535-1.203-2.048-2.14-3.158-.317-.376-.678-.548-1.056-.549-.639-.001-1.478.316-2.046.739-.854.637-1.747 1.504-1.986 2.584-.032.147-.051.295-.057.443-.046 1.125.396 2.267.873 3.234 1.123 2.279 2.609 4.485 4.226 6.455.517.63 1.08 1.216 1.663 1.782.566.582 1.152 1.145 1.782 1.663 1.97 1.617 4.176 3.103 6.455 4.226.958.472 2.086.906 3.2.874.159-.005.318-.023.477-.058 1.08-.238 1.947-1.132 2.584-1.986.423-.568.74-1.406.739-2.046C33.999 29.532 33.827 29.171 33.451 28.854zM34 24c-.552 0-1-.448-1-1v-1c0-4.962-4.038-9-9-9-.552 0-1-.448-1-1s.448-1 1-1c6.065 0 11 4.935 11 11v1C35 23.552 34.552 24 34 24zM27.858 22c-.444 0-.85-.298-.967-.748-.274-1.051-1.094-1.872-2.141-2.142-.535-.139-.856-.684-.718-1.219.138-.534.682-.855 1.219-.718 1.748.453 3.118 1.822 3.575 3.574.139.535-.181 1.08-.715 1.22C28.026 21.989 27.941 22 27.858 22z"/><path fill="#7e57c2" d="M31,23c-0.552,0-1-0.448-1-1c0-3.188-2.494-5.818-5.678-5.986c-0.552-0.029-0.975-0.5-0.946-1.051 c0.029-0.552,0.508-0.976,1.051-0.946C28.674,14.241,32,17.748,32,22C32,22.552,31.552,23,31,23z"/><path fill="#7e57c2" d="M24,4C19.5,4,12.488,4.414,8.216,8.316C5.196,11.323,4,15.541,4,21c0,0.452-0.002,0.956,0.002,1.5 C3.998,23.043,4,23.547,4,23.999c0,5.459,1.196,9.677,4.216,12.684c1.626,1.485,3.654,2.462,5.784,3.106v4.586 C14,45.971,15.049,46,15.241,46h0.009c0.494-0.002,0.921-0.244,1.349-0.624c0.161-0.143,2.02-2.215,4.042-4.481 C21.845,40.972,22.989,41,23.999,41c0,0,0,0,0,0s0,0,0,0c4.5,0,11.511-0.415,15.784-4.317c3.019-3.006,4.216-7.225,4.216-12.684 c0-0.452,0.002-0.956-0.002-1.5c0.004-0.544,0.002-1.047,0.002-1.5c0-5.459-1.196-9.677-4.216-12.684C35.511,4.414,28.5,4,24,4z M41,23.651l0,0.348c0,4.906-1.045,8.249-3.286,10.512C33.832,38,26.437,38,23.999,38c-0.742,0-1.946-0.001-3.367-0.1 C20.237,38.344,16,43.083,16,43.083V37.22c-2.104-0.505-4.183-1.333-5.714-2.708C8.045,32.248,7,28.905,7,23.999l0-0.348 c0-0.351-0.001-0.73,0.002-1.173C6.999,22.078,6.999,21.7,7,21.348L7,21c0-4.906,1.045-8.249,3.286-10.512 C14.167,6.999,21.563,6.999,24,6.999c2.437,0,9.832,0,13.713,3.489c2.242,2.263,3.286,5.606,3.286,10.512l0,0.348 c0,0.351,0.001,0.73-0.002,1.173C41,22.922,41,23.3,41,23.651z"/>
363 </svg>
364</#macro>
365
366<#macro icon_telegram>
367 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" width="48px" height="48px"><path fill="#29b6f6" d="M24 4A20 20 0 1 0 24 44A20 20 0 1 0 24 4Z"/><path fill="#fff" d="M33.95,15l-3.746,19.126c0,0-0.161,0.874-1.245,0.874c-0.576,0-0.873-0.274-0.873-0.274l-8.114-6.733 l-3.97-2.001l-5.095-1.355c0,0-0.907-0.262-0.907-1.012c0-0.625,0.933-0.923,0.933-0.923l21.316-8.468 c-0.001-0.001,0.651-0.235,1.126-0.234C33.667,14,34,14.125,34,14.5C34,14.75,33.95,15,33.95,15z"/><path fill="#b0bec5" d="M23,30.505l-3.426,3.374c0,0-0.149,0.115-0.348,0.12c-0.069,0.002-0.143-0.009-0.219-0.043 l0.964-5.965L23,30.505z"/><path fill="#cfd8dc" d="M29.897,18.196c-0.169-0.22-0.481-0.26-0.701-0.093L16,26c0,0,2.106,5.892,2.427,6.912 c0.322,1.021,0.58,1.045,0.58,1.045l0.964-5.965l9.832-9.096C30.023,18.729,30.064,18.416,29.897,18.196z"/>
368 </svg>
369</#macro>
370
371<#macro icon_website>
372 <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><g><rect fill="none" height="24" width="24"/><rect fill="none" height="24" width="24"/><rect fill="none" height="24" width="24"/></g><g><g/><path d="M20,4H4C2.9,4,2.01,4.9,2.01,6L2,18c0,1.1,0.9,2,2,2h16c1.1,0,2-0.9,2-2V6C22,4.9,21.1,4,20,4z M4,9h10.5v3.5H4V9z M4,14.5 h10.5V18L4,18V14.5z M20,18l-3.5,0V9H20V18z"/></g>
373 </svg>
374</#macro>
375
376<#macro imageViewer selector>
377 <script>
378 YUI().use(
379 'aui-image-viewer',
380 function(Y) {
381 let imageViewer = new Y.ImageViewer(
382 {
383 caption: 'Фотогалерея',
384 captionFromTitle: true,
385 centered: true,
386 imageAnim: {
387 duration: 1,
388 easing: 'easeIn'
389 },
390 intervalTime: 2,
391 links: '${selector}',
392 playing: false,
393 // controlNext: '<span>1212</span>',
394 // controlPrevious: ,
395 preloadAllImages: false,
396 preloadNeighborImages: false,
397 showInfo: true,
398 showPlayer: true,
399 zIndex: 223
400 }
401 )
402
403
404 imageViewer.render();
405 }
406 );
407 </script>
408</#macro>