کتاب های رجالی - پژوهشگاه معارج

کتب رجالی
در حین انجام عملیات خطایی رخ داده است.
The following has evaluated to null or missing: ==> assetObject.getArticleId [in template "20097#20123#47148" at line 369, column 39] ---- Tip: It's the step after the last dot that caused this error, not those before it. ---- 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: @liferay_journal["journal-article"] a... [in template "20097#20123#47148" at line 368, column 29] ----
1<#if entries?has_content>
2
3<#if ( locale == "fa_IR") >
4
5 <#assign writerLabel = "نویسنده" />
6 <#assign idLabel = "شناسه" />
7 <#assign prepared = "تهیه و تنظیم" />
8 <#assign volumes = "تعداد جلد" />
9 <#assign pages = "تعداد صفحه" />
10 <#assign publish = "نوبت چاپ" />
11 <#assign release = "تاریخ انتشار" />
12
13
14<#elseif ( locale == "ar_SA")>
15
16 <#assign writerLabel = "الكاتب" />
17 <#assign idLabel = "بطاقة تعريف" />
18 <#assign prepared = "أعدت" />
19 <#assign volumes = "المجلد" />
20 <#assign pages = "الصفحات" />
21 <#assign publish = "النشر" />
22 <#assign release = "الاصدار" />
23
24<#else>
25
26 <#assign writerLabel = "Writer" />
27 <#assign idLabel = "ID" />
28 <#assign prepared = "Prepared" />
29 <#assign volumes = "Volumes" />
30 <#assign pages = "Pages" />
31 <#assign publish = "Publish" />
32 <#assign release = "Release" />
33
34</#if>
35
36
37 <style>
38 .books-container {
39 position: relative;
40
41 }
42
43 .research-book-item-wrapper {
44 height: 252px;
45 }
46
47 .research-book-item {
48 width: 100%;
49 height: 232px;
50 cursor: pointer;
51 padding: 15px;
52 }
53
54 .research-book-item-image-wrapper {
55 width: 100%;
56 height: 100%;
57 transition: 300ms;
58 transform: scale(1);
59 }
60
61 .research-book-item.active .research-book-item-image-wrapper {
62 /*width: 135%;*/
63 /*margin-left: -25%;*/
64 transform: scale(1.173);
65 }
66
67 .research-book-item-image {
68 width: 100%;
69 height: 100%;
70 object-fit: contain;
71 }
72
73
74 .research-books .splide__pagination {
75 display: none;
76 }
77
78 .research-books .splide__pagination__page {
79 background: #AEAEAE !important;
80 }
81
82 .research-books .splide__pagination li {
83 margin: 0 6px;
84 }
85
86 .research-books .splide__pagination__page.is-active {
87 background: #00BCEB !important;
88 }
89
90
91 .research-books .splide__arrow {
92 background: #00BCEB;
93 opacity: 1;
94
95 }
96
97 .research-books .splide__arrow svg {
98 fill: white;
99 }
100
101 .research-books .splide__arrow--next {
102 right: -16px;
103 }
104
105 .research-books .splide__arrow--prev {
106 left: -16px;
107 }
108
109 .research-book-item-details-wrapper {
110 display: none;
111 }
112
113
114 .shaback-container {
115 width: 100%;
116 display: flex;
117 justify-content: flex-end;
118 }
119
120 .shaback {
121 background: #0D274D;
122 color: white;
123 align-items: flex-start;
124 justify-content: space-between;
125 padding: 32px;
126 border-radius: 20px;
127 overflow: hidden;
128 width: 85%;
129 display: none;
130
131 /*margin-left: auto;*/
132 }
133
134 html.rtl .shaback {
135 text-align: right;
136 direction: rtl;
137 flex-direction: row;
138 }
139
140 html.ltr .shaback {
141 text-align: left;
142 direction: rtl;
143 flex-direction: row-reverse;
144 }
145
146 .shaback.active {
147 display: flex;
148 }
149
150 .shaback-content {
151 flex: 1 1 auto;
152 }
153
154 html.rtl .shaback-content {
155 margin-left: 32px;
156 direction: rtl;
157 }
158
159 html.ltr .shaback-content {
160 margin-right: 32px;
161 direction: ltr;
162 }
163
164 .shaback-title {
165 font-size: 17px;
166 font-weight: 500;
167 line-height: 27px;
168 letter-spacing: 0;
169
170 display: -webkit-box;
171 -webkit-line-clamp: 1;
172 -webkit-box-orient: vertical;
173 overflow: hidden;
174 text-overflow: ellipsis;
175
176 }
177
178 .shaback-paragraph {
179 font-size: 14px;
180 font-style: normal;
181 font-weight: 400;
182 line-height: 28px;
183 letter-spacing: 0;
184
185 display: -webkit-box;
186 -webkit-line-clamp: 5;
187 -webkit-box-orient: vertical;
188 overflow: hidden;
189 text-overflow: ellipsis;
190
191 }
192
193 .shaback-details {
194 flex: 0 0 300px;
195 display: flex;
196 justify-content: space-between;
197 align-items: flex-end;
198 }
199
200 html.rtl .shaback-details {
201 flex-direction: row;
202 }
203
204 html.ltr .shaback-details {
205 flex-direction: row-reverse;
206 }
207
208 .shaback-details-list {
209 margin: 0;
210 padding: 0;
211 }
212
213 html.rtl .shaback-details-list {
214 text-align: right;
215 }
216
217 html.ltr .shaback-details-list {
218 text-align: left;
219 }
220
221 .shaback-details-list-item {
222 list-style: none;
223 font-size: 14px;
224 font-weight: 400;
225 line-height: 28px;
226 letter-spacing: 0;
227 }
228
229 .shaback-writer:before {
230 content: '${writerLabel }: ';
231 }
232
233 .shaback-prepared:before {
234 content: '${prepared }: ';
235 }
236
237 .shaback-volumes:before {
238 content: '${volumes }: ';
239 }
240
241 .shaback-pages:before {
242 content: '${pages }: ';
243 }
244
245 .shaback-publish:before {
246 content: '${publish }: ';
247 }
248
249 .shaback-release:before {
250 content: '${release }: ';
251 }
252
253
254
255
256
257 .shaback-qrcode-container {
258 min-width: 88px;
259 width: 88px;
260 height: 88px;
261 }
262
263 .shaback-qrcode {
264 width: 100%;
265 height: 100%;
266 }
267
268
269 @media only screen and (max-width: 768px) {
270
271 .research-book-item-wrapper {
272 height: 200px;
273 }
274 .research-book-item {
275 height: 175px;
276 }
277
278 .shaback {
279 width: 100%;
280 padding: 25px;
281 flex-wrap: wrap;
282 }
283
284 .shaback-content {
285 margin-right: 0;
286 flex: 0 0 100%;
287 }
288
289 html.rtl .shaback-content {
290 margin-left: 0;
291 }
292
293 html.ltr .shaback-content {
294 margin-right: 0;
295 }
296
297 .shaback-title {
298 text-align: center;
299 }
300
301 .shaback-details {
302 flex: 0 0 100%;
303 }
304
305 .shaback {
306 text-align: center;
307 }
308
309 .shaback-paragraph-container {
310 display: none;
311 }
312
313 .shaback-qrcode-container {
314 display: none;
315 }
316
317 .shaback-details-list {
318 display: flex;
319 justify-content: center;
320 align-items: center;
321 flex-wrap: wrap;
322 }
323
324 .shaback-details-list-item {
325 margin: 0 5px;
326 }
327
328
329 }
330
331 @media only screen and (max-width: 515px) {
332
333 .research-book-item-wrapper {
334 height: 200px;
335 }
336 .research-book-item {
337 height: 175px;
338 }
339
340 .shaback {
341 padding: 15px;
342 }
343 .research-book-item-wrapper {
344 height: 150px;
345 }
346
347 .research-books .splide__arrow {
348 display: none;
349 }
350
351
352 }
353 </style>
354
355 <div class="w-100">
356 <div class="research-books splide splide-${themeDisplay.getPortletDisplay().getId()}">
357 <div class="splide__track">
358 <ul class="splide__list">
359
360 <#list entries as curEntry>
361 <li class="splide__slide research-book-item-wrapper">
362
363 <#assign
364 assetRenderer = curEntry.getAssetRenderer()
365 assetObject = assetRenderer.getAssetObject()
366 assetType = assetRenderer.getType()
367 />
368 <@liferay_journal["journal-article"]
369 articleId=assetObject.getArticleId()
370 ddmTemplateKey="47157"
371 groupId=assetObject.getGroupId()
372 />
373
374
375 </li>
376 </#list>
377
378 </ul>
379 </div>
380 </div>
381 </div>
382 <div class="shaback-container">
383 <div class="shaback active">
384 <div class="shaback-content">
385 <div class="shaback-title-container">
386 <h6 class="shaback-title"></h6>
387 </div>
388 <div class="shaback-paragraph-container">
389 <p class="shaback-paragraph">
390 </p>
391 </div>
392 </div>
393 <div class="shaback-details">
394 <ul class="shaback-details-list">
395 <li class="shaback-details-list-item shaback-writer"></li>
396 <li class="shaback-details-list-item shaback-prepared"></li>
397 <li class="shaback-details-list-item shaback-volumes"></li>
398 <li class="shaback-details-list-item shaback-pages"></li>
399 <li class="shaback-details-list-item shaback-publish"></li>
400 <li class="shaback-details-list-item shaback-release"></li>
401 </ul>
402 <div class="shaback-qrcode-container">
403 <img class="shaback-qrcode" src="" alt="">
404 </div>
405 </div>
406 </div>
407 </div>
408
409
410 <script>
411
412 // document.addEventListener('DOMContentLoaded', function () {
413
414 new Splide(".splide-${themeDisplay.getPortletDisplay().getId()}", {
415 direction: document.getElementsByTagName("html")[0].getAttribute("dir"),
416 perPage: 5,
417 breakpoints: {
418 768: {
419 perPage: 3,
420 },
421 }
422 }).mount();
423
424 makeShaback();
425
426 const books = document.querySelectorAll('.research-book-item');
427
428 books.forEach((book) => {
429 book.addEventListener('mouseover', (event) => {
430 books.forEach((item) => {
431 item.classList.remove('active');
432 })
433 book.classList.add('active');
434 makeShaback(event);
435 })
436 });
437
438
439 // });
440
441 function makeShaback(event = null) {
442
443 var item;
444 var target;
445
446 if (event) {
447 target = event.target;
448 item = target.parents('.research-book-item')[0];
449 } else {
450 // first item
451 item = document.querySelector('.research-book-item');
452 item.classList.add('active');
453 }
454
455 if (item) {
456
457 var attrs = [];
458
459 attrs['title'] = item.querySelector('.research-book-item-title').innerText.trim();
460 attrs['paragraph'] = item.querySelector('.research-book-item-paragraph').innerText.trim();
461 attrs['writer'] = item.querySelector('.research-book-item-writer').innerText.trim();
462 attrs['prepared'] = item.querySelector('.research-book-item-prepared').innerText.trim();
463 attrs['volumes'] = item.querySelector('.research-book-item-volumes').innerText.trim();
464 attrs['pages'] = item.querySelector('.research-book-item-pages').innerText.trim();
465 attrs['publish'] = item.querySelector('.research-book-item-publish').innerText.trim();
466 attrs['release'] = item.querySelector('.research-book-item-release').innerText.trim();
467
468 var qrcode = item.querySelector('.research-book-item-qrcode').getAttribute('src');
469
470
471 for (let attr in attrs) {
472 document.querySelector(".shaback-" + attr + "").innerText = attrs["" + attr + ""];
473 }
474
475 document.querySelector('.shaback-qrcode').setAttribute('src', qrcode);
476
477 }
478 }
479
480 </script>
481
482<#else>
483 <div class="alert alert-info text-center">
484 <@liferay_ui["message"] key="there-are-no-results" />
485 </div>
486</#if>