الرقم القياسي لأسعار المستهلك - سنوي, 2025
الناتج المحلي الإجمالي حسب الإنتاج -ربع سنوي الربع الثالث 2025
The following has evaluated to null or missing:
==> themeIconId [in template "20098#20124#1093349" at line 75, column 60]
----
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: ${themeIconId} [in template "20098#20124#1093349" at line 75, column 58]
----
1<#assign catLocalService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")
2 JournalArticleService=serviceLocator.findService("com.liferay.journal.service.JournalArticleResourceLocalService")
3 resourcePrimKey=JournalArticleService.getArticleResourcePrimKey(groupId, .vars['reserved-article-id'].data)
4 articleCatNames=catLocalService.getCategories("com.liferay.journal.model.JournalArticle", resourcePrimKey)
5 dlFileEntryService=serviceLocator.findService('com.liferay.document.library.kernel.service.DLFileEntryService')
6 assetVocabularyLocalService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService")
7 dlAppLocalServiceUtil=staticUtil["com.liferay.document.library.kernel.service.DLAppLocalServiceUtil"]
8 dlUtil=staticUtil["com.liferay.document.library.kernel.util.DLUtil"]
9 jsonFactoryUtil=staticUtil["com.liferay.portal.kernel.json.JSONFactoryUtil"]
10 statisticVocabulary=assetVocabularyLocalService.getGroupVocabulary(groupId?long,"statistics")
11 assetCategoryPropService=serviceLocator.findService("com.liferay.asset.category.property.service.AssetCategoryPropertyLocalService") />
12 <#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
13
14<#assign journalArticleTitle=.vars['reserved-article-title'].data />
15
16<#assign journalArticlele = JournalArticleLocalService.getArticle(groupId, .vars["reserved-article-id"].data) />
17<#assign journalArticleDisplayDate = journalArticlele.getExpandoBridge().getAttribute("UiissueDate")!"" />
18<#if !journalArticleDisplayDate?has_content>
19 <#assign journalArticleDisplayDate = journalArticlele.getExpandoBridge().getAttribute("UIIssueDate")!"" />
20</#if>
21<#if !journalArticleDisplayDate?has_content>
22 <#assign journalArticleDisplayDate = journalArticlele.getExpandoBridge().getAttribute("Uiissuedate")!"" />
23</#if>
24<#assign publicationIsoDate = "" />
25<#if journalArticleDisplayDate?has_content>
26 <#attempt>
27 <#assign publicationIsoDate = journalArticleDisplayDate?string["yyyy-MM-dd"] />
28 <#recover>
29 <#assign publicationIsoDate = "" />
30 </#attempt>
31</#if>
32<#assign publicationPageUrl = themeDisplay.getPortalURL() + "/w/" + .vars['reserved-article-url-title'].data />
33<#assign publicationDistributions = jsonFactoryUtil.createJSONArray() />
34
35
36
37
38
39<#assign themeColor="d29c4b" imgUrl="${themeDisplay.getPathThemeImages()}/publications/005.jpg"
40 categoryDisplay="Economic" />
41<#if (articleCatNames?size > 0)>
42 <#list articleCatNames as category>
43 <#if category.parentCategoryId==0>
44 <#if category.getVocabularyId()==statisticVocabulary.getVocabularyId()>
45 <#assign assetThemeCategoryId=category.categoryId?long />
46 <#assign
47 themeColor=assetCategoryPropService.getCategoryProperty(assetThemeCategoryId,"theme_color").getValue()
48 themeIconId=assetCategoryPropService.getCategoryProperty(assetThemeCategoryId,"theme_icon_id").getValue()
49 themeImgId=assetCategoryPropService.getCategoryProperty(assetThemeCategoryId,"portfolio-image").getValue() />
50
51 <#if themeImgId!="0">
52 <#assign imgDlFile=dlAppLocalServiceUtil.getFileEntry(themeImgId?number)
53 imgUrl=dlUtil.getPreviewURL(imgDlFile, imgDlFile.getFileVersion(), themeDisplay, '' ) />
54 </#if>
55 <#list category.name?split(" ") as catWords>
56 <#assign categoryDisplay = catWords/>
57 <#break>
58 </#list>
59 <#assign categoryDisplay = category.titleCurrentValue/>
60 </#if>
61 </#if>
62 </#list>
63
64 </#if>
65
66
67<#if file_upload.getSiblings()?has_content>
68
69 <#list file_upload.getSiblings() as medias>
70
71 <div class=" row mb-3 mx-0 bg-white d-flex w-100 align-items-center h-100 border rounded">
72 <div class="col-lg-1 p-0 ">
73 <div class="icon d-flex text-center p-1" style="background: #eee">
74 <div class="align-self-center mx-auto d-flex flex-column">
75 <img src="/documents/d/guest/${themeIconId}" height="30">
76 <label class="small mx-auto mb-0" style="color: #${themeColor} ;">
77 ${categoryDisplay}
78 </label>
79 </div>
80 </div>
81 </div>
82
83 <div class="col-8">
84 <p class="mb-0 py-3 publication-p">${journalArticleTitle}</p>
85 </div>
86
87 <div class="col-3 d-flex align-items-center justify-content-end">
88
89 <div class="my-2 right-icons d-flex align-items-center ">
90 <#if file_upload.getSiblings()?has_content>
91 <#list file_upload.getSiblings() as media>
92 <#if media.getData()?has_content>
93 <#assign fileData = media.getData()?trim />
94 <#assign fileEntry = "" />
95 <#assign downloadUrl = "" />
96 <#assign fileExtension = "" />
97
98 <#-- Yearbook stores document_library as JSON; older content may use a /documents/... path -->
99 <#if fileData?starts_with("{")>
100 <#assign fileJson = jsonFactoryUtil.createJSONObject(fileData) />
101 <#assign fileEntryId = fileJson.getLong("fileEntryId") />
102 <#if fileEntryId gt 0>
103 <#assign fileEntry = dlAppLocalServiceUtil.getFileEntry(fileEntryId) />
104 <#elseif fileJson.getString("uuid")?has_content>
105 <#assign fileGroupId = fileJson.getLong("groupId") />
106 <#if fileGroupId lte 0>
107 <#assign fileGroupId = groupId />
108 </#if>
109 <#assign fileEntry = dlAppLocalServiceUtil.getFileEntryByUuidAndGroupId(fileJson.getString("uuid"), fileGroupId) />
110 </#if>
111 <#else>
112 <#assign uuid = "" />
113 <#list fileData?split("/") as mediaDataSplit>
114 <#assign segment = mediaDataSplit?split("?")[0] />
115 <#if segment?matches("[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}")>
116 <#assign uuid = segment />
117 </#if>
118 </#list>
119 <#if uuid?has_content>
120 <#assign fileEntry = dlAppLocalServiceUtil.getFileEntryByUuidAndGroupId(uuid, groupId) />
121 </#if>
122 </#if>
123
124 <#if fileEntry?has_content>
125 <#assign downloadUrl = dlUtil.getPreviewURL(fileEntry, fileEntry.getFileVersion(), themeDisplay, "&download=true", false, true) />
126 <#assign fileExtension = fileEntry.getExtension()!"" />
127 <#if !fileExtension?has_content>
128 <#list fileEntry.getFileName()?split(".") as extention>
129 <#if extention?is_last>
130 <#assign fileExtension = extention />
131 <#break>
132 </#if>
133 </#list>
134 </#if>
135 <#elseif fileData?contains("/documents/")>
136 <#assign downloadUrl = fileData />
137 <#if !downloadUrl?contains("download=true")>
138 <#if downloadUrl?contains("?")>
139 <#assign downloadUrl = downloadUrl + "&download=true" />
140 <#else>
141 <#assign downloadUrl = downloadUrl + "?download=true" />
142 </#if>
143 </#if>
144 <#list fileData?split("?")[0]?split("/") as pathPart>
145 <#if pathPart?contains(".")>
146 <#list pathPart?split(".") as extention>
147 <#if extention?is_last>
148 <#assign fileExtension = extention />
149 </#if>
150 </#list>
151 </#if>
152 </#list>
153 </#if>
154
155 <#if downloadUrl?has_content>
156 <#assign encodingFormat = "application/octet-stream" />
157 <#if fileExtension?lower_case == "pdf">
158 <#assign encodingFormat = "application/pdf" />
159 <#elseif fileExtension?lower_case == "xls">
160 <#assign encodingFormat = "application/vnd.ms-excel" />
161 <#elseif fileExtension?lower_case == "xlsx">
162 <#assign encodingFormat = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" />
163 </#if>
164 <#assign distributionJson = jsonFactoryUtil.createJSONObject() />
165 <#assign void = distributionJson.put("@type", "DataDownload") />
166 <#assign void = distributionJson.put("contentUrl", downloadUrl) />
167 <#assign void = distributionJson.put("encodingFormat", encodingFormat) />
168 <#if fileExtension?has_content>
169 <#assign void = distributionJson.put("name", journalArticleTitle + " (" + fileExtension?upper_case + ")") />
170 </#if>
171 <#assign void = publicationDistributions.put(distributionJson) />
172
173 <#if fileExtension == "pdf" || fileExtension == "PDF">
174 <a class="ml-2" href="${downloadUrl}" target="_blank" style="order:1" aria-label="Download PDF">
175 <li class="list-item list-inline-item d-flex">
176 <img src=${themeDisplay.getPathThemeImages()}/publications/pdf-svgrepo-com.svg
177 class="d-flex mx-auto align-self-center" />
178 </li>
179 </a>
180 <#elseif fileExtension == "xls" || fileExtension == "XLS" ||
181 fileExtension == "xlsx" || fileExtension == "XLSX">
182 <a class="ml-2" href="${downloadUrl}" target="_blank" style="order:2" aria-label="Download Excel">
183 <li class="list-item list-inline-item d-flex">
184 <img src=${themeDisplay.getPathThemeImages()}/publications/excel-svgrepo-com.svg
185 class="d-flex mx-auto align-self-center" />
186 </li>
187 </a>
188 <#else>
189 <a class="ml-2" href="${downloadUrl}" target="_blank" style="order:3" aria-label="Download file">
190 <li class="list-item list-inline-item d-flex">
191 <i class="icon-file" style="font-size:27px"></i>
192 </li>
193 </a>
194 </#if>
195 </#if>
196 </#if>
197 </#list>
198 </#if>
199 </div>
200 </div>
201 </div>
202
203<#-- Schema.org Dataset JSON-LD (list view only — avoids duplicate grid+list scripts) -->
204<#assign datasetJson = jsonFactoryUtil.createJSONObject() />
205<#assign void = datasetJson.put("@context", "https://schema.org") />
206<#assign void = datasetJson.put("@type", "Dataset") />
207<#assign void = datasetJson.put("@id", publicationPageUrl + "#dataset") />
208<#assign void = datasetJson.put("name", journalArticleTitle) />
209<#assign void = datasetJson.put("url", publicationPageUrl) />
210<#assign publicationDescription = journalArticleTitle />
211<#if categoryDisplay?has_content>
212 <#assign publicationDescription = publicationDescription + " — " + categoryDisplay + " publication from Statistics Centre - Abu Dhabi (SCAD)." />
213<#else>
214 <#assign publicationDescription = publicationDescription + " — Statistical publication from Statistics Centre - Abu Dhabi (SCAD)." />
215</#if>
216<#if publicationIsoDate?has_content>
217 <#assign publicationDescription = publicationDescription + " Published on " + publicationIsoDate + "." />
218</#if>
219<#if publicationDistributions.length() gt 0>
220 <#assign publicationDescription = publicationDescription + " Downloadable PDF or Excel data file available." />
221</#if>
222<#if publicationDescription?length lt 50>
223 <#assign publicationDescription = publicationDescription + " Official SCAD statistical data is freely available to the public on the SCAD Download Publications catalog." />
224</#if>
225<#assign void = datasetJson.put("description", publicationDescription) />
226<#assign topicKeywords = categoryDisplay!"" />
227<#if topicKeywords?has_content>
228 <#assign void = datasetJson.put("keywords", topicKeywords) />
229 <#assign aboutThing = jsonFactoryUtil.createJSONObject() />
230 <#assign void = aboutThing.put("@type", "Thing") />
231 <#assign void = aboutThing.put("name", topicKeywords) />
232 <#assign void = datasetJson.put("about", aboutThing) />
233</#if>
234<#if publicationIsoDate?has_content>
235 <#assign void = datasetJson.put("datePublished", publicationIsoDate) />
236 <#assign void = datasetJson.put("dateModified", publicationIsoDate) />
237</#if>
238<#assign void = datasetJson.put("inLanguage", (themeDisplay.getLanguageId()?starts_with("ar"))?then("ar", "en")) />
239<#assign void = datasetJson.put("isAccessibleForFree", true) />
240<#assign void = datasetJson.put("license", "https://www.scad.gov.ae") />
241<#assign catalogRef = jsonFactoryUtil.createJSONObject() />
242<#assign void = catalogRef.put("@type", "DataCatalog") />
243<#assign void = catalogRef.put("name", "Download Publications") />
244<#assign void = catalogRef.put("url", themeDisplay.getPortalURL() + "/download-publications") />
245<#assign void = datasetJson.put("includedInDataCatalog", catalogRef) />
246<#assign creatorJson = jsonFactoryUtil.createJSONObject() />
247<#assign void = creatorJson.put("@type", "GovernmentOrganization") />
248<#assign void = creatorJson.put("name", "Statistics Centre - Abu Dhabi (SCAD)") />
249<#assign void = creatorJson.put("url", "https://www.scad.gov.ae") />
250<#assign void = datasetJson.put("creator", creatorJson) />
251<#assign void = datasetJson.put("publisher", creatorJson) />
252<#if publicationDistributions.length() gt 0>
253 <#assign void = datasetJson.put("distribution", publicationDistributions) />
254</#if>
255<script type="application/ld+json">
256${datasetJson.toString()}
257</script>
258
259<#break>
260
261
262</#list>
263</#if>
الرقم القياسي لأسعار الفنادق- شهري نوفمبر 2025
الرقم القياسي لأسعار المستهلك-شهري ديسمبر 2025
إحصاءات المناخ-شهري نوفمبر 2025
إحصاءات جودة الهواء - سنوي 2024
احصاءات المباني المنجزة -ربع سنوي الربع الثالث 2025
إحصاءات جودة المياه البحرية- -ربع سنوي الربع الثالث 2025
إحصاءات مصايد الأسماك -ربع سنوي الربع الثالث 2025
إحصاءات جودة الهواء -ربع سنوي الربع الثالث 2025
إحصاءات الطاقة والمياه 2024
إحصاءات الاستثمار الاجنبي-سنوي 2024
إحصاءات الشؤون الإسلامية-سنوي 2024
إحصاءات البنوك -ربع سنوي الربع الثالث 2025
إحصاءات المناخ-شهري أكتوبر 2025
الرقم القياسي لأسعار المستهلك-شهري نوفمبر 2025
The following has evaluated to null or missing:
==> themeIconId [in template "20098#20124#1093349" at line 75, column 60]
----
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: ${themeIconId} [in template "20098#20124#1093349" at line 75, column 58]
----
1<#assign catLocalService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")
2 JournalArticleService=serviceLocator.findService("com.liferay.journal.service.JournalArticleResourceLocalService")
3 resourcePrimKey=JournalArticleService.getArticleResourcePrimKey(groupId, .vars['reserved-article-id'].data)
4 articleCatNames=catLocalService.getCategories("com.liferay.journal.model.JournalArticle", resourcePrimKey)
5 dlFileEntryService=serviceLocator.findService('com.liferay.document.library.kernel.service.DLFileEntryService')
6 assetVocabularyLocalService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService")
7 dlAppLocalServiceUtil=staticUtil["com.liferay.document.library.kernel.service.DLAppLocalServiceUtil"]
8 dlUtil=staticUtil["com.liferay.document.library.kernel.util.DLUtil"]
9 jsonFactoryUtil=staticUtil["com.liferay.portal.kernel.json.JSONFactoryUtil"]
10 statisticVocabulary=assetVocabularyLocalService.getGroupVocabulary(groupId?long,"statistics")
11 assetCategoryPropService=serviceLocator.findService("com.liferay.asset.category.property.service.AssetCategoryPropertyLocalService") />
12 <#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
13
14<#assign journalArticleTitle=.vars['reserved-article-title'].data />
15
16<#assign journalArticlele = JournalArticleLocalService.getArticle(groupId, .vars["reserved-article-id"].data) />
17<#assign journalArticleDisplayDate = journalArticlele.getExpandoBridge().getAttribute("UiissueDate")!"" />
18<#if !journalArticleDisplayDate?has_content>
19 <#assign journalArticleDisplayDate = journalArticlele.getExpandoBridge().getAttribute("UIIssueDate")!"" />
20</#if>
21<#if !journalArticleDisplayDate?has_content>
22 <#assign journalArticleDisplayDate = journalArticlele.getExpandoBridge().getAttribute("Uiissuedate")!"" />
23</#if>
24<#assign publicationIsoDate = "" />
25<#if journalArticleDisplayDate?has_content>
26 <#attempt>
27 <#assign publicationIsoDate = journalArticleDisplayDate?string["yyyy-MM-dd"] />
28 <#recover>
29 <#assign publicationIsoDate = "" />
30 </#attempt>
31</#if>
32<#assign publicationPageUrl = themeDisplay.getPortalURL() + "/w/" + .vars['reserved-article-url-title'].data />
33<#assign publicationDistributions = jsonFactoryUtil.createJSONArray() />
34
35
36
37
38
39<#assign themeColor="d29c4b" imgUrl="${themeDisplay.getPathThemeImages()}/publications/005.jpg"
40 categoryDisplay="Economic" />
41<#if (articleCatNames?size > 0)>
42 <#list articleCatNames as category>
43 <#if category.parentCategoryId==0>
44 <#if category.getVocabularyId()==statisticVocabulary.getVocabularyId()>
45 <#assign assetThemeCategoryId=category.categoryId?long />
46 <#assign
47 themeColor=assetCategoryPropService.getCategoryProperty(assetThemeCategoryId,"theme_color").getValue()
48 themeIconId=assetCategoryPropService.getCategoryProperty(assetThemeCategoryId,"theme_icon_id").getValue()
49 themeImgId=assetCategoryPropService.getCategoryProperty(assetThemeCategoryId,"portfolio-image").getValue() />
50
51 <#if themeImgId!="0">
52 <#assign imgDlFile=dlAppLocalServiceUtil.getFileEntry(themeImgId?number)
53 imgUrl=dlUtil.getPreviewURL(imgDlFile, imgDlFile.getFileVersion(), themeDisplay, '' ) />
54 </#if>
55 <#list category.name?split(" ") as catWords>
56 <#assign categoryDisplay = catWords/>
57 <#break>
58 </#list>
59 <#assign categoryDisplay = category.titleCurrentValue/>
60 </#if>
61 </#if>
62 </#list>
63
64 </#if>
65
66
67<#if file_upload.getSiblings()?has_content>
68
69 <#list file_upload.getSiblings() as medias>
70
71 <div class=" row mb-3 mx-0 bg-white d-flex w-100 align-items-center h-100 border rounded">
72 <div class="col-lg-1 p-0 ">
73 <div class="icon d-flex text-center p-1" style="background: #eee">
74 <div class="align-self-center mx-auto d-flex flex-column">
75 <img src="/documents/d/guest/${themeIconId}" height="30">
76 <label class="small mx-auto mb-0" style="color: #${themeColor} ;">
77 ${categoryDisplay}
78 </label>
79 </div>
80 </div>
81 </div>
82
83 <div class="col-8">
84 <p class="mb-0 py-3 publication-p">${journalArticleTitle}</p>
85 </div>
86
87 <div class="col-3 d-flex align-items-center justify-content-end">
88
89 <div class="my-2 right-icons d-flex align-items-center ">
90 <#if file_upload.getSiblings()?has_content>
91 <#list file_upload.getSiblings() as media>
92 <#if media.getData()?has_content>
93 <#assign fileData = media.getData()?trim />
94 <#assign fileEntry = "" />
95 <#assign downloadUrl = "" />
96 <#assign fileExtension = "" />
97
98 <#-- Yearbook stores document_library as JSON; older content may use a /documents/... path -->
99 <#if fileData?starts_with("{")>
100 <#assign fileJson = jsonFactoryUtil.createJSONObject(fileData) />
101 <#assign fileEntryId = fileJson.getLong("fileEntryId") />
102 <#if fileEntryId gt 0>
103 <#assign fileEntry = dlAppLocalServiceUtil.getFileEntry(fileEntryId) />
104 <#elseif fileJson.getString("uuid")?has_content>
105 <#assign fileGroupId = fileJson.getLong("groupId") />
106 <#if fileGroupId lte 0>
107 <#assign fileGroupId = groupId />
108 </#if>
109 <#assign fileEntry = dlAppLocalServiceUtil.getFileEntryByUuidAndGroupId(fileJson.getString("uuid"), fileGroupId) />
110 </#if>
111 <#else>
112 <#assign uuid = "" />
113 <#list fileData?split("/") as mediaDataSplit>
114 <#assign segment = mediaDataSplit?split("?")[0] />
115 <#if segment?matches("[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}")>
116 <#assign uuid = segment />
117 </#if>
118 </#list>
119 <#if uuid?has_content>
120 <#assign fileEntry = dlAppLocalServiceUtil.getFileEntryByUuidAndGroupId(uuid, groupId) />
121 </#if>
122 </#if>
123
124 <#if fileEntry?has_content>
125 <#assign downloadUrl = dlUtil.getPreviewURL(fileEntry, fileEntry.getFileVersion(), themeDisplay, "&download=true", false, true) />
126 <#assign fileExtension = fileEntry.getExtension()!"" />
127 <#if !fileExtension?has_content>
128 <#list fileEntry.getFileName()?split(".") as extention>
129 <#if extention?is_last>
130 <#assign fileExtension = extention />
131 <#break>
132 </#if>
133 </#list>
134 </#if>
135 <#elseif fileData?contains("/documents/")>
136 <#assign downloadUrl = fileData />
137 <#if !downloadUrl?contains("download=true")>
138 <#if downloadUrl?contains("?")>
139 <#assign downloadUrl = downloadUrl + "&download=true" />
140 <#else>
141 <#assign downloadUrl = downloadUrl + "?download=true" />
142 </#if>
143 </#if>
144 <#list fileData?split("?")[0]?split("/") as pathPart>
145 <#if pathPart?contains(".")>
146 <#list pathPart?split(".") as extention>
147 <#if extention?is_last>
148 <#assign fileExtension = extention />
149 </#if>
150 </#list>
151 </#if>
152 </#list>
153 </#if>
154
155 <#if downloadUrl?has_content>
156 <#assign encodingFormat = "application/octet-stream" />
157 <#if fileExtension?lower_case == "pdf">
158 <#assign encodingFormat = "application/pdf" />
159 <#elseif fileExtension?lower_case == "xls">
160 <#assign encodingFormat = "application/vnd.ms-excel" />
161 <#elseif fileExtension?lower_case == "xlsx">
162 <#assign encodingFormat = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" />
163 </#if>
164 <#assign distributionJson = jsonFactoryUtil.createJSONObject() />
165 <#assign void = distributionJson.put("@type", "DataDownload") />
166 <#assign void = distributionJson.put("contentUrl", downloadUrl) />
167 <#assign void = distributionJson.put("encodingFormat", encodingFormat) />
168 <#if fileExtension?has_content>
169 <#assign void = distributionJson.put("name", journalArticleTitle + " (" + fileExtension?upper_case + ")") />
170 </#if>
171 <#assign void = publicationDistributions.put(distributionJson) />
172
173 <#if fileExtension == "pdf" || fileExtension == "PDF">
174 <a class="ml-2" href="${downloadUrl}" target="_blank" style="order:1" aria-label="Download PDF">
175 <li class="list-item list-inline-item d-flex">
176 <img src=${themeDisplay.getPathThemeImages()}/publications/pdf-svgrepo-com.svg
177 class="d-flex mx-auto align-self-center" />
178 </li>
179 </a>
180 <#elseif fileExtension == "xls" || fileExtension == "XLS" ||
181 fileExtension == "xlsx" || fileExtension == "XLSX">
182 <a class="ml-2" href="${downloadUrl}" target="_blank" style="order:2" aria-label="Download Excel">
183 <li class="list-item list-inline-item d-flex">
184 <img src=${themeDisplay.getPathThemeImages()}/publications/excel-svgrepo-com.svg
185 class="d-flex mx-auto align-self-center" />
186 </li>
187 </a>
188 <#else>
189 <a class="ml-2" href="${downloadUrl}" target="_blank" style="order:3" aria-label="Download file">
190 <li class="list-item list-inline-item d-flex">
191 <i class="icon-file" style="font-size:27px"></i>
192 </li>
193 </a>
194 </#if>
195 </#if>
196 </#if>
197 </#list>
198 </#if>
199 </div>
200 </div>
201 </div>
202
203<#-- Schema.org Dataset JSON-LD (list view only — avoids duplicate grid+list scripts) -->
204<#assign datasetJson = jsonFactoryUtil.createJSONObject() />
205<#assign void = datasetJson.put("@context", "https://schema.org") />
206<#assign void = datasetJson.put("@type", "Dataset") />
207<#assign void = datasetJson.put("@id", publicationPageUrl + "#dataset") />
208<#assign void = datasetJson.put("name", journalArticleTitle) />
209<#assign void = datasetJson.put("url", publicationPageUrl) />
210<#assign publicationDescription = journalArticleTitle />
211<#if categoryDisplay?has_content>
212 <#assign publicationDescription = publicationDescription + " — " + categoryDisplay + " publication from Statistics Centre - Abu Dhabi (SCAD)." />
213<#else>
214 <#assign publicationDescription = publicationDescription + " — Statistical publication from Statistics Centre - Abu Dhabi (SCAD)." />
215</#if>
216<#if publicationIsoDate?has_content>
217 <#assign publicationDescription = publicationDescription + " Published on " + publicationIsoDate + "." />
218</#if>
219<#if publicationDistributions.length() gt 0>
220 <#assign publicationDescription = publicationDescription + " Downloadable PDF or Excel data file available." />
221</#if>
222<#if publicationDescription?length lt 50>
223 <#assign publicationDescription = publicationDescription + " Official SCAD statistical data is freely available to the public on the SCAD Download Publications catalog." />
224</#if>
225<#assign void = datasetJson.put("description", publicationDescription) />
226<#assign topicKeywords = categoryDisplay!"" />
227<#if topicKeywords?has_content>
228 <#assign void = datasetJson.put("keywords", topicKeywords) />
229 <#assign aboutThing = jsonFactoryUtil.createJSONObject() />
230 <#assign void = aboutThing.put("@type", "Thing") />
231 <#assign void = aboutThing.put("name", topicKeywords) />
232 <#assign void = datasetJson.put("about", aboutThing) />
233</#if>
234<#if publicationIsoDate?has_content>
235 <#assign void = datasetJson.put("datePublished", publicationIsoDate) />
236 <#assign void = datasetJson.put("dateModified", publicationIsoDate) />
237</#if>
238<#assign void = datasetJson.put("inLanguage", (themeDisplay.getLanguageId()?starts_with("ar"))?then("ar", "en")) />
239<#assign void = datasetJson.put("isAccessibleForFree", true) />
240<#assign void = datasetJson.put("license", "https://www.scad.gov.ae") />
241<#assign catalogRef = jsonFactoryUtil.createJSONObject() />
242<#assign void = catalogRef.put("@type", "DataCatalog") />
243<#assign void = catalogRef.put("name", "Download Publications") />
244<#assign void = catalogRef.put("url", themeDisplay.getPortalURL() + "/download-publications") />
245<#assign void = datasetJson.put("includedInDataCatalog", catalogRef) />
246<#assign creatorJson = jsonFactoryUtil.createJSONObject() />
247<#assign void = creatorJson.put("@type", "GovernmentOrganization") />
248<#assign void = creatorJson.put("name", "Statistics Centre - Abu Dhabi (SCAD)") />
249<#assign void = creatorJson.put("url", "https://www.scad.gov.ae") />
250<#assign void = datasetJson.put("creator", creatorJson) />
251<#assign void = datasetJson.put("publisher", creatorJson) />
252<#if publicationDistributions.length() gt 0>
253 <#assign void = datasetJson.put("distribution", publicationDistributions) />
254</#if>
255<script type="application/ld+json">
256${datasetJson.toString()}
257</script>
258
259<#break>
260
261
262</#list>
263</#if>
الرقم القياسي لأسعار الفنادق- شهري أكتوبر 2025
إحصاءات التنوع الحيوي والمناطق المحمية-سنوي 2024
الرقم القياسي لتكاليف الإنشاءات -ربع سنوي الربع الثالث 2025
إحصاءات التعليم-سنوي 2024
إحصاءات مصايد الأسماك - سنوي 2024
الرقم القياسي لقيمة وحدة الصادرات والواردات -ربع سنوي الربع الثالث 2025
الرقم القياسي لأسعار المنتجين -ربع سنوي الربع الثالث 2025
الرقم القياسي للإنتاج الصناعي -ربع سنوي الربع الثالث 2025
التجارة الخارجية غير النفطية عبر منافذ إمارة أبوظبي حسب النظام المنسق - شهري أكتوبر 2025
الرقم القياسي لأسعار الفنادق- شهري سبتمبر 2025
التجارة الخارجية غير النفطية عبر منافذ إمارة أبوظبي حسب النظام المنسق - شهري سبتمبر 2025
The following has evaluated to null or missing:
==> themeIconId [in template "20098#20124#1093349" at line 75, column 60]
----
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: ${themeIconId} [in template "20098#20124#1093349" at line 75, column 58]
----
1<#assign catLocalService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")
2 JournalArticleService=serviceLocator.findService("com.liferay.journal.service.JournalArticleResourceLocalService")
3 resourcePrimKey=JournalArticleService.getArticleResourcePrimKey(groupId, .vars['reserved-article-id'].data)
4 articleCatNames=catLocalService.getCategories("com.liferay.journal.model.JournalArticle", resourcePrimKey)
5 dlFileEntryService=serviceLocator.findService('com.liferay.document.library.kernel.service.DLFileEntryService')
6 assetVocabularyLocalService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService")
7 dlAppLocalServiceUtil=staticUtil["com.liferay.document.library.kernel.service.DLAppLocalServiceUtil"]
8 dlUtil=staticUtil["com.liferay.document.library.kernel.util.DLUtil"]
9 jsonFactoryUtil=staticUtil["com.liferay.portal.kernel.json.JSONFactoryUtil"]
10 statisticVocabulary=assetVocabularyLocalService.getGroupVocabulary(groupId?long,"statistics")
11 assetCategoryPropService=serviceLocator.findService("com.liferay.asset.category.property.service.AssetCategoryPropertyLocalService") />
12 <#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
13
14<#assign journalArticleTitle=.vars['reserved-article-title'].data />
15
16<#assign journalArticlele = JournalArticleLocalService.getArticle(groupId, .vars["reserved-article-id"].data) />
17<#assign journalArticleDisplayDate = journalArticlele.getExpandoBridge().getAttribute("UiissueDate")!"" />
18<#if !journalArticleDisplayDate?has_content>
19 <#assign journalArticleDisplayDate = journalArticlele.getExpandoBridge().getAttribute("UIIssueDate")!"" />
20</#if>
21<#if !journalArticleDisplayDate?has_content>
22 <#assign journalArticleDisplayDate = journalArticlele.getExpandoBridge().getAttribute("Uiissuedate")!"" />
23</#if>
24<#assign publicationIsoDate = "" />
25<#if journalArticleDisplayDate?has_content>
26 <#attempt>
27 <#assign publicationIsoDate = journalArticleDisplayDate?string["yyyy-MM-dd"] />
28 <#recover>
29 <#assign publicationIsoDate = "" />
30 </#attempt>
31</#if>
32<#assign publicationPageUrl = themeDisplay.getPortalURL() + "/w/" + .vars['reserved-article-url-title'].data />
33<#assign publicationDistributions = jsonFactoryUtil.createJSONArray() />
34
35
36
37
38
39<#assign themeColor="d29c4b" imgUrl="${themeDisplay.getPathThemeImages()}/publications/005.jpg"
40 categoryDisplay="Economic" />
41<#if (articleCatNames?size > 0)>
42 <#list articleCatNames as category>
43 <#if category.parentCategoryId==0>
44 <#if category.getVocabularyId()==statisticVocabulary.getVocabularyId()>
45 <#assign assetThemeCategoryId=category.categoryId?long />
46 <#assign
47 themeColor=assetCategoryPropService.getCategoryProperty(assetThemeCategoryId,"theme_color").getValue()
48 themeIconId=assetCategoryPropService.getCategoryProperty(assetThemeCategoryId,"theme_icon_id").getValue()
49 themeImgId=assetCategoryPropService.getCategoryProperty(assetThemeCategoryId,"portfolio-image").getValue() />
50
51 <#if themeImgId!="0">
52 <#assign imgDlFile=dlAppLocalServiceUtil.getFileEntry(themeImgId?number)
53 imgUrl=dlUtil.getPreviewURL(imgDlFile, imgDlFile.getFileVersion(), themeDisplay, '' ) />
54 </#if>
55 <#list category.name?split(" ") as catWords>
56 <#assign categoryDisplay = catWords/>
57 <#break>
58 </#list>
59 <#assign categoryDisplay = category.titleCurrentValue/>
60 </#if>
61 </#if>
62 </#list>
63
64 </#if>
65
66
67<#if file_upload.getSiblings()?has_content>
68
69 <#list file_upload.getSiblings() as medias>
70
71 <div class=" row mb-3 mx-0 bg-white d-flex w-100 align-items-center h-100 border rounded">
72 <div class="col-lg-1 p-0 ">
73 <div class="icon d-flex text-center p-1" style="background: #eee">
74 <div class="align-self-center mx-auto d-flex flex-column">
75 <img src="/documents/d/guest/${themeIconId}" height="30">
76 <label class="small mx-auto mb-0" style="color: #${themeColor} ;">
77 ${categoryDisplay}
78 </label>
79 </div>
80 </div>
81 </div>
82
83 <div class="col-8">
84 <p class="mb-0 py-3 publication-p">${journalArticleTitle}</p>
85 </div>
86
87 <div class="col-3 d-flex align-items-center justify-content-end">
88
89 <div class="my-2 right-icons d-flex align-items-center ">
90 <#if file_upload.getSiblings()?has_content>
91 <#list file_upload.getSiblings() as media>
92 <#if media.getData()?has_content>
93 <#assign fileData = media.getData()?trim />
94 <#assign fileEntry = "" />
95 <#assign downloadUrl = "" />
96 <#assign fileExtension = "" />
97
98 <#-- Yearbook stores document_library as JSON; older content may use a /documents/... path -->
99 <#if fileData?starts_with("{")>
100 <#assign fileJson = jsonFactoryUtil.createJSONObject(fileData) />
101 <#assign fileEntryId = fileJson.getLong("fileEntryId") />
102 <#if fileEntryId gt 0>
103 <#assign fileEntry = dlAppLocalServiceUtil.getFileEntry(fileEntryId) />
104 <#elseif fileJson.getString("uuid")?has_content>
105 <#assign fileGroupId = fileJson.getLong("groupId") />
106 <#if fileGroupId lte 0>
107 <#assign fileGroupId = groupId />
108 </#if>
109 <#assign fileEntry = dlAppLocalServiceUtil.getFileEntryByUuidAndGroupId(fileJson.getString("uuid"), fileGroupId) />
110 </#if>
111 <#else>
112 <#assign uuid = "" />
113 <#list fileData?split("/") as mediaDataSplit>
114 <#assign segment = mediaDataSplit?split("?")[0] />
115 <#if segment?matches("[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}")>
116 <#assign uuid = segment />
117 </#if>
118 </#list>
119 <#if uuid?has_content>
120 <#assign fileEntry = dlAppLocalServiceUtil.getFileEntryByUuidAndGroupId(uuid, groupId) />
121 </#if>
122 </#if>
123
124 <#if fileEntry?has_content>
125 <#assign downloadUrl = dlUtil.getPreviewURL(fileEntry, fileEntry.getFileVersion(), themeDisplay, "&download=true", false, true) />
126 <#assign fileExtension = fileEntry.getExtension()!"" />
127 <#if !fileExtension?has_content>
128 <#list fileEntry.getFileName()?split(".") as extention>
129 <#if extention?is_last>
130 <#assign fileExtension = extention />
131 <#break>
132 </#if>
133 </#list>
134 </#if>
135 <#elseif fileData?contains("/documents/")>
136 <#assign downloadUrl = fileData />
137 <#if !downloadUrl?contains("download=true")>
138 <#if downloadUrl?contains("?")>
139 <#assign downloadUrl = downloadUrl + "&download=true" />
140 <#else>
141 <#assign downloadUrl = downloadUrl + "?download=true" />
142 </#if>
143 </#if>
144 <#list fileData?split("?")[0]?split("/") as pathPart>
145 <#if pathPart?contains(".")>
146 <#list pathPart?split(".") as extention>
147 <#if extention?is_last>
148 <#assign fileExtension = extention />
149 </#if>
150 </#list>
151 </#if>
152 </#list>
153 </#if>
154
155 <#if downloadUrl?has_content>
156 <#assign encodingFormat = "application/octet-stream" />
157 <#if fileExtension?lower_case == "pdf">
158 <#assign encodingFormat = "application/pdf" />
159 <#elseif fileExtension?lower_case == "xls">
160 <#assign encodingFormat = "application/vnd.ms-excel" />
161 <#elseif fileExtension?lower_case == "xlsx">
162 <#assign encodingFormat = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" />
163 </#if>
164 <#assign distributionJson = jsonFactoryUtil.createJSONObject() />
165 <#assign void = distributionJson.put("@type", "DataDownload") />
166 <#assign void = distributionJson.put("contentUrl", downloadUrl) />
167 <#assign void = distributionJson.put("encodingFormat", encodingFormat) />
168 <#if fileExtension?has_content>
169 <#assign void = distributionJson.put("name", journalArticleTitle + " (" + fileExtension?upper_case + ")") />
170 </#if>
171 <#assign void = publicationDistributions.put(distributionJson) />
172
173 <#if fileExtension == "pdf" || fileExtension == "PDF">
174 <a class="ml-2" href="${downloadUrl}" target="_blank" style="order:1" aria-label="Download PDF">
175 <li class="list-item list-inline-item d-flex">
176 <img src=${themeDisplay.getPathThemeImages()}/publications/pdf-svgrepo-com.svg
177 class="d-flex mx-auto align-self-center" />
178 </li>
179 </a>
180 <#elseif fileExtension == "xls" || fileExtension == "XLS" ||
181 fileExtension == "xlsx" || fileExtension == "XLSX">
182 <a class="ml-2" href="${downloadUrl}" target="_blank" style="order:2" aria-label="Download Excel">
183 <li class="list-item list-inline-item d-flex">
184 <img src=${themeDisplay.getPathThemeImages()}/publications/excel-svgrepo-com.svg
185 class="d-flex mx-auto align-self-center" />
186 </li>
187 </a>
188 <#else>
189 <a class="ml-2" href="${downloadUrl}" target="_blank" style="order:3" aria-label="Download file">
190 <li class="list-item list-inline-item d-flex">
191 <i class="icon-file" style="font-size:27px"></i>
192 </li>
193 </a>
194 </#if>
195 </#if>
196 </#if>
197 </#list>
198 </#if>
199 </div>
200 </div>
201 </div>
202
203<#-- Schema.org Dataset JSON-LD (list view only — avoids duplicate grid+list scripts) -->
204<#assign datasetJson = jsonFactoryUtil.createJSONObject() />
205<#assign void = datasetJson.put("@context", "https://schema.org") />
206<#assign void = datasetJson.put("@type", "Dataset") />
207<#assign void = datasetJson.put("@id", publicationPageUrl + "#dataset") />
208<#assign void = datasetJson.put("name", journalArticleTitle) />
209<#assign void = datasetJson.put("url", publicationPageUrl) />
210<#assign publicationDescription = journalArticleTitle />
211<#if categoryDisplay?has_content>
212 <#assign publicationDescription = publicationDescription + " — " + categoryDisplay + " publication from Statistics Centre - Abu Dhabi (SCAD)." />
213<#else>
214 <#assign publicationDescription = publicationDescription + " — Statistical publication from Statistics Centre - Abu Dhabi (SCAD)." />
215</#if>
216<#if publicationIsoDate?has_content>
217 <#assign publicationDescription = publicationDescription + " Published on " + publicationIsoDate + "." />
218</#if>
219<#if publicationDistributions.length() gt 0>
220 <#assign publicationDescription = publicationDescription + " Downloadable PDF or Excel data file available." />
221</#if>
222<#if publicationDescription?length lt 50>
223 <#assign publicationDescription = publicationDescription + " Official SCAD statistical data is freely available to the public on the SCAD Download Publications catalog." />
224</#if>
225<#assign void = datasetJson.put("description", publicationDescription) />
226<#assign topicKeywords = categoryDisplay!"" />
227<#if topicKeywords?has_content>
228 <#assign void = datasetJson.put("keywords", topicKeywords) />
229 <#assign aboutThing = jsonFactoryUtil.createJSONObject() />
230 <#assign void = aboutThing.put("@type", "Thing") />
231 <#assign void = aboutThing.put("name", topicKeywords) />
232 <#assign void = datasetJson.put("about", aboutThing) />
233</#if>
234<#if publicationIsoDate?has_content>
235 <#assign void = datasetJson.put("datePublished", publicationIsoDate) />
236 <#assign void = datasetJson.put("dateModified", publicationIsoDate) />
237</#if>
238<#assign void = datasetJson.put("inLanguage", (themeDisplay.getLanguageId()?starts_with("ar"))?then("ar", "en")) />
239<#assign void = datasetJson.put("isAccessibleForFree", true) />
240<#assign void = datasetJson.put("license", "https://www.scad.gov.ae") />
241<#assign catalogRef = jsonFactoryUtil.createJSONObject() />
242<#assign void = catalogRef.put("@type", "DataCatalog") />
243<#assign void = catalogRef.put("name", "Download Publications") />
244<#assign void = catalogRef.put("url", themeDisplay.getPortalURL() + "/download-publications") />
245<#assign void = datasetJson.put("includedInDataCatalog", catalogRef) />
246<#assign creatorJson = jsonFactoryUtil.createJSONObject() />
247<#assign void = creatorJson.put("@type", "GovernmentOrganization") />
248<#assign void = creatorJson.put("name", "Statistics Centre - Abu Dhabi (SCAD)") />
249<#assign void = creatorJson.put("url", "https://www.scad.gov.ae") />
250<#assign void = datasetJson.put("creator", creatorJson) />
251<#assign void = datasetJson.put("publisher", creatorJson) />
252<#if publicationDistributions.length() gt 0>
253 <#assign void = datasetJson.put("distribution", publicationDistributions) />
254</#if>
255<script type="application/ld+json">
256${datasetJson.toString()}
257</script>
258
259<#break>
260
261
262</#list>
263</#if>
الرقم القياسي لأسعار المستهلك-شهري أكتوبر 2025
إحصاءات المناخ-شهري سبتمبر 2025
الرقم القياسي لأسعار المستهلك-شهري سبتمبر 2025
The following has evaluated to null or missing:
==> themeIconId [in template "20098#20124#1093349" at line 75, column 60]
----
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: ${themeIconId} [in template "20098#20124#1093349" at line 75, column 58]
----
1<#assign catLocalService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")
2 JournalArticleService=serviceLocator.findService("com.liferay.journal.service.JournalArticleResourceLocalService")
3 resourcePrimKey=JournalArticleService.getArticleResourcePrimKey(groupId, .vars['reserved-article-id'].data)
4 articleCatNames=catLocalService.getCategories("com.liferay.journal.model.JournalArticle", resourcePrimKey)
5 dlFileEntryService=serviceLocator.findService('com.liferay.document.library.kernel.service.DLFileEntryService')
6 assetVocabularyLocalService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService")
7 dlAppLocalServiceUtil=staticUtil["com.liferay.document.library.kernel.service.DLAppLocalServiceUtil"]
8 dlUtil=staticUtil["com.liferay.document.library.kernel.util.DLUtil"]
9 jsonFactoryUtil=staticUtil["com.liferay.portal.kernel.json.JSONFactoryUtil"]
10 statisticVocabulary=assetVocabularyLocalService.getGroupVocabulary(groupId?long,"statistics")
11 assetCategoryPropService=serviceLocator.findService("com.liferay.asset.category.property.service.AssetCategoryPropertyLocalService") />
12 <#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
13
14<#assign journalArticleTitle=.vars['reserved-article-title'].data />
15
16<#assign journalArticlele = JournalArticleLocalService.getArticle(groupId, .vars["reserved-article-id"].data) />
17<#assign journalArticleDisplayDate = journalArticlele.getExpandoBridge().getAttribute("UiissueDate")!"" />
18<#if !journalArticleDisplayDate?has_content>
19 <#assign journalArticleDisplayDate = journalArticlele.getExpandoBridge().getAttribute("UIIssueDate")!"" />
20</#if>
21<#if !journalArticleDisplayDate?has_content>
22 <#assign journalArticleDisplayDate = journalArticlele.getExpandoBridge().getAttribute("Uiissuedate")!"" />
23</#if>
24<#assign publicationIsoDate = "" />
25<#if journalArticleDisplayDate?has_content>
26 <#attempt>
27 <#assign publicationIsoDate = journalArticleDisplayDate?string["yyyy-MM-dd"] />
28 <#recover>
29 <#assign publicationIsoDate = "" />
30 </#attempt>
31</#if>
32<#assign publicationPageUrl = themeDisplay.getPortalURL() + "/w/" + .vars['reserved-article-url-title'].data />
33<#assign publicationDistributions = jsonFactoryUtil.createJSONArray() />
34
35
36
37
38
39<#assign themeColor="d29c4b" imgUrl="${themeDisplay.getPathThemeImages()}/publications/005.jpg"
40 categoryDisplay="Economic" />
41<#if (articleCatNames?size > 0)>
42 <#list articleCatNames as category>
43 <#if category.parentCategoryId==0>
44 <#if category.getVocabularyId()==statisticVocabulary.getVocabularyId()>
45 <#assign assetThemeCategoryId=category.categoryId?long />
46 <#assign
47 themeColor=assetCategoryPropService.getCategoryProperty(assetThemeCategoryId,"theme_color").getValue()
48 themeIconId=assetCategoryPropService.getCategoryProperty(assetThemeCategoryId,"theme_icon_id").getValue()
49 themeImgId=assetCategoryPropService.getCategoryProperty(assetThemeCategoryId,"portfolio-image").getValue() />
50
51 <#if themeImgId!="0">
52 <#assign imgDlFile=dlAppLocalServiceUtil.getFileEntry(themeImgId?number)
53 imgUrl=dlUtil.getPreviewURL(imgDlFile, imgDlFile.getFileVersion(), themeDisplay, '' ) />
54 </#if>
55 <#list category.name?split(" ") as catWords>
56 <#assign categoryDisplay = catWords/>
57 <#break>
58 </#list>
59 <#assign categoryDisplay = category.titleCurrentValue/>
60 </#if>
61 </#if>
62 </#list>
63
64 </#if>
65
66
67<#if file_upload.getSiblings()?has_content>
68
69 <#list file_upload.getSiblings() as medias>
70
71 <div class=" row mb-3 mx-0 bg-white d-flex w-100 align-items-center h-100 border rounded">
72 <div class="col-lg-1 p-0 ">
73 <div class="icon d-flex text-center p-1" style="background: #eee">
74 <div class="align-self-center mx-auto d-flex flex-column">
75 <img src="/documents/d/guest/${themeIconId}" height="30">
76 <label class="small mx-auto mb-0" style="color: #${themeColor} ;">
77 ${categoryDisplay}
78 </label>
79 </div>
80 </div>
81 </div>
82
83 <div class="col-8">
84 <p class="mb-0 py-3 publication-p">${journalArticleTitle}</p>
85 </div>
86
87 <div class="col-3 d-flex align-items-center justify-content-end">
88
89 <div class="my-2 right-icons d-flex align-items-center ">
90 <#if file_upload.getSiblings()?has_content>
91 <#list file_upload.getSiblings() as media>
92 <#if media.getData()?has_content>
93 <#assign fileData = media.getData()?trim />
94 <#assign fileEntry = "" />
95 <#assign downloadUrl = "" />
96 <#assign fileExtension = "" />
97
98 <#-- Yearbook stores document_library as JSON; older content may use a /documents/... path -->
99 <#if fileData?starts_with("{")>
100 <#assign fileJson = jsonFactoryUtil.createJSONObject(fileData) />
101 <#assign fileEntryId = fileJson.getLong("fileEntryId") />
102 <#if fileEntryId gt 0>
103 <#assign fileEntry = dlAppLocalServiceUtil.getFileEntry(fileEntryId) />
104 <#elseif fileJson.getString("uuid")?has_content>
105 <#assign fileGroupId = fileJson.getLong("groupId") />
106 <#if fileGroupId lte 0>
107 <#assign fileGroupId = groupId />
108 </#if>
109 <#assign fileEntry = dlAppLocalServiceUtil.getFileEntryByUuidAndGroupId(fileJson.getString("uuid"), fileGroupId) />
110 </#if>
111 <#else>
112 <#assign uuid = "" />
113 <#list fileData?split("/") as mediaDataSplit>
114 <#assign segment = mediaDataSplit?split("?")[0] />
115 <#if segment?matches("[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}")>
116 <#assign uuid = segment />
117 </#if>
118 </#list>
119 <#if uuid?has_content>
120 <#assign fileEntry = dlAppLocalServiceUtil.getFileEntryByUuidAndGroupId(uuid, groupId) />
121 </#if>
122 </#if>
123
124 <#if fileEntry?has_content>
125 <#assign downloadUrl = dlUtil.getPreviewURL(fileEntry, fileEntry.getFileVersion(), themeDisplay, "&download=true", false, true) />
126 <#assign fileExtension = fileEntry.getExtension()!"" />
127 <#if !fileExtension?has_content>
128 <#list fileEntry.getFileName()?split(".") as extention>
129 <#if extention?is_last>
130 <#assign fileExtension = extention />
131 <#break>
132 </#if>
133 </#list>
134 </#if>
135 <#elseif fileData?contains("/documents/")>
136 <#assign downloadUrl = fileData />
137 <#if !downloadUrl?contains("download=true")>
138 <#if downloadUrl?contains("?")>
139 <#assign downloadUrl = downloadUrl + "&download=true" />
140 <#else>
141 <#assign downloadUrl = downloadUrl + "?download=true" />
142 </#if>
143 </#if>
144 <#list fileData?split("?")[0]?split("/") as pathPart>
145 <#if pathPart?contains(".")>
146 <#list pathPart?split(".") as extention>
147 <#if extention?is_last>
148 <#assign fileExtension = extention />
149 </#if>
150 </#list>
151 </#if>
152 </#list>
153 </#if>
154
155 <#if downloadUrl?has_content>
156 <#assign encodingFormat = "application/octet-stream" />
157 <#if fileExtension?lower_case == "pdf">
158 <#assign encodingFormat = "application/pdf" />
159 <#elseif fileExtension?lower_case == "xls">
160 <#assign encodingFormat = "application/vnd.ms-excel" />
161 <#elseif fileExtension?lower_case == "xlsx">
162 <#assign encodingFormat = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" />
163 </#if>
164 <#assign distributionJson = jsonFactoryUtil.createJSONObject() />
165 <#assign void = distributionJson.put("@type", "DataDownload") />
166 <#assign void = distributionJson.put("contentUrl", downloadUrl) />
167 <#assign void = distributionJson.put("encodingFormat", encodingFormat) />
168 <#if fileExtension?has_content>
169 <#assign void = distributionJson.put("name", journalArticleTitle + " (" + fileExtension?upper_case + ")") />
170 </#if>
171 <#assign void = publicationDistributions.put(distributionJson) />
172
173 <#if fileExtension == "pdf" || fileExtension == "PDF">
174 <a class="ml-2" href="${downloadUrl}" target="_blank" style="order:1" aria-label="Download PDF">
175 <li class="list-item list-inline-item d-flex">
176 <img src=${themeDisplay.getPathThemeImages()}/publications/pdf-svgrepo-com.svg
177 class="d-flex mx-auto align-self-center" />
178 </li>
179 </a>
180 <#elseif fileExtension == "xls" || fileExtension == "XLS" ||
181 fileExtension == "xlsx" || fileExtension == "XLSX">
182 <a class="ml-2" href="${downloadUrl}" target="_blank" style="order:2" aria-label="Download Excel">
183 <li class="list-item list-inline-item d-flex">
184 <img src=${themeDisplay.getPathThemeImages()}/publications/excel-svgrepo-com.svg
185 class="d-flex mx-auto align-self-center" />
186 </li>
187 </a>
188 <#else>
189 <a class="ml-2" href="${downloadUrl}" target="_blank" style="order:3" aria-label="Download file">
190 <li class="list-item list-inline-item d-flex">
191 <i class="icon-file" style="font-size:27px"></i>
192 </li>
193 </a>
194 </#if>
195 </#if>
196 </#if>
197 </#list>
198 </#if>
199 </div>
200 </div>
201 </div>
202
203<#-- Schema.org Dataset JSON-LD (list view only — avoids duplicate grid+list scripts) -->
204<#assign datasetJson = jsonFactoryUtil.createJSONObject() />
205<#assign void = datasetJson.put("@context", "https://schema.org") />
206<#assign void = datasetJson.put("@type", "Dataset") />
207<#assign void = datasetJson.put("@id", publicationPageUrl + "#dataset") />
208<#assign void = datasetJson.put("name", journalArticleTitle) />
209<#assign void = datasetJson.put("url", publicationPageUrl) />
210<#assign publicationDescription = journalArticleTitle />
211<#if categoryDisplay?has_content>
212 <#assign publicationDescription = publicationDescription + " — " + categoryDisplay + " publication from Statistics Centre - Abu Dhabi (SCAD)." />
213<#else>
214 <#assign publicationDescription = publicationDescription + " — Statistical publication from Statistics Centre - Abu Dhabi (SCAD)." />
215</#if>
216<#if publicationIsoDate?has_content>
217 <#assign publicationDescription = publicationDescription + " Published on " + publicationIsoDate + "." />
218</#if>
219<#if publicationDistributions.length() gt 0>
220 <#assign publicationDescription = publicationDescription + " Downloadable PDF or Excel data file available." />
221</#if>
222<#if publicationDescription?length lt 50>
223 <#assign publicationDescription = publicationDescription + " Official SCAD statistical data is freely available to the public on the SCAD Download Publications catalog." />
224</#if>
225<#assign void = datasetJson.put("description", publicationDescription) />
226<#assign topicKeywords = categoryDisplay!"" />
227<#if topicKeywords?has_content>
228 <#assign void = datasetJson.put("keywords", topicKeywords) />
229 <#assign aboutThing = jsonFactoryUtil.createJSONObject() />
230 <#assign void = aboutThing.put("@type", "Thing") />
231 <#assign void = aboutThing.put("name", topicKeywords) />
232 <#assign void = datasetJson.put("about", aboutThing) />
233</#if>
234<#if publicationIsoDate?has_content>
235 <#assign void = datasetJson.put("datePublished", publicationIsoDate) />
236 <#assign void = datasetJson.put("dateModified", publicationIsoDate) />
237</#if>
238<#assign void = datasetJson.put("inLanguage", (themeDisplay.getLanguageId()?starts_with("ar"))?then("ar", "en")) />
239<#assign void = datasetJson.put("isAccessibleForFree", true) />
240<#assign void = datasetJson.put("license", "https://www.scad.gov.ae") />
241<#assign catalogRef = jsonFactoryUtil.createJSONObject() />
242<#assign void = catalogRef.put("@type", "DataCatalog") />
243<#assign void = catalogRef.put("name", "Download Publications") />
244<#assign void = catalogRef.put("url", themeDisplay.getPortalURL() + "/download-publications") />
245<#assign void = datasetJson.put("includedInDataCatalog", catalogRef) />
246<#assign creatorJson = jsonFactoryUtil.createJSONObject() />
247<#assign void = creatorJson.put("@type", "GovernmentOrganization") />
248<#assign void = creatorJson.put("name", "Statistics Centre - Abu Dhabi (SCAD)") />
249<#assign void = creatorJson.put("url", "https://www.scad.gov.ae") />
250<#assign void = datasetJson.put("creator", creatorJson) />
251<#assign void = datasetJson.put("publisher", creatorJson) />
252<#if publicationDistributions.length() gt 0>
253 <#assign void = datasetJson.put("distribution", publicationDistributions) />
254</#if>
255<script type="application/ld+json">
256${datasetJson.toString()}
257</script>
258
259<#break>
260
261
262</#list>
263</#if>
إحصاءات جودة المياه البحرية- سنوي 2024
إحصاءات المناخ-شهري أغسطس 2025
التجارة الخارجية غير النفطية عبر منافذ إمارة أبوظبي حسب النظام المنسق - شهري أغسطس 2025
الرقم القياسي لأسعار الفنادق- شهري أغسطس 2025
الناتج المحلي الإجمالي حسب الإنتاج -ربع سنوي الربع الثاني 2025
إحصاءات البنوك -ربع سنوي الربع الثاني 2025
الرقم القياسي للإنتاج الصناعي -ربع سنوي الربع الثاني 2025
الرقم القياسي لأسعار المنتجين -ربع سنوي الربع الثاني 2025
إحصاءات المناخ-شهري يوليو 2025
الرقم القياسي لقيمة وحدة الصادرات والواردات -ربع سنوي الربع الثاني 2025
الرقم القياسي لتكاليف الإنشاءات -ربع سنوي الربع الثاني 2025
إحصاءات الوفيات 2022
إحصاءات الوفيات 2021
إحصاءات الوفيات 2019
إحصاءات الزواج والطلاق 2016
إحصاءات الزواج والطلاق 2015
إحصاءات الزواج والطلاق 2014
إحصاءات المواليد 2013
إحصاءات الزواج والطلاق 2013
إحصاءات الوفيات 2013
إحصاءات الوفيات 2012
إحصاءات المواليد 2012
إحصاءات الوفيات 2011
إحصاءات المواليد 2011
إحصاءات المواليد 2010
إحصاءات الوفيات 2010
هل وجدت هذا المحتوى مفيدًا؟
يسعدنا أن نتلقى ملاحظاتك حتى نتمكن من تحسين تجربتك.