Search
Hiba jelentkezett a sablon feldolgozása során.
For "#list" list source: Expected a sequence or collection, but this has evaluated to a string (wrapper: f.t.SimpleScalar):
==> productType [in template "20099#20125#4886299" at line 316, column 32]
----
FTL stack trace ("~" means nesting-related):
- Failed at: #list productType as p [in template "20099#20125#4886299" at line 316, column 25]
----
1<#--
2Widget templates can be used to modify the look of a
3specific application.
4
5Please use the left panel to quickly add commonly used variables.
6Autocomplete is also available and can be invoked by typing "${".
7-->
8
9<style>
10.tooltip.bs-tooltip-bottom.fade{
11 line-height:2px;
12}
13.card, .card-horizontal {
14 box-shadow: 1px 1px 3px -1px rgb(0 0 0 / 60%);
15}
16.makeFavoriteSelected .glyphicon{
17 color:#0058DD !important
18}
19.makeFavorite:hover .glyphicon{
20 color:#0058DD !important
21}
22.cardBorder{
23 border:0px;
24 border-bottom: 3px solid;
25 border-image: linear-gradient(to right,#53b351,#5bbfd6,#4c1570) 10;
26}
27.custom-control-input:checked ~ .custom-control-label::before {
28 background-color: #1848b6;
29 border-color: #1848b6;
30 box-shadow: none;
31 color: #fff;
32}
33.custom-control:only-child {
34 margin-bottom: 0;
35}
36.custom-control {
37 margin:10px 0;
38}
39.search-facet .facet-clear-btn {
40 background: transparent;
41 color: #1848b6;
42}
43.pagination-bar{
44 background:#fff;
45}
46.panel-body {
47 padding: 0rem 1.25rem;
48}
49.search-bar {
50 box-shadow: 1px 1px 2px -1px rgb(0 0 0 / 60%);
51}
52
53.search-bar .form-control, .search-bar .input-group-inset-item {
54 background-color: inherit;
55}
56.disabledClick {
57 pointer-events: none;
58}
59.confidential.docType {
60 position: absolute;
61 top: 38%;
62 z-index: 1;
63 font-weight: bold;
64 color: #ff000085;
65 font-size: 24px;
66 font-family: Arial;
67 transform: rotate(341deg);
68}
69
70.customers.docType {
71 position: absolute;
72 top: 38%;
73 text-align: center;
74 z-index: 1;
75 font-weight: bold;
76 color: #ff8f00a8;
77 font-size: 24px;
78 font-family: Arial;
79 transform: rotate(341deg);
80}
81 .modal-content{
82 box-shadow: none !important;
83 border: none ! important;
84 background: transparent !important;
85}
86.colseIcon{
87 position: absolute;
88 right: 5px;
89 color: #fff;
90 font-size: 42px;
91 font-weight: normal;
92 padding-bottom: 10px;
93}
94button.close:focus {
95 box-shadow: none !important;
96 outline: 0;
97}
98video#videoimg {
99 width: 100%;
100 min-height: 450px;
101}
102</style>
103<style>
104
105 .hoverAcctoin{
106 position: relative;
107 }
108
109 .hoverAcctoin:hover .hoverContainer{
110 opacity: 1;
111 visibility: visible;
112 }
113 .hoverContainer{
114 opacity: 0;
115 visibility: hidden;
116 transition: opacity 0.4s ease, visibility 0.4s ease;
117 }
118 .feature-list-tooltip{
119 list-style-type: none;
120 background: #f7f7f7;
121 margin: 0;
122 padding: 10px;
123 position: absolute;
124 bottom: -50%;
125 left: 0px;
126 box-sizing: -50%;
127 transform: translateY(-50%);
128 z-index: 1;
129 border: .1rem solid #dee5e7;
130 border-radius: .4rem;
131 -webkit-box-shadow: .1rem .1rem .3rem rgba(0, 0, 0, .1);
132 box-shadow: .1rem .1rem .3rem rgba(0, 0, 0, .1);
133 }
134 .feature-list-tooltip li{
135 padding:5px 0 ;
136 display: flex;
137 align-items: center;
138 }
139 .feature-list-tooltip li img{
140 width: 24px;
141 height: 24px;
142 margin-right: 10px;
143
144 }
145 .hoverContainer hr{
146 border: 0.5px solid #ccc;
147 }
148
149 </style>
150<script>
151 function toggleView(event) {
152 if(event == 'tileView'){
153 document.getElementById("tileView").style.display = 'block';
154 document.getElementById("listView").style.display = 'none';
155 document.getElementById("tileViewAction").childNodes[0].classList.add("text-primary");
156 document.getElementById("listViewAction").childNodes[0].classList.remove("text-primary");
157 }else{
158 document.getElementById("tileView").style.display = 'none';
159 document.getElementById("listView").style.display = 'block';
160 document.getElementById("tileViewAction").childNodes[0].classList.remove("text-primary");
161 document.getElementById("listViewAction").childNodes[0].classList.add("text-primary");
162 }
163 }
164
165 function getFavList(favClass, url){
166 isUrlInFav(url).then(data => {
167 console.log(url + ', exists in fav: ' + data);
168 if(data){
169 $('.'+favClass).addClass('makeFavoriteSelected');
170 }else{
171 $('.'+favClass).removeClass('makeFavoriteSelected');
172 }
173 });
174 }
175 function getFavorite(favClass, url){
176 $('.'+favClass).addClass('disabledClick');
177 if($('.'+favClass).hasClass("makeFavoriteSelected")){
178 removeFromFav(url).then(data => {
179 console.log('remove: ' + data);
180 $('.'+favClass).removeClass("makeFavoriteSelected");
181 $('.'+favClass).removeClass("disabledClick");
182 });
183 }else{
184 addToFav(url).then(data => {
185 console.log('added: ' + data);
186 $('.'+favClass).addClass("makeFavoriteSelected");
187 $('.'+favClass).removeClass("disabledClick");
188 });
189 }
190 }
191 $(function () {
192 $('[data-toggle="tooltip"]').tooltip()
193})
194 function openVModel(url){
195 document.getElementById("videoModel").classList.remove('hide');
196 document.getElementById("modal-backdrop").classList.remove('hide');
197 document.getElementById("videoModel").classList.add('show');
198 document.getElementById("modal-backdrop").classList.add('show');
199 document.getElementById("videoimg").src = url
200 }
201 function closeVModel(url){
202 document.getElementById("videoModel").classList.remove('show');
203 document.getElementById("modal-backdrop").classList.remove('show');
204 document.getElementById("videoModel").classList.add('hide');
205 document.getElementById("modal-backdrop").classList.add('hide');
206 document.getElementById("videoimg").src = '';
207 }
208 </script>
209<#if entries?has_content>
210
211<div class="modal bd-example-modal-lg hide fade" id="videoModel" tabindex="-1" role="dialog" aria-labelledby="exampleModalCenterTitle" aria-hidden="true">
212 <div class="modal-dialog modal-lg modal-dialog-centered" role="document">
213 <div class="modal-content">
214 <button onClick="closeVModel()" type="button" class="close" id="closeVideoModel" aria-label="Close">
215 <span class="colseIcon" aria-hidden="true">×</span>
216 </button><div class="">
217 <video id="videoimg" width="100%" src="" controls autoplay controlsList="nodownload">Your browser does not support HTML video.</video>
218 </div>
219
220 </div>
221 </div>
222</div>
223<div id="modal-backdrop" class="modal-backdrop hide fade"></div>
224
225<div class="bg-white px-4 py-2">
226<div class="d-flex justify-content-end align-items-center my-2">
227 <div class="justdoit">
228 <a data-toggle="tooltip" data-placement="bottom" title="Thumbnail view" id="tileViewAction" onclick="toggleView('tileView')" aria-label="Tile view" class="btn text-secondary btn-default mx-1 p-0"><span class="glyphicon glyphicon-th text-primary" aria-hidden="true"></span></a>
229 <a data-toggle="tooltip" data-placement="bottom" title="List view" id="listViewAction" onclick="toggleView('listView')" aria-label="List view" class="btn text-secondary btn-default mx-1 p-0"><span class="glyphicon glyphicon-list" aria-hidden="true"></span></a>
230 </div>
231 </div>
232<div id="tileView">
2331234567
234<div class="row row-cols-1 row-cols-sm-2 row-cols-md-3 g-3">
235 <#list entries as entry>
236 <#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") />
237 <#assign assetEntry = assetEntryLocalService.getEntry(entry.getClassName(), entry.getClassPK()) />
238 <#if entry.getClassName()?has_content && entry.getClassName() == "com.liferay.document.library.kernel.model.DLFileEntry">
239 <#assign DLFileEntryLocalService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryLocalService") />
240 <#assign fileEntry = DLFileEntryLocalService.getDLFileEntry(entry.getClassPK()) />
241 <#if fileEntry?? && fileEntry.getExpandoBridge()??>
242 <#assign expandoBridge = fileEntry.getExpandoBridge()! />
243 <#assign documentType = expandoBridge.getAttribute("Documenttype")!"" />
244 <#assign applicationType = expandoBridge.getAttribute("Applicationtype")!"" />
245 <#assign productType = expandoBridge.getAttribute("Producttype")!"" />
246 <#assign permissionType = expandoBridge.getAttribute("Permissiontype")!"" />
247 <#assign fileSizeBytes = fileEntry.getSize() />
248 <#assign fileSizeMB = (fileSizeBytes / (1024 * 1024))?string("0.##") />
249 <#assign modifiedDate = fileEntry.getModifiedDate() />
250 <#assign formattedModifiedDate = dateUtil.getDate(modifiedDate, "MMM dd yyyy, hh:mm", locale) />
251 </#if>
252 </#if>
253 <div class="col mb-5 mt-2">
254 <div class="card border border-light h-100 mb-0">
255 <#if entry.getThumbnailURLString()??>
256 <div role="img" class="cardBorder" style="background:url('${entry.getThumbnailURLString()}') center center no-repeat; width:100%; height:225px; background-size:contain;background-color: #eee;display: flex;justify-content: center;position: relative;">
257 <#list assetEntry.getCategories() as category>
258 <#if category.getName() == "Confidential">
259 <div style="position: absolute; top: 40%; z-index: 1; font-weight: bold; color: #fff; padding:0 5px; background: #1a63bad1; font-size: 15px; font-family: Arial; transform: rotate(341deg);
260">CONFIDENTIAL</div>
261 </#if>
262 <#if category.getName() == "Customer" >
263 <div style="position: absolute; top: 40%; z-index: 1; font-weight: bold; color: #fff; padding:0 5px; background: #cc3333b3; font-size: 15px; font-family: Arial; transform: rotate(341deg);
264">CUSTOMER SPECIFIC</div>
265 </#if>
266 </#list>
267 </div>
268 </#if>
269 <#if !entry.getThumbnailURLString()??>
270 <div role="img" class="cardBorder" style="background:url('/documents/20123/55369/defaultSearchImg.jpg') center center no-repeat; width:100%; height:225px; background-size:contain; background-color: #eee;display: flex;justify-content: center;position: relative;"">
271 <#list assetEntry.getCategories() as category>
272 <#if category.getName() == "Confidential">
273 <div style="position: absolute; top: 40%; z-index: 1; font-weight: bold; color: #fff; padding:0 5px; background: #1a63bad1; font-size: 15px; font-family: Arial; transform: rotate(341deg);
274">CONFIDENTIAL</div>
275 </#if>
276 <#if category.getName() == "Customer" >
277 <div style="position: absolute; top: 40%; z-index: 1; font-weight: bold; color: #fff; padding:0 5px; background: #cc3333b3; font-size: 15px; font-family: Arial; transform: rotate(341deg);
278">CUSTOMER SPECIFIC</div>
279 </#if>
280 </#list>
281 </div>
282 </#if>
283 <div class="card-body">
284 <h4>
285
286 <div class="clearfix publishedDate mb-2 text-secondary small">
287 <#if entry.getCreationDateString()??>
288 ${entry.getCreationDateString()}
289 </#if>
290 </div>
291 <#if entry.getAssetRendererURLDownload() ??>
292 <#assign urlString = entry.getAssetRendererURLDownload()?replace("https://contentportal.ambiq.com", "") />
293 <#assign regexMatchedUrlString = urlString?matches("(/.*)/+?")>
294 <#list regexMatchedUrlString as matchedString>
295 <#assign matchedUrlString = matchedString?groups[1]>
296 </#list>
297 <#else>
298 <#assign matchedUrlString = "">
299 </#if>
300 <div class="clearfix hoverAcctoin" style=" min-height: 57px;">
301 <#if matchedUrlString?has_content >
302 <#if matchedUrlString?ends_with(".mp4")>
303 <a style="color:#272833" onclick="openVModel('${urlString}')">${entry.getHighlightedTitle()}</a>
304
305 <!-- <a target="_blank" style="color:#272833" href="${matchedUrlString}">${entry.getHighlightedTitle()}</a>-->
306 <#else>
307 <a target="_blank" style="color:#272833" href="${matchedUrlString}">${entry.getHighlightedTitle()}</a>
308
309<ul class="feature-list-tooltip hoverContainer">
310 <li>
311 Document Type : ${documentType!}
312 </li>
313 <li>
314 Product Type:
315 <ul>
316 <#list productType as p>
317 <li> ${p!}</li>
318 </#list>
319 </ul>
320 </li>
321 <li>Access Classification: ${permissionType!}</li>
322 <div><hr></div>
323 <li>Size: ${fileSizeMB!} MB</li>
324 <li>Modified Date: ${formattedModifiedDate!}</li>
325 </ul>
326
327 </#if>
328
329 <#else>
330 <a target="_blank" style="color:#272833" href="${entry.getViewURL()}">${entry.getHighlightedTitle()}</a>
331 </#if>
332 </div>
333 </h4>
334
335 <div class="d-flex justify-content-end align-items-center">
336 <#if matchedUrlString?has_content && themeDisplay.isSignedIn() >
337 <script>
338 getFavList('makeFavorite-${entry?index}', '${matchedUrlString}');
339 </script>
340 <a data-toggle="tooltip" data-placement="bottom" title="Favorites" onclick="getFavorite('makeFavorite-${entry?index}', '${matchedUrlString}')" class="makeFavorite makeFavorite-${entry?index}">
341 <span aria-hidden="true" class="glyphicon glyphicon-bookmark text-muted"></span>
342 </a>
343 </#if>
344 </div>
345 </div>
346 </div>
347 </div>
348 </#list>
349 </div>
350</div>
351
352
353
354<div id="listView" class="display-list" style="display:none">
355 <ul class="list-group">
356 <#list entries as entry>
357 <#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") />
358 <#assign assetEntry = assetEntryLocalService.getEntry(entry.getClassName(), entry.getClassPK()) />
359 <li class="list-group-item list-group-item-flex py-2 border-left-0 border-top-0 border-right-0 my-2">
360 <div class="autofit-col h-100 p-0">
361 <#if entry.getThumbnailURLString()??>
362 <div role="img" class="border border-light" style="background:url('${entry.getThumbnailURLString()}') center center no-repeat; width:150px; height:130px; background-size:contain; background-color: #eee; position: relative; display: flex; justify-content: center;">
363 <#list assetEntry.getCategories() as category>
364 <#if category.getName() == "Confidential" >
365 <div style="position: absolute; top: 40%; z-index: 1; font-weight: bold; color: #fff; padding:0 5px; background: #1a63bad1; font-size: 12px; text-align: center; font-family: Arial; transform: rotate(341deg);
366">CONFIDENTIAL</div>
367 </#if>
368 <#if category.getName() == "Customer" >
369 <div style="position: absolute; top: 40%; z-index: 1; font-weight: bold; color: #fff; padding:0 5px; background: #cc3333b3; font-size: 12px; text-align: center; font-family: Arial; transform: rotate(341deg);
370">CUSTOMER SPECIFIC</div>
371 </#if>
372 </#list>
373 </div>
374 </#if>
375 <#if !entry.getThumbnailURLString()??>
376 <div role="img" class="border border-light border-top-0 border-end-0 border-start-0" style="background:url('/documents/20123/55369/defaultSearchImg.jpg') center center no-repeat; width:150px; height:130px; background-size:contain; background-color: #eee; position: relative; display: flex; justify-content: center;">
377 <#list assetEntry.getCategories() as category>
378 <#if category.getName() == "Confidential" >
379 <div style="position: absolute; top: 40%; z-index: 1; font-weight: bold; color: #fff; padding:0 5px; background: #1a63bad1; font-size: 12px; text-align: center; font-family: Arial; transform: rotate(341deg);
380">CONFIDENTIAL</div>
381 </#if>
382 <#if category.getName() == "Customer" >
383 <div style="position: absolute; top: 40%; z-index: 1; font-weight: bold; color: #fff; padding:0 5px; background: #cc3333b3; font-size: 12px; text-align: center; font-family: Arial; transform: rotate(341deg);
384">CUSTOMER SPECIFIC</div>
385 </#if>
386 </#list>
387 </div>
388 </#if>
389 </div>
390
391 <div class="autofit-col autofit-col-expand px-3">
392 <section class="autofit-section pt-1 ">
393 <h4>
394 <div class="clearfix publishedDate mb-2 text-secondary small">
395 <#if entry.getCreationDateString()??>
396 ${entry.getCreationDateString()}
397 </#if>
398 </div>
399 <#if entry.getAssetRendererURLDownload() ??>
400 <#assign urlString = entry.getAssetRendererURLDownload()?replace("https://contentportal.ambiq.com", "") />
401 <#assign regexMatchedUrlString = urlString?matches("(/.*)/+?")>
402 <#list regexMatchedUrlString as matchedString>
403 <#assign matchedUrlString = matchedString?groups[1]>
404 </#list>
405 <#else>
406 <#assign matchedUrlString = "">
407 </#if>
408 <div class="clearfix " style=" min-height: 57px;">
409 <#if matchedUrlString?has_content >
410 <#if matchedUrlString?ends_with(".mp4")>
411 <a style="color:#272833" onclick="openVModel('${urlString}')">${entry.getHighlightedTitle()}</a>
412 <#else>
413 <a target="_blank" style="color:#272833" href="${matchedUrlString}">${entry.getHighlightedTitle()}</a>
414 </#if>
415 <#else>
416 <a target="_blank" style="color:#272833" href="${entry.getViewURL()}">${entry.getHighlightedTitle()}</a>
417 </#if>
418 </div>
419 </h4>
420
421 <#if entry.getContent()??>
422 <p>
423 ${entry.getContent()}
424 </p>
425 </#if>
426 <div class="d-flex justify-content-end align-items-center position-absolute" style="top: 0; right: 0;">
427 <#if matchedUrlString?has_content && themeDisplay.isSignedIn() >
428 <script>
429 getFavList('makeFavorite-${entry?index}', '${matchedUrlString}');
430 </script>
431 <a data-toggle="tooltip" data-placement="bottom" title="Favorites" onclick="getFavorite('makeFavorite-${entry?index}', '${matchedUrlString}')" class="makeFavorite makeFavorite-${entry?index}">
432 <span aria-hidden="true" class="glyphicon glyphicon-bookmark text-muted"></span>
433 </a>
434 </#if>
435 </div>
436 </section>
437 </div>
438
439 </li>
440 </#list>
441 </ul>
442</div>
443</div>
444</#if>