محتوى الويب
Popular services
Documents
حصل خطأ عند معالجة القالب.
The following has evaluated to null or missing: ==> andKey [in template "70645677960193#20119#73365" at line 27, column 29] ---- 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: #assign matchedKey = " " + andKey + " " [in template "70645677960193#20119#73365" at line 27, column 3] ----
1<#assign vocabLocalService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService") />
2 <#assign categoryLocalService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService") />
3
4 <#assign constVocabOfEntity="Content Type" />
5 <#assign monthArr = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'] />
6 <#assign arabicMonthArr = ['ديسمبر', 'نوفمبر', 'أكتوبر', 'سبتمبر', 'أغسطس', 'يوليو', 'يونيو', 'يمكن', 'أبريل', 'مارس', 'فبراير', 'يناير']>
7 <#assign searchURL="" />
8 <#assign contentTypeURL="" />
9 <#assign documentURL="" />
10 <#assign catName="" />
11 <#assign addedContentTypeCategories = [] />
12
13 <#list portletPreferences?keys as preference>
14 <#if portletPreferences[preference] ??>
15 <#assign mapValues = portletPreferences[preference] />
16 <#list mapValues as value >
17 <#if preference == "queryValues0">
18 <#assign documentURL = documentURL + "document=" + value + "&" />
19 <#assign categoryObject = categoryLocalService.getCategory(value?number) />
20 <#assign categoryName = categoryObject.getTitle(locale) />
21 <#assign andKey = languageUtil.get(locale,"gup-and") />
22 <#assign catName = catName + categoryName + " " + andKey + " " />
23 </#if>
24 </#list>
25 </#if>
26 </#list>
27 <#assign matchedKey = " "+andKey+" " />
28 <#if catName?ends_with(matchedKey)>
29 <#if themeDisplay.getLanguageId() == "en_US">
30 <#assign catNameString = catName?substring(0, catName?length - 5)>
31 <#else>
32 <#assign catNameString = catName?substring(0, catName?length - 3)>
33 </#if>
34 <#else>
35 <#assign catNameString = catName>
36</#if>
37
38<#if entries?has_content>
39 <div class="document-ministry-warpper card-without-image">
40 <div class="document-ministry-list card-body">
41 <h3 class="h5">${catNameString}</h3>
42 <ul class="list-unstyled pl-0 mb-0">
43 <#list entries as curEntry>
44 <#assign
45 assetRenderer = curEntry.getAssetRenderer()
46 fileEntry = assetRenderer.getAssetObject()
47 />
48
49 <#assign fields = curEntry.getAssetRenderer().getDDMFormValuesReader().getDDMFormValues().getDDMFormFieldValues()/>
50
51 <#assign fileEntryURL = themeDisplay.getPathContext() + "/documents/" + fileEntry.getRepositoryId()?c + "/" + fileEntry.getFolderId()?c + "/" + urlCodec.encodeURL(htmlUtil.unescape(fileEntry.getTitle()), true) + "/" + fileEntry.getUuid() />
52 <li class="mb-3">
53
54 <div class="card-title-wrapper">
55 <a class="d-flex" href="${fileEntryURL}" download="true">
56 <i class="ri-download-2-fill"></i>
57 <#if (fields?size gt 0)>
58 <#assign fileName = fields[0].getValue().getString(locale) />
59 <#assign truncatedText = fileName?substring(0, (fileName?length > 60)?then(60, fileName?length))>
60 <h4 class="h6"> ${truncatedText}<#if fileName?length gt 60>...</#if></h4>
61 <#else>
62 <#if (fileEntry.title)??>
63 <#assign text= fileEntry.title />
64 <#assign truncatedText = text?substring(0, (text?length > 60)?then(60, text?length))>
65 <h4 class="h6"> ${truncatedText}<#if text?length gt 60>...</#if></h4>
66 </#if>
67 </#if>
68 </a>
69 </div>
70 <div class="doc-content card-description mb-2">
71
72 <#if (fields?size gt 0) && fields[1]?? && fields[1].getValue().getString(locale) != "">
73 <#assign fileDescription = fields[1].getValue().getString(locale) />
74 <#assign truncatedText = fileDescription?substring(0, (fileDescription?length > 60)?then(60, fileDescription?length))>
75 <h4 class="h6"> ${truncatedText}<#if fileDescription?length gt 60>...</#if></h4>
76 <#else>
77 <#if fileEntry.description?has_content>
78 <#if (fileEntry.description)??>
79 <#assign text= fileEntry.description />
80 <#assign truncatedText = text?substring(0, (text?length > 60)?then(60, text?length))>
81 ${truncatedText}<#if text?length gt 60>...</#if>,
82 </#if>
83 </#if>
84 </#if>
85
86 <#if fileEntry.description?has_content>
87 <#if (fileEntry.description)??>
88 <#assign text= fileEntry.description />
89 <#assign truncatedText = text?substring(0, (text?length > 60)?then(60, text?length))>
90 ${truncatedText}<#if text?length gt 60>...</#if>,
91 </#if>
92 </#if>
93 <span>
94
95 ${fileEntry.extension},
96 </span>
97 <#assign fileSizeInKB = (fileEntry.size / 1024)?string("0") />
98 ${fileSizeInKB} ${languageUtil.get(locale,"storage.size.suffix.kb")}
99 </div>
100 <div class="doc-bottom card-description d-flex mb-3">
101 <#assign dateString = fileEntry.createDate?string("yyyy-MM-dd")>
102 <#assign year = dateString?split("-")[0]>
103 <#assign monthIndex = dateString?split("-")[1]?number - 1>
104 <#assign day = dateString?split("-")[2]>
105 <#assign currentLocale = locale.language>
106 <#if currentLocale == "ar">
107 <#assign monthName = arabicMonthArr[monthIndex]>
108 <#else>
109 <#assign monthName = monthArr[monthIndex]>
110 </#if>
111 <div class="doc-date">${monthName} ${day}, ${year}</div>
112 <div class="doc-categoty">
113 <#list curEntry.categories as category>
114 <#assign vocabName = vocabLocalService.getVocabulary(category.vocabularyId).getTitle("en_US") />
115 <#assign vocabId = vocabLocalService.getVocabulary(category.vocabularyId) />
116 <#assign categoryName = category.getTitle(themeDisplay.getLocale()) />
117
118 <#if vocabName == constVocabOfEntity>
119 <#if (addedContentTypeCategories?seq_contains(category.categoryId)?c) == "false">
120 <#assign contentTypeURL = contentTypeURL + "content-type=" + category.categoryId + "&" />
121 <#assign addedContentTypeCategories = addedContentTypeCategories + [category.categoryId] />
122 </#if>
123 <#else>
124 <#if (category.name)?? && vocabName != "Entity">
125 <#assign text= categoryName />
126 <#assign truncatedText = text?substring(0, (text?length > 60)?then(60, text?length))>
127 <span class="asset-category"> ${truncatedText}<#if text?length gt 60>...</#if></span>
128 </#if>
129 </#if>
130 </#list>
131 </div>
132 </div>
133 </li>
134 </#list>
135 <#assign searchURL="search?" + contentTypeURL + documentURL />
136 <#if searchURL?ends_with("&")>
137 <#assign searchURLString = searchURL?substring(0, searchURL?length - 1)>
138 <#else>
139 <#assign searchURLString = searchURL>
140 </#if>
141 </ul>
142 </div>
143 </div>
144</#if>
145
146
147
148<script>
149$(document).ready(function() {
150 var child = $('.document-ministry-warpper');
151
152 if (child.length > 0) {
153 var parent = child.parent();
154
155 while (parent.length > 0 && !parent.hasClass('lfr-layout-structure-item-row')) {
156 parent = parent.parent();
157 }
158
159 if (parent.length > 0 && !parent.hasClass('document-section')) {
160 parent.addClass('document-section');
161 }
162 }
163
164
165});
166</script>
167
168<style>
169 @media (min-width: 768px) {
170.lfr-layout-structure-item-row.document-section .row.align-items-lg-start.align-items-sm-start{
171 display:grid;
172 grid-template-columns: 1fr 1fr;
173 height:100%
174 }
175 .lfr-layout-structure-item-row.document-section .row.align-items-lg-start.align-items-sm-start div,
176 .lfr-layout-structure-item-row.document-section .row.align-items-lg-start.align-items-sm-start section{
177 height:100%
178 }
179 .lfr-layout-structure-item-row.document-section .row.align-items-lg-start.align-items-sm-start .col.col-lg-6.col-sm-12{
180 max-width:100%;
181 }
182 }
183 .document-ministry-warpper .document-ministry-list li:last-child{
184 margin-bottom:0 !important;
185 }
186 .document-ministry-list {
187 display:block !important;
188 }
189</style>
حصل خطأ عند معالجة القالب.
The following has evaluated to null or missing: ==> andKey [in template "70645677960193#20119#73365" at line 27, column 29] ---- 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: #assign matchedKey = " " + andKey + " " [in template "70645677960193#20119#73365" at line 27, column 3] ----
1<#assign vocabLocalService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService") />
2 <#assign categoryLocalService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService") />
3
4 <#assign constVocabOfEntity="Content Type" />
5 <#assign monthArr = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'] />
6 <#assign arabicMonthArr = ['ديسمبر', 'نوفمبر', 'أكتوبر', 'سبتمبر', 'أغسطس', 'يوليو', 'يونيو', 'يمكن', 'أبريل', 'مارس', 'فبراير', 'يناير']>
7 <#assign searchURL="" />
8 <#assign contentTypeURL="" />
9 <#assign documentURL="" />
10 <#assign catName="" />
11 <#assign addedContentTypeCategories = [] />
12
13 <#list portletPreferences?keys as preference>
14 <#if portletPreferences[preference] ??>
15 <#assign mapValues = portletPreferences[preference] />
16 <#list mapValues as value >
17 <#if preference == "queryValues0">
18 <#assign documentURL = documentURL + "document=" + value + "&" />
19 <#assign categoryObject = categoryLocalService.getCategory(value?number) />
20 <#assign categoryName = categoryObject.getTitle(locale) />
21 <#assign andKey = languageUtil.get(locale,"gup-and") />
22 <#assign catName = catName + categoryName + " " + andKey + " " />
23 </#if>
24 </#list>
25 </#if>
26 </#list>
27 <#assign matchedKey = " "+andKey+" " />
28 <#if catName?ends_with(matchedKey)>
29 <#if themeDisplay.getLanguageId() == "en_US">
30 <#assign catNameString = catName?substring(0, catName?length - 5)>
31 <#else>
32 <#assign catNameString = catName?substring(0, catName?length - 3)>
33 </#if>
34 <#else>
35 <#assign catNameString = catName>
36</#if>
37
38<#if entries?has_content>
39 <div class="document-ministry-warpper card-without-image">
40 <div class="document-ministry-list card-body">
41 <h3 class="h5">${catNameString}</h3>
42 <ul class="list-unstyled pl-0 mb-0">
43 <#list entries as curEntry>
44 <#assign
45 assetRenderer = curEntry.getAssetRenderer()
46 fileEntry = assetRenderer.getAssetObject()
47 />
48
49 <#assign fields = curEntry.getAssetRenderer().getDDMFormValuesReader().getDDMFormValues().getDDMFormFieldValues()/>
50
51 <#assign fileEntryURL = themeDisplay.getPathContext() + "/documents/" + fileEntry.getRepositoryId()?c + "/" + fileEntry.getFolderId()?c + "/" + urlCodec.encodeURL(htmlUtil.unescape(fileEntry.getTitle()), true) + "/" + fileEntry.getUuid() />
52 <li class="mb-3">
53
54 <div class="card-title-wrapper">
55 <a class="d-flex" href="${fileEntryURL}" download="true">
56 <i class="ri-download-2-fill"></i>
57 <#if (fields?size gt 0)>
58 <#assign fileName = fields[0].getValue().getString(locale) />
59 <#assign truncatedText = fileName?substring(0, (fileName?length > 60)?then(60, fileName?length))>
60 <h4 class="h6"> ${truncatedText}<#if fileName?length gt 60>...</#if></h4>
61 <#else>
62 <#if (fileEntry.title)??>
63 <#assign text= fileEntry.title />
64 <#assign truncatedText = text?substring(0, (text?length > 60)?then(60, text?length))>
65 <h4 class="h6"> ${truncatedText}<#if text?length gt 60>...</#if></h4>
66 </#if>
67 </#if>
68 </a>
69 </div>
70 <div class="doc-content card-description mb-2">
71
72 <#if (fields?size gt 0) && fields[1]?? && fields[1].getValue().getString(locale) != "">
73 <#assign fileDescription = fields[1].getValue().getString(locale) />
74 <#assign truncatedText = fileDescription?substring(0, (fileDescription?length > 60)?then(60, fileDescription?length))>
75 <h4 class="h6"> ${truncatedText}<#if fileDescription?length gt 60>...</#if></h4>
76 <#else>
77 <#if fileEntry.description?has_content>
78 <#if (fileEntry.description)??>
79 <#assign text= fileEntry.description />
80 <#assign truncatedText = text?substring(0, (text?length > 60)?then(60, text?length))>
81 ${truncatedText}<#if text?length gt 60>...</#if>,
82 </#if>
83 </#if>
84 </#if>
85
86 <#if fileEntry.description?has_content>
87 <#if (fileEntry.description)??>
88 <#assign text= fileEntry.description />
89 <#assign truncatedText = text?substring(0, (text?length > 60)?then(60, text?length))>
90 ${truncatedText}<#if text?length gt 60>...</#if>,
91 </#if>
92 </#if>
93 <span>
94
95 ${fileEntry.extension},
96 </span>
97 <#assign fileSizeInKB = (fileEntry.size / 1024)?string("0") />
98 ${fileSizeInKB} ${languageUtil.get(locale,"storage.size.suffix.kb")}
99 </div>
100 <div class="doc-bottom card-description d-flex mb-3">
101 <#assign dateString = fileEntry.createDate?string("yyyy-MM-dd")>
102 <#assign year = dateString?split("-")[0]>
103 <#assign monthIndex = dateString?split("-")[1]?number - 1>
104 <#assign day = dateString?split("-")[2]>
105 <#assign currentLocale = locale.language>
106 <#if currentLocale == "ar">
107 <#assign monthName = arabicMonthArr[monthIndex]>
108 <#else>
109 <#assign monthName = monthArr[monthIndex]>
110 </#if>
111 <div class="doc-date">${monthName} ${day}, ${year}</div>
112 <div class="doc-categoty">
113 <#list curEntry.categories as category>
114 <#assign vocabName = vocabLocalService.getVocabulary(category.vocabularyId).getTitle("en_US") />
115 <#assign vocabId = vocabLocalService.getVocabulary(category.vocabularyId) />
116 <#assign categoryName = category.getTitle(themeDisplay.getLocale()) />
117
118 <#if vocabName == constVocabOfEntity>
119 <#if (addedContentTypeCategories?seq_contains(category.categoryId)?c) == "false">
120 <#assign contentTypeURL = contentTypeURL + "content-type=" + category.categoryId + "&" />
121 <#assign addedContentTypeCategories = addedContentTypeCategories + [category.categoryId] />
122 </#if>
123 <#else>
124 <#if (category.name)?? && vocabName != "Entity">
125 <#assign text= categoryName />
126 <#assign truncatedText = text?substring(0, (text?length > 60)?then(60, text?length))>
127 <span class="asset-category"> ${truncatedText}<#if text?length gt 60>...</#if></span>
128 </#if>
129 </#if>
130 </#list>
131 </div>
132 </div>
133 </li>
134 </#list>
135 <#assign searchURL="search?" + contentTypeURL + documentURL />
136 <#if searchURL?ends_with("&")>
137 <#assign searchURLString = searchURL?substring(0, searchURL?length - 1)>
138 <#else>
139 <#assign searchURLString = searchURL>
140 </#if>
141 </ul>
142 </div>
143 </div>
144</#if>
145
146
147
148<script>
149$(document).ready(function() {
150 var child = $('.document-ministry-warpper');
151
152 if (child.length > 0) {
153 var parent = child.parent();
154
155 while (parent.length > 0 && !parent.hasClass('lfr-layout-structure-item-row')) {
156 parent = parent.parent();
157 }
158
159 if (parent.length > 0 && !parent.hasClass('document-section')) {
160 parent.addClass('document-section');
161 }
162 }
163
164
165});
166</script>
167
168<style>
169 @media (min-width: 768px) {
170.lfr-layout-structure-item-row.document-section .row.align-items-lg-start.align-items-sm-start{
171 display:grid;
172 grid-template-columns: 1fr 1fr;
173 height:100%
174 }
175 .lfr-layout-structure-item-row.document-section .row.align-items-lg-start.align-items-sm-start div,
176 .lfr-layout-structure-item-row.document-section .row.align-items-lg-start.align-items-sm-start section{
177 height:100%
178 }
179 .lfr-layout-structure-item-row.document-section .row.align-items-lg-start.align-items-sm-start .col.col-lg-6.col-sm-12{
180 max-width:100%;
181 }
182 }
183 .document-ministry-warpper .document-ministry-list li:last-child{
184 margin-bottom:0 !important;
185 }
186 .document-ministry-list {
187 display:block !important;
188 }
189</style>
حصل خطأ عند معالجة القالب.
The following has evaluated to null or missing: ==> andKey [in template "70645677960193#20119#73365" at line 27, column 29] ---- 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: #assign matchedKey = " " + andKey + " " [in template "70645677960193#20119#73365" at line 27, column 3] ----
1<#assign vocabLocalService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService") />
2 <#assign categoryLocalService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService") />
3
4 <#assign constVocabOfEntity="Content Type" />
5 <#assign monthArr = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'] />
6 <#assign arabicMonthArr = ['ديسمبر', 'نوفمبر', 'أكتوبر', 'سبتمبر', 'أغسطس', 'يوليو', 'يونيو', 'يمكن', 'أبريل', 'مارس', 'فبراير', 'يناير']>
7 <#assign searchURL="" />
8 <#assign contentTypeURL="" />
9 <#assign documentURL="" />
10 <#assign catName="" />
11 <#assign addedContentTypeCategories = [] />
12
13 <#list portletPreferences?keys as preference>
14 <#if portletPreferences[preference] ??>
15 <#assign mapValues = portletPreferences[preference] />
16 <#list mapValues as value >
17 <#if preference == "queryValues0">
18 <#assign documentURL = documentURL + "document=" + value + "&" />
19 <#assign categoryObject = categoryLocalService.getCategory(value?number) />
20 <#assign categoryName = categoryObject.getTitle(locale) />
21 <#assign andKey = languageUtil.get(locale,"gup-and") />
22 <#assign catName = catName + categoryName + " " + andKey + " " />
23 </#if>
24 </#list>
25 </#if>
26 </#list>
27 <#assign matchedKey = " "+andKey+" " />
28 <#if catName?ends_with(matchedKey)>
29 <#if themeDisplay.getLanguageId() == "en_US">
30 <#assign catNameString = catName?substring(0, catName?length - 5)>
31 <#else>
32 <#assign catNameString = catName?substring(0, catName?length - 3)>
33 </#if>
34 <#else>
35 <#assign catNameString = catName>
36</#if>
37
38<#if entries?has_content>
39 <div class="document-ministry-warpper card-without-image">
40 <div class="document-ministry-list card-body">
41 <h3 class="h5">${catNameString}</h3>
42 <ul class="list-unstyled pl-0 mb-0">
43 <#list entries as curEntry>
44 <#assign
45 assetRenderer = curEntry.getAssetRenderer()
46 fileEntry = assetRenderer.getAssetObject()
47 />
48
49 <#assign fields = curEntry.getAssetRenderer().getDDMFormValuesReader().getDDMFormValues().getDDMFormFieldValues()/>
50
51 <#assign fileEntryURL = themeDisplay.getPathContext() + "/documents/" + fileEntry.getRepositoryId()?c + "/" + fileEntry.getFolderId()?c + "/" + urlCodec.encodeURL(htmlUtil.unescape(fileEntry.getTitle()), true) + "/" + fileEntry.getUuid() />
52 <li class="mb-3">
53
54 <div class="card-title-wrapper">
55 <a class="d-flex" href="${fileEntryURL}" download="true">
56 <i class="ri-download-2-fill"></i>
57 <#if (fields?size gt 0)>
58 <#assign fileName = fields[0].getValue().getString(locale) />
59 <#assign truncatedText = fileName?substring(0, (fileName?length > 60)?then(60, fileName?length))>
60 <h4 class="h6"> ${truncatedText}<#if fileName?length gt 60>...</#if></h4>
61 <#else>
62 <#if (fileEntry.title)??>
63 <#assign text= fileEntry.title />
64 <#assign truncatedText = text?substring(0, (text?length > 60)?then(60, text?length))>
65 <h4 class="h6"> ${truncatedText}<#if text?length gt 60>...</#if></h4>
66 </#if>
67 </#if>
68 </a>
69 </div>
70 <div class="doc-content card-description mb-2">
71
72 <#if (fields?size gt 0) && fields[1]?? && fields[1].getValue().getString(locale) != "">
73 <#assign fileDescription = fields[1].getValue().getString(locale) />
74 <#assign truncatedText = fileDescription?substring(0, (fileDescription?length > 60)?then(60, fileDescription?length))>
75 <h4 class="h6"> ${truncatedText}<#if fileDescription?length gt 60>...</#if></h4>
76 <#else>
77 <#if fileEntry.description?has_content>
78 <#if (fileEntry.description)??>
79 <#assign text= fileEntry.description />
80 <#assign truncatedText = text?substring(0, (text?length > 60)?then(60, text?length))>
81 ${truncatedText}<#if text?length gt 60>...</#if>,
82 </#if>
83 </#if>
84 </#if>
85
86 <#if fileEntry.description?has_content>
87 <#if (fileEntry.description)??>
88 <#assign text= fileEntry.description />
89 <#assign truncatedText = text?substring(0, (text?length > 60)?then(60, text?length))>
90 ${truncatedText}<#if text?length gt 60>...</#if>,
91 </#if>
92 </#if>
93 <span>
94
95 ${fileEntry.extension},
96 </span>
97 <#assign fileSizeInKB = (fileEntry.size / 1024)?string("0") />
98 ${fileSizeInKB} ${languageUtil.get(locale,"storage.size.suffix.kb")}
99 </div>
100 <div class="doc-bottom card-description d-flex mb-3">
101 <#assign dateString = fileEntry.createDate?string("yyyy-MM-dd")>
102 <#assign year = dateString?split("-")[0]>
103 <#assign monthIndex = dateString?split("-")[1]?number - 1>
104 <#assign day = dateString?split("-")[2]>
105 <#assign currentLocale = locale.language>
106 <#if currentLocale == "ar">
107 <#assign monthName = arabicMonthArr[monthIndex]>
108 <#else>
109 <#assign monthName = monthArr[monthIndex]>
110 </#if>
111 <div class="doc-date">${monthName} ${day}, ${year}</div>
112 <div class="doc-categoty">
113 <#list curEntry.categories as category>
114 <#assign vocabName = vocabLocalService.getVocabulary(category.vocabularyId).getTitle("en_US") />
115 <#assign vocabId = vocabLocalService.getVocabulary(category.vocabularyId) />
116 <#assign categoryName = category.getTitle(themeDisplay.getLocale()) />
117
118 <#if vocabName == constVocabOfEntity>
119 <#if (addedContentTypeCategories?seq_contains(category.categoryId)?c) == "false">
120 <#assign contentTypeURL = contentTypeURL + "content-type=" + category.categoryId + "&" />
121 <#assign addedContentTypeCategories = addedContentTypeCategories + [category.categoryId] />
122 </#if>
123 <#else>
124 <#if (category.name)?? && vocabName != "Entity">
125 <#assign text= categoryName />
126 <#assign truncatedText = text?substring(0, (text?length > 60)?then(60, text?length))>
127 <span class="asset-category"> ${truncatedText}<#if text?length gt 60>...</#if></span>
128 </#if>
129 </#if>
130 </#list>
131 </div>
132 </div>
133 </li>
134 </#list>
135 <#assign searchURL="search?" + contentTypeURL + documentURL />
136 <#if searchURL?ends_with("&")>
137 <#assign searchURLString = searchURL?substring(0, searchURL?length - 1)>
138 <#else>
139 <#assign searchURLString = searchURL>
140 </#if>
141 </ul>
142 </div>
143 </div>
144</#if>
145
146
147
148<script>
149$(document).ready(function() {
150 var child = $('.document-ministry-warpper');
151
152 if (child.length > 0) {
153 var parent = child.parent();
154
155 while (parent.length > 0 && !parent.hasClass('lfr-layout-structure-item-row')) {
156 parent = parent.parent();
157 }
158
159 if (parent.length > 0 && !parent.hasClass('document-section')) {
160 parent.addClass('document-section');
161 }
162 }
163
164
165});
166</script>
167
168<style>
169 @media (min-width: 768px) {
170.lfr-layout-structure-item-row.document-section .row.align-items-lg-start.align-items-sm-start{
171 display:grid;
172 grid-template-columns: 1fr 1fr;
173 height:100%
174 }
175 .lfr-layout-structure-item-row.document-section .row.align-items-lg-start.align-items-sm-start div,
176 .lfr-layout-structure-item-row.document-section .row.align-items-lg-start.align-items-sm-start section{
177 height:100%
178 }
179 .lfr-layout-structure-item-row.document-section .row.align-items-lg-start.align-items-sm-start .col.col-lg-6.col-sm-12{
180 max-width:100%;
181 }
182 }
183 .document-ministry-warpper .document-ministry-list li:last-child{
184 margin-bottom:0 !important;
185 }
186 .document-ministry-list {
187 display:block !important;
188 }
189</style>
حصل خطأ عند معالجة القالب.
The following has evaluated to null or missing: ==> andKey [in template "70645677960193#20119#73365" at line 27, column 29] ---- 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: #assign matchedKey = " " + andKey + " " [in template "70645677960193#20119#73365" at line 27, column 3] ----
1<#assign vocabLocalService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService") />
2 <#assign categoryLocalService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService") />
3
4 <#assign constVocabOfEntity="Content Type" />
5 <#assign monthArr = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'] />
6 <#assign arabicMonthArr = ['ديسمبر', 'نوفمبر', 'أكتوبر', 'سبتمبر', 'أغسطس', 'يوليو', 'يونيو', 'يمكن', 'أبريل', 'مارس', 'فبراير', 'يناير']>
7 <#assign searchURL="" />
8 <#assign contentTypeURL="" />
9 <#assign documentURL="" />
10 <#assign catName="" />
11 <#assign addedContentTypeCategories = [] />
12
13 <#list portletPreferences?keys as preference>
14 <#if portletPreferences[preference] ??>
15 <#assign mapValues = portletPreferences[preference] />
16 <#list mapValues as value >
17 <#if preference == "queryValues0">
18 <#assign documentURL = documentURL + "document=" + value + "&" />
19 <#assign categoryObject = categoryLocalService.getCategory(value?number) />
20 <#assign categoryName = categoryObject.getTitle(locale) />
21 <#assign andKey = languageUtil.get(locale,"gup-and") />
22 <#assign catName = catName + categoryName + " " + andKey + " " />
23 </#if>
24 </#list>
25 </#if>
26 </#list>
27 <#assign matchedKey = " "+andKey+" " />
28 <#if catName?ends_with(matchedKey)>
29 <#if themeDisplay.getLanguageId() == "en_US">
30 <#assign catNameString = catName?substring(0, catName?length - 5)>
31 <#else>
32 <#assign catNameString = catName?substring(0, catName?length - 3)>
33 </#if>
34 <#else>
35 <#assign catNameString = catName>
36</#if>
37
38<#if entries?has_content>
39 <div class="document-ministry-warpper card-without-image">
40 <div class="document-ministry-list card-body">
41 <h3 class="h5">${catNameString}</h3>
42 <ul class="list-unstyled pl-0 mb-0">
43 <#list entries as curEntry>
44 <#assign
45 assetRenderer = curEntry.getAssetRenderer()
46 fileEntry = assetRenderer.getAssetObject()
47 />
48
49 <#assign fields = curEntry.getAssetRenderer().getDDMFormValuesReader().getDDMFormValues().getDDMFormFieldValues()/>
50
51 <#assign fileEntryURL = themeDisplay.getPathContext() + "/documents/" + fileEntry.getRepositoryId()?c + "/" + fileEntry.getFolderId()?c + "/" + urlCodec.encodeURL(htmlUtil.unescape(fileEntry.getTitle()), true) + "/" + fileEntry.getUuid() />
52 <li class="mb-3">
53
54 <div class="card-title-wrapper">
55 <a class="d-flex" href="${fileEntryURL}" download="true">
56 <i class="ri-download-2-fill"></i>
57 <#if (fields?size gt 0)>
58 <#assign fileName = fields[0].getValue().getString(locale) />
59 <#assign truncatedText = fileName?substring(0, (fileName?length > 60)?then(60, fileName?length))>
60 <h4 class="h6"> ${truncatedText}<#if fileName?length gt 60>...</#if></h4>
61 <#else>
62 <#if (fileEntry.title)??>
63 <#assign text= fileEntry.title />
64 <#assign truncatedText = text?substring(0, (text?length > 60)?then(60, text?length))>
65 <h4 class="h6"> ${truncatedText}<#if text?length gt 60>...</#if></h4>
66 </#if>
67 </#if>
68 </a>
69 </div>
70 <div class="doc-content card-description mb-2">
71
72 <#if (fields?size gt 0) && fields[1]?? && fields[1].getValue().getString(locale) != "">
73 <#assign fileDescription = fields[1].getValue().getString(locale) />
74 <#assign truncatedText = fileDescription?substring(0, (fileDescription?length > 60)?then(60, fileDescription?length))>
75 <h4 class="h6"> ${truncatedText}<#if fileDescription?length gt 60>...</#if></h4>
76 <#else>
77 <#if fileEntry.description?has_content>
78 <#if (fileEntry.description)??>
79 <#assign text= fileEntry.description />
80 <#assign truncatedText = text?substring(0, (text?length > 60)?then(60, text?length))>
81 ${truncatedText}<#if text?length gt 60>...</#if>,
82 </#if>
83 </#if>
84 </#if>
85
86 <#if fileEntry.description?has_content>
87 <#if (fileEntry.description)??>
88 <#assign text= fileEntry.description />
89 <#assign truncatedText = text?substring(0, (text?length > 60)?then(60, text?length))>
90 ${truncatedText}<#if text?length gt 60>...</#if>,
91 </#if>
92 </#if>
93 <span>
94
95 ${fileEntry.extension},
96 </span>
97 <#assign fileSizeInKB = (fileEntry.size / 1024)?string("0") />
98 ${fileSizeInKB} ${languageUtil.get(locale,"storage.size.suffix.kb")}
99 </div>
100 <div class="doc-bottom card-description d-flex mb-3">
101 <#assign dateString = fileEntry.createDate?string("yyyy-MM-dd")>
102 <#assign year = dateString?split("-")[0]>
103 <#assign monthIndex = dateString?split("-")[1]?number - 1>
104 <#assign day = dateString?split("-")[2]>
105 <#assign currentLocale = locale.language>
106 <#if currentLocale == "ar">
107 <#assign monthName = arabicMonthArr[monthIndex]>
108 <#else>
109 <#assign monthName = monthArr[monthIndex]>
110 </#if>
111 <div class="doc-date">${monthName} ${day}, ${year}</div>
112 <div class="doc-categoty">
113 <#list curEntry.categories as category>
114 <#assign vocabName = vocabLocalService.getVocabulary(category.vocabularyId).getTitle("en_US") />
115 <#assign vocabId = vocabLocalService.getVocabulary(category.vocabularyId) />
116 <#assign categoryName = category.getTitle(themeDisplay.getLocale()) />
117
118 <#if vocabName == constVocabOfEntity>
119 <#if (addedContentTypeCategories?seq_contains(category.categoryId)?c) == "false">
120 <#assign contentTypeURL = contentTypeURL + "content-type=" + category.categoryId + "&" />
121 <#assign addedContentTypeCategories = addedContentTypeCategories + [category.categoryId] />
122 </#if>
123 <#else>
124 <#if (category.name)?? && vocabName != "Entity">
125 <#assign text= categoryName />
126 <#assign truncatedText = text?substring(0, (text?length > 60)?then(60, text?length))>
127 <span class="asset-category"> ${truncatedText}<#if text?length gt 60>...</#if></span>
128 </#if>
129 </#if>
130 </#list>
131 </div>
132 </div>
133 </li>
134 </#list>
135 <#assign searchURL="search?" + contentTypeURL + documentURL />
136 <#if searchURL?ends_with("&")>
137 <#assign searchURLString = searchURL?substring(0, searchURL?length - 1)>
138 <#else>
139 <#assign searchURLString = searchURL>
140 </#if>
141 </ul>
142 </div>
143 </div>
144</#if>
145
146
147
148<script>
149$(document).ready(function() {
150 var child = $('.document-ministry-warpper');
151
152 if (child.length > 0) {
153 var parent = child.parent();
154
155 while (parent.length > 0 && !parent.hasClass('lfr-layout-structure-item-row')) {
156 parent = parent.parent();
157 }
158
159 if (parent.length > 0 && !parent.hasClass('document-section')) {
160 parent.addClass('document-section');
161 }
162 }
163
164
165});
166</script>
167
168<style>
169 @media (min-width: 768px) {
170.lfr-layout-structure-item-row.document-section .row.align-items-lg-start.align-items-sm-start{
171 display:grid;
172 grid-template-columns: 1fr 1fr;
173 height:100%
174 }
175 .lfr-layout-structure-item-row.document-section .row.align-items-lg-start.align-items-sm-start div,
176 .lfr-layout-structure-item-row.document-section .row.align-items-lg-start.align-items-sm-start section{
177 height:100%
178 }
179 .lfr-layout-structure-item-row.document-section .row.align-items-lg-start.align-items-sm-start .col.col-lg-6.col-sm-12{
180 max-width:100%;
181 }
182 }
183 .document-ministry-warpper .document-ministry-list li:last-child{
184 margin-bottom:0 !important;
185 }
186 .document-ministry-list {
187 display:block !important;
188 }
189</style>
Our Management
معالي الفريق حسن بن محسن الشريقي
المفتش العام للشرطة والجمارك
هل أنت راض عن هذه الصفحة؟
أرقام الطوارئ
عرض جميع الارقام