IFAD Asset Request Portlet

ناشر الأصول

حصل خطأ عند معالجة القالب.
Can't convert this string to number: "١٣٫٥٤"
The blamed expression:
==> cofinancierAmount?number  [in template "10154#10192#PROJECT" at line 156, column 50]

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #if cofinancierAmount?number?double <...  [in template "10154#10192#PROJECT" at line 156, column 45]
----
1<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")> 
2<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")> 
3<#assign assetVocabularyLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService")> 
4<#assign groupLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService") /> 
5<#assign classNameLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.ClassNameLocalService") /> 
6 
7<#assign globalGroup = groupLocalService.getFriendlyURLGroup(companyId, "/global")> 
8<#assign destMacroClassId = classNameLocalService.getClassNameId("com.liferay.asset.kernel.model.AssetEntry")> 
9<#include "_TEMPLATE_CONTEXT_/${companyId}/${globalGroup.groupId}/${destMacroClassId}/ASSET_ENTRY_MACROS" /> 
10 
11<#assign countries_vocabulary = assetVocabularyLocalService.getGroupVocabulary(company.getGroupId(), "Countries")> 
12<#assign projects_vocabulary = assetVocabularyLocalService.getGroupVocabulary(company.getGroupId(), "Project")> 
13 
14<#assign article = journalArticleLocalService.getArticle(getterUtil.getLong(articleGroupId), .vars['reserved-article-id'].data)> 
15<#assign asset = assetEntryLocalService.getEntry('com.liferay.journal.model.JournalArticle', article.resourcePrimKey)> 
16 
17<div class="container project-container generic-container"> 
18    <div class="row project-structure"> 
19 
20        <div class="col-xl-10 col-lg-12 offset-xl-1"> 
21            <div class="row"> 
22                <div class="col-lg-6 col-md-12 pub-header"> 
23                    <#if project_title.getData()?has_content> 
24                        <h1>${project_title.getData()}</h1> 
25                    <#elseif article.getTitle(locale)?has_content> 
26                        <h1>${article.getTitle(locale)}</h1> 
27                    <#else> 
28                        <h1>${abstract_title.getData()}</h1> 
29                    </#if> 
30 
31                    <div class="main-content">${main_content.getData()}</div> 
32                </div> 
33 
34                <div class="col-lg-5 col-md-12 offset-lg-1"> 
35                    <div class="shadow mb-3 pb-3 bg-white rounded project-shadowbox"> 
36                        <#if mapStream.getData()?has_content> 
37                            <img class="img-fluid w-100 project-map-image" src="${mapStream.getData()}"/> 
38                        </#if> 
39                        <div class="m-3 project-row"> 
40 
41                            <#if status.getData()?has_content> 
42                                <dd class="project-status mt-3"> 
43                                    <#if status.getData() == "B" || status.getData() == "C" || status.getData() == 
44                                    "D" || status.getData() == "I" || status.getData() == 
45                                    "J" || status.getData() == "K"> 
46                                        <span><@liferay.language key="status" />: <@liferay.language key="custom-msg-planned" /></span> 
47                                    <#elseif status.getData() == "G" || status.getData() == 
48                                    "H" || status.getData() =="U" || status.getData() =="Z"> 
49                                        <span><@liferay.language key="status" />: 
50                                            <@liferay.language key="custom-msg-ongoing" /></span> 
51                                    <#elseif status.getData() == "M" || status.getData() == "N"> 
52                                        <span><@liferay.language key="status" />: <@liferay.language key="custom-msg-closed" /></span> 
53                                    <#elseif status.getData() == "E"> 
54                                        <span><@liferay.language key="status" />: <@liferay.language key="approved" /></span> 
55                                    <#elseif status.getData() == "F"> 
56                                        <span><@liferay.language key="status" />: <@liferay.language key="custom-msg-signed" /></span> 
57                                    <#else> 
58                                        <span><@liferay.language key="status" />: <@liferay.language key="custom-msg-not-planned" /></span> 
59                                    </#if> 
60                                </dd> 
61                            </#if> 
62 
63                            <#if type.getData() == "INVPR"> 
64                                <#list asset.getCategories() as category> 
65                                    <#if category.getVocabularyId() == countries_vocabulary.getVocabularyId()> 
66                                        <#--<div class="project-row">--> 
67                                        <dt class="project-row-title"><@liferay.language key="country" /></dt> 
68                                        <dd class="project-row-text"> 
69                                            <a href="${getCountryUrl(category, locale)}">${category.getDescription(locale)}</a> 
70                                        </dd> 
71                                        <#--#break--> 
72                                    </#if> 
73                                </#list> 
74                            </#if> 
75 
76                            <#if status_date?? && status_date.getData()?has_content && status_date.getData() != "null"> 
77                                <#assign formatted_status_date_obj = 
78                                dateUtil.parseDate("yyyy-MM-dd",  status_date.getData(), locale)> 
79 
80                                <#assign formatted_status_date = 
81                                dateUtil.getDate(formatted_status_date_obj, "dd MMMM yyyy", locale)> 
82 
83                                <dt class="project-row-title"><@liferay.language key="approval-date" /></dt> 
84                                <dd class="project-row-text">${formatted_status_date}</dd> 
85                            </#if> 
86 
87                            <#if type.getData() == "GRANT" && beneficiary.getData()?has_content> 
88                                <dt class="project-row-title"><@liferay.language key="recipient" /></dt> 
89                                <dd class="project-row-text">${beneficiary.getData()}</dd> 
90                            </#if> 
91 
92                            <#-- Don't display duration for "planned" projects--> 
93                            <#if !(status.getData() == "B" || status.getData() == "C" || status.getData() == 
94                            "D" || status.getData() == "I" || status.getData() == "J" || status.getData() == 
95                            "K")> 
96                                <#if duration.getData()?has_content> 
97                                    <dt class="project-row-title"><@liferay.language key="duration" /></dt> 
98                                    <dd class="project-row-text">${duration.getData()}</dd> 
99                                </#if> 
100                            </#if> 
101 
102                            <#if sector.getData()?has_content && sector.getData() != " "> 
103                                <dt class="project-row-title"><@liferay.language key="sector" /></dt> 
104                                <dd class="project-row-text"><@liferay.language key="sector.${sector.getData()?lower_case}" /></dd> 
105                            </#if> 
106 
107                            <#if current_amount.getData()?has_content> 
108                                <#assign totalProjectCost = current_amount.getData()?replace(",",".")> 
109 
110                                <dt class="project-row-title"> 
111                                    <#if type.getData() == "GRANT"> 
112                                        <@liferay.language key="total-cost" /> 
113                                    <#elseif type.getData() == "INVPR"> 
114                                        <@liferay.language key="total-project-cost" /> 
115                                    </#if> 
116                                </dt> 
117                                <dd class="project-row-text"> 
118                                    <#if totalProjectCost?number?double < 2.0> 
119                                        ${languageUtil.format(locale, "million-usd", ifadNumberFormatter.format(locale, totalProjectCost?number?double))} 
120                                    <#else> 
121                                        ${languageUtil.format(locale, "millions-usd", ifadNumberFormatter.format(locale, totalProjectCost?number?double))} 
122                                    </#if> 
123                                </dd> 
124                            </#if> 
125 
126                            <#if current_ifad_amount?? && current_ifad_amount.getData()?has_content> 
127                                <#assign ifadFinancing = current_ifad_amount.getData()?replace(",",".")> 
128 
129                                <dt class="project-row-title"> 
130                                    <#if type.getData() == "GRANT"> 
131                                        <@liferay.language key="ifad-grant-amount" /> 
132                                    <#elseif type.getData() == "INVPR"> 
133                                        <@liferay.language key="ifad-financing" /> 
134                                    </#if> 
135                                </dt> 
136                                <dd class="project-row-text"> 
137                                    <#if ifadFinancing?number?double < 2.0> 
138                                        ${languageUtil.format(locale, "million-usd", ifadNumberFormatter.format(locale, ifadFinancing?number?double))} 
139                                    <#else> 
140                                        ${languageUtil.format(locale, "millions-usd", ifadNumberFormatter.format(locale, ifadFinancing?number?double))} 
141                                    </#if> 
142                                </dd> 
143                            </#if> 
144 
145                            <#if type.getData() == "INVPR"> 
146                                <#if cofinancier_int?? && 
147                                cofinancier_int.getData()?has_content && 
148                                cofinancier_int.getSiblings()?has_content && 
149                                cofinancier_int.getSiblings()[0].getData()?has_content > 
150 
151                                    <dt class="project-row-title"><@liferay.language key="co-financiers-int" /></dt> 
152                                    <#list cofinancier_int.getSiblings() as cofinancier_item> 
153                                        <#assign cofinancierAmount = cofinancier_item.cofinancier_int_amount.getData()?replace(",",".")> 
154 
155                                        <dd class="project-row-text"> 
156                                            <#if cofinancierAmount?number?double < 2.0> 
157                                                ${cofinancier_item.getData()} ${languageUtil.format(locale, "million-usd", ifadNumberFormatter.format(locale, cofinancierAmount?number?double))} 
158                                            <#else> 
159                                                ${cofinancier_item.getData()} ${languageUtil.format(locale, "millions-usd", ifadNumberFormatter.format(locale, cofinancierAmount?number?double))} 
160                                            </#if> 
161                                        </dd> 
162                                    </#list> 
163                                </#if> 
164 
165                                <#if cofinancier_dom?? && 
166                                cofinancier_dom.getData()?has_content && 
167                                cofinancier_dom.getSiblings()?has_content && 
168                                cofinancier_dom.getSiblings()[0].getData()?has_content> 
169 
170                                    <dt class="project-row-title"><@liferay.language key="co-financiers-dom" /></dt> 
171                                    <#list cofinancier_dom.getSiblings() as cofinancier_item> 
172                                        <#assign cofinancierAmount = cofinancier_item.cofinancier_dom_amount.getData()?replace(",",".")> 
173 
174                                        <dd class="project-row-text"> 
175                                            <#if cofinancierAmount?number?double < 2.0> 
176                                                ${cofinancier_item.getData()} ${languageUtil.format(locale, "million-usd", ifadNumberFormatter.format(locale, cofinancierAmount?number?double))} 
177                                            <#else> 
178                                                ${cofinancier_item.getData()} ${languageUtil.format(locale, "millions-usd", ifadNumberFormatter.format(locale, cofinancierAmount?number?double))} 
179                                            </#if> 
180                                        </dd> 
181                                    </#list> 
182                                </#if> 
183 
184                                <#if financing_gap?? && financing_gap.getData()?has_content && 
185                                financing_gap.getData() != "null"> 
186                                    <dt class="project-row-title"><@liferay.language key="financing-gap" /></dt> 
187 
188                                    <#assign financingGap = financing_gap.getData()?replace(",",".")?number?double> 
189 
190                                    <dd class="project-row-text"> 
191                                        <#if financingGap < 2.0> 
192                                            ${languageUtil.format(locale, "million-usd", ifadNumberFormatter.format(locale, financingGap))} 
193                                        <#else> 
194                                            ${languageUtil.format(locale, "millions-usd", ifadNumberFormatter.format(locale, financingGap))} 
195                                        </#if> 
196                                    </dd> 
197                                </#if> 
198 
199                                <#if lending_terms?? && lending_terms.getData()?has_content> 
200                                    <dt class="project-row-title"><@liferay.language key="financing-terms" /></dt> 
201                                    <dd class="project-row-text"> 
202                                        <#if lending_terms.getData() == "null"> 
203                                            <@liferay.language key="not-available" /> 
204                                        <#else> 
205                                            <@liferay.language key="lending-term.${lending_terms.getData()?lower_case}" /> 
206                                        </#if> 
207                                    </dd> 
208                                </#if> 
209                            </#if> 
210 
211                            <#list asset.getCategories() as category> 
212                                <#if category.getVocabularyId() == projects_vocabulary.getVocabularyId()> 
213                                    <dt class="project-row-title"> 
214                                        <#if type.getData() == "GRANT"> 
215                                            <@liferay.language key="grant-id" /> 
216                                        <#elseif type.getData() == "INVPR"> 
217                                            <@liferay.language key="project-id" /> 
218                                        </#if> 
219                                    </dt> 
220                                    <dd class="project-row-text">${category.name}</dd> 
221                                <#--#break--> 
222                                </#if> 
223                            </#list> 
224 
225                            <#if type.getData() == "INVPR" && contact.getData()?has_content && contact.getData() != "null"> 
226                                <dt class="project-row-title"><@liferay.language key="project-contact" /></dt> 
227                                <dd class="project-row-text"> 
228                                    <#if contact_email.getData()?has_content> 
229                                        <a href="mailto:${contact_email.getData()}">${contact.getData()}</a> 
230                                    <#else> 
231                                        ${contact.getData()} 
232                                    </#if> 
233                                </dd> 
234                            </#if> 
235                        </div> 
236                    </div> 
237                </div> 
238            </div> 
239        </div> 
240    </div> 
241</div> 

تقارير الرئيس

تقرير تصميم المشروعات

وثائق دعم الإشراف والتنفيذ

الاسيت ببليشر

الاسيت ببليشر

الاسيت ببليشر

الاسيت ببليشر

الاسيت ببليشر

الاسيت ببليشر

الاسيت ببليشر

الاسيت ببليشر

الاسيت ببليشر

Related Contents

Related Contents

Improving the livelihoods of artisanal fishers and their communities along Mozambique’s coastline

يونيو 2020 - فيديو
The IFAD-supported Artisanal Fisheries Promotion Project (ProPESCA) was implemented to improve the livelihoods of artisanal fishers and their communities living along Mozambique’s coastline.